2019-05-30 19:24:47 +00:00
|
|
|
#pragma once
|
2019-06-14 23:34:19 +00:00
|
|
|
#include "Sprite2d.h"
|
2019-05-30 19:24:47 +00:00
|
|
|
|
2019-06-17 00:10:55 +00:00
|
|
|
enum eItems
|
|
|
|
{
|
2019-06-20 00:31:03 +00:00
|
|
|
ITEM_NONE = -1,
|
2019-06-17 00:10:55 +00:00
|
|
|
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
|
|
|
|
};
|
|
|
|
|
2019-06-17 00:10:55 +00:00
|
|
|
class CHud
|
|
|
|
{
|
2019-05-30 19:24:47 +00:00
|
|
|
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;
|
2019-06-20 00:31:03 +00:00
|
|
|
static bool &m_HelpMessageQuick;
|
2019-06-14 23:34:19 +00:00
|
|
|
static int32 m_ZoneState;
|
|
|
|
static int32 m_ZoneFadeTimer;
|
|
|
|
static int32 m_ZoneNameTimer;
|
2019-06-20 00:31:03 +00:00
|
|
|
static wchar *&m_ZoneName;
|
|
|
|
static wchar *m_LastZoneName;
|
2019-06-17 00:10:55 +00:00
|
|
|
static wchar *m_ZoneToPrint;
|
2019-06-20 00:31:03 +00:00
|
|
|
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;
|
2019-06-17 00:10:55 +00:00
|
|
|
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];
|
2019-06-17 00:10:55 +00:00
|
|
|
static float *BigMessageInUse;
|
|
|
|
static float *BigMessageAlpha;
|
|
|
|
static float *BigMessageX;
|
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();
|
2019-06-17 00:10:55 +00:00
|
|
|
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();
|
2019-06-17 00:10:55 +00:00
|
|
|
static void SetMessage(wchar *message);
|
|
|
|
static void SetBigMessage(wchar *message, int16 style);
|
|
|
|
static void SetPagerMessage(wchar *message);
|
|
|
|
};
|