public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) { new pid; if(IsPlayerCop(playerid)) if(newkeys == KEY_CROUCH) { new Float: x, Float:y, Float:z; GetPlayerPos(pid, x,y,z); if(IsPlayerInRangeOfPoint(playerid, 2, x, y, z)) { Arrest(pid); return 1; } } else { SendClientMessage(playerid,COLOR_RED,"Not in range!"); } else { SendClientMessage(playerid,COLOR_RED,"Not a Cop!"); } return 1; } |
stock Arrest(playerid) { SetPlayerInterior(playerid,6); SetPlayerPos(playerid,264.5287,77.6026,1001.0391); return 1; } |
ocmd:arrest(playerid,params[]) { new pid; if(sscanf(params,"u", pid)) { return SendClientMessage(playerid,BLAU,"*USAGE:{f0e68c}/arrest [ID]"); } if(!IstSpielerInFraktion(playerid, 1)) return SendClientMessage(playerid,BLAU,"NOT IN LSPD!"); { if(pid == INVALID_PLAYER_ID) { return SendClientMessage(playerid,ROT,"[Server]: Player is not connected"); } if(loggedin[playerid] == 0) { SendClientMessage(playerid,COLOR_RED,"Not logged in!"); } { new Float: x, Float:y, Float:z; GetPlayerPos(pid, x,y,z); if(IsPlayerInRangeOfPoint(playerid, 2, x, y, z)) { SetPlayerInterior(pid,6); SetPlayerPos(pid,264.5287,77.6026,1001.0391); new string[128]; new cuff[128]; format(string, sizeof(string), "Officer %s arrested you ", GetName(playerid)); SendClientMessage(pid, BLAU,string); GameTextForPlayer(pid, "Cuffed", 5000, 6); format(cuff, sizeof(cuff), "You arrested %s ", GetName(pid)); SendClientMessage(playerid, BLAU, cuff); return 1; } } { SendClientMessage(playerid,BLAU,"Not in range of this Player!"); return 1; } } } |
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if(newkeys & KEY_CROUCH)
{
if(IsPlayerCop(playerid))
{
new Float: x, Float:y, Float:z, Float: distance, pid = INVALID_PLAYER_ID;
GetPlayerPos(pid, x, y, z);
for(new i, j = GetPlayerPoolSize(); i <= j; i++)
{
if(!IsPlayerConnected(i)) continue;
distance = GetPlayerDistanceFromPoint(i, x, y, z);
if(floatabs(distance) < 2.0)
{
pid = i;
break;
}
}
if(pid != INVALID_PLAYER_ID)
{
Arrest(pid);
// format a message maybe? and send it
}
else
{
SendClientMessage(playerid, color, "NOT IN RANGE");
}
}
}
return 1;
}
PHP код:
|
thx but Its still saying "not in range" when I stand next to the player
|
if(newkeys & KEY_CROUCH)
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
new pid;
if(IsPlayerCop(playerid))
if(newkeys == KEY_CROUCH)
{
new Float: x, Float:y, Float:z;
GetPlayerPos(pid, x,y,z);
for(new i=-1; i<MAX_PLAYERS, i++)
{
if(IsPlayerConnected(i) && IsPlayerInRangeOfPoint(i, 2, x, y, z))
{
Arrest(pid);
return 1;
}
}
}
else
{
SendClientMessage(playerid,COLOR_RED,"Not in range!");
}
else
{
SendClientMessage(playerid,COLOR_RED,"Not a Cop!");
}
return 1;
}
pawn Код:
|