[Scummvm-git-logs] scummvm master -> 02606937eb1fd88193c09585997c7159018165d3

dreammaster dreammaster at scummvm.org
Sat Dec 9 04:32:47 CET 2017


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
02606937eb XEEN: Cleanup and fix flags for setOutdoorsMonsters


Commit: 02606937eb1fd88193c09585997c7159018165d3
    https://github.com/scummvm/scummvm/commit/02606937eb1fd88193c09585997c7159018165d3
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2017-12-08T22:32:37-05:00

Commit Message:
XEEN: Cleanup and fix flags for setOutdoorsMonsters

Changed paths:
    engines/xeen/interface_scene.cpp


diff --git a/engines/xeen/interface_scene.cpp b/engines/xeen/interface_scene.cpp
index 37382b9..c9dd534 100644
--- a/engines/xeen/interface_scene.cpp
+++ b/engines/xeen/interface_scene.cpp
@@ -480,8 +480,7 @@ void InterfaceScene::drawOutdoorsScene() {
 				if (ds2._scale == 0x8000) {
 					ds2._x /= 3;
 					ds2._y = 60;
-				}
-				else {
+				} else {
 					ds2._y = 73;
 				}
 
@@ -3316,14 +3315,13 @@ void InterfaceScene::setOutdoorsMonsters() {
 		if (ds._frame != -1) {
 			ds._flags &= ~0xfff;
 
-			// TODO: Double-check.. this section looks *weird*
+			// Use the frame number as an index to the correct monster,
+			// and replace the frame number with the monster's current frame
 			MazeMonster &monster = map._mobData._monsters[ds._frame];
-			MonsterStruct &monsterData = *monster._monsterData;
-
 			ds._frame = monster._frame;
 
 			if (monster._effect2) {
-				ds._flags = Res.MONSTER_EFFECT_FLAGS[monster._effect2 - 1][monster._effect3];
+				ds._flags |= Res.MONSTER_EFFECT_FLAGS[monster._effect2 - 1][monster._effect3];
 			}
 
 			if (monster._frame > 7) {
@@ -3335,13 +3333,13 @@ void InterfaceScene::setOutdoorsMonsters() {
 
 			ds._y = Res.OUTDOOR_MONSTERS_Y[idx];
 
+			MonsterStruct &monsterData = *monster._monsterData;
 			if (monsterData._flying) {
 				ds._x += Res.COMBAT_FLOAT_X[_combatFloatCounter];
 				ds._y += Res.COMBAT_FLOAT_Y[_combatFloatCounter];
 			}
 		}
 	}
-	// TODO
 }
 
 void InterfaceScene::setOutdoorsObjects() {





More information about the Scummvm-git-logs mailing list