05.08.2014, 16:11
Здравствуйте решил сделать простой спидометр но столкнулся с такой проблемой при проверки.
После того когда 1 игрок садиться в машину ему высвечивается текстдрайв. Все вроде нормально
но после того когда садить второй игрок в машину и он видет скорость машины 1 игрока а сам игрок стоит на месте.
Сам код:
После того когда 1 игрок садиться в машину ему высвечивается текстдрайв. Все вроде нормально
но после того когда садить второй игрок в машину и он видет скорость машины 1 игрока а сам игрок стоит на месте.
Сам код:
PHP код:
new Text: Speedometer;
new SpeedTimer[MAX_PLAYERS];
forward SpeedometerTime(playerid);
public OnPlayerStateChange(playerid, newstate, oldstate)
{
if(newstate == PLAYER_STATE_DRIVER)
{
TextDrawShowForPlayer(playerid, Speedometer);
SpeedTimer[playerid] = SetTimerEx("SpeedometerTime", 100, true, "d", playerid);
}
if(oldstate == PLAYER_STATE_DRIVER)
{
TextDrawHideForPlayer(playerid, Speedometer);
KillTimer(SpeedTimer[playerid]);
}
return 1;
}
stock SpeedVehicle(playerid)
{
new Float:ST[4];
if(IsPlayerInAnyVehicle(playerid))
GetVehicleVelocity(GetPlayerVehicleID(playerid),ST[0],ST[1],ST[2]);
else GetPlayerVelocity(playerid,ST[0],ST[1],ST[2]);
ST[3] = floatsqroot(floatpower(floatabs(ST[0]), 2.0) + floatpower(floatabs(ST[1]), 2.0) + floatpower(floatabs(ST[2]), 2.0)) * 100.3;// * 213.3; | 100.3
return floatround(ST[3]);
}
public SpeedometerTime(playerid)
{
new string[100];
format(string,sizeof(string),"KM/H: %d", SpeedVehicle(playerid));
TextDrawSetString(Speedometer, string);
return 1;
}