[Scummvm-git-logs] scummvm master -> e82490b84204d8bdbd817e6d0190449e9684958f

dreammaster noreply at scummvm.org
Mon Nov 18 05:50:54 UTC 2024


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

Summary:
6759b4543e M4: RIDDLE: Fixes for Wolf interaction, stepladder and edger
0c8eef840f M4: RIDDLE: Fixes for talking to Danzig travel agent
e82490b842 M4: RIDDLE: Fix accesses to flags array


Commit: 6759b4543e441921a3f96c6f153a0fda3e4d3226
    https://github.com/scummvm/scummvm/commit/6759b4543e441921a3f96c6f153a0fda3e4d3226
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2024-11-17T21:50:46-08:00

Commit Message:
M4: RIDDLE: Fixes for Wolf interaction, stepladder and edger

Changed paths:
    engines/m4/riddle/rooms/section4/room402.cpp
    engines/m4/riddle/rooms/section4/room403.cpp
    engines/m4/riddle/rooms/section4/room403.h
    engines/m4/riddle/rooms/section4/room404.cpp


diff --git a/engines/m4/riddle/rooms/section4/room402.cpp b/engines/m4/riddle/rooms/section4/room402.cpp
index af75fcbcbb8..bf47ac2884d 100644
--- a/engines/m4/riddle/rooms/section4/room402.cpp
+++ b/engines/m4/riddle/rooms/section4/room402.cpp
@@ -149,7 +149,7 @@ void Room402::init() {
 
 			case 408:
 				ws_demand_location(517, 239, 3);
-				ws_walk(510, 260, 0, 50, 8);
+				ws_walk(510, 260, nullptr, 50, 8);
 				break;
 
 			default:
@@ -342,17 +342,17 @@ void Room402::daemon() {
 		sendWSMessage_110000(32);
 		break;
 
-	case 31:
+	case 32:
 		digi_play("402r29", 1, 255, 33);
 		sendWSMessage_120000(-1);
 		break;
 
-	case 32:
+	case 33:
 		sendWSMessage_110000(-1);
 		digi_play("402w09", 1, 255, 34);
 		break;
 
-	case 33:
+	case 34:
 		sendWSMessage_150000(35);
 		break;
 
diff --git a/engines/m4/riddle/rooms/section4/room403.cpp b/engines/m4/riddle/rooms/section4/room403.cpp
index af33b80bd0a..4a5e91836c5 100644
--- a/engines/m4/riddle/rooms/section4/room403.cpp
+++ b/engines/m4/riddle/rooms/section4/room403.cpp
@@ -71,7 +71,7 @@ void Room403::init() {
 		_ripleyShould = 0;
 		_wolfMode = 0;
 		_wolfShould = 0;
-		_val10 = 0;
+		_ladderMode = 0;
 		_sound1.clear();
 		_val12 = 0;
 
@@ -133,7 +133,7 @@ void Room403::init() {
 
 		if (_G(flags)[V133] && !_G(flags)[GLB_TEMP_12] && _G(flags)[V131] != 403 &&
 				!inv_player_has("TURTLE") && !inv_player_has("EDGER")) {
-			_edger = series_place_sprite("ONE FRAME EDGER", 0, 0, 0, 0x100, 0xf00);
+			_edger = series_place_sprite("ONE FRAME EDGER", 0, 0, 0, 100, 0xf00);
 			hotspot_set_active("EDGER", true);
 		}
 
@@ -166,13 +166,13 @@ void Room403::init() {
 				}
 			}
 
-			if (_val10) {
+			if (_ladderMode) {
 				ws_demand_facing(11);
 				ws_hide_walker();
 				_ripOnLadder = TriggerMachineByHash(1, 1, 0, 0, 0, 0, 0, 0, 100, 0x100, 0,
 					triggerMachineByHashCallback, "RIP on ladder/plank");
 
-				switch (_val10) {
+				switch (_ladderMode) {
 				case 1:
 					_ripClimbsLadder = series_load("RIPLEY CLIMBS LADDER");
 					sendWSMessage_10000(1, _ripOnLadder, _ripClimbsLadder, 52, 52, -1,
@@ -431,7 +431,7 @@ void Room403::daemon() {
 				break;
 
 			case 1209:
-				_val10 = 1;
+				_ladderMode = 1;
 				player_set_commands_allowed(true);
 				break;
 
@@ -471,7 +471,7 @@ void Room403::daemon() {
 				ws_unhide_walker();
 				_ventClosed = series_show("SPRITE OF VENT CLOSED", 0x600, 16);
 				series_unload(_ripClimbsLadder);
-				_val10 = 0;
+				_ladderMode = 0;
 				player_set_commands_allowed(true);
 				break;
 
@@ -479,6 +479,7 @@ void Room403::daemon() {
 				player_set_commands_allowed(false);
 				sendWSMessage_10000(1, _ripOnLadder, _ripClimbsLadder, 53, 59, 103,
 					_ripClimbsLadder, 59, 59, 0);
+				_ripleyShould = 1222;
 				break;
 
 			case 1222:
@@ -488,6 +489,11 @@ void Room403::daemon() {
 				_ripleyShould = 1223;
 				break;
 
+			case 1223:
+				_ladderMode = 2;
+				player_set_commands_allowed(true);
+				break;
+
 			case 1230:
 				player_set_commands_allowed(false);
 				sendWSMessage_10000(1, _ripOnLadder, _ripClimbsLadder, 74, 69, 103,
@@ -537,7 +543,7 @@ void Room403::daemon() {
 				break;
 
 			case 1303:
-				_val10 = 3;
+				_ladderMode = 3;
 				player_set_commands_allowed(true);
 				break;
 
@@ -553,7 +559,7 @@ void Room403::daemon() {
 				terminateMachineAndNull(_ripOnLadder);
 				ws_unhide_walker();
 				series_unload(_ripLegUp);
-				_val10 = 0;
+				_ladderMode = 0;
 
 				if (_G(flags)[V125] == 3)
 					kernel_timing_trigger(1, 442);
@@ -592,9 +598,9 @@ void Room403::daemon() {
 				if (_G(flags)[V125]) {
 					hotspot_set_active("GRATE", false);
 					hotspot_set_active("TURTLE TREAT", true);
-					_val10 = 5;
+					_ladderMode = 5;
 				} else {
-					_val10 = 4;
+					_ladderMode = 4;
 				}
 
 				player_set_commands_allowed(true);
@@ -654,7 +660,7 @@ void Room403::daemon() {
 					sendWSMessage_10000(1, _ripOnLadder, _ripTurtle, 29, 52, 103,
 						_ripTurtle, 52, 52, 0);
 					_G(flags)[V125] = 1;
-					_val10 = 5;
+					_ladderMode = 5;
 
 					hotspot_set_active("GRATE", false);
 					hotspot_set_active("TURTLE TREATS", true);
@@ -680,7 +686,7 @@ void Room403::daemon() {
 				break;
 
 			case 1412:
-				if (_val10 != 5) {
+				if (_ladderMode != 5) {
 					digi_play("403r50", 1, 255, 103);
 				} else if (_G(flags)[V125] == 1) {
 					digi_play("403r51", 1, 255, 103);
@@ -700,7 +706,7 @@ void Room403::daemon() {
 
 			case 1414:
 				inv_give_to_player("TURTLE");
-				_val10 = 4;
+				_ladderMode = 4;
 				hotspot_set_active("GRATE", true);
 				hotspot_set_active("TURTLE TREAT", false);
 				player_set_commands_allowed(true);
@@ -1439,7 +1445,7 @@ void Room403::pre_parser() {
 	bool enterFlag = player_said("enter");
 	bool useFlag = player_said_any("push", "pull", "gear", "open", "close");
 
-	if (_val10 == 5) {
+	if (_ladderMode == 5) {
 		intr_cancel_sentence();
 		_G(player).need_to_walk = false;
 		_G(player).ready_to_walk = true;
@@ -1466,7 +1472,7 @@ void Room403::pre_parser() {
 		return;
 	}
 
-	if (_val10 == 4) {
+	if (_ladderMode == 4) {
 		intr_cancel_sentence();
 		_G(player).need_to_walk = false;
 		_G(player).ready_to_walk = true;
@@ -1491,7 +1497,7 @@ void Room403::pre_parser() {
 		return;
 	}
 
-	if (_val10 == 3) {
+	if (_ladderMode == 3) {
 		_G(player).need_to_walk = false;
 		_G(player).ready_to_walk = true;
 		_G(player).waiting_for_walk = false;
@@ -1514,7 +1520,7 @@ void Room403::pre_parser() {
 		return;
 	}
 
-	if (_val10 == 2) {
+	if (_ladderMode == 2) {
 		intr_cancel_sentence();
 		_G(player).need_to_walk = false;
 		_G(player).ready_to_walk = true;
@@ -1531,7 +1537,7 @@ void Room403::pre_parser() {
 		kernel_timing_trigger(1, 102, KT_DAEMON, KT_PARSE);
 	}
 
-	if (_val10 == 1) {
+	if (_ladderMode == 1) {
 		_G(player).need_to_walk = false;
 		_G(player).ready_to_walk = true;
 		_G(player).waiting_for_walk = false;
@@ -1898,7 +1904,7 @@ void Room403::edgerBell() {
 		_bell = series_place_sprite("ONE FRAME BELL", 0, 0, 0, 100, 0xf00);
 		series_unload(_ripRingsBell);
 
-		if (_G(flags)[V119] >= 7) {
+		if (_G(flags)[V119] < 7) {
 			ws_walk_load_shadow_series(S4_SHADOW_DIRS, S4_SHADOW_NAMES);
 			ws_walk_load_walker_series(S4_NORMAL_DIRS, S4_NORMAL_NAMES);
 			_wolfWalker = triggerMachineByHash_3000(8, 8, *S4_NORMAL_DIRS, *S4_SHADOW_DIRS, 620, 323, 3,
@@ -2288,7 +2294,7 @@ void Room403::syncGame(Common::Serializer &s) {
 	s.syncAsSint32LE(_val1);
 	s.syncAsSint32LE(_val3);
 	s.syncAsSint32LE(_val5);
-	s.syncAsSint32LE(_val10);
+	s.syncAsSint32LE(_ladderMode);
 }
 
 } // namespace Rooms
diff --git a/engines/m4/riddle/rooms/section4/room403.h b/engines/m4/riddle/rooms/section4/room403.h
index e49bf3b7886..f70f286f689 100644
--- a/engines/m4/riddle/rooms/section4/room403.h
+++ b/engines/m4/riddle/rooms/section4/room403.h
@@ -40,7 +40,7 @@ private:
 	int _ripleyShould = 0;
 	int _wolfMode = 0;
 	int _wolfShould = 0;
-	int _val10 = 0;
+	int _ladderMode = 0;
 	Common::String _sound1;
 	int _val12 = 0;
 	int _val13 = 0;
diff --git a/engines/m4/riddle/rooms/section4/room404.cpp b/engines/m4/riddle/rooms/section4/room404.cpp
index ee1b625f0b9..d8425d9cf6d 100644
--- a/engines/m4/riddle/rooms/section4/room404.cpp
+++ b/engines/m4/riddle/rooms/section4/room404.cpp
@@ -109,11 +109,15 @@ void Room404::init() {
 		_machine1 = triggerMachineByHash_3000(8, 10, *NORMAL_DIRS, *SHADOW_DIRS,
 			380, 421, 1, triggerMachineByHashCallback3000, "BUTLER_walker");
 
-		if (!_G(kittyScreaming) || !player_been_here(404)) {
+		if (_G(kittyScreaming) || player_been_here(404)) {
+			sendWSMessage_10000(_machine1, 410, 332, 1, 42, 1);
+			kernel_timing_trigger(1, 40);
+		} else {
 			sendWSMessage_10000(_machine1, 410, 332, 1, 21, 1);
 			kernel_timing_trigger(120, 20);
-			digi_play("404_s01", 2);
 		}
+
+		digi_play("404_s01", 2);
 		break;
 	}
 }


Commit: 0c8eef840fb7e1a0df48dc6261ae7d7fe7e9659c
    https://github.com/scummvm/scummvm/commit/0c8eef840fb7e1a0df48dc6261ae7d7fe7e9659c
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2024-11-17T21:50:46-08:00

Commit Message:
M4: RIDDLE: Fixes for talking to Danzig travel agent

Changed paths:
    engines/m4/riddle/rooms/section4/room401.cpp


diff --git a/engines/m4/riddle/rooms/section4/room401.cpp b/engines/m4/riddle/rooms/section4/room401.cpp
index f52b9313809..e8cbec1ba69 100644
--- a/engines/m4/riddle/rooms/section4/room401.cpp
+++ b/engines/m4/riddle/rooms/section4/room401.cpp
@@ -290,7 +290,7 @@ void Room401::daemon() {
 		_ctr1 = 0;
 
 		_G(kernel).trigger_mode = KT_PARSE;
-		digi_play(conv_sound_to_play(), 255, 1);
+		digi_play(conv_sound_to_play(), 1, 255, 1);
 		_G(kernel).trigger_mode = KT_DAEMON;
 		break;
 
@@ -502,6 +502,7 @@ void Room401::daemon() {
 		break;
 
 	case 515:
+		ws_hide_walker();
 		_ripMach = TriggerMachineByHash(1, 1, 0, 0, 0, 0, 0, 0, 100, 0x400, 0,
 			triggerMachineByHashCallback, "rip");
 		sendWSMessage_10000(1, _ripMach, _401rp01, 1, 11, 516, _401rp01, 11, 11, 0);


Commit: e82490b84204d8bdbd817e6d0190449e9684958f
    https://github.com/scummvm/scummvm/commit/e82490b84204d8bdbd817e6d0190449e9684958f
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2024-11-17T21:50:46-08:00

Commit Message:
M4: RIDDLE: Fix accesses to flags array

Changed paths:
    engines/m4/riddle/rooms/section2/room204.cpp
    engines/m4/riddle/rooms/section2/room205.cpp
    engines/m4/riddle/rooms/section2/room207.cpp
    engines/m4/riddle/rooms/section8/room803.cpp
    engines/m4/riddle/rooms/section8/room805.cpp
    engines/m4/riddle/rooms/section8/room806.cpp


diff --git a/engines/m4/riddle/rooms/section2/room204.cpp b/engines/m4/riddle/rooms/section2/room204.cpp
index 24ecf2307eb..c98117d8807 100644
--- a/engines/m4/riddle/rooms/section2/room204.cpp
+++ b/engines/m4/riddle/rooms/section2/room204.cpp
@@ -48,8 +48,8 @@ void Room204::preload() {
 void Room204::init() {
 	digi_preload("950_s04", -1);
 	digi_play_loop("950_s04", 3, 70, -1, -1);
-	if (!_G(flags[V070]))
-		_G(flags[V078]) = 0;
+	if (!_G(flags)[V070])
+		_G(flags)[V078] = 0;
 
 	if (_G(game).previous_room != KERNEL_RESTORING_GAME) {
 		_field4 = 0;
@@ -57,10 +57,10 @@ void Room204::init() {
 		_field184 = 0;
 		_field188 = 0;
 
-		if (!player_been_here(205) && (!_G(flags[V056]) || _G(flags[V049]) == 1)) {
+		if (!player_been_here(205) && (!_G(flags)[V056] || _G(flags)[V049] == 1)) {
 			_field4 = 1;
 			initWalkerSeries();
-			_G(flags[V049]) = 0;
+			_G(flags)[V049] = 0;
 		}
 	}
 
@@ -134,7 +134,7 @@ void Room204::init() {
 		_fieldDC = 0;
 		_field40 = 0;
 		player_set_commands_allowed(false);
-		if (!_G(flags[V070])) {
+		if (!_G(flags)[V070]) {
 			digi_preload("204_S02", -1);
 			_mcMach = triggerMachineByHash_3000(8, 4, *S8_SHADOW_DIRS2, *S8_SHADOW_DIRS1, 1864, 334, 9, Walker::player_walker_callback, "mc walker room 204");
 			DisposePath(_mcMach->walkPath);
@@ -143,16 +143,16 @@ void Room204::init() {
 			ws_demand_location(_G(my_walker), 1864, 334);
 			ws_demand_facing(_G(my_walker), 3);
 
-			_G(flags[V070]) = 1;
-			_G(flags[V068]) = 1;
-			_G(flags[V078]) = 1;
+			_G(flags)[V070] = 1;
+			_G(flags)[V068] = 1;
+			_G(flags)[V078] = 1;
 
 			int32 status;
 			ScreenContext *game_buff_ptr = vmng_screen_find(_G(gameDrawBuff), &status);
 			MoveScreenDelta(game_buff_ptr, -1280, 0);
 			kernel_timing_trigger(1, 500, nullptr);
 		} else {
-			_G(flags[V068]) = 1;
+			_G(flags)[V068] = 1;
 			if (!_field4) {
 				ws_demand_location(_G(my_walker), 1864, 334);
 				ws_demand_facing(_G(my_walker), 9);
@@ -160,9 +160,9 @@ void Room204::init() {
 				ScreenContext *game_buff_ptr = vmng_screen_find(_G(gameDrawBuff), &status);
 				MoveScreenDelta(game_buff_ptr, -1280, 0);
 				kernel_timing_trigger(1, 708, nullptr);
-			} else if (_G(flags[V049]) == 1) {
-				_G(flags[V049]) = 0;
-				_G(flags[V078]) = 2;
+			} else if (_G(flags)[V049] == 1) {
+				_G(flags)[V049] = 0;
+				_G(flags)[V078] = 2;
 				ws_demand_location(_G(my_walker), 1864, 334);
 				ws_demand_facing(_G(my_walker), 9);
 				_mcMach = triggerMachineByHash_3000(8, 4, *S8_SHADOW_DIRS2, *S8_SHADOW_DIRS1, 1864, 334, 4, Walker::player_walker_callback, "mc walker room 204");
@@ -583,7 +583,7 @@ void Room204::parser() {
 		} // (ecx == 1)
 
 		if (player_said("walk through") && _field4 == 1) {
-			if (_G(flags[V056]) == 1) {
+			if (_G(flags)[V056] == 1) {
 				player_set_commands_allowed(false);
 				kernel_timing_trigger(2, 609, nullptr);
 			} else {
@@ -1943,7 +1943,7 @@ void Room204::daemon() {
 		_G(kernel).trigger_mode = KT_PARSE;
 
 		conv_load("conv204a", 10, 10, 747);
-		conv_export_value(conv_get_handle(), _G(flags[V071]) ? 0 : 1, 0);
+		conv_export_value(conv_get_handle(), _G(flags)[V071] ? 0 : 1, 0);
 		conv_play(conv_get_handle());
 
 		break;
@@ -1954,7 +1954,7 @@ void Room204::daemon() {
 			kernel_timing_trigger(1, 714, nullptr);
 
 			_field164 = 0;
-			_G(flags[V056]) = 1;
+			_G(flags)[V056] = 1;
 		} else if (_field168 == 1) {
 			player_set_commands_allowed(false);
 			_field168 = 0;
@@ -2171,7 +2171,7 @@ void Room204::daemon() {
 		break;
 
 	case 637:
-		if (_G(flags[V056]) == 1) {
+		if (_G(flags)[V056] == 1) {
 			hotspot_set_active(_G(currentSceneDef).hotspots, "MALLET", true);
 			player_set_commands_allowed(true);
 		} else {
diff --git a/engines/m4/riddle/rooms/section2/room205.cpp b/engines/m4/riddle/rooms/section2/room205.cpp
index 1dbfbd56a26..30564fc446d 100644
--- a/engines/m4/riddle/rooms/section2/room205.cpp
+++ b/engines/m4/riddle/rooms/section2/room205.cpp
@@ -56,7 +56,7 @@ void Room205::init() {
 	_ripGetsShotSeries = series_load("RIP GETS SHOT", -1, nullptr);
 	_205GunFireSeries = series_load("205 gun fire", -1, nullptr);
 
-	if (!_G(flags[V029])) {
+	if (!_G(flags)[V029]) {
 		digi_preload("205R01", -1);
 		digi_preload("205M02", -1);
 
@@ -78,17 +78,17 @@ void Room205::init() {
 	series_show("205PRIES", 3840, 16, -1, -1, 0, 100, 0, 0);
 	_205LeftEntranceTabletMach = series_show("205 LEFT ENTRANCE TABLET", 257, 16, -1, -1, 0, 100, 0, 0);
 
-	if (!_G(flags[V028]))
+	if (!_G(flags)[V028])
 		hotspot_set_active(_G(currentSceneDef).hotspots, "MASTER LU'S TABLET", false);
 
-	if (_G(flags[V024])) {
+	if (_G(flags)[V024]) {
 		_fieldE0 = 1;
 		series_show("205GONG", 1025, 16, -1, -1, 0, 100, 0, 0);
 		hotspot_set_active(_G(currentSceneDef).hotspots, "GUN", false);
 		digi_preload("205_s34", -1);
 		digi_play_loop("205_s34", 3, 25, -1, -1);
 
-		if (!_G(flags[V028]))
+		if (!_G(flags)[V028])
 			kernel_timing_trigger(7200, 1055, nullptr);
 	} else {
 		_fieldE0 = 0;
@@ -98,29 +98,29 @@ void Room205::init() {
 		digi_preload("205_s34", -1);
 		digi_play_loop("205_s34", 3, 166, -1, -1);
 
-		if (_G(flags[V029]))
+		if (_G(flags)[V029])
 			_205GunInBrazierMach = series_show("205 gun in brazier", 768, 16, -1, -1, 0, 100, 0, 0);
 	}
 
 	if (inv_player_has("CHARCOAL")) {
-		if (_G(flags[V029]))
+		if (_G(flags)[V029])
 			hotspot_set_active(_G(currentSceneDef).hotspots, "CHARCOAL", false);
-	} else if (_G(flags[V029]))
+	} else if (_G(flags)[V029])
 		_205CharcoalSpriteMach = series_show("205 CHARCOAL SPRITE", 3840, 16, -1, -1, 0, 100, 0, 0);
 
-	if (_G(flags[V025])) {
+	if (_G(flags)[V025]) {
 		series_show("205 MALLET LAYED ON GONG", 1024, 16, -1, -1, 0, 100, 0, 0);
 		hotspot_set_active(_G(currentSceneDef).hotspots, "GAP WITH JOURNAL", false);
 	} else {
 		hotspot_set_active(_G(currentSceneDef).hotspots, "MALLET ", false);
 	}
 
-	if (_G(flags[V029])) {
+	if (_G(flags)[V029]) {
 		series_show("205BITS", 3846, 16, -1, -1, 0, 100, 0, 0);
 		kernel_timing_trigger(imath_ranged_rand(1200, 1800), 901, nullptr);
 	}
 
-	if (_G(flags[V028])) {
+	if (_G(flags)[V028]) {
 		_205MeiStanderMach = series_show("205 MEI STANDER", 3845, 16, -1, -1, 0, 100, 0, 0);
 		series_show("205 TABLETS DOWN", 3840, 16, -1, -1, 0, 100, 0, 0);
 		series_show("205GLASS", 3840, 16, -1, -1, 0, 100, 0, 0);
@@ -138,12 +138,12 @@ void Room205::init() {
 		hotspot_set_active(_G(currentSceneDef).hotspots, "MEI CHEN ", false);
 	}
 
-	_G(flags[V027]) = 0;
+	_G(flags)[V027] = 0;
 	_fieldDC = 0;
 
 	if (_G(game).previous_room != KERNEL_RESTORING_GAME) {
 		player_set_commands_allowed(false);
-		if (_G(flags[V029])) {
+		if (_G(flags)[V029]) {
 			ws_demand_facing(_G(my_walker), 11);
 			ws_demand_location(_G(my_walker), 320, 480);
 			ws_walk(_G(my_walker), 317, 356, nullptr, 500, 11, true);
@@ -161,18 +161,18 @@ void Room205::init() {
 		}
 	}
 
-	if (!_G(flags[V028]))
+	if (!_G(flags)[V028])
 		kernel_timing_trigger(1, 1000, nullptr);
 }
 
 void Room205::pre_parser() {
-	if (player_said("GEAR", "RIGHT TABLET") && _G(flags[V022]) && !_G(flags[V024])) {
+	if (player_said("GEAR", "RIGHT TABLET") && _G(flags)[V022] && !_G(flags)[V024]) {
 		_G(player).need_to_walk = false;
 		_G(player).ready_to_walk = true;
 		_G(player).waiting_for_walk = false;
 	}
 
-	if (player_said("EXIT") && _G(flags[V025])) {
+	if (player_said("EXIT") && _G(flags)[V025]) {
 		_G(player).need_to_walk = false;
 		_G(player).ready_to_walk = true;
 		_G(player).waiting_for_walk = false;
@@ -185,7 +185,7 @@ void Room205::parser() {
 	bool gearFl = player_said("gear");
 
 	if (player_said("GONG", "BRAZIER") || player_said("GONG", "GUN")) {
-		if (!_G(flags[V024])) {
+		if (!_G(flags)[V024]) {
 			switch (_G(kernel).trigger) {
 			case -1:
 				_fieldDC = 1;
@@ -216,7 +216,7 @@ void Room205::parser() {
 
 			case 7:
 				player_set_commands_allowed(true);
-				_G(flags[V024]) = 1;
+				_G(flags)[V024] = 1;
 				_G(kernel).trigger_mode = KT_DAEMON;
 				kernel_timing_trigger(7200, 1055);
 				_fieldDC = 0;
@@ -228,7 +228,7 @@ void Room205::parser() {
 			}
 		}
 	} // if (player_said("GONG", "BRAZIER") || player_said("GONG", "GUN"))
-	else if (player_said("MALLET", "GAP WITH JOURNAL") && _G(flags[V028]) && _G(flags[V024])) {
+	else if (player_said("MALLET", "GAP WITH JOURNAL") && _G(flags)[V028] && _G(flags)[V024]) {
 		switch (_G(kernel).trigger) {
 		case -1:
 			player_set_commands_allowed(false);
@@ -272,7 +272,7 @@ void Room205::parser() {
 			series_show("205 MALLET LAYED ON GONG", 1024, 16, -1, -1, 0, 100, 0, 0);
 			hotspot_set_active(_G(currentSceneDef).hotspots, "GAP WITH JOURNAL", false);
 			hotspot_set_active(_G(currentSceneDef).hotspots, "MALLET ", true);
-			_G(flags[V025]) = 1;
+			_G(flags)[V025] = 1;
 			inv_give_to_player("JOURNAL");
 			inv_move_object("MALLET", 999);
 
@@ -282,8 +282,8 @@ void Room205::parser() {
 			break;
 
 		}
-	} // if (player_said("MALLET", "GAP WITH JOURNAL") && _G(flags[V028]) && _G(flags[V024]))
-	else if (player_said("CHARCOAL", "JOURNAL") && _G(flags[V025]) && inv_player_has("CHARCOAL")) {
+	} // if (player_said("MALLET", "GAP WITH JOURNAL") && _G(flags)[V028] && _G(flags)[V024])
+	else if (player_said("CHARCOAL", "JOURNAL") && _G(flags)[V025] && inv_player_has("CHARCOAL")) {
 		switch (_G(kernel).trigger) {
 		case -1:
 			player_set_commands_allowed(false);
@@ -355,7 +355,7 @@ void Room205::parser() {
 			break;
 
 		case 20:
-			_G(flags[V290]) = 1;
+			_G(flags)[V290] = 1;
 			disable_player_commands_and_fade_init(21);
 
 			break;
@@ -371,14 +371,14 @@ void Room205::parser() {
 			break;
 		}
 
-	} // if (player_said("CHARCOAL", "JOURNAL") && _G(flags[V025]) && inv_player_has("CHARCOAL"))
+	} // if (player_said("CHARCOAL", "JOURNAL") && _G(flags)[V025] && inv_player_has("CHARCOAL"))
 
 	else if (gearFl && player_said_any("TABLET", "TABLET "))
 		digi_play("205R30", 1, 255, -1, -1);
 	else if (gearFl && player_said("GONG "))
 		digi_play("205R64", 1, 255, -1, -1);
 	else if (gearFl && player_said("LEFT TABLET")) {
-		if (_G(flags[V028])) {
+		if (_G(flags)[V028]) {
 			digi_play("205r57", 1, 255, -1, -1);
 		} else {
 			switch (_G(kernel).trigger) {
@@ -417,9 +417,9 @@ void Room205::parser() {
 			case 7:
 				digi_stop(1);
 				digi_unload("205_S30");
-				_G(flags[V023]) = 1;
+				_G(flags)[V023] = 1;
 				_205LeftEntranceTabletMach = series_show("205 LEFT ENTRANCE TABLET", 257, 16, -1, -1, 0, 100, 0, 0);
-				if (_G (flags[V022])) {
+				if (_G(flags)[V022]) {
 					digi_preload("205R31");
 					digi_play("205R31", 1, 255, 9, -1);
 				} else {
@@ -461,7 +461,7 @@ void Room205::parser() {
 			break;
 
 		case 1:
-			if (!_G(flags[V022]) && _fieldDC)
+			if (!_G(flags)[V022] && _fieldDC)
 				kernel_timing_trigger(60, 1, nullptr);
 			else
 				kernel_timing_trigger(10, 3, nullptr);
@@ -469,14 +469,14 @@ void Room205::parser() {
 			break;
 
 		case 3:
-			if (!_G(flags[V022])) {
+			if (!_G(flags)[V022]) {
 				_fieldDC = 1;
 				digi_preload("205_S30", -1);
 				digi_preload("205R34", -1);
 				ws_unhide_walker(_G(my_walker));
 				series_stream("205RTEST", 7, 0, 7);
 				kernel_timing_trigger(240, 5, nullptr);
-			} else if (!_G(flags[V024])) {
+			} else if (!_G(flags)[V024]) {
 				ws_walk(_G(my_walker), 450, 351, nullptr, 15, 1, true);
 				intr_cancel_sentence();
 			} else {
@@ -497,7 +497,7 @@ void Room205::parser() {
 		case 7:
 			digi_stop(1);
 			digi_unload("205_S30");
-			if (_G(flags[V023])) {
+			if (_G(flags)[V023]) {
 				digi_preload("205R32");
 				digi_play("205R32", 1, 255, 9, -1);
 			} else {
@@ -505,7 +505,7 @@ void Room205::parser() {
 				digi_play("205R31", 1, 255, 9, -1);
 			}
 
-			_G(flags[V022]) = 1;
+			_G(flags)[V022] = 1;
 			ws_unhide_walker(_G(my_walker));
 			break;
 
@@ -567,7 +567,7 @@ void Room205::parser() {
 	} // if (edi && player_said("RIGHT TABLET"))
 
 	else if (takeFl && player_said("CHARCOAL")) {
-		if (!_G(flags[V028])) {
+		if (!_G(flags)[V028]) {
 			digi_play("205r26", 1, 255, -1, -1);
 		} else {
 			switch (_G(kernel).trigger) {
@@ -607,7 +607,7 @@ void Room205::parser() {
 		}
 	} // if (esi && player_said("CHARCOAL"))
 
-	else if (takeFl && player_said("GAP WITH JOURNAL") && !_G(flags[V028]))
+	else if (takeFl && player_said("GAP WITH JOURNAL") && !_G(flags)[V028])
 		digi_play("205r27", 1, 255, -1, -1);
 	else if (takeFl && player_said_any("TABLET", "TABLET ", "LEFT TABLET", "RIGHT TABLET"))
 		digi_play("205r28", 1, 255, -1, -1);
@@ -621,7 +621,7 @@ void Room205::parser() {
 		digi_play("205r54", 1, 255, -1, -1);
 	else if (takeFl && player_said("MALLET "))
 		digi_play("205r55", 1, 255, -1, -1);
-	else if (lookFl && player_said("JOURNAL") && _G(flags[V025]) && !_showMeiTalkFl) {
+	else if (lookFl && player_said("JOURNAL") && _G(flags)[V025] && !_showMeiTalkFl) {
 		switch (_G(kernel).trigger) {
 		case -1:
 			player_set_commands_allowed(false);
@@ -691,25 +691,25 @@ void Room205::parser() {
 			break;
 
 		}
-	} // if (ecx && player_said("JOURNAL") && _G(flags[V025]) && !_showMeiTalkFl)
+	} // if (ecx && player_said("JOURNAL") && _G(flags)[V025] && !_showMeiTalkFl)
 
 	else if (lookFl && player_said("BRAZIER"))
 		digi_play("205r66", 1, 255, -1, -1);
 	else if (lookFl && player_said("ARM"))
 		digi_play("205r12a", 1, 255, -1, -1);
 	else if (lookFl && player_said("GUN")) {
-		if (!_G(flags[V024]))
+		if (!_G(flags)[V024])
 			digi_play("205R15", 1, 255, -1, -1);
-		else if (!_G(flags[V028]))
+		else if (!_G(flags)[V028])
 			digi_play("205R16", 1, 255, -1, -1);
 		else
 			digi_play("205r48", 1, 255, -1, -1);
 	} // if (ecx && player_said("GUN"))
 
 	else if (lookFl && player_said("GONG ")) {
-		if (_G(flags[V028]))
+		if (_G(flags)[V028])
 			digi_play("205R48", 1, 255, -1, -1);
-		else if (!_G(flags[V024]))
+		else if (!_G(flags)[V024])
 			digi_play("205R15", 1, 255, -1, -1);
 		else
 			digi_play("205R16", 1, 255, -1, -1);
@@ -741,14 +741,14 @@ void Room205::parser() {
 	else if (lookFl && player_said_any("TABLET", "TABLET "))
 		digi_play("205R18", 1, 255, -1, -1);
 	else if (lookFl && player_said_any("RIGHT TABLET", "LEFT TABLET")) {
-		if (_G(flags[V028]))
+		if (_G(flags)[V028])
 			digi_play("205R18", 1, 255, -1, -1);
 		else
 			digi_play("205R19", 1, 255, -1, -1);
 	} else if (lookFl && player_said("FALLEN TABLETS"))
 		digi_play("205R49", 1, 255, -1, -1);
 	else if (lookFl && player_said_any("MEI CHEN", "MEI CHEN ")) {
-		if (_G(flags[V028]))
+		if (_G(flags)[V028])
 			digi_play("205r50", 1, 255, -1, -1);
 		else
 			digi_play("205r20", 1, 255, -1, -1);
@@ -759,24 +759,24 @@ void Room205::parser() {
 	else if (lookFl && player_said("GLASSES"))
 		digi_play("205r51", 1, 255, -1, -1);
 	else if (lookFl && player_said("GAP WITH JOURNAL")) {
-		if (_G(flags[V028]))
+		if (_G(flags)[V028])
 			digi_play("205R52", 1, 255, -1, -1);
 		else
 			digi_play("205r27", 1, 255, -1, -1);
 	} else if (lookFl && player_said("MALLET "))
 		digi_play("205r55", 1, 255, -1, -1);
 	else if (lookFl && player_said(" ")) {
-		if (_G(flags[V028]))
+		if (_G(flags)[V028])
 			digi_play("205R47", 1, 255, -1, -1);
 		else
 			digi_play("205R14", 1, 255, -1, -1);
 	} else if (player_said("journal") && !takeFl && !lookFl) {
-		if (_G(flags[V028]))
+		if (_G(flags)[V028])
 			digi_play("205R43", 1, 255, -1, -1);
 		else
 			digi_play("205R42", 1, 255, -1, -1);
 	} else if (player_said("EXIT")) {
-		if (_G(flags[V025]))
+		if (_G(flags)[V025])
 			digi_play("205r59", 1, 255, -1, -1);
 		else {
 			switch (_G(kernel).trigger) {
@@ -1039,7 +1039,7 @@ void Room205::daemon() {
 
 	case 533:
 		series_play("205ALL0", 3840, 0, 534, 5, 0, 100, 0, 0, 66, -1);
-		_G(flags[V289]) = 1;
+		_G(flags)[V289] = 1;
 		digi_play("205R13", 1, 255, 538, -1);
 
 		break;
@@ -1598,7 +1598,7 @@ void Room205::daemon() {
 	case 901:
 		if (_fieldE0 || !player_commands_allowed()) {
 			kernel_timing_trigger(60, 901, nullptr);
-		} else if (_G(flags[V024])) {
+		} else if (_G(flags)[V024]) {
 			digi_stop(1);
 
 			switch (imath_ranged_rand(1, 2)) {
@@ -1620,7 +1620,7 @@ void Room205::daemon() {
 			digi_stop(1);
 			series_play("205 gun fire", 768, 0, -1, 3, 0, 100, 0, 0, 0,-1);
 
-			switch (_G(flags[V027])) {
+			switch (_G(flags)[V027]) {
 			case 0:
 				digi_play("205_s26", 1, 255, -1, -1);
 				kernel_timing_trigger(10, 902, nullptr);
@@ -1670,7 +1670,7 @@ void Room205::daemon() {
 
 	case 905:
 		_fieldDC = 0;
-		++_G(flags[V027]);
+		++_G(flags)[V027];
 		player_set_commands_allowed(true);
 		kernel_timing_trigger(imath_ranged_rand(1200, 1800), 901, nullptr);
 
@@ -1714,7 +1714,7 @@ void Room205::daemon() {
 		break;
 
 	case 1000:
-		_G(flags[V029]) = 1;
+		_G(flags)[V029] = 1;
 		midi_play("vines", 191, -1, -1, 949);
 		digi_preload("205_s09", -1);
 		digi_preload("205_s10", -1);
@@ -2272,7 +2272,7 @@ void Room205::daemon() {
 
 	case 1041:
 		ws_walk(_G(my_walker), 324, 252, nullptr, 1042, 11, true);
-		_G(flags[V028]) = 1;
+		_G(flags)[V028] = 1;
 
 		break;
 
diff --git a/engines/m4/riddle/rooms/section2/room207.cpp b/engines/m4/riddle/rooms/section2/room207.cpp
index c7f67979bd9..736889fe1c1 100644
--- a/engines/m4/riddle/rooms/section2/room207.cpp
+++ b/engines/m4/riddle/rooms/section2/room207.cpp
@@ -57,7 +57,7 @@ void Room207::preload() {
 }
 
 void Room207::init() {
-	if (_G(flags[V061]) == 0)
+	if (_G(flags)[V061] == 0)
 		kernel_load_variant("207lock1");
 
 	if (_G(game).previous_room != KERNEL_RESTORING_GAME) {
@@ -90,7 +90,7 @@ void Room207::init() {
 	}
 
 	_oneFrameMoneySpriteSeries = series_load("one frame money sprite", -1, nullptr);
-	if (_G(flags[V058]) == 0) {
+	if (_G(flags)[V058] == 0) {
 		_metalRimSeries = series_load("metal rim", -1, nullptr);
 		_sevenSpokesSeries = series_load("SEVEN spokes", -1, nullptr);
 		_woodenRimSeries = series_load("wooden rim", -1, nullptr);
@@ -132,11 +132,11 @@ void Room207::init() {
 		_rebusAmuletSeries = series_load("rebus amulet", -1, nullptr);
 		_rebusAmuletMach = series_show_sprite("rebus amulet", 0, 3840);
 
-		if (_G(flags[V063]) == 0)
+		if (_G(flags)[V063] == 0)
 			hotspot_set_active(_G(currentSceneDef).hotspots, "REBUS AMULET", false);
 	}
 
-	if (_G(flags[V061]) == 0) {
+	if (_G(flags)[V061] == 0) {
 		_peasantSquatTo9Series = series_load("peasant squat to 9", -1, nullptr);
 		_shadowPeskyFrom9ToSquatSeries = series_load("shadow pesky from 9 to squat", -1, nullptr);
 		_peskyRockLoopSeries = series_load("pesky rock loop", -1, nullptr);
@@ -179,7 +179,7 @@ void Room207::init() {
 	default:
 		ws_demand_location(_G(my_walker), 375, 347);
 		ws_demand_facing(_G(my_walker), 10);
-		if (_G(flags[V061]) == 0) {
+		if (_G(flags)[V061] == 0) {
 			player_set_commands_allowed(false);
 			_peasant3ToSquatSeries = series_load("peasant 3 to squat", -1, nullptr);
 			ws_walk_load_walker_series(S2_PEASANT_NORMAL_DIRS, S2_PEASANT_NORMAL_NAMES);
@@ -215,7 +215,7 @@ void Room207::pre_parser() {
 				player_set_commands_allowed(false);
 				_G(kernel).trigger_mode = KT_PARSE;
 				disable_player_commands_and_fade_init(203);
-				_G(flags[V067]) = 1;
+				_G(flags)[V067] = 1;
 			} else if (player_said("take", "METAL RIM") && inv_player_has("METAL RIM")) {
 				Common::strcpy_s(_G(player).verb, "take");
 				Common::strcpy_s(_G(player).noun, "SPLEEN");
@@ -241,7 +241,7 @@ void Room207::pre_parser() {
 				player_set_commands_allowed(false);
 				_G(kernel).trigger_mode = KT_PARSE;
 				disable_player_commands_and_fade_init(203);
-				_G(flags[V067]) = 1;
+				_G(flags)[V067] = 1;
 			} else if (player_said("take", "PIPES") && inv_player_has("LEAD PIPE")) {
 				Common::strcpy_s(_G(player).verb, "take");
 				Common::strcpy_s(_G(player).noun, "SPLEEN");
@@ -266,13 +266,13 @@ void Room207::pre_parser() {
 		}
 	} // if (_fieldAA)
 
-	if (ecx && player_said("PIPES") && inv_object_is_here("LEAD PIPE") && _G(flags[V061]) == 0) {
+	if (ecx && player_said("PIPES") && inv_object_is_here("LEAD PIPE") && _G(flags)[V061] == 0) {
 		_G(player).need_to_walk = false;
 		_G(kernel).trigger_mode = KT_PARSE;
 		kernel_timing_trigger(1, 1, nullptr);
 	}
 
-	if (ecx && player_said("REBUS AMULET") && inv_object_is_here("REBUS AMULET") && _G(flags[V061]) != 0) {
+	if (ecx && player_said("REBUS AMULET") && inv_object_is_here("REBUS AMULET") && _G(flags)[V061] != 0) {
 		_G(player).need_to_walk = false;
 		_G(kernel).trigger_mode = KT_PARSE;
 		kernel_timing_trigger(1, 1, nullptr);
@@ -303,7 +303,7 @@ void Room207::parser() {
 	bool useFlag = player_said_any("push", "pull", "gear", "open", "close");
 
 	if (lookFlag && player_said_any("anvil", "forge"))
-		_G(flags[V036] = 1);
+		_G(flags)[V036] = 1;
 
 	if (_G(kernel).trigger == 747) {
 		player_set_commands_allowed(false);
@@ -372,7 +372,7 @@ void Room207::parser() {
 			break;
 		}
 	} else if (player_said("give", "money")) {
-		if (_G(flags[V061]) != 0) {
+		if (_G(flags)[V061] != 0) {
 			switch (_G(kernel).trigger) {
 			case 1:
 				player_set_commands_allowed(false);
@@ -394,7 +394,7 @@ void Room207::parser() {
 				_ripTrekLowReachMach = series_ranged_play_xy("rip trek low reach pos2", 0, 2, 15, 15, _G(player_info).x, _G(player_info).y, _G(player_info).scale, 512, 300, -1, false);
 				inv_give_to_player("REBUS AMULET");
 				hotspot_set_active("REBUS AMULET", false);
-				if (_G(flags[V063]) == 0) {
+				if (_G(flags)[V063] == 0) {
 					kernel_examine_inventory_object("ping REBUS AMULET", _G(master_palette), 5, 1, 387, 250, 4, "207R04", -1);
 				} else {
 					kernel_examine_inventory_object("ping REBUS AMULET", _G(master_palette), 5, 1, 387, 250, 4, nullptr, -1);
@@ -540,7 +540,7 @@ void Room207::parser() {
 		}
 	} else if (takeFlag && player_said("junkpile")) {
 		digi_play("207r35a", 1);
-	} else if (takeFlag && player_said("REBUS AMULET") && _G(flags[V061]) != 0 && _G(kernel).trigger > 0 && _G(kernel).trigger < 9) {
+	} else if (takeFlag && player_said("REBUS AMULET") && _G(flags)[V061] != 0 && _G(kernel).trigger > 0 && _G(kernel).trigger < 9) {
 		switch (_G(kernel).trigger) {
 		case 1:
 			ws_walk(_G(my_walker), 456, 366, nullptr, 2, 2, true);
@@ -562,7 +562,7 @@ void Room207::parser() {
 			inv_give_to_player("REBUS AMULET");
 			hotspot_set_active(_G(currentSceneDef).hotspots, "REBUS AMULET", false);
 
-			if (_G(flags[V063]) == 0) {
+			if (_G(flags)[V063] == 0) {
 				kernel_examine_inventory_object("ping REBUS AMULET", _G(master_palette), 5, 1, 387, 250, 4, "207R04", -1);
 			} else {
 				kernel_examine_inventory_object("ping REBUS AMULET", _G(master_palette), 5, 1, 387, 250, 4, nullptr, -1);
@@ -613,7 +613,7 @@ void Room207::parser() {
 		default:
 			break;
 		}
-	} else if (takeFlag && player_said("REBUS AMULET") && _G(flags[V061]) == 0 && inv_object_is_here("REBUS AMULET")) {
+	} else if (takeFlag && player_said("REBUS AMULET") && _G(flags)[V061] == 0 && inv_object_is_here("REBUS AMULET")) {
 		digi_play("207r35a", 1);
 	} else if (_G(kernel).trigger == 666) {
 		digi_unload("ripwhis");
@@ -627,7 +627,7 @@ void Room207::parser() {
 			ws_hide_walker(_G(my_walker));
 			terminateMachine(_wheelMach);
 			hotspot_set_active(_G(currentSceneDef).hotspots, "WHEEL", false);
-			_G(flags[V058]) = 1;
+			_G(flags)[V058] = 1;
 			hotspot_set_active(_G(currentSceneDef).hotspots, "METAL RIM", true);
 			hotspot_set_active(_G(currentSceneDef).hotspots, "SEVEN SPOKES", true);
 			hotspot_set_active(_G(currentSceneDef).hotspots, "WOODEN RIM", true);
@@ -669,8 +669,8 @@ void Room207::parser() {
 			break;
 		}
 	} else if (takeFlag && player_said("PIPES")) {
-		_G(flags[V036]) = 1;
-		if (_G(flags[V061]) != 0 && inv_object_is_here("LEAD PIPE")) {
+		_G(flags)[V036] = 1;
+		if (_G(flags)[V061] != 0 && inv_object_is_here("LEAD PIPE")) {
 			digi_play("207r36", 1);
 		} else {
 			switch (_G(kernel).trigger) {
@@ -748,7 +748,7 @@ void Room207::parser() {
 				_pipeFlag = false;
 				_peasantShould = 0;
 				_commandNotAllowedFl = true;
-				_G(flags[V043]) = 1;
+				_G(flags)[V043] = 1;
 				break;
 
 			default:
@@ -756,9 +756,9 @@ void Room207::parser() {
 			}
 		}
 	} else if (takeFlag && player_said("METAL RIM")) {
-		_G(flags[V036]) = 1;
+		_G(flags)[V036] = 1;
 
-		if (_G(flags[V061]) != 0) {
+		if (_G(flags)[V061] != 0) {
 			digi_play("207r29", 1);
 		} else {
 			switch (_G(kernel).trigger) {
@@ -812,7 +812,7 @@ void Room207::parser() {
 					_digiName = "207p01a";
 					_digiTriggerNum = 5;
 					_nextTriggerMode = KT_PARSE;
-				} else if (_G(flags[V061]) != 0) {
+				} else if (_G(flags)[V061] != 0) {
 					player_set_commands_allowed(true);
 				} else {
 					hotspot_set_active(_G(currentSceneDef).hotspots, "PEASANT", false);
@@ -838,7 +838,7 @@ void Room207::parser() {
 				_pipeFlag = false;
 				_peasantShould = 0;
 				_commandNotAllowedFl = true;
-				_G(flags[V043]) = 1;
+				_G(flags)[V043] = 1;
 
 				break;
 
@@ -892,13 +892,13 @@ void Room207::parser() {
 		}
 
 	} else if (!_pipeFlag && lookFlag && player_said("REBUS AMULET") && !inv_object_is_here("REBUS AMULET")) {
-		if (_G(flags[V061] == 0)) {
-			_G(flags[V061]) = 1;
+		if (_G(flags)[V061] == 0) {
+			_G(flags)[V061] = 1;
 			digi_play("207r04", 1);
 		} else
 			digi_play("207r04a", 1);
 	} else if (!_pipeFlag && lookFlag && player_said("junkpile")) {
-		if (_G(flags[V061]) == 0 && _G(flags[V063]) == 0) {
+		if (_G(flags)[V061] == 0 && _G(flags)[V063] == 0) {
 			switch (_G(kernel).trigger) {
 			case -1:
 				player_set_commands_allowed(false);
@@ -919,7 +919,7 @@ void Room207::parser() {
 				break;
 
 			case 2:
-				if (_G(flags[V036]) == 0)
+				if (_G(flags)[V036] == 0)
 					digi_play("207r03b", 1, 255, 8, -1);
 				else
 					digi_play("207r03", 1, 255, 3, -1);
@@ -955,8 +955,8 @@ void Room207::parser() {
 				series_unload(_ripTrekLowReacherPos1Series);
 				ws_unhide_walker();
 				player_set_commands_allowed(true);
-				_G(flags[V043]) = 1;
-				_G(flags[V063]) = 1;
+				_G(flags)[V043] = 1;
+				_G(flags)[V063] = 1;
 
 				if (inv_object_is_here("REBUS AMULET"))
 					hotspot_set_active(_G(currentSceneDef).hotspots, "REBUS AMULET", true);
@@ -970,7 +970,7 @@ void Room207::parser() {
 			default:
 				break;
 			}
-		} else if (_G(flags[V063]) == 0) {
+		} else if (_G(flags)[V063] == 0) {
 			switch (_G(kernel).trigger) {
 			case -1:
 				player_set_commands_allowed(false);
@@ -1020,7 +1020,7 @@ void Room207::parser() {
 				series_unload(_ripTrekLowReacherPos1Series);
 				ws_unhide_walker();
 				player_set_commands_allowed(true);
-				_G(flags[V063]) = 1;
+				_G(flags)[V063] = 1;
 				if (inv_object_is_here("REBUS AMULET")) {
 					hotspot_set_active(_G(currentSceneDef).hotspots, "REBUS AMULET", true);
 				}
@@ -1050,9 +1050,9 @@ void Room207::parser() {
 			break;
 		}
 	} else if (lookFlag && player_said("peasant")) {
-		if (_G(flags[V062]) == 0) {
+		if (_G(flags)[V062] == 0) {
 			digi_play("207r01", 1);
-			_G(flags[V062]) = 1;
+			_G(flags)[V062] = 1;
 		} else {
 			digi_play("207r02", 1);
 		}
@@ -1087,7 +1087,7 @@ void Room207::parser() {
 	} else if (inv_player_has(_G(player).verb) && player_said("peasant")) {
 		digi_play("203r50", 1);
 	} else if (lookFlag && player_said(" ")) {
-		if (_G(flags[V054]) == 0)
+		if (_G(flags)[V054] == 0)
 			digi_play("207r23a", 1);
 		else
 			digi_play("207r23", 1);
@@ -1172,7 +1172,7 @@ void Room207::daemon() {
 			_G(kernel).trigger_mode = KT_PARSE;
 			conv_load("conv203d", 10, 10, 747);
 			conv_set_shading(65);
-			conv_export_value_curr(_G(flags[V054]), 0);
+			conv_export_value_curr(_G(flags)[V054], 0);
 
 			if (inv_player_has("REBUS AMULET"))
 				conv_export_value_curr(0, 1);
@@ -1233,7 +1233,7 @@ void Room207::daemon() {
 			} else {
 				other_save_game_for_resurrection();
 				disable_player_commands_and_fade_init(749);
-				_G(flags[V067]) = 1;
+				_G(flags)[V067] = 1;
 			}
 		}
 
diff --git a/engines/m4/riddle/rooms/section8/room803.cpp b/engines/m4/riddle/rooms/section8/room803.cpp
index e1cd6e0dc96..c8140338af3 100644
--- a/engines/m4/riddle/rooms/section8/room803.cpp
+++ b/engines/m4/riddle/rooms/section8/room803.cpp
@@ -443,7 +443,7 @@ void Room803::initWalker() {
 	case 824:
 		ws_demand_location(_G(my_walker), 570, 220);
 		ws_demand_facing(_G(my_walker), 9);
-		if (_G(flags[V276]) == 0) {
+		if (_G(flags)[V276] == 0) {
 			player_set_commands_allowed(false);
 			_mcWalkerMach = triggerMachineByHash_3000(8, 4, *S8_SHADOW_DIRS2, *S8_SHADOW_DIRS1, 570, 220, 3, Walker::player_walker_callback, "mc");
 			ws_walk(_G(my_walker), 520, 220, nullptr, 52, 9, true);
@@ -455,7 +455,7 @@ void Room803::initWalker() {
 	case 834:
 		ws_demand_location(_G(my_walker), 491, 174);
 		ws_demand_facing(_G(my_walker), 9);
-		if (_G(flags[V276]) == 0) {
+		if (_G(flags)[V276] == 0) {
 			player_set_commands_allowed(false);
 			_mcWalkerMach = triggerMachineByHash_3000(8, 4, *S8_SHADOW_DIRS2, *S8_SHADOW_DIRS1, 491, 174, 3, Walker::player_walker_callback, "mc");
 			ws_walk(_G(my_walker), 441, 174, nullptr, 53, 9, true);
@@ -467,7 +467,7 @@ void Room803::initWalker() {
 	case 844:
 		ws_demand_location(_G(my_walker), 475, 161);
 		ws_demand_facing(_G(my_walker), 9);
-		if (_G(flags[V276]) == 0) {
+		if (_G(flags)[V276] == 0) {
 			player_set_commands_allowed(false);
 			_mcWalkerMach = triggerMachineByHash_3000(8, 4, *S8_SHADOW_DIRS2, *S8_SHADOW_DIRS1, 475, 161, 3, Walker::player_walker_callback, "mc");
 			ws_walk(_G(my_walker), 425, 161, nullptr, 54, 9, true);
@@ -479,7 +479,7 @@ void Room803::initWalker() {
 	default:
 		ws_demand_location(_G(my_walker), 202, 239);
 		ws_demand_facing(_G(my_walker), 7);
-		if (_G(flags[V276]) == 0) {
+		if (_G(flags)[V276] == 0) {
 			ws_hide_walker(_G(my_walker));
 			_meiStepOffPileMach = series_play("MEI STEPS OFF PILE", 0, 15, 2, 5, 0, 100, 0, 0, 0, 0);
 			kernel_timing_trigger(15, 1, nullptr);
diff --git a/engines/m4/riddle/rooms/section8/room805.cpp b/engines/m4/riddle/rooms/section8/room805.cpp
index 18030d5921d..a993909b50c 100644
--- a/engines/m4/riddle/rooms/section8/room805.cpp
+++ b/engines/m4/riddle/rooms/section8/room805.cpp
@@ -139,8 +139,8 @@ void Room805::initSub2() {
 
 void Room805::initHotspots() {
 	if (inv_object_is_here("TWO SOLDIERS' SHIELDS")) {
-		_G(flags[V257]) = 0;
-		_G(flags[V258]) = 0;
+		_G(flags)[V257] = 0;
+		_G(flags)[V258] = 0;
 
 		hotspot_set_active(_G(currentSceneDef).hotspots, "SHIELD", true);
 		hotspot_set_active(_G(currentSceneDef).hotspots, "SHIELD ", true);
@@ -226,11 +226,11 @@ void Room805::daemonSub1() {
 		digi_stop(2);
 		digi_unload("950_s33");
 		_chariotRestMach = series_play("805 CHARIOT REST", 1280, 0, -1, 0, -1, 100, 0, 0, 0, -1);
-		_G(flags[V262]) = 1;
+		_G(flags)[V262] = 1;
 		kernel_load_variant("805LOCK1");
 		hotspot_set_active(_G(currentSceneDef).hotspots, "CHARIOT", true);
 		ws_walk(_G(my_walker), 295, 305, nullptr, -1, 3, true);
-		if (_G(flags[V276]) == 0)
+		if (_G(flags)[V276] == 0)
 			kernel_timing_trigger(10, 104, nullptr);
 		else
 			player_set_commands_allowed(true);
@@ -458,18 +458,18 @@ void Room805::parser() {
 		parserSub1("COM061", 1, 255, 1, 997);
 
 	else if (lookFl && player_said("SOLDIER")) {
-		if (_G(flags[V257]))
+		if (_G(flags)[V257])
 			parserSub1("COM074", 1, 255, 1, -1);
-		else if (_G(flags[V258]))
+		else if (_G(flags)[V258])
 			parserSub1("805R10a", 1, 255, 1, -1);
 		else
 			parserSub1("805R10", 1, 255, 1, -1);
 	} // if (lookFl && player_said("SOLDIER"))
 
 	else if (lookFl && player_said("SOLDIER ")) {
-		if (_G(flags[V258]))
+		if (_G(flags)[V258])
 			parserSub1("COM074", 1, 255, 1, -1);
-		else if (_G(flags[V257]))
+		else if (_G(flags)[V257])
 			parserSub1("805R10a", 1, 255, 1, -1);
 		else
 			parserSub1("805R10", 1, 255, 1, -1);
@@ -517,7 +517,7 @@ void Room805::parser() {
 	} // if (lookFl && player_said("WOODEN POST") && inv_object_is_here("WOODEN POST"))
 
 	else if (lookFl && player_said("HOLE IN ROOF")) {
-		if (_G(flags[V261]) != 1 && _G(flags[V276]) == 0 && _G(flags[V256]) != 1) {
+		if (_G(flags)[V261] != 1 && _G(flags)[V276] == 0 && _G(flags)[V256] != 1) {
 			switch (_G(kernel).trigger) {
 			case -1:
 				player_set_commands_allowed(false);
@@ -614,7 +614,7 @@ void Room805::parser() {
 			case 17:
 				series_unload(_ripHeadTurnPos3);
 				series_unload(_meiTrekTalkerSeries);
-				_G(flags[V261]) = 1;
+				_G(flags)[V261] = 1;
 				ws_walk(_mcMach, 276, 201, nullptr, 100, 10, true);
 				player_set_commands_allowed(true);
 				break;
@@ -622,7 +622,7 @@ void Room805::parser() {
 			default:
 				break;
 			}
-		} else if (_G(flags[V256]) == 1) {
+		} else if (_G(flags)[V256] == 1) {
 			parserSub1("805R06A", 1, 255, 1, -1);
 		} else {
 			parserSub1("805R06", 1, 255, 1, -1);
@@ -654,9 +654,9 @@ void Room805::parser() {
 		case 10:
 			if (_unkFlag1)
 				kernel_timing_trigger(5, 1, nullptr);
-			_G(flags[V257]) = 1;
+			_G(flags)[V257] = 1;
 
-			if (_G(flags[V258]) == 0) {
+			if (_G(flags)[V258] == 0) {
 				kernel_examine_inventory_object("PING SOLDIER'S SHIELD", _G(master_palette), 5, 1, 310, 130, 20, nullptr, 1);
 				inv_give_to_player("SOLDIER'S SHIELD");
 				inv_put_thing_in("TWO SOLDIERS' SHIELDS", 999);
@@ -697,9 +697,9 @@ void Room805::parser() {
 		case 10:
 			if (_unkFlag1)
 				kernel_timing_trigger(5, 1, nullptr);
-			_G(flags[V258]) = 1;
+			_G(flags)[V258] = 1;
 
-			if (_G(flags[V257]) == 0) {
+			if (_G(flags)[V257] == 0) {
 				kernel_examine_inventory_object("PING SOLDIER'S SHIELD", _G(master_palette), 5, 1, 330, 170, 20, nullptr, 1);
 				inv_give_to_player("SOLDIER'S SHIELD");
 				inv_put_thing_in("TWO SOLDIERS' SHIELDS", 999);
@@ -831,14 +831,14 @@ void Room805::parser() {
 	else if (player_said("go", "jade door"))
 		parserSub1("805r34", 1, 255, 1, -1);
 
-	else if (gearFl && (player_said("JADE DOOR") || player_said("JADE DOOR ")) && (_G(flags[V271]) == 1))
+	else if (gearFl && (player_said("JADE DOOR") || player_said("JADE DOOR ")) && (_G(flags)[V271] == 1))
 		parserSub1("805R18", 1, 255, 1, -1);
 
-	else if (gearFl && (player_said("JADE DOOR") || player_said("JADE DOOR ")) && (_G(flags[V272]) == 1))
+	else if (gearFl && (player_said("JADE DOOR") || player_said("JADE DOOR ")) && (_G(flags)[V272] == 1))
 		parserSub1("805R19", 1, 255, 1, -1);
 
 	else if (gearFl && player_said("CHARIOT")) {
-		if (_G(flags[V272])!= 1) {
+		if (_G(flags)[V272] != 1) {
 			parserSub1("805R20", 1, 255, 1, -1);
 		} else {
 			switch (_G(kernel).trigger) {
@@ -857,8 +857,8 @@ void Room805::parser() {
 				adv_kill_digi_between_rooms(false);
 				digi_play_loop("950_s29", 3, 180, -1, 950);
 				digi_play_loop("950_s33", 2, 255, -1, -1);
-				_G(flags[V270]) = 806;
-				_G(flags[V262]) = 0;
+				_G(flags)[V270] = 806;
+				_G(flags)[V262] = 0;
 				_G(game).new_room = 806;
 
 				break;
@@ -883,7 +883,7 @@ void Room805::parser() {
 	else if (player_said("SOLDIER'S SHIELD", "SOLDIER") || player_said("TWO SOLDIERS' SHIELDS", "SOLDIER")) {
 		switch (_G(kernel).trigger) {
 		case -1:
-			if (_G(flags[V257])) {
+			if (_G(flags)[V257]) {
 				player_set_commands_allowed(false);
 				setGlobals1(_unkSeries5, 1, 13, 13, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
 				sendWSMessage_110000(_G(my_walker), 10);
@@ -900,8 +900,8 @@ void Room805::parser() {
 			break;
 
 		case 10:
-			_G(flags[V257]) = 0;
-			if (_G(flags[V258])) {
+			_G(flags)[V257] = 0;
+			if (_G(flags)[V258]) {
 				inv_put_thing_in("TWO SOLDIERS' SHIELDS", 999);
 				inv_give_to_player("SOLDIER'S SHIELD");
 			} else {
@@ -922,7 +922,7 @@ void Room805::parser() {
 	else if (player_said("SOLDIER'S SHIELD", "SOLDIER ") || player_said("TWO SOLDIERS' SHIELDS", "SOLDIER ")) {
 		switch (_G(kernel).trigger) {
 		case -1:
-			if (_G(flags[V258])) {
+			if (_G(flags)[V258]) {
 				player_set_commands_allowed(false);
 				setGlobals1(_unkSeries6, 1, 12, 12, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
 				sendWSMessage_110000(_G(my_walker), 10);
@@ -939,8 +939,8 @@ void Room805::parser() {
 			break;
 
 		case 10:
-			_G(flags[V258]) = 0;
-			if (_G(flags[V257])) {
+			_G(flags)[V258] = 0;
+			if (_G(flags)[V257]) {
 				inv_put_thing_in("TWO SOLDIERS' SHIELDS", 999);
 				inv_give_to_player("SOLDIER'S SHIELD");
 			} else {
@@ -972,8 +972,8 @@ void Room805::parser() {
 	else if (gearFl && player_said("MEI CHEN"))
 		parserSub1("COM017", 1, 255, 1, 997);
 
-	else if ((player_said("WOODEN POST", "JADE DOOR") && inv_player_has("WOODEN POST") && !_G(flags[V272]))
-			|| (player_said("WOODEN POST", "JADE DOOR ") && inv_player_has("WOODEN POST") && !_G(flags[V272]))
+	else if ((player_said("WOODEN POST", "JADE DOOR") && inv_player_has("WOODEN POST") && !_G(flags)[V272])
+			|| (player_said("WOODEN POST", "JADE DOOR ") && inv_player_has("WOODEN POST") && !_G(flags)[V272])
 			|| (player_said("WOODEN BEAN", "JADE DOOR") && inv_player_has("WOODEN BEAN"))
 			|| (player_said("WOODEN BEAN", "JADE DOOR ") && inv_player_has("WOODEN BEAN")))
 		parserSub1("805r25", 1, 255, 1, -1);
@@ -1089,10 +1089,10 @@ void Room805::parser() {
 	else if (goFl && (player_said("Jade Door") || player_said("Jade Door "))) {
 		switch (_G(kernel).trigger) {
 		case -1:
-			if (_G(flags[V272])) {
+			if (_G(flags)[V272]) {
 				player_set_commands_allowed(false);
 				disable_player_commands_and_fade_init(3);
-			} else if (_G(flags[V271])) {
+			} else if (_G(flags)[V271]) {
 				parserSub1("805r34", 1, 255, 1, -1);
 			}
 
@@ -1211,7 +1211,7 @@ void Room805::daemon() {
 		digi_preload("950_s33", -1);
 		digi_play_loop("950_s33", 2, 255, -1, -1);
 		_ripChariotInMach = series_stream("805 RIP CHARIOT IN", 5, 1280, 111);
-		_G(flags[V262]) = 1;
+		_G(flags)[V262] = 1;
 
 		break; // case 110
 
diff --git a/engines/m4/riddle/rooms/section8/room806.cpp b/engines/m4/riddle/rooms/section8/room806.cpp
index 092bd2ead90..c509c627ed1 100644
--- a/engines/m4/riddle/rooms/section8/room806.cpp
+++ b/engines/m4/riddle/rooms/section8/room806.cpp
@@ -57,7 +57,7 @@ void Room806::init() {
 	series_play("LIT URN 1 ", 32767, 0, -1, 7, -1, 100, 0, 0, 0, -1);
 	series_play("LIT URN 2", 32767, 0, -1, 7, -1, 100, 0, 0, 0, -1);
 
-	if (!_G(flags[V265]))
+	if (!_G(flags)[V265])
 		series_play("806 flash light flicker", 32767, 0, -1, 7, 2, 100, 0, 0, 0, -1);
 
 	if (inv_object_is_here("CRANK")) {
@@ -67,7 +67,7 @@ void Room806::init() {
 		hotspot_set_active(_G(currentSceneDef).hotspots, "CRANK", false);
 	}
 
-	if (_G(flags[V270]) == 806) {
+	if (_G(flags)[V270] == 806) {
 		hotspot_set_active(_G(currentSceneDef).hotspots, "CHARIOT", false);
 	} else {
 		digi_stop(2);
@@ -77,7 +77,7 @@ void Room806::init() {
 		digi_preload("806r20", -1);
 	}
 
-	if (_G(flags[V266])) {
+	if (_G(flags)[V266]) {
 		series_show("806BOLTS", 32767, 16, -1, -1, 0, 100, 0, 0);
 	} else {
 		_806rp02Series = series_load("806RP02", -1, nullptr);
@@ -90,7 +90,7 @@ void Room806::init() {
 		digi_preload("950_s53", -1);
 	}
 
-	if (_G(flags[V276]) == 0) {
+	if (_G(flags)[V276] == 0) {
 		ws_walk_load_walker_series(S8_SHADOW_DIRS1, S8_SHADOW_NAMES1);
 		ws_walk_load_walker_series(S8_SHADOW_DIRS2, S8_SHADOW_NAMES2);
 	}
@@ -98,7 +98,7 @@ void Room806::init() {
 	switch (_G(game).previous_room) {
 	case KERNEL_RESTORING_GAME:
 		digi_preload("950_s29", -1);
-		if (_G(flags[V276])) {
+		if (_G(flags)[V276]) {
 			hotspot_set_active(_G(currentSceneDef).hotspots, "MEI CHEN", false);
 			hotspot_set_active(_G(currentSceneDef).hotspots, "MEI CHEN ", false);
 		} else {
@@ -123,7 +123,7 @@ void Room806::init() {
 		break;
 
 	case 805:
-		if (!_G(flags[V265])) {
+		if (!_G(flags)[V265]) {
 			_806rp01Series = series_load("806RP01", -1, nullptr);
 			_806mc01Series = series_load("806MC01", -1, nullptr);
 			digi_preload("806m01");
@@ -138,7 +138,7 @@ void Room806::init() {
 		ws_demand_facing(_G(my_walker), 3);
 		ws_demand_location(_G(my_walker), -30, 316);
 
-		if (_G(flags[V276])) {
+		if (_G(flags)[V276]) {
 			hotspot_set_active(_G(currentSceneDef).hotspots, "MEI CHEN ", false);
 			hotspot_set_active(_G(currentSceneDef).hotspots, "MEI CHEN", false);
 		} else {
@@ -148,10 +148,10 @@ void Room806::init() {
 			_unkVar3 = 0;
 		}
 
-		if (_G(flags[V270]) == 806) {
+		if (_G(flags)[V270] == 806) {
 			terminateMachine(_806ChartMach);
 			_806ChartMach = series_show("806chart", 1536, 16, -1, -1, 0, 100, 0, 0);
-			if (!_G(flags[V265])) {
+			if (!_G(flags)[V265]) {
 				ws_walk(_G(my_walker), 221, 316, nullptr, 12001, 3, true);
 			} else {
 				if (!player_been_here(809))
@@ -160,19 +160,19 @@ void Room806::init() {
 				kernel_timing_trigger(imath_ranged_rand(1200, 1800), 701, nullptr);
 			}
 
-			if (!_G(flags[V276]))
+			if (!_G(flags)[V276])
 				sendWSMessage_10000(_mcTrekMach, 30, 296, 0, 501, 1);
 
-		} else if (!_G(flags[V265])) {
+		} else if (!_G(flags)[V265]) {
 			sendWSMessage_10000(_mcTrekMach, 225, 306, 3, 101, 1);
 			ws_walk(221, 316, nullptr, 12001, 3, true);
 		} else {
-			if (!_G(flags[V276]))
+			if (!_G(flags)[V276])
 				sendWSMessage_10000(_mcTrekMach, 225, 306, 3, -1, 1);
 
 			ws_walk(221, 316, nullptr, 999, 3, true);
 
-			if (!_G(flags[V276])) {
+			if (!_G(flags)[V276]) {
 				if (!player_been_here(809))
 					kernel_timing_trigger(imath_ranged_rand(1200, 1800), 201, nullptr);
 
@@ -186,7 +186,7 @@ void Room806::init() {
 		ws_demand_facing(_G(my_walker), 9);
 		ws_demand_location(_G(my_walker), 670, 315);
 		ws_walk(_G(my_walker), 594, 315, nullptr, 999, 9, true);
-		if (_G(flags[V276])) {
+		if (_G(flags)[V276]) {
 			hotspot_set_active(_G(currentSceneDef).hotspots, "MEI CHEN ", false);
 			hotspot_set_active(_G(currentSceneDef).hotspots, "MEI CHEN", false);
 		} else {
@@ -207,7 +207,7 @@ void Room806::init() {
 		digi_preload("950_s29", -1);
 		ws_demand_facing(_G(my_walker), 3);
 		ws_demand_location(_G(my_walker), 221, 316);
-		if (_G(flags[V276])) {
+		if (_G(flags)[V276]) {
 			hotspot_set_active(_G(currentSceneDef).hotspots, "MEI CHEN ", true);
 			hotspot_set_active(_G(currentSceneDef).hotspots, "MEI CHEN", false);
 			_unkVar1 = 0;
@@ -266,13 +266,13 @@ void Room806::pre_parser() {
 		_G(player).waiting_for_walk = false;
 	}
 
-	if (player_said_any("    ", "      ") && _G(flags[266]) == 0) {
+	if (player_said_any("    ", "      ") && _G(flags)[266] == 0) {
 		_G(player).need_to_walk = false;
 		_G(player).ready_to_walk = true;
 		_G(player).waiting_for_walk = false;
 	}
 
-	if (player_said_any("    ", "      ") && _G(flags[266]) != 0 && !walkFl && !player_said("east")) {
+	if (player_said_any("    ", "      ") && _G(flags)[266] != 0 && !walkFl && !player_said("east")) {
 		_G(player).need_to_walk = false;
 		_G(player).ready_to_walk = true;
 		_G(player).waiting_for_walk = false;
@@ -302,14 +302,14 @@ void Room806::pre_parser() {
 		_G(player).waiting_for_walk = false;
 	}
 
-	if (player_said("west") && _G(flags[276]) == 0) {
+	if (player_said("west") && _G(flags)[276] == 0) {
 		sendWSMessage_10000(_mcTrekMach, 225, 306, 9, -1, 1);
 		_unkVar3 = 1;
 		hotspot_set_active(_G(currentSceneDef).hotspots, "MEI CHEN", true);
 		hotspot_set_active(_G(currentSceneDef).hotspots, "MEI CHEN ", false);
 	}
 
-	if (player_said("east") && _G(flags[266]) && _G(flags[276]) == 0) {
+	if (player_said("east") && _G(flags)[266] && _G(flags)[276] == 0) {
 		sendWSMessage_10000(_mcTrekMach, 624, 306, 3, -1, 1);
 		_unkVar3 = 0;
 		hotspot_set_active(_G(currentSceneDef).hotspots, "MEI CHEN", false);
@@ -379,7 +379,7 @@ void Room806::parser() {
 		case 10:
 			player_set_commands_allowed(true);
 			_unkVar1 = 0;
-			_G(flags[V106]) = 1;
+			_G(flags)[V106] = 1;
 
 			break;
 
@@ -413,7 +413,7 @@ void Room806::parser() {
 		case 9 :
 			ws_unhide_walker(_G(my_walker));
 			player_set_commands_allowed(true);
-			_G(flags[V106]) = 1;
+			_G(flags)[V106] = 1;
 			_unkVar1 = 0;
 
 			break;
@@ -445,7 +445,7 @@ void Room806::parser() {
 			setGlobals1(_ripTrekLookDownPos3Series, 1, 9, 9, 9, 0, 12, 21, 21, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
 			sendWSMessage_110000(_G(my_walker), 2);
 
-			if (_G(flags[V105]) == 0 && _G(flags[V276]) == 0)
+			if (_G(flags)[V105] == 0 && _G(flags)[V276] == 0)
 				digi_play("806r08", 1, 255, 8, -1);
 			else
 				digi_play("806r08a", 1, 255, 8, -1);
@@ -453,7 +453,7 @@ void Room806::parser() {
 			break;
 
 		case 2:
-			if (_G(flags[V105]) == 0 && _G(flags[V276]) == 0)
+			if (_G(flags)[V105] == 0 && _G(flags)[V276] == 0)
 				sendWSMessage_120000(_G(my_walker), imath_ranged_rand(3, 4));
 			else
 				sendWSMessage_120000(_G(my_walker), 8);
@@ -485,7 +485,7 @@ void Room806::parser() {
 			break;
 
 		case 9:
-			_G(flags[V105]) = 1;
+			_G(flags)[V105] = 1;
 			player_set_commands_allowed(true);
 			_unkVar1 = 0;
 
@@ -551,9 +551,9 @@ void Room806::parser() {
 	else if (lookFl && player_said_any("MEI CHEN", "MEI CHEN "))
 		digi_play("806r14", 1, 255, -1, -1);
 	else if (lookFl && player_said("FLASHLIGHT")) {
-		if (_G(flags[V267]) == 0) {
+		if (_G(flags)[V267] == 0) {
 			digi_play("806r25", 1, 255, -1, -1);
-			_G(flags[V267]) = 1;
+			_G(flags)[V267] = 1;
 		} else
 			digi_play("806r25a", 1, 255, -1, -1);
 	} // if (ecx && player_said("FLASHLIGHT"))
@@ -828,7 +828,7 @@ void Room806::parser() {
 	else if (player_said("CRANK") && player_said("HOLE"))
 		digi_play("806r18", 1, 255, -1, -1);
 	else if (!lookFl && !takeFl && !player_said("JOURNAL") && player_said_any("TWO SOLDIERS' SHIELDS", "SOLDIER'S SHIELD")) {
-		if (_G(flags[V106]) == 0)
+		if (_G(flags)[V106] == 0)
 			digi_play("805r23", 1, 255, -1, 805);
 		else
 			digi_play("806r19", 1, 255, -1, -1);
@@ -915,8 +915,8 @@ void Room806::parser() {
 			break;
 
 		case 31:
-			_G(flags[V266]) = 1;
-			_G(flags[V270]) = 807;
+			_G(flags)[V266] = 1;
+			_G(flags)[V270] = 807;
 			digi_unload("806_s01");
 			adv_kill_digi_between_rooms(false);
 			digi_play_loop("950_s33", 1, 255, -1, -1);
@@ -1022,7 +1022,7 @@ void Room806::parser() {
 	else if (!gearFl && player_said_any("MEI CHEN", "MEI CHEN "))
 		digi_play("com017", 1, 255, 997);
 
-	else if (((walkFl && player_said("    ")) || (!walkFl && player_said("east"))) && _G(flags[266]) == 0) {
+	else if (((walkFl && player_said("    ")) || (!walkFl && player_said("east"))) && _G(flags)[266] == 0) {
 		switch (_G(kernel).trigger) {
 		case -1:
 			_G(player).disable_hyperwalk = true;
@@ -1081,7 +1081,7 @@ void Room806::parser() {
 		default:
 			break;
 		}
-	} // if (((walkFl && player_said("    ")) || (!walkFl && player_said("east"))) && _G(flags[266]) == 0)
+	} // if (((walkFl && player_said("    ")) || (!walkFl && player_said("east"))) && _G(flags)[266] == 0)
 
 	else if (player_said("west") && (_G(kernel).trigger == -1 || _G(kernel).trigger == 1)) {
 		if (_G(kernel).trigger == -1) {
@@ -1192,8 +1192,8 @@ void Room806::daemon() {
 		break;
 
 	case 117:
-		_G(flags[265]) = 1;
-		_G(flags[256]) = 1;
+		_G(flags)[265] = 1;
+		_G(flags)[256] = 1;
 		series_unload(_806rp01Series);
 		series_unload(_806mc01Series);
 		digi_unload("806m01");
@@ -1241,7 +1241,7 @@ void Room806::daemon() {
 			else if (_G(player_info).facing > 5 && _G(player_info).facing <= 11)
 				ws_walk(_G(my_walker), _G(player_info).x, _G(player_info).y, nullptr, 205, 9, true);
 
-		} else if (_G(flags[269]))
+		} else if (_G(flags)[269])
 			kernel_timing_trigger(60, 201, nullptr);
 
 		break;
@@ -1518,7 +1518,7 @@ void Room806::daemon() {
 		terminateMachine(_806ChartMach);
 		_806ChartMach = series_show("806chart", 3840, 16, -1, -1, 0, 100, 0, 0);
 
-		if (_G(flags[265]))
+		if (_G(flags)[265])
 			sendWSMessage_10000(_mcTrekMach, 225, 306, 3, -1, 1);
 		else
 			sendWSMessage_10000(_mcTrekMach, 225, 306, 3, 101, 1);
@@ -1553,7 +1553,7 @@ void Room806::daemon() {
 		break;
 
 	case 999:
-		if (_G(flags[265])) {
+		if (_G(flags)[265]) {
 			player_set_commands_allowed(true);
 			_unkVar1 = 0;
 		}




More information about the Scummvm-git-logs mailing list