2021-05-19 18:09:48 +02:00
|
|
|
#include "backend/looped/looped.hpp"
|
|
|
|
#include "natives.hpp"
|
2022-07-14 22:16:30 +08:00
|
|
|
#include "util/vehicle.hpp"
|
2021-05-19 18:09:48 +02:00
|
|
|
|
|
|
|
namespace big
|
|
|
|
{
|
|
|
|
void looped::vehicle_speedo_meter()
|
|
|
|
{
|
2023-03-01 21:27:15 +00:00
|
|
|
if (!g.vehicle.speedo_meter.enabled || self::veh == 0 || HUD::IS_PAUSE_MENU_ACTIVE() || HUD::IS_WARNING_MESSAGE_ACTIVE() || CAM::IS_SCREEN_FADED_OUT() || CAM::IS_SCREEN_FADING_OUT() || CAM::IS_SCREEN_FADING_IN())
|
|
|
|
{
|
2022-07-14 22:16:30 +08:00
|
|
|
return;
|
|
|
|
}
|
2021-05-19 18:09:48 +02:00
|
|
|
|
|
|
|
|
|
|
|
char speed_type[16], speed[16];
|
2022-07-14 22:16:30 +08:00
|
|
|
int char_width = 3;
|
|
|
|
|
2023-03-01 21:27:15 +00:00
|
|
|
float veh_speed = vehicle::mps_to_speed(ENTITY::GET_ENTITY_SPEED(self::veh), g.vehicle.speed_unit);
|
2022-07-14 22:16:30 +08:00
|
|
|
|
2022-12-18 23:15:52 +01:00
|
|
|
switch (g.vehicle.speed_unit)
|
2021-05-19 18:09:48 +02:00
|
|
|
{
|
2022-07-14 22:16:30 +08:00
|
|
|
case SpeedUnit::KMPH:
|
|
|
|
strcpy(speed_type, "kmph");
|
|
|
|
char_width = 4;
|
2021-05-19 18:09:48 +02:00
|
|
|
break;
|
2023-03-01 21:27:15 +00:00
|
|
|
case SpeedUnit::MIPH: strcpy(speed_type, "mph"); break;
|
|
|
|
case SpeedUnit::MPS: strcpy(speed_type, "mps"); break;
|
2021-05-19 18:09:48 +02:00
|
|
|
}
|
|
|
|
|
2022-12-18 23:15:52 +01:00
|
|
|
sprintf(speed, "%*d", g.vehicle.speedo_meter.left_side ? 0 : char_width, (int)veh_speed);
|
2021-05-19 18:09:48 +02:00
|
|
|
|
|
|
|
HUD::SET_TEXT_FONT(2);
|
|
|
|
HUD::SET_TEXT_SCALE(.9f, .9f);
|
|
|
|
HUD::SET_TEXT_OUTLINE();
|
|
|
|
HUD::BEGIN_TEXT_COMMAND_DISPLAY_TEXT("STRING");
|
2022-07-14 22:16:30 +08:00
|
|
|
HUD::ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME(speed_type);
|
2022-12-18 23:15:52 +01:00
|
|
|
HUD::END_TEXT_COMMAND_DISPLAY_TEXT(g.vehicle.speedo_meter.x, g.vehicle.speedo_meter.y, 1);
|
2021-05-19 18:09:48 +02:00
|
|
|
|
|
|
|
HUD::SET_TEXT_FONT(2);
|
2022-07-14 22:16:30 +08:00
|
|
|
HUD::SET_TEXT_SCALE(.9f, .9f);
|
2021-05-19 18:09:48 +02:00
|
|
|
HUD::SET_TEXT_OUTLINE();
|
|
|
|
HUD::BEGIN_TEXT_COMMAND_DISPLAY_TEXT("STRING");
|
2022-07-14 22:16:30 +08:00
|
|
|
HUD::ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME(speed);
|
2023-03-01 21:27:15 +00:00
|
|
|
HUD::END_TEXT_COMMAND_DISPLAY_TEXT(g.vehicle.speedo_meter.x + (g.vehicle.speedo_meter.left_side ? 0 : .003f),
|
|
|
|
g.vehicle.speedo_meter.y + .04f,
|
|
|
|
1);
|
2021-05-19 18:09:48 +02:00
|
|
|
}
|
|
|
|
}
|