Tore mit Timer bewegen sich nicht

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
  • Hey,
    ich habe 2 Tore nebeneinander die gleichzeitig aufgehen sollen.
    Dummerweise bewegen sie sich leider nicht.
    Das hab ich bis jetzt alles da stehen:



    new tor1;
    new tor2;
    forward tor(); // Die 3 Sachen stehen ganz Oben




    tor1 = CreateObject(974,-2253.3000500,2207.1001000,12.1000000,0.0000000,0.0000000,14.0000000);
    tor1 = CreateObject(974,-2258.3999000,2205.8000500,12.1000000,0.0000000,0.0000000,13.9970000); //Das steht bei den Objekten



    if(strcmp("/tor",cmdtext,true,10)==0)
    {
    if(IsPlayerInRangeOfPoint(playerid, 25.0, -2253.3000500, 2207.1001000, 12.1000000))
    {
    MoveObject(tor1,-2246.1001000, 2208.6999500, 12.2000000, 0.0000000, 0.0000000, 13.9970000);
    SetTimer("tor", 5000,0);
    SendClientMessage(playerid, 0x0F9C00FF, "Du hast das Tor für 5 Sekunden geöffnet");
    return 1;
    }
    if(IsPlayerInRangeOfPoint(playerid, 25.0, -2258.3999000, 2205.8000500, 12.1000000))
    {
    MoveObject(tor2, -2265.3999000, 2204.0000000, 12.2000000, 0.0000000, 0.0000000, 14.0000000);
    SetTimer("tor", 5000,0);
    return 1;
    }
    } // und das alles unter OnPlayerCommandText


    Die Message funktioniert, jedoch die öffnen sich nicht.
    Fehlt noch etwas oder hab ich etwa einen Fehler gemacht?
    Bitte um Hilfe


    MfG

  • MoveObject ist wie folgt aufgebaut:
    MoveObject (objectid, Float:X, Float:Y, Float:Z, Float:Speed, Float:RotX = -1000.0, Float:RotY = -1000.0, Float:RotZ = -1000.0)



    Du hast die Geschwindigkeit auf 0, daher kann sich dort nix bewegen.

  • Du brauchst einen Public der vom Timer aufgerufen wird:


    public Tor1()
    {
    MoveObject(tor1,-2246.1001000, 2208.6999500, 12.2000000,5);
    return 1;
    }
    und
    if(IsPlayerInRangeOfPoint(playerid, 25.0, -2253.3000500, 2207.1001000, 12.1000000))
    {
    MoveObject(tor1,-2246.1001000, 2208.6999500, 12.2000000-10,5);
    SetTimer("Tor1", 5000,0);
    SendClientMessage(playerid, 0x0F9C00FF, "Du hast das Tor für 5 Sekunden geöffnet");
    return 1;
    }
    das gleiche machst du mit dem anderen tor