实体
实体 CEntity
查看 Markdown模型、标志、传送与 RW 对象
CEntity.h · 继承 CPlaceable
Ped / Vehicle / Object 共同基类。删实体走正确 Destroy 路径,别乱 delete。
short m_nModelIndex;
eEntityType m_nType : 3;
eEntityStatus m_nStatus : 5;
unsigned char m_nAreaCode;bitfield,直接改要小心。
bool bIsVisible : 1;
bool bUsesCollision : 1;
bool bIsStatic : 1;
bool bDontStream : 1;
// 其余见 CEntity.h逻辑帧调用。
CVector GetPosition();
void Teleport(CVector destination, bool resetRotation = false);void SetModelIndex(unsigned int index);
void SetModelIndexNoCreate(unsigned int index);
void CreateRwObject();
void DeleteRwObject();与 CWorld::Add / Remove 相关,脚本实体生命周期要对。
void Add();
void Remove();渲染钩子里判空。
union {
struct RwObject* m_pRwObject;
struct RpClump* m_pRwClump;
struct RpAtomic* m_pRwAtomic;
};
评论