20 lines
		
	
	
		
			567 B
		
	
	
	
		
			Python
		
	
	
	
			
		
		
	
	
			20 lines
		
	
	
		
			567 B
		
	
	
	
		
			Python
		
	
	
	
from ..assembler import ASM
 | 
						|
 | 
						|
 | 
						|
def onlyDropBombsWhenHaveBombs(rom):
 | 
						|
    rom.patch(0x03, 0x1FC5, ASM("call $608C"), ASM("call $50B2"))
 | 
						|
    # We use some of the unused chest code space here to remove the bomb if you do not have bombs in your inventory.
 | 
						|
    rom.patch(0x03, 0x10B2, 0x112A, ASM("""
 | 
						|
        ld   e, INV_SIZE
 | 
						|
        ld   hl, $DB00
 | 
						|
        ld   a, $02
 | 
						|
loop:
 | 
						|
        cp   [hl]
 | 
						|
        jr   z, resume
 | 
						|
        dec  e
 | 
						|
        inc  hl
 | 
						|
        jr   nz, loop
 | 
						|
        jp   $3F8D ; unload entity
 | 
						|
resume:
 | 
						|
        jp   $608C
 | 
						|
    """), fill_nop=True) |