[Scripting] Leben abziehen *kleiner Fehler*

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 fersuche zu scripten das jeden spieler alle 2 minuten 7 Lebenspunkte abgezogen werden


    Bloß werden öffters 7 abgezogen solange bis man stirbt wenn der timer eintrit


    hab aber auch noch nicht viel mit timern gearbeitet des wegen frage ich euch um hilfe


    forward Health(playerid);


    SetTimer("Health",120000,1);


    public Health(playerid)
    {
    new playerhealth = SetPlayerHealth(playerid,-7);
    for (new i = 0; i < MAX_PLAYERS; i++)
    {
    SetPlayerHealth(i,playerhealth);
    }
    return 1;
    }


    wo ist mein fehler ? ;(

  • könnte das sein dass das so aussehen muss? :


    public Health(playerid)
    {
    new playerhealth = SetPlayerHealth(playerid,-7);
    for (new i = 0; i < MAX_PLAYERS; i++)
    {
    SetPlayerHealth(i,-7);
    }
    return 1;
    }


    wenn falsch korrigiert mich bitte..

  • public Health(playerid)
    {
    new playerhealth = SetPlayerHealth(playerid,-7); //<--------Warum SetPlayerHealth? Oo
    for (new i = 0; i < MAX_PLAYERS; i++)
    {
    SetPlayerHealth(i,-7);
    }
    return 1;
    }


    versuchs mal so.


    public Health(playerid)
    {
    new Float:playerHealth;
    GetPlayerHealth(playerid, playerHealth);
    for (new i = 0; i < MAX_PLAYERS; i++)
    {
    SetPlayerHealth(i,playerHealth-7);
    }
    return 1;
    }

  • Das Callback ohne Parameter. Die Health erst in der Schleife abfragen und runtersetzen ;)
    Also:


    forward Health();


    public Health()
    {
    for(new i=0;i<MAX_PLAYERS;i++)
    {
    new Float:h;
    GetPlayerHealth(i,h);
    SetPlayerHealth(i,h-7);
    }
    }