summaryrefslogtreecommitdiffstats
path: root/src/objects/Stinger.h
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/objects/Stinger.h41
1 files changed, 41 insertions, 0 deletions
diff --git a/src/objects/Stinger.h b/src/objects/Stinger.h
new file mode 100644
index 00000000..80ac3d1e
--- /dev/null
+++ b/src/objects/Stinger.h
@@ -0,0 +1,41 @@
+#pragma once
+
+#include "Object.h"
+
+class CStingerSegment : public CObject
+{
+public:
+ CStingerSegment();
+ ~CStingerSegment();
+};
+
+#define NUM_STINGER_SEGMENTS (12)
+
+class CStinger
+{
+ // TODO: better names
+ enum {
+ STINGERSTATE_NONE = 0,
+ STINGERSTATE_STATE1,
+ STINGERSTATE_STATE2,
+ STINGERSTATE_STATE3,
+ STINGERSTATE_REMOVE,
+ };
+
+ bool bIsDeployed;
+ uint32 m_nTimeOfDeploy;
+ CVector m_vPos;
+ float m_fMax_Z;
+ float m_fMin_Z;
+ CVector2D m_vPositions[60];
+ CStingerSegment *pSpikes[NUM_STINGER_SEGMENTS];
+ class CPed *pOwner;
+ uint8 m_nSpikeState;
+public:
+ CStinger();
+ void Init(CPed *pPed);
+ void Remove();
+ void Deploy(CPed *pPed);
+ void CheckForBurstTyres();
+ void Process();
+}; \ No newline at end of file