Objekt per zeit bewegen

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
  • Guten Morgen Breadfish


    Da ich nun wieder mit SAMP angefangen habe und ich mich für das Pawn Scripting interessiere kommme ich bei ein punkt nicht mehr weiter.


    Ich möchte gerne ein Objekt per timer bewegen lassen und erst wenn der Time abgelaufen ist und das Objekt auf den Boden gelandet ist nutzen dürfen.


    Checkpoint wurde erstellt und sollte beim betreten auch wieder gelöscht werden wenn es klappen sollte


    Der Befehl für die Tasche zu öffnen sollte halt so ein wenn der Spieler an die Tasche geht gibt es verschiedene möglichkeiten die er erhalten kann um abwechselung in der tasche zu haben.


    Habe folgendes gemacht:


    Include:

    Code
    #include <a_samp>
    #include <ocmd.inc>


    Farben damit bisschen mehr zu sehen ist(Derzeit nur 2 Farben)

    Code
    //Farben:
    #define rot 0xFF0000FF
    #define blau 0x00AAFFFF


    Eigene Funktion:


    Code
    //funktion:
    forward flugtasche(playerid);


    OnGameModeInit: Spawn so wie Objekt erstellt, Stuntbonus und eingänge ausgeschaltet.


    public flugtasche mit eigener Funktion Flugtasche(Für den Timer):



    OnPlayerEnterCheckpoint:


    Code
    public OnPlayerEnterCheckpoint(playerid)
    {
    	DisablePlayerCheckpoint(playerid);
    	return 1;
    }
  • Zuerst du brauchst forward/public für die Funktion Flugtasche nicht.


    Das braucht man nur für Funktionen die ein Callback bzw. durch ein Timer aufgerufen werden.
    Dementsprechend musst du Flugtaschenzeit mit forward & public versehen wie du es bereits mit Flugtasche gemacht hast.


    Wenn du möchtest, dass die Tasche nur dann "benutzbar" ist, wenn sie gelandet ist, solltest du dafür eine Variable erstellen, bspw new bool:nutzbar;
    Diese setzt du dann wenn du die Tasche erstellst auf false.


    Im übrigen MoveObject gibt die Zeit in Millisekunden wieder, die ein Object benötigt um bewegt zu werden.
    Das kannst du nutzen um die richtige Zeit bei SetTimer zu setzen
    In der Funktion Flugtaschenzeit, kannst du dann die vorhin erstellte Variable wieder auf true setzen und eine entsprechene Nachricht oder so ausgeben lassen

    "Bevor ich mir Informationen aus der "Bild" hole,
    werde ich anfangen, Wahlergebnisse danach vorauszusagen,
    neben welchen Busch unsere Katze gepinkelt hat."

    Margarete Stokowski