Respawn all unused vehicles?
#1

Heey all,

How can i make a command or something to respawn all unused vehicles?

Thanks Admigo
Reply
#2

pawn Код:
stock IsVehicleOccupied(vehicleid) // Returns 1 if there is anyone in the vehicle
{
    foreach(Player,i)
    {
        if(IsPlayerInAnyVehicle(i))
        {
            if(GetPlayerVehicleID(i)==vehicleid)
            {
                return 1;
            }
            else
            {
                return 0;
            }
        }
    }
}
pawn Код:
CMD:respawncars(playerid, params[])
{
    for(new i=0; i<MAX_VEHICLES; i++)
    {
        if(!IsVehicleOccupied(i))
        {
            DestroyVehicle(i);
        }
    }
    return 1;
}
Reply
#3

That would be the faster solution with a little bit of memory usage

pawn Код:
CMD:respawncars(playerid, unused[]) {
    #pragma unused unused

    new
        i,
        bool: vUsed[MAX_VEHICLES + 1]
    ;
    foreachex(Player, i) {
        vUsed[GetPlayerVehicleID(i)] = true;
    }
    for(i = 1; i <= MAX_VEHICLES; ++i) {
        if(!vUsed[i]) {
            DestroyVehicle(i);
        }
    }
    return true;
}
Reply
#4

Quote:
Originally Posted by Nero_3D
Посмотреть сообщение
That would be the faster solution with a little bit of memory usage

pawn Код:
CMD:respawncars(playerid, unused[]) {
    #pragma unused unused

    new
        i,
        bool: vUsed[MAX_VEHICLES + 1]
    ;
    foreachex(Player, i) {
        vUsed[GetPlayerVehicleID(i)] = true;
    }
    for(i = 1; i <= MAX_VEHICLES; ++i) {
        if(!vUsed[i]) {
            DestroyVehicle(i);
        }
    }
    return true;
}
#pragma unused unused is not required with zcmd.
Reply
#5

Quote:
Originally Posted by VincentDunn
Посмотреть сообщение
pawn Код:
stock IsVehicleOccupied(vehicleid) // Returns 1 if there is anyone in the vehicle
{
    foreach(Player,i)
    {
        if(IsPlayerInAnyVehicle(i))
        {
            if(GetPlayerVehicleID(i)==vehicleid)
            {
                return 1;
            }
            else
            {
                return 0;
            }
        }
    }
}
pawn Код:
CMD:respawncars(playerid, params[])
{
    for(new i=0; i<MAX_VEHICLES; i++)
    {
        if(!IsVehicleOccupied(i))
        {
            DestroyVehicle(i);
        }
    }
    return 1;
}
IsVehicleOccupied(vehicleid) should return a value.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)