autos respawnen lassen

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
  • Guten Tag. Ich habe versucht, per Befehl Alle autos respawnen zu lassen, die nicht in benutzung sind. Doch irgentwie ist es etwas buggy und es werden alle Autos respawnt.


    Hier mein script:


    #define CAR_AMOUNT 100


    //unter OnPlayerCMDText
    if(strcmp(cmdtext, "/vspawn", true)==0)
    {
    if(SpielerInfo[playerid][alvl] >= 1)
    {
    SendClientMessageToAll(türkis,"In 60 Sekunden werden alle Autos respawnt!");
    SetTimer("vspawn1",50000,0);
    }
    }
    return 1;
    }


    public vspawn1()
    {
    SendClientMessageToAll(türkis,"In 10 Sekunden werden alle Autos respawnt!");
    SetTimer("vspawn2",10000,0);
    return 1;
    }


    public vspawn2()
    {
    for(new vehicleid = 0; vehicleid < CAR_AMOUNT; vehicleid ++)
    {
    for(new playerid = 0;playerid< MAX_PLAYERS; playerid ++)
    {
    if(!IsPlayerInVehicle(playerid,vehicleid))
    {
    SetVehicleToRespawn(vehicleid);
    }
    }
    }
    return 1;
    }


    könntet ihr mir da helfen?

  • Hmm, bei dir fragt er es so ab: Ist die Spieler ID 0 im Wagen ID 0, dann passiert nichts. Ist die Spieler ID 1 im Wagen ID 0, dann nichts, ansonsten respawnen. Ist die Spieler ID 2 im Wagen ID 0, dann nichts, ansonsten respawnen. Verstehst du es ? Ich denke, dass er es so abfragt. Bin mir nicht sicher, wie man das nun genau passend macht, aber probier es mal so:



    public vspawn2()
    {
    for(new v = 0; v<CAR_AMOUNT; v++)
    {
    if(!IsAnyInVehicle(v))
    {
    SetVehicleToRespawn(v);
    }
    }
    return 1;
    }


    stock IsAnyInVehicle(vehicleid)
    {
    for(new i = 0; i<MAX_PLAYERS; i++)
    {
    if(IsPlayerInVehicle(i, vehicleid);
    {
    return true;
    }
    }
    return false;
    }