Brauche immer noch Hilfe :-(

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
  • Abend.



    ich habe mir einen Befehl gescriptet das wenn ein admin /rac macht das alle Fahrzeuge wo kein Spieler driene sitzt respawnt wird.. nur irgend wie klappt das nicht immer manchmal gehts manchmal nicht.



    Hier der Befehl:



    ocmd:rac(playerid,params[])
    {
    if(!isPlayerAnAdmin(playerid,2000))return SendClientMessage(playerid,ROT,"Du bist Kein Admin!.");
    new string[128];
    format(string,sizeof(string),"INFO: Admin %s Respawnt alle Fahrzeuge auf Dem Server.",SpielerName(playerid));
    SendClientMessageToAll(ORANGE,string);
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    for(new v = 0; v < MAX_VEHICLES; v++)
    {
    if(IsPlayerInVehicle(i,v)) SetVehicleToRespawn(v);
    }
    }
    return 1;
    }




    Also ingrunde genommen will ich nur das Alle Fahrzeuge auf dem Server Respawnt werden, Aber die jenigen die in einen Fahrzeug drine sitzen den ihr Fahrzeug sollte nicht respawnt werden alle anderen fahrzeuge wo nimmand driene Sitzt sollte respawnt werden.



    Ich hoffe ihr könnt mir weiter helfen :)





    MFG Equ

    Einmal editiert, zuletzt von Equ ()

  • Versuch es mal so:


    for(new i = 0;i < MAX_VEHICLES; i++)
    {
    if(IsAnyBodyInVehicle(i)) continue; // Überprüft, ob jemand im Fahrzeug ist. Wenn jemand im Fahrzeug ist überspringt die Schleife das Fahzeug.
    SetVehicleToRespawn(i); // Falls niemand im Fahrzeug ist, wird das Fahrzeug respawnt.


    }


    Hier der Stock dazu:


    stock IsAnyBodyInVehicle(vehicleid)
    {
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(GetPlayerVehicleID(i) == vehicleid) return 1;
    }
    return 0;
    }


    Edit: Erklärung

    Einmal editiert, zuletzt von Hefti ()

  • Funktzioniert ! aber ich habe mal eine Frage ich will diese ganzen Fahrzeuge hier



    Fahrzeuge:


    stadtcar[0]=SetVehicleNumberPlate(CreateVehicle(462,1645.90002441,-1907.30004883,13.19999981,10.00000000,1,1,0),"Stadt"); //Faggio
    stadtcar[1]=SetVehicleNumberPlate(CreateVehicle(462,1644.19995117,-1907.69995117,13.19999981,9.99755859,1,1,0),"Stadt"); //Faggio
    stadtcar[2]=SetVehicleNumberPlate(CreateVehicle(462,1642.59997559,-1908.09997559,13.19999981,9.99755859,1,1,0),"Stadt"); //Faggio
    stadtcar[3]=SetVehicleNumberPlate(CreateVehicle(462,1640.90002441,-1908.50000000,13.19999981,9.99755859,1,1,0),"Stadt"); //Faggio
    stadtcar[4]=SetVehicleNumberPlate(CreateVehicle(462,1639.30004883,-1908.90002441,13.19999981,9.99755859,1,1,0),"Stadt"); //Faggio
    stadtcar[5]=SetVehicleNumberPlate(CreateVehicle(462,1637.50000000,-1909.40002441,13.19999981,9.99755859,1,1,0),"Stadt"); //Faggio
    stadtcar[6]=SetVehicleNumberPlate(CreateVehicle(462,1635.30004883,-1910.00000000,13.19999981,9.99755859,1,1,0),"Stadt"); //Faggio
    stadtcar[7]=SetVehicleNumberPlate(CreateVehicle(462,1633.19995117,-1910.30004883,13.19999981,9.99755859,1,1,0),"Stadt"); //Faggio
    stadtcar[8]=SetVehicleNumberPlate(CreateVehicle(462,1631.19995117,-1910.50000000,13.19999981,347.99755859,1,1,0),"Stadt"); //Faggio
    stadtcar[9]=SetVehicleNumberPlate(CreateVehicle(462,1629.69995117,-1908.80004883,13.19999981,275.99743652,1,1,0),"Stadt");//Faggio
    stadtcar[10]=SetVehicleNumberPlate(CreateVehicle(462,1629.69995117,-1907.00000000,13.19999981,275.99304199,1,1,0),"Stadt"); //Faggio
    stadtcar[11]=SetVehicleNumberPlate(CreateVehicle(462,1629.59997559,-1905.40002441,13.19999981,275.99304199,1,1,0),"Stadt"); //Faggio
    stadtcar[12]=SetVehicleNumberPlate(CreateVehicle(462,1629.90002441,-1903.59997559,13.19999981,275.99304199,1,1,0),"Stadt"); //Faggio
    stadtcar[13]=SetVehicleNumberPlate(CreateVehicle(462,1630.09997559,-1902.09997559,13.19999981,275.99304199,1,1,0),"Stadt"); //Faggio
    stadtcar[14]=SetVehicleNumberPlate(CreateVehicle(462,1630.19995117,-1900.59997559,13.19999981,275.99304199,1,1,0),"Stadt"); //Faggio
    stadtcar[15]=SetVehicleNumberPlate(CreateVehicle(462,1630.09997559,-1898.90002441,13.19999981,275.99304199,1,1,0),"Stadt"); //Faggio
    stadtcar[16]=SetVehicleNumberPlate(CreateVehicle(462,1630.40002441,-1897.30004883,13.19999981,265.99304199,1,1,0),"Stadt"); //Faggio



    Also die alle sollen mit den befehl /respawnstadt z.B respawnt werden also genau Das selbe nur das diese Cars nur respawnt werden

  • Das müsste fast genauso, du musst eigentlich nur ein wenig an der Schleife verändern.
    So könnte das ungefähr aussehen:


    for(new i=0; i<sizeof(stadtcar);i++)
    {
    if(GetPlayerVehicleID(playerid)==stadtcar[i])
    {
    if(IsAnyBodyInVehicle(i)) continue;
    SetVehicleToRespawn(i);
    }
    }

  • Passiert irgend wie nichts .. ich gebe ein /respawnstadt dann kommt nur die Message aber mehr auch nicht ..



    ocmd:respawnstadt(playerid,params[])
    {
    if(!isPlayerAnAdmin(playerid,2000))return SendClientMessage(playerid,ROT,"Du bist Kein Admin!.");
    new string[128];
    format(string,sizeof(string),"INFO: Admin %s Respawnt alle Fahrzeuge auf Dem Server.",SpielerName(playerid));
    SendClientMessageToAll(ORANGE,string);
    for(new i=0; i<sizeof(stadtcar);i++)
    {
    if(GetPlayerVehicleID(playerid)==stadtcar[i])
    {
    if(IsAnyBodyInVehicle(i)) continue;
    SetVehicleToRespawn(i);
    }
    }
    return 1;
    }




    EDIT: Ich brauche immer noch Hilfe :(

    Einmal editiert, zuletzt von Equ ()