Hp wird nicht gespeichert

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
  • hallo ich versuche hp zu speichern nur sie steht immer in der datei so: Passwort=1234
    Level=0
    Geld=0
    AdminLevel=0
    Fraktion=0
    Spawn=0
    Timeout=0
    px=2024.290405
    py=1343.829589
    pz=10.820312
    Hp=0.000000
    Sp=0.000000
    RespektPunkte=0
    PremiumSterne=0
    Bank=0
    Biz=0
    Auto1=0
    Auto2=0
    Auto3=0
    Kills=0
    Death=0
    Wanteds=0
    Eingesperrt=0
    KnastZeit=0
    LastKnast=0
    ZellenID=0


    aber ich hatte 100% ingame wenn ich jetzt spawne sterbe ich weil meine hp auf 0 gesetzt wird weils nit richtig gespeichert wird hier mein login register sys : stock LoadAccount(playerid)
    {
    new Spielerdatei[128];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    SetPlayerScore(playerid,dini_Int(Spielerdatei,"level"));
    SetPlayerHealth(playerid,dini_Float(Spielerdatei,"Hp"));
    SetPlayerArmour(playerid,dini_Float(Spielerdatei,"Sp"));
    GivePlayerMoney(playerid,dini_Int(Spielerdatei,"Geld"));
    SpielerInfo[playerid][AdminLevel]=dini_Int(Spielerdatei,"Adminlevel");
    SpielerInfo[playerid][Fraktion]=dini_Int(Spielerdatei,"Fraktion");
    Eingeloggt[playerid]=1;
    SpielerInfo[playerid][Connect]=40;
    SpielerInfo[playerid][Timeout]=dini_Int(Spielerdatei,"Timeout");
    SpielerInfo[playerid][Spawn]=dini_Int(Spielerdatei,"Spawn");
    SetTimerEx("SpawnSkin",500,false,"d",playerid);


    return 1;
    }


    stock SpielerSpeichern(playerid)
    {
    new Spielerdatei[128];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    new Float:php,Float:psp;
    GetPlayerHealth(playerid,php);
    GetPlayerArmour(playerid,psp);
    SpielerInfo[playerid][Hp]=php;
    SpielerInfo[playerid][Hp]=psp;
    dini_IntSet(Spielerdatei,"Level",GetPlayerScore(playerid));
    dini_IntSet(Spielerdatei,"Geld",GetPlayerMoney(playerid));
    dini_IntSet(Spielerdatei,"AdminLevel",SpielerInfo[playerid][AdminLevel]);
    dini_IntSet(Spielerdatei,"Fraktion",SpielerInfo[playerid][AdminLevel]);
    dini_IntSet(Spielerdatei,"Spawn",SpielerInfo[playerid][Spawn]);
    dini_IntSet(Spielerdatei,"Timeout",SpielerInfo[playerid][Timeout]);
    GetPlayerPos(playerid,SpielerInfo[playerid][px],SpielerInfo[playerid][py],SpielerInfo[playerid][pz]);
    dini_FloatSet(Spielerdatei,"px",SpielerInfo[playerid][px]);
    dini_FloatSet(Spielerdatei,"py",SpielerInfo[playerid][py]);
    dini_FloatSet(Spielerdatei,"pz",SpielerInfo[playerid][pz]);
    dini_FloatSet(Spielerdatei,"Hp",SpielerInfo[playerid][Hp]);
    dini_FloatSet(Spielerdatei,"Sp",SpielerInfo[playerid][Sp]);
    dini_IntSet(Spielerdatei,"RespektPunkte",SpielerInfo[playerid][RespektPunkte]);
    dini_IntSet(Spielerdatei,"PremiumSterne",SpielerInfo[playerid][PremiumSterne]);
    dini_IntSet(Spielerdatei,"Bank",SpielerInfo[playerid][Bank]);
    dini_IntSet(Spielerdatei,"Biz",SpielerInfo[playerid][Biz]);
    dini_IntSet(Spielerdatei,"Auto1",SpielerInfo[playerid][Auto1]);
    dini_IntSet(Spielerdatei,"Auto2",SpielerInfo[playerid][Auto2]);
    dini_IntSet(Spielerdatei,"Auto3",SpielerInfo[playerid][Auto3]);
    dini_IntSet(Spielerdatei,"Kills",SpielerInfo[playerid][Kills]);
    dini_IntSet(Spielerdatei,"Death",SpielerInfo[playerid][Death]);
    dini_IntSet(Spielerdatei,"Wanteds",SpielerInfo[playerid][Wanteds]);
    dini_IntSet(Spielerdatei,"Eingesperrt",SpielerInfo[playerid][Eingesperrt]);
    dini_IntSet(Spielerdatei,"KnastZeit",SpielerInfo[playerid][KnastZeit]);
    dini_IntSet(Spielerdatei,"LastKnast",SpielerInfo[playerid][LastKnast]);
    dini_IntSet(Spielerdatei,"ZellenID",SpielerInfo[playerid][ZellenID]);
    return 1;
    }


    stock ResetVariablen(playerid)
    {
    SpielerInfo[playerid][AdminLevel]=0;//
    SpielerInfo[playerid][Fraktion]=0;//
    SpielerInfo[playerid][Connect]=0;
    SpielerInfo[playerid][Level]=0;//
    SpielerInfo[playerid][RespektPunkte]=0;
    SpielerInfo[playerid][PremiumSterne]=0;
    SpielerInfo[playerid][AutoDiebRate]=0;
    SpielerInfo[playerid][Bank]=0;
    SpielerInfo[playerid][Geld]=0;
    SpielerInfo[playerid][Biz]=0;
    SpielerInfo[playerid][Kills]=0;
    SpielerInfo[playerid][Death]=0;
    SpielerInfo[playerid][Auto1]=0;
    SpielerInfo[playerid][Auto2]=0;
    SpielerInfo[playerid][Auto3]=0;
    SpielerInfo[playerid][Wanteds]=0;
    SpielerInfo[playerid][Eingesperrt]=0;
    SpielerInfo[playerid][KnastZeit]=0;
    SpielerInfo[playerid][LastKnast]=0;
    SpielerInfo[playerid][ZellenID]=0;
    SpielerInfo[playerid][Timeout]=0;
    SpielerInfo[playerid][Spawn]=0;
    SpielerInfo[playerid][Hp]=0;
    SpielerInfo[playerid][Sp]=0;
    SpielerInfo[playerid][Tod]=0;
    SpielerInfo[playerid][Krankenhaus]=0;
    return 1;
    }


    hier das enum : enum SInfo
    {
    AdminLevel,
    Fraktion,
    Connect,
    Level,
    Skin,
    RespektPunkte,
    PremiumSterne,
    AutoDiebRate,
    Bank,
    Geld,
    Biz,
    Kills,
    Death,
    Auto1,
    Auto2,
    Auto3,
    Wanteds,
    Eingesperrt,
    KnastZeit,
    LastKnast,
    ZellenID,
    Timeout,
    Spawn,
    Float:px,
    Float:py,
    Float:pz,
    Float:Sp,
    Float:Hp,
    Krankenhaus,
    Tod,
    Float:dx,
    Float:dy,
    Float:dz
    }
    new SpielerInfo[MAX_PLAYERS][SInfo];



    was mach ich falsch


    wenn ich aber in der spielerdatei auf 100 setzte die hp dann bleibe ich am leben also liegst am saven ?



    was mach ich falsch


    MFG janpplayer

  • nein dann steht in der dini datei : Passwort=1234
    Level=0
    Geld=0
    AdminLevel=0
    Fraktion=0
    Spawn=0
    Timeout=0
    px=2024.290405
    py=1343.829589
    pz=10.820312
    Hp=0.000000
    Sp=0.000000
    RespektPunkte=0
    PremiumSterne=0
    Bank=0
    Biz=0
    Auto1=0
    Auto2=0
    Auto3=0
    Kills=0
    Death=0
    Wanteds=0
    Eingesperrt=0
    KnastZeit=0
    LastKnast=0
    ZellenID=0

  • genau das hab ich ja mit Set
    // edit 1aber es geht nit und wenn ich sp also armour und health auf 100 setzte in der dini per editor und dann joine krieg ich es nur wenn ich diconnecte dann wird sp auf 0 gesetzt und wenn ich dann nochmal connecte hab ich kein sp arour mehr und wenn ich disconnecte dann habe ich auch kein hp mehr?


    wiso das denn ?


    //edit 2 eedit 1 vergessen

  • beim speichern vielleicht so?: PlayerInfo[playerid][hp] = GetPlayerHealth(playerid);
    sonst : GetPlayerHealth(playerid,PlayerInfo[playerid][pHealth]);


    Edit:
    sonst GetPlayerHealth(playerid,PlayerInfo[playerid][hp]);

    I Love SAMP

  • dann krieg ich : G:\Users\Jan\Desktop\server neu carsys\gamemodes\neu2ab.pwn(1586) : warning 202: number of arguments does not match definition
    G:\Users\Jan\Desktop\server neu carsys\gamemodes\neu2ab.pwn(1587) : warning 202: number of arguments does not match definition
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    2 Warnings.

  • Mach doch beim Speichern statt:
    dini_FloatSet(Spielerdatei,"Hp",SpielerInfo[playerid][Hp]);
    doch:
    dini_FloatSet(Spielerdatei,"Hp",GetPlayerHealth(playerid));



    EDIT: Tag ausgebessert.
    EDIT2: Klammernfehler ausgebessert

  • komm das selbe raus: G:\Users\Jan\Desktop\server neu carsys\gamemodes\neu2ab.pwn(1598) : warning 202: number of arguments does not match definition
    G:\Users\Jan\Desktop\server neu carsys\gamemodes\neu2ab.pwn(1599) : warning 202: number of arguments does not match definition


    ist ja eigl auch richtig in sa-mp.com wiki steht als beispiel :new Float:health;
    GetPlayerHealth(playerid,health);
    und dadrüber : Parameters:
    (playerid, &Float:health)
    playerid The ID of the player.
    &Float:health Float to store health, passed by reference.



    Returns The function itself doesn't return a specific value. The player's health is stored in the specified variable.



  • Ahhh, ist ja auch logisch, du schreibst vor dem:


    dini_FloatSet(Spielerdatei,"Hp",SpielerInfo[playerid][Hp]);


    das hier noch:

    GetPlayerHealth(playerid,SpielerInfo[playerid][Hp]);


    sprich das soll dann so aussehen:

    GetPlayerHealth(playerid,SpielerInfo[playerid][Hp]);
    dini_FloatSet(Spielerdatei,"Hp",SpielerInfo[playerid][Hp]);

  • ja: stock SpielerSpeichern(playerid)
    {
    new Spielerdatei[128];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    SpielerInfo[playerid][Hp]=GetPlayerHealth(playerid);
    SpielerInfo[playerid][Sp]=GetPlayerArmour(playerid);
    dini_IntSet(Spielerdatei,"Level",GetPlayerScore(playerid));
    dini_IntSet(Spielerdatei,"Geld",GetPlayerMoney(playerid));
    dini_IntSet(Spielerdatei,"AdminLevel",SpielerInfo[playerid][AdminLevel]);
    dini_IntSet(Spielerdatei,"Fraktion",SpielerInfo[playerid][AdminLevel]);
    dini_IntSet(Spielerdatei,"Spawn",SpielerInfo[playerid][Spawn]);
    dini_IntSet(Spielerdatei,"Timeout",SpielerInfo[playerid][Timeout]);
    GetPlayerPos(playerid,SpielerInfo[playerid][px],SpielerInfo[playerid][py],SpielerInfo[playerid][pz]);
    dini_FloatSet(Spielerdatei,"px",SpielerInfo[playerid][px]);
    dini_FloatSet(Spielerdatei,"py",SpielerInfo[playerid][py]);
    dini_FloatSet(Spielerdatei,"pz",SpielerInfo[playerid][pz]);
    dini_FloatSet(Spielerdatei,"Hp",GetPlayerHealth(playerid));
    dini_FloatSet(Spielerdatei,"Sp",GetPlayerArmour(playerid));
    dini_IntSet(Spielerdatei,"RespektPunkte",SpielerInfo[playerid][RespektPunkte]);
    dini_IntSet(Spielerdatei,"PremiumSterne",SpielerInfo[playerid][PremiumSterne]);
    dini_IntSet(Spielerdatei,"Bank",SpielerInfo[playerid][Bank]);
    dini_IntSet(Spielerdatei,"Biz",SpielerInfo[playerid][Biz]);
    dini_IntSet(Spielerdatei,"Auto1",SpielerInfo[playerid][Auto1]);
    dini_IntSet(Spielerdatei,"Auto2",SpielerInfo[playerid][Auto2]);
    dini_IntSet(Spielerdatei,"Auto3",SpielerInfo[playerid][Auto3]);
    dini_IntSet(Spielerdatei,"Kills",SpielerInfo[playerid][Kills]);
    dini_IntSet(Spielerdatei,"Death",SpielerInfo[playerid][Death]);
    dini_IntSet(Spielerdatei,"Wanteds",SpielerInfo[playerid][Wanteds]);
    dini_IntSet(Spielerdatei,"Eingesperrt",SpielerInfo[playerid][Eingesperrt]);
    dini_IntSet(Spielerdatei,"KnastZeit",SpielerInfo[playerid][KnastZeit]);
    dini_IntSet(Spielerdatei,"LastKnast",SpielerInfo[playerid][LastKnast]);
    dini_IntSet(Spielerdatei,"ZellenID",SpielerInfo[playerid][ZellenID]);
    return 1;
    }


    die error zeilen: vom ersten versuch z 1586 und 1587 : SpielerInfo[playerid][Hp] = GetPlayerHealth(playerid);
    SpielerInfo[playerid][Sp] = GetPlayerArmour(playerid);


    und die neuen : zl 1598 und 1599 : dini_FloatSet(Spielerdatei,"Hp",GetPlayerHealth(playerid));
    dini_FloatSet(Spielerdatei,"Sp",GetPlayerArmour(playerid));


    /edit zeilen eigerückt