From 9b3977191debb9adaddf9d71bc65f5e47b360c5b Mon Sep 17 00:00:00 2001 From: scawful Date: Mon, 22 Jan 2024 21:17:41 -0500 Subject: [PATCH] Add LogToConsole experiment flag --- src/app/core/common.h | 4 ++++ src/app/editor/master_editor.cc | 1 + src/app/zelda3/overworld.cc | 21 ++++++++++++--------- 3 files changed, 17 insertions(+), 9 deletions(-) diff --git a/src/app/core/common.h b/src/app/core/common.h index 002b904e..9da3180f 100644 --- a/src/app/core/common.h +++ b/src/app/core/common.h @@ -6,6 +6,7 @@ #include #include #include +#include #include #include #include @@ -54,6 +55,9 @@ class ExperimentFlags { // Save dungeon map edits to the ROM. bool kSaveDungeonMaps = false; + + // Log to the console. + bool kLogToConsole = false; }; ExperimentFlags() = default; diff --git a/src/app/editor/master_editor.cc b/src/app/editor/master_editor.cc index fbc3a708..fe47f5d8 100644 --- a/src/app/editor/master_editor.cc +++ b/src/app/editor/master_editor.cc @@ -326,6 +326,7 @@ void MasterEditor::DrawFileMenu() { MenuItem("Backup ROM", "", &backup_rom_); ImGui::Separator(); Text("Experiment Flags"); + Checkbox("Enable console logging", &mutable_flags()->kLogToConsole); Checkbox("Enable Texture Streaming", &mutable_flags()->kLoadTexturesAsStreaming); Checkbox("Enable Overworld Sprites", diff --git a/src/app/zelda3/overworld.cc b/src/app/zelda3/overworld.cc index 4040f5a2..c2ff4f33 100644 --- a/src/app/zelda3/overworld.cc +++ b/src/app/zelda3/overworld.cc @@ -986,15 +986,18 @@ void Overworld::LoadExits() { exit_scroll_mod_y, exit_scroll_mod_x, exit_door_type_1, exit_door_type_2); - std::cout << "Exit: " << i << " RoomID: " << exit_room_id - << " MapID: " << exit_map_id << " VRAM: " << exit_vram - << " YScroll: " << exit_y_scroll << " XScroll: " << exit_x_scroll - << " YPlayer: " << py << " XPlayer: " << px - << " YCamera: " << exit_y_camera << " XCamera: " << exit_x_camera - << " ScrollModY: " << exit_scroll_mod_y - << " ScrollModX: " << exit_scroll_mod_x - << " DoorType1: " << exit_door_type_1 - << " DoorType2: " << exit_door_type_2 << std::endl; + if (rom()->flags()->kLogToConsole) { + std::cout << "Exit: " << i << " RoomID: " << exit_room_id + << " MapID: " << exit_map_id << " VRAM: " << exit_vram + << " YScroll: " << exit_y_scroll + << " XScroll: " << exit_x_scroll << " YPlayer: " << py + << " XPlayer: " << px << " YCamera: " << exit_y_camera + << " XCamera: " << exit_x_camera + << " ScrollModY: " << exit_scroll_mod_y + << " ScrollModX: " << exit_scroll_mod_x + << " DoorType1: " << exit_door_type_1 + << " DoorType2: " << exit_door_type_2 << std::endl; + } if (px == 0xFFFF && py == 0xFFFF) { exit.deleted = true;