re3/src/render/Hud.h

97 lines
2.3 KiB
C
Raw Normal View History

#pragma once
2019-06-14 23:34:19 +00:00
#include "Sprite2d.h"
enum eItems
{
ITEM_NONE = -1,
ITEM_ARMOUR = 3,
ITEM_HEALTH = 4,
ITEM_RADAR = 8
};
enum eSprites
{
2019-06-14 23:34:19 +00: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,
HUD_SITEM16 = 21
};
class CHud
{
public:
2019-06-14 23:34:19 +00:00
static CSprite2d *Sprites;
2019-06-07 20:31:03 +00:00
2019-06-14 23:34:19 +00:00
static wchar *m_HelpMessage;
static wchar *m_LastHelpMessage;
static int32 &m_HelpMessageState;
static int32 &m_HelpMessageTimer;
static int32 &m_HelpMessageFadeTimer;
static wchar *m_HelpMessageToPrint;
2019-06-16 22:16:38 +00:00
static float &m_HelpMessageDisplayTime;
static float &m_fTextBoxNumLines;
static float &m_fHelpMessageTime;
static bool &m_HelpMessageQuick;
2019-06-14 23:34:19 +00:00
static int32 m_ZoneState;
static int32 m_ZoneFadeTimer;
static int32 m_ZoneNameTimer;
static wchar *&m_ZoneName;
static wchar *m_LastZoneName;
static wchar *m_ZoneToPrint;
static wchar *&m_VehicleName;
static wchar *m_LastVehicleName;
static wchar *m_VehicleNameToPrint;
2019-06-14 23:34:19 +00:00
static int32 m_VehicleState;
static int32 m_VehicleFadeTimer;
static int32 m_VehicleNameTimer;
static wchar *m_Message;
static wchar *m_PagerMessage;
2019-06-16 22:16:38 +00:00
static bool &m_Wants_To_Draw_Hud;
static bool &m_Wants_To_Draw_3dMarkers;
2019-06-14 23:34:19 +00:00
static wchar(*m_BigMessage)[128];
static float BigMessageInUse[6];
static float BigMessageAlpha[6];
static float BigMessageX[6];
2019-06-16 22:16:38 +00:00
static float &OddJob2OffTimer;
2019-06-14 23:34:19 +00:00
static int8 &CounterOnLastFrame;
2019-06-16 22:16:38 +00:00
static float &OddJob2XOffset;
2019-06-14 23:34:19 +00:00
static int16 &CounterFlashTimer;
static int16 &OddJob2Timer;
static int8 &TimerOnLastFrame;
static int16 &OddJob2On;
static int16 &TimerFlashTimer;
static int16 &PagerSoundPlayed;
static int32 &SpriteBrightness;
2019-06-16 22:16:38 +00:00
static float &PagerXOffset;
2019-06-14 23:34:19 +00:00
static int32 m_ItemToFlash;
static int16 &PagerTimer;
static int16 &PagerOn;
public:
static void Initialise();
static void Shutdown();
static void ReInitialise();
static void GetRidOfAllHudMessages();
static void SetZoneName(wchar *name);
static void SetHelpMessage(wchar *message, bool quick);
static void SetVehicleName(wchar *name);
2019-06-14 23:34:19 +00:00
static void Draw();
static void DrawAfterFade();
static void SetMessage(wchar *message);
static void SetBigMessage(wchar *message, int16 style);
static void SetPagerMessage(wchar *message);
};