diff options
Diffstat (limited to 'engines/bladerunner/combat.h')
-rw-r--r-- | engines/bladerunner/combat.h | 31 |
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 |