[SAMMELTHREAD] Kleine Scripting Fragen

Dein Problem konnte durch einen User gelöst werden? Bedank dich bei ihm indem du seinen Beitrag als Hilfreich markierst sowie einen Daumen oben dalässt
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hey ich möchte, dass nach dem Tutorial man nur einmal den Skin auswählt und nicht bei jedem login :)
    Kann mir da jemand helfen ?
    (Falls das hilft ich arbeite mit DINI)

    "Imagine if the government went after corruption as hard as it goes after guys who run filesharing sites. Priorities. " - @Snowden
    "More worrying than FBI temporarily running a server that contained child porn, is hacking computers anywhere in the world with one warrant" - @josephfcox

  • Hi, bin neu in SAMP.
    Wollte mal fragen ob es in SAMP so etwas wie in MTA gibt, mit dem man einem Spieler einzelne Daten geben kann also Zum Beispiel: solche if Abfragen auch damit also, wenn er Data1 hat soll er dass machen und wenn er Data2 hat soll er das machen wie geht das?


    Hoffe mir kann da wer helfen.


    #TRiX

  • Hi, bin neu in SAMP.
    Wollte mal fragen ob es in SAMP so etwas wie in MTA gibt, mit dem man einem Spieler einzelne Daten geben kann also Zum Beispiel: solche if Abfragen auch damit also, wenn er Data1 hat soll er dass machen und wenn er Data2 hat soll er das machen wie geht das?


    Hoffe mir kann da wer helfen.


    #TRiX



    Jop Sowas gibt es. Ich mache dir mal ein Beispiel ;)


    if(/*Bedingung zb:*/Data1 == 1)
    { //<- Kann auch oben gemacht werden
    //Soll folgen
    }
    else if(Data2 == 2)
    {
    //Soll folgen
    }
    //Und natürlich das bekannte else (restliche abfragen)
    else
    {
    //Soll folgen
    }


    Zu Erklärung:


    - /* HALLO */ <- Die beiden Zeichen kennzeichnen einen Bereich der nicht beachtet werden soll
    - Das gleiche gilt für // Das ist aber nur Zeilen bedingt
    - '==' Ist zur Überprüfung eines Wertes, wo wiederum '=' Etwas besetzt
    - Wenn du etwas gleichzeitig Abfragen willst also OR... Dann machst du einfach in die if Abfrage ein ||
    -> So ähnlich wie, wenn etwas gleich sein sollte. Dann machst du &&.


    Ich hoffe ich konnte dir damit deine Frage beantworten.


    L.G.
    heyho

  • Moinsen,
    Ich habe mir das neuste Mysql Plugin draufgeladen (r34).
    Mir wurde gesagt, dass ich Mysql_Ping einfach mit Mysql_erno ersetzen muss, wenn er halt überprüft ob es eine Verbindung mit der Datenbank gibt.
    Das habe ich getan auch ohne Errors.
    Nun kann mein Server nicht mehr starten und zeigt mir das in der log:



    [16:56:03] Loaded 0 filterscripts.
    [16:56:03] ... GamemodeInit
    [16:56:04] SERVER: Es konnte keine Verbindung zur Datenbank hergestellt werden!
    [16:56:04] Es wird erneut versucht eine Verbindung zur Datenbank herzustellen.
    [16:56:04] Host: localhost,User: root,Datanbank: Lan,Passwort: (privat)
    [16:56:04] SERVER: Es konnte keine Verbindung zur Datenbank hergestellt werden!
    [16:56:04] Server wird heruntergefahren ...
    [16:56:04] --------------------------------


    Muss ich noch was beachten, wenn ich von R7 auf r34 umsteige?
    Mfg


    Don't flame aim!

  • Wisst ihr woran das Liegt?
    Habe alles die Aktuellen Versionen...

    Spoiler anzeigen
    *** Streamer Plugin v2.6.1 by Incognito loaded ***

    Spoiler anzeigen
    [17:06:10] Loaded.
    [17:06:10] Loading plugin: sscanf.so
    [17:06:10]

    Spoiler anzeigen
    [17:06:10] ===============================

    Spoiler anzeigen
    [17:06:10] sscanf plugin loaded.

    Spoiler anzeigen
    [17:06:10] Version: 2.8.1

    Spoiler anzeigen
    [17:06:10] (c) 2012 Alex "Y_Less" Cole

    Spoiler anzeigen
    [17:06:10] ===============================

    Spoiler anzeigen
    [17:06:10] Loaded.
    [17:06:10] Loading plugin: nativechecker.so
    [17:06:10] Loaded.
    [17:06:10] Loaded 4 plugins.

    Spoiler anzeigen
    [17:06:10]
    [17:06:10] Ban list
    [17:06:10] --------
    [17:06:10] Loaded: samp.ban
    [17:06:10]
    [17:06:10]
    [17:06:10] Filterscripts
    [17:06:10] ---------------
    [17:06:10] Loaded 0 filterscripts.

    Spoiler anzeigen
    [17:06:10] Error: Function not registered: 'mysql_debug'
    [17:06:10] Error: Function not registered: 'mysql_function_query'
    [17:06:10] Error: Function not registered: 'cache_get_data'
    [17:06:10] Error: Function not registered: 'cache_get_field_content'
    [17:06:10] Script[gamemodes/selfmade.amx]: Run time error 19: "File or function is not found"
    [17:06:10] Number of vehicle models: 0

  • root benutzer hat kein passwort standart gemäß

    Aber davor ging es ja :) hier der Code mal wo ich Mysql_Ping ersetz habe:
    MySqlConnection = mysql_connect(SQL_HOST,SQL_USER,SQL_DATA,SQL_PASS); if(mysql_errno() == 1) { print("SERVER: Verbindung zur Datenbank wurde erfolgreich hergestellt."); printf("Host: %s,User: %s,Datanbank: %s,Passwort: %s",SQL_HOST,SQL_USER,SQL_DATA,SQL_PASS); } else { print("SERVER: Es konnte keine Verbindung zur Datenbank hergestellt werden!"); print(" Es wird erneut versucht eine Verbindung zur Datenbank herzustellen."); printf("Host: %s,User: %s,Datanbank: %s,Passwort: %s",SQL_HOST,SQL_USER,SQL_DATA,SQL_PASS); MySqlConnection = mysql_connect(SQL_HOST,SQL_USER,SQL_DATA,SQL_PASS); if(mysql_errno() == 1) { print("SERVER: Es konnte im 2 Versuch eine Verbindung hergestellt werden!"); printf("Host: %s,User: %s,Datanbank: %s,Passwort: %s",SQL_HOST,SQL_USER,SQL_DATA,SQL_PASS); }


    if(mysql_errno() == 0) { getdate(tag,monat,jahr); gettime(stunde,minute,sekunde); ForEachPlayer(i) { if(IsPlayerConnected(i) && !IsPlayerNPC(i) && GetPVarInt(i,"Eingeloggt") == 1) { SaveAccount(i); } } Log("Restartssqllog","Admin: System hat den Server gerestartet(Dead MySql Connection)!"); OnGameModeSave(); GameModeExit(); return 1; } cache_get_data(rows,fields); if(rows) { if(passwortstate == 1) { cache_get_field_content(0,"Passwort",result); if(!strcmp(MD5_Hash(pass),result,true)) { format(query,sizeof(query),"SELECT * FROM "#DATENBANKTAG"_account_main WHERE Name='%s'",SpielerName(playerid)); mysql_function_query(MySqlConnection,query,true,"LoadAccount","isi",playerid," ",0); return 1; } format(query,sizeof(query),"{C9C9C9}Willkommen zurück "#SERVERFARBE"%s {C9C9C9}!\n{C9C9C9}Dein Account ist registriert.\nBitte Logge dich mit deinem entsprechendem Passwort ein.\n\n"#SERVERFARBE"** "#SERVERNAME" **{C9C9C9}",SpielerName(playerid)); ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,""#SERVERFARBE""#SERVERNAME"{FFFFFF}: Login",query,"Login","Abbrechen"); return 1; } cache_get_field_content(0,"Tutorial",result); Spieler[playerid][pViewTutorial] = strval(result); strdel(result,0,sizeof(result)); etc.....


    if(SconnectionHandle != MySqlConnection || mysql_errno() == 0) { getdate(tag,monat,jahr); gettime(stunde,minute,sekunde); ForEachPlayer(i) { if(IsPlayerConnected(i) && !IsPlayerNPC(i) && GetPVarInt(i,"Eingeloggt") == 1) { SaveAccount(i); } } Log("Restartssqllog","Admin: System hat den Server gerestartet(Dead MySql Connection)!"); OnGameModeSave(); GameModeExit(); return 1; }


    if(SconnectionHandle != MySqlConnection || mysql_errno() == 0) { getdate(tag,monat,jahr); gettime(stunde,minute,sekunde); ForEachPlayer(i) { if(IsPlayerConnected(i) && !IsPlayerNPC(i) && GetPVarInt(i,"Eingeloggt") == 1) { SaveAccount(i); } } Log("Restartssqllog","Admin: System hat den Server gerestartet(Dead MySql Connection)!"); OnGameModeSave(); GameModeExit(); return 1; }

    Don't flame aim!


  • Wenn mysql_errno 0 zurueckgibt, heißt das, dass kein Error auftrat. Ansonsten returnt es eine Error-Nummer.
    In deinem Code ueberpruefst du, ob ob mysql_errno 1 zurueckgibt, von daher ist hier der Fehler.

  • Hey Leute habe eine kurze Frage.


    Ich habe bis jetzt diesen Code:

    //oben im Code
    #define MAX_GARAGEN 20
    new Garagen[MAX_GARAGEN][G]; //G ist noch das Garagen enum.



    if (strcmp("/garagen", cmdtext, true, 10) == 0)
    {
    for(new i = 0; i <MAX_GARAGEN; i++)
    {
    if(Garagen[Gcreated]==1)
    {
    if(Garagen[Buy]==0)
    {


    }
    }
    }
    return 1;
    }



    Ich moechte jetzt in einer SendClientMessage alle Garagen anzeigen Lassen die diese 2 Anforderungen erfuellen.


    Kann mir da einer weiterhelfen?

    seekrass approved
    4x vom Discord geflogen


    shoxinat0r 4
    dennismitzwein 2
    Trooper[Y] 2
    maddin 1
    Unbekannter Discord Kick 2

  • Hier bitte


    if (strcmp("/garagen", cmdtext, true, 10) == 0){
    new string[30];
    for(new i = 0; i <MAX_GARAGEN; i++){
    if(Garagen[i][Gcreated] && !Garagen[i][Buy]){
    format(string,30,"Garage %d ist frei",i);
    SendClientMessage(playerid,-1,string);
    }
    }
    return 1;
    }


  • Hört sich vielleicht jetzt ein bischen blöd an aber wie kann ich jetzt machen das ich wenn ich zb /garage buy eingebe.
    Das dann nur 1ne garage gekauft wird? Hab da jetzt irgendwie ein Denkfehler ?(

    seekrass approved
    4x vom Discord geflogen


    shoxinat0r 4
    dennismitzwein 2
    Trooper[Y] 2
    maddin 1
    Unbekannter Discord Kick 2

  • Wenn mysql_errno 0 zurueckgibt, heißt das, dass kein Error auftrat. Ansonsten returnt es eine Error-Nummer.
    In deinem Code ueberpruefst du, ob ob mysql_errno 1 zurueckgibt, von daher ist hier der Fehler.

    Habe es auf 1 Gesetzt und es kamen immer noch keine Errors ?(

    Don't flame aim!


  • ich würde dir raten ein break zu nehmen da sonst gespamme entsteht sobald mehrere frei sind ;)


    Warum überhaupt? Es soll nicht eine Garage angezeigt werden, sondern alle.


    Zitat

    Ich moechte jetzt in einer SendClientMessage alle Garagen anzeigen Lassen die diese 2 Anforderungen erfuellen.




    Kann mir da einer weiterhelfen?

    //edit
    @TheBlueFireKing


    Poste mal dein enum "G"

    Einmal editiert, zuletzt von IPrototypeI ()

  • Habe es auf 1 Gesetzt und es kamen immer noch keine Errors ?



    MySqlConnection = mysql_connect(SQL_HOST, SQL_USER, SQL_DATA, SQL_PASS);
    if (mysql_errno(MySqlConnection) == 0)
    {
    printf("SERVER: Verbindung zur Datenbank wurde erfolgreich hergestellt.");
    //printf("Host: %s,User: %s,Datanbank: %s,Passwort: %s", SQL_HOST, SQL_USER, SQL_DATA, SQL_PASS);
    }
    else
    {
    print("SERVER: Es konnte keine Verbindung zur Datenbank hergestellt werden!");
    print(" Es wird erneut versucht eine Verbindung zur Datenbank herzustellen.");
    //printf("Host: %s,User: %s,Datanbank: %s,Passwort: %s", SQL_HOST, SQL_USER, SQL_DATA, SQL_PASS);
    mysql_reconnect(MySqlConnection);
    if (mysql_errno(MySqlConnection) == 0) {
    print("SERVER: Es konnte im 2. Versuch eine Verbindung hergestellt werden!");
    //printf("Host: %s,User: %s,Datanbank: %s,Passwort: %s", SQL_HOST, SQL_USER, SQL_DATA, SQL_PASS);
    }
    }

    So sollte das aussehen.

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen