08.07.2009, 17:07
You can use IsPlayerInRange:
>
pawn Код:
stock IsPlayerInRange(playerid, Float:X, Float:Y, Float:Z, Float:Range, Float:ZRange=4.0 )
{
new Float:pX,Float:pY,Float:pZ;
GetPlayerPos( playerid, pX, pY, pZ );
if ( floatsqroot( floatpower( floatabs( floatsub( X, pX ) ),2 ) + floatpower ( floatabs (floatsub( Y, pY ) ),2 ) ) < Range && ( pZ < Z + ZRange ) && ( pZ > Z - ZRange ) )
return 1;
else
return 0;
}
pawn Код:
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if (newkeys & KEY_ACTION && IsPlayerInRange(playerid, x, y, z, 5.0)) // replace, x, y, z with the coordinates of that pickup called entradatorre
{
SetPlayerPos(playerid,1570.6917,-1380.5925,326.2183);
}
else if (newkeys & KEY_ACTION && IsPlayerInRange(playerid, x, y, z, 5.0)) // replace, x, y, z with the coordinates of that pickup called saidatorre
{
SetPlayerPos(playerid,1590.8424,-1350.7782,16.4844);
}
return 1;
}