mirror of
https://gitlab.com/xCrystal/pokecrystal-board.git
synced 2024-11-16 11:27:33 -08:00
Identify more sprite graphics and map object labels, and have consistent anonymous jumptable labels
This commit is contained in:
parent
ae4fe08084
commit
b9a74ff777
@ -163,7 +163,7 @@ BattleBGEffects_AnonJumptable:
|
||||
ld l, a
|
||||
jp hl
|
||||
|
||||
BattleBGEffects_IncrementJumptable:
|
||||
BattleBGEffects_IncAnonJumptableIndex:
|
||||
ld hl, BG_EFFECT_STRUCT_JT_INDEX
|
||||
add hl, bc
|
||||
inc [hl]
|
||||
@ -342,13 +342,13 @@ BattleBGEffect_HideMon:
|
||||
call BattleBGEffects_AnonJumptable
|
||||
.anon_dw
|
||||
dw .zero
|
||||
dw BattleBGEffects_IncrementJumptable
|
||||
dw BattleBGEffects_IncrementJumptable
|
||||
dw BattleBGEffects_IncrementJumptable
|
||||
dw BattleBGEffects_IncAnonJumptableIndex
|
||||
dw BattleBGEffects_IncAnonJumptableIndex
|
||||
dw BattleBGEffects_IncAnonJumptableIndex
|
||||
dw .four
|
||||
|
||||
.zero
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
push bc
|
||||
call BGEffect_CheckBattleTurn
|
||||
jr nz, .player_side
|
||||
@ -408,9 +408,9 @@ BattleBGEffect_BattlerObj_1Row:
|
||||
.anon_dw
|
||||
dw .zero
|
||||
dw .one
|
||||
dw BattleBGEffects_IncrementJumptable
|
||||
dw BattleBGEffects_IncrementJumptable
|
||||
dw BattleBGEffects_IncrementJumptable
|
||||
dw BattleBGEffects_IncAnonJumptableIndex
|
||||
dw BattleBGEffects_IncAnonJumptableIndex
|
||||
dw BattleBGEffects_IncAnonJumptableIndex
|
||||
dw .five
|
||||
|
||||
.zero
|
||||
@ -422,7 +422,7 @@ BattleBGEffect_BattlerObj_1Row:
|
||||
ret
|
||||
|
||||
.not_flying_digging
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
push bc
|
||||
call BGEffect_CheckBattleTurn
|
||||
jr nz, .player_side
|
||||
@ -446,7 +446,7 @@ BattleBGEffect_BattlerObj_1Row:
|
||||
ret
|
||||
|
||||
.one
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
push bc
|
||||
call BGEffect_CheckBattleTurn
|
||||
jr nz, .player_side_2
|
||||
@ -475,9 +475,9 @@ BattleBGEffect_BattlerObj_2Row:
|
||||
.anon_dw
|
||||
dw .zero
|
||||
dw .one
|
||||
dw BattleBGEffects_IncrementJumptable
|
||||
dw BattleBGEffects_IncrementJumptable
|
||||
dw BattleBGEffects_IncrementJumptable
|
||||
dw BattleBGEffects_IncAnonJumptableIndex
|
||||
dw BattleBGEffects_IncAnonJumptableIndex
|
||||
dw BattleBGEffects_IncAnonJumptableIndex
|
||||
dw .five
|
||||
|
||||
.zero
|
||||
@ -489,7 +489,7 @@ BattleBGEffect_BattlerObj_2Row:
|
||||
ret
|
||||
|
||||
.not_flying_digging
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
push bc
|
||||
call BGEffect_CheckBattleTurn
|
||||
jr nz, .player_side
|
||||
@ -513,7 +513,7 @@ BattleBGEffect_BattlerObj_2Row:
|
||||
ret
|
||||
|
||||
.one
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
push bc
|
||||
call BGEffect_CheckBattleTurn
|
||||
jr nz, .player_side_2
|
||||
@ -547,12 +547,12 @@ BattleBGEffect_RemoveMon:
|
||||
.anon_dw
|
||||
dw .zero
|
||||
dw .one
|
||||
dw BattleBGEffects_IncrementJumptable
|
||||
dw BattleBGEffects_IncrementJumptable
|
||||
dw BattleBGEffects_IncAnonJumptableIndex
|
||||
dw BattleBGEffects_IncAnonJumptableIndex
|
||||
dw .four
|
||||
|
||||
.zero
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
call BGEffect_CheckBattleTurn
|
||||
ld [hl], a
|
||||
ld hl, BG_EFFECT_STRUCT_BATTLE_TURN
|
||||
@ -619,7 +619,7 @@ BattleBGEffect_RemoveMon:
|
||||
ldh [hBGMapThird], a
|
||||
ld a, $1
|
||||
ldh [hBGMapMode], a
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
ld hl, BG_EFFECT_STRUCT_03
|
||||
add hl, bc
|
||||
dec [hl]
|
||||
@ -708,8 +708,8 @@ BattleBGEffect_RunPicResizeScript:
|
||||
call BattleBGEffects_AnonJumptable
|
||||
.anon_dw
|
||||
dw .zero
|
||||
dw BattleBGEffects_IncrementJumptable
|
||||
dw BattleBGEffects_IncrementJumptable
|
||||
dw BattleBGEffects_IncAnonJumptableIndex
|
||||
dw BattleBGEffects_IncAnonJumptableIndex
|
||||
dw .restart
|
||||
dw .end
|
||||
|
||||
@ -735,7 +735,7 @@ BattleBGEffect_RunPicResizeScript:
|
||||
jr z, .skip
|
||||
call .PlaceGraphic
|
||||
.skip
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
ld a, $1
|
||||
ldh [hBGMapMode], a
|
||||
ret
|
||||
@ -911,7 +911,7 @@ BattleBGEffect_Surf:
|
||||
dw .two
|
||||
|
||||
.zero
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
lb de, 2, 2
|
||||
call InitSurfWaves
|
||||
|
||||
@ -977,7 +977,7 @@ BattleBGEffect_Whirlpool:
|
||||
dw .two
|
||||
|
||||
.zero
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
call BattleBGEffects_ClearLYOverrides
|
||||
ld a, LOW(rSCY)
|
||||
ldh [hLCDCPointer], a
|
||||
@ -1052,7 +1052,7 @@ BattleBGEffect_Psychic:
|
||||
dw .two
|
||||
|
||||
.zero
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
call BattleBGEffects_ClearLYOverrides
|
||||
ld a, LOW(rSCX)
|
||||
ldh [hLCDCPointer], a
|
||||
@ -1089,7 +1089,7 @@ BattleBGEffect_Teleport:
|
||||
dw .two
|
||||
|
||||
.zero
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
call BattleBGEffects_ClearLYOverrides
|
||||
ld a, LOW(rSCX)
|
||||
call BattleBGEffect_SetLCDStatCustoms1
|
||||
@ -1113,7 +1113,7 @@ BattleBGEffect_NightShade:
|
||||
dw .two
|
||||
|
||||
.zero
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
call BattleBGEffects_ClearLYOverrides
|
||||
ld a, LOW(rSCY)
|
||||
call BattleBGEffect_SetLCDStatCustoms1
|
||||
@ -1143,7 +1143,7 @@ BattleBGEffect_DoubleTeam:
|
||||
dw .five
|
||||
|
||||
.zero
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
call BattleBGEffects_ClearLYOverrides
|
||||
ld a, LOW(rSCX)
|
||||
call BattleBGEffect_SetLCDStatCustoms1
|
||||
@ -1176,7 +1176,7 @@ BattleBGEffect_DoubleTeam:
|
||||
ret
|
||||
|
||||
.next
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
ret
|
||||
|
||||
.two
|
||||
@ -1234,7 +1234,7 @@ BattleBGEffect_AcidArmor:
|
||||
dw .two
|
||||
|
||||
.zero
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
call BattleBGEffects_ClearLYOverrides
|
||||
ld a, LOW(rSCY)
|
||||
call BattleBGEffect_SetLCDStatCustoms1
|
||||
@ -1296,7 +1296,7 @@ BattleBGEffect_Withdraw:
|
||||
dw .two
|
||||
|
||||
.zero
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
call BattleBGEffects_ClearLYOverrides
|
||||
ld a, LOW(rSCY)
|
||||
call BattleBGEffect_SetLCDStatCustoms1
|
||||
@ -1345,7 +1345,7 @@ BattleBGEffect_Dig:
|
||||
dw .three
|
||||
|
||||
.zero
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
call BattleBGEffects_ClearLYOverrides
|
||||
ld a, LOW(rSCY)
|
||||
call BattleBGEffect_SetLCDStatCustoms1
|
||||
@ -1371,7 +1371,7 @@ BattleBGEffect_Dig:
|
||||
|
||||
.next
|
||||
ld [hl], $10
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
.two
|
||||
ldh a, [hLYOverrideStart]
|
||||
ld l, a
|
||||
@ -1414,7 +1414,7 @@ BattleBGEffect_Tackle:
|
||||
; Prepares mon to move forward (player moves right, enemy moves left)
|
||||
; BG_EFFECT_STRUCT_03 will keep track of distance moved, so it's reset to 0 here
|
||||
; BG_EFFECT_STRUCT_BATTLE_TURN is set to 2 or -2 depending on target
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
call BattleBGEffects_ClearLYOverrides
|
||||
ld a, LOW(rSCX)
|
||||
call BattleBGEffect_SetLCDStatCustoms1
|
||||
@ -1451,7 +1451,7 @@ BattleBGEffect_BodySlam:
|
||||
; Prepares mon to move forward (player moves right, enemy moves left)
|
||||
; BG_EFFECT_STRUCT_03 will keep track of distance moved, so it's reset to 0 here
|
||||
; BG_EFFECT_STRUCT_BATTLE_TURN is set to 2 or -2 depending on target
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
call BattleBGEffects_ClearLYOverrides
|
||||
ld a, LOW(rSCX)
|
||||
call BattleBGEffect_SetLCDStatCustoms2
|
||||
@ -1488,7 +1488,7 @@ Tackle_MoveForward:
|
||||
cp 8
|
||||
jr nz, .finish
|
||||
.reached_limit
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
.finish
|
||||
call Rollout_FillLYOverridesBackup
|
||||
ld hl, BG_EFFECT_STRUCT_BATTLE_TURN
|
||||
@ -1509,7 +1509,7 @@ Tackle_ReturnMove:
|
||||
ld a, [hl]
|
||||
and a
|
||||
jr nz, .move_back
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
.move_back
|
||||
call Rollout_FillLYOverridesBackup
|
||||
ld hl, BG_EFFECT_STRUCT_BATTLE_TURN
|
||||
@ -1590,7 +1590,7 @@ BattleBGEffect_BetaPursuit: ; unused
|
||||
VitalThrow_MoveBackwards:
|
||||
; Prepares mon to move back back (player moves left, enemy moves right)
|
||||
; BG_EFFECT_STRUCT_03: keeps track of distance moved, so it's reset to 0 here
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
call BattleBGEffects_ClearLYOverrides
|
||||
ld a, LOW(rSCX)
|
||||
call BattleBGEffect_SetLCDStatCustoms1
|
||||
@ -1634,7 +1634,7 @@ BattleBGEffect_WobbleMon:
|
||||
dw .two
|
||||
|
||||
.zero
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
call BattleBGEffects_ClearLYOverrides
|
||||
ld a, LOW(rSCX)
|
||||
call BattleBGEffect_SetLCDStatCustoms1
|
||||
@ -1672,7 +1672,7 @@ BattleBGEffect_Flail:
|
||||
dw .two
|
||||
|
||||
.zero
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
call BattleBGEffects_ClearLYOverrides
|
||||
ld a, LOW(rSCX)
|
||||
call BattleBGEffect_SetLCDStatCustoms1
|
||||
@ -1726,7 +1726,7 @@ BattleBGEffect_WaveDeformMon:
|
||||
dw .two
|
||||
|
||||
.zero
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
call BattleBGEffects_ClearLYOverrides
|
||||
ld a, LOW(rSCX)
|
||||
call BattleBGEffect_SetLCDStatCustoms1
|
||||
@ -1768,7 +1768,7 @@ BattleBGEffect_BounceDown:
|
||||
dw .two
|
||||
|
||||
.zero
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
call BattleBGEffects_ClearLYOverrides
|
||||
ld a, LOW(rSCY)
|
||||
call BattleBGEffect_SetLCDStatCustoms2
|
||||
@ -1821,7 +1821,7 @@ BattleBGEffect_BetaSendOutMon1: ; unused
|
||||
dw .five
|
||||
|
||||
.zero
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
ld a, $e4
|
||||
call BattleBGEffects_SetLYOverrides
|
||||
ld a, $47
|
||||
@ -1861,7 +1861,7 @@ BattleBGEffect_BetaSendOutMon1: ; unused
|
||||
ldh a, [hLYOverrideStart]
|
||||
inc a
|
||||
ldh [hLYOverrideStart], a
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
ret
|
||||
|
||||
.three
|
||||
@ -1875,7 +1875,7 @@ BattleBGEffect_BetaSendOutMon1: ; unused
|
||||
ret
|
||||
|
||||
.finish
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
ret
|
||||
|
||||
.SetLYOverridesBackup:
|
||||
@ -1925,7 +1925,7 @@ BattleBGEffect_BetaSendOutMon2: ; unused
|
||||
dw .one
|
||||
|
||||
.zero
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
call BattleBGEffects_ClearLYOverrides
|
||||
ld a, LOW(rSCX)
|
||||
call BattleBGEffect_SetLCDStatCustoms1
|
||||
@ -1965,7 +1965,7 @@ BattleBGEffect_FadeMonsToBlackRepeating:
|
||||
dw .two
|
||||
|
||||
.zero
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
ld a, $e4
|
||||
call BattleBGEffects_SetLYOverrides
|
||||
ld a, LOW(rBGP)
|
||||
@ -2049,7 +2049,7 @@ BattleBGEffect_FadeMonsToBlackRepeating:
|
||||
dw .cgb_two
|
||||
|
||||
.cgb_zero
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
ld hl, BG_EFFECT_STRUCT_03
|
||||
add hl, bc
|
||||
ld [hl], $0
|
||||
@ -2201,7 +2201,7 @@ BattleBGEffect_VibrateMon:
|
||||
dw .one
|
||||
|
||||
.zero
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
call BattleBGEffects_ClearLYOverrides
|
||||
ld a, LOW(rSCX)
|
||||
call BattleBGEffect_SetLCDStatCustoms1
|
||||
@ -2247,7 +2247,7 @@ BattleBGEffect_WobblePlayer:
|
||||
dw .two
|
||||
|
||||
.zero
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
call BattleBGEffects_ClearLYOverrides
|
||||
ld a, LOW(rSCX)
|
||||
ldh [hLCDCPointer], a
|
||||
@ -2412,7 +2412,7 @@ BGEffect_RapidCyclePals:
|
||||
dw .two_dmg
|
||||
|
||||
.zero_dmg
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
ld a, $e4
|
||||
call BattleBGEffects_SetLYOverrides
|
||||
ld a, $47
|
||||
@ -2478,10 +2478,10 @@ BGEffect_RapidCyclePals:
|
||||
.zero_cgb
|
||||
call BGEffect_CheckBattleTurn
|
||||
jr nz, .player_turn_cgb
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
.player_turn_cgb
|
||||
call BattleBGEffects_IncrementJumptable
|
||||
call BattleBGEffects_IncAnonJumptableIndex
|
||||
ld hl, BG_EFFECT_STRUCT_03
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
|
@ -3,11 +3,11 @@ CARDFLIP_LIGHT_ON EQU "♀" ; $f5
|
||||
|
||||
CARDFLIP_DECK_SIZE EQU 4 * 6
|
||||
|
||||
; two labels below called from inside ./dummy_game.asm
|
||||
Unknown_e00ed:
|
||||
DummyGameGFX:
|
||||
; Graphics for an unused Game Corner
|
||||
; game were meant to be here.
|
||||
ret_e00ed:
|
||||
|
||||
UnusedCursor_InterpretJoypad_AnimateCursor:
|
||||
ret
|
||||
|
||||
_CardFlip:
|
||||
|
@ -14,10 +14,10 @@ _DummyGame:
|
||||
ld hl, DummyGameLZ
|
||||
ld de, vTiles2 tile $00
|
||||
call Decompress
|
||||
ld hl, Unknown_e00ed
|
||||
ld hl, DummyGameGFX
|
||||
ld de, vTiles0 tile $00
|
||||
ld bc, 4 tiles
|
||||
ld a, BANK(Unknown_e00ed)
|
||||
ld a, BANK(DummyGameGFX)
|
||||
call FarCopyBytes
|
||||
ld a, $8
|
||||
ld hl, wc300
|
||||
@ -77,7 +77,7 @@ _DummyGame:
|
||||
ret
|
||||
|
||||
.ResetBoard:
|
||||
call ret_e00ed
|
||||
call UnusedCursor_InterpretJoypad_AnimateCursor
|
||||
jr nc, .proceed
|
||||
ld hl, wJumptableIndex
|
||||
set 7, [hl]
|
||||
@ -232,7 +232,7 @@ endr
|
||||
ld hl, wJumptableIndex
|
||||
inc [hl]
|
||||
.AskPlayAgain:
|
||||
call ret_e00ed
|
||||
call UnusedCursor_InterpretJoypad_AnimateCursor
|
||||
jr nc, .restart
|
||||
ld hl, wJumptableIndex
|
||||
set 7, [hl]
|
||||
|
@ -13,52 +13,52 @@ DoAnimFrame:
|
||||
|
||||
.Jumptable:
|
||||
; entries correspond to SPRITE_ANIM_SEQ_* constants
|
||||
dw .Null
|
||||
dw .PartyMon
|
||||
dw .PartyMonSwitch
|
||||
dw .PartyMonSelected
|
||||
dw .GSTitleTrail
|
||||
dw .NamingScreenCursor
|
||||
dw .GameFreakLogo
|
||||
dw .GSGameFreakLogoStar
|
||||
dw .GSGameFreakLogoSparkle
|
||||
dw .SlotsGolem
|
||||
dw .SlotsChansey
|
||||
dw .SlotsChanseyEgg
|
||||
dw .MailCursor
|
||||
dw .UnusedCursor
|
||||
dw .DummyGameCursor
|
||||
dw .PokegearArrow
|
||||
dw .TradePokeBall
|
||||
dw .TradeTubeBulge
|
||||
dw .TrademonInTube
|
||||
dw .RevealNewMon
|
||||
dw .RadioTuningKnob
|
||||
dw .CutLeaves
|
||||
dw .FlyFrom
|
||||
dw .FlyLeaf
|
||||
dw .FlyTo
|
||||
dw .GSIntroHoOhLugia
|
||||
dw .EZChatCursor
|
||||
dw .MobileTradeSentPulse
|
||||
dw .MobileTradeOTPulse
|
||||
dw .IntroSuicune
|
||||
dw .IntroPichuWooper
|
||||
dw .Celebi
|
||||
dw .IntroUnown
|
||||
dw .IntroUnownF
|
||||
dw .IntroSuicuneAway
|
||||
dw AnimSeq_Null
|
||||
dw AnimSeq_PartyMon
|
||||
dw AnimSeq_PartyMonSwitch
|
||||
dw AnimSeq_PartyMonSelected
|
||||
dw AnimSeq_GSTitleTrail
|
||||
dw AnimSeq_NamingScreenCursor
|
||||
dw AnimSeq_GameFreakLogo
|
||||
dw AnimSeq_GSGameFreakLogoStar
|
||||
dw AnimSeq_GSGameFreakLogoSparkle
|
||||
dw AnimSeq_SlotsGolem
|
||||
dw AnimSeq_SlotsChansey
|
||||
dw AnimSeq_SlotsChanseyEgg
|
||||
dw AnimSeq_MailCursor
|
||||
dw AnimSeq_UnusedCursor
|
||||
dw AnimSeq_DummyGameCursor
|
||||
dw AnimSeq_PokegearArrow
|
||||
dw AnimSeq_TradePokeBall
|
||||
dw AnimSeq_TradeTubeBulge
|
||||
dw AnimSeq_TrademonInTube
|
||||
dw AnimSeq_RevealNewMon
|
||||
dw AnimSeq_RadioTuningKnob
|
||||
dw AnimSeq_CutLeaves
|
||||
dw AnimSeq_FlyFrom
|
||||
dw AnimSeq_FlyLeaf
|
||||
dw AnimSeq_FlyTo
|
||||
dw AnimSeq_GSIntroHoOhLugia
|
||||
dw AnimSeq_EZChatCursor
|
||||
dw AnimSeq_MobileTradeSentPulse
|
||||
dw AnimSeq_MobileTradeOTPulse
|
||||
dw AnimSeq_IntroSuicune
|
||||
dw AnimSeq_IntroPichuWooper
|
||||
dw AnimSeq_Celebi
|
||||
dw AnimSeq_IntroUnown
|
||||
dw AnimSeq_IntroUnownF
|
||||
dw AnimSeq_IntroSuicuneAway
|
||||
|
||||
.Null:
|
||||
AnimSeq_Null:
|
||||
ret
|
||||
|
||||
.PartyMon
|
||||
AnimSeq_PartyMon:
|
||||
ld a, [wMenuCursorY]
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_INDEX
|
||||
add hl, bc
|
||||
cp [hl]
|
||||
jr z, .PartyMonSwitch
|
||||
jr z, AnimSeq_PartyMonSwitch
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_XCOORD
|
||||
add hl, bc
|
||||
@ -69,7 +69,7 @@ DoAnimFrame:
|
||||
ld [hl], 0
|
||||
ret
|
||||
|
||||
.PartyMonSwitch
|
||||
AnimSeq_PartyMonSwitch:
|
||||
ld hl, SPRITEANIMSTRUCT_XCOORD
|
||||
add hl, bc
|
||||
ld [hl], 8 * 3
|
||||
@ -111,7 +111,7 @@ DoAnimFrame:
|
||||
ld [hl], a
|
||||
ret
|
||||
|
||||
.PartyMonSelected
|
||||
AnimSeq_PartyMonSelected:
|
||||
ld a, [wMenuCursorY]
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_INDEX
|
||||
@ -130,16 +130,15 @@ DoAnimFrame:
|
||||
ld [hl], 8 * 3
|
||||
ret
|
||||
|
||||
.GSTitleTrail
|
||||
call .AnonymousJumptable
|
||||
AnimSeq_GSTitleTrail:
|
||||
call AnimSeqs_AnonJumptable
|
||||
jp hl
|
||||
.anon_dw
|
||||
dw .zero
|
||||
dw .one
|
||||
|
||||
; Anonymous dw (see .AnonymousJumptable)
|
||||
dw .four_zero
|
||||
dw .four_one
|
||||
|
||||
.four_zero
|
||||
call .IncrementJumptableIndex
|
||||
.zero
|
||||
call AnimSeqs_IncAnonJumptableIndex
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_INDEX
|
||||
add hl, bc
|
||||
@ -156,16 +155,16 @@ DoAnimFrame:
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
|
||||
.four_one
|
||||
.one
|
||||
ld hl, SPRITEANIMSTRUCT_XCOORD
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
cp $a4
|
||||
jr nc, .asm_8d356
|
||||
jr nc, .delete
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_VAR2
|
||||
add hl, bc
|
||||
add $4
|
||||
add 4
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_XCOORD
|
||||
add hl, bc
|
||||
@ -187,72 +186,73 @@ DoAnimFrame:
|
||||
ld a, [hl]
|
||||
add 3
|
||||
ld [hl], a
|
||||
call .Sprites_Sine
|
||||
call AnimSeqs_Sine
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_YOFFSET
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
ret
|
||||
|
||||
.asm_8d356
|
||||
.delete
|
||||
call DeinitializeSprite
|
||||
ret
|
||||
|
||||
.GSIntroHoOhLugia
|
||||
AnimSeq_GSIntroHoOhLugia:
|
||||
ld hl, SPRITEANIMSTRUCT_VAR1
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
inc a
|
||||
ld [hl], a
|
||||
ld d, 2
|
||||
call .Sprites_Sine
|
||||
call AnimSeqs_Sine
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_YOFFSET
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
ret
|
||||
|
||||
.NamingScreenCursor
|
||||
AnimSeq_NamingScreenCursor:
|
||||
callfar NamingScreen_AnimateCursor
|
||||
ret
|
||||
|
||||
.MailCursor
|
||||
AnimSeq_MailCursor:
|
||||
callfar ComposeMail_AnimateCursor
|
||||
ret
|
||||
|
||||
.GameFreakLogo
|
||||
AnimSeq_GameFreakLogo:
|
||||
callfar GameFreakLogoSpriteAnim
|
||||
ret
|
||||
|
||||
.GSGameFreakLogoStar
|
||||
AnimSeq_GSGameFreakLogoStar:
|
||||
ld hl, SPRITEANIMSTRUCT_VAR1
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
and a
|
||||
jr z, .asm_8d3ba
|
||||
jr z, .delete
|
||||
|
||||
dec [hl]
|
||||
dec [hl]
|
||||
ld d, a
|
||||
and $1f
|
||||
jr nz, .asm_8d395
|
||||
|
||||
jr nz, .stay
|
||||
ld hl, SPRITEANIMSTRUCT_VAR2
|
||||
add hl, bc
|
||||
dec [hl]
|
||||
.asm_8d395
|
||||
|
||||
.stay
|
||||
ld hl, SPRITEANIMSTRUCT_JUMPTABLE_INDEX
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
push af
|
||||
push de
|
||||
call .Sprites_Sine
|
||||
call AnimSeqs_Sine
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_YOFFSET
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
pop de
|
||||
pop af
|
||||
call .Sprites_Cosine
|
||||
call AnimSeqs_Cosine
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_XOFFSET
|
||||
add hl, bc
|
||||
@ -268,18 +268,18 @@ DoAnimFrame:
|
||||
ld [hl], a
|
||||
ret
|
||||
|
||||
.asm_8d3ba
|
||||
.delete
|
||||
ld a, 1
|
||||
ld [wIntroSceneFrameCounter], a
|
||||
call DeinitializeSprite
|
||||
ret
|
||||
|
||||
.GSGameFreakLogoSparkle
|
||||
AnimSeq_GSGameFreakLogoSparkle:
|
||||
ld hl, SPRITEANIMSTRUCT_VAR1
|
||||
add hl, bc
|
||||
ld a, [hli]
|
||||
or [hl]
|
||||
jr z, .asm_8d41e
|
||||
jr z, .delete
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_VAR4
|
||||
add hl, bc
|
||||
@ -290,14 +290,14 @@ DoAnimFrame:
|
||||
ld a, [hl]
|
||||
push af
|
||||
push de
|
||||
call .Sprites_Sine
|
||||
call AnimSeqs_Sine
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_YOFFSET
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
pop de
|
||||
pop af
|
||||
call .Sprites_Cosine
|
||||
call AnimSeqs_Cosine
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_XOFFSET
|
||||
add hl, bc
|
||||
@ -347,15 +347,15 @@ DoAnimFrame:
|
||||
ld [hl], a
|
||||
ret
|
||||
|
||||
.asm_8d41e
|
||||
.delete
|
||||
call DeinitializeSprite
|
||||
ret
|
||||
|
||||
.SlotsGolem:
|
||||
AnimSeq_SlotsGolem:
|
||||
callfar Slots_AnimateGolem
|
||||
ret
|
||||
|
||||
.SlotsChansey:
|
||||
AnimSeq_SlotsChansey:
|
||||
callfar Slots_AnimateChansey
|
||||
ld hl, wcf64
|
||||
ld a, [hl]
|
||||
@ -366,7 +366,7 @@ DoAnimFrame:
|
||||
call _ReinitSpriteAnimFrame
|
||||
ret
|
||||
|
||||
.SlotsChanseyEgg:
|
||||
AnimSeq_SlotsChanseyEgg:
|
||||
ld hl, SPRITEANIMSTRUCT_JUMPTABLE_INDEX
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
@ -392,87 +392,86 @@ DoAnimFrame:
|
||||
.move_vertical
|
||||
ld a, e
|
||||
ld d, 32
|
||||
call .Sprites_Sine
|
||||
call AnimSeqs_Sine
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_YOFFSET
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
ret
|
||||
|
||||
.UnusedCursor
|
||||
callfar ret_e00ed
|
||||
AnimSeq_UnusedCursor:
|
||||
callfar UnusedCursor_InterpretJoypad_AnimateCursor
|
||||
ret
|
||||
|
||||
.PokegearArrow
|
||||
AnimSeq_PokegearArrow:
|
||||
callfar AnimatePokegearModeIndicatorArrow
|
||||
ret
|
||||
|
||||
.DummyGameCursor
|
||||
AnimSeq_DummyGameCursor:
|
||||
callfar DummyGame_InterpretJoypad_AnimateCursor
|
||||
ret
|
||||
|
||||
.TradePokeBall
|
||||
call .AnonymousJumptable
|
||||
AnimSeq_TradePokeBall:
|
||||
call AnimSeqs_AnonJumptable
|
||||
jp hl
|
||||
.anon_dw
|
||||
dw .zero
|
||||
dw .one
|
||||
dw .two
|
||||
dw .three
|
||||
dw .four
|
||||
dw .delete
|
||||
|
||||
; Anonymous dw (see .AnonymousJumptable)
|
||||
dw .TradePokeBall_zero
|
||||
dw .TradePokeBall_one
|
||||
dw .TradePokeBall_two
|
||||
dw .TradePokeBall_three
|
||||
dw .TradePokeBall_four
|
||||
dw .TradePokeBall_five
|
||||
|
||||
.TradePokeBall_zero
|
||||
.zero
|
||||
ld a, SPRITE_ANIM_FRAMESET_TRADE_POKE_BALL_WOBBLE
|
||||
call _ReinitSpriteAnimFrame
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_JUMPTABLE_INDEX
|
||||
add hl, bc
|
||||
ld [hl], $2
|
||||
ld [hl], 2 ; .two
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_VAR1
|
||||
add hl, bc
|
||||
ld [hl], $20
|
||||
ret
|
||||
|
||||
.TradePokeBall_two
|
||||
.two
|
||||
ld hl, SPRITEANIMSTRUCT_VAR1
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
and a
|
||||
jr z, .asm_8d4af
|
||||
jr z, .next
|
||||
dec [hl]
|
||||
ret
|
||||
|
||||
.asm_8d4af
|
||||
call .IncrementJumptableIndex
|
||||
.next
|
||||
call AnimSeqs_IncAnonJumptableIndex
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_VAR1
|
||||
add hl, bc
|
||||
ld [hl], $40
|
||||
|
||||
.TradePokeBall_three
|
||||
.three
|
||||
ld hl, SPRITEANIMSTRUCT_VAR1
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
cp 48
|
||||
jr c, .asm_8d4cd
|
||||
jr c, .done
|
||||
dec [hl]
|
||||
ld d, 40
|
||||
call .Sprites_Sine
|
||||
call AnimSeqs_Sine
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_YOFFSET
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
ret
|
||||
|
||||
.asm_8d4cd
|
||||
.done
|
||||
ld de, SFX_GOT_SAFARI_BALLS
|
||||
call PlaySFX
|
||||
jr .TradePokeBall_five
|
||||
jr .delete
|
||||
|
||||
.TradePokeBall_one
|
||||
.one
|
||||
ld hl, SPRITEANIMSTRUCT_JUMPTABLE_INDEX
|
||||
add hl, bc
|
||||
ld [hl], $4
|
||||
@ -486,12 +485,12 @@ DoAnimFrame:
|
||||
ld [hl], $24
|
||||
ret
|
||||
|
||||
.TradePokeBall_four
|
||||
.four
|
||||
ld hl, SPRITEANIMSTRUCT_VAR2
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
and a
|
||||
jr z, .asm_8d51c
|
||||
jr z, .done2
|
||||
|
||||
ld d, a
|
||||
ld hl, SPRITEANIMSTRUCT_VAR1
|
||||
@ -523,20 +522,20 @@ DoAnimFrame:
|
||||
call PlaySFX
|
||||
ret
|
||||
|
||||
.asm_8d51c
|
||||
.done2
|
||||
xor a
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_YOFFSET
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
call .IncrementJumptableIndex
|
||||
call AnimSeqs_IncAnonJumptableIndex
|
||||
ret
|
||||
|
||||
.TradePokeBall_five
|
||||
.delete
|
||||
call DeinitializeSprite
|
||||
ret
|
||||
|
||||
.TradeTubeBulge
|
||||
AnimSeq_TradeTubeBulge:
|
||||
ld hl, SPRITEANIMSTRUCT_XCOORD
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
@ -554,18 +553,18 @@ DoAnimFrame:
|
||||
call DeinitializeSprite
|
||||
ret
|
||||
|
||||
.TrademonInTube
|
||||
AnimSeq_TrademonInTube:
|
||||
callfar TradeAnim_AnimateTrademonInTube
|
||||
ret
|
||||
|
||||
.RevealNewMon:
|
||||
AnimSeq_RevealNewMon:
|
||||
ld hl, SPRITEANIMSTRUCT_VAR1
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
cp $80
|
||||
jr nc, .finish_EggShell
|
||||
ld d, a
|
||||
add $8
|
||||
add 8
|
||||
ld [hl], a
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_JUMPTABLE_INDEX
|
||||
@ -576,7 +575,7 @@ DoAnimFrame:
|
||||
|
||||
push af
|
||||
push de
|
||||
call .Sprites_Sine
|
||||
call AnimSeqs_Sine
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_YOFFSET
|
||||
add hl, bc
|
||||
@ -584,7 +583,7 @@ DoAnimFrame:
|
||||
|
||||
pop de
|
||||
pop af
|
||||
call .Sprites_Cosine
|
||||
call AnimSeqs_Cosine
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_XOFFSET
|
||||
add hl, bc
|
||||
@ -595,11 +594,11 @@ DoAnimFrame:
|
||||
call DeinitializeSprite
|
||||
ret
|
||||
|
||||
.RadioTuningKnob:
|
||||
AnimSeq_RadioTuningKnob:
|
||||
callfar AnimateTuningKnob
|
||||
ret
|
||||
|
||||
.CutLeaves
|
||||
AnimSeq_CutLeaves:
|
||||
ld hl, SPRITEANIMSTRUCT_VAR2
|
||||
add hl, bc
|
||||
ld e, [hl]
|
||||
@ -624,21 +623,21 @@ DoAnimFrame:
|
||||
inc [hl]
|
||||
push af
|
||||
push de
|
||||
call .Sprites_Sine
|
||||
call AnimSeqs_Sine
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_YOFFSET
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
pop de
|
||||
pop af
|
||||
call .Sprites_Cosine
|
||||
call AnimSeqs_Cosine
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_XOFFSET
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
ret
|
||||
|
||||
.FlyFrom:
|
||||
AnimSeq_FlyFrom:
|
||||
ld hl, SPRITEANIMSTRUCT_YCOORD
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
@ -663,21 +662,21 @@ DoAnimFrame:
|
||||
ld d, a
|
||||
cp $40
|
||||
jr nc, .skip
|
||||
add $8
|
||||
add 8
|
||||
ld [hl], a
|
||||
.skip
|
||||
ld hl, SPRITEANIMSTRUCT_VAR3
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
inc [hl]
|
||||
call .Sprites_Cosine
|
||||
call AnimSeqs_Cosine
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_XOFFSET
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
ret
|
||||
|
||||
.FlyLeaf:
|
||||
AnimSeq_FlyLeaf:
|
||||
ld hl, SPRITEANIMSTRUCT_XCOORD
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
@ -695,7 +694,7 @@ DoAnimFrame:
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
inc [hl]
|
||||
call .Sprites_Cosine
|
||||
call AnimSeqs_Cosine
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_XOFFSET
|
||||
add hl, bc
|
||||
@ -706,7 +705,7 @@ DoAnimFrame:
|
||||
call DeinitializeSprite
|
||||
ret
|
||||
|
||||
.FlyTo:
|
||||
AnimSeq_FlyTo:
|
||||
ld hl, SPRITEANIMSTRUCT_YCOORD
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
@ -723,35 +722,36 @@ DoAnimFrame:
|
||||
ld a, [hl]
|
||||
ld d, a
|
||||
and a
|
||||
jr z, .asm_8d621
|
||||
jr z, .stay
|
||||
sub $2
|
||||
ld [hl], a
|
||||
.asm_8d621
|
||||
.stay
|
||||
ld hl, SPRITEANIMSTRUCT_VAR3
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
inc [hl]
|
||||
call .Sprites_Cosine
|
||||
call AnimSeqs_Cosine
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_XOFFSET
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
ret
|
||||
|
||||
.MobileTradeSentPulse
|
||||
AnimSeq_MobileTradeSentPulse:
|
||||
farcall Function108bc7
|
||||
ret
|
||||
|
||||
.MobileTradeOTPulse
|
||||
AnimSeq_MobileTradeOTPulse:
|
||||
farcall Function108be0
|
||||
ret
|
||||
|
||||
.IntroSuicune
|
||||
AnimSeq_IntroSuicune:
|
||||
ld a, [wIntroSceneTimer]
|
||||
and a
|
||||
jr nz, .asm_8d645
|
||||
jr nz, .continue
|
||||
ret
|
||||
.asm_8d645
|
||||
|
||||
.continue
|
||||
ld hl, SPRITEANIMSTRUCT_YOFFSET
|
||||
add hl, bc
|
||||
ld [hl], $0
|
||||
@ -764,7 +764,7 @@ DoAnimFrame:
|
||||
xor $ff
|
||||
inc a
|
||||
ld d, 32
|
||||
call .Sprites_Sine
|
||||
call AnimSeqs_Sine
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_YOFFSET
|
||||
add hl, bc
|
||||
@ -773,26 +773,26 @@ DoAnimFrame:
|
||||
call _ReinitSpriteAnimFrame
|
||||
ret
|
||||
|
||||
.IntroPichuWooper
|
||||
AnimSeq_IntroPichuWooper:
|
||||
ld hl, SPRITEANIMSTRUCT_VAR1
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
cp 20
|
||||
jr nc, .asm_8d67f
|
||||
jr nc, .done
|
||||
add 2
|
||||
ld [hl], a
|
||||
xor $ff
|
||||
inc a
|
||||
ld d, 32
|
||||
call .Sprites_Sine
|
||||
call AnimSeqs_Sine
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_YOFFSET
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
.asm_8d67f
|
||||
.done
|
||||
ret
|
||||
|
||||
.IntroUnown
|
||||
AnimSeq_IntroUnown:
|
||||
ld hl, SPRITEANIMSTRUCT_JUMPTABLE_INDEX
|
||||
add hl, bc
|
||||
ld d, [hl]
|
||||
@ -804,21 +804,21 @@ DoAnimFrame:
|
||||
ld a, [hl]
|
||||
push af
|
||||
push de
|
||||
call .Sprites_Sine
|
||||
call AnimSeqs_Sine
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_YOFFSET
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
pop de
|
||||
pop af
|
||||
call .Sprites_Cosine
|
||||
call AnimSeqs_Cosine
|
||||
|
||||
ld hl, SPRITEANIMSTRUCT_XOFFSET
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
ret
|
||||
|
||||
.IntroUnownF
|
||||
AnimSeq_IntroUnownF:
|
||||
ld a, [wcf64]
|
||||
cp $40
|
||||
ret nz
|
||||
@ -826,23 +826,23 @@ DoAnimFrame:
|
||||
call _ReinitSpriteAnimFrame
|
||||
ret
|
||||
|
||||
.IntroSuicuneAway
|
||||
AnimSeq_IntroSuicuneAway:
|
||||
ld hl, SPRITEANIMSTRUCT_YCOORD
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
add $10
|
||||
add 16
|
||||
ld [hl], a
|
||||
ret
|
||||
|
||||
.EZChatCursor
|
||||
AnimSeq_EZChatCursor:
|
||||
farcall AnimateEZChatCursor
|
||||
ret
|
||||
|
||||
.Celebi
|
||||
AnimSeq_Celebi:
|
||||
farcall UpdateCelebiPosition
|
||||
ret
|
||||
|
||||
.AnonymousJumptable:
|
||||
AnimSeqs_AnonJumptable:
|
||||
ld hl, sp+0
|
||||
ld e, [hl]
|
||||
inc hl
|
||||
@ -860,16 +860,16 @@ DoAnimFrame:
|
||||
ld l, a
|
||||
ret
|
||||
|
||||
.IncrementJumptableIndex:
|
||||
AnimSeqs_IncAnonJumptableIndex:
|
||||
ld hl, SPRITEANIMSTRUCT_JUMPTABLE_INDEX
|
||||
add hl, bc
|
||||
inc [hl]
|
||||
ret
|
||||
|
||||
.Sprites_Sine:
|
||||
AnimSeqs_Sine:
|
||||
call Sprites_Sine
|
||||
ret
|
||||
|
||||
.Sprites_Cosine:
|
||||
AnimSeqs_Cosine:
|
||||
call Sprites_Cosine
|
||||
ret
|
||||
|
@ -134,7 +134,7 @@ HandleQueuedCommand:
|
||||
dba CmdQueue_Type3
|
||||
dba CmdQueue_Type4
|
||||
|
||||
CmdQueueAnonymousJumptable:
|
||||
CmdQueues_AnonJumptable:
|
||||
ld hl, CMDQUEUE_05
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
@ -142,13 +142,13 @@ CmdQueueAnonymousJumptable:
|
||||
rst JumpTable
|
||||
ret
|
||||
|
||||
CmdQueueAnonJT_Increment:
|
||||
CmdQueues_IncAnonJumptableIndex:
|
||||
ld hl, CMDQUEUE_05
|
||||
add hl, bc
|
||||
inc [hl]
|
||||
ret
|
||||
|
||||
CmdQueueAnonJT_Decrement:
|
||||
CmdQueues_DecAnonJumptableIndex:
|
||||
ld hl, CMDQUEUE_05
|
||||
add hl, bc
|
||||
dec [hl]
|
||||
@ -162,7 +162,7 @@ CmdQueue_Type1:
|
||||
ret
|
||||
|
||||
CmdQueue_Type4:
|
||||
call CmdQueueAnonymousJumptable
|
||||
call CmdQueues_AnonJumptable
|
||||
; anonymous dw
|
||||
dw .zero
|
||||
dw .one
|
||||
@ -172,7 +172,7 @@ CmdQueue_Type4:
|
||||
ld hl, CMDQUEUE_04
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
call CmdQueueAnonJT_Increment
|
||||
call CmdQueues_IncAnonJumptableIndex
|
||||
.one
|
||||
ld hl, CMDQUEUE_ADDR
|
||||
add hl, bc
|
||||
@ -206,7 +206,7 @@ CmdQueue_Type4:
|
||||
ret
|
||||
|
||||
CmdQueue_Type3:
|
||||
call CmdQueueAnonymousJumptable
|
||||
call CmdQueues_AnonJumptable
|
||||
; anonymous dw
|
||||
dw .zero
|
||||
dw .one
|
||||
@ -215,11 +215,11 @@ CmdQueue_Type3:
|
||||
.zero
|
||||
call .IsPlayerFacingDown
|
||||
jr z, .PlayerNotFacingDown
|
||||
call CmdQueueAnonJT_Increment
|
||||
call CmdQueues_IncAnonJumptableIndex
|
||||
.one
|
||||
call .IsPlayerFacingDown
|
||||
jr z, .PlayerNotFacingDown
|
||||
call CmdQueueAnonJT_Increment
|
||||
call CmdQueues_IncAnonJumptableIndex
|
||||
|
||||
ld hl, CMDQUEUE_02
|
||||
add hl, bc
|
||||
@ -230,7 +230,7 @@ CmdQueue_Type3:
|
||||
.two
|
||||
call .IsPlayerFacingDown
|
||||
jr z, .PlayerNotFacingDown
|
||||
call CmdQueueAnonJT_Decrement
|
||||
call CmdQueues_DecAnonJumptableIndex
|
||||
|
||||
ld hl, CMDQUEUE_03
|
||||
add hl, bc
|
||||
|
@ -433,25 +433,25 @@ RestoreDefaultMovement:
|
||||
ld a, SPRITEMOVEDATA_STANDING_DOWN
|
||||
ret
|
||||
|
||||
ClearObjectMovementByteIndex:
|
||||
ObjectMovementByte_ZeroAnonJumptableIndex: ; unreferenced
|
||||
ld hl, OBJECT_MOVEMENT_BYTE_INDEX
|
||||
add hl, bc
|
||||
ld [hl], 0
|
||||
ret
|
||||
|
||||
IncrementObjectMovementByteIndex:
|
||||
ObjectMovementByte_IncAnonJumptableIndex:
|
||||
ld hl, OBJECT_MOVEMENT_BYTE_INDEX
|
||||
add hl, bc
|
||||
inc [hl]
|
||||
ret
|
||||
|
||||
DecrementObjectMovementByteIndex:
|
||||
ObjectMovementByte_DecAnonJumptableIndex:
|
||||
ld hl, OBJECT_MOVEMENT_BYTE_INDEX
|
||||
add hl, bc
|
||||
dec [hl]
|
||||
ret
|
||||
|
||||
MovementAnonymousJumptable:
|
||||
ObjectMovementByte_AnonJumptable:
|
||||
ld hl, OBJECT_MOVEMENT_BYTE_INDEX
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
@ -459,19 +459,19 @@ MovementAnonymousJumptable:
|
||||
rst JumpTable
|
||||
ret
|
||||
|
||||
ClearObjectStructField1c:
|
||||
Field1c_ZeroAnonJumptableIndex:
|
||||
ld hl, OBJECT_1C
|
||||
add hl, bc
|
||||
ld [hl], 0
|
||||
ret
|
||||
|
||||
IncrementObjectStructField1c:
|
||||
Field1c_IncAnonJumptableIndex:
|
||||
ld hl, OBJECT_1C
|
||||
add hl, bc
|
||||
inc [hl]
|
||||
ret
|
||||
|
||||
Field1cAnonymousJumptable:
|
||||
Field1c_AnonJumptable:
|
||||
ld hl, OBJECT_1C
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
@ -479,13 +479,13 @@ Field1cAnonymousJumptable:
|
||||
rst JumpTable
|
||||
ret
|
||||
|
||||
GetValueObjectStructField1c:
|
||||
Field1c_GetAnonJumptableIndex: ; unreferenced
|
||||
ld hl, OBJECT_1C
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
ret
|
||||
|
||||
SetValueObjectStructField1c:
|
||||
Field1c_SetAnonJumptableIndex: ; unreferenced
|
||||
ld hl, OBJECT_1C
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
@ -512,7 +512,7 @@ ObjectMovementReset:
|
||||
ret
|
||||
|
||||
MapObjectMovementPattern:
|
||||
call ClearObjectStructField1c
|
||||
call Field1c_ZeroAnonJumptableIndex
|
||||
call GetSpriteMovementFunction
|
||||
ld a, [hl]
|
||||
ld hl, .Pointers
|
||||
@ -521,58 +521,58 @@ MapObjectMovementPattern:
|
||||
|
||||
.Pointers:
|
||||
; entries correspond to SPRITEMOVEFN_* constants
|
||||
dw .Null_00 ; 00
|
||||
dw .RandomWalkY ; 01
|
||||
dw .RandomWalkX ; 02
|
||||
dw .RandomWalkXY ; 03
|
||||
dw .RandomSpin1 ; 04
|
||||
dw .RandomSpin2 ; 05
|
||||
dw .Standing ; 06
|
||||
dw .ObeyDPad ; 07
|
||||
dw .Movement08 ; 08
|
||||
dw .Movement09 ; 09
|
||||
dw .Movement0a ; 0a
|
||||
dw .Movement0b ; 0b
|
||||
dw .Movement0c ; 0c
|
||||
dw .Movement0d ; 0d
|
||||
dw .Movement0e ; 0e
|
||||
dw .Follow ; 0f
|
||||
dw .Script ; 10
|
||||
dw .Strength ; 11
|
||||
dw .FollowNotExact ; 12
|
||||
dw .MovementShadow ; 13
|
||||
dw .MovementEmote ; 14
|
||||
dw .MovementBigStanding ; 15
|
||||
dw .MovementBouncing ; 16
|
||||
dw .MovementScreenShake ; 17
|
||||
dw .MovementSpinClockwise ; 18
|
||||
dw .MovementSpinCounterclockwise ; 19
|
||||
dw .MovementBoulderDust ; 1a
|
||||
dw .MovementShakingGrass ; 1b
|
||||
dw MovementFunction_Null ; 00
|
||||
dw MovementFunction_RandomWalkY ; 01
|
||||
dw MovementFunction_RandomWalkX ; 02
|
||||
dw MovementFunction_RandomWalkXY ; 03
|
||||
dw MovementFunction_RandomSpinSlow ; 04
|
||||
dw MovementFunction_RandomSpinFast ; 05
|
||||
dw MovementFunction_Standing ; 06
|
||||
dw MovementFunction_ObeyDPad ; 07
|
||||
dw MovementFunction_08 ; 08
|
||||
dw MovementFunction_09 ; 09
|
||||
dw MovementFunction_0a ; 0a
|
||||
dw MovementFunction_0b ; 0b
|
||||
dw MovementFunction_0c ; 0c
|
||||
dw MovementFunction_0d ; 0d
|
||||
dw MovementFunction_0e ; 0e
|
||||
dw MovementFunction_Follow ; 0f
|
||||
dw MovementFunction_Script ; 10
|
||||
dw MovementFunction_Strength ; 11
|
||||
dw MovementFunction_FollowNotExact ; 12
|
||||
dw MovementFunction_Shadow ; 13
|
||||
dw MovementFunction_Emote ; 14
|
||||
dw MovementFunction_BigStanding ; 15
|
||||
dw MovementFunction_Bouncing ; 16
|
||||
dw MovementFunction_ScreenShake ; 17
|
||||
dw MovementFunction_SpinClockwise ; 18
|
||||
dw MovementFunction_SpinCounterclockwise ; 19
|
||||
dw MovementFunction_BoulderDust ; 1a
|
||||
dw MovementFunction_ShakingGrass ; 1b
|
||||
|
||||
.Null_00:
|
||||
MovementFunction_Null:
|
||||
ret
|
||||
|
||||
.RandomWalkY:
|
||||
MovementFunction_RandomWalkY:
|
||||
call Random
|
||||
ldh a, [hRandomAdd]
|
||||
and %00000001
|
||||
jp .RandomWalkContinue
|
||||
jp _RandomWalkContinue
|
||||
|
||||
.RandomWalkX:
|
||||
MovementFunction_RandomWalkX:
|
||||
call Random
|
||||
ldh a, [hRandomAdd]
|
||||
and %00000001
|
||||
or %00000010
|
||||
jp .RandomWalkContinue
|
||||
jp _RandomWalkContinue
|
||||
|
||||
.RandomWalkXY:
|
||||
MovementFunction_RandomWalkXY:
|
||||
call Random
|
||||
ldh a, [hRandomAdd]
|
||||
and %00000011
|
||||
jp .RandomWalkContinue
|
||||
jp _RandomWalkContinue
|
||||
|
||||
.RandomSpin1:
|
||||
MovementFunction_RandomSpinSlow:
|
||||
call Random
|
||||
ldh a, [hRandomAdd]
|
||||
and %00001100
|
||||
@ -581,7 +581,7 @@ MapObjectMovementPattern:
|
||||
ld [hl], a
|
||||
jp RandomStepDuration_Slow
|
||||
|
||||
.RandomSpin2:
|
||||
MovementFunction_RandomSpinFast:
|
||||
ld hl, OBJECT_FACING
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
@ -597,7 +597,7 @@ MapObjectMovementPattern:
|
||||
ld [hl], a
|
||||
jp RandomStepDuration_Fast
|
||||
|
||||
.Standing:
|
||||
MovementFunction_Standing:
|
||||
call Function462a
|
||||
call EndSpriteMovement
|
||||
ld hl, OBJECT_ACTION
|
||||
@ -608,48 +608,49 @@ MapObjectMovementPattern:
|
||||
ld [hl], STEP_TYPE_05
|
||||
ret
|
||||
|
||||
.ObeyDPad:
|
||||
MovementFunction_ObeyDPad:
|
||||
ld hl, ApplyPlayerMovementByte
|
||||
jp HandleMovementData
|
||||
|
||||
.Movement08:
|
||||
MovementFunction_08:
|
||||
ld hl, Function5015
|
||||
jp HandleMovementData
|
||||
|
||||
.Movement09:
|
||||
MovementFunction_09:
|
||||
ld hl, Function5026
|
||||
jp HandleMovementData
|
||||
|
||||
.Movement0a:
|
||||
MovementFunction_0a:
|
||||
jp _GetMovementObject
|
||||
|
||||
.Movement0b:
|
||||
MovementFunction_0b:
|
||||
jp _GetMovementObject
|
||||
|
||||
.Movement0c:
|
||||
MovementFunction_0c:
|
||||
jp _GetMovementObject
|
||||
|
||||
.Movement0d:
|
||||
MovementFunction_0d:
|
||||
ld hl, ApplyPlayerMovementByte
|
||||
jp HandleMovementData
|
||||
|
||||
.Movement0e:
|
||||
MovementFunction_0e:
|
||||
jp _GetMovementObject
|
||||
|
||||
.Follow:
|
||||
MovementFunction_Follow:
|
||||
ld hl, GetFollowerNextMovementByte
|
||||
jp HandleMovementData
|
||||
|
||||
.Script:
|
||||
MovementFunction_Script:
|
||||
ld hl, GetMovementByte
|
||||
jp HandleMovementData
|
||||
|
||||
.Strength:
|
||||
call MovementAnonymousJumptable
|
||||
dw .Strength_Start
|
||||
dw .Strength_Stop
|
||||
MovementFunction_Strength:
|
||||
call ObjectMovementByte_AnonJumptable
|
||||
.anon_dw
|
||||
dw .start
|
||||
dw .stop
|
||||
|
||||
.Strength_Start:
|
||||
.start:
|
||||
ld hl, OBJECT_NEXT_TILE
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
@ -686,14 +687,14 @@ MapObjectMovementPattern:
|
||||
ret
|
||||
|
||||
.on_pit
|
||||
call IncrementObjectMovementByteIndex
|
||||
.Strength_Stop:
|
||||
call ObjectMovementByte_IncAnonJumptableIndex
|
||||
.stop:
|
||||
ld hl, OBJECT_DIRECTION_WALKING
|
||||
add hl, bc
|
||||
ld [hl], STANDING
|
||||
ret
|
||||
|
||||
.FollowNotExact:
|
||||
MovementFunction_FollowNotExact:
|
||||
ld hl, OBJECT_NEXT_MAP_X
|
||||
add hl, bc
|
||||
ld d, [hl]
|
||||
@ -755,7 +756,7 @@ MapObjectMovementPattern:
|
||||
ld [hl], OBJECT_ACTION_STAND
|
||||
ret
|
||||
|
||||
.MovementBigStanding:
|
||||
MovementFunction_BigStanding:
|
||||
call EndSpriteMovement
|
||||
ld hl, OBJECT_DIRECTION_WALKING
|
||||
add hl, bc
|
||||
@ -768,7 +769,7 @@ MapObjectMovementPattern:
|
||||
ld [hl], STEP_TYPE_04
|
||||
ret
|
||||
|
||||
.MovementBouncing:
|
||||
MovementFunction_Bouncing:
|
||||
call EndSpriteMovement
|
||||
ld hl, OBJECT_DIRECTION_WALKING
|
||||
add hl, bc
|
||||
@ -781,22 +782,24 @@ MapObjectMovementPattern:
|
||||
ld [hl], STEP_TYPE_04
|
||||
ret
|
||||
|
||||
.MovementSpinCounterclockwise:
|
||||
call MovementAnonymousJumptable
|
||||
dw .MovementSpinInit
|
||||
dw .MovementSpinRepeat
|
||||
dw .MovementSpinTurnLeft
|
||||
MovementFunction_SpinCounterclockwise:
|
||||
call ObjectMovementByte_AnonJumptable
|
||||
.anon_dw
|
||||
dw _MovementSpinInit
|
||||
dw _MovementSpinRepeat
|
||||
dw _MovementSpinTurnLeft
|
||||
|
||||
.MovementSpinClockwise:
|
||||
call MovementAnonymousJumptable
|
||||
dw .MovementSpinInit
|
||||
dw .MovementSpinRepeat
|
||||
dw .MovementSpinTurnRight
|
||||
MovementFunction_SpinClockwise:
|
||||
call ObjectMovementByte_AnonJumptable
|
||||
.anon_dw
|
||||
dw _MovementSpinInit
|
||||
dw _MovementSpinRepeat
|
||||
dw _MovementSpinTurnRight
|
||||
|
||||
.MovementSpinInit:
|
||||
_MovementSpinInit:
|
||||
call EndSpriteMovement
|
||||
call IncrementObjectMovementByteIndex
|
||||
.MovementSpinRepeat:
|
||||
call ObjectMovementByte_IncAnonJumptableIndex
|
||||
_MovementSpinRepeat:
|
||||
ld hl, OBJECT_ACTION
|
||||
add hl, bc
|
||||
ld [hl], OBJECT_ACTION_STAND
|
||||
@ -810,26 +813,32 @@ MapObjectMovementPattern:
|
||||
ld hl, OBJECT_STEP_TYPE
|
||||
add hl, bc
|
||||
ld [hl], STEP_TYPE_03
|
||||
call IncrementObjectMovementByteIndex
|
||||
call ObjectMovementByte_IncAnonJumptableIndex
|
||||
ret
|
||||
|
||||
.MovementSpinTurnLeft:
|
||||
ld de, .DirectionData_Counterclockwise
|
||||
call .MovementSpinNextFacing
|
||||
jr .MovementSpinCounterclockwise
|
||||
_MovementSpinTurnLeft:
|
||||
ld de, .facings_counterclockwise
|
||||
call _MovementSpinNextFacing
|
||||
jr MovementFunction_SpinCounterclockwise
|
||||
|
||||
.DirectionData_Counterclockwise:
|
||||
db OW_RIGHT, OW_LEFT, OW_DOWN, OW_UP
|
||||
.facings_counterclockwise:
|
||||
db OW_RIGHT
|
||||
db OW_LEFT
|
||||
db OW_DOWN
|
||||
db OW_UP
|
||||
|
||||
.MovementSpinTurnRight:
|
||||
ld de, .DirectionData_Clockwise
|
||||
call .MovementSpinNextFacing
|
||||
jr .MovementSpinClockwise
|
||||
_MovementSpinTurnRight:
|
||||
ld de, .facings_clockwise
|
||||
call _MovementSpinNextFacing
|
||||
jr MovementFunction_SpinClockwise
|
||||
|
||||
.DirectionData_Clockwise:
|
||||
db OW_LEFT, OW_RIGHT, OW_UP, OW_DOWN
|
||||
.facings_clockwise:
|
||||
db OW_LEFT
|
||||
db OW_RIGHT
|
||||
db OW_UP
|
||||
db OW_DOWN
|
||||
|
||||
.MovementSpinNextFacing:
|
||||
_MovementSpinNextFacing:
|
||||
ld hl, OBJECT_FACING
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
@ -843,11 +852,11 @@ MapObjectMovementPattern:
|
||||
ld a, [hl]
|
||||
pop hl
|
||||
ld [hl], a
|
||||
call DecrementObjectMovementByteIndex
|
||||
call ObjectMovementByte_DecAnonJumptableIndex
|
||||
ret
|
||||
|
||||
.MovementShadow:
|
||||
call ._MovementShadow_Grass_Emote_BoulderDust
|
||||
MovementFunction_Shadow:
|
||||
call InitMovementField1dField1e
|
||||
ld hl, OBJECT_ACTION
|
||||
add hl, bc
|
||||
ld [hl], OBJECT_ACTION_SHADOW
|
||||
@ -866,11 +875,11 @@ MapObjectMovementPattern:
|
||||
maskbits NUM_DIRECTIONS
|
||||
ld d, 1 * 8 + 6
|
||||
cp DOWN
|
||||
jr z, .ok_13
|
||||
jr z, .ok
|
||||
cp UP
|
||||
jr z, .ok_13
|
||||
jr z, .ok
|
||||
ld d, 1 * 8 + 4
|
||||
.ok_13
|
||||
.ok
|
||||
ld hl, OBJECT_SPRITE_Y_OFFSET
|
||||
add hl, bc
|
||||
ld [hl], d
|
||||
@ -882,9 +891,9 @@ MapObjectMovementPattern:
|
||||
ld [hl], STEP_TYPE_TRACKING_OBJECT
|
||||
ret
|
||||
|
||||
.MovementEmote:
|
||||
MovementFunction_Emote:
|
||||
call EndSpriteMovement
|
||||
call ._MovementShadow_Grass_Emote_BoulderDust
|
||||
call InitMovementField1dField1e
|
||||
ld hl, OBJECT_ACTION
|
||||
add hl, bc
|
||||
ld [hl], OBJECT_ACTION_EMOTE
|
||||
@ -902,9 +911,9 @@ MapObjectMovementPattern:
|
||||
ld [hl], STEP_TYPE_TRACKING_OBJECT
|
||||
ret
|
||||
|
||||
.MovementBoulderDust:
|
||||
MovementFunction_BoulderDust:
|
||||
call EndSpriteMovement
|
||||
call ._MovementShadow_Grass_Emote_BoulderDust
|
||||
call InitMovementField1dField1e
|
||||
ld hl, OBJECT_ACTION
|
||||
add hl, bc
|
||||
ld [hl], OBJECT_ACTION_BOULDER_DUST
|
||||
@ -922,7 +931,7 @@ MapObjectMovementPattern:
|
||||
and %00000011
|
||||
ld e, a
|
||||
ld d, 0
|
||||
ld hl, .data_4a81
|
||||
ld hl, .dust_coords
|
||||
add hl, de
|
||||
add hl, de
|
||||
ld d, [hl]
|
||||
@ -939,16 +948,16 @@ MapObjectMovementPattern:
|
||||
ld [hl], STEP_TYPE_TRACKING_OBJECT
|
||||
ret
|
||||
|
||||
.data_4a81
|
||||
.dust_coords:
|
||||
; x, y
|
||||
db 0, -4
|
||||
db 0, 8
|
||||
db 6, 2
|
||||
db -6, 2
|
||||
|
||||
.MovementShakingGrass:
|
||||
MovementFunction_ShakingGrass:
|
||||
call EndSpriteMovement
|
||||
call ._MovementShadow_Grass_Emote_BoulderDust
|
||||
call InitMovementField1dField1e
|
||||
ld hl, OBJECT_ACTION
|
||||
add hl, bc
|
||||
ld [hl], OBJECT_ACTION_GRASS_SHAKE
|
||||
@ -964,7 +973,7 @@ MapObjectMovementPattern:
|
||||
ld [hl], STEP_TYPE_TRACKING_OBJECT
|
||||
ret
|
||||
|
||||
._MovementShadow_Grass_Emote_BoulderDust:
|
||||
InitMovementField1dField1e:
|
||||
ld hl, OBJECT_RANGE
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
@ -980,7 +989,7 @@ MapObjectMovementPattern:
|
||||
ld [hl], d
|
||||
ret
|
||||
|
||||
.MovementScreenShake:
|
||||
MovementFunction_ScreenShake:
|
||||
call EndSpriteMovement
|
||||
ld hl, OBJECT_ACTION
|
||||
add hl, bc
|
||||
@ -988,7 +997,7 @@ MapObjectMovementPattern:
|
||||
ld hl, OBJECT_RANGE
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
call ._MovementScreenShake
|
||||
call .GetDurationAndField1e
|
||||
ld hl, OBJECT_STEP_DURATION
|
||||
add hl, bc
|
||||
ld [hl], e
|
||||
@ -1000,7 +1009,7 @@ MapObjectMovementPattern:
|
||||
ld [hl], STEP_TYPE_15
|
||||
ret
|
||||
|
||||
._MovementScreenShake:
|
||||
.GetDurationAndField1e:
|
||||
ld d, a
|
||||
and %00111111
|
||||
ld e, a
|
||||
@ -1017,10 +1026,10 @@ MapObjectMovementPattern:
|
||||
add a
|
||||
jr .loop
|
||||
|
||||
.RandomWalkContinue:
|
||||
_RandomWalkContinue:
|
||||
call InitStep
|
||||
call CanObjectMoveInDirection ; check whether the object can move in that direction
|
||||
jr c, .NewDuration
|
||||
jr c, .new_duration
|
||||
call UpdateTallGrassFlags
|
||||
ld hl, OBJECT_ACTION
|
||||
add hl, bc
|
||||
@ -1028,21 +1037,23 @@ MapObjectMovementPattern:
|
||||
ld hl, wCenteredObject
|
||||
ldh a, [hMapObjectIndexBuffer]
|
||||
cp [hl]
|
||||
jr z, .load_6
|
||||
jr z, .centered
|
||||
ld hl, OBJECT_STEP_TYPE
|
||||
add hl, bc
|
||||
ld [hl], STEP_TYPE_07
|
||||
ret
|
||||
|
||||
.load_6
|
||||
.centered
|
||||
ld hl, OBJECT_STEP_TYPE
|
||||
add hl, bc
|
||||
ld [hl], STEP_TYPE_PLAYER_WALK
|
||||
ret
|
||||
|
||||
.NewDuration:
|
||||
.new_duration:
|
||||
call EndSpriteMovement
|
||||
call Function462a
|
||||
; fallthrough
|
||||
|
||||
RandomStepDuration_Slow:
|
||||
call Random
|
||||
ldh a, [hRandomAdd]
|
||||
@ -1070,32 +1081,32 @@ SetRandomStepDuration:
|
||||
|
||||
StepTypesJumptable:
|
||||
; entries correspond to STEP_TYPE_* constants
|
||||
dw ObjectMovementReset ; 00
|
||||
dw ObjectMovementReset ; 00
|
||||
dw MapObjectMovementPattern ; 01
|
||||
dw NPCStep ; 02
|
||||
dw StepType03 ; 03
|
||||
dw StepType04 ; 04
|
||||
dw StepType05 ; 05
|
||||
dw PlayerStep ; 06
|
||||
dw StepType07 ; 07
|
||||
dw NPCJump ; 08
|
||||
dw PlayerJump ; 09
|
||||
dw PlayerOrNPCTurnStep ; 0a
|
||||
dw StepTypeBump ; 0b
|
||||
dw TeleportFrom ; 0c
|
||||
dw TeleportTo ; 0d
|
||||
dw Skyfall ; 0e
|
||||
dw StepType0f ; 0f
|
||||
dw GotBiteStep ; 10
|
||||
dw RockSmashStep ; 11
|
||||
dw ReturnDigStep ; 12
|
||||
dw StepTypeTrackingObject ; 13
|
||||
dw StepType14 ; 14
|
||||
dw StepType15 ; 15
|
||||
dw StepType16 ; 16
|
||||
dw StepType17 ; 17
|
||||
dw StepType18 ; 18
|
||||
dw SkyfallTop ; 19
|
||||
dw NPCStep ; 02
|
||||
dw StepType03 ; 03
|
||||
dw StepType04 ; 04
|
||||
dw StepType05 ; 05
|
||||
dw PlayerStep ; 06
|
||||
dw StepType07 ; 07
|
||||
dw NPCJump ; 08
|
||||
dw PlayerJump ; 09
|
||||
dw PlayerOrNPCTurnStep ; 0a
|
||||
dw StepTypeBump ; 0b
|
||||
dw TeleportFrom ; 0c
|
||||
dw TeleportTo ; 0d
|
||||
dw Skyfall ; 0e
|
||||
dw StepType0f ; 0f
|
||||
dw GotBiteStep ; 10
|
||||
dw RockSmashStep ; 11
|
||||
dw ReturnDigStep ; 12
|
||||
dw StepTypeTrackingObject ; 13
|
||||
dw StepType14 ; 14
|
||||
dw StepType15 ; 15
|
||||
dw StepType16 ; 16
|
||||
dw StepType17 ; 17
|
||||
dw StepType18 ; 18
|
||||
dw SkyfallTop ; 19
|
||||
|
||||
WaitStep_InPlace:
|
||||
ld hl, OBJECT_STEP_DURATION
|
||||
@ -1108,8 +1119,8 @@ WaitStep_InPlace:
|
||||
ret
|
||||
|
||||
NPCJump:
|
||||
call Field1cAnonymousJumptable
|
||||
; anonymous dw
|
||||
call Field1c_AnonJumptable
|
||||
.anon_dw
|
||||
dw .Jump
|
||||
dw .Land
|
||||
|
||||
@ -1125,7 +1136,7 @@ NPCJump:
|
||||
ld hl, OBJECT_FLAGS2
|
||||
add hl, bc
|
||||
res OVERHEAD_F, [hl]
|
||||
call IncrementObjectStructField1c
|
||||
call Field1c_IncAnonJumptableIndex
|
||||
ret
|
||||
|
||||
.Land:
|
||||
@ -1142,8 +1153,8 @@ NPCJump:
|
||||
ret
|
||||
|
||||
PlayerJump:
|
||||
call Field1cAnonymousJumptable
|
||||
; anonymous dw
|
||||
call Field1c_AnonJumptable
|
||||
.anon_dw
|
||||
dw .initjump
|
||||
dw .stepjump
|
||||
dw .initland
|
||||
@ -1152,7 +1163,7 @@ PlayerJump:
|
||||
.initjump
|
||||
ld hl, wPlayerStepFlags
|
||||
set PLAYERSTEP_START_F, [hl]
|
||||
call IncrementObjectStructField1c
|
||||
call Field1c_IncAnonJumptableIndex
|
||||
.stepjump
|
||||
call UpdateJumpPosition
|
||||
call UpdatePlayerStep
|
||||
@ -1167,14 +1178,14 @@ PlayerJump:
|
||||
ld hl, wPlayerStepFlags
|
||||
set PLAYERSTEP_STOP_F, [hl]
|
||||
set PLAYERSTEP_MIDAIR_F, [hl]
|
||||
call IncrementObjectStructField1c
|
||||
call Field1c_IncAnonJumptableIndex
|
||||
ret
|
||||
|
||||
.initland
|
||||
call GetNextTile
|
||||
ld hl, wPlayerStepFlags
|
||||
set PLAYERSTEP_START_F, [hl]
|
||||
call IncrementObjectStructField1c
|
||||
call Field1c_IncAnonJumptableIndex
|
||||
.stepland
|
||||
call UpdateJumpPosition
|
||||
call UpdatePlayerStep
|
||||
@ -1191,8 +1202,8 @@ PlayerJump:
|
||||
ret
|
||||
|
||||
TeleportFrom:
|
||||
call Field1cAnonymousJumptable
|
||||
; anonymous dw
|
||||
call Field1c_AnonJumptable
|
||||
.anon_dw
|
||||
dw .InitSpin
|
||||
dw .DoSpin
|
||||
dw .InitSpinRise
|
||||
@ -1205,7 +1216,7 @@ TeleportFrom:
|
||||
ld hl, OBJECT_STEP_DURATION
|
||||
add hl, bc
|
||||
ld [hl], 16
|
||||
call IncrementObjectStructField1c
|
||||
call Field1c_IncAnonJumptableIndex
|
||||
.DoSpin:
|
||||
ld hl, OBJECT_ACTION
|
||||
add hl, bc
|
||||
@ -1214,7 +1225,7 @@ TeleportFrom:
|
||||
add hl, bc
|
||||
dec [hl]
|
||||
ret nz
|
||||
call IncrementObjectStructField1c
|
||||
call Field1c_IncAnonJumptableIndex
|
||||
ret
|
||||
|
||||
.InitSpinRise:
|
||||
@ -1230,7 +1241,7 @@ TeleportFrom:
|
||||
ld hl, OBJECT_FLAGS2
|
||||
add hl, bc
|
||||
res OVERHEAD_F, [hl]
|
||||
call IncrementObjectStructField1c
|
||||
call Field1c_IncAnonJumptableIndex
|
||||
.DoSpinRise:
|
||||
ld hl, OBJECT_ACTION
|
||||
add hl, bc
|
||||
@ -1259,8 +1270,8 @@ TeleportFrom:
|
||||
ret
|
||||
|
||||
TeleportTo:
|
||||
call Field1cAnonymousJumptable
|
||||
; anonymous dw
|
||||
call Field1c_AnonJumptable
|
||||
.anon_dw
|
||||
dw .InitWait
|
||||
dw .DoWait
|
||||
dw .InitDescent
|
||||
@ -1276,7 +1287,7 @@ TeleportTo:
|
||||
ld hl, OBJECT_STEP_DURATION
|
||||
add hl, bc
|
||||
ld [hl], 16
|
||||
call IncrementObjectStructField1c
|
||||
call Field1c_IncAnonJumptableIndex
|
||||
ret
|
||||
|
||||
.DoWait:
|
||||
@ -1284,7 +1295,7 @@ TeleportTo:
|
||||
add hl, bc
|
||||
dec [hl]
|
||||
ret nz
|
||||
call IncrementObjectStructField1c
|
||||
call Field1c_IncAnonJumptableIndex
|
||||
.InitDescent:
|
||||
ld hl, OBJECT_STEP_FRAME
|
||||
add hl, bc
|
||||
@ -1295,7 +1306,7 @@ TeleportTo:
|
||||
ld hl, OBJECT_STEP_DURATION
|
||||
add hl, bc
|
||||
ld [hl], 16
|
||||
call IncrementObjectStructField1c
|
||||
call Field1c_IncAnonJumptableIndex
|
||||
ret
|
||||
|
||||
.DoDescent:
|
||||
@ -1317,12 +1328,12 @@ TeleportTo:
|
||||
add hl, bc
|
||||
dec [hl]
|
||||
ret nz
|
||||
call IncrementObjectStructField1c
|
||||
call Field1c_IncAnonJumptableIndex
|
||||
.InitFinalSpin:
|
||||
ld hl, OBJECT_STEP_DURATION
|
||||
add hl, bc
|
||||
ld [hl], 16
|
||||
call IncrementObjectStructField1c
|
||||
call Field1c_IncAnonJumptableIndex
|
||||
ret
|
||||
|
||||
.DoFinalSpin:
|
||||
@ -1346,8 +1357,8 @@ TeleportTo:
|
||||
ret
|
||||
|
||||
Skyfall:
|
||||
call Field1cAnonymousJumptable
|
||||
; anonymous dw
|
||||
call Field1c_AnonJumptable
|
||||
.anon_dw
|
||||
dw .Init
|
||||
dw .Step
|
||||
dw .Fall
|
||||
@ -1360,7 +1371,7 @@ Skyfall:
|
||||
ld hl, OBJECT_STEP_DURATION
|
||||
add hl, bc
|
||||
ld [hl], 16
|
||||
call IncrementObjectStructField1c
|
||||
call Field1c_IncAnonJumptableIndex
|
||||
.Step:
|
||||
ld hl, OBJECT_STEP_DURATION
|
||||
add hl, bc
|
||||
@ -1378,7 +1389,7 @@ Skyfall:
|
||||
ld hl, OBJECT_STEP_DURATION
|
||||
add hl, bc
|
||||
ld [hl], 16
|
||||
call IncrementObjectStructField1c
|
||||
call Field1c_IncAnonJumptableIndex
|
||||
.Fall:
|
||||
ld hl, OBJECT_1F
|
||||
add hl, bc
|
||||
@ -1395,7 +1406,7 @@ Skyfall:
|
||||
add hl, bc
|
||||
dec [hl]
|
||||
ret nz
|
||||
call IncrementObjectStructField1c
|
||||
call Field1c_IncAnonJumptableIndex
|
||||
.Finish:
|
||||
ld hl, OBJECT_STEP_FRAME
|
||||
add hl, bc
|
||||
@ -1409,8 +1420,8 @@ Skyfall:
|
||||
ret
|
||||
|
||||
GotBiteStep:
|
||||
call Field1cAnonymousJumptable
|
||||
; anonymous dw
|
||||
call Field1c_AnonJumptable
|
||||
.anon_dw
|
||||
dw .Init
|
||||
dw .Run
|
||||
|
||||
@ -1421,7 +1432,7 @@ GotBiteStep:
|
||||
ld hl, OBJECT_SPRITE_Y_OFFSET
|
||||
add hl, bc
|
||||
ld [hl], 0
|
||||
call IncrementObjectStructField1c
|
||||
call Field1c_IncAnonJumptableIndex
|
||||
.Run:
|
||||
ld hl, OBJECT_SPRITE_Y_OFFSET
|
||||
add hl, bc
|
||||
@ -1506,8 +1517,8 @@ StepTypeBump:
|
||||
ret
|
||||
|
||||
StepType05:
|
||||
call Field1cAnonymousJumptable
|
||||
; anonymous dw
|
||||
call Field1c_AnonJumptable
|
||||
.anon_dw
|
||||
dw .Reset
|
||||
dw StepType04
|
||||
|
||||
@ -1517,7 +1528,7 @@ StepType05:
|
||||
ld hl, OBJECT_FACING
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
call IncrementObjectStructField1c
|
||||
call Field1c_IncAnonJumptableIndex
|
||||
StepType04:
|
||||
call Stubbed_Function4fb2
|
||||
ld hl, OBJECT_DIRECTION_WALKING
|
||||
@ -1552,15 +1563,15 @@ StepType07:
|
||||
|
||||
PlayerStep:
|
||||
; AnimateStep?
|
||||
call Field1cAnonymousJumptable
|
||||
; anonymous dw
|
||||
call Field1c_AnonJumptable
|
||||
.anon_dw
|
||||
dw .init
|
||||
dw .step
|
||||
|
||||
.init
|
||||
ld hl, wPlayerStepFlags
|
||||
set PLAYERSTEP_START_F, [hl]
|
||||
call IncrementObjectStructField1c
|
||||
call Field1c_IncAnonJumptableIndex
|
||||
.step
|
||||
call UpdatePlayerStep
|
||||
ld hl, OBJECT_STEP_DURATION
|
||||
@ -1579,8 +1590,8 @@ PlayerStep:
|
||||
ret
|
||||
|
||||
PlayerOrNPCTurnStep:
|
||||
call Field1cAnonymousJumptable
|
||||
; anonymous dw
|
||||
call Field1c_AnonJumptable
|
||||
.anon_dw
|
||||
dw .init1
|
||||
dw .step1
|
||||
dw .init2
|
||||
@ -1597,13 +1608,13 @@ PlayerOrNPCTurnStep:
|
||||
ld hl, OBJECT_STEP_DURATION
|
||||
add hl, bc
|
||||
ld [hl], 2
|
||||
call IncrementObjectStructField1c
|
||||
call Field1c_IncAnonJumptableIndex
|
||||
.step1
|
||||
ld hl, OBJECT_STEP_DURATION
|
||||
add hl, bc
|
||||
dec [hl]
|
||||
ret nz
|
||||
call IncrementObjectStructField1c
|
||||
call Field1c_IncAnonJumptableIndex
|
||||
.init2
|
||||
ld hl, OBJECT_1D ; new facing
|
||||
add hl, bc
|
||||
@ -1614,7 +1625,7 @@ PlayerOrNPCTurnStep:
|
||||
ld hl, OBJECT_STEP_DURATION
|
||||
add hl, bc
|
||||
ld [hl], 2
|
||||
call IncrementObjectStructField1c
|
||||
call Field1c_IncAnonJumptableIndex
|
||||
.step2
|
||||
ld hl, OBJECT_STEP_DURATION
|
||||
add hl, bc
|
||||
@ -1691,8 +1702,8 @@ StepTypeTrackingObject:
|
||||
|
||||
StepType14:
|
||||
StepType15:
|
||||
call Field1cAnonymousJumptable
|
||||
; anonymous dw
|
||||
call Field1c_AnonJumptable
|
||||
.anon_dw
|
||||
dw .Init
|
||||
dw .Run
|
||||
|
||||
@ -1701,7 +1712,7 @@ StepType15:
|
||||
ld hl, OBJECT_1D
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
call IncrementObjectStructField1c
|
||||
call Field1c_IncAnonJumptableIndex
|
||||
.Run:
|
||||
ld hl, OBJECT_1D
|
||||
add hl, bc
|
||||
@ -1739,17 +1750,17 @@ StepType15:
|
||||
ret
|
||||
|
||||
StepType16:
|
||||
call Field1cAnonymousJumptable ; ????
|
||||
call Field1c_AnonJumptable ; ????
|
||||
StepType17:
|
||||
call Field1cAnonymousJumptable
|
||||
; anonymous dw
|
||||
call Field1c_AnonJumptable
|
||||
.anon_dw
|
||||
dw .null
|
||||
dw .null
|
||||
dw .null
|
||||
.null
|
||||
|
||||
SkyfallTop:
|
||||
call Field1cAnonymousJumptable
|
||||
call Field1c_AnonJumptable
|
||||
; anonymous dw
|
||||
dw .Init
|
||||
dw .Run
|
||||
@ -1761,7 +1772,7 @@ SkyfallTop:
|
||||
ld hl, OBJECT_STEP_DURATION
|
||||
add hl, bc
|
||||
ld [hl], 16
|
||||
call IncrementObjectStructField1c
|
||||
call Field1c_IncAnonJumptableIndex
|
||||
|
||||
.Run:
|
||||
ld hl, OBJECT_STEP_DURATION
|
||||
@ -1800,6 +1811,7 @@ Stubbed_Function4fb2:
|
||||
|
||||
.y
|
||||
db 0, -1, -2, -3, -4, -3, -2, -1
|
||||
|
||||
UpdateJumpPosition:
|
||||
call GetStepVector
|
||||
ld a, h
|
||||
|
Loading…
Reference in New Issue
Block a user