Leben immer füllen

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
  • Ich wollte, dass sich das Leben immer wieder auffüllt, wenn man welches verliert, das hat ja aber auch teilweise geklappt.
    Ich "zeigs" mal.


    forward Leben();


    Als erstes Hab ich ganz oben forward Leben(); hingerklatscht.


    public OnGameModeInit()
    {
    SetTimer("Leben",1,1);
    return 1;
    }


    Danach hab ich dann bei OnGameModeInit einen Timer eingestellt.


    public Leben()
    {
    SetPlayerHealth(playerid,100);
    }


    Dann ganz unten SetPlayerHealth(playerid,100); .


    Dann kommt da nen Error:
    C:\DOKUME~1\Name\Desktop\SCRIPT~1\NEWPRO~1\GAMEMO~1\BLA.pwn(496) : error 017: undefined symbol "playerid"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    1 Error.


    Da verstehe ich nicht, was daran falsch ist.
    Und noch was, wenn ich statt playerid eine 0 einsetze, funktioniert es, bloß nur für die ID 0 :D


    Please Help.


    PS: Bin ein Anfänger im Scripten, bitte macht mich nicht fertig :)


    Kempert.



    62.75.218.75:7778


    Bitte testen :)

  • forward GiveFullLifeForAll();


    public OnGameModeInit()
    {
    SetTimer("GiveFullLifeForAll",500,1);
    return 1;
    }


    public GiveFullLifeForAll()
    {
    for(new i=0;i<MAX_PLAYERS;i++)
    {
    if(IsPlayerConnected(i))
    {
    new Float:tHealth;
    GetPlayerHealth(i,tHealth);
    if(tHealth!=100.0)
    {
    SetPlayerHealth(i,100);
    }
    }
    }
    return 1;
    }


    Das ist die variante, wo man erst Leben verlieren muss ....


    @ Fischer ... Keine gute idee....

  • MAX_PLAYERS ist eine defination...


    könntest auch 500 hinschreiben ... den die Maximale anzahl von Spielern auf einem Server liegt bei 500

  • Ich würde in der for-Schleife statt MAX_PLAYERSDieses hier empfehlen. Ist Ressourcenschonender ;) GetMaxPlayers()So muss die Schleife nur so oft durchlaufen, wieviele Spieler auch online sind.

  • Du meinst GetMaxPlayers wäre schonender?


    Hast du es getestet?
    Hast du die Funktion oder Callback dazu gesehen?
    Achja >>>


    http://wiki.sa-mp.com/wiki/GetMaxPlayers


    Am besten ist es wenn man die Max_Players selber definiert ....

    #define MAX_SPIELER 100
    So, wäre die Maximale anzahl von den Player in den funktion//callbacks auf 100 ... also werden 0-99 (100) Spieler druchgesucht.


    In der a-samp.inc kann man auch die MAX_PLAYERS auf 100 oder anders setzen ...

  • Wer Lesen kann ist Klar im Vorteil.


    GetMaxPlayers gibt den Wert wieder der in der Server.cfg angegeben wurde...