summaryrefslogtreecommitdiffstats
path: root/src/entities/PedIK.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/entities/PedIK.h')
-rw-r--r--src/entities/PedIK.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/src/entities/PedIK.h b/src/entities/PedIK.h
new file mode 100644
index 00000000..67aaa469
--- /dev/null
+++ b/src/entities/PedIK.h
@@ -0,0 +1,33 @@
+#pragma once
+#include "common.h"
+
+struct LimbOrientation
+{
+ float phi;
+ float theta;
+};
+
+class CPed;
+
+class CPedIK
+{
+public:
+ // TODO
+ enum {
+ FLAG_1,
+ FLAG_2,
+ FLAG_4,
+ };
+
+ CPed* m_ped;
+ LimbOrientation m_headOrient;
+ LimbOrientation m_torsoOrient;
+ LimbOrientation m_upperArmOrient;
+ LimbOrientation m_lowerArmOrient;
+ int32 m_flags;
+
+ void GetComponentPosition(RwV3d* pos, int id);
+ bool PointGunInDirection(float phi, float theta);
+ bool PointGunAtPosition(CVector* position);
+};
+static_assert(sizeof(CPedIK) == 0x28, "CPedIK: error");