15.02.2018, 11:13
Quote:
So it should look somewhere like that?
Код:
CMD:respawn(playerid, params[]) { if(connected[playerid] == true) return GameTextForPlayer(playerid, "~r~Spawn First", 5000, 5); if(GetPVarInt(playerid,"CMDABUSE")>GetTickCount())return SendClientMessage(playerid,-1,"{c3c3c3}(INFO) You need to wait 5 seconds before using /respawn again!"); Killed[playerid] = 0; SetPVarInt(playerid,"CMDABUSE",GetTickCount()+5000); // anti abuse measurements new Float:x, Float:y, Float:z; GetPlayerPos(playerid, x, y, z);//get pos of the player doing the cmd for(new i, j = GetPlayerPoolSize(); i <= j; i++)//loop through all players { if(IsPlayerInRangeOfPoint(i, 10.0, x, y, z) && i != playerid) { SpawnPlayer(i);//spawn him } } new interiorID = GetPlayerInterior(playerid); new Float:health; GetPlayerHealth(playerid,health); if(interiorID == 10) return SendClientMessage(playerid, -1, "{c3c3c3}You can't use /respawn while in lobby, type /back first!"); if(health > 90) { SpawnPlayer(playerid); SendClientMessage(playerid, -1, "{c3c3c3}(INFO) You have respawned!"); PlayerTotalKills[playerid] = 0; Killed[playerid] = 0; } else { SendClientMessage(playerid, -1, "{c3c3c3}(INFO) Atleast 90hp is required in order to respawn."); } return 1; } |
also when u find a position of nearby players (with looping) you must set a player's position at nearby player by adding and removing X,Y positions randomly, after that, you have to find Z cord and set player's position at these randomly generated X,Y,Z.