Wie macht man ein Gefängnissystem-Script?

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 liebe sa-mp User,


    ich würde gerne wissen wie man ein Gefängnissystem-Script macht.
    Ich würde mich über eine ausführliche Erklärung sehr freuen.


    Danke schonmal im vorraus.


    Mit freundlichen Grüßen


    Janiboy3 :)

  • Im Prinzip wenn man es versteht ganz easy:


    Du lässt in deiner Spielerdatei folgendes speichern: pKnast (0 für kein Knast, 1 für ist im knast), pArrestTime (wielange er arrestet wurde in Sekunden).
    Dann brauchst du nen /arrest Befehl.
    Dann wenn /arrest korrekt ist, machst du die pArrestTime des Spielers auf die Sekudnen zahl und unter ongamemodeinit fragst du jede sekunde ab, ob er im knast sitzt und machst dann pArrestTime auf -= 1.
    Wenn er im Knast ist und pArrestTime auf 0 ist, lässt du ihn wieder normal spawnen und pKnast wieder auf 0.


    Lg

  • Praktischer ist eine Variable z.B.
    Arrested[MAX_PLAYERS];


    Sollte die Variable auf -999 sein, ist der Spieler nicht im Knast.
    Bei >= 0 ist der Spieler für (Arrested) Sekunden im Knast.


    Das ganze in einen Timer reinpacken, z.B.
    Timer // ... mit Intervall 1000 Millisekunden()
    {
    if(Arrested[playerid] > 0) // Sollte Knastzeit laufen, d.h. Variable größer 0
    {
    Arrested[playerid]--; // 1 Sekunde wird abgezogen
    if(Arrested[playerid] <= 0) // Sollte Arrestzeit 0 sein.
    {
    Arrested[playerid] = -999; // Spieler kommt frei
    }
    }
    }


    Gruß


  • Nicht sehr Schlau. Dann muss der Spieler nur Reloggen & schon ist er wieder raus.