From 600bf0351476a5a21aabb5429132ddf7f52ac0b9 Mon Sep 17 00:00:00 2001 From: aap Date: Wed, 15 May 2019 16:52:37 +0200 Subject: first commit --- src/modelinfo/PedModelInfo.h | 47 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 src/modelinfo/PedModelInfo.h (limited to 'src/modelinfo/PedModelInfo.h') diff --git a/src/modelinfo/PedModelInfo.h b/src/modelinfo/PedModelInfo.h new file mode 100644 index 00000000..e917b6b2 --- /dev/null +++ b/src/modelinfo/PedModelInfo.h @@ -0,0 +1,47 @@ +#pragma once + +#include "ClumpModelInfo.h" + +enum PedNode { + PED_WAIST, + PED_TORSO, // Smid on PS2/PC, Storso on mobile/xbox + PED_HEAD, + PED_UPPERARML, + PED_UPPERARMR, + PED_HANDL, + PED_HANDR, + PED_UPPERLEGL, + PED_UPPERLEGR, + PED_FOOTL, + PED_FOOTR, + PED_LOWERLEGR, + // This is not valid apparently + PED_LOWERLEGL, +}; + +class CPedModelInfo : public CClumpModelInfo +{ +public: + void *m_animGroup; // TODO + int32 m_pedType; + int32 m_pedStatType; + uint32 m_carsCanDrive; + CColModel *m_hitColModel; + RpAtomic *m_head; + RpAtomic *m_lhand; + RpAtomic *m_rhand; + + static RwObjectNameIdAssocation m_pPedIds[12]; + + CPedModelInfo(void) : CClumpModelInfo(MITYPE_PED) { } + void DeleteRwObject(void); + void SetClump(RpClump *); + + void SetLowDetailClump(RpClump*); + void CreateHitColModel(void); + + + void DeleteRwObject_(void) { this->CPedModelInfo::DeleteRwObject(); } + void SetClump_(RpClump *clump) { this->CPedModelInfo::SetClump(clump); } +}; +static_assert(sizeof(CPedModelInfo) == 0x54, "CPedModelInfo: error"); -- cgit v1.2.3