mirror of
https://github.com/PrimeDecomp/prime.git
synced 2025-12-08 15:04:54 +00:00
Add & link CEntity.cpp
This commit is contained in:
@@ -95,6 +95,7 @@ public:
|
||||
};
|
||||
|
||||
extern CTevCombiners::CTevPass CTevPass_805a5ebc;
|
||||
// TODO move to CGraphics
|
||||
extern CTevCombiners::CTevPass* PTR_skPassThru_805a8828;
|
||||
|
||||
#endif
|
||||
@@ -17,11 +17,15 @@ public:
|
||||
virtual void Accept(IVisitor& visitor) = 0;
|
||||
virtual void PreThink(float dt, CStateManager& mgr);
|
||||
virtual void Think(float dt, CStateManager& mgr);
|
||||
virtual void AcceptScriptMsg(EScriptObjectMessage msg, TUniqueId objId, CStateManager& stateMgr);
|
||||
virtual void AcceptScriptMsg(EScriptObjectMessage msg, TUniqueId uid, CStateManager& mgr);
|
||||
virtual void SetActive(bool active);
|
||||
|
||||
CEntity(TUniqueId id, const CEntityInfo& info, bool active, const rstl::string& name);
|
||||
|
||||
void SendScriptMsgs(EScriptObjectState state, CStateManager& mgr, EScriptObjectMessage msg);
|
||||
TUniqueId GetUniqueId() const { return x8_uid; }
|
||||
TAreaId GetAreaId() const;
|
||||
|
||||
static rstl::vector<SConnection> NullConnectionList;
|
||||
|
||||
protected:
|
||||
@@ -33,7 +37,7 @@ protected:
|
||||
bool x30_24_active : 1;
|
||||
bool x30_25_inGraveyard : 1;
|
||||
bool x30_26_scriptingBlocked : 1;
|
||||
bool x30_27_inUse : 1;
|
||||
bool x30_27_notInArea : 1;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -3,6 +3,9 @@
|
||||
|
||||
#include "types.h"
|
||||
|
||||
class CStateManager {};
|
||||
class CStateManager {
|
||||
public:
|
||||
void SendScriptMsg(TUniqueId uid, TEditorId target, EScriptObjectMessage msg, EScriptObjectState state);
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -21,17 +21,33 @@ struct TAreaId {
|
||||
bool operator==(const TAreaId& other) const { return value == other.value; }
|
||||
bool operator!=(const TAreaId& other) const { return value != other.value; }
|
||||
};
|
||||
|
||||
struct TEditorId {
|
||||
u32 value;
|
||||
|
||||
TEditorId() : value(-1) {}
|
||||
TEditorId(u32 value) : value(value) {}
|
||||
u32 Value() const { return value; }
|
||||
|
||||
bool operator==(const TEditorId& other) const { return value == other.value; }
|
||||
bool operator!=(const TEditorId& other) const { return value != other.value; }
|
||||
};
|
||||
|
||||
struct TUniqueId {
|
||||
u16 value;
|
||||
union {
|
||||
struct {
|
||||
u16 version : 6;
|
||||
u16 id : 10;
|
||||
};
|
||||
u16 value;
|
||||
};
|
||||
|
||||
TUniqueId() : value(-1) {}
|
||||
TUniqueId(u16 value) : value(value) {}
|
||||
u16 Value() const { return value; }
|
||||
|
||||
bool operator==(const TUniqueId& other) const { return value == other.value; }
|
||||
bool operator!=(const TUniqueId& other) const { return value != other.value; }
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user