Fahrzeugzerstörung

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 weiß nicht, wie ich das scripten soll.


    Ich habe eine Rollervermietung. Wenn man sich dort einen Roller "mietet", also im Pickup /roller eingibt,
    dann wird einer gespawnt und man wird hineingesetzt.


    Der Roller hat eine Respawnzeit von 300 Sekunden, heißt 5 Minuten.


    Ich möchte jetzt machen, dass, wenn der Roller respawnt, dass dieser stattdessen zerstört wird mit "DestroyVehicle".


    Wie scripte ich das?


    Es gibt leider kein "OnVehicleRespawn", sondern nur ein "OnVehicleSpawn" und ich will den ja nicht direkt nach der Erstellung zerstören.


    Mit freundlichen Grüßen


    Artus


    P.S.: Irgendwie mit einem Timer, welcher sich dann nur auf das bestimmte Fahrzeug ausübt?


    Wenn es verlassen wird, wird er gestartet für das Fahrzeug, wenn wieder eingestiegen wird, wird der Timer abgebrochen.
    Und ansonsten wird der Roller zerstört.


    Geht das?

  • Ja sicher, du hast ja die Callback's OnPlayerEcitVehicle und OnPlayerEnterVehicle. Musst du halt mit SetTimerEx und KillTimer arbeiten.
    Denk daran, den Timer nur für das bestimmte Fahrzeug (vehicleid!) zu starten. Sonst zerstört ein anderes Fahrzeug womöglich noch damit. ;)

  • Ich habe das jetzt so gemacht:


    Pastebin


    Mein Problem ist jetzt folgendes:


    Ich spawne einen Bus.


    Ich werde mit dem Buserstellungsbefehl direkt hineingesetzt.
    Ich steige aus und wenn ich wieder einsteigen will, wird der Bus einfach so entfernt, obwohl seine ModelID nicht im Code mit einbegriffen ist
    und somit nichts für ihn ausgeführt werden dürfte.

  • Müsste das nicht so hier aussehen? Ich kann dir das jetzt nur mit meinem Java Vorwissen versuchen... In Java müsste die if Abfrage mit 2 Bedingungen so aussehen:
    if(GetVehicleModel(vehicleid) == 462 || GetVehicleModel(vehicleid) == 583)
    Ich weiß nicht, ob das bei Pawno auch so geht.
    Und außerdem, probier' es mal so:
    public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    if(GetVehicleModel(vehicleid) == 462 || GetVehicleModel(vehicleid) == 583)
    {
    KillTimer(Fahrzeugtimer);
    }
    return 1;
    }

    public OnPlayerExitVehicle(playerid, vehicleid)
    {
    if(GetVehicleModel(vehicleid) == 462 || GetVehicleModel(vehicleid) == 583)
    {
    Fahrzeugtimer = SetTimerEx("Fahrzeugdestroy", 60000, false, "d", vehicleid);
    }
    return 1;
    }


    By the way: Juhu, 50 Beiträge! :D:love:

  • Glückwunsch ^^


    Och miste. Immer diese kleinen Sachen.


    Dürfte es sein. :)


    Packe kurz Sachen, wiel ich morgen in Urlaub fahre und teste es dann.


    Es geht für alle Fahrzeug, außer für den Roller und das andere Fahrzeug!


    Da werden die immer zerstört, wenn ich wieder einsteigen will. :(

    Einmal editiert, zuletzt von Artus ()