Portal SAMP
[Ajuda] como deletar veiculos vazios - Versão de Impressão

+- Portal SAMP (https://portalsamp.com)
+-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5)
+--- Fórum: Área de suporte (https://portalsamp.com/forumdisplay.php?fid=6)
+--- Tópico: [Ajuda] como deletar veiculos vazios (/showthread.php?tid=2542)



como deletar veiculos vazios - spongebob - 03/07/2022

sei como deleta se estiver dentro do veiculo mais e pra deletar todos que estiverem vazios ? 
essa é a parte que ta no comando de criar o veiculo :
Código PHP:
DestroyVehicle(VeiculoID[playerid]);
    
VeiculoID[playerid] = -1;
    
VeiculoID[playerid] = CreateVehicle(vehiclexyza+90, -1, -1, -1);
    
LinkVehicleToInterior(VeiculoID[playerid], GetPlayerInterior(playerid));
    
SetVehicleVirtualWorld(VeiculoID[playerid], GetPlayerVirtualWorld(playerid));
    criado[playerid] = 1



RE: como deletar veiculos vazios - Seck - 03/07/2022

(03/07/2022 12:09)spongebob Escreveu: sei como deleta se estiver dentro do veiculo mais e pra deletar todos que estiverem vazios ? 
essa é a parte que ta no comando de criar o veiculo :
Código PHP:
DestroyVehicle(VeiculoID[playerid]);
    
VeiculoID[playerid] = -1;
    
VeiculoID[playerid] = CreateVehicle(vehiclexyza+90, -1, -1, -1);
    
LinkVehicleToInterior(VeiculoID[playerid], GetPlayerInterior(playerid));
    
SetVehicleVirtualWorld(VeiculoID[playerid], GetPlayerVirtualWorld(playerid));
    criado[playerid] = 1

Eu uso esse no meu GM
Código:
stock ResetarCarros(playerid)
{
    new string[128];
    GetPlayerName(playerid, string, MAX_PLAYER_NAME+1);
    format(string, sizeof(string), "AVISO: O Administrador %s respawnou todos os veiculos!", string);
    SendClientMessageToAll(0xF23C3CFF, string);
    new bool:inVeh;
    for( new i = 0; i < MAX_VEHICLES; i++ )
    {
        inVeh = false;
        for( new j = 0; j < MAX_PLAYERS; j++ )
        {
            if(IsPlayerInVehicle( j, i ))
            {
                inVeh = true;
            }
        }
        if(!inVeh) SetVehicleToRespawn(i);
    }
    return true;
}
No lugar do SetVehicleToRespawn você pode colocar pra destruir o veiculo 


RE: como deletar veiculos vazios - White_Blue - 03/07/2022

Código PHP:
stock DestroyAllEmptyVehicles() {
 for(new 
0MAX_VEHICLESi++) {
 if(!
IsVehicleOccupied(i)) {
 
DestroyVehicle(i);  
 
}
  }
 return 
1;
}

stock IsVehicleOccupied(vehicleid)
{
for(new 
0MAX_PLAYERSi++)
{
if(
GetPlayerState(i) == PLAYER_STATE_DRIVER || GetPlayerState(i) == PLAYER_STATE_PASSENGER)
{
if(
GetPlayerVehicleID(i) == vehicleid) return 1;
}
  }
return 
0;
}

CMD:dvu(playerid) {
 new 
str[128], pname[MAX_PLAYER_NAME];
 if(!
IsPlayerAdmin(playerid)) return 1// Altere para seu sistema de admin
 
GetPlayerName(playeridpnameMAX_PLAYER_NAME);
 
DestroyAllEmptyVehicles();
 
format(strsizeof(str), "O(a) administrador(a) %s[%d] destruiu todos os veículos desocupados."pnameplayerid);
 
SendClientMessageToAll(0x00FFFFAAstr);
 return 
1;




RE: como deletar veiculos vazios - spongebob - 03/07/2022

perfeito vlw galera.