aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNipun Garg2019-06-21 21:25:40 +0530
committerEugene Sandulenko2019-09-03 17:16:54 +0200
commitbf98bcca010613957ac0630e3ff715a738d7a819 (patch)
treee447d56be557957d4fcc8c52aa855059ef5f553a
parent755bd46728a2829fe4a5a010f15909ff894607c5 (diff)
downloadscummvm-rg350-bf98bcca010613957ac0630e3ff715a738d7a819.tar.gz
scummvm-rg350-bf98bcca010613957ac0630e3ff715a738d7a819.tar.bz2
scummvm-rg350-bf98bcca010613957ac0630e3ff715a738d7a819.zip
HDB: Add removeFirstWaypoint()
-rw-r--r--engines/hdb/ai-waypoint.cpp15
-rw-r--r--engines/hdb/ai.h1
2 files changed, 16 insertions, 0 deletions
diff --git a/engines/hdb/ai-waypoint.cpp b/engines/hdb/ai-waypoint.cpp
index 3887b972b8..ee053ed6a4 100644
--- a/engines/hdb/ai-waypoint.cpp
+++ b/engines/hdb/ai-waypoint.cpp
@@ -24,6 +24,21 @@
namespace HDB {
+void AI::removeFirstWaypoint() {
+ if (!_numWaypoints)
+ return;
+
+ int i;
+ for (i = 0;i < _numWaypoints;i++) {
+ _waypoints[i] = _waypoints[i + 1];
+ }
+
+ _waypoints[i].x = 0;
+ _waypoints[i].y = 0;
+ _waypoints[i].level = 0;
+ _numWaypoints--;
+}
+
void AI::clearWaypoints() {
memset(&_waypoints[0], 0, sizeof(_waypoints));
_numWaypoints = 0;
diff --git a/engines/hdb/ai.h b/engines/hdb/ai.h
index a9b1b8601e..67db4bbcbe 100644
--- a/engines/hdb/ai.h
+++ b/engines/hdb/ai.h
@@ -664,6 +664,7 @@ public:
// Waypoint & Movement Functions
void lookAtXY(int x, int y);
+ void removeFirstWaypoint();
void clearWaypoints();
Tile *getStandFrameDir(AIEntity *e);