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.


