Beiträge von .fLuX

    Ob es einfacher ist oder nicht, ist Geschmackssache. Fakt ist, dass Enumerationen strukturierter sowie übersichtlicher sind. Ob sie Ressourcen freundlicher sind, lässt sich glaube ich bestreiten, wobei ich der Meinung bin.


    B2T: Bevor du die Member einer Fraktion "auslesen" kannst, musst du erstmal Fraktionen erstellen. Um darauf zu kommen, muss man nicht einmal Scripten können. Ist also eine eher dumme Frage, solange du keine Fraktionen eingebaut hast.
    Falls ich das ganze falsch verstanden habe, brauchen wir mehr Informationen. Um genau zu sein, wie du Mitglieder einer Fraktion bestimmst.

    Um dir helfen zu können brauchen wir:
    - Waffenkauffunktion ( - Die Stelle an der dir das Geld abgezogen wird. )
    - Speicherfunktion


    Benutzt du eine Server-Side Variable für das Geld ? Wenn ja, ziehst du hiervon auch das Geld ab ?

    Ich habe ein komplettes Selfmade geschrieben, dazu eine eigene MySQL-Libary für PWN. Praktische Erfahrung habe ich genug.
    Und nein, das kann nicht sein, da dir SAMP nicht einfach so mehr HP gibt. Das Script macht das, was du reinschreibst und nicht mal so random mal mehr HP.
    Solltest du jedoch genauso Scripten wie Artikulieren, ist es schon fast möglich, das dein Script einfach so "1000HP" verteilt.
    Erzähl bitte keine Scheiße wenn du keine Ahnung hast, danke.

    Jep, editiere den Code gleich rein ;)










    // Außerhalb eines Callbacksforward CheckHealth(playerid);
    new HealthCheckTimer[MAX_PLAYERS];
    // bei deinem Login-System oder auch bei "OnPlayerSpawn"
    HealthCheckTimer[playerid] = SetTimerEx("CheckHealth",2000,true,"i",playerid);
    // Bei OnPlayerDisconnect oder der Logout Funktion
    KillTimer(HealthCheckTimer[playerid]);
    // Die Funktion
    public CheckHealth(playerid)
    {
    if(GetPlayerHealth(playerid) > 150) Kick(playerid);
    return 1;
    }

    Abgesehen davon, das ich durch deine durchaus miserable Artikulation nichts lesen kann, versuche ich dir dennoch zu helfen.


    Ist dein "SSetPlayerHealth" bei "OnPlayerSpawn" eine neue Funktion oder ein Schreibfehler ?

    Wie von Bluescreen erwähnt, pack alles in eine Query, dass ist ein Anfang. Ist aber sicherlich nicht das einzige Problem, wenn dein Script das ganze nur bei OnPlayerDisconnect ausführt, dürfte der Server nicht durchgehend laggen. Daher tippe ich auf Timer. Entweder, du hast viele Timer, die sich loopen ( -> durch einen Timer einen Weiteren erstellen usw. ) oder du Killst die unwichtigen nicht. Laggt dein Server nur oder Crasht er nach einer gewissen Zeit auch ? Sollte er Crashen, such nach dem Plugin "Crash-Detect". Damit werden dir bsp. Timer-Loops oder sonstige Fehler, die zum Crashen führen in der Console angezeigt.


    MfG

    Je mehr Kommentare desto schlechter ist es wohl geschrieben, ein erfahrener Scripter sollte sich kurz halten können. Doch um deine Frage zu beantworten, das längste, das ich selber mal gesehen habe war ein LoH-Edit von einem Freund, dass hatte ca 150k Zeilen jedoch mich Kommentaren.

    Per Teamviewer ist grade schlecht, ich kann dir aber gerne ein Beispiel-Code schreiben.


    #Edit


    // Da bei dir jeder gleichzeitig den Payday erhalten würde (( siehe "Minute" Function )) unter OnGameModeInit();
    SetTimer("Minute",60000,true); // 60000 = 60 Sekunden





    MfG