Falsche Funktion Error bei Tor

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
  • Aloha!
    Ich bin grad dabei Tore zu erstellen, doch beim dritten macht er mir probleme:(


    wenn ich es so habe

    public checkparea(playerid)
    {
    if(PlayerToPoint(10.0, playerid, 1637.7407, -1154.3619, 23.9063)) // 10.0 ist der Radius
    {
    MoveObject(bauarbeitertor, 1637.734375, -1151.263428, 30.579815, 2.5); // 2.5 ist glaub ich die Geschwindigkeit
    SetTimer("closegate", 5000, 0);
    }
    else if(PlayerToPoint(10.0, playerid, 1536.6515, -1627.0389, 13.3828))
    MoveObject(pdtor, 1539.634277, -1627.782227, 20.107719, 2.5);
    SetTimer("closegate", 5000, 0);
    }


    kommen keine Errors doch wenn ich es so mache

    public checkparea(playerid)
    {
    if(PlayerToPoint(10.0, playerid, 1637.7407, -1154.3619, 23.9063)) // 10.0 ist der Radius
    {
    MoveObject(bauarbeitertor, 1637.734375, -1151.263428, 30.579815, 2.5); // 2.5 ist glaub ich die Geschwindigkeit
    SetTimer("closegate", 5000, 0);
    }
    else if(PlayerToPoint(10.0, playerid, 1536.6515, -1627.0389, 13.3828))
    MoveObject(pdtor, 1539.634277, -1627.782227, 20.107719, 2.5);
    SetTimer("closegate", 5000, 0);
    }
    else if(PlayerToPoint(10.0, playerid, 1536.6515, -1627.0389, 13.3828))
    MoveObject(pdinnentor, 1590.351196, -1637.826050, 20.778055, 2.5);
    SetTimer("closegate", 5000, 0);
    }



    kommt das

    C:\Dokumente und Einstellungen\Joker\Desktop\TEST.pwn(542) : error 010: invalid function or declaration
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    1 Error.


    Er will mir damit sagen, dass ich das Falsch gescriptet habe doch es ist doch alles gleich :(

  • public checkparea(playerid)
    {
    if(PlayerToPoint(10.0, playerid, 1637.7407, -1154.3619, 23.9063)) // 10.0 ist der Radius
    {
    MoveObject(bauarbeitertor, 1637.734375, -1151.263428, 30.579815, 2.5); // 2.5 ist glaub ich die Geschwindigkeit
    SetTimer("closegate", 5000, 0);
    }
    else if(PlayerToPoint(10.0, playerid, 1536.6515, -1627.0389, 13.3828))
    {
    MoveObject(pdtor, 1539.634277, -1627.782227, 20.107719, 2.5);
    SetTimer("closegate", 5000, 0);
    }
    else if(PlayerToPoint(10.0, playerid, 1536.6515, -1627.0389, 13.3828))
    {
    MoveObject(pdinnentor, 1590.351196, -1637.826050, 20.778055, 2.5);
    SetTimer("closegate", 5000, 0);
    }

  • Hmm die Tore gehen jet net mehr :(



    new Lspdtor;
    new Lspdinnentor;
    new Lspdaufzug;
    new Sfpdtor;
    new Sfpdtor2;



    Lsbauarbeitertor = CreateObject(986, 1637.752441, -1151.069580, 24.616917, 0.0000, 0.0000, 0.0000);
    Lspdtor = CreateObject(986, 1539.577759, -1627.867432, 14.093480, 0.0000, 0.0000, 0.0000);
    Lspdinnentor = CreateObject(980, 1590.398438, -1637.889038, 15.255205, 0.0000, 0.0000, 0.0000);
    Lspdaufzug = CreateObject(5837, 1560.466675, -1620.151978, 14.264370, 0.0000, 0.0000, 180.0000);
    Sfpdtor = CreateObject(976, -1571.764160, 656.940186, 6.349410, 0.0000, 0.0000, 90.0000);
    Sfpdtor2 = CreateObject(976, -1701.768066, 680.472229, 24.052534, 0.0000, 0.0000, 90.0000);



    public checkparea(playerid)
    {
    if(PlayerToPoint(10.0, playerid, 1637.7407, -1154.3619, 23.9063)) // 10.0 ist der Radius
    {
    MoveObject(Lsbauarbeitertor, 1637.734375, -1151.263428, 30.579815, 2.5); // 2.5 ist glaub ich die Geschwindigkeit
    SetTimer("closegate", 5000, 0);
    }
    else if(PlayerToPoint(10.0, playerid, 1536.3081,-1628.3312,13.3828))
    {
    if(gLeader[playerid] == LsCop || gTeam[playerid] == LsCop || gLeader[playerid] == LsFbi || gTeam[playerid] == LsFbi || gLeader[playerid] == LsArmy || gTeam[playerid] == LsArmy)
    MoveObject(Lspdtor, 1539.383911, -1627.863159, 20.045971, 2.5);
    SetTimer("closegate", 5000, 0);
    }
    else if(PlayerToPoint(10.0, playerid, 1587.7832,-1633.9318,13.3828))
    {
    if(gLeader[playerid] == LsCop || gTeam[playerid] == LsCop || gLeader[playerid] == LsFbi || gTeam[playerid] == LsFbi || gLeader[playerid] == LsArmy || gTeam[playerid] == LsArmy)
    MoveObject(Lspdinnentor, 1590.392700, -1637.926147, 20.900719, 2.5);
    SetTimer("closegate", 5000, 0);
    }
    else if(PlayerToPoint(10.0, playerid, 1561.3141,-1620.0703,13.8347))
    {
    if(gLeader[playerid] == LsCop || gTeam[playerid] == LsCop || gLeader[playerid] == LsFbi || gTeam[playerid] == LsFbi || gLeader[playerid] == LsArmy || gTeam[playerid] == LsArmy)
    MoveObject(Lspdaufzug, 1560.466675, -1620.151978, 14.264370, 2.5);
    SetTimer("closegate", 5000, 0);
    }
    else if(PlayerToPoint(10.0, playerid, -1571.3778,661.5244,7.1875))
    {
    if(gLeader[playerid] == SfCop || gTeam[playerid] == SfCop)
    MoveObject(Sfpdtor, -1571.776611, 665.782166, 6.349410, 2.5);
    SetTimer("closegate", 5000, 0);
    }
    else if(PlayerToPoint(10.0, playerid, -1701.3805,684.2952,24.8496))
    if(gLeader[playerid] == SfCop || gTeam[playerid] == SfCop)
    MoveObject(Sfpdtor2, -1701.716919, 689.342529, 24.052534, 2.5);
    SetTimer("closegate", 5000, 0);
    return 1;
    }



    public closegate()
    {
    MoveObject(Lsbauarbeitertor, 1637.752441, -1151.069580, 24.616917, 2.5);
    MoveObject(Lspdtor, 1539.577759, -1627.867432, 14.093480, 2.5);
    MoveObject(Lspdinnentor, 1587.905518, -1637.874878, 15.187120, 2.5);
    MoveObject(Lspdaufzug, 1560.091553, -1620.395142, 29.119610, 2.5);
    MoveObject(Sfpdtor, -1571.764160, 656.940186, 6.349410, 2.5);
    MoveObject(Sfpdtor2, -1701.768066, 680.472229, 24.052534, 2.5);


    return 1;
    }

  • Ich sehe den Fehler jetzt nicht auf den ersten Blick, aber ich würde dir empfehlen für jedes Tor einen eigenen Timer zu verwenden!
    Sonst passiert das ein Tor was grade aufgeht sofort wieder schliesst weil ein anderes Tor schon 6 sekunden auf war^^

    Loomizz a.k.a Backspin

    Einmal editiert, zuletzt von Loomizz ()

  • Ich sehe den Fehler jetzt nicht auf den ersten Blick, aber ich würde dir empfehlen für jedes Tor einen eigenen Timer zu verwenden!
    Sonst passiert das ein Tor was grade aufgeht sofort wieder schliesst weil ein anderes Tor schon 6 sekunden auf war^^

    Ich denke, das lässt sich besser lösen, denn viele Timer brauchen auch viele Ressourcen.
    z.B.:
    Du machst einfach paar globale Variablen à la

    Code
    new Lspdtoroffen;
    new Lspdinnentoroffen;
    new Lspdaufzugoffen;
    new Sfpdtoroffen;
    new Sfpdtor2offen;


    Wenn man jetzt ein Tor aufmacht, wird der Wert auf 1 gesetzt.
    Beim Timer, der die Tore schliesst macht man jetzt, dass er die Tore nur schliesst, wenn maximal 1 Tor offen ist.

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • X(
    Wieso gehen die Tore nicht ?



    new Lsbauarbeitertor;
    new Lspdtor;
    new Lspdinnentor;
    new Sfpdtor;
    new Sfpdtor2;



    public checkparea(playerid)
    {
    if(PlayerToPoint(10.0, playerid, 1637.7407, -1154.3619, 23.9063))
    {
    {
    MoveObject(Lsbauarbeitertor, 1637.734375, -1151.263428, 30.579815, 2.5);
    SetTimer("closegate", 5000, 0);
    }
    }
    else if(PlayerToPoint(10.0, playerid, 1536.3081,-1628.3312,13.3828))
    {
    {
    MoveObject(Lspdtor, 1539.383911, -1627.863159, 20.045971, 2.5);
    SetTimer("closegate", 5000, 0);
    }
    }
    else if(PlayerToPoint(10.0, playerid, 1587.7832,-1633.9318,13.3828))
    {
    {
    MoveObject(Lspdinnentor, 1590.392700, -1637.926147, 20.900719, 2.5);
    SetTimer("closegate", 5000, 0);
    }
    }
    else if(PlayerToPoint(10.0, playerid, -1571.3778,661.5244,7.1875))
    {
    {
    MoveObject(Sfpdtor, -1571.776611, 665.782166, 6.349410, 2.5);
    SetTimer("closegate", 5000, 0);
    }
    }
    else if(PlayerToPoint(10.0, playerid, -1701.3805,684.2952,24.8496))
    {
    {
    MoveObject(Sfpdtor2, -1701.716919, 689.342529, 24.052534, 2.5);
    SetTimer("closegate", 5000, 0);
    }
    }
    return 1;
    }



    public closegate()
    {
    MoveObject(Lsbauarbeitertor, 1637.752441, -1151.069580, 24.616917, 2.5);
    MoveObject(Lspdtor, 1539.577759, -1627.867432, 14.093480, 2.5);
    MoveObject(Lspdinnentor, 1587.905518, -1637.874878, 15.187120, 2.5);
    MoveObject(Sfpdtor, -1571.764160, 656.940186, 6.349410, 2.5);
    MoveObject(Sfpdtor2, -1701.768066, 680.472229, 24.052534, 2.5);


    return 1;
    }

  • Why bei jedem 2 Klammern auf und Zu obwohl nur eine If abfrage drinne steht? xDD
    public checkparea(playerid)
    {
    if(PlayerToPoint(10.0, playerid, 1637.7407, -1154.3619, 23.9063))
    {
    MoveObject(Lsbauarbeitertor, 1637.734375, -1151.263428, 30.579815, 2.5);
    SetTimer("closegate", 5000, 0);
    }
    else if(PlayerToPoint(10.0, playerid, 1536.3081,-1628.3312,13.3828))
    {
    MoveObject(Lspdtor, 1539.383911, -1627.863159, 20.045971, 2.5);
    SetTimer("closegate", 5000, 0);
    }
    else if(PlayerToPoint(10.0, playerid, 1587.7832,-1633.9318,13.3828))
    {
    MoveObject(Lspdinnentor, 1590.392700, -1637.926147, 20.900719, 2.5);
    SetTimer("closegate", 5000, 0);
    }
    else if(PlayerToPoint(10.0, playerid, -1571.3778,661.5244,7.1875))
    {
    MoveObject(Sfpdtor, -1571.776611, 665.782166, 6.349410, 2.5);
    SetTimer("closegate", 5000, 0);
    }
    else if(PlayerToPoint(10.0, playerid, -1701.3805,684.2952,24.8496))
    {
    MoveObject(Sfpdtor2, -1701.716919, 689.342529, 24.052534, 2.5);
    SetTimer("closegate", 5000, 0);
    }
    return 1;
    }