From 634216852961d3fa4744705c54f38423ec08d2f1 Mon Sep 17 00:00:00 2001 From: scawful Date: Thu, 10 Aug 2023 21:13:48 -0400 Subject: [PATCH] add together_warp_tag, 4 pane warp dungeon rooms --- Dungeons/together_warp_tag.asm | 47 ++++++++++++++++++++++++++++++++++ Oracle_main.asm | 5 ++++ 2 files changed, 52 insertions(+) create mode 100644 Dungeons/together_warp_tag.asm diff --git a/Dungeons/together_warp_tag.asm b/Dungeons/together_warp_tag.asm new file mode 100644 index 0000000..232f7a7 --- /dev/null +++ b/Dungeons/together_warp_tag.asm @@ -0,0 +1,47 @@ +; ============================================================================== +; Special Warp room tag +; Written by Jared_Brian_ +; 11-19-2022 +; +; Edit by scawful since I'm already using Holes(7) +; ============================================================================== +; Replaces the "Holes(8)" tag in HM or ZS. Makes it so that what room the player +; will warp to when falling in a hole or using a warp pad will change depending +; on the player's position in the room. This uses the 4 "stairs" properties in +; the room header. + +; ============================================================================== + +;relpaces the original tag. + +dw $CC1C ; = $CC1C* ; routine 0x3A "Holes(8)" + +org $01CC1C + JML WarpTag + +org $01CC5A + WarpTag_Return: + +; ============================================================================== + +org $338000 +WarpTag: +{ + PHX + + ; Get a value 0-3 that represents where we are in the room + ; ----------- + ; | 0 | 1 | + ; | | | + ; ----------- + ; | 2 | 3 | + ; | | | + ; ----------- + LDA $A9 : CLC : ADC $AA : TAX + LDA $7EC001, X : STA $7EC000 + + PLX + JML WarpTag_Return +} + +; ============================================================================== \ No newline at end of file diff --git a/Oracle_main.asm b/Oracle_main.asm index ad4b20f..09d436b 100644 --- a/Oracle_main.asm +++ b/Oracle_main.asm @@ -136,6 +136,8 @@ namespace Oracle incsrc "Masks/wolf_mask.asm" print "End of Masks/wolf_mask.asm ", pc + warnpc $07FFFF + print "" ; --------------------------------------------------------- @@ -208,6 +210,9 @@ namespace Oracle incsrc "Dungeons/mothula.asm" print "End of Dungeons/mothula.asm ", pc + incsrc "Dungeons/together_warp_tag.asm" + print "End of together_warp_tag.asm ", pc + print ""