Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions assembler.const
Original file line number Diff line number Diff line change
Expand Up @@ -171,6 +171,15 @@ DE11:wCuccoSpawnCount
DE12:wDropBombSpawnCount
DE13:wLinkSpawnDelay

DD20:wQuickswapSlot
DD21:wQuickswapIndex
DD22:wQuickswapPreviewB1
DD23:wQuickswapPreviewB2
DD24:wQuickswapPreviewA1
DD25:wQuickswapPreviewA2
B030:wRecentItemListSlotB ; length of 16 bytes
B040:wRecentItemListSlotA ; length of 16 bytes

FF00:rP1
FF01:rSB
FF02:rSC
Expand Down
7 changes: 5 additions & 2 deletions generator.py
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@
import patches.tradeSequence
import patches.alttp
import patches.colorBook
import patches.quickswap
import hints
import locations.keyLocation

Expand Down Expand Up @@ -251,9 +252,11 @@ def generateRom(args, settings, seed, logic, *, rnd=None):

patches.inventory.songSelectAfterOcarinaSelect(rom)
if settings.quickswap == 'a':
patches.core.quickswap(rom, 1)
patches.quickswap.simple_quickswap(rom, 1)
elif settings.quickswap == 'b':
patches.core.quickswap(rom, 0)
patches.quickswap.simple_quickswap(rom, 0)
elif settings.quickswap == 'dynamic':
patches.quickswap.dynamic_quickswap(rom, settings)

hints.addHints(rom, rnd, logic.iteminfo_list)

Expand Down
26 changes: 25 additions & 1 deletion patches/bank3e.asm/main.asm
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,17 @@ MainJumpTable:
dw EvilShopQuestion ; 13
dw EvilShopBuy ; 14
dw OverrideShopMessage ; 15
dw QuickswapDraw ; 16
dw QuickswapResetB ; 17
dw QuickswapResetA ; 18
dw QuickswapResetMenuB ; 19
dw QuickswapResetMenuA ; 1A
dw QuickswapResetOnNewItem ; 1B
dw Quickswap ; 1C
dw QuickswapRemoveArrow ; 1D
dw QuickswapResetOnGrab ; 1E
dw QuickswapUpdatePreview ; 1F
dw QuickswapResetOnFileLoad ; 20

StartGameMarinMessage:
; Injection to reset our frame counter
Expand All @@ -43,6 +54,18 @@ StartGameMarinMessage:
ldi [hl], a ;check counter low
ldi [hl], a ;check counter high

push bc
ld hl, wRecentItemListSlotB
ld bc, wRecentItemListSlotA
ld d, $10
.loop:
ldi [hl], a
ld [bc], a
inc bc
dec d
jr nz, .loop
pop bc

; Show the normal message
ld a, $01
jp $2385
Expand Down Expand Up @@ -155,4 +178,5 @@ WriteToVRAM:
#INCLUDE "message.asm"
#INCLUDE "owl.asm"
#INCLUDE "evilshop.asm"
#INCLUDE "nightmareminiboss.asm"
#INCLUDE "nightmareminiboss.asm"
#INCLUDE "quickswap.asm"
Loading