Quero que vocкs me ajudem que quando eu usar o comando, todos os veнculos a nгo ser os de facзхes mudem de virtual world, jб tem o comando de estacionar que faz ele mudar, mas quero que o comando administrativo faзa isso tambйm.
Код:
CMD:respawncars(playerid, params[])
{
if (PlayerData[playerid][pAdmin] < 2)
return SendErrorMessage(playerid, "Vocк nгo tem permissгo para usar esse comando.");
new carro;
new count;
for (new i = 1; i != MAX_VEHICLES; i ++)
{
if (IsValidVehicle(i) && GetVehicleDriver(i) == INVALID_PLAYER_ID)
{
RespawnVehicle(i);
//SetVehicleVirtualWorld(i, i+1);
//CarData[i][carSpawn] = 0;
count++;
}
}
if (!count)
return SendErrorMessage(playerid, "Nгo hб veнculos para respawn.");
SendServerMessage(playerid, "Vocк respawnou %d veнculos desocupados.", count);
return 1;
}
Код:
CMD:estacionar(playerid, params[])
{
new
carid = GetPlayerVehicleID(playerid);
if (!carid)
return SendErrorMessage(playerid, "Vocк precisa estar dentro do seu veнculo.");
if (IsVehicleImpounded(carid))
return SendErrorMessage(playerid, "Este veнculo estб preso, vocк nгo pode usб-lo.");
if ((carid = Car_GetID(carid)) != -1 && Car_IsOwner(playerid, carid))
{
if (GetPlayerState(playerid) != PLAYER_STATE_DRIVER)
return SendErrorMessage(playerid, "Vocк deve ser o motorista!");
static
g_arrSeatData[10] = {INVALID_PLAYER_ID, ...},
g_arrDamage[4],
Float:health,
seatid;
for (new i = 0; i < 14; i ++) {
CarData[carid][carMods][i] = GetVehicleComponentInSlot(CarData[carid][carVehicle], i);
}
GetVehicleDamageStatus(CarData[carid][carVehicle], g_arrDamage[0], g_arrDamage[1], g_arrDamage[2], g_arrDamage[3]);
GetVehicleHealth(CarData[carid][carVehicle], health);
foreach (new i : Player) if (IsPlayerInVehicle(i, CarData[carid][carVehicle])) {
seatid = GetPlayerVehicleSeat(i);
g_arrSeatData[seatid] = i;
}
GetVehiclePos(CarData[carid][carVehicle], CarData[carid][carPos][0], CarData[carid][carPos][1], CarData[carid][carPos][2]);
GetVehicleZAngle(CarData[carid][carVehicle], CarData[carid][carPos][3]);
Car_Spawn(carid);
Car_Save(carid);
SetVehicleToRespawn(GetPlayerVehicleID(playerid));
SetVehicleVirtualWorld(GetPlayerVehicleID(playerid), GetPlayerVehicleID(playerid)+1);
//SetVehicleVirtualWorld(GetPlayerVehicleID(playerid), 123);
CarData[GetPlayerVehicleID(playerid)][carSpawn] = 0;
SendServerMessage(playerid, "Seu %s foi estacionado com sucesso!", ReturnVehicleName(CarData[carid][carVehicle]));
UpdateVehicleDamageStatus(CarData[carid][carVehicle], g_arrDamage[0], g_arrDamage[1], g_arrDamage[2], g_arrDamage[3]);
SetVehicleHealth(CarData[carid][carVehicle], health);
for (new i = 0; i < sizeof(g_arrSeatData); i ++) if (g_arrSeatData[i] != INVALID_PLAYER_ID) {
PutPlayerInVehicle(g_arrSeatData[i], CarData[carid][carVehicle], i);
g_arrSeatData[i] = INVALID_PLAYER_ID;
}
}
else SendErrorMessage(playerid, "Vocк nгo estб em nenhum veнculo que possa estacionar");
return 1;
}