problem mit dem geld..

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
  • Abend



    ich habe ein kleines problem, und zwar habe ich jetzt eine bestimmte anzahl an geld auf der hand sagen wir 100.000€.. wenn ich Sterbe und wieder Respawne kriege ich das doppelte wieder und das kann man immer und immer wieder machen ..


    Also mein problem Liegt beim Geld Stribt man kriegt so kriegt man Das Doppelte auf die hand gezahlt also knappe 200.000€ wehre das dann.. ich frage mich wie ich das fixen kann habe es schon bei OnPlayerDeath & OnPlayerSpawn gemacht



    Siehe:


    public OnPlayerSpawn(playerid)
    {
    GivePlayerMoney(playerid, GetPVarInt(playerid,"Geld"));
    SetPlayerSkin(playerid, GetPVarInt(playerid,"Skin"));
    if(GetPVarInt(playerid,"loggedin")==1)
    {
    LoadAccount(playerid);
    }
    switch(GetPVarInt(playerid,"Fraktion"))
    {
    case 0:{SetPlayerColor(playerid,GRAU);}
    case 1:{SetPlayerPos(playerid,lspdspawn);SetPlayerArmour(playerid,100);SetPlayerInterior(playerid,10);SetPlayerColor(playerid,GRAU);}
    case 2:{SetPlayerPos(playerid,fbispawn);SetPlayerArmour(playerid,100);SetPlayerInterior(playerid,6);SetPlayerColor(playerid,GRAU);}
    case 3:{SetPlayerPos(playerid,armyspawn);SetPlayerArmour(playerid,100);SetPlayerInterior(playerid,0);SetPlayerColor(playerid,GRAU);}
    case 4:{SetPlayerPos(playerid,sesespawn);SetPlayerArmour(playerid,100);SetPlayerInterior(playerid,5);SetPlayerColor(playerid,GRAU);}
    case 5:{SetPlayerPos(playerid,saedspawn);SetPlayerArmour(playerid,100);SetPlayerInterior(playerid,6);SetPlayerColor(playerid,GRAU);}
    case 6:{SetPlayerPos(playerid,newsspawn);SetPlayerArmour(playerid,100);SetPlayerInterior(playerid,0);SetPlayerColor(playerid,GRAU);}
    case 7:{SetPlayerPos(playerid,mafiaspawn);SetPlayerArmour(playerid,100);SetPlayerInterior(playerid,3);SetPlayerColor(playerid,GRAU);}
    case 8:{SetPlayerPos(playerid,terrorspawn);SetPlayerArmour(playerid,100);SetPlayerInterior(playerid,4);SetPlayerColor(playerid,GRAU);}
    }
    return 1;
    }



    public OnPlayerDeath(playerid, killerid, reason)
    {
    GivePlayerMoney(playerid, GetPVarInt(playerid,"Geld"));
    {
    SpielerSpeichern(playerid);
    }
    return 1;
    }




    Und hier die Stocks wo sich alles befindet/Gepsichert & geladen wird...



    stock LoadAccount(playerid)
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    SetPlayerScore(playerid,dini_Int(Spielerdatei,"Level"));
    SetPVarInt(playerid,"Leader",dini_Int(Spielerdatei,"Leader"));
    SetPVarInt(playerid,"Fraktion",dini_Int(Spielerdatei,"Fraktion"));
    SetPVarInt(playerid,"Rankids",dini_Int(Spielerdatei,"Rankids"));
    SetPVarInt(playerid,"Rank",dini_Int(Spielerdatei,"Rank"));
    SetPVarInt(playerid,"Level",dini_Int(Spielerdatei,"Level"));
    SetPVarInt(playerid,"Baned",dini_Int(Spielerdatei,"Baned"));
    SetPVarInt(playerid,"Coins",dini_Int(Spielerdatei,"Coins"));
    SetPVarInt(playerid,"Warns",dini_Int(Spielerdatei,"Warns"));
    SetPVarInt(playerid,"Geld",dini_Int(Spielerdatei,"Geld"));
    SetPVarInt(playerid,"Skin",dini_Int(Spielerdatei,"Skin"));
    SetPVarInt(playerid,"Job",dini_Int(Spielerdatei,"Job"));
    SetPVarInt(playerid,"Mats",dini_Int(Spielerdatei,"Mats"));
    SetPVarInt(playerid,"Mats Pakete",dini_Int(Spielerdatei,"Mats Pakete"));
    SetPVarInt(playerid,"Drogen",dini_Int(Spielerdatei,"Drogen"));
    SetPVarInt(playerid,"PayDay",dini_Int(Spielerdatei,"PayDay"));
    SetPVarInt(playerid,"Monate",dini_Int(Spielerdatei,"Monate"));
    SetPVarInt(playerid,"Adminlevel",dini_Int(Spielerdatei,"Adminlevel"));
    if(GetPVarInt(playerid,"Baned")==1)
    {
    SendClientMessage(playerid,ROT,"Du Bist Von Life of City Ausgeschlossen!");
    Kick(playerid);
    }
    SetPVarInt(playerid,"loggedin",1);
    return 1;
    }


    stock SpielerSpeichern(playerid)
    {
    if(GetPVarInt(playerid,"loggedin")==1)
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    dini_IntSet(Spielerdatei,"Leader",GetPVarInt(playerid,"Leader"));
    dini_IntSet(Spielerdatei,"Fraktion",GetPVarInt(playerid,"Fraktion"));
    dini_IntSet(Spielerdatei,"Rank",GetPVarInt(playerid,"Rank"));
    dini_IntSet(Spielerdatei,"Level",GetPlayerScore(playerid));
    dini_IntSet(Spielerdatei,"Geld",GetPlayerMoney(playerid));
    dini_IntSet(Spielerdatei,"Baned",GetPVarInt(playerid,"Baned"));
    dini_IntSet(Spielerdatei,"Coins",GetPVarInt(playerid,"Coins"));
    dini_IntSet(Spielerdatei,"Warns",GetPVarInt(playerid,"Warns"));
    dini_IntSet(Spielerdatei,"Geld",GetPlayerMoney(playerid));
    dini_IntSet(Spielerdatei,"Skin",GetPlayerSkin(playerid));
    dini_IntSet(Spielerdatei,"Job",GetPVarInt(playerid,"Job"));
    dini_IntSet(Spielerdatei,"Mats",GetPVarInt(playerid,"Mats"));
    dini_IntSet(Spielerdatei,"Mats Pakete",GetPVarInt(playerid,"Mats Pakete"));
    dini_IntSet(Spielerdatei,"Drogen",GetPVarInt(playerid,"Drogen"));
    dini_IntSet(Spielerdatei,"PayDay",GetPVarInt(playerid,"PayDay"));
    dini_IntSet(Spielerdatei,"Monate",GetPVarInt(playerid,"Monate"));
    dini_IntSet(Spielerdatei,"Adminlevel",GetPVarInt(playerid,"Adminlevel"));
    dini_IntSet(Spielerdatei,"Timeban",GetPVarInt(playerid,"Timeban"));
    dini_IntSet(Spielerdatei,"Rankids",GetPVarInt(playerid,"Rankids"));
    }
    return 1;
    }




    ch hoffe ihr könnt mir weiter helfen



    MFG Equ

  • nein .. Wenn ich es von OnPlayerSpawn weg nehme und bei OnPlayerConnect rein Packe Läd er doch nicht mehr das Geld was ich ihn in der txt reingeschrieben habe bzw.. wenn er geld hate und neu joinen und spawnen würde wird das geld einfahr nicht geladen... Also von daher ist soweit doch eigentlich alles richtig :huh:, nur mein problem liegt beim Sterben... stribt er und wenn er wieder respawnt kriegt er das doppelte von seinem Jetztigen geld auf die hand ..

  • warum hast du bei onplayerdeath geschrieben das der spieler das geld aus seiner datei bekommt? also givemoney(...."Geld"); das mach doch mal weg sonst ist ja klar das er das immerwieder lädt.

  • Versteht ihr nicht was mein Problem ist xD ?.. Also noch mal zum mitschreiben .. Ich habe jetzt 2000€ auf der Hand.Und Sterbe ich wenn ich wieder Spawne Zählt er 1900€ dazu .. Und genau Da leigt doch mein problem.. er soll eben nix verdoppeln sein geld soll genau so geladen werden wie es davor war Also 2000€.