From 0b45b2454931d01da1a6ad2264ec02f3ea3d02f9 Mon Sep 17 00:00:00 2001 From: Star Rauchenberger Date: Mon, 23 Aug 2021 10:56:11 -0400 Subject: Replaced Mountain Blue 1&2 with Glass Factory Entry Now Glass Factory Entry isn't replaced, though. --- Source/Panels.h | 2 +- Source/Randomizer.cpp | 12 +++++++++--- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/Source/Panels.h b/Source/Panels.h index f6eebd7..a5da348 100644 --- a/Source/Panels.h +++ b/Source/Panels.h @@ -149,7 +149,7 @@ std::vector squarePanels = { 0x04CA4, // Tutorial Optional Door 2 0x17CFB, // Outside Tutorial Discard 0x3C12B, // Glass Factory Discard - 0x01A54, // Glass Factory Entry + //0x01A54, // Glass Factory Entry 0x00086, // Glass Factory Vertical Symmetry 1 0x00087, // Glass Factory Vertical Symmetry 2 0x00059, // Glass Factory Vertical Symmetry 3 diff --git a/Source/Randomizer.cpp b/Source/Randomizer.cpp index f355743..26c3416 100644 --- a/Source/Randomizer.cpp +++ b/Source/Randomizer.cpp @@ -126,7 +126,9 @@ void Randomizer::Randomize() { _memory->ExecuteSigScans(); - //Tutorialise(0x33AF5, 0x0A3B2); + // Glass Factory Entry (for Mountain Blue 1 and 2) + Tutorialise(0x33AF5, 0x01A54); + Tutorialise(0x33AF7, 0x01A54); // Tutorial Bend for (int panel : utmPerspective) { @@ -194,8 +196,12 @@ void Randomizer::Tutorialise(int panel1, int tutorialStraight) { _memory->CopyArrayDynamicSize(tutorialStraight, panel1, DECORATIONS, NUM_DECORATIONS); _memory->CopyArrayDynamicSize(tutorialStraight, panel1, DECORATION_FLAGS, NUM_DECORATIONS); _memory->CopyArrayDynamicSize(tutorialStraight, panel1, DECORATION_COLORS, NUM_DECORATIONS); - //_memory->CopyArrayDynamicSize(tutorialStraight, panel1, REFLECTION_DATA, NUM_DOTS); - _memory->WritePanelData(panel1, REFLECTION_DATA, { 0 }); + if (_memory->ReadPanelData(tutorialStraight, REFLECTION_DATA)) { + _memory->CopyArrayDynamicSize(tutorialStraight, panel1, REFLECTION_DATA, NUM_DOTS); + } + else { + _memory->WritePanelData(panel1, REFLECTION_DATA, { 0 }); + } _memory->CopyEntityData(tutorialStraight, panel1, SEQUENCE_LEN, sizeof(int)); _memory->CopyArrayDynamicSize(tutorialStraight, panel1, SEQUENCE, SEQUENCE_LEN); _memory->CopyEntityData(tutorialStraight, panel1, DOT_SEQUENCE_LEN, sizeof(int)); -- cgit 1.4.1