mirror of
https://gitlab.com/xCrystal/pokecrystal-board.git
synced 2024-11-16 11:27:33 -08:00
Creation of constants for OBJECT_09 indices
This commit is contained in:
parent
01fe51df0c
commit
cc8c36ee14
@ -266,3 +266,31 @@ SPRITEMOVEDATA_FIELDS EQU 6
|
||||
const SPRITEMOVEFN_1B
|
||||
|
||||
MAX_OUTDOOR_SPRITES EQU 23
|
||||
|
||||
const_def
|
||||
const OBJECT_09_VALUE_00
|
||||
const OBJECT_09_VALUE_01
|
||||
const OBJECT_09_VALUE_02
|
||||
const OBJECT_09_VALUE_03
|
||||
const OBJECT_09_VALUE_04
|
||||
const OBJECT_09_VALUE_05
|
||||
const OBJECT_09_VALUE_06
|
||||
const OBJECT_09_VALUE_07
|
||||
const OBJECT_09_VALUE_08
|
||||
const OBJECT_09_VALUE_09
|
||||
const OBJECT_09_VALUE_0A
|
||||
const OBJECT_09_VALUE_0B
|
||||
const OBJECT_09_VALUE_0C
|
||||
const OBJECT_09_VALUE_0D
|
||||
const OBJECT_09_VALUE_0E
|
||||
const OBJECT_09_VALUE_0F
|
||||
const OBJECT_09_VALUE_10
|
||||
const OBJECT_09_VALUE_11
|
||||
const OBJECT_09_VALUE_12
|
||||
const OBJECT_09_VALUE_13
|
||||
const OBJECT_09_VALUE_14
|
||||
const OBJECT_09_VALUE_15
|
||||
const OBJECT_09_VALUE_16
|
||||
const OBJECT_09_VALUE_17
|
||||
const OBJECT_09_VALUE_18
|
||||
const OBJECT_09_VALUE_19
|
||||
|
@ -24,13 +24,13 @@ OverworldLoop:: ; 966b0
|
||||
; 966cb
|
||||
|
||||
|
||||
ClearAllScriptFlags3: ; 966cb
|
||||
DisableEvents: ; 966cb
|
||||
xor a
|
||||
ld [ScriptFlags3], a
|
||||
ret
|
||||
; 966d0
|
||||
|
||||
SetAll_ScriptFlags3:: ; 966d0
|
||||
EnableEvents:: ; 966d0
|
||||
ld a, $ff
|
||||
ld [ScriptFlags3], a
|
||||
ret
|
||||
@ -42,73 +42,73 @@ CheckBit5_ScriptFlags3: ; 966d6
|
||||
ret
|
||||
; 966dc
|
||||
|
||||
ResetBit2_ScriptFlags3: ; 966dc
|
||||
DisableWarpsConnxns: ; 966dc
|
||||
ld hl, ScriptFlags3
|
||||
res 2, [hl]
|
||||
ret
|
||||
; 966e2
|
||||
|
||||
ResetBit1_ScriptFlags3: ; 966e2
|
||||
DisableCoordEvents: ; 966e2
|
||||
ld hl, ScriptFlags3
|
||||
res 1, [hl]
|
||||
ret
|
||||
; 966e8
|
||||
|
||||
ResetBit0_ScriptFlags3: ; 966e8
|
||||
DisableStepCount: ; 966e8
|
||||
ld hl, ScriptFlags3
|
||||
res 0, [hl]
|
||||
ret
|
||||
; 966ee
|
||||
|
||||
ResetBit4_ScriptFlags3: ; 966ee
|
||||
DisableWildEncounters: ; 966ee
|
||||
ld hl, ScriptFlags3
|
||||
res 4, [hl]
|
||||
ret
|
||||
; 966f4
|
||||
|
||||
SetBit2_ScriptFlags3: ; 966f4
|
||||
EnableWarpsConnxns: ; 966f4
|
||||
ld hl, ScriptFlags3
|
||||
set 2, [hl]
|
||||
ret
|
||||
; 966fa
|
||||
|
||||
SetBit1_ScriptFlags3: ; 966fa
|
||||
EnableCoordEvents: ; 966fa
|
||||
ld hl, ScriptFlags3
|
||||
set 1, [hl]
|
||||
ret
|
||||
; 96700
|
||||
|
||||
SetBit0_ScriptFlags3: ; 96700
|
||||
EnableStepCount: ; 96700
|
||||
ld hl, ScriptFlags3
|
||||
set 0, [hl]
|
||||
ret
|
||||
; 96706
|
||||
|
||||
SetBit4_ScriptFlags3: ; 96706
|
||||
EnableWildEncounters: ; 96706
|
||||
ld hl, ScriptFlags3
|
||||
set 4, [hl]
|
||||
ret
|
||||
; 9670c
|
||||
|
||||
CheckBit2_ScriptFlags3: ; 9670c
|
||||
CheckWarpConnxnScriptFlag: ; 9670c
|
||||
ld hl, ScriptFlags3
|
||||
bit 2, [hl]
|
||||
ret
|
||||
; 96712
|
||||
|
||||
CheckBit1_ScriptFlags3: ; 96712
|
||||
CheckCoordEventScriptFlag: ; 96712
|
||||
ld hl, ScriptFlags3
|
||||
bit 1, [hl]
|
||||
ret
|
||||
; 96718
|
||||
|
||||
CheckBit0_ScriptFlags3: ; 96718
|
||||
CheckStepCountScriptFlag: ; 96718
|
||||
ld hl, ScriptFlags3
|
||||
bit 0, [hl]
|
||||
ret
|
||||
; 9671e
|
||||
|
||||
CheckBit4_ScriptFlags3: ; 9671e
|
||||
CheckWildEncountersScriptFlag: ; 9671e
|
||||
ld hl, ScriptFlags3
|
||||
bit 4, [hl]
|
||||
ret
|
||||
@ -135,13 +135,13 @@ EnterMap: ; 9673e
|
||||
ld [wd454], a
|
||||
call SetUpFiveStepWildEncounterCooldown
|
||||
callba RunMapSetupScript
|
||||
call ClearAllScriptFlags3
|
||||
call DisableEvents
|
||||
|
||||
ld a, [hMapEntryMethod]
|
||||
cp MAPSETUP_CONNECTION
|
||||
jr nz, .dontset
|
||||
call SetAll_ScriptFlags3
|
||||
.dontset
|
||||
jr nz, .dont_enable
|
||||
call EnableEvents
|
||||
.dont_enable
|
||||
|
||||
ld a, [hMapEntryMethod]
|
||||
cp MAPSETUP_RELOADMAP
|
||||
@ -197,7 +197,7 @@ MapEvents: ; 96795
|
||||
|
||||
.events ; 967a1
|
||||
call PlayerEvents
|
||||
call ClearAllScriptFlags3
|
||||
call DisableEvents
|
||||
callba ScriptEvents
|
||||
ret
|
||||
; 967ae
|
||||
@ -238,7 +238,7 @@ Function967c1: ; 967c1
|
||||
; 967d1
|
||||
|
||||
Function967d1: ; 967d1
|
||||
callba Function576a
|
||||
callba Function576a ; engine/map_objects.asm
|
||||
callba Functiond497
|
||||
call Function96812
|
||||
ret
|
||||
@ -259,7 +259,7 @@ Function967f4: ; 967f4
|
||||
jr z, .noevents
|
||||
bit 4, a
|
||||
jr nz, .noevents
|
||||
call SetAll_ScriptFlags3
|
||||
call EnableEvents
|
||||
|
||||
.events
|
||||
ld a, 0 ; events
|
||||
@ -355,8 +355,8 @@ CheckTrainerBattle3: ; 96867
|
||||
CheckTileEvent: ; 96874
|
||||
; Check for warps, tile triggers or wild battles.
|
||||
|
||||
call CheckBit2_ScriptFlags3
|
||||
jr z, .bit2
|
||||
call CheckWarpConnxnScriptFlag
|
||||
jr z, .connections_disabled
|
||||
|
||||
callba CheckMovingOffEdgeOfMap
|
||||
jr c, .map_connection
|
||||
@ -364,22 +364,22 @@ CheckTileEvent: ; 96874
|
||||
call CheckWarpTile
|
||||
jr c, .warp_tile
|
||||
|
||||
.bit2
|
||||
call CheckBit1_ScriptFlags3
|
||||
jr z, .bit1
|
||||
.connections_disabled
|
||||
call CheckCoordEventScriptFlag
|
||||
jr z, .coord_events_disabled
|
||||
|
||||
call CheckCurrentMapXYTriggers
|
||||
jr c, .movement
|
||||
jr c, .coord_event
|
||||
|
||||
.bit1
|
||||
call CheckBit0_ScriptFlags3
|
||||
jr z, .bit0
|
||||
.coord_events_disabled
|
||||
call CheckStepCountScriptFlag
|
||||
jr z, .step_count_disabled
|
||||
|
||||
call CountStep
|
||||
ret c
|
||||
|
||||
.bit0
|
||||
call CheckBit4_ScriptFlags3
|
||||
.step_count_disabled
|
||||
call CheckWildEncountersScriptFlag
|
||||
jr z, .ok
|
||||
|
||||
call RandomEncounter
|
||||
@ -408,8 +408,8 @@ CheckTileEvent: ; 96874
|
||||
scf
|
||||
ret
|
||||
|
||||
.movement
|
||||
ld hl, MovementAnimation
|
||||
.coord_event
|
||||
ld hl, EngineBuffer5
|
||||
ld a, [hli]
|
||||
ld h, [hl]
|
||||
ld l, a
|
||||
@ -552,7 +552,7 @@ OWPlayerInput: ; 96974
|
||||
jr nz, .NoAction
|
||||
|
||||
; Can't perform button actions while sliding on ice.
|
||||
callba Function80404
|
||||
callba CheckStandingOnIce
|
||||
jr c, .NoAction
|
||||
|
||||
call CheckAPressOW
|
||||
@ -1077,12 +1077,12 @@ PlayerEventScriptPointers: ; 96c0c
|
||||
dba SeenByTrainerScript ; 1
|
||||
dba TalkToTrainerScript ; 2
|
||||
dba FindItemInBallScript ; 3
|
||||
dba UnknownScript_0x96c4d ; 4
|
||||
dba EdgeWarpScript ; 4
|
||||
dba WarpToNewMapScript ; 5
|
||||
dba FallIntoMapScript ; 6
|
||||
dba Script_OverworldWhiteout ; 7
|
||||
dba HatchEggScript ; 8
|
||||
dba UnknownScript_0x96c4f ; 9
|
||||
dba ChangeDirectionScript ; 9
|
||||
dba Invalid_0x96c2d ; 10
|
||||
; 96c2d
|
||||
|
||||
@ -1124,13 +1124,13 @@ LandAfterPitfallScript: ; 96c4a
|
||||
end
|
||||
; 96c4d
|
||||
|
||||
UnknownScript_0x96c4d: ; 4
|
||||
EdgeWarpScript: ; 4
|
||||
reloadandreturn MAPSETUP_CONNECTION
|
||||
; 96c4f
|
||||
|
||||
UnknownScript_0x96c4f: ; 9
|
||||
deactivatefacing $3
|
||||
callasm SetBit4_ScriptFlags3
|
||||
ChangeDirectionScript: ; 9
|
||||
deactivatefacing 3
|
||||
callasm EnableWildEncounters
|
||||
end
|
||||
; 96c56
|
||||
|
||||
|
@ -2,45 +2,45 @@
|
||||
INCLUDE "engine/facings.asm"
|
||||
|
||||
SpriteMovementData:: ; 4273
|
||||
; function, facing, ?, ?, ?, ?
|
||||
db SPRITEMOVEFN_00, DOWN, $01, $02, $00, $00 ; 00
|
||||
db SPRITEMOVEFN_STANDING, DOWN, $01, $0c, $00, $00 ; 01
|
||||
db SPRITEMOVEFN_RANDOM_WALK_XY, DOWN, $01, $00, $00, $00 ; 02
|
||||
db SPRITEMOVEFN_SLOW_RANDOM_SPIN, DOWN, $01, $00, $00, $00 ; 03
|
||||
db SPRITEMOVEFN_RANDOM_WALK_Y, DOWN, $01, $00, $00, $00 ; 04
|
||||
db SPRITEMOVEFN_RANDOM_WALK_X, DOWN, $01, $00, $00, $00 ; 05
|
||||
db SPRITEMOVEFN_STANDING, DOWN, $01, $00, $00, $00 ; 06
|
||||
db SPRITEMOVEFN_STANDING, UP, $01, $00, $00, $00 ; 07
|
||||
db SPRITEMOVEFN_STANDING, LEFT, $01, $00, $00, $00 ; 08
|
||||
db SPRITEMOVEFN_STANDING, RIGHT, $01, $00, $00, $00 ; 09
|
||||
db SPRITEMOVEFN_FAST_RANDOM_SPIN, DOWN, $01, $00, $00, $00 ; 0a
|
||||
db SPRITEMOVEFN_OBEY_DPAD, DOWN, $01, $02, $00, $00 ; 0b
|
||||
db SPRITEMOVEFN_08, DOWN, $01, $00, $00, $00 ; 0c
|
||||
db SPRITEMOVEFN_09, DOWN, $01, $00, $00, $00 ; 0d
|
||||
db SPRITEMOVEFN_0A, DOWN, $01, $00, $00, $00 ; 0e
|
||||
db SPRITEMOVEFN_0B, DOWN, $01, $00, $00, $00 ; 0f
|
||||
db SPRITEMOVEFN_0C, DOWN, $01, $00, $00, $00 ; 10
|
||||
db SPRITEMOVEFN_0D, DOWN, $01, $00, $00, $00 ; 11
|
||||
db SPRITEMOVEFN_0E, DOWN, $01, $00, $00, $00 ; 12
|
||||
db SPRITEMOVEFN_FOLLOW, DOWN, $01, $02, $00, $00 ; 13
|
||||
db SPRITEMOVEFN_SCRIPTED, DOWN, $01, $02, $00, $00 ; 14
|
||||
db SPRITEMOVEFN_BIG_SNORLAX, DOWN, $09, $2e, $01, $c0 ; 15
|
||||
db SPRITEMOVEFN_BOUNCE, DOWN, $0a, $2e, $00, $00 ; 16
|
||||
db SPRITEMOVEFN_STANDING, DOWN, $01, $0c, $00, $00 ; 17
|
||||
db SPRITEMOVEFN_STANDING, DOWN, $01, $2e, $10, $00 ; 18
|
||||
db SPRITEMOVEFN_STRENGTH, DOWN, $01, $2e, $00, $40 ; 19
|
||||
db SPRITEMOVEFN_FOLLOWNOTEXACT, DOWN, $01, $02, $00, $00 ; 1a
|
||||
db SPRITEMOVEFN_13, DOWN, $00, $8e, $01, $00 ; 1b
|
||||
db SPRITEMOVEFN_14, DOWN, $08, $8e, $02, $00 ; 1c
|
||||
db SPRITEMOVEFN_17, DOWN, $00, $82, $00, $00 ; 1d
|
||||
; function, facing, ?, ?, ?, ?
|
||||
db SPRITEMOVEFN_00, DOWN, $01, $02, $00, $00 ; 00
|
||||
db SPRITEMOVEFN_STANDING, DOWN, $01, $0c, $00, $00 ; 01
|
||||
db SPRITEMOVEFN_RANDOM_WALK_XY, DOWN, $01, $00, $00, $00 ; 02
|
||||
db SPRITEMOVEFN_SLOW_RANDOM_SPIN, DOWN, $01, $00, $00, $00 ; 03
|
||||
db SPRITEMOVEFN_RANDOM_WALK_Y, DOWN, $01, $00, $00, $00 ; 04
|
||||
db SPRITEMOVEFN_RANDOM_WALK_X, DOWN, $01, $00, $00, $00 ; 05
|
||||
db SPRITEMOVEFN_STANDING, DOWN, $01, $00, $00, $00 ; 06
|
||||
db SPRITEMOVEFN_STANDING, UP, $01, $00, $00, $00 ; 07
|
||||
db SPRITEMOVEFN_STANDING, LEFT, $01, $00, $00, $00 ; 08
|
||||
db SPRITEMOVEFN_STANDING, RIGHT, $01, $00, $00, $00 ; 09
|
||||
db SPRITEMOVEFN_FAST_RANDOM_SPIN, DOWN, $01, $00, $00, $00 ; 0a
|
||||
db SPRITEMOVEFN_OBEY_DPAD, DOWN, $01, $02, $00, $00 ; 0b
|
||||
db SPRITEMOVEFN_08, DOWN, $01, $00, $00, $00 ; 0c
|
||||
db SPRITEMOVEFN_09, DOWN, $01, $00, $00, $00 ; 0d
|
||||
db SPRITEMOVEFN_0A, DOWN, $01, $00, $00, $00 ; 0e
|
||||
db SPRITEMOVEFN_0B, DOWN, $01, $00, $00, $00 ; 0f
|
||||
db SPRITEMOVEFN_0C, DOWN, $01, $00, $00, $00 ; 10
|
||||
db SPRITEMOVEFN_0D, DOWN, $01, $00, $00, $00 ; 11
|
||||
db SPRITEMOVEFN_0E, DOWN, $01, $00, $00, $00 ; 12
|
||||
db SPRITEMOVEFN_FOLLOW, DOWN, $01, $02, $00, $00 ; 13
|
||||
db SPRITEMOVEFN_SCRIPTED, DOWN, $01, $02, $00, $00 ; 14
|
||||
db SPRITEMOVEFN_BIG_SNORLAX, DOWN, $09, $2e, $01, $c0 ; 15
|
||||
db SPRITEMOVEFN_BOUNCE, DOWN, $0a, $2e, $00, $00 ; 16
|
||||
db SPRITEMOVEFN_STANDING, DOWN, $01, $0c, $00, $00 ; 17
|
||||
db SPRITEMOVEFN_STANDING, DOWN, $01, $2e, $10, $00 ; 18
|
||||
db SPRITEMOVEFN_STRENGTH, DOWN, $01, $2e, $00, $40 ; 19
|
||||
db SPRITEMOVEFN_FOLLOWNOTEXACT, DOWN, $01, $02, $00, $00 ; 1a
|
||||
db SPRITEMOVEFN_13, DOWN, $00, $8e, $01, $00 ; 1b
|
||||
db SPRITEMOVEFN_14, DOWN, $08, $8e, $02, $00 ; 1c
|
||||
db SPRITEMOVEFN_17, DOWN, $00, $82, $00, $00 ; 1d
|
||||
db SPRITEMOVEFN_SPIN_COUNTERCLOCKWISE, LEFT, $01, $00, $00, $00 ; 1e
|
||||
db SPRITEMOVEFN_SPIN_CLOCKWISE, RIGHT, $01, $00, $00, $00 ; 1f
|
||||
db SPRITEMOVEFN_STRENGTH, DOWN, $0c, $2e, $01, $c0 ; 20
|
||||
db SPRITEMOVEFN_STRENGTH, DOWN, $0d, $2e, $01, $c0 ; 21
|
||||
db SPRITEMOVEFN_1A, DOWN, $0e, $8e, $01, $00 ; 22
|
||||
db SPRITEMOVEFN_1B, DOWN, $0f, $8e, $02, $00 ; 23
|
||||
db SPRITEMOVEFN_RANDOM_WALK_XY, DOWN, $01, $00, $00, $20 ; 24
|
||||
db SPRITEMOVEFN_00, DOWN, $01, $00, $00, $00 ; 25
|
||||
db SPRITEMOVEFN_SPIN_CLOCKWISE, RIGHT, $01, $00, $00, $00 ; 1f
|
||||
db SPRITEMOVEFN_STRENGTH, DOWN, $0c, $2e, $01, $c0 ; 20
|
||||
db SPRITEMOVEFN_STRENGTH, DOWN, $0d, $2e, $01, $c0 ; 21
|
||||
db SPRITEMOVEFN_1A, DOWN, $0e, $8e, $01, $00 ; 22
|
||||
db SPRITEMOVEFN_1B, DOWN, $0f, $8e, $02, $00 ; 23
|
||||
db SPRITEMOVEFN_RANDOM_WALK_XY, DOWN, $01, $00, $00, $20 ; 24
|
||||
db SPRITEMOVEFN_00, DOWN, $01, $00, $00, $00 ; 25
|
||||
; 4357
|
||||
|
||||
|
||||
@ -156,11 +156,13 @@ Function43f3: ; 43f3
|
||||
ld a, [hl]
|
||||
and a
|
||||
jr z, .zero
|
||||
|
||||
ld hl, OBJECT_FLAGS2
|
||||
add hl, bc
|
||||
bit 5, [hl]
|
||||
jr nz, .bit5
|
||||
cp 1
|
||||
|
||||
cp OBJECT_09_VALUE_01
|
||||
jr z, .one
|
||||
jr .ok
|
||||
|
||||
@ -178,7 +180,7 @@ Function43f3: ; 43f3
|
||||
ld a, [hl]
|
||||
and a
|
||||
ret z
|
||||
cp 1
|
||||
cp OBJECT_09_VALUE_01
|
||||
ret z
|
||||
|
||||
.ok
|
||||
@ -892,6 +894,7 @@ IncrementObjectStructField28: ; 47a2
|
||||
; 47a8
|
||||
|
||||
JumptoObjectStructField28: ; 47a8
|
||||
; anonymous jumptable
|
||||
ld hl, OBJECT_28
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
@ -931,7 +934,7 @@ Function47bc: ; 47bc
|
||||
call Function467b
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], 1
|
||||
ld [hl], OBJECT_09_VALUE_01
|
||||
ret
|
||||
; 47dd
|
||||
|
||||
@ -1037,7 +1040,7 @@ Function47dd: ; 47dd
|
||||
ld [hl], 1
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], 5
|
||||
ld [hl], OBJECT_09_VALUE_05
|
||||
ret
|
||||
; 487c
|
||||
|
||||
@ -1121,7 +1124,7 @@ Function47dd: ; 47dd
|
||||
call Function463f
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], $f
|
||||
ld [hl], OBJECT_09_VALUE_0F
|
||||
ret
|
||||
|
||||
.ok2
|
||||
@ -1223,7 +1226,7 @@ Function47dd: ; 47dd
|
||||
ld [hl], 9
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], 4
|
||||
ld [hl], OBJECT_09_VALUE_04
|
||||
ret
|
||||
; 496e
|
||||
|
||||
@ -1237,7 +1240,7 @@ Function47dd: ; 47dd
|
||||
ld [hl], 10
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], 4
|
||||
ld [hl], OBJECT_09_VALUE_04
|
||||
ret
|
||||
; 4984
|
||||
|
||||
@ -1274,7 +1277,7 @@ Function47dd: ; 47dd
|
||||
ld [hl], a
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], 3
|
||||
ld [hl], OBJECT_09_VALUE_03
|
||||
call IncrementObjectStructField27
|
||||
ret
|
||||
; 49b8
|
||||
@ -1351,7 +1354,7 @@ Function47dd: ; 47dd
|
||||
ld [hl], 0
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], $13
|
||||
ld [hl], OBJECT_09_VALUE_13
|
||||
ret
|
||||
; 4a21
|
||||
|
||||
@ -1372,7 +1375,7 @@ Function47dd: ; 47dd
|
||||
ld [hl], 0
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], $13
|
||||
ld [hl], OBJECT_09_VALUE_13
|
||||
ret
|
||||
; 4a46
|
||||
|
||||
@ -1411,7 +1414,7 @@ endr
|
||||
ld [hl], e
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], $13
|
||||
ld [hl], OBJECT_09_VALUE_13
|
||||
ret
|
||||
; 4a81
|
||||
|
||||
@ -1438,7 +1441,7 @@ endr
|
||||
ld [hl], a
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], $13
|
||||
ld [hl], OBJECT_09_VALUE_13
|
||||
ret
|
||||
; 4aa8
|
||||
|
||||
@ -1476,7 +1479,7 @@ endr
|
||||
ld [hl], a
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], $15
|
||||
ld [hl], OBJECT_09_VALUE_15
|
||||
ret
|
||||
; 4ade
|
||||
|
||||
@ -1512,13 +1515,13 @@ endr
|
||||
jr z, .load_6
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], 7
|
||||
ld [hl], OBJECT_09_VALUE_07
|
||||
ret
|
||||
|
||||
.load_6
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], 6
|
||||
ld [hl], OBJECT_09_VALUE_06
|
||||
ret
|
||||
|
||||
Function4b17: ; 4b17
|
||||
@ -1553,37 +1556,38 @@ Function4b2d: ; 4b2d
|
||||
ld [hl], 1
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], 3
|
||||
ld [hl], OBJECT_09_VALUE_03
|
||||
ret
|
||||
; 4b45
|
||||
|
||||
Pointers4b45: ; 4b45
|
||||
dw Function47bc
|
||||
dw Function47dd
|
||||
dw Function4e2b
|
||||
dw Function4ddd
|
||||
dw Function4e21
|
||||
dw Function4e0c
|
||||
dw Function4e56
|
||||
dw Function4e47
|
||||
dw Function4b86
|
||||
dw Function4bbf
|
||||
dw Function4e83
|
||||
dw Function4dff
|
||||
dw Function4c18
|
||||
dw Function4c89
|
||||
dw Function4d14
|
||||
dw Function4ecd
|
||||
dw Function4d7e
|
||||
dw Function4daf
|
||||
dw Function4dc8
|
||||
dw Function4f04
|
||||
dw Function4f33
|
||||
dw Function4f33
|
||||
dw Function4f77
|
||||
dw Function4f7a
|
||||
dw Function4df0
|
||||
dw Function4f83
|
||||
; These pointers use OBJECT_09. See constants/sprite_constants.asm
|
||||
dw Function47bc ; 00
|
||||
dw Function47dd ; 01
|
||||
dw Function4e2b ; 02
|
||||
dw Function4ddd ; 03
|
||||
dw Function4e21 ; 04
|
||||
dw Function4e0c ; 05
|
||||
dw Function4e56 ; 06
|
||||
dw Function4e47 ; 07
|
||||
dw Function4b86 ; 08
|
||||
dw Function4bbf ; 09
|
||||
dw Function4e83 ; 0a
|
||||
dw Function4dff ; 0b
|
||||
dw Function4c18 ; 0c
|
||||
dw Function4c89 ; 0d
|
||||
dw Function4d14 ; 0e
|
||||
dw Function4ecd ; 0f
|
||||
dw Function4d7e ; 10
|
||||
dw Function4daf ; 11
|
||||
dw Function4dc8 ; 12
|
||||
dw Function4f04 ; 13
|
||||
dw Function4f33 ; 14
|
||||
dw Function4f33 ; 15
|
||||
dw Function4f77 ; 16
|
||||
dw Function4f7a ; 17
|
||||
dw Function4df0 ; 18
|
||||
dw Function4f83 ; 19
|
||||
; 4b79
|
||||
|
||||
Function4b79: ; 4b79
|
||||
@ -1593,7 +1597,7 @@ Function4b79: ; 4b79
|
||||
ret nz
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], 1
|
||||
ld [hl], OBJECT_09_VALUE_01
|
||||
ret
|
||||
; 4b86
|
||||
|
||||
@ -1629,7 +1633,7 @@ Function4ba9: ; 4ba9
|
||||
call Function4600
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], 1
|
||||
ld [hl], OBJECT_09_VALUE_01
|
||||
ret
|
||||
; 4bbf
|
||||
|
||||
@ -1686,7 +1690,7 @@ Function4bfd: ; 4bfd
|
||||
call Function4600
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], 1
|
||||
ld [hl], OBJECT_09_VALUE_01
|
||||
ret
|
||||
; 4c18
|
||||
|
||||
@ -1762,7 +1766,7 @@ Function4c5d: ; 4c5d
|
||||
ld [hl], 0
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], 1
|
||||
ld [hl], OBJECT_09_VALUE_01
|
||||
ret
|
||||
; 4c89
|
||||
|
||||
@ -1861,7 +1865,7 @@ Function4d01: ; 4d01
|
||||
ld [hl], 0
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], 1
|
||||
ld [hl], OBJECT_09_VALUE_01
|
||||
ret
|
||||
; 4d14
|
||||
|
||||
@ -1934,7 +1938,7 @@ Function4d6b: ; 4d6b
|
||||
ld [hl], 0
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], 1
|
||||
ld [hl], OBJECT_09_VALUE_01
|
||||
ret
|
||||
; 4d7e
|
||||
|
||||
@ -1970,7 +1974,7 @@ Function4d94: ; 4d94
|
||||
ld [hl], 0
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], 1
|
||||
ld [hl], OBJECT_09_VALUE_01
|
||||
ret
|
||||
; 4daf
|
||||
|
||||
@ -2021,7 +2025,7 @@ Function4ddd: ; 4ddd
|
||||
ret nz
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], 1
|
||||
ld [hl], OBJECT_09_VALUE_01
|
||||
ret
|
||||
; 4df0
|
||||
|
||||
@ -2043,7 +2047,7 @@ Function4dff: ; 4dff
|
||||
ret nz
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], 1
|
||||
ld [hl], OBJECT_09_VALUE_01
|
||||
ret
|
||||
; 4e0c
|
||||
|
||||
@ -2055,7 +2059,7 @@ Function4e0c: ; 4e0c
|
||||
|
||||
Function4e13: ; 4e13
|
||||
call RestoreDefaultMovement
|
||||
call Function1a47
|
||||
call GetInitialFacing
|
||||
ld hl, OBJECT_FACING
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
@ -2084,7 +2088,7 @@ Function4e2b: ; 4e2b
|
||||
ld [hl], STANDING
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], 1
|
||||
ld [hl], OBJECT_09_VALUE_01
|
||||
ret
|
||||
; 4e47
|
||||
|
||||
@ -2126,7 +2130,7 @@ Function4e65: ; 4e65
|
||||
ld [hl], STANDING
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], 1
|
||||
ld [hl], OBJECT_09_VALUE_01
|
||||
ret
|
||||
; 4e83
|
||||
|
||||
@ -2183,7 +2187,7 @@ Function4ec0: ; 4ec0
|
||||
ret nz
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], 1
|
||||
ld [hl], OBJECT_09_VALUE_01
|
||||
ret
|
||||
; 4ecd
|
||||
|
||||
@ -2215,7 +2219,7 @@ Function4ecd: ; 4ecd
|
||||
ld [hl], STANDING
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], 1
|
||||
ld [hl], OBJECT_09_VALUE_01
|
||||
ret
|
||||
; 4f04
|
||||
|
||||
@ -2347,7 +2351,7 @@ Function4f99: ; 4f99
|
||||
ld [hl], 0
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], 1
|
||||
ld [hl], OBJECT_09_VALUE_01
|
||||
ret
|
||||
; 4fb2
|
||||
|
||||
@ -2404,7 +2408,7 @@ UpdateJumpPosition: ; 4fd5
|
||||
; 5000
|
||||
|
||||
Function5000: ; unscripted?
|
||||
; copy [wc3de] to [wc2df]
|
||||
; copy [wc2de] to [wc2df]
|
||||
ld a, [wc2de]
|
||||
ld hl, wc2df
|
||||
ld [hl], a
|
||||
@ -3188,7 +3192,7 @@ SetFollowerIfVisible: ; 582c
|
||||
ld [hl], SPRITEMOVEDATA_FOLLOWING
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], 0
|
||||
ld [hl], OBJECT_09_VALUE_00
|
||||
ld a, [hObjectStructIndexBuffer]
|
||||
ld [wObjectFollow_Follower], a
|
||||
ret
|
||||
@ -3328,7 +3332,7 @@ Function58e3: ; 58e3
|
||||
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], 0
|
||||
ld [hl], OBJECT_09_VALUE_00
|
||||
ret
|
||||
; 5903
|
||||
|
||||
@ -3347,7 +3351,7 @@ Function5903: ; 5903
|
||||
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], 0
|
||||
ld [hl], OBJECT_09_VALUE_00
|
||||
ret
|
||||
|
||||
.standing_movefns
|
||||
|
@ -29,7 +29,7 @@ MartDialog: ; 15a61
|
||||
ld a, 0
|
||||
ld [EngineBuffer1], a
|
||||
xor a
|
||||
ld [MovementAnimation], a
|
||||
ld [EngineBuffer5], a
|
||||
call StandardMart
|
||||
ret
|
||||
; 15a6e
|
||||
@ -129,7 +129,7 @@ LoadMartPointer: ; 15b10
|
||||
ld bc, 16
|
||||
call ByteFill
|
||||
xor a
|
||||
ld [MovementAnimation], a
|
||||
ld [EngineBuffer5], a
|
||||
ld [wBargainShopFlags], a
|
||||
ld [FacingDirection], a
|
||||
ret
|
||||
@ -157,10 +157,10 @@ endr
|
||||
|
||||
StandardMart: ; 15b47
|
||||
.loop
|
||||
ld a, [MovementAnimation]
|
||||
ld a, [EngineBuffer5]
|
||||
ld hl, .MartFunctions
|
||||
rst JumpTable
|
||||
ld [MovementAnimation], a
|
||||
ld [EngineBuffer5], a
|
||||
cp $ff
|
||||
jr nz, .loop
|
||||
ret
|
||||
|
@ -79,7 +79,7 @@ MovementPointers: ; 5075
|
||||
dw Movement_teleport_to ; 4d
|
||||
dw Movement_skyfall ; 4e
|
||||
dw Movement_step_wait5 ; 4f
|
||||
dw Movement_50 ; 50
|
||||
dw Movement_step_bump ; 50
|
||||
dw Movement_fish_got_bite ; 51
|
||||
dw Movement_fish_cast_rod ; 52
|
||||
dw Movement_hide_emote ; 53
|
||||
@ -95,28 +95,28 @@ MovementPointers: ; 5075
|
||||
Movement_teleport_from: ; 5129
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], $c
|
||||
ld [hl], OBJECT_09_VALUE_0C
|
||||
ret
|
||||
; 5130
|
||||
|
||||
Movement_teleport_to: ; 5130
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], $d
|
||||
ld [hl], OBJECT_09_VALUE_0D
|
||||
ret
|
||||
; 5137
|
||||
|
||||
Movement_skyfall: ; 5137
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], $e
|
||||
ld [hl], OBJECT_09_VALUE_0E
|
||||
ret
|
||||
; 513e
|
||||
|
||||
Movement_59: ; 513e
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], $19
|
||||
ld [hl], OBJECT_09_VALUE_19
|
||||
ret
|
||||
; 5145
|
||||
|
||||
@ -136,7 +136,7 @@ Movement_step_wait5: ; 5145
|
||||
ld [hl], a
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], $3
|
||||
ld [hl], OBJECT_09_VALUE_03
|
||||
ld hl, OBJECT_DIRECTION_WALKING
|
||||
add hl, bc
|
||||
ld [hl], STANDING
|
||||
@ -159,7 +159,7 @@ Movement_58: ; 516a
|
||||
ld [hl], STANDING
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], $12
|
||||
ld [hl], OBJECT_09_VALUE_12
|
||||
ret
|
||||
; 5189
|
||||
|
||||
@ -169,7 +169,7 @@ Movement_fish_got_bite: ; 5189
|
||||
ld [hl], $6
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], $10
|
||||
ld [hl], OBJECT_09_VALUE_10
|
||||
ret
|
||||
; 5196
|
||||
|
||||
@ -183,7 +183,7 @@ Movement_rock_smash: ; 5196
|
||||
ld [hl], $1
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], $11
|
||||
ld [hl], OBJECT_09_VALUE_11
|
||||
ret
|
||||
; 51ab
|
||||
|
||||
@ -193,7 +193,7 @@ Movement_fish_cast_rod: ; 51ab
|
||||
ld [hl], $6
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], $1
|
||||
ld [hl], OBJECT_09_VALUE_01
|
||||
ret
|
||||
; 51b8
|
||||
|
||||
@ -219,7 +219,7 @@ Movement_step_end: ; 51c1
|
||||
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], $1
|
||||
ld [hl], OBJECT_09_VALUE_01
|
||||
ret
|
||||
; 51db
|
||||
|
||||
@ -240,7 +240,7 @@ Movement_48: ; 51db
|
||||
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], $3
|
||||
ld [hl], OBJECT_09_VALUE_03
|
||||
|
||||
ld hl, VramState
|
||||
res 7, [hl]
|
||||
@ -268,7 +268,7 @@ Movement_4b: ; 5210
|
||||
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], $4
|
||||
ld [hl], OBJECT_09_VALUE_04
|
||||
|
||||
ld hl, VramState
|
||||
res 7, [hl]
|
||||
@ -276,52 +276,52 @@ Movement_4b: ; 5210
|
||||
; 5222
|
||||
|
||||
Movement_step_sleep_1: ; 5222
|
||||
ld a, $1
|
||||
jr Function5247
|
||||
ld a, 1
|
||||
jr Movement_step_sleep_common
|
||||
|
||||
Movement_step_sleep_2: ; 5226
|
||||
ld a, $2
|
||||
jr Function5247
|
||||
ld a, 2
|
||||
jr Movement_step_sleep_common
|
||||
|
||||
Movement_step_sleep_3: ; 522a
|
||||
ld a, $3
|
||||
jr Function5247
|
||||
ld a, 3
|
||||
jr Movement_step_sleep_common
|
||||
|
||||
Movement_step_sleep_4: ; 522e
|
||||
ld a, $4
|
||||
jr Function5247
|
||||
ld a, 4
|
||||
jr Movement_step_sleep_common
|
||||
|
||||
Movement_step_sleep_5: ; 5232
|
||||
ld a, $5
|
||||
jr Function5247
|
||||
ld a, 5
|
||||
jr Movement_step_sleep_common
|
||||
|
||||
Movement_step_sleep_6: ; 5236
|
||||
ld a, $6
|
||||
jr Function5247
|
||||
ld a, 6
|
||||
jr Movement_step_sleep_common
|
||||
|
||||
Movement_step_sleep_7: ; 523a
|
||||
ld a, $7
|
||||
jr Function5247
|
||||
ld a, 7
|
||||
jr Movement_step_sleep_common
|
||||
|
||||
Movement_step_sleep_8: ; 523e
|
||||
ld a, $8
|
||||
jr Function5247
|
||||
ld a, 8
|
||||
jr Movement_step_sleep_common
|
||||
|
||||
Movement_step_sleep: ; 5242
|
||||
; parameters:
|
||||
; duration (DecimalParam)
|
||||
|
||||
call GetMovementByte
|
||||
jr Function5247
|
||||
jr Movement_step_sleep_common
|
||||
|
||||
Function5247: ; 5247
|
||||
Movement_step_sleep_common: ; 5247
|
||||
ld hl, OBJECT_STEP_DURATION
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], $3
|
||||
ld [hl], OBJECT_09_VALUE_03
|
||||
|
||||
ld hl, OBJECT_11
|
||||
add hl, bc
|
||||
@ -333,14 +333,14 @@ Function5247: ; 5247
|
||||
ret
|
||||
; 525f
|
||||
|
||||
Movement_50: ; 525f
|
||||
Movement_step_bump: ; 525f
|
||||
ld a, $1
|
||||
ld hl, OBJECT_STEP_DURATION
|
||||
add hl, bc
|
||||
ld [hl], a
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], $b
|
||||
ld [hl], OBJECT_09_VALUE_0B
|
||||
ld hl, OBJECT_11
|
||||
add hl, bc
|
||||
ld [hl], $3
|
||||
@ -357,7 +357,7 @@ Movement_56: ; 5279
|
||||
ld [hl], a
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], $3
|
||||
ld [hl], OBJECT_09_VALUE_03
|
||||
ld hl, OBJECT_11
|
||||
add hl, bc
|
||||
ld [hl], $b
|
||||
@ -726,7 +726,7 @@ HalfStep: ; 5400
|
||||
ld [hl], $2
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], $a
|
||||
ld [hl], OBJECT_09_VALUE_0A
|
||||
ret
|
||||
; 5412
|
||||
|
||||
@ -756,13 +756,13 @@ NormalStep: ; 5412
|
||||
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], $2
|
||||
ld [hl], OBJECT_09_VALUE_02
|
||||
ret
|
||||
|
||||
.asm_543f
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], $6
|
||||
ld [hl], OBJECT_09_VALUE_06
|
||||
ret
|
||||
; 5446
|
||||
|
||||
@ -778,13 +778,13 @@ TurningStep: ; 5446
|
||||
jr z, .asm_5461
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], $2
|
||||
ld [hl], OBJECT_09_VALUE_02
|
||||
ret
|
||||
|
||||
.asm_5461
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], $6
|
||||
ld [hl], OBJECT_09_VALUE_06
|
||||
ret
|
||||
; 5468
|
||||
|
||||
@ -801,13 +801,13 @@ SlideStep: ; 5468
|
||||
jr z, .asm_5483
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], $2
|
||||
ld [hl], OBJECT_09_VALUE_02
|
||||
ret
|
||||
|
||||
.asm_5483
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], $6
|
||||
ld [hl], OBJECT_09_VALUE_06
|
||||
ret
|
||||
; 548a
|
||||
|
||||
@ -830,12 +830,12 @@ JumpStep: ; 548a
|
||||
jr z, .asm_54b1
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], $8
|
||||
ld [hl], OBJECT_09_VALUE_08
|
||||
ret
|
||||
|
||||
.asm_54b1
|
||||
ld hl, OBJECT_09
|
||||
add hl, bc
|
||||
ld [hl], $9
|
||||
ld [hl], OBJECT_09_VALUE_09
|
||||
ret
|
||||
; 54b8
|
||||
|
@ -2987,12 +2987,12 @@ Script_warpcheck: ; 0x97af6
|
||||
|
||||
call WarpCheck
|
||||
ret nc
|
||||
callba SetAll_ScriptFlags3
|
||||
callba EnableEvents
|
||||
ret
|
||||
; 0x97b01
|
||||
|
||||
Function97b01: ; 0x97b01
|
||||
callba SetAll_ScriptFlags3
|
||||
Script_enableevents: ; unreferenced
|
||||
callba EnableEvents
|
||||
ret
|
||||
; 0x97b08
|
||||
|
||||
|
@ -75,7 +75,7 @@ Function8cf7a: ; 8cf7a
|
||||
; 8cfa8
|
||||
|
||||
Function8cfa8: ; 8cfa8 (23:4fa8)
|
||||
ld hl, wc314
|
||||
ld hl, wSpriteAnimationStructs
|
||||
ld e, 10
|
||||
|
||||
.loop
|
||||
|
@ -508,7 +508,7 @@ endr
|
||||
ret
|
||||
; 1a47
|
||||
|
||||
Function1a47:: ; 1a47
|
||||
GetInitialFacing:: ; 1a47
|
||||
push bc
|
||||
push de
|
||||
ld e, a
|
||||
|
@ -388,7 +388,10 @@ step_wait5: macro
|
||||
db movement_step_wait5 ; $4f
|
||||
endm
|
||||
|
||||
__enum__ = $51
|
||||
enum movement_step_bump
|
||||
step_bump: macro
|
||||
db movement_step_bump ; $50
|
||||
endm
|
||||
|
||||
enum movement_fish_got_bite
|
||||
fish_got_bite: macro
|
||||
|
149
main.asm
149
main.asm
@ -2369,7 +2369,7 @@ CheckFacingObject:: ; 6fd9
|
||||
ld bc, ObjectStructs ; redundant
|
||||
ld a, 0
|
||||
ld [hMapObjectIndexBuffer], a
|
||||
call Function7041
|
||||
call IsNPCAtCoord
|
||||
ret nc
|
||||
ld hl, OBJECT_DIRECTION_WALKING
|
||||
add hl, bc
|
||||
@ -2392,14 +2392,14 @@ Function7009: ; 7009
|
||||
ld hl, OBJECT_MAP_Y
|
||||
add hl, bc
|
||||
ld e, [hl]
|
||||
jr Function7041
|
||||
jr IsNPCAtCoord
|
||||
; 7015
|
||||
|
||||
Function7015: ; unreferenced
|
||||
ld a, [hMapObjectIndexBuffer]
|
||||
call GetObjectStruct
|
||||
call Function7021
|
||||
call Function7041
|
||||
call IsNPCAtCoord
|
||||
ret
|
||||
|
||||
Function7021: ; 7021
|
||||
@ -2432,21 +2432,24 @@ Function7021: ; 7021
|
||||
ret
|
||||
; 7041
|
||||
|
||||
Function7041: ; 7041
|
||||
IsNPCAtCoord: ; 7041
|
||||
ld bc, ObjectStructs
|
||||
xor a
|
||||
.loop
|
||||
ld [hObjectStructIndexBuffer], a
|
||||
call GetObjectSprite
|
||||
jr z, .next
|
||||
|
||||
ld hl, OBJECT_FLAGS1
|
||||
add hl, bc
|
||||
bit 7, [hl]
|
||||
jr nz, .next
|
||||
|
||||
ld hl, OBJECT_PALETTE
|
||||
add hl, bc
|
||||
bit 7, [hl]
|
||||
jr z, .got
|
||||
|
||||
call Function7171
|
||||
jr nc, .ok
|
||||
jr .ok2
|
||||
@ -3631,7 +3634,7 @@ Function8286: ; 8286
|
||||
|
||||
ld hl, OBJECT_09
|
||||
add hl, de
|
||||
ld [hl], $0
|
||||
ld [hl], OBJECT_09_VALUE_00
|
||||
|
||||
ld hl, OBJECT_FACING_STEP
|
||||
add hl, de
|
||||
@ -3882,7 +3885,7 @@ FollowNotExact:: ; 839e
|
||||
ld [hl], SPRITEMOVEDATA_FOLLOWNOTEXACT
|
||||
ld hl, OBJECT_09
|
||||
add hl, de
|
||||
ld [hl], $0
|
||||
ld [hl], OBJECT_09_VALUE_00
|
||||
ret
|
||||
; 8417
|
||||
|
||||
@ -33993,7 +33996,7 @@ SECTION "bank20", ROMX, BANK[$20]
|
||||
DoPlayerMovement:: ; 80000
|
||||
|
||||
call GetMovementInput
|
||||
ld a, $3e ; standing
|
||||
ld a, movement_step_sleep_1
|
||||
ld [MovementAnimation], a
|
||||
xor a
|
||||
ld [wd041], a
|
||||
@ -34039,7 +34042,7 @@ GetPlayerMovement: ; 8002d
|
||||
cp PLAYER_BIKE
|
||||
jr z, .Normal
|
||||
cp PLAYER_SLIP
|
||||
jr z, .Board
|
||||
jr z, .Ice
|
||||
|
||||
.Normal
|
||||
call CheckForcedMovementInput
|
||||
@ -34067,7 +34070,7 @@ GetPlayerMovement: ; 8002d
|
||||
ret c
|
||||
jr .NotMoving
|
||||
|
||||
.Board
|
||||
.Ice
|
||||
call CheckForcedMovementInput
|
||||
call GetMovementAction
|
||||
call CheckTileMovement
|
||||
@ -34095,7 +34098,7 @@ GetPlayerMovement: ; 8002d
|
||||
jr z, .Standing
|
||||
|
||||
; Walking into an edge warp won't bump.
|
||||
ld a, [wd041]
|
||||
ld a, [EngineBuffer4]
|
||||
and a
|
||||
jr nz, .CantMove
|
||||
call PlayBump
|
||||
@ -34268,13 +34271,13 @@ TryStep: ; 8016b
|
||||
jr z, TrySurfStep
|
||||
|
||||
call CheckLandPermissions
|
||||
jr c, .asm_801be
|
||||
jr c, .bump
|
||||
|
||||
call IsNPCInFront
|
||||
and a
|
||||
jr z, .asm_801be
|
||||
jr z, .bump
|
||||
cp 2
|
||||
jr z, .asm_801be
|
||||
jr z, .bump
|
||||
|
||||
ld a, [PlayerStandingTile]
|
||||
call CheckIceTile
|
||||
@ -34282,7 +34285,7 @@ TryStep: ; 8016b
|
||||
|
||||
; Downhill riding is slower when not moving down.
|
||||
call CheckRiding
|
||||
jr nz, .asm_801ae
|
||||
jr nz, .walk
|
||||
|
||||
ld hl, BikeFlags
|
||||
bit 2, [hl] ; downhill
|
||||
@ -34303,7 +34306,7 @@ TryStep: ; 8016b
|
||||
scf
|
||||
ret
|
||||
|
||||
.asm_801ae
|
||||
.walk
|
||||
ld a, STEP_WALK
|
||||
call DoStep
|
||||
scf
|
||||
@ -34319,7 +34322,7 @@ TryStep: ; 8016b
|
||||
xor a
|
||||
ret
|
||||
|
||||
.asm_801be
|
||||
.bump
|
||||
xor a
|
||||
ret
|
||||
; 801c0
|
||||
@ -34417,13 +34420,13 @@ CheckEdgeWarp: ; 80226
|
||||
add hl, de
|
||||
ld a, [PlayerStandingTile]
|
||||
cp [hl]
|
||||
jr nz, .asm_80259
|
||||
jr nz, .nope
|
||||
|
||||
ld a, 1
|
||||
ld [wd041], a
|
||||
ld a, [WalkingDirection]
|
||||
cp STANDING
|
||||
jr z, .asm_80259
|
||||
jr z, .nope
|
||||
|
||||
ld e, a
|
||||
ld a, [PlayerDirection]
|
||||
@ -34431,16 +34434,16 @@ CheckEdgeWarp: ; 80226
|
||||
rrca
|
||||
and 3
|
||||
cp e
|
||||
jr nz, .asm_80259
|
||||
call WarpCheck ; CheckFallPit?
|
||||
jr nc, .asm_80259
|
||||
jr nz, .nope
|
||||
call WarpCheck
|
||||
jr nc, .nope
|
||||
|
||||
call StandInPlace
|
||||
scf
|
||||
ld a, 1
|
||||
ret
|
||||
|
||||
.asm_80259
|
||||
.nope
|
||||
xor a
|
||||
ret
|
||||
|
||||
@ -34488,28 +34491,52 @@ endr
|
||||
dw .WalkInPlace
|
||||
|
||||
.Slow
|
||||
db $08, $09, $0a, $0b
|
||||
slow_step_down
|
||||
slow_step_up
|
||||
slow_step_left
|
||||
slow_step_right
|
||||
.Walk
|
||||
db $0c, $0d, $0e, $0f
|
||||
step_down
|
||||
step_up
|
||||
step_left
|
||||
step_right
|
||||
.Bike
|
||||
db $10, $11, $12, $13
|
||||
big_step_down
|
||||
big_step_up
|
||||
big_step_left
|
||||
big_step_right
|
||||
.Ledge
|
||||
db $30, $31, $32, $33
|
||||
jump_step_down
|
||||
jump_step_up
|
||||
jump_step_left
|
||||
jump_step_right
|
||||
.Ice
|
||||
db $1c, $1d, $1e, $1f
|
||||
fast_slide_step_down
|
||||
fast_slide_step_up
|
||||
fast_slide_step_left
|
||||
fast_slide_step_right
|
||||
.BackwardsLedge
|
||||
db $31, $30, $33, $32
|
||||
jump_step_up
|
||||
jump_step_down
|
||||
jump_step_right
|
||||
jump_step_left
|
||||
.Turn
|
||||
db $04, $05, $06, $07
|
||||
half_step_down
|
||||
half_step_up
|
||||
half_step_left
|
||||
half_step_right
|
||||
.WalkInPlace
|
||||
db $80, $81, $82, $83
|
||||
db $80 + movement_turn_head_down
|
||||
db $80 + movement_turn_head_up
|
||||
db $80 + movement_turn_head_left
|
||||
db $80 + movement_turn_head_right
|
||||
; 802b3
|
||||
|
||||
|
||||
StandInPlace: ; 802b3
|
||||
ld a, 0
|
||||
ld [wd04e], a
|
||||
ld a, $3e ; standing
|
||||
ld a, movement_step_sleep_1
|
||||
ld [MovementAnimation], a
|
||||
xor a
|
||||
ret
|
||||
@ -34519,7 +34546,7 @@ StandInPlace: ; 802b3
|
||||
WalkInPlace: ; 802bf
|
||||
ld a, 0
|
||||
ld [wd04e], a
|
||||
ld a, $50 ; walking
|
||||
ld a, movement_step_bump
|
||||
ld [MovementAnimation], a
|
||||
xor a
|
||||
ret
|
||||
@ -34529,7 +34556,7 @@ WalkInPlace: ; 802bf
|
||||
CheckForcedMovementInput: ; 802cb
|
||||
; When sliding on ice, input is forced to remain in the same direction.
|
||||
|
||||
call Function80404
|
||||
call CheckStandingOnIce
|
||||
ret nc
|
||||
|
||||
ld a, [wd04e]
|
||||
@ -34542,7 +34569,7 @@ CheckForcedMovementInput: ; 802cb
|
||||
ld hl, .data_802e8
|
||||
add hl, de
|
||||
ld a, [CurInput]
|
||||
and A_BUTTON | B_BUTTON | SELECT | START
|
||||
and BUTTONS
|
||||
or [hl]
|
||||
ld [CurInput], a
|
||||
ret
|
||||
@ -34613,33 +34640,39 @@ GetMovementAction: ; 802ec
|
||||
|
||||
|
||||
IsNPCInFront: ; 80341
|
||||
|
||||
; Returns 0 if there is an NPC in front that you can't move
|
||||
; Returns 1 if there is no NPC in front
|
||||
; Returns 2 if there is a movable NPC in front
|
||||
ld a, 0
|
||||
ld [hMapObjectIndexBuffer], a
|
||||
; Load the next X coordinate into d
|
||||
ld a, [PlayerMapX]
|
||||
ld d, a
|
||||
ld a, [WalkingX]
|
||||
add d
|
||||
ld d, a
|
||||
; Load the next Y coordinate into e
|
||||
ld a, [PlayerMapY]
|
||||
ld e, a
|
||||
ld a, [WalkingY]
|
||||
add e
|
||||
ld e, a
|
||||
; Find an object struct with coordinates equal to d,e
|
||||
ld bc, ObjectStructs ; redundant
|
||||
callba Function7041
|
||||
jr nc, .asm_80369
|
||||
callba IsNPCAtCoord
|
||||
jr nc, .nope
|
||||
call Function8036f
|
||||
jr c, .asm_8036c
|
||||
jr c, .no_bump
|
||||
|
||||
; .bump
|
||||
xor a
|
||||
ret
|
||||
|
||||
.asm_80369
|
||||
.nope
|
||||
ld a, 1
|
||||
ret
|
||||
|
||||
.asm_8036c
|
||||
.no_bump
|
||||
ld a, 2
|
||||
ret
|
||||
; 8036f
|
||||
@ -34648,27 +34681,27 @@ IsNPCInFront: ; 80341
|
||||
Function8036f: ; 8036f
|
||||
|
||||
ld hl, BikeFlags
|
||||
bit 0, [hl]
|
||||
jr z, .asm_8039c
|
||||
bit 0, [hl] ; using strength
|
||||
jr z, .nope
|
||||
|
||||
ld hl, $7
|
||||
ld hl, OBJECT_DIRECTION_WALKING
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
cp $ff
|
||||
jr nz, .asm_8039c
|
||||
cp STANDING
|
||||
jr nz, .nope
|
||||
|
||||
ld hl, $6
|
||||
ld hl, OBJECT_PALETTE
|
||||
add hl, bc
|
||||
bit 6, [hl]
|
||||
jr z, .asm_8039c
|
||||
jr z, .nope
|
||||
|
||||
ld hl, $5
|
||||
ld hl, OBJECT_FLAGS2
|
||||
add hl, bc
|
||||
set 2, [hl]
|
||||
|
||||
ld a, [WalkingDirection]
|
||||
ld d, a
|
||||
ld hl, $20
|
||||
ld hl, OBJECT_32
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
and $fc
|
||||
@ -34678,7 +34711,7 @@ Function8036f: ; 8036f
|
||||
scf
|
||||
ret
|
||||
|
||||
.asm_8039c
|
||||
.nope
|
||||
xor a
|
||||
ret
|
||||
; 8039e
|
||||
@ -34799,24 +34832,24 @@ WaterToLandSprite: ; 803f9
|
||||
; 80404
|
||||
|
||||
|
||||
Function80404:: ; 80404
|
||||
CheckStandingOnIce:: ; 80404
|
||||
ld a, [wd04e]
|
||||
cp 0
|
||||
jr z, .asm_80420
|
||||
jr z, .nope
|
||||
cp $f0
|
||||
jr z, .asm_80420
|
||||
jr z, .nope
|
||||
ld a, [PlayerStandingTile]
|
||||
call CheckIceTile
|
||||
jr nc, .asm_8041e
|
||||
jr nc, .yep
|
||||
ld a, [PlayerState]
|
||||
cp PLAYER_SLIP
|
||||
jr nz, .asm_80420
|
||||
jr nz, .nope
|
||||
|
||||
.asm_8041e
|
||||
.yep
|
||||
scf
|
||||
ret
|
||||
|
||||
.asm_80420
|
||||
.nope
|
||||
and a
|
||||
ret
|
||||
; 80422
|
||||
@ -34824,7 +34857,7 @@ Function80404:: ; 80404
|
||||
|
||||
Function80422:: ; 80422
|
||||
ld hl, wc2de
|
||||
ld a, $3e ; standing
|
||||
ld a, movement_step_sleep_1
|
||||
cp [hl]
|
||||
ret z
|
||||
ld [hl], a
|
||||
|
@ -1960,7 +1960,7 @@ Function171ccd: ; 171ccd (5c:5ccd)
|
||||
ld de, wMapPals
|
||||
ld bc, $40
|
||||
call CopyBytes
|
||||
ld hl, MovementAnimation
|
||||
ld hl, EngineBuffer5
|
||||
ld a, $ff
|
||||
ld [hli], a
|
||||
ld a, $7f
|
||||
|
11
wram.asm
11
wram.asm
@ -319,7 +319,8 @@ ScriptVar:: ; c2dd
|
||||
ds 1
|
||||
|
||||
wc2de:: ds 1
|
||||
wc2df:: ds 3
|
||||
wc2df:: ds 1
|
||||
ds 2
|
||||
wMovementPerson:: ds 1
|
||||
wMovementDataPointer:: ds 3 ; dba
|
||||
wc2e6:: ds 4
|
||||
@ -1568,6 +1569,7 @@ wTempTrainerEventFlagLo::
|
||||
|
||||
wTempTrainerEventFlagHi::
|
||||
MovementAnimation:: ; d042
|
||||
EngineBuffer5::
|
||||
ds 1
|
||||
|
||||
wTempTrainerClass::
|
||||
@ -2089,6 +2091,11 @@ ScriptFlags:: ; d434
|
||||
ScriptFlags2:: ; d435
|
||||
ds 1
|
||||
ScriptFlags3:: ; d436
|
||||
; bit 0: count steps
|
||||
; bit 1: xy triggers
|
||||
; bit 2: warps and connections
|
||||
; bit 4: wild encounters
|
||||
; bit 5: unknown
|
||||
ds 1
|
||||
|
||||
ScriptMode:: ; d437
|
||||
@ -2198,7 +2205,7 @@ wd4d0:: ds 1
|
||||
wd4d1:: ds 1
|
||||
ds 4
|
||||
|
||||
ObjectStructs::
|
||||
ObjectStructs:: ; d4d6
|
||||
object_struct: MACRO
|
||||
\1Struct::
|
||||
\1Sprite:: ds 1
|
||||
|
Loading…
Reference in New Issue
Block a user