You've already forked pokecrystal-board
mirror of
https://gitlab.com/xCrystal/pokecrystal-board.git
synced 2025-09-08 08:13:02 -07:00
More movement stuff
This commit is contained in:
@@ -5508,7 +5508,7 @@ EnemyMonEntrance: ; 3e3ff
|
||||
; 3e40b
|
||||
|
||||
BattleMonEntrance: ; 3e40b
|
||||
call BattleMonNickComma_TextBox
|
||||
call WithdrawPkmnText
|
||||
|
||||
ld c, 50
|
||||
call DelayFrames
|
||||
@@ -8103,8 +8103,6 @@ JumpText_GoForItPkmn: ; 3f2df
|
||||
JumpText_YourFoesWeakGetmPkmn: ; 3f2e6
|
||||
text_jump Text_YourFoesWeakGetmPkmn
|
||||
start_asm
|
||||
; 3f2eb
|
||||
|
||||
Function_TextJump_BattleMonNick01: ; 3f2eb
|
||||
ld hl, TextJump_BattleMonNick01
|
||||
ret
|
||||
@@ -8115,18 +8113,13 @@ TextJump_BattleMonNick01: ; 3f2ef
|
||||
db "@"
|
||||
; 3f2f4
|
||||
|
||||
|
||||
BattleMonNickComma_TextBox: ; 3f2f4
|
||||
ld hl, TextJump_BattleMonNickComma
|
||||
WithdrawPkmnText: ; 3f2f4
|
||||
ld hl, .WithdrawPkmnText
|
||||
jp BattleTextBox
|
||||
; 3f2fa
|
||||
|
||||
TextJump_BattleMonNickComma: ; 3f2fa
|
||||
.WithdrawPkmnText
|
||||
text_jump Text_BattleMonNickComma
|
||||
start_asm
|
||||
; 3f2ff
|
||||
|
||||
WithdrawPkmnText: ; 3f2ff
|
||||
; Print text to withdraw Pkmn
|
||||
; depending on HP the message is different
|
||||
push de
|
||||
|
@@ -5949,7 +5949,6 @@ BattleCommand_StatUpMessage: ; 363b8
|
||||
.stat
|
||||
text_jump UnknownText_0x1c0cc6
|
||||
start_asm
|
||||
|
||||
ld hl, .up
|
||||
ld a, [LoweredStat]
|
||||
and $f0
|
||||
@@ -5983,7 +5982,6 @@ BattleCommand_StatDownMessage: ; 363e9
|
||||
.stat
|
||||
text_jump UnknownText_0x1c0ceb
|
||||
start_asm
|
||||
|
||||
ld hl, .fell
|
||||
ld a, [LoweredStat]
|
||||
and $f0
|
||||
@@ -7345,7 +7343,6 @@ BattleCommand_Charge: ; 36b4d
|
||||
.UsedText
|
||||
text_jump UnknownText_0x1c0d0e ; "[USER]"
|
||||
start_asm
|
||||
|
||||
ld a, BATTLE_VARS_MOVE_ANIM
|
||||
call GetBattleVar
|
||||
cp RAZOR_WIND
|
||||
|
@@ -11,7 +11,6 @@ UsedMoveText: ; 105db9
|
||||
|
||||
text_jump _ActorNameText
|
||||
start_asm
|
||||
|
||||
ld a, [hBattleTurn]
|
||||
and a
|
||||
jr nz, .start
|
||||
@@ -67,30 +66,26 @@ UsedMoveText: ; 105db9
|
||||
UsedMove1Text: ; 105e04
|
||||
text_jump _UsedMove1Text
|
||||
start_asm
|
||||
jr Function105e10
|
||||
jr UsedMoveText_CheckObedience
|
||||
; 105e0b
|
||||
|
||||
UsedMove2Text: ; 105e0b
|
||||
text_jump _UsedMove2Text
|
||||
start_asm
|
||||
; 105e10
|
||||
|
||||
Function105e10: ; 105e10
|
||||
UsedMoveText_CheckObedience: ; 105e10
|
||||
; check obedience
|
||||
ld a, [AlreadyDisobeyed]
|
||||
and a
|
||||
jr z, GetMoveNameText
|
||||
jr z, .GetMoveNameText
|
||||
; print "instead,"
|
||||
ld hl, UsedInsteadText
|
||||
ld hl, .UsedInsteadText
|
||||
ret
|
||||
; 105e1a
|
||||
|
||||
UsedInsteadText: ; 105e1a
|
||||
.UsedInsteadText
|
||||
text_jump _UsedInsteadText
|
||||
start_asm
|
||||
; 105e1f
|
||||
|
||||
GetMoveNameText: ; 105e1f
|
||||
.GetMoveNameText
|
||||
ld hl, MoveNameText
|
||||
ret
|
||||
; 105e23
|
||||
@@ -98,9 +93,6 @@ GetMoveNameText: ; 105e1f
|
||||
MoveNameText: ; 105e23
|
||||
text_jump _MoveNameText
|
||||
start_asm
|
||||
; 105e28
|
||||
|
||||
GetUsedMoveTextEnder: ; 105e28
|
||||
; get start address
|
||||
ld hl, .endusedmovetexts
|
||||
|
||||
|
44
data/map_objects.asm
Executable file
44
data/map_objects.asm
Executable file
@@ -0,0 +1,44 @@
|
||||
sprite_movement_data: macro
|
||||
db \1, \2, \3, \4, \5
|
||||
dn \6, 0
|
||||
endm
|
||||
|
||||
; function, facing, action, flags1, flags2, palette flags
|
||||
sprite_movement_data SPRITEMOVEFN_00, DOWN, PERSON_ACTION_STAND, $02, $00, %0000 ; 00
|
||||
sprite_movement_data SPRITEMOVEFN_STANDING, DOWN, PERSON_ACTION_STAND, $0c, $00, %0000 ; 01
|
||||
sprite_movement_data SPRITEMOVEFN_RANDOM_WALK_XY, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 02
|
||||
sprite_movement_data SPRITEMOVEFN_SLOW_RANDOM_SPIN, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 03
|
||||
sprite_movement_data SPRITEMOVEFN_RANDOM_WALK_Y, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 04
|
||||
sprite_movement_data SPRITEMOVEFN_RANDOM_WALK_X, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 05
|
||||
sprite_movement_data SPRITEMOVEFN_STANDING, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 06
|
||||
sprite_movement_data SPRITEMOVEFN_STANDING, UP, PERSON_ACTION_STAND, $00, $00, %0000 ; 07
|
||||
sprite_movement_data SPRITEMOVEFN_STANDING, LEFT, PERSON_ACTION_STAND, $00, $00, %0000 ; 08
|
||||
sprite_movement_data SPRITEMOVEFN_STANDING, RIGHT, PERSON_ACTION_STAND, $00, $00, %0000 ; 09
|
||||
sprite_movement_data SPRITEMOVEFN_FAST_RANDOM_SPIN, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 0a
|
||||
sprite_movement_data SPRITEMOVEFN_OBEY_DPAD, DOWN, PERSON_ACTION_STAND, $02, $00, %0000 ; 0b
|
||||
sprite_movement_data SPRITEMOVEFN_08, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 0c
|
||||
sprite_movement_data SPRITEMOVEFN_09, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 0d
|
||||
sprite_movement_data SPRITEMOVEFN_0A, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 0e
|
||||
sprite_movement_data SPRITEMOVEFN_0B, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 0f
|
||||
sprite_movement_data SPRITEMOVEFN_0C, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 10
|
||||
sprite_movement_data SPRITEMOVEFN_0D, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 11
|
||||
sprite_movement_data SPRITEMOVEFN_0E, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 12
|
||||
sprite_movement_data SPRITEMOVEFN_FOLLOW, DOWN, PERSON_ACTION_STAND, $02, $00, %0000 ; 13
|
||||
sprite_movement_data SPRITEMOVEFN_SCRIPTED, DOWN, PERSON_ACTION_STAND, $02, $00, %0000 ; 14
|
||||
sprite_movement_data SPRITEMOVEFN_BIG_SNORLAX, DOWN, PERSON_ACTION_09, $2e, $01, %1100 ; 15
|
||||
sprite_movement_data SPRITEMOVEFN_BOUNCE, DOWN, PERSON_ACTION_0A, $2e, $00, %0000 ; 16
|
||||
sprite_movement_data SPRITEMOVEFN_STANDING, DOWN, PERSON_ACTION_STAND, $0c, $00, %0000 ; 17
|
||||
sprite_movement_data SPRITEMOVEFN_STANDING, DOWN, PERSON_ACTION_STAND, $2e, $10, %0000 ; 18
|
||||
sprite_movement_data SPRITEMOVEFN_STRENGTH, DOWN, PERSON_ACTION_STAND, $2e, $00, %0100 ; 19
|
||||
sprite_movement_data SPRITEMOVEFN_FOLLOWNOTEXACT, DOWN, PERSON_ACTION_STAND, $02, $00, %0000 ; 1a
|
||||
sprite_movement_data SPRITEMOVEFN_SHADOW, DOWN, PERSON_ACTION_00, $8e, $01, %0000 ; 1b
|
||||
sprite_movement_data SPRITEMOVEFN_EMOTE, DOWN, PERSON_ACTION_EMOTE, $8e, $02, %0000 ; 1c
|
||||
sprite_movement_data SPRITEMOVEFN_SCREENSHAKE, DOWN, PERSON_ACTION_00, $82, $00, %0000 ; 1d
|
||||
sprite_movement_data SPRITEMOVEFN_SPIN_COUNTERCLOCKWISE, LEFT, PERSON_ACTION_STAND, $00, $00, %0000 ; 1e
|
||||
sprite_movement_data SPRITEMOVEFN_SPIN_CLOCKWISE, RIGHT, PERSON_ACTION_STAND, $00, $00, %0000 ; 1f
|
||||
sprite_movement_data SPRITEMOVEFN_STRENGTH, DOWN, PERSON_ACTION_0C, $2e, $01, %1100 ; 20
|
||||
sprite_movement_data SPRITEMOVEFN_STRENGTH, DOWN, PERSON_ACTION_0D, $2e, $01, %1100 ; 21
|
||||
sprite_movement_data SPRITEMOVEFN_BOULDERDUST, DOWN, PERSON_ACTION_0E, $8e, $01, %0000 ; 22
|
||||
sprite_movement_data SPRITEMOVEFN_GRASS, DOWN, PERSON_ACTION_0F, $8e, $02, %0000 ; 23
|
||||
sprite_movement_data SPRITEMOVEFN_RANDOM_WALK_XY, DOWN, PERSON_ACTION_STAND, $00, $00, %0010 ; 24
|
||||
sprite_movement_data SPRITEMOVEFN_00, DOWN, PERSON_ACTION_STAND, $00, $00, %0000 ; 25
|
@@ -8,7 +8,7 @@ CheckBreedmonCompatibility: ; 16e1d
|
||||
ld [TempMonDVs], a
|
||||
ld a, [wBreedMon1DVs + 1]
|
||||
ld [TempMonDVs + 1], a
|
||||
ld a, $3
|
||||
ld a, BREEDMON
|
||||
ld [MonType], a
|
||||
predef GetGender
|
||||
jr c, .genderless
|
||||
|
@@ -51,7 +51,7 @@ LearnMove: ; 6508
|
||||
.not_disabled
|
||||
|
||||
call GetMoveName
|
||||
ld hl, UnknownText_0x6684 ; 1, 2 and…
|
||||
ld hl, Text_1_2_and_Poof ; 1, 2 and…
|
||||
call PrintText
|
||||
pop de
|
||||
pop hl
|
||||
@@ -102,18 +102,18 @@ LearnMove: ; 6508
|
||||
jp .learned
|
||||
|
||||
.cancel
|
||||
ld hl, UnknownText_0x6675 ; Stop learning <MOVE>?
|
||||
ld hl, Text_StopLearning ; Stop learning <MOVE>?
|
||||
call PrintText
|
||||
call YesNoBox
|
||||
jp c, .loop
|
||||
|
||||
ld hl, UnknownText_0x667a ; <MON> did not learn <MOVE>.
|
||||
ld hl, Text_DidNotLearn ; <MON> did not learn <MOVE>.
|
||||
call PrintText
|
||||
ld b, 0
|
||||
ret
|
||||
|
||||
.learned
|
||||
ld hl, UnknownText_0x666b ; <MON> learned <MOVE>!
|
||||
ld hl, Text_LearnedMove ; <MON> learned <MOVE>!
|
||||
call PrintText
|
||||
ld b, 1
|
||||
ret
|
||||
@@ -121,7 +121,7 @@ LearnMove: ; 6508
|
||||
|
||||
ForgetMove: ; 65d3
|
||||
push hl
|
||||
ld hl, UnknownText_0x667f
|
||||
ld hl, Text_TryingToLearn
|
||||
call PrintText
|
||||
call YesNoBox
|
||||
pop hl
|
||||
@@ -135,7 +135,7 @@ ForgetMove: ; 65d3
|
||||
pop hl
|
||||
.loop
|
||||
push hl
|
||||
ld hl, UnknownText_0x6670
|
||||
ld hl, Text_ForgetWhich
|
||||
call PrintText
|
||||
hlcoord 5, 2
|
||||
ld b, NUM_MOVES * 2
|
||||
@@ -192,7 +192,7 @@ ForgetMove: ; 65d3
|
||||
ret
|
||||
|
||||
.hmmove
|
||||
ld hl, UnknownText_0x669a
|
||||
ld hl, Text_CantForgetHM
|
||||
call PrintText
|
||||
pop hl
|
||||
jr .loop
|
||||
@@ -202,55 +202,54 @@ ForgetMove: ; 65d3
|
||||
ret
|
||||
; 666b
|
||||
|
||||
UnknownText_0x666b: ; 666b
|
||||
Text_LearnedMove: ; 666b
|
||||
; <MON> learned <MOVE>!
|
||||
text_jump UnknownText_0x1c5660
|
||||
db "@"
|
||||
; 6670
|
||||
|
||||
UnknownText_0x6670: ; 6670
|
||||
Text_ForgetWhich: ; 6670
|
||||
; Which move should be forgotten?
|
||||
text_jump UnknownText_0x1c5678
|
||||
db "@"
|
||||
; 6675
|
||||
|
||||
UnknownText_0x6675: ; 6675
|
||||
Text_StopLearning: ; 6675
|
||||
; Stop learning <MOVE>?
|
||||
text_jump UnknownText_0x1c5699
|
||||
db "@"
|
||||
; 667a
|
||||
|
||||
UnknownText_0x667a: ; 667a
|
||||
Text_DidNotLearn: ; 667a
|
||||
; <MON> did not learn <MOVE>.
|
||||
text_jump UnknownText_0x1c56af
|
||||
db "@"
|
||||
; 667f
|
||||
|
||||
UnknownText_0x667f: ; 667f
|
||||
Text_TryingToLearn: ; 667f
|
||||
; <MON> is trying to learn <MOVE>. But <MON> can't learn more than
|
||||
; four moves. Delete an older move to make room for <MOVE>?
|
||||
text_jump UnknownText_0x1c56c9
|
||||
db "@"
|
||||
; 6684
|
||||
|
||||
UnknownText_0x6684: ; 6684
|
||||
Text_1_2_and_Poof: ; 6684
|
||||
text_jump UnknownText_0x1c5740 ; 1, 2 and…
|
||||
start_asm
|
||||
push de
|
||||
ld de, SFX_SWITCH_POKEMON
|
||||
call PlaySFX
|
||||
pop de
|
||||
ld hl, UnknownText_0x6695
|
||||
ld hl, .PoofForgot
|
||||
ret
|
||||
; 6695
|
||||
|
||||
UnknownText_0x6695: ; 6695
|
||||
.PoofForgot
|
||||
; Poof! <MON> forgot <MOVE>. And…
|
||||
text_jump UnknownText_0x1c574e
|
||||
db "@"
|
||||
; 669a
|
||||
|
||||
UnknownText_0x669a: ; 669a
|
||||
Text_CantForgetHM: ; 669a
|
||||
; HM moves can't be forgotten now.
|
||||
text_jump UnknownText_0x1c5772
|
||||
db "@"
|
||||
|
@@ -208,12 +208,12 @@ GivePokeItem:: ; 446cc
|
||||
push bc
|
||||
push af
|
||||
ld hl, sPartyMail
|
||||
ld bc, $2f
|
||||
ld bc, MAIL_STRUCT_LENGTH
|
||||
call AddNTimes
|
||||
ld d, h
|
||||
ld e, l
|
||||
ld hl, wd002
|
||||
ld bc, $21
|
||||
ld bc, MAIL_MSG_LENGTH + 1
|
||||
ld a, BANK(sPartyMail)
|
||||
call GetSRAMBank
|
||||
call CopyBytes
|
||||
@@ -222,7 +222,7 @@ GivePokeItem:: ; 446cc
|
||||
ld hl, PartyMonOT
|
||||
ld bc, NAME_LENGTH
|
||||
call AddNTimes
|
||||
ld bc, $a
|
||||
ld bc, NAME_LENGTH - 1
|
||||
call CopyBytes
|
||||
pop af
|
||||
ld hl, PartyMon1ID
|
||||
|
323
engine/map_object_action.asm
Executable file
323
engine/map_object_action.asm
Executable file
@@ -0,0 +1,323 @@
|
||||
ld hl, OBJECT_ACTION
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
ld l, a
|
||||
ld h, 0
|
||||
add hl, hl
|
||||
add hl, hl
|
||||
add hl, de
|
||||
ld a, [hli]
|
||||
ld h, [hl]
|
||||
ld l, a
|
||||
call _hl_
|
||||
ret
|
||||
; 445f
|
||||
|
||||
Pointers445f: ; 445f
|
||||
dw SetFacingStanding, SetFacingStanding ; 00
|
||||
dw Function44b5, SetFacingCurrent ; 01 standing?
|
||||
dw Function44c1, SetFacingCurrent ; 02 walking?
|
||||
dw Function4508, SetFacingCurrent ; 03 bumping?
|
||||
dw Function4529, SetFacingCurrent ; 04
|
||||
dw Function4539, SetFacingStanding ; 05
|
||||
dw Function456e, Function456e ; 06
|
||||
dw Function457b, SetFacingStanding ; 07
|
||||
dw Function4582, Function4582 ; 08
|
||||
dw Function4589, Function4589 ; 09
|
||||
dw Function4590, Function45a4 ; 0a
|
||||
dw Function45ab, SetFacingCurrent ; 0c
|
||||
dw Function45be, Function45be ; 0b
|
||||
dw Function45c5, Function45c5 ; 0d
|
||||
dw Function45da, SetFacingStanding ; 0e
|
||||
dw Function45ed, SetFacingStanding ; 0f
|
||||
dw Function44e4, SetFacingCurrent ; 10
|
||||
; 44a3
|
||||
|
||||
SetFacingStanding: ; 44a3
|
||||
ld hl, OBJECT_FACING_STEP
|
||||
add hl, bc
|
||||
ld [hl], STANDING
|
||||
ret
|
||||
; 44aa
|
||||
|
||||
SetFacingCurrent: ; 44aa
|
||||
call GetSpriteDirection
|
||||
or 0 ; useless
|
||||
ld hl, OBJECT_FACING_STEP
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
ret
|
||||
; 44b5
|
||||
|
||||
Function44b5: ; 44b5
|
||||
ld hl, OBJECT_FACING_STEP
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
and 1
|
||||
jr nz, Function44c1
|
||||
jp SetFacingCurrent
|
||||
; 44c1
|
||||
|
||||
Function44c1: ; 44c1
|
||||
ld hl, OBJECT_FLAGS1
|
||||
add hl, bc
|
||||
bit SLIDING, [hl]
|
||||
jp nz, SetFacingCurrent
|
||||
|
||||
ld hl, OBJECT_STEP_FRAME
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
inc a
|
||||
and %00001111
|
||||
ld [hl], a
|
||||
|
||||
rrca
|
||||
rrca
|
||||
and %00000011
|
||||
ld d, a
|
||||
|
||||
call GetSpriteDirection
|
||||
or 0 ; useless
|
||||
or d
|
||||
ld hl, OBJECT_FACING_STEP
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
ret
|
||||
; 44e4
|
||||
|
||||
Function44e4: ; 44e4
|
||||
ld hl, OBJECT_FLAGS1
|
||||
add hl, bc
|
||||
bit SLIDING, [hl]
|
||||
jp nz, SetFacingCurrent
|
||||
|
||||
ld hl, OBJECT_STEP_FRAME
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
add 2
|
||||
and %00001111
|
||||
ld [hl], a
|
||||
|
||||
rrca
|
||||
rrca
|
||||
and %00000011
|
||||
ld d, a
|
||||
|
||||
call GetSpriteDirection
|
||||
or 0 ; useless
|
||||
or d
|
||||
ld hl, OBJECT_FACING_STEP
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
ret
|
||||
; 4508
|
||||
|
||||
Function4508: ; 4508
|
||||
ld hl, OBJECT_FLAGS1
|
||||
add hl, bc
|
||||
bit SLIDING, [hl]
|
||||
jp nz, SetFacingCurrent
|
||||
|
||||
ld hl, OBJECT_STEP_FRAME
|
||||
add hl, bc
|
||||
inc [hl]
|
||||
|
||||
ld a, [hl]
|
||||
rrca
|
||||
rrca
|
||||
rrca
|
||||
and %00000011
|
||||
ld d, a
|
||||
|
||||
call GetSpriteDirection
|
||||
or 0 ; useless
|
||||
or d
|
||||
ld hl, OBJECT_FACING_STEP
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
ret
|
||||
; 4529
|
||||
|
||||
Function4529: ; 4529
|
||||
call Function453f
|
||||
ld hl, OBJECT_FACING
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
or 0 ; useless
|
||||
ld hl, OBJECT_FACING_STEP
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
ret
|
||||
; 4539
|
||||
|
||||
Function4539: ; 4539
|
||||
call Function453f
|
||||
jp SetFacingStanding
|
||||
; 453f
|
||||
|
||||
Function453f: ; 453f
|
||||
ld hl, OBJECT_STEP_FRAME
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
and %11110000
|
||||
ld e, a
|
||||
|
||||
ld a, [hl]
|
||||
inc a
|
||||
and %00001111
|
||||
ld d, a
|
||||
cp 4
|
||||
jr c, .ok
|
||||
|
||||
ld d, 0
|
||||
ld a, e
|
||||
add $10
|
||||
and %00110000
|
||||
ld e, a
|
||||
|
||||
.ok
|
||||
ld a, d
|
||||
or e
|
||||
ld [hl], a
|
||||
|
||||
swap e
|
||||
ld d, 0
|
||||
ld hl, .Directions
|
||||
add hl, de
|
||||
ld a, [hl]
|
||||
ld hl, OBJECT_FACING
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
ret
|
||||
; 456a
|
||||
|
||||
.Directions ; 456a
|
||||
db OW_DOWN, OW_RIGHT, OW_UP, OW_LEFT
|
||||
; 456e
|
||||
|
||||
Function456e: ; 456e
|
||||
call GetSpriteDirection
|
||||
rrca
|
||||
rrca
|
||||
add $10
|
||||
ld hl, OBJECT_FACING_STEP
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
ret
|
||||
; 457b
|
||||
|
||||
Function457b: ; 457b
|
||||
ld hl, OBJECT_FACING_STEP
|
||||
add hl, bc
|
||||
ld [hl], FACING_15
|
||||
ret
|
||||
; 4582
|
||||
|
||||
Function4582: ; 4582 emote
|
||||
ld hl, OBJECT_FACING_STEP
|
||||
add hl, bc
|
||||
ld [hl], FACING_EMOTE
|
||||
ret
|
||||
; 4589
|
||||
|
||||
Function4589: ; 4589
|
||||
ld hl, OBJECT_FACING_STEP
|
||||
add hl, bc
|
||||
ld [hl], FACING_17
|
||||
ret
|
||||
; 4590
|
||||
|
||||
Function4590: ; 4590
|
||||
ld hl, OBJECT_STEP_FRAME
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
inc a
|
||||
and %00001111
|
||||
ld [hl], a
|
||||
and %00001000
|
||||
jr z, Function45a4
|
||||
ld hl, OBJECT_FACING_STEP
|
||||
add hl, bc
|
||||
ld [hl], FACING_04
|
||||
ret
|
||||
; 45a4
|
||||
|
||||
Function45a4: ; 45a4
|
||||
ld hl, OBJECT_FACING_STEP
|
||||
add hl, bc
|
||||
ld [hl], 0
|
||||
ret
|
||||
; 45ab
|
||||
|
||||
Function45ab: ; 45ab
|
||||
ld hl, OBJECT_STEP_FRAME
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
inc a
|
||||
ld [hl], a
|
||||
and %00001100
|
||||
rrca
|
||||
rrca
|
||||
add $18
|
||||
ld hl, OBJECT_FACING_STEP
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
ret
|
||||
; 45be
|
||||
|
||||
Function45be: ; 45be
|
||||
ld hl, OBJECT_FACING_STEP
|
||||
add hl, bc
|
||||
ld [hl], FACING_16
|
||||
ret
|
||||
; 45c5
|
||||
|
||||
Function45c5: ; 45c5
|
||||
ld a, [VariableSprites + SPRITE_BIG_DOLL - SPRITE_VARS]
|
||||
ld d, FACING_17
|
||||
cp SPRITE_BIG_SNORLAX
|
||||
jr z, .ok
|
||||
cp SPRITE_BIG_LAPRAS
|
||||
jr z, .ok
|
||||
ld d, FACING_16
|
||||
|
||||
.ok
|
||||
ld hl, OBJECT_FACING_STEP
|
||||
add hl, bc
|
||||
ld [hl], d
|
||||
ret
|
||||
; 45da
|
||||
|
||||
Function45da: ; 45da
|
||||
ld hl, OBJECT_STEP_FRAME
|
||||
add hl, bc
|
||||
inc [hl]
|
||||
ld a, [hl]
|
||||
|
||||
ld hl, OBJECT_FACING_STEP
|
||||
add hl, bc
|
||||
and 2
|
||||
ld a, FACING_1C
|
||||
jr z, .ok
|
||||
inc a ; FACING_1D
|
||||
.ok
|
||||
ld [hl], a
|
||||
ret
|
||||
; 45ed
|
||||
|
||||
Function45ed: ; 45ed
|
||||
ld hl, OBJECT_STEP_FRAME
|
||||
add hl, bc
|
||||
inc [hl]
|
||||
ld a, [hl]
|
||||
ld hl, OBJECT_FACING_STEP
|
||||
add hl, bc
|
||||
and 4
|
||||
ld a, FACING_1E
|
||||
jr z, .ok
|
||||
inc a ; FACING_1F
|
||||
|
||||
.ok
|
||||
ld [hl], a
|
||||
ret
|
||||
; 4600
|
File diff suppressed because it is too large
Load Diff
@@ -3,10 +3,10 @@ MovementPointers: ; 5075
|
||||
dw Movement_turn_head_up ; 01
|
||||
dw Movement_turn_head_left ; 02
|
||||
dw Movement_turn_head_right ; 03
|
||||
dw Movement_half_step_down ; 04
|
||||
dw Movement_half_step_up ; 05
|
||||
dw Movement_half_step_left ; 06
|
||||
dw Movement_half_step_right ; 07
|
||||
dw Movement_turn_step_down ; 04
|
||||
dw Movement_turn_step_up ; 05
|
||||
dw Movement_turn_step_left ; 06
|
||||
dw Movement_turn_step_right ; 07
|
||||
dw Movement_slow_step_down ; 08
|
||||
dw Movement_slow_step_up ; 09
|
||||
dw Movement_slow_step_left ; 0a
|
||||
@@ -130,7 +130,7 @@ Movement_step_dig: ; 5145
|
||||
ld hl, OBJECT_ACTION
|
||||
add hl, bc
|
||||
ld [hl], PERSON_ACTION_SPIN
|
||||
call GetMovementByte
|
||||
call JumpMovementPointer
|
||||
ld hl, OBJECT_STEP_DURATION
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
@@ -150,7 +150,7 @@ Movement_return_dig: ; 516a
|
||||
ld hl, OBJECT_STEP_FRAME
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
call GetMovementByte
|
||||
call JumpMovementPointer
|
||||
ld hl, OBJECT_STEP_DURATION
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
@@ -174,7 +174,7 @@ Movement_fish_got_bite: ; 5189
|
||||
; 5196
|
||||
|
||||
Movement_rock_smash: ; 5196
|
||||
call GetMovementByte
|
||||
call JumpMovementPointer
|
||||
ld hl, OBJECT_STEP_DURATION
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
@@ -233,7 +233,7 @@ Movement_48: ; 51db
|
||||
add hl, bc
|
||||
ld [hl], $0
|
||||
|
||||
call GetMovementByte
|
||||
call JumpMovementPointer
|
||||
ld hl, OBJECT_STEP_DURATION
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
@@ -311,7 +311,7 @@ Movement_step_sleep: ; 5242
|
||||
; parameters:
|
||||
; duration (DecimalParam)
|
||||
|
||||
call GetMovementByte
|
||||
call JumpMovementPointer
|
||||
jr Movement_step_sleep_common
|
||||
|
||||
Movement_step_sleep_common: ; 5247
|
||||
@@ -429,7 +429,7 @@ Movement_step_shake: ; 52d5
|
||||
; parameters:
|
||||
; displacement (DecimalParam)
|
||||
|
||||
call GetMovementByte
|
||||
call JumpMovementPointer
|
||||
call ShakeScreen
|
||||
jp ContinueReadingMovement
|
||||
; 52de
|
||||
@@ -709,23 +709,23 @@ Movement_fast_jump_step_right: ; 53eb
|
||||
; 53f0
|
||||
|
||||
|
||||
Movement_half_step_down: ; 53f0
|
||||
Movement_turn_step_down: ; 53f0
|
||||
ld a, OW_DOWN
|
||||
jr HalfStep
|
||||
jr TurnStep
|
||||
|
||||
Movement_half_step_up: ; 53f4
|
||||
Movement_turn_step_up: ; 53f4
|
||||
ld a, OW_UP
|
||||
jr HalfStep
|
||||
jr TurnStep
|
||||
|
||||
Movement_half_step_left: ; 53f8
|
||||
Movement_turn_step_left: ; 53f8
|
||||
ld a, OW_LEFT
|
||||
jr HalfStep
|
||||
jr TurnStep
|
||||
|
||||
Movement_half_step_right: ; 53fc
|
||||
Movement_turn_step_right: ; 53fc
|
||||
ld a, OW_RIGHT
|
||||
jr HalfStep
|
||||
jr TurnStep
|
||||
|
||||
HalfStep: ; 5400
|
||||
TurnStep: ; 5400
|
||||
ld hl, OBJECT_29 ; new facing
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
|
@@ -511,7 +511,6 @@ TradedForText: ; 0xfcf80
|
||||
; traded givemon for getmon
|
||||
text_jump UnknownText_0x1bd429
|
||||
start_asm
|
||||
|
||||
ld de, MUSIC_NONE
|
||||
call PlayMusic
|
||||
call DelayFrame
|
||||
|
846
engine/player_movement.asm
Executable file
846
engine/player_movement.asm
Executable file
File diff suppressed because it is too large
Load Diff
@@ -336,7 +336,6 @@ Text_WhoaMins: ; 0x908a4
|
||||
; Whoa!@ @
|
||||
text_jump UnknownText_0x1bc31b
|
||||
start_asm
|
||||
; 0x908a9
|
||||
hlcoord 7, 14
|
||||
call DisplayMinutesWithMinString
|
||||
ld hl, .QuestionMark
|
||||
@@ -645,7 +644,6 @@ DebugDisplayTime: ; 90abc
|
||||
|
||||
.Text: ; 0x90acc
|
||||
start_asm
|
||||
|
||||
call UpdateTime
|
||||
|
||||
hlcoord 1, 14
|
||||
|
@@ -63,9 +63,6 @@ BugContest_ThirdPlaceText: ; 0x13719
|
||||
; Placing third was @ , who caught a @ !@ @
|
||||
text_jump ContestJudging_ThirdPlaceText
|
||||
start_asm
|
||||
; 0x1371e
|
||||
|
||||
BugContest_ThirdPlace: ; 1371e
|
||||
ld de, SFX_3RD_PLACE
|
||||
call PlaySFX
|
||||
call WaitSFX
|
||||
|
@@ -460,7 +460,7 @@ LoadMovementDataPointer:: ; 19e9
|
||||
|
||||
ld hl, OBJECT_STEP_TYPE
|
||||
add hl, bc
|
||||
ld [hl], 0
|
||||
ld [hl], STEP_TYPE_00
|
||||
|
||||
ld hl, VramState
|
||||
set 7, [hl]
|
||||
@@ -611,7 +611,7 @@ endr
|
||||
ret
|
||||
; 1aae
|
||||
|
||||
Function1aae:: ; 1aae
|
||||
_GetMovementByte:: ; 1aae
|
||||
; Switch to the movement data bank
|
||||
ld a, [hROMBank]
|
||||
push af
|
||||
|
@@ -1,3 +1,4 @@
|
||||
|
||||
enum_start
|
||||
|
||||
enum movement_turn_head_down
|
||||
@@ -20,24 +21,24 @@ turn_head_right: macro
|
||||
db movement_turn_head_right ; $03
|
||||
endm
|
||||
|
||||
enum movement_half_step_down
|
||||
half_step_down: macro
|
||||
db movement_half_step_down ; $04
|
||||
enum movement_turn_step_down
|
||||
turn_step_down: macro
|
||||
db movement_turn_step_down ; $04
|
||||
endm
|
||||
|
||||
enum movement_half_step_up
|
||||
half_step_up: macro
|
||||
db movement_half_step_up ; $05
|
||||
enum movement_turn_step_up
|
||||
turn_step_up: macro
|
||||
db movement_turn_step_up ; $05
|
||||
endm
|
||||
|
||||
enum movement_half_step_left
|
||||
half_step_left: macro
|
||||
db movement_half_step_left ; $06
|
||||
enum movement_turn_step_left
|
||||
turn_step_left: macro
|
||||
db movement_turn_step_left ; $06
|
||||
endm
|
||||
|
||||
enum movement_half_step_right
|
||||
half_step_right: macro
|
||||
db movement_half_step_right ; $07
|
||||
enum movement_turn_step_right
|
||||
turn_step_right: macro
|
||||
db movement_turn_step_right ; $07
|
||||
endm
|
||||
|
||||
enum movement_slow_step_down
|
||||
@@ -367,7 +368,10 @@ step_loop: macro
|
||||
db movement_step_loop ; $4a
|
||||
endm
|
||||
|
||||
__enum__ = $4c
|
||||
enum movement_step_4b
|
||||
step_4b: macro
|
||||
db movement_step_4b ; $4b
|
||||
endm
|
||||
|
||||
enum movement_teleport_from
|
||||
teleport_from: macro
|
||||
|
@@ -542,9 +542,6 @@ UnknownText_0x8b64c: ; 0x8b64c
|
||||
; CARD FOLDER open.@ @
|
||||
text_jump UnknownText_0x1bc288
|
||||
start_asm
|
||||
; 0x8b651
|
||||
|
||||
Function8b651: ; 8b651
|
||||
ld de, SFX_TWINKLE
|
||||
call PlaySFX
|
||||
call WaitSFX
|
||||
|
13
wram.asm
13
wram.asm
@@ -385,14 +385,14 @@ wLinkMode:: ; c2dc
|
||||
ScriptVar:: ; c2dd
|
||||
ds 1
|
||||
|
||||
wc2de:: ds 1
|
||||
wc2df:: ds 1
|
||||
wPlayerNextMovement:: ds 1
|
||||
wPlayerMovement:: ds 1
|
||||
ds 2
|
||||
wc2e2::
|
||||
wMovementPerson:: ds 1
|
||||
wMovementDataPointer:: ds 3 ; dba
|
||||
wc2e6:: ds 4
|
||||
wc2ea:: ds 1
|
||||
wc2eb::
|
||||
wMovementByteWasControlSwitch:: ds 1
|
||||
wMovementPointer:: ds 2 ; c2eb
|
||||
ds 3
|
||||
|
||||
@@ -2601,9 +2601,8 @@ CurDay:: ; d4cb
|
||||
wObjectFollow_Leader:: ds 1
|
||||
wObjectFollow_Follower:: ds 1
|
||||
wCenteredObject:: ds 1
|
||||
wd4d0:: ds 1
|
||||
wd4d1:: ds 1
|
||||
ds 4
|
||||
wFollowerMovementQueueLength:: ds 1
|
||||
wFollowMovementQueue:: ds 5
|
||||
|
||||
ObjectStructs:: ; d4d6
|
||||
object_struct: MACRO
|
||||
|
Reference in New Issue
Block a user