summaryrefslogtreecommitdiffstats
path: root/src/audio/AudioCollision.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/audio/AudioCollision.h')
-rw-r--r--src/audio/AudioCollision.h36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/audio/AudioCollision.h b/src/audio/AudioCollision.h
new file mode 100644
index 00000000..cf201735
--- /dev/null
+++ b/src/audio/AudioCollision.h
@@ -0,0 +1,36 @@
+#pragma once
+
+#define NUMAUDIOCOLLISIONS 10
+
+class cAudioCollision
+{
+public:
+ CEntity *m_pEntity1;
+ CEntity *m_pEntity2;
+ uint8 m_bSurface1;
+ uint8 m_bSurface2;
+ float m_fIntensity1;
+ float m_fIntensity2;
+ CVector m_vecPosition;
+ float m_fDistance;
+ int32 m_nBaseVolume;
+
+ // no methods
+};
+
+static_assert(sizeof(cAudioCollision) == 40, "cAudioCollision: error");
+
+class cAudioCollisionManager
+{
+public:
+ cAudioCollision m_asCollisions1[NUMAUDIOCOLLISIONS];
+ cAudioCollision m_asCollisions2[NUMAUDIOCOLLISIONS];
+ uint8 m_bIndicesTable[NUMAUDIOCOLLISIONS];
+ uint8 m_bCollisionsInQueue;
+ cAudioCollision m_sQueue;
+
+ // reversed all methods
+ void AddCollisionToRequestedQueue(); /// ok
+};
+
+static_assert(sizeof(cAudioCollisionManager) == 852, "cAudioCollisionManager: error"); \ No newline at end of file