if(!strcmp(cmdtext, "/Respawn", true)) { for(new i = 1; i <= MAX_VEHICLES; i++) { SetVehicleToRespawn(i); return 1; } return 1; }
stock IsVehicleOccupied(vehicleid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(GetPlayerState(i) == PLAYER_STATE_DRIVER || GetPlayerState(i) == PLAYER_STATE_PASSENGER)
{
if(GetPlayerVehicleID(i) == vehicleid)
{
return 1;
}
}
}
return 0;
}
Aca te dejo esta funcion simple para detectar si el auto esta ocupado
pawn Код:
|
IsVehicleBusy(vehicleid)
{
for(new i; i<GetMaxPlayers(); i++)
if(IsPlayerConnected(i) && IsPlayerInVehicle(i, vehicleid))
return 1;
return 0;
}
Es casi lo mismo, nada mas que la tuya se puede decir que esta "mas simplificada", pero bien ^^
|
if(!strcmp(cmdtext, "/Respawn", true)) { new bool:EnVehiculo[MAX_PLAYERS]; for(new i; i <GetMaxPlayers(); i++) { if(IsPlayerInAnyVehicle(i)) { EnVehiculo[GetPlayerVehicleID(i)] = true; } } for(new v = 1; v <= MAX_VEHICLES; v++) { if(!EnVehiculo[v]) SetVehicleToRespawn(v); { GameTextForAll("~w~ Vehiculos Respawneado", 5000, 3); } } return 1; }
if(strcmp(cmd, "/respawnthiscar", true) == 0 || strcmp(cmd, "/rtc", true) == 0) // by LordMan
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pAdmin] < 2 )
{
SendClientMessage(playerid, COLOR_GRAD1, " you are not authorized to use that command!");
return 1;
}
if(IsPlayerInAnyVehicle(playerid))
{
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, 256, "AdmWarning: %s has just respawned vehicle id %d.",sendername,GetPlayerVehicleID(playerid));
ABroadCast(COLOR_YELLOW,string,1);
SetVehicleToRespawn(GetPlayerVehicleID(playerid));
RemovePlayerFromVehicle(playerid);
StopAudioStreamForPlayer(playerid);
SendClientMessage(playerid, COLOR_GREY, " Vehicle Respawned !");
}
}
return 1;
}