Re3/src/render/Hud.h

82 lines
1.9 KiB
C
Raw Normal View History

#pragma once
2019-06-14 19:34:19 -04:00
#include "Sprite2d.h"
2020-10-18 12:16:37 -04:00
#define HELP_MSG_LENGTH 256
enum eItems
{
ITEM_NONE = -1,
ITEM_ARMOUR = 3,
ITEM_HEALTH = 4,
ITEM_RADAR = 8
};
enum eSprites
{
2019-06-14 19:34:19 -04:00
HUD_FIST,
HUD_BAT,
HUD_PISTOL,
HUD_UZI,
HUD_SHOTGUN,
HUD_AK47,
HUD_M16,
HUD_SNIPER,
HUD_ROCKET,
HUD_FLAME,
HUD_MOLOTOV,
HUD_GRENADE,
HUD_DETONATOR,
HUD_RADARDISC = 15,
HUD_PAGER = 16,
HUD_SITESNIPER = 20,
2020-04-10 11:06:49 -04:00
HUD_SITEM16,
HUD_SITEROCKET,
NUM_HUD_SPRITES,
2019-06-14 19:34:19 -04:00
};
class CHud
{
public:
2020-12-07 13:12:13 -05:00
static int16 m_ItemToFlash;
2020-04-10 11:06:49 -04:00
static CSprite2d Sprites[NUM_HUD_SPRITES];
static wchar *m_pZoneName;
static wchar *m_pLastZoneName;
static wchar *m_ZoneToPrint;
2020-04-10 11:06:49 -04:00
static wchar m_Message[256];
2020-12-07 13:12:13 -05:00
static wchar m_BigMessage[6][128];
2020-04-10 11:06:49 -04:00
static wchar m_PagerMessage[256];
2020-12-07 13:12:13 -05:00
static uint32 m_ZoneNameTimer;
static int32 m_ZoneFadeTimer;
static uint32 m_ZoneState;
static wchar m_HelpMessage[HELP_MSG_LENGTH];
static wchar m_LastHelpMessage[HELP_MSG_LENGTH];
static wchar m_HelpMessageToPrint[HELP_MSG_LENGTH];
static uint32 m_HelpMessageTimer;
static int32 m_HelpMessageFadeTimer;
static uint32 m_HelpMessageState;
static bool m_HelpMessageQuick;
static float m_HelpMessageDisplayTime;
static int32 SpriteBrightness;
2020-04-10 11:06:49 -04:00
static bool m_Wants_To_Draw_Hud;
static bool m_Wants_To_Draw_3dMarkers;
2020-12-07 13:12:13 -05:00
static wchar *m_pVehicleName;
static wchar *m_pLastVehicleName;
static uint32 m_VehicleNameTimer;
static int32 m_VehicleFadeTimer;
static uint32 m_VehicleState;
static wchar *m_pVehicleNameToPrint;
2019-06-14 19:34:19 -04:00
public:
static void Initialise();
2020-12-07 13:12:13 -05:00
static void Shutdown();
2019-06-14 19:34:19 -04:00
static void ReInitialise();
2020-12-07 13:12:13 -05:00
static void GetRidOfAllHudMessages();
static void SetZoneName(wchar *name);
static void SetHelpMessage(wchar *message, bool quick);
2020-12-07 13:12:13 -05:00
static void SetVehicleName(wchar *name);
static void Draw();
static void DrawAfterFade();
static void SetMessage(wchar *message);
2020-12-07 13:12:13 -05:00
static void SetBigMessage(wchar *message, uint16 style);
static void SetPagerMessage(wchar *message);
};