CObject complete

This commit is contained in:
saml1er 2020-04-10 16:44:08 +05:00
parent 6473778c47
commit a8f7bf0bec
10 changed files with 316 additions and 29 deletions

View file

@ -9,6 +9,18 @@ enum {
CUTSCENE_OBJECT = 4,
};
enum {
COLDAMAGE_EFFECT_NONE = 0,
COLDAMAGE_EFFECT_CHANGE_MODEL = 1,
COLDAMAGE_EFFECT_SPLIT_MODEL = 2,
COLDAMAGE_EFFECT_SMASH_COMPLETELY = 3,
COLDAMAGE_EFFECT_CHANGE_THEN_SMASH = 4,
COLDAMAGE_EFFECT_SMASH_CARDBOX_COMPLETELY = 50,
COLDAMAGE_EFFECT_SMASH_WOODENBOX_COMPLETELY = 60,
COLDAMAGE_EFFECT_SMASH_TRAFFICCONE_COMPLETELY = 70,
COLDAMAGE_EFFECT_SMASH_BARPOST_COMPLETELY = 80,
};
enum {
COLLRESPONSE_NONE,
COLLRESPONSE_CHANGE_MODEL,
@ -41,8 +53,8 @@ public:
int8 bHasBeenDamaged : 1;
int8 bUseVehicleColours : 1;
int8 m_obj_flag80 : 1;
int8 field_172; // car for a bonus pickup?
int8 field_173;
int8 m_nBonusValue;
int8 field_173;
float m_fCollisionDamageMultiplier;
uint8 m_nCollisionDamageEffect;
uint8 m_nSpecialCollisionResponseCases;
@ -74,7 +86,7 @@ public:
~CObject(void);
void ProcessControl(void);
void Teleport(CVector);
void Teleport(CVector vecPos);
void Render(void);
bool SetupLighting(void);
void RemoveLighting(bool reset);
@ -84,6 +96,8 @@ public:
void Init(void);
bool CanBeDeleted(void);
static void DeleteAllTempObjectInArea(CVector, float);
static void DeleteAllMissionObjects();
static void DeleteAllTempObjects();
static void DeleteAllTempObjectInArea(CVector point, float fRadius);
};
static_assert(sizeof(CObject) == 0x198, "CObject: error");