Police Radar
#2

You could do something like that pretty simple.
There are obviously more sophisticated ways.

ClosestPlayerVehicleSpeed

playerid,
Floatpeed returns speed,
otherplayer(optional) if you want to specify a player

returns player that it got speed for or -1 for no player

pawn Код:
stock ClosestPlayerVehicleSpeed(playerid, &Float:speed, otherplayer=-1)
{
  new Float:X, Float:Y, Float:Z;
    GetPlayerPos(playerid, X, Y, Z);
    new closest = -1, Float:dist = 200.0;
    if(closest == otherplayer)
    {
      for(new pid=0; pid<GetMaxPlayers(); pid++)
      {
            if(!IsPlayerConnected(pid) || GetPlayerState != PLAYER_STATE_DRIVER || !IsPlayerInRangeOfPoint(pid,dist-1.0, X, Y, Z) || pid == playerid) continue;
            //here we know we have someone closer
            closese = pid;
            new Float:pX, Float:Py, Float:Pz;
            GetPlayerPos(pid, pX, Py, Pz);
            distance = floatsqroot(floatpower(floatabs(pX-X),2)+floatpower(floatabs(pY-Y),2)+floatpower(floatabs(pZ-z),2));
      }
    }else if(IsPlayerConnected(pid) && GetPlayerState == PLAYER_STATE_DRIVER && IsPlayerInRangeOfPoint(otherplayer, dist, X, Y, Z) closest = otherplayer;
    speed = GetVehicleVelocity(GetPlayerVehicleID(closest));
    return closest;
}
Reply


Messages In This Thread
Police Radar - by br0adyb0ii - 05.02.2010, 03:57
Re: Police Radar - by mansonh - 05.02.2010, 04:46
Re: Police Radar - by UltraKiller - 05.05.2010, 17:55

Forum Jump:


Users browsing this thread: 2 Guest(s)