Health nicht über 255 ?

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
  • Servus,


    Ich überarbeite gerade ein bischen mein Script und mir ist zufälligerweise aufgefallen das bei meinem sethp Befehl immer interessante zahlen dabei herauskommen wenn ich die hp über 255 setze.Mit der 255er max Stringlänge kann es ja nichts zu tun haben zumal sie bei SAMP ja bei 128 liegt und bei der Zahl 255 sind es 3 wenn ich mich nicht verzählt habe ^^ Aber warum ist 255 die Grenze bei den HP ohne das irgendwelche minuszahlen entstehen ? Wenn ich zb. 500 eingebe wird in der sethp variable zwar 500 gespeichert und übergeben(laut textmessage welche ja die sethp variable ausliest und formatiert) aber im health textdraw wird dann irgendein mist angezeigt und und sekunden später sterbe ich obwohl selbst die gta interne lebenanzeige voll ist. Weiß jemand woran das liegt ?



    if(!strcmp(strget(cmdtext, 0), "/sethp"))
    {
    if(pInfo[playerid][staff] == ADMIN)
    {
    if(strlen(strget(cmdtext, 1)) && strlen(strget(cmdtext, 2)))
    {
    tId[playerid] = strval(strget(cmdtext, 1));
    GetPlayerName(tId[playerid],tName[playerid],MAX_PLAYER_NAME);
    if(IsPlayerConnected(tId[playerid]))
    {
    new Float:sethp = strval(strget(cmdtext, 2));
    format(pMsg[playerid], MAX_STRING_LENGHT, "Du hast die Lebenspunkte von %s auf %d gesetzt",tName[playerid],floatround(sethp));
    SendClientMessage(playerid,COLOR_HELLGRUEN, pMsg[playerid]);
    format(tMsg[playerid], MAX_STRING_LENGHT, "%s hat deine Lebenspunkte auf %d gesetzt",pName[playerid],floatround(sethp));
    SendClientMessage(tId[playerid],COLOR_HELLGRUEN, tMsg[playerid]);
    SetPlayerHealth(tId[playerid], sethp);
    }
    else return SendClientMessage(playerid,COLOR_ROT, "Dieser Spieler existiert nicht !");
    }
    else return SendClientMessage(playerid,COLOR_ROT, "Benutze /sethp [playerid] [health] !");
    }
    else return SendClientMessage(playerid,COLOR_ROT, "Du bist kein Administrator !");
    }




    MfG


    Anubis

  • Das Limit in SA-Mp für Health eines Spielers beträgt 100. Und im Singleplayer kann man maximal 250 Health haben.

    mfg RedDragon 8)


    Was ist GFKD?


    Ein revolutionärer Clan, dessen Eröffnung kurz bevorsteht.
    Mehr Informationen folgen bald.

  • Zitat

    Weil du nicht mehr als 100 % health haben kannst. 1 hp = 1 % . Außerdem ist dein Text iwie schwer zu verstehen :wacko: ^^

    Warum in % ? Ist doch einfach nur eine Kommazahl ?.........wäre mir neu wenn die Lebenspunkte in Prozent gerechnet würden - aber kann ja gut sein(ehrlich gesagt - ich weiß es nicht).Schwer zu verstehen, naja - wenn man zu 100% versteht wovon ich Rede und den code auch, ist es eigentlich ganz einfach zu verstehen ;)



    Zitat

    Das Limit in SA-Mp für Health eines Spielers beträgt 100. Und im Singleplayer kann man maximal 250 Health haben.

    Trotzdem bekomme ich die Lebenspunkte bis auf 255, kann also nicht ganz stimmen. Cheater können ihre healthpoints ja auch auf 1000 hochschrauben.