05.06.2009, 14:59
Код:
public SpeedOMeter() { new Float:distance, Speed, distance2; foreachEx(i) { if(PlayerInfo[i][bSpeedo]) { GetPlayerPos(i,PlayerInfo[i][fnX],PlayerInfo[i][fnY],PlayerInfo[i][fnZ]); if(IsPlayerInAnyVehicle(i)) { PlayerInfo[i][foX]-=PlayerInfo[i][fnX]; PlayerInfo[i][foY]-=PlayerInfo[i][fnY]; PlayerInfo[i][foZ]-=PlayerInfo[i][fnZ]; distance=(PlayerInfo[i][foX] * PlayerInfo[i][foX]) + (PlayerInfo[i][foY] * PlayerInfo[i][foY]) + (PlayerInfo[i][foZ] * PlayerInfo[i][foZ]); distance2=floatround(floatpower(distance,0.5)*3600); #if defined DISPLAY_MODE_TD switch(PlayerInfo[i][speedo_type]) { case KMH: { Speed=floatround(distance2/1000); format(DisplayString,sizeof(DisplayString),"%d Kmh",Speed); } case MPH: { Speed=floatround(distance2/1609); format(DisplayString,sizeof(DisplayString),"%d Mph",Speed); } } TextDrawSetString(PlayerInfo[i][PlayerDraw],DisplayString); #else switch(PlayerInfo[i][speedo_type]) { case KMH: { Speed=floatround(distance2/1000);//KMH format(DisplayString,sizeof(DisplayString),"~n~ ~n~ ~n~ ~n~ ~n~ ~n~ ~n~ ~n~ ~n~ ~n~%d Kmh",Speed); } case MPH: { Speed=floatround(distance2/1609); //MPH format(DisplayString,sizeof(DisplayString),"~n~ ~n~ ~n~ ~n~ ~n~ ~n~ ~n~ ~n~ ~n~ ~n~%d Mph",Speed); } } GameTextForPlayer(i,DisplayString,gSpeedOMeterUpdate_GT,3); #endif } PlayerInfo[i][foX]=PlayerInfo[i][fnX]; PlayerInfo[i][foY]=PlayerInfo[i][fnY]; PlayerInfo[i][foZ]=PlayerInfo[i][fnZ]; } } return 1; } public SpeedName() { new Float:distance, Speed, distance2; foreachEx(i) { if(PlayerInfo[i][bSpeedo]) { GetPlayerPos(i,PlayerInfo[i][fnX],PlayerInfo[i][fnY],PlayerInfo[i][fnZ]); if(IsPlayerInAnyVehicle(i)) { sCurrentZoneName=GetXYZZoneName(PlayerInfo[i][fnX],PlayerInfo[i][fnY],PlayerInfo[i][fnZ]); PlayerInfo[i][foX]-=PlayerInfo[i][fnX]; PlayerInfo[i][foY]-=PlayerInfo[i][fnY]; PlayerInfo[i][foZ]-=PlayerInfo[i][fnZ]; distance=(PlayerInfo[i][foX] * PlayerInfo[i][foX]) + (PlayerInfo[i][foY] * PlayerInfo[i][foY]) + (PlayerInfo[i][foZ] * PlayerInfo[i][foZ]); distance2=floatround(floatpower(distance,0.5)*3600); #if defined DISPLAY_MODE_TD switch(PlayerInfo[i][speedo_type]) { case KMH: { Speed=floatround(distance2/1000); //KMH format(DisplayString,sizeof(DisplayString),"%s ~n~ %d Kmh",sCurrentZoneName,Speed); } case MPH: { Speed=floatround(distance2/1609);// MPH format(DisplayString,sizeof(DisplayString),"%s ~n~ %d Mph",sCurrentZoneName,Speed); } } TextDrawSetString(PlayerInfo[i][PlayerDraw],DisplayString); #else switch(PlayerInfo[i][speedo_type]) { case KMH: { Speed=floatround(distance2/1000); //KMH format(DisplayString,sizeof(DisplayString),"~n~ ~n~ ~n~ ~n~ ~n~ ~n~ ~n~ ~n~ ~n~ %s ~n~ %d Kmh",sCurrentZoneName,Speed); } case MPH: { Speed=floatround(distance2/1609);// MPH format(DisplayString,sizeof(DisplayString),"~n~ ~n~ ~n~ ~n~ ~n~ ~n~ ~n~ ~n~ ~n~ %s ~n~ %d Mph",sCurrentZoneName,Speed); } } GameTextForPlayer(i,DisplayString,gSpeedNameUpdate_GT,3); #endif } PlayerInfo[i][foX]=PlayerInfo[i][fnX]; PlayerInfo[i][foY]=PlayerInfo[i][fnY]; PlayerInfo[i][foZ]=PlayerInfo[i][fnZ]; } } return 1; }