Problems in Speedometer Textdraw
#1

I have created a speedometer and I want that TextDraw to show if a player is driving a vehicle.

Everything works fine until the second player drives another car. I see two TextDraws when the other player drives his car. I have spent hours on this and need urgent help.

Speedometer Function
PHP код:
public Speedometer(playerid)
{
    new 
vehicleid, Float:health;
    new 
engine, lights, alarm, doors, bonnet, boot, objective;
    new 
fstring[32], string[512], string2[512];
    for(new 
i = 0; i < MAX_PLAYERS; i++)
    {
        if(
IsPlayerConnected(i) && IsPlayerInAnyVehicle(i))
        {
            
vehicleid = GetPlayerVehicleID(i);
            
GetVehicleHealth(vehicleid, health);
            
GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective);
            
            
format(fstring, sizeof(fstring),"Speed: %d Km/h", GetPlayerSpeed(i, true));
            
strcat(string, fstring, sizeof(string));
            
strcat(string, "~n~Fuel: ", sizeof(string));
            
format(string2, sizeof(string2), "%.0f%%", Fuel[vehicleid]);
            
            if(
Fuel[vehicleid] > 100)
                
strins(fstring, "~r~", 10, sizeof(fstring));
            else if(
Fuel[vehicleid] < 0.0)
                
strins(fstring, "~r~", 0, sizeof(fstring));
            else
                
strins(fstring, "~r~", floatround(Fuel[vehicleid]/10.0), sizeof(fstring));
            
strcat(string, string2, sizeof(string));
            
            
strcat(string, "~n~Status: ", sizeof(string));
            if(
doors == 1)
                
strcat(string, "~r~Locked", sizeof(string));
            else
                
strcat(string, "~g~Unlocked", sizeof(string));
            
            
TextDrawSetString(SpeedoText[i], string);
        }
    }
} 
OnPlayerEnterVehicle Function
PHP код:
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
    if(!
ispassenger)
    {
        
SpeedoText[playerid] = TextDrawCreate(520.0, 180.0," ");
        
TextDrawAlignment(SpeedoText[playerid], 1);
        
TextDrawFont(SpeedoText[playerid], 1);
        
TextDrawLetterSize(SpeedoText[playerid], 0.250, 0.900);
        
TextDrawSetShadow(SpeedoText[playerid], 1);
        
TextDrawUseBox(SpeedoText[playerid], 0);
        
TextDrawBoxColor(SpeedoText[playerid], 0x99);
        
TextDrawSetOutline(SpeedoText[playerid], 1);
        
TextDrawTextSize(SpeedoText[playerid], 600.000, 0.000);
        
TextDrawShowForPlayer(playerid, SpeedoText[playerid]);
    }
    
    return 
1;
} 
Reply
#2

Do you destroy/hide the textdraws when the player leaves the vehicle?
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)