summaryrefslogtreecommitdiffstats
path: root/src/control/Phones.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/control/Phones.h')
-rw-r--r--src/control/Phones.h28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/control/Phones.h b/src/control/Phones.h
index a29043ed..7ac34c3a 100644
--- a/src/control/Phones.h
+++ b/src/control/Phones.h
@@ -1,6 +1,34 @@
#pragma once
+#include "Physical.h"
#include "AnimBlendAssociation.h"
+struct CPhone
+{
+ CVector m_vecPos;
+ uint16 *m_apMessages[6];
+ int32 field_24;
+ CEntity *m_pEntity;
+ int32 m_nState;
+ uint8 field_30;
+};
+
+static_assert(sizeof(CPhone) == 0x34, "CPhone: error");
+
+class CPhoneInfo {
+public:
+ int32 m_nMax;
+ int32 m_nNum;
+ CPhone m_aPhones[50];
+
+ CPhoneInfo() { }
+ ~CPhoneInfo() { }
+
+ int FindNearestFreePhone(CVector*);
+ bool PhoneAtThisPosition(CVector);
+};
+
+extern CPhoneInfo &gPhoneInfo;
+
void PhonePutDownCB(CAnimBlendAssociation *assoc, void *arg);
void PhonePickUpCB(CAnimBlendAssociation *assoc, void *arg); \ No newline at end of file