2019-05-30 15:24:47 -04:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
class CSpecialFX
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
static void Render(void);
|
2019-10-18 18:23:40 -04:00
|
|
|
static void Update(void);
|
2019-05-30 15:24:47 -04:00
|
|
|
};
|
2019-06-30 15:06:55 -04:00
|
|
|
|
|
|
|
class CMotionBlurStreaks
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
static void RegisterStreak(int32 id, uint8 r, uint8 g, uint8 b, CVector p1, CVector p2);
|
|
|
|
};
|
2019-06-30 16:55:48 -04:00
|
|
|
|
|
|
|
struct CBulletTrace
|
|
|
|
{
|
|
|
|
CVector m_vecInf;
|
|
|
|
CVector m_vecSup;
|
|
|
|
bool m_bInUse;
|
|
|
|
uint8 m_framesInUse;
|
|
|
|
uint8 m_lifeTime;
|
|
|
|
};
|
|
|
|
|
|
|
|
class CBulletTraces
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
static CBulletTrace (&aTraces)[16];
|
|
|
|
|
|
|
|
static void Init(void);
|
|
|
|
};
|
2019-07-24 12:55:43 -04:00
|
|
|
|
2019-07-28 07:14:08 -04:00
|
|
|
class CBrightLights
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
static void RegisterOne(CVector pos, CVector up, CVector right, CVector fwd, uint8 type, uint8 unk1 = 0, uint8 unk2 = 0, uint8 unk3 = 0);
|
|
|
|
};
|
|
|
|
|
2019-10-16 19:22:39 -04:00
|
|
|
enum
|
|
|
|
{
|
|
|
|
MARKERTYPE_0 = 0,
|
|
|
|
MARKERTYPE_ARROW,
|
|
|
|
MARKERTYPE_2,
|
|
|
|
MARKERTYPE_3,
|
|
|
|
MARKERTYPE_CYLINDER,
|
|
|
|
NUMMARKERTYPES,
|
|
|
|
|
|
|
|
MARKERTYPE_INVALID = 0x101
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
class C3dMarker
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
CMatrix m_Matrix;
|
|
|
|
RpAtomic *m_pAtomic;
|
|
|
|
RpMaterial *m_pMaterial;
|
|
|
|
uint16 m_nType;
|
|
|
|
bool m_bIsUsed;
|
|
|
|
uint32 m_nIdentifier;
|
|
|
|
RwRGBA m_Color;
|
|
|
|
uint16 m_nPulsePeriod;
|
2019-10-26 07:09:50 -04:00
|
|
|
int16 m_nRotateRate;
|
2019-10-16 19:22:39 -04:00
|
|
|
uint32 m_nStartTime;
|
|
|
|
float m_fPulseFraction;
|
|
|
|
float m_fStdSize;
|
|
|
|
float m_fSize;
|
|
|
|
float m_fBrightness;
|
|
|
|
float m_fCameraRange;
|
|
|
|
|
|
|
|
bool AddMarker(uint32 identifier, uint16 type, float fSize, uint8 r, uint8 g, uint8 b, uint8 a, uint16 pulsePeriod, float pulseFraction, int16 rotateRate);
|
|
|
|
void DeleteMarkerObject();
|
|
|
|
void Render();
|
|
|
|
};
|
|
|
|
|
2019-07-24 12:55:43 -04:00
|
|
|
class C3dMarkers
|
|
|
|
{
|
|
|
|
public:
|
2019-10-16 19:22:39 -04:00
|
|
|
static void Init();
|
|
|
|
static void Shutdown();
|
|
|
|
static C3dMarker *PlaceMarker(uint32 id, uint16 type, CVector &pos, float size, uint8 r, uint8 g, uint8 b, uint8 a, uint16 pulsePeriod, float pulseFraction, int16 rotateRate);
|
|
|
|
static void PlaceMarkerSet(uint32 id, uint16 type, CVector &pos, float size, uint8 r, uint8 g, uint8 b, uint8 a, uint16 pulsePeriod, float pulseFraction, int16 rotateRate);
|
|
|
|
static void Render();
|
|
|
|
static void Update();
|
|
|
|
|
|
|
|
static C3dMarker(&m_aMarkerArray)[NUM3DMARKERS];
|
|
|
|
static int32 &NumActiveMarkers;
|
|
|
|
static RpClump* (&m_pRpClumpArray)[NUMMARKERTYPES];
|
2019-10-10 12:17:35 -04:00
|
|
|
};
|
|
|
|
|
|
|
|
class CMoneyMessage
|
|
|
|
{
|
|
|
|
friend class CMoneyMessages;
|
|
|
|
|
|
|
|
uint32 m_nTimeRegistered;
|
|
|
|
CVector m_vecPosition;
|
|
|
|
wchar m_aText[16];
|
|
|
|
CRGBA m_Colour;
|
|
|
|
float m_fSize;
|
|
|
|
float m_fOpacity;
|
|
|
|
public:
|
|
|
|
void Render();
|
|
|
|
};
|
|
|
|
|
|
|
|
class CMoneyMessages
|
|
|
|
{
|
|
|
|
static CMoneyMessage aMoneyMessages[NUMMONEYMESSAGES];
|
|
|
|
public:
|
|
|
|
static void Init();
|
|
|
|
static void Render();
|
|
|
|
static void RegisterOne(CVector vecPos, const char *pText, uint8 bRed, uint8 bGreen, uint8 bBlue, float fSize, float fOpacity);
|
|
|
|
};
|