Sanya_Scalletos 0 Опубликовано 18 мая, 2019 cmd:spawncars(playerid, params[]) { if(PI[playerid][pAdmin] < ADM_MODER) return 1; else if(AdminLogged[playerid] == false) return SendClientMessage(playerid, COLOR_GREY, YouAreNotLoggedInAsAdmin); new radius; if(sscanf(params, "d", radius)) return SendClientMessage(playerid, COLOR_WHITE, ""cPS"{9ACD32}Ââåäèòå: {FFFFFF} /spawncars [ðàäèóñ] (ðàäèóñ îò 1 äî 80)"); else if(!(radius >= -100 && radius <= 0x50)) return SendClientMessage(playerid, COLOR_GREY, ""cER"Íåâåðíîå çíà÷åíèå ðàäèóñà"); if(radius == -1) { for(new i = 1; i < MAX_VEHICLES; i++) { if(!IsVehicleOccupied(i)) SetVehicleToRespawn(i); } new string[128]; format(string, sizeof(string), ""cAD"%s çàðåñïàâíèë âåñü òðàíñïîðò íà ñåðâåðå", GetName(playerid)); SendAdminMessage(COLOR_GREY, string); } else { new Float:x, Float:y, Float:z; for(new i = 1; i < MAX_VEHICLES; i++) { GetPlayerPos(playerid, x, y, z); if(IsVehicleInRangeOfPoint(i, radius, x, y, z)) SetVehicleToRespawn(i); } new string[128]; format(string, sizeof(string), ""cAD"%s çàðåñïàâíèë âåñü òðàíñïîðò â ðàäèóñå %d ì", GetName(playerid), radius); SendAdminMessage(COLOR_GREY, string); } return 1; } Как сделать так, чтобы когда делаешь респавн не спавнились машины в которых сидят люди. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
16Shadows 101 Опубликовано 18 мая, 2019 Можно либо перебирать всех игроков и проверять, не сидят ли они в данной машине (тогда число итераций может составить до 2000*500=1000000). Также можно создать переменную, при входе игрока в машину присваивать ей 1, при выходе - 0. И проверять эту переменную при итерациях в этой команде. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты