Tore Aufgehen Lassen Sobald bestimmtes Auto in Range

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 Community,


    Ich bin Momentan Dabei ein Bisschen Zu Scripten usw habe aber zZ Ein Problem Wo ich nicht Weiter Komme undzwar Kriege ich es nicht hin das Meine Gescripteten Tore Automatisch aufgehen Sobald ein Bestimmest Fahrzeug in der Nähe ist.


    Ich Krieg es nur mit If(isPlayerInRange) Hin aber nicht mit If(isPlayerInVehicle)


    Ich habe auch Schon Mehrer Methoden Versucht aber Es will einfach nicht Funktionieren :(


    Hoffe man kann mir Hier helfen :)


    Hier mal ein Kleiner ausschnitt vom Code



    public fwtor1(playerid)
    {
    if(!IsPlayerInVehicle(playerid, 407 | 544 | 489))
    if(IsPlayerInRangeOfPoint(playerid, 5.0, 1123.20, -1206.80, 19.5000000))
    {
    new Float:TempX, Float:TempY, Float:TempZ;
    GetPlayerPos(playerid, TempX, TempY, TempZ);
    if(TempX == PosX[playerid] && TempY == PosY[playerid] && TempZ == PosZ[playerid])
    {
    }
    else
    {
    GetPlayerPos(playerid, PosX[playerid], PosY[playerid], PosZ[playerid]);
    MoveObject(fw1, 1123.20, -1206.80, 13.88, 2.5);
    SendClientMessage(playerid, RED, "Zentrale: Tor Wird Geöffnet!");
    SetTimer("closegate", 10000, 0);
    }
    }
    return 1;
    }



    Mit Freundlichen Grüßen


    Justin_M

  • public fwtor1(playerid)
    {
    if(IsPlayerInVehicle(playerid, 407) || IsPlayerInVehicle(playerid, 544) || IsPlayerInVehicle(playerid, 489))
    {
    if(IsPlayerInRangeOfPoint(playerid, 5.0, 1123.20, -1206.80, 19.5000000))
    {
    MoveObject(fw1, 1123.20, -1206.80, 13.88, 2.5);
    SendClientMessage(playerid, RED, "Zentrale: Tor Wird Geöffnet!");
    SetTimer("closegate", 10000, 0);
    }
    return 1; // nicht in reichweite


    }
    return 1; // Nicht in Fahrzeug 407 544 und 489
    }


    probier das mal so, ich hab kp für was du TempX... abfragst mit der Playercoordinate, daher hab ich es mal rausgemacht die koordinate vergleichst du ja bei RangeOfPoint

  • Ich denke das du mit dem "IsPlayerInAnyVehicle die Model IDs haben willst und nicht die Fahrzeug ID auf dem Server..


    public fwtor1(playerid)
    {
    new vehicleid - GetPlayerVehicleID(playerid);
    if(GetVehicleModel(vehicleid) == 407 || (GetVehicleModel(vehicleid) == 544 || (GetVehicleModel(vehicleid) == 489)))
    {
    if(IsPlayerInRangeOfPoint(playerid, 5.0, 1123.20, -1206.80, 19.5000000))
    {
    MoveObject(fw1, 1123.20, -1206.80, 13.88, 2.5);
    SendClientMessage(playerid, RED, "Zentrale: Tor Wird Geöffnet!");
    SetTimer("closegate", 10000, 0);
    }
    return 1; // nicht in reichweite


    }
    return 1; // Nicht in Fahrzeug 407 544 und 489
    }


    So müsste es nunr funktionieren wenn die Fahrzeug Model ID in der nähe ist

  • jo hast recht, ich glaube das wollte er auch :D sry für mein failhab da drüber geguckt und konzentrierte mich auf das einzellegen der Abfrage und dann viel mir das auf:


    new Float:TempX, Float:TempY, Float:TempZ;
    GetPlayerPos(playerid, TempX, TempY, TempZ);
    if(TempX == PosX[playerid] && TempY == PosY[playerid] && TempZ == PosZ[playerid])
    {
    }




    aber wie gesagt falls du die Art des Fahrzeuges sprich ob Taxi oder Bus oder so abfragen willst musst du wie der freundliche Nachtarbeiter über mir bereits geschrieben hat , mit dem Model des Fahrzeuges arbeiten.



    Mit freundlichen Grüßen
    mR.Jefferson