Funktioniert nur das 1 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
  • Ich habe mir das Schranken sanft Routieren inc. heruntergeladen aber es funktioniert nur die 1 Schranke bei den anderen kommen Hier ist keine schranke aber wieso ?
    Jeffry:


    enum Tore_enum {
    Float:Zx,
    Float:Zy,
    Float:Zz,
    Float:Zrx,
    Float:Zry,
    Float:Zrz,
    Msg[128],
    }


    new Toree[][Tore_enum] = {
    {-2563.17, 581.28, 14.21,0.00, -90.00, 0.36,"Das Tor schließt in 10sec automatisch"},
    {-2599.30, 595.56, 14.19,0.00, -90.00, 89.94,"Das Tor schließt in 10sec automatisch"},
    {997.11, 1707.54, 10.62, 0.00, 90.00, 90.00,"Das Tor schließt in 10sec automatisch"}
    };



    for(new i = 0; i < sizeof(Tore); i++)
    {
    CreateSchranke(968, Tore[i][Zx], Tore[i][Zy], Tore[i][Zz], Tore[i][Zrx], Tore[i][Zry], Tore[i][Zrz]);//Army Oben
    }


    public OnPlayerCommandText(playerid, cmdtext[])
    {
    if (strcmp("/schranke", cmdtext, true, 10) == 0)
    {
    for(new i = 0; i < sizeof(MAX_TORE); i++)
    {
    if(!IsPlayerInRangeOfSchranke(playerid,i,10.0))return SendClientMessage(playerid,-1,"Hier ist keine schranke");//Abfragen ob er in der nähe von schranke XX ist
    MoveSchranke(i);
    SendClientMessage(playerid,GRÜN,Tore[i][Msg]);
    return 1;
    }
    return 1;
    }
    return 0;
    }

  • public OnPlayerCommandText(playerid, cmdtext[])
    {
    if (strcmp("/schranke", cmdtext, true, 10) == 0)
    {
    for(new i = 0; i < sizeof(MAX_TORE); i++)
    {
    if(!IsPlayerInRangeOfSchranke(playerid,i,10.0)) continue;
    MoveSchranke(i);
    SendClientMessage(playerid,GRÜN,Tore[i][Msg]);
    return 1;
    }
    return SendClientMessage(playerid,-1,"Hier ist keine schranke");
    }
    return 0;
    }

  • Danke funktioniert
    jetze wollte ich das auch mit den Toren machen aber das Funktioniert nicht der Text wird ausgegen aber das Tor bewegt sich nicht ?
    Ich habe es jetze auch umbenannt in Schranken
    Jeffry:


    enum Tore_enum {
    tID,//ist die Art vom Tor sprich 980
    Float:Zx,
    Float:Zy,
    Float:Zz,
    Float:Zrx,
    Float:Zry,
    Float:Zrz,
    Msg[128],
    Float:Ax,
    Float:Ay,
    Float:Az,
    Float:speed,
    Float:Arx,
    Float:Ary,
    Float:Arz
    }


    new Tore[][Tore_enum] = {
    {0,1590.33, -1637.92, 14.83, 0.00, 0.00, 0.00,"Das Tor schließt in 10sec automatisch",1590.35, -1637.92, 8.33, 2.5, 1590.33, -1637.92, 14.83 },//LSPDGTor
    {0,1542.87, -1627.64, 15.12, 0.00, 0.00, 90.00,"Das Tor schließt in 10sec automatisch",1542.87, -1627.64, 8.97, 2.5, 0.00, 0.00, 90.00},//LSPDHTor
    {0,309.80, -1554.20, 32.11, 0.00, 0.00, -38.10,"Das Tor schließt in 10sec automatisch",309.80, -1554.20, 27.40, 2.5, 0.00, 0.00, -38.10},//FBILTor
    {0,363.88, -1470.44, 32.06, 0.00, 0.00, -142.32,"Das Tor schließt in 10sec automatisch",363.88, -1470.44, 26.90, 2.5, 0.00, 0.00, -142.32},//FBIRTor
    {0,-2126.41, -80.48, 37.05, 0.00, 0.00, 0.00,"Das Tor schließt in 10sec automatisch",-2115.61, -80.48, 37.05, 2.5, 0.00, 0.00, 0.00},//Fahrschul LKWTor
    {0,-2030.71, -221.54, 34.76, 0.00, 0.00, 0.00,"Das Tor schließt in 10sec automatisch",-2030.71, -221.54, 31.38, 2.5, 0.00, 0.00, 0.00}//FS Tor
    };


    for(new i = 0; i < sizeof(Tore); i++)
    {
    if(Tore[i][tID] == 0)
    {
    CreateObject(980, Tore[i][Zx], Tore[i][Zy], Tore[i][Zz], Tore[i][Zrx], Tore[i][Zry], Tore[i][Zrz]);
    }
    }


    if (strcmp("/tor", cmdtext, true, 10) == 0)
    {
    for(new i = 0; i < sizeof(Tore); i++)
    {
    if(IsPlayerInRangeOfPoint(playerid,10,Tore[i][Zx],Tore[i][Zy],Tore[i][Zz]))
    {
    MoveObject(i, Tore[i][Ax], Tore[i][Ay], Tore[i][Az],2.5,Tore[i][Arx],Tore[i][Ary],Tore[i][Arz]);
    SendClientMessage(playerid,GRÜN,Tore[i][Msg]);
    return 1;
    }
    }
    return SendClientMessage(playerid,-1,"Hier ist keine schranke");
    }



    und wie schließen sich die dann nach 10sec ?
    Du hattest mir das mal so gegben
    public CloseGate(id)
    {
    if(id == LSPDGTor) return MoveDynamicObject(LSPDGTor, 1590.33, -1637.92, 14.83, 2.5);
    if(id == OamtTor) return MoveDynamicObject(OamtTor, -1035.74, -588.25, 31.79, 2.5, 0.00, -90.00, -2.78);
    if(id == LSPDHTor) return MoveDynamicObject(LSPDHTor, 1542.87, -1627.64, 15.12, 2.5, 0.00, 0.00, 90.00);
    if(id == SFPDGTor) return MoveDynamicObject(SFPDGTor, -1656.44, 688.98, 14.84, 2.5, 0.00, 0.00, 0.00);
    if(id == SFPDs1) return MoveDynamicObject(SFPDs1, -1572.20, 658.79, 6.84, 2.5, 0.00, 90.00, 90.00);
    if(id == SFPDs2) return MoveDynamicObject(SFPDs2, -1701.45, 687.57, 24.64, 2.5, 0.00, -90.00, 90.12);
    if(id == NewsGTor) return MoveDynamicObject(NewsGTor, -1770.00, 1006.79, 19.39, 2.5, 0.00, 0.00, 90.00);
    if(id == FBILTor) return MoveDynamicObject(FBILTor, 309.80, -1554.20, 32.11, 2.5, 0.00, 0.00, -38.10);
    if(id == FBIRTor) return MoveDynamicObject(FBIRTor, 363.88, -1470.44, 32.06, 2.5, 0.00, 0.00, -142.32);
    if(id == MPSchranke) return MoveDynamicObject(MPSchranke, -2599.23, 688.64, 27.57, 2.5, 0.00, -90.00, 90.00);
    if(id == MGTor) return MoveDynamicObject(MGTor, -2565.81, 617.64, 12.82, 2.5, 0.00, 0.00, 0.00);
    if(id == Ms1) return MoveDynamicObject(Ms1, -2563.17, 581.28, 14.21, 2.5, 0.00, -90.00, 0.36);
    if(id == Ms2) return MoveDynamicObject(Ms2, -2599.30, 595.56, 14.19, 2.5, 0.00, -90.00, 89.94);
    if(id == FLKWTor) return MoveDynamicObject(FLKWTor, -2126.41, -80.48, 37.05, 2.5, 0.00, 0.00, 0.00);
    if(id == FSTor) return MoveDynamicObject(FSTor, -2030.71, -221.54, 34.76, 2.5, 0.00, 0.00, 0.00);
    if(id == FS1) return MoveDynamicObject(FS1, -2049.87, -102.50, 34.88, 2.5, 0.00, -90.00, 0.00);
    if(id == FS2) return MoveDynamicObject(FS2, -2049.47, -102.50, 34.88, 2.5, 0.00, 90.00, 0.00);
    if(id == siyar) return MoveDynamicObject(siyar, 1497.44, -702.27, 96.34, 2.5, 0.00, 0.00, 180.00);
    if(id == siyarg1) return MoveDynamicObject(siyarg1, 1492.96, -671.12, 95.46, 2.5, 0.00, 0.00, 90.00);
    if(id == siyarg2) return MoveDynamicObject(siyarg2, 1479.27, -671.13, 95.60, 2.5, 0.00, 0.00, 90.00);
    return 1;
    }

  • new torID[MAX_TORE];


    for(new i = 0; i < sizeof(Tore); i++)
    {
    if(Tore[i][tID] == 0)
    {
    torID[i] = CreateObject(980, Tore[i][Zx], Tore[i][Zy], Tore[i][Zz], Tore[i][Zrx], Tore[i][Zry], Tore[i][Zrz]);
    }
    }


    if (strcmp("/tor", cmdtext, true, 10) == 0)
    {
    for(new i = 0; i < sizeof(Tore); i++)
    {
    if(IsPlayerInRangeOfPoint(playerid,10,Tore[i][Zx],Tore[i][Zy],Tore[i][Zz]))
    {
    MoveObject(torID[i], Tore[i][Ax], Tore[i][Ay], Tore[i][Az],2.5,Tore[i][Arx],Tore[i][Ary],Tore[i][Arz]);
    SendClientMessage(playerid,GRÜN,Tore[i][Msg]);
    return 1;
    }
    }
    return SendClientMessage(playerid,-1,"Hier ist keine schranke");
    }


    Zwecks dem Schließen:
    Da machst du ebenfalls einen Timer, gibst "i" mit (SetTimerEx) und bewegst das Objekt wieder an die Anfangsposition zurück.

  • wie ?
    wenn ich
    Tore[MAX_TORE][Tore_enum]
    mache bekomme ich andere errors


    enum Tore_enum {
    tID,
    Float:Zx,
    Float:Zy,
    Float:Zz,
    Float:Zrx,
    Float:Zry,
    Float:Zrz,
    Msg[128],
    Float:Ax,
    Float:Ay,
    Float:Az,
    Float:speed,
    Float:Arx,
    Float:Ary,
    Float:Arz
    }


    new Tore[][Tore_enum] = {
    {0,1590.33, -1637.92, 14.83, 0.00, 0.00, 0.00,"Das Tor schließt in 10sec automatisch",1590.35, -1637.92, 8.33, 2.5, 1590.33, -1637.92, 14.83 },//LSPDGTor
    {0,1542.87, -1627.64, 15.12, 0.00, 0.00, 90.00,"Das Tor schließt in 10sec automatisch",1542.87, -1627.64, 8.97, 2.5, 0.00, 0.00, 90.00},//LSPDHTor
    {0,309.80, -1554.20, 32.11, 0.00, 0.00, -38.10,"Das Tor schließt in 10sec automatisch",309.80, -1554.20, 27.40, 2.5, 0.00, 0.00, -38.10},//FBILTor
    {0,363.88, -1470.44, 32.06, 0.00, 0.00, -142.32,"Das Tor schließt in 10sec automatisch",363.88, -1470.44, 26.90, 2.5, 0.00, 0.00, -142.32},//FBIRTor
    {0,-2126.41, -80.48, 37.05, 0.00, 0.00, 0.00,"Das Tor schließt in 10sec automatisch",-2115.61, -80.48, 37.05, 2.5, 0.00, 0.00, 0.00},//Fahrschul LKWTor
    {0,-2030.71, -221.54, 34.76, 0.00, 0.00, 0.00,"Das Tor schließt in 10sec automatisch",-2030.71, -221.54, 31.38, 2.5, 0.00, 0.00, 0.00}//FS Tor
    };

  • Nein.
    Unter
    new Tore[][Tore_enum] = {
    {0,1590.33, -1637.92, 14.83, 0.00, 0.00, 0.00,"Das Tor schließt in 10sec automatisch",1590.35, -1637.92, 8.33, 2.5, 1590.33, -1637.92, 14.83 },//LSPDGTor
    {0,1542.87, -1627.64, 15.12, 0.00, 0.00, 90.00,"Das Tor schließt in 10sec automatisch",1542.87, -1627.64, 8.97, 2.5, 0.00, 0.00, 90.00},//LSPDHTor
    {0,309.80, -1554.20, 32.11, 0.00, 0.00, -38.10,"Das Tor schließt in 10sec automatisch",309.80, -1554.20, 27.40, 2.5, 0.00, 0.00, -38.10},//FBILTor
    {0,363.88, -1470.44, 32.06, 0.00, 0.00, -142.32,"Das Tor schließt in 10sec automatisch",363.88, -1470.44, 26.90, 2.5, 0.00, 0.00, -142.32},//FBIRTor
    {0,-2126.41, -80.48, 37.05, 0.00, 0.00, 0.00,"Das Tor schließt in 10sec automatisch",-2115.61, -80.48, 37.05, 2.5, 0.00, 0.00, 0.00},//Fahrschul LKWTor
    {0,-2030.71, -221.54, 34.76, 0.00, 0.00, 0.00,"Das Tor schließt in 10sec automatisch",-2030.71, -221.54, 31.38, 2.5, 0.00, 0.00, 0.00}//FS Tor
    };
    das einfügen:
    new torID[sizeof(Tore)];

  • Okey das Funktioniert
    muss ich das so Übergeben oder wie ?


    SetTimerEx("CloseGate", 10000, 0, "i", torID[i]);


    public CloseGate(id)
    {
    if(id == torID[id]) return MoveObject(torID[id], Tore[id][Zx],Tore[id][Zy], Tore[id][Zz], 2.5);
    if(id == torID[id]) return MoveObject(torID[id], Tore[id][Zx],Tore[id][Zy], Tore[id][Zz], 2.5);
    return 1;
    }

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Beitrag von reaL. ()

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.
  • ich habe beim sfpd ein neues Tor hingemacht aber es öffnet sich falsch ?
    zu geht es richtig ich habe die Cordinaten überprüft die sind richtig da es ja nur runter gehen soll
    Jeffry:


    enum Tore_enum {
    tID,
    Float:Zx,
    Float:Zy,
    Float:Zz,
    Float:Zrx,
    Float:Zry,
    Float:Zrz,
    Msg[128],
    Float:Ax,
    Float:Ay,
    Float:Az,
    Float:speed,
    Float:Arx,
    Float:Ary,
    Float:Arz
    }


    new Tore[][Tore_enum] = {
    {0,1590.33, -1637.92, 14.83, 0.00, 0.00, 0.00,"Das Tor schließt in 10sec automatisch",1590.35, -1637.92, 8.33, 2.5, 1590.33, -1637.92, 14.83 },//LSPDGTor
    {0,1542.87, -1627.64, 15.12, 0.00, 0.00, 90.00,"Das Tor schließt in 10sec automatisch",1542.87, -1627.64, 8.97, 2.5, 0.00, 0.00, 90.00},//LSPDHTor
    {0,309.80, -1554.20, 32.11, 0.00, 0.00, -38.10,"Das Tor schließt in 10sec automatisch",309.80, -1554.20, 27.40, 2.5, 0.00, 0.00, -38.10},//FBILTor
    {0,363.88, -1470.44, 32.06, 0.00, 0.00, -142.32,"Das Tor schließt in 10sec automatisch",363.88, -1470.44, 26.90, 2.5, 0.00, 0.00, -142.32},//FBIRTor
    {0,-2126.41, -80.48, 37.05, 0.00, 0.00, 0.00,"Das Tor schließt in 10sec automatisch",-2115.61, -80.48, 37.05, 2.5, 0.00, 0.00, 0.00},//Fahrschul LKWTor
    {0,-2030.71, -221.54, 34.76, 0.00, 0.00, 0.00,"Das Tor schließt in 10sec automatisch",-2030.71, -221.54, 31.38, 2.5, 0.00, 0.00, 0.00},//FS Tor
    {1,-1631.68, 688.39, 8.53, 0.00, 0.00, 90.00,"Das Tor schließt in 10sec automatisch",-1631.68, 688.39, 2.79, 0.00, 0.00, 90.00}//SFPD Tor <---- Neues Tor
    };


    new torID[sizeof(Tore)];


    for(new i = 0; i < sizeof(Tore); i++)
    {
    if(Tore[i][tID] == 1)
    {
    torID[i] = CreateObject(10184, Tore[i][Zx], Tore[i][Zy], Tore[i][Zz], Tore[i][Zrx], Tore[i][Zry], Tore[i][Zrz]);
    }
    }


    if (strcmp("/tor", cmdtext, true, 10) == 0)
    {
    for(new i = 0; i < sizeof(Tore); i++)
    {
    if(IsPlayerInRangeOfPoint(playerid,10,Tore[i][Zx],Tore[i][Zy],Tore[i][Zz]))
    {
    MoveObject(torID[i], Tore[i][Ax], Tore[i][Ay], Tore[i][Az],2.5,Tore[i][Arx],Tore[i][Ary],Tore[i][Arz]);
    SetTimerEx("CloseGate", 10000, 0, "i", i);
    SendClientMessage(playerid,GRÜN,Tore[i][Msg]);
    return 1;
    }
    }
    return SendClientMessage(playerid,-1,"Hier ist keine schranke");
    }

  • Interessant.
    Klappt es, wenn du im Befehl
    MoveObject(torID[i], Tore[i][Ax], Tore[i][Ay], Tore[i][Az],2.5,Tore[i][Arx],Tore[i][Ary],Tore[i][Arz]);
    zu:
    MoveObject(torID[i], Tore[i][Ax], Tore[i][Ay], Tore[i][Az],2.5);
    machst?




    EDIT: (Post unten)
    @xCurry: Oh, ja stimmt. Da du gesagt hast die Koordinaten stimmen habe ich da gar nicht mehr drauf geschaut. Da dein Problem behoben ist, wäre es gut, wenn du den Thread auf erledigt setzt. Danke!

    3HZXdYd.png

    Einmal editiert, zuletzt von Jeffry ()