mirror of
				https://github.com/thornAvery/jep-hack.git
				synced 2025-11-05 05:10:58 +13:00 
			
		
		
		
	Bridge Code
This commit is contained in:
		
							parent
							
								
									d0d6bbb8cf
								
							
						
					
					
						commit
						0b9a92c472
					
				| 
						 | 
				
			
			@ -84,4 +84,5 @@ MapScenes::
 | 
			
		|||
	scene_var MOUNT_MOON_SQUARE,                           wMountMoonSquareSceneID
 | 
			
		||||
	scene_var MOBILE_TRADE_ROOM,                           wMobileTradeRoomSceneID
 | 
			
		||||
	scene_var MOBILE_BATTLE_ROOM,                          wMobileBattleRoomSceneID
 | 
			
		||||
	scene_var CERULEAN_CAVE_1F,                            wCeruleanCave1FSceneID
 | 
			
		||||
	db -1 ; end
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1503,6 +1503,9 @@ SaveScreen_LoadConnection::
 | 
			
		|||
	jr nz, .row
 | 
			
		||||
	ret
 | 
			
		||||
 | 
			
		||||
GenericFinishBridge::
 | 
			
		||||
	ld a, 1
 | 
			
		||||
	ld [wOverworldDelaySkip], a
 | 
			
		||||
GetMovementPermissions::
 | 
			
		||||
	xor a
 | 
			
		||||
	ld [wTilePermissions], a
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -63,3 +63,13 @@ MACRO end_water_wildmons
 | 
			
		|||
	assert WATER_WILDDATA_LENGTH == @ - {CURRENT_WATER_WILDMONS_LABEL}, \
 | 
			
		||||
		"def_water_wildmons {CURRENT_WATER_WILDMONS_MAP}: expected {d:WATER_WILDDATA_LENGTH} bytes"
 | 
			
		||||
ENDM
 | 
			
		||||
 | 
			
		||||
MACRO jmp
 | 
			
		||||
	if _NARG == 1
 | 
			
		||||
		jp \1
 | 
			
		||||
	else
 | 
			
		||||
		jp \1, \2
 | 
			
		||||
		shift
 | 
			
		||||
	endc
 | 
			
		||||
	assert warn, (\1) - @ > 127 || (\1) - @ < -129, "jp can be jr"
 | 
			
		||||
ENDM
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -94,3 +94,11 @@ if _NARG == 0
 | 
			
		|||
	sine_table 32
 | 
			
		||||
endc
 | 
			
		||||
ENDM
 | 
			
		||||
 | 
			
		||||
MACRO changebridgeblock
 | 
			
		||||
	; lb de, \1 + 4, \2 + 4
 | 
			
		||||
	; call GetBlockLocation
 | 
			
		||||
	ld hl, wOverworldMapBlocks + (\2 / 2 + 3) * (\4_WIDTH + 6) + \1 / 2 + 3
 | 
			
		||||
	; hard-coding the above calculation for efficiency
 | 
			
		||||
	ld [hl], \3
 | 
			
		||||
ENDM
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1077,4 +1077,13 @@ MACRO checkmaplockedmons
 | 
			
		|||
	db checkmaplockedmons_command
 | 
			
		||||
ENDM
 | 
			
		||||
 | 
			
		||||
MACRO callthisasm
 | 
			
		||||
	; "callasm .asm\@" causes a "File stack dump too long, got truncated"
 | 
			
		||||
	; error due to the long filename:linenumber trace of nested macros.
 | 
			
		||||
	db callasm_command
 | 
			
		||||
	dba .asm\@
 | 
			
		||||
	end
 | 
			
		||||
.asm\@
 | 
			
		||||
ENDM
 | 
			
		||||
 | 
			
		||||
DEF NUM_EVENT_COMMANDS EQU const_value
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2,6 +2,48 @@ CeruleanCave1F_MapScripts:
 | 
			
		|||
	def_scene_scripts
 | 
			
		||||
 | 
			
		||||
	def_callbacks
 | 
			
		||||
CeruleanCave1FTileScript:
 | 
			
		||||
	checkscene
 | 
			
		||||
	iftrue .underfoot
 | 
			
		||||
	callasm CeruleanCave1F_OverheadBridgeAsm
 | 
			
		||||
	endcallback
 | 
			
		||||
 | 
			
		||||
.underfoot:
 | 
			
		||||
	callasm CeruleanCave1F_UnderfootBridgeAsm
 | 
			
		||||
	endcallback
 | 
			
		||||
 | 
			
		||||
CeruleanCave1F_OverheadBridgeAsm:
 | 
			
		||||
	changebridgeblock 20, 2, $ea, CERULEAN_CAVE_1F
 | 
			
		||||
	changebridgeblock 22, 2, $eb, CERULEAN_CAVE_1F
 | 
			
		||||
	changebridgeblock 20, 4, $ee, CERULEAN_CAVE_1F
 | 
			
		||||
	changebridgeblock 22, 4, $ef, CERULEAN_CAVE_1F
 | 
			
		||||
	changebridgeblock 20, 6, $59, CERULEAN_CAVE_1F
 | 
			
		||||
	changebridgeblock 22, 6, $5b, CERULEAN_CAVE_1F
 | 
			
		||||
	jmp BufferScreen
 | 
			
		||||
 | 
			
		||||
CeruleanCave1F_UnderfootBridgeAsm:
 | 
			
		||||
	changebridgeblock 20, 2, $e8, CERULEAN_CAVE_1F
 | 
			
		||||
	changebridgeblock 22, 2, $e9, CERULEAN_CAVE_1F
 | 
			
		||||
	changebridgeblock 20, 4, $ec, CERULEAN_CAVE_1F
 | 
			
		||||
	changebridgeblock 22, 4, $ed, CERULEAN_CAVE_1F
 | 
			
		||||
	changebridgeblock 20, 6, $55, CERULEAN_CAVE_1F
 | 
			
		||||
	changebridgeblock 22, 6, $57, CERULEAN_CAVE_1F
 | 
			
		||||
	jmp BufferScreen
 | 
			
		||||
 | 
			
		||||
CeruleanCave1FBridgeOverheadTrigger:
 | 
			
		||||
	callasm CeruleanCave1F_OverheadBridgeAsm
 | 
			
		||||
	callthisasm
 | 
			
		||||
	xor a
 | 
			
		||||
	jr CeruleanCave1F_FinishBridge
 | 
			
		||||
 | 
			
		||||
CeruleanCave1FBridgeUnderfootTrigger:
 | 
			
		||||
	callasm CeruleanCave1F_UnderfootBridgeAsm
 | 
			
		||||
	callthisasm
 | 
			
		||||
	ld a, $1
 | 
			
		||||
CeruleanCave1F_FinishBridge:
 | 
			
		||||
	ld [wWalkingOnBridge], a
 | 
			
		||||
	ld [wCeruleanCave1FSceneID], a ; setscene a
 | 
			
		||||
	jmp GenericFinishBridge
 | 
			
		||||
 | 
			
		||||
CeruleanCave1F_MapEvents:
 | 
			
		||||
	def_warp_events
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1838,7 +1838,7 @@ wBufferMon:: party_struct wBufferMon
 | 
			
		|||
	ds 8
 | 
			
		||||
wMonOrItemNameBuffer:: ds NAME_LENGTH
 | 
			
		||||
	ds NAME_LENGTH
 | 
			
		||||
 | 
			
		||||
wOverworldDelaySkip:: db
 | 
			
		||||
 | 
			
		||||
SECTION UNION "Miscellaneous WRAM 1", WRAMX
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -3120,6 +3120,7 @@ wFastShipB1FSceneID::                             db
 | 
			
		|||
wMountMoonSquareSceneID::                         db
 | 
			
		||||
wMobileTradeRoomSceneID::                         db
 | 
			
		||||
wMobileBattleRoomSceneID::                        db
 | 
			
		||||
wCeruleanCave1FSceneID::                          db
 | 
			
		||||
 | 
			
		||||
	ds 49
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -3235,6 +3236,9 @@ wdc41:: ds 1
 | 
			
		|||
wdc42:: ds 8
 | 
			
		||||
wBuenasPassword:: db
 | 
			
		||||
wBlueCardBalance:: db
 | 
			
		||||
 | 
			
		||||
wWalkingOnBridge:: db
 | 
			
		||||
 | 
			
		||||
wDailyRematchFlags:: ds 4
 | 
			
		||||
wDailyPhoneItemFlags:: ds 4
 | 
			
		||||
wDailyPhoneTimeOfDayFlags:: ds 4
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in a new issue