SA-MP Forums Archive
Speedometer shows only for 1 player - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: SA-MP Scripting and Plugins (https://sampforum.blast.hk/forumdisplay.php?fid=8)
+--- Forum: Scripting Help (https://sampforum.blast.hk/forumdisplay.php?fid=12)
+--- Thread: Speedometer shows only for 1 player (/showthread.php?tid=544438)



Speedometer shows only for 1 player - Stoyanov - 01.11.2014

I've just writed my own speedometer, but it shows for only 1 player. Here a whole code:

Code:
new Text:SPEEDOS[MAX_PLAYERS];

forward Speedometer(playerid);

public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
    SetTimer("Speedometer", 100, true);
    SPEEDOS[playerid] = TextDrawCreate(524.5,385," ");
	TextDrawShowForPlayer(playerid,SPEEDOS[playerid]);
    return 1;
}

///////////////////////////////////////////////////////////////////////////

public Speedometer(playerid)
{
	new vehicleid,Float:speed_x,Float:speed_y,Float:speed_z,Float:final_speed,speed_string[256],final_speed_int;
	vehicleid = GetPlayerVehicleID(playerid);
	if(vehicleid != 0)
	{
		GetVehicleVelocity(vehicleid,speed_x,speed_y,speed_z);
		final_speed = floatsqroot(((speed_x*speed_x)+(speed_y*speed_y))+(speed_z*speed_z))*136.666667; // 136.666667 = kmph  // 199,4166672 = mph
		final_speed_int = floatround(final_speed,floatround_round);
		format(speed_string,256,"Speed: %i",final_speed_int);
		TextDrawSetString(SPEEDOS[playerid], speed_string);
	}
	else
	{
		TextDrawSetString(SPEEDOS[playerid], " ");
	}
    return 1;
}
THANKS


Re: Speedometer shows only for 1 player - Anzipane - 01.11.2014

You need to use the SetTimerEx function instead of the SetTimer one.
pawn Code:
SetTimerEx("Speedometer", 100, true, "d", playerid);



Re: Speedometer shows only for 1 player - Diverse - 01.11.2014

pawn Code:
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
    SetTimerEx("Speedometer", 100, true, "i", playerid);
    SPEEDOS[playerid] = TextDrawCreate(524.5,385," ");
    TextDrawShowForPlayer(playerid,SPEEDOS[playerid]);
    return 1;
}



Re: Speedometer shows only for 1 player - Stoyanov - 01.11.2014

Same problem. Still shows it for 1 player.

Regards Dan.


Re: Speedometer shows only for 1 player - GwENiko - 01.11.2014

Define 1 player. Do you mean 1 player as out of all players driving a car? Or you want it to be shown to passenger and driver at same time?


Re: Speedometer shows only for 1 player - Stoyanov - 01.11.2014

When 2 players are drivers it shows the speedometer only for one of them!
I wanna all drivers to view it.

BTW: Sorry for my bad English. : (


Re: Speedometer shows only for 1 player - Pottus - 01.11.2014

You should be using player textdraws and only creating them in OnPlayerConnect()