2019-05-30 19:24:47 +00:00
|
|
|
#pragma once
|
2019-07-10 09:36:47 +00:00
|
|
|
#include "common.h"
|
2019-08-16 18:17:15 +00:00
|
|
|
#include "Vector.h"
|
2019-05-30 19:24:47 +00:00
|
|
|
|
2020-01-20 20:41:41 +00:00
|
|
|
class CMovingThing
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
CMovingThing *m_pNext;
|
|
|
|
CMovingThing *m_pPrev;
|
|
|
|
int16 m_nType;
|
2020-04-19 04:14:13 +00:00
|
|
|
int16 m_nHidden;
|
2020-01-20 20:41:41 +00:00
|
|
|
CVector m_vecPosn;
|
|
|
|
CEntity* m_pEntity;
|
|
|
|
|
|
|
|
void Update();
|
|
|
|
void AddToList(CMovingThing *pThing);
|
|
|
|
void RemoveFromList();
|
|
|
|
int16 SizeList();
|
|
|
|
};
|
|
|
|
|
|
|
|
#define NUMMOVINGTHINGS 128
|
|
|
|
|
2019-05-30 19:24:47 +00:00
|
|
|
class CMovingThings
|
|
|
|
{
|
|
|
|
public:
|
2020-01-20 20:41:41 +00:00
|
|
|
static CMovingThing StartCloseList;
|
|
|
|
static CMovingThing EndCloseList;
|
|
|
|
static int16 Num;
|
|
|
|
static CMovingThing aMovingThings[NUMMOVINGTHINGS];
|
|
|
|
|
2019-07-10 09:36:47 +00:00
|
|
|
static void Init();
|
|
|
|
static void Shutdown();
|
|
|
|
static void Update();
|
|
|
|
static void Render();
|
2019-05-30 19:24:47 +00:00
|
|
|
};
|
2019-07-10 09:36:47 +00:00
|
|
|
|
|
|
|
class CScrollBar
|
|
|
|
{
|
|
|
|
private:
|
|
|
|
uint8 m_Counter;
|
|
|
|
const char* m_pMessage;
|
|
|
|
CVector m_Position;
|
|
|
|
uint32 m_MessageCurrentChar;
|
|
|
|
uint32 m_MessageLength;
|
|
|
|
CVector m_Size;
|
|
|
|
float m_fIntensity;
|
|
|
|
uint8 m_MessageBar[40];
|
|
|
|
uint8 m_Type;
|
|
|
|
bool m_bVisible;
|
|
|
|
uint8 m_uRed;
|
|
|
|
uint8 m_uGreen;
|
|
|
|
uint8 m_uBlue;
|
|
|
|
float m_fScale;
|
|
|
|
|
|
|
|
public:
|
|
|
|
void SetVisibility(bool visible) { m_bVisible = visible; }
|
|
|
|
bool IsVisible() { return m_bVisible; }
|
|
|
|
|
|
|
|
void Init(CVector, uint8, float, float, float, uint8, uint8, uint8, float);
|
|
|
|
void Update();
|
|
|
|
void Render();
|
|
|
|
};
|
|
|
|
|
|
|
|
class CTowerClock
|
|
|
|
{
|
|
|
|
private:
|
|
|
|
CVector m_Position;
|
|
|
|
CVector m_Size;
|
|
|
|
float m_fDrawDistance;
|
|
|
|
float m_fScale;
|
|
|
|
uint8 m_uRed;
|
|
|
|
uint8 m_uGreen;
|
|
|
|
uint8 m_uBlue;
|
|
|
|
bool m_bVisible;
|
|
|
|
float m_fIntensity;
|
|
|
|
|
|
|
|
public:
|
|
|
|
void SetVisibility(bool visible) { m_bVisible = visible; }
|
|
|
|
bool IsVisible() { return m_bVisible; }
|
|
|
|
|
|
|
|
void Init(CVector, float, float, uint8, uint8, uint8, float, float);
|
|
|
|
void Update();
|
|
|
|
void Render();
|
|
|
|
};
|
|
|
|
|
|
|
|
class CDigitalClock
|
|
|
|
{
|
|
|
|
private:
|
|
|
|
CVector m_Position;
|
|
|
|
CVector m_Size;
|
|
|
|
float m_fDrawDistance;
|
|
|
|
float m_fScale;
|
|
|
|
uint8 m_uRed;
|
|
|
|
uint8 m_uGreen;
|
|
|
|
uint8 m_uBlue;
|
|
|
|
bool m_bVisible;
|
|
|
|
float m_fIntensity;
|
|
|
|
|
|
|
|
public:
|
|
|
|
void SetVisibility(bool visible) { m_bVisible = visible; }
|
|
|
|
bool IsVisible() { return m_bVisible; }
|
|
|
|
|
|
|
|
void Init(CVector, float, float, uint8, uint8, uint8, float, float);
|
|
|
|
void Update();
|
|
|
|
void Render();
|
2020-06-10 20:47:48 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
class CSmokeTrail {
|
|
|
|
CVector m_pos[16];
|
|
|
|
float m_density[16];
|
|
|
|
int m_time[16];
|
|
|
|
char m_unused[536];
|
|
|
|
int m_seed;
|
|
|
|
public:
|
|
|
|
void Render(void);
|
|
|
|
void RegisterPoint(CVector position, float a);
|
|
|
|
void Init(int num);
|
|
|
|
};
|
|
|
|
|
|
|
|
class CSmokeTrails {
|
|
|
|
static CSmokeTrail aSmoke[3];
|
|
|
|
public:
|
|
|
|
static bool CigOn;
|
|
|
|
static void Update(void);
|
|
|
|
static void Render(void);
|
|
|
|
static void Init(void);
|
2019-07-10 09:36:47 +00:00
|
|
|
};
|