aboutsummaryrefslogtreecommitdiff
path: root/engines/bladerunner/combat.h
diff options
context:
space:
mode:
authorPeter Kohaut2018-03-17 16:40:33 +0100
committerPeter Kohaut2018-03-17 16:42:25 +0100
commit19d9e4cec818980a75772a204c96774afbd2b17e (patch)
treeaaf4ae3f0322c0a75418451b50c8e09b424c0a7f /engines/bladerunner/combat.h
parentb2727018344535789c96b0e9c95c741d0dd054c5 (diff)
downloadscummvm-rg350-19d9e4cec818980a75772a204c96774afbd2b17e.tar.gz
scummvm-rg350-19d9e4cec818980a75772a204c96774afbd2b17e.tar.bz2
scummvm-rg350-19d9e4cec818980a75772a204c96774afbd2b17e.zip
BLADERUNNER: Added combat
Math cleanup Fixed obstacle detection
Diffstat (limited to 'engines/bladerunner/combat.h')
-rw-r--r--engines/bladerunner/combat.h31
1 files changed, 27 insertions, 4 deletions
diff --git a/engines/bladerunner/combat.h b/engines/bladerunner/combat.h
index 21989dac52..ab289cca5c 100644
--- a/engines/bladerunner/combat.h
+++ b/engines/bladerunner/combat.h
@@ -23,9 +23,11 @@
#ifndef BLADERUNNER_COMBAT_H
#define BLADERUNNER_COMBAT_H
-namespace BladeRunner {
+#include "bladerunner/vector.h"
+
+#include "common/array.h"
-class Vector3;
+namespace BladeRunner {
class BladeRunnerEngine;
@@ -44,6 +46,24 @@ class Combat {
public:
int _ammoDamage[3];
+ struct CoverWaypoint {
+ int type;
+ int setId;
+ int sceneId;
+ Vector3 position;
+ };
+
+ struct FleeWaypoint {
+ int type;
+ int setId;
+ int sceneId;
+ Vector3 position;
+ int field7;
+ };
+
+ Common::Array<CoverWaypoint> _coverWaypoints;
+ Common::Array<FleeWaypoint> _fleeWaypoints;
+
public:
Combat(BladeRunnerEngine *vm);
~Combat();
@@ -60,10 +80,13 @@ public:
void setHitSound(int ammoType, int column, int soundId);
void setMissSound(int ammoType, int column, int soundId);
- int getHitSound();
- int getMissSound();
+ int getHitSound() const;
+ int getMissSound() const;
void shoot(int actorId, Vector3 &to, int screenX);
+
+ int findFleeWaypoint(int setId, int enemyId, const Vector3& position) const;
+ int findCoverWaypoint(int waypointType, int actorId, int enemyId) const;
};
} // End of namespace BladeRunner