From c63a1b519489ee703da6eae0abc3a5d53a97648c Mon Sep 17 00:00:00 2001 From: Miepee <38186597+Miepee@users.noreply.github.com> Date: Fri, 22 Dec 2023 14:44:24 +0100 Subject: [PATCH] Add a softlock prevention to SM chamber (#126) --- CHANGELOG.md | 1 + YAMS-LIB/Program.cs | 3 +++ 2 files changed, 4 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index e9e3596..d6a020d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,7 @@ This format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) ## [1.1.0] - 2023-12-?? ### Added - An item collection screen will now be shown, when the user starts with random items. +- When softlock prevention is active, then the first two crumble blocks in Super Missile Chamber will be shoot blocks instead. ## [1.0.3] - 2023-11-24 ### Added diff --git a/YAMS-LIB/Program.cs b/YAMS-LIB/Program.cs index caf5dc5..f88f9a1 100644 --- a/YAMS-LIB/Program.cs +++ b/YAMS-LIB/Program.cs @@ -2671,6 +2671,9 @@ void RotateTextureAndSaveToTexturePage(int rotation, UndertaleTexturePageItem te gmData.Code.ByName(codeName).ReplaceGMLInCode("oControl.mod_previous_room == 214 && global.spiderball == 0", "global.targetx == 416"); } + // Super Missile chamber - make first two crumble blocks shoot blocks + gmData.Code.ByName("gml_Room_rm_a3a23a_Create").AppendGMLInCode("if (global.softlockPrevention) { with (119465) instance_destroy(); with (119465) instance_destroy(); instance_create(304, 96, oBlockShoot); instance_create(304, 112, oBlockShoot);}"); + // The bomb block puzzle in the room before varia dont need to be done anymore because it's already now covered by "dont regen bomb blocks" option gmData.Code.ByName("gml_RoomCC_rm_a2a06_4761_Create").ReplaceGMLInCode( "if (oControl.mod_randomgamebool == 1 && global.hasBombs == 0 && (!global.hasJumpball) && global.hasGravity == 0)",