summaryrefslogtreecommitdiff
path: root/src/control/RoadBlocks.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/control/RoadBlocks.h')
-rw-r--r--src/control/RoadBlocks.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/control/RoadBlocks.h b/src/control/RoadBlocks.h
new file mode 100644
index 0000000..ef61495
--- /dev/null
+++ b/src/control/RoadBlocks.h
@@ -0,0 +1,30 @@
+#pragma once
+#include "common.h"
+
+class CVehicle;
+
+class CScriptRoadblock
+{
+public:
+ CVector m_vInf;
+ CVector m_vSup;
+ bool m_bInUse;
+ CVector GetPosition() { return (m_vInf + m_vSup) / 2; }
+};
+
+class CRoadBlocks
+{
+public:
+ static int16 NumRoadBlocks;
+ static int16 RoadBlockNodes[NUMROADBLOCKS];
+ static bool InOrOut[NUMROADBLOCKS];
+ static CScriptRoadblock aScriptRoadBlocks[NUM_SCRIPT_ROADBLOCKS];
+
+ static void Init(void);
+ static void GenerateRoadBlockCopsForCar(CVehicle* pVehicle, int32 roadBlockType);
+ static void GenerateRoadBlocks(void);
+
+ static void CreateRoadBlockBetween2Points(CVector, CVector);
+ static void RegisterScriptRoadBlock(CVector, CVector);
+ static void ClearScriptRoadBlocks();
+};