Re3/src/render/Rubbish.h

52 lines
1.0 KiB
C
Raw Normal View History

#pragma once
2019-07-17 17:58:06 -04:00
class CVehicle;
2020-04-06 19:19:24 -04:00
enum {
// NB: not all values are allowed, check the code
NUM_RUBBISH_SHEETS = 64
};
class COneSheet
{
public:
CVector m_basePos;
CVector m_animatedPos;
float m_targetZ;
int8 m_state;
int8 m_animationType;
uint32 m_moveStart;
uint32 m_moveDuration;
float m_animHeight;
float m_xDist;
float m_yDist;
float m_angle;
bool m_isVisible;
bool m_targetIsVisible;
COneSheet *m_next;
COneSheet *m_prev;
void AddToList(COneSheet *list);
void RemoveFromList(void);
};
class CRubbish
{
2020-04-06 19:19:24 -04:00
static bool bRubbishInvisible;
static int RubbishVisibility;
static COneSheet aSheets[NUM_RUBBISH_SHEETS];
static COneSheet StartEmptyList;
static COneSheet EndEmptyList;
static COneSheet StartStaticsList;
static COneSheet EndStaticsList;
static COneSheet StartMoversList;
static COneSheet EndMoversList;
public:
static void Render(void);
2019-07-17 17:58:06 -04:00
static void StirUp(CVehicle *veh); // CAutomobile on PS2
2019-10-18 18:23:40 -04:00
static void Update(void);
2020-04-06 19:19:24 -04:00
static void SetVisibility(bool visible);
2020-03-22 10:23:40 -04:00
static void Init(void);
static void Shutdown(void);
};