mirror of
https://github.com/halpz/re3.git
synced 2025-07-16 22:18:16 +00:00
merged master
This commit is contained in:
@ -22,18 +22,17 @@ class C2dEffect;
|
||||
class CBaseModelInfo
|
||||
{
|
||||
protected:
|
||||
// TODO?: make more things protected
|
||||
char m_name[MAX_MODEL_NAME];
|
||||
CColModel *m_colModel;
|
||||
C2dEffect *m_twodEffects;
|
||||
int16 m_objectId;
|
||||
public:
|
||||
uint16 m_refCount;
|
||||
int16 m_txdSlot;
|
||||
ModelInfoType m_type;
|
||||
uint8 m_num2dEffects;
|
||||
bool m_bOwnsColModel;
|
||||
|
||||
public:
|
||||
CBaseModelInfo(ModelInfoType type);
|
||||
virtual ~CBaseModelInfo() {}
|
||||
virtual void Shutdown(void);
|
||||
@ -42,6 +41,8 @@ public:
|
||||
virtual RwObject *CreateInstance(void) = 0;
|
||||
virtual RwObject *GetRwObject(void) = 0;
|
||||
|
||||
// one day it becomes virtual
|
||||
ModelInfoType GetModelType() const { return m_type; }
|
||||
bool IsSimple(void) { return m_type == MITYPE_SIMPLE || m_type == MITYPE_TIME; }
|
||||
bool IsClump(void) { return m_type == MITYPE_CLUMP || m_type == MITYPE_PED || m_type == MITYPE_VEHICLE ||
|
||||
m_type == MITYPE_MLO || m_type == MITYPE_XTRACOMPS; // unused but what the heck
|
||||
@ -51,6 +52,7 @@ public:
|
||||
void SetColModel(CColModel *col, bool owns = false){
|
||||
m_colModel = col; m_bOwnsColModel = owns; }
|
||||
CColModel *GetColModel(void) { return m_colModel; }
|
||||
bool DoesOwnColModel(void) { return m_bOwnsColModel; }
|
||||
void DeleteCollisionModel(void);
|
||||
void ClearTexDictionary(void) { m_txdSlot = -1; }
|
||||
short GetObjectID(void) { return m_objectId; }
|
||||
@ -64,6 +66,8 @@ public:
|
||||
void Init2dEffects(void);
|
||||
void Add2dEffect(C2dEffect *fx);
|
||||
C2dEffect *Get2dEffect(int n);
|
||||
uint8 GetNum2dEffects() const { return m_num2dEffects; }
|
||||
uint16 GetNumRefs() const { return m_refCount; }
|
||||
};
|
||||
|
||||
static_assert(sizeof(CBaseModelInfo) == 0x30, "CBaseModelInfo: error");
|
||||
|
@ -217,14 +217,14 @@ CModelInfo::GetModelInfo(const char *name, int minIndex, int maxIndex)
|
||||
bool
|
||||
CModelInfo::IsBoatModel(int32 id)
|
||||
{
|
||||
return GetModelInfo(id)->m_type == MITYPE_VEHICLE &&
|
||||
return GetModelInfo(id)->GetModelType() == MITYPE_VEHICLE &&
|
||||
((CVehicleModelInfo*)GetModelInfo(id))->m_vehicleType == VEHICLE_TYPE_BOAT;
|
||||
}
|
||||
|
||||
bool
|
||||
CModelInfo::IsBikeModel(int32 id)
|
||||
{
|
||||
return GetModelInfo(id)->m_type == MITYPE_VEHICLE &&
|
||||
return GetModelInfo(id)->GetModelType() == MITYPE_VEHICLE &&
|
||||
((CVehicleModelInfo*)GetModelInfo(id))->m_vehicleType == VEHICLE_TYPE_BIKE;
|
||||
}
|
||||
|
||||
|
@ -22,7 +22,7 @@ CTimeModelInfo::FindOtherTimeModel(void)
|
||||
|
||||
for(i = 0; i < MODELINFOSIZE; i++){
|
||||
CBaseModelInfo *mi = CModelInfo::GetModelInfo(i);
|
||||
if(mi && mi->m_type == MITYPE_TIME &&
|
||||
if (mi && mi->GetModelType() == MITYPE_TIME &&
|
||||
strncmp(name, mi->GetName(), 24) == 0){
|
||||
m_otherTimeModelID = i;
|
||||
return (CTimeModelInfo*)mi;
|
||||
|
Reference in New Issue
Block a user