SAMP: Passivmodus?!

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
  • Gute Nacht =)
    Ich wollte mal nach nem filterscript fragen, welches einem Spieler erlaubt, in den Passivmodus zu gehen.


    Falls es sowas nicht gibt, würde jemand ein solches für mich scripten.?
    Also dass derjenige god mode anhat und mit waffen, fäusten etc keinen schaden machen kann.. oder ihm vorrüvergehend alle waffen weggenommen weden, gespeichert und beim verlassen des passi wiedergegeben..
    Und dass man wie bei gta online auch diesen counter hat, also man zb nach verlassen des passi nach erst 5 min wieder rein kann..


    Lieben dank =)

    Forum: Gta-Playground.de
    Teamspeak 3: ts.gta-playground.de
    Sa-MP: samp.gta-playground.de

  • Für den 'Passivmodus' musst du OnPlayerTakeDamage einfach mit 0 returnen.



    Return Values:

    • 1 - Allows this callback to be called in other scripts.
    • 0 - Callback will not be called in other scripts.
    • It is always called first in gamemodes so returning 0 there blocks filterscripts from seeing it


    @TE: Du musst im Callback [wiki]OnPlayerWeaponShot[/wiki] mit 0 returnen. Um mit den Fäusten, usw. den Schaden zu verhindern, musst du einfach im Callback
    [wiki]OnPlayerTakeDamage[/wiki] den zugefügten Schaden dem Geschädigten wiedergeben.


  • So kannst du die Waffen abnehmen und wieder geben:


    Unter den Includes:

    C
    new SavedWeapon[MAX_PLAYERS][13][2];


    Beim Speichern der Waffen:

    C
    for(new i=0; i<13; i++) 
    {
    	SavedWeapon[playerid][i][0]=0;
    	SavedWeapon[playerid][i][1]=0;
    	GetPlayerWeaponData(playerid, i, SavedWeapon[playerid][i][0], SavedWeapon[playerid][i][1]);
    }
    ResetPlayerWeapons(playerid);


    Beim Geben:

    C
    ResetPlayerWeapons(playerid);
    for(new i=0; i<13; i++) if(SavedWeapon[playerid][i][1]>0) GivePlayerWeapon(playerid, SavedWeapon[playerid][i][0], SavedWeapon[playerid][i][1]);


    Das Schlagen mit der Faust müsstest du eventuell bei OnPlayerKeyStateChange unterbinden.



    Wie du einen Countdown Timer machst habe ich hier erklärt:
    Verbleibende Zeit Anzeige


    Du müsstest es eben mit einem Array anpassen, damit es für jeden Spieler gesondert läuft.