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)
 |