Beiträge von Helix91

    Guten Tag,


    habe folgendes problem mit meinem login script welches auf dini basiert... unswar werden die spielerdaten wie fraktion, fraktionlvl sowie das adminlevel nicht gespeichert. ich habe die vermutung das dies an der verwendung von pvars liegen könnte.


    hier einmal die ausschnitte die beim serverrestart tätig werden.


    // serverneustart befehl if (strcmp("/serverneustart", cmdtext, true, 10) == 0) { if(istSpielerAdmin(playerid,3)) { StatsSpeichernRestart(); GameModeExit(); return 1;




    stock StatsSpeichernRestart(){ for(new playerid = 0; playerid < GetMaxPlayers(); playerid++) { if(IsPlayerConnected(playerid) && playerid != INVALID_PLAYER_ID) { StatsSpeichern(playerid); } } return 1;}



    stock StatsSpeichern(playerid){ new Spieler[64];new Sname[MAX_PLAYER_NAME]; GetPlayerName(playerid,Sname,sizeof(Sname)); format(Spieler,sizeof(Spieler),"/Spieler/%s.txt",Sname); dini_IntSet(Spieler,"Geld",GetPlayerMoney(playerid)); dini_IntSet(Spieler,"Adminlevel",GetPVarInt(playerid,"Adminlevel")); dini_IntSet(Spieler,"Fraktion",GetPVarInt(playerid,"Fraktion")); dini_IntSet(Spieler,"FraktionLevel",GetPVarInt(playerid,"FraktionLevel")); return 1;}




    einer ne idee woran es liegen könnte?

    problem gelöst. ich hatte noch einen zweites mal einen geld befehl der uhrsprünglich mal auskommentiert war. bei dem war in der tat ein s vorhanden.


    meine lektion die ich daraus ziehe:
    Beim Scripten stehts auf Ordnung und Überschaubarkeit achten :P


    danke für eure hilfe :)

    ja habe ich das ganze sieht jetzt so aus:
    //geld befehlocmd:geld(playerid, params[]) {new pID, betrag;
    if(!istSpielerAdmin(playerid, 3)) return SendClientMessage(playerid, rot, "Ey bist du doof. Das ist ein ADMIN KOMMANDO!!!!!!!!!!!1111111");if(sscanf(params,"ud",pID,betrag))return SendClientMessage(playerid,rot,"/geld ID BETRAG");GivePlayerMoney(pID, betrag);return 1;}

    Guten Tag,


    ich habe ein problem


    unswar habe ich mir mit hilfe von ocmd und sscanf einen kleinen befehl zum geld geben gebastelt.


    funktionieren soll das ganze wie folgt:
    /give ID BETRAG



    prinzipiell funktioniert es ja auch bloß das man auch bei einen wunschbetrag von 1$ in wirklichkeit 65535$ vergibt.



    hier einmal der scriptausschnitt vom befehl:


    //geld befehl ocmd:geld(playerid,params[]) { if(istSpielerAdmin(playerid,3)) { new pID,betrag; if(sscanf(params,"uu",pID,betrag))return SendClientMessage(playerid,rot,"/geld ID BETRAG"); GivePlayerMoney(pID,betrag); return 1; } SendClientMessage(playerid,rot,"Dazu bist du nicht berechtigt"); return 1; }





    ich hoffe jemand kann mir anfänger auf die sprünge helfen :)