Beiträge von Whice

    Wäre das so richtig? @Whice.

    Danke.


    Deaths werden nun gespeichert und geladen. Jetzt hab ich noch das problem das money geladen wird aber nicht gespeichert.


    @Whice. Ist bei mir das selbe kann in der Datenbank mein Geld setten wird Ingame geladen aber wenn ich /setmoney 1 0 setzte und vom Server Disconnecte was ich eigentlich nichteinmal machen müsste da ich beim setmoney Befehl noch den Spieler Speicher. Aber in der Datenbank steht das ich trotzdem noch 50k habe und @Zreeq Sorry das ich dir jetzt nicht helfen kann


    Ich denke mal das dies daran liegen wird, dass ihr bei deinem GiveMoney Befehl das ganze nur über GivePlayerMoney macht, dort ist es allerdings wichtig, dass die Geldvariable "PlayerInfo[playerid][pmoney]" auch hochgesetzt wird.

    mein Makeadminbefehl sieht so aus nicht wundern wegen den beiden SendClientMessages am Schluss:

    Das kannst du am besten mit einem stock lösen, der den Namen einer PlayerID ausgibt, so kannst du nun immer wenn du den Namen brauchst "SpielerName(playerid)" verwenden.
    Das obere sollte so passen.

    außer ich will einen neuen Abspeicherbaren Parameter einfügen?

    Nein, vor steht WHERE darf niemals ein Komma stehen, wenn du einen weiteren Parameter hast setzt du das Komma natürlich hinter alevel = '%d' und dahinter dann den neuen Parameter, danach allerdings keins mehr.


    Falls das jetzt verständlich war^^

    Habs grade übersehen aber vor dem WHERE kommt kein Komma mehr


    Der Fehler liegt an deiner MySQL-Abfrage, die du zum Speichern nutzt. Die Variable pid muss an letzter Stelle der Parameter sein, da diese ja auch als letztes in dem MySQL-Befehl gebraucht wird.


    Code
    stock SavePlayer(playerid)
    { 
    	new query[256]; 
    	mysql_format(db_handle, query, sizeof(query), "UPDATE accounts SET level = '%d', money = '%d', kills = '%d', deaths = '%d', admin = '%d', ip = '%d' WHERE id = '%d'", 
    	PlayerInfo[playerid][plevel], PlayerInfo[playerid][pmoney], PlayerInfo[playerid][pkills], PlayerInfo[playerid][pdeaths], PlayerInfo[playerid][padmin], PlayerInfo[playerid][pip], PlayerInfo[playerid][pid]); 
    	mysql_pquery(db_handle, query); 
    	return 1;
    }

    Wenn du alleine auf dem Server bist, solltest du eigentlich ID 0 haben. Ansonsten zeig uns mal dein makeadmin-Command


    // EDIT


    Grad am Handy gewesen deswegen hab ich es voll übersehen, aber deine Parameter der SQL abfrage sind falsch gesetzt und irgendwie 2 zu viel (Franktion, Rank)



    Code
    mysql_format(handle, query, sizeof(query), "UPDATE users SET level = '%d', money = '%d', kills = '%d', deaths = '%d', alevel = '%d',  WHERE id = '%d'",
    	PlayerInfo[playerid][pLevel], PlayerInfo[playerid][pMoney], PlayerInfo[playerid][pKills], PlayerInfo[playerid][pDeaths], PlayerInfo[playerid][pAlevel], PlayerInfo[playerid][p_id]);

    wichtig ist, dasss PlayerInfo[playerid][p_id] an letzter Stelle steht, da dies ja deine letzte Variable in der SQL-Abfrage ist. Wenn du also einen neuen Parameter hinzufügen möchtest, einfach zwischen pAlevel und p_id eintragen.

    So sollte es dann allerdings klappen