From 1f4b4ab5fb6dda5a3bb71b81f4ada95ec7d3d1f9 Mon Sep 17 00:00:00 2001 From: Kevin Cathcart Date: Sun, 15 Jul 2018 15:58:46 -0400 Subject: [PATCH] Allow non-rando item recive messages to potentially be disabled --- dialog.asm | 12 ++++++++++++ hooks.asm | 5 +++-- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/dialog.asm b/dialog.asm index 5076d5b..3349e79 100644 --- a/dialog.asm +++ b/dialog.asm @@ -255,6 +255,18 @@ DialogResetSelectionIndex: STZ $1CE8 RTL ;-------------------------------------------------------------------------------- +DialogItemReceive: + BCS .noMessage ; if doubling the item value overflowed it must be a rando item + CPY #$98 : !BLT + ;if the item is $4C or greater it must be a rando item + .noMessage + LDA.w #$FFFF + BRA .done + + + LDA Ancilla_ReceiveItem_item_messages, Y + .done + CMP.w #$FFFF +RTL +;-------------------------------------------------------------------------------- DialogFairyThrow: LDA.l Restrict_Ponds : BEQ .normal LDA $7EF35C : ORA $7EF35D : ORA $7EF35E : ORA $7EF35F : BNE .normal diff --git a/hooks.asm b/hooks.asm index 63774d9..d177cd2 100644 --- a/hooks.asm +++ b/hooks.asm @@ -1499,9 +1499,10 @@ org $08C3FD ; <- 443FD - ancilla_receive_item.asm : 89 LDA #$40 : STA !MS_GOT ;;NOP #6 ; don't set master sword follower ;-------------------------------------------------------------------------------- -;-- Disable all vanilla items (since item message table does not include rando items) org $08C5E5 ; <- 445ED - ancilla_receive_item.asm:395 (LDA .item_messages, Y : CMP.w #$FFFF : BEQ .handleGraphics) -LDA.w #$FFFF +JSL.l DialogItemReceive : NOP #2 +org $08C301 ; <- 44301 - ancilla_receive_item.asm:8 (.item_messages) +Ancilla_ReceiveItem_item_messages: ;-------------------------------------------------------------------------------- ;-- Reset Dialog Selection index for each new message org $0EEE5D ; <- 76E5D - vwf.asm:84 (JSL Attract_DecompressStoryGfx)