How to use a command with out puttin the person`s id
#1

Hey again guys,i was just wondering how to attack someone within a certain range and not needing to put there Ids to attack,for eg. '/rob (without id)' and the if the person isn't near it should state 'person not close enough'.Ive constructed a basic '/slap' script,it lacks those functions, here it is :
------------------------------------------------------------------------------
dcmd_fs(playerid, params[])
{

new ID;
if(sscanf(params, "i", ID)) SendClientMessage(playerid, COLOR_WHITE, "USAGE: /fs [id]");
else if(IsPlayerConnected(ID) == 0) SendClientMessage(playerid, COLOR_RED, "Player is not connected");
else
{
new Float:health;
new Float, Float:y, Float:z, name[60], string[100];
GetPlayerPos(ID, x, y, z);
SetPlayerPos(ID, x, y, z+1);
GetPlayerHealth(ID,health);
SetPlayerHealth(ID, health-5);
format(string, 100, "You have slapped %s[%d]", name, ID);
SendClientMessage(playerid, COLOR_YELLOW, string);
}

return 1;
}
--------------------------------------------------------------------------------
your help will be greatly appreciated
Reply
#2

You can loop through all players and see which player is the closest to you. Obtain that players ID and then perform the necessary actions, using the obtained ID. Make sense?
Reply
#3

yea it make sense but where can i get teh obtain id?
Reply
#4

thats an example of getting the closest hospital i use in my script, the variables are initialized outside of the loop, therefore they still exist outside of the for loop.
Код:
new Float:x, Float:y, Float:z, chospital, Float:sdistance;
GetPlayerPos( playerid, x, y, z);
for (new i = 0; i < MAX_HOSPITALS; i++)
	{
		if (i == 0)
		{
			sdistance = DISTANCE(x, y, z, Hospitals[i][0], Hospitals[i][1], Hospitals[i][2]);
			chospital = i;
		}
		else if (DISTANCE(x, y, z, Hospitals[i][0], Hospitals[i][1], Hospitals[i][2]) < sdistance)
		{
			sdistance = DISTANCE(x, y, z, Hospitals[i][0], Hospitals[i][1], Hospitals[i][2]);
			chospital = i;
		}
	}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)