mirror of
https://github.com/thornAvery/jep-hack.git
synced 2025-09-17 02:30:50 +12: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