aboutsummaryrefslogtreecommitdiff
path: root/engines/xeen/interface_scene.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/xeen/interface_scene.cpp')
-rw-r--r--engines/xeen/interface_scene.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/engines/xeen/interface_scene.cpp b/engines/xeen/interface_scene.cpp
index 05815c5d1b..beadcb0b96 100644
--- a/engines/xeen/interface_scene.cpp
+++ b/engines/xeen/interface_scene.cpp
@@ -2315,7 +2315,10 @@ void InterfaceScene::setIndoorsMonsters() {
Common::Point mazePos = _vm->_party->_mazePosition;
Direction dir = _vm->_party->_mazeDirection;
+ // Reset the list of attacking monsters
combat.clear();
+
+ // Iterate through the monsters list checking for proximity to party
for (uint monsterIdx = 0; monsterIdx < map._mobData._monsters.size(); ++monsterIdx) {
MazeMonster &monster = map._mobData._monsters[monsterIdx];
SpriteResource *sprites = monster._sprites;
@@ -3097,6 +3100,10 @@ void InterfaceScene::setOutdoorsMonsters() {
Direction dir = party._mazeDirection;
Common::Point pt = party._mazePosition;
+ // Reset the list of attacking monsters
+ combat.clear();
+
+ // Iterate through the monsters list checking for proximity to party
for (uint idx = 0; idx < map._mobData._monsters.size(); ++idx) {
MazeMonster &monster = map._mobData._monsters[idx];
@@ -3309,7 +3316,7 @@ void InterfaceScene::setOutdoorsMonsters() {
_outdoorList[45]._x = -16;
}
- for (int idx = 0; idx < 26; ++idx) {
+ for (int idx = 0; idx < ATTACK_MONSTERS_COUNT; ++idx) {
DrawStruct &ds = _outdoorList[Res.OUTDOOR_MONSTER_INDEXES[idx]];
if (ds._frame != -1) {