Sziasztok.
Olyan problémám van , hogy ha a kocsikat restartolom mindegyik kocsi megjavul, és azt szeretném, hogy egyik kocsi se javuljon meg.
if (strcmp(cmd, \"/kocsiresi\", true) == 0)
{
if(IsPlayerConnected(playerid))
{
{
if(Admin(playerid, 3))
{
for(new vehicleid = 0; vehicleid <= 500; vehicleid++)
{
SetVehicleToRespawn(vehicleid);
engineOn[vehicleid]=false;
format(string, sizeof(string), \"RLR-%d\", vehicleid);
}
}
new nev[32];
GetPlayerName(playerid, nev, sizeof(nev));
new h,mi,s,y,m,d;
getdate(y,m,d);
gettime(h,mi,s);
format(stringx,sizeof(stringx), \"[%d/%d/%d][%d:%d:%d] %s helyretette az összes járművet.\",y,m,d,h,mi,s,nev);
LoOoG(stringx);
SendClientMessageToAll(COLOR_BLUE,\"Összes jármű respawnolva.!\");
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), \"Admin %s respawnolta az összes járművet!\", sendername);
SendAdminMessage(COLOR_ADMIN,string);
}
}
return 1;
}
Vagy esetleg megoldod, úgy hogy nem a SetVehicleToRespawn-t használod, hanem például amikor leparkolod a kocsit, akkor lemented vele a respawn poziciót is, és amikor, használod a \"/kocsiresi\" parancsot akkor SetVehiclePos és helyükre rakod.
enum CarData
{
Float:car_respawn_pos[4];
}
new cInfo[MAX_VEHICLES][CarData];
stock ParkVehicle(vehicleid)
{
GetVehiclePos(vehicleid,cInfo[vehicleid][car_respawn_pos][0],cInfo[vehicleid][car_respawn_pos][1],cInfo[vehicleid][car_respawn_pos][2]);
GetVehicleZAngle(vehicleid,cInfo[vehicleid][car_respawn_pos][3]);
}
CMD:kocsiresi(playerid)
{
for(new i = 0; i < MAX_VEHICLES; i++)
{
SetVehiclePos(i,cInfo[car_respawn_pos][0],cInfo[car_respawn_pos][1],cInfo[car_respawn_pos][2]);
SetVehicleZAngle(i,cInfo[car_respawn_pos][3]);
}
return 1;
}