disassemble movement type arrays

This commit is contained in:
garak
2019-12-02 18:41:32 -05:00
parent 46a8b0fb29
commit cdd882f3cc
4 changed files with 441 additions and 29 deletions
+168 -4
View File
@@ -536,6 +536,7 @@ gUnknown_8398008:: @ 8398008
gUnknown_8398028:: @ 8398028
.incbin "graphics/object_events/12.gbapal"
gUnknown_8398048:: @ 8398048
.incbin "baserom.gba", 0x398048, 0x600
gUnknown_8398648::
@@ -544,6 +545,8 @@ gUnknown_8398648::
gUnknown_8398688::
.incbin "graphics/object_events/fldeff_cut.gbapal"
gUnknown_83986A8:: @ 83986A8
.incbin "baserom.gba", 0x3986A8, 0xCE0
gUnknown_8399388:: @ 8399388
@@ -555,12 +558,173 @@ gUnknown_8399C90:: @ 8399C90
gUnknown_839FBC8:: @ 839FBC8
.incbin "baserom.gba", 0x39FBC8, 0x144
gUnknown_839FD0C:: @ 839FD0C
.incbin "baserom.gba", 0x39FD0C, 0x51
gRangedMovementTypes:: @ 839FD0C
.byte FALSE @ MOVEMENT_TYPE_NONE
.byte FALSE @ MOVEMENT_TYPE_LOOK_AROUND
.byte TRUE @ MOVEMENT_TYPE_WANDER_AROUND
.byte TRUE @ MOVEMENT_TYPE_WANDER_UP_AND_DOWN
.byte TRUE @ MOVEMENT_TYPE_WANDER_DOWN_AND_UP
.byte TRUE @ MOVEMENT_TYPE_WANDER_LEFT_AND_RIGHT
.byte TRUE @ MOVEMENT_TYPE_WANDER_RIGHT_AND_LEFT
.byte FALSE @ MOVEMENT_TYPE_FACE_UP
.byte FALSE @ MOVEMENT_TYPE_FACE_DOWN
.byte FALSE @ MOVEMENT_TYPE_FACE_LEFT
.byte FALSE @ MOVEMENT_TYPE_FACE_RIGHT
.byte FALSE @ MOVEMENT_TYPE_PLAYER
.byte FALSE @ MOVEMENT_TYPE_BERRY_TREE_GROWTH
.byte FALSE @ MOVEMENT_TYPE_FACE_DOWN_AND_UP
.byte FALSE @ MOVEMENT_TYPE_FACE_LEFT_AND_RIGHT
.byte FALSE @ MOVEMENT_TYPE_FACE_UP_AND_LEFT
.byte FALSE @ MOVEMENT_TYPE_FACE_UP_AND_RIGHT
.byte FALSE @ MOVEMENT_TYPE_FACE_DOWN_AND_LEFT
.byte FALSE @ MOVEMENT_TYPE_FACE_DOWN_AND_RIGHT
.byte FALSE @ MOVEMENT_TYPE_FACE_DOWN_UP_AND_LEFT
.byte FALSE @ MOVEMENT_TYPE_FACE_DOWN_UP_AND_RIGHT
.byte FALSE @ MOVEMENT_TYPE_FACE_UP_LEFT_AND_RIGHT
.byte FALSE @ MOVEMENT_TYPE_FACE_DOWN_LEFT_AND_RIGHT
.byte FALSE @ MOVEMENT_TYPE_ROTATE_COUNTERCLOCKWISE
.byte FALSE @ MOVEMENT_TYPE_ROTATE_CLOCKWISE
.byte TRUE @ MOVEMENT_TYPE_WALK_UP_AND_DOWN
.byte TRUE @ MOVEMENT_TYPE_WALK_DOWN_AND_UP
.byte TRUE @ MOVEMENT_TYPE_WALK_LEFT_AND_RIGHT
.byte TRUE @ MOVEMENT_TYPE_WALK_RIGHT_AND_LEFT
.byte TRUE @ MOVEMENT_TYPE_WALK_SEQUENCE_UP_RIGHT_LEFT_DOWN
.byte TRUE @ MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_LEFT_DOWN_UP
.byte TRUE @ MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_UP_RIGHT_LEFT
.byte TRUE @ MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_DOWN_UP_RIGHT
.byte TRUE @ MOVEMENT_TYPE_WALK_SEQUENCE_UP_LEFT_RIGHT_DOWN
.byte TRUE @ MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_RIGHT_DOWN_UP
.byte TRUE @ MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_UP_LEFT_RIGHT
.byte TRUE @ MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_DOWN_UP_LEFT
.byte TRUE @ MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_UP_DOWN_RIGHT
.byte TRUE @ MOVEMENT_TYPE_WALK_SEQUENCE_UP_DOWN_RIGHT_LEFT
.byte TRUE @ MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_LEFT_UP_DOWN
.byte TRUE @ MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_RIGHT_LEFT_UP
.byte TRUE @ MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_UP_DOWN_LEFT
.byte TRUE @ MOVEMENT_TYPE_WALK_SEQUENCE_UP_DOWN_LEFT_RIGHT
.byte TRUE @ MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_RIGHT_UP_DOWN
.byte TRUE @ MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_LEFT_RIGHT_UP
.byte TRUE @ MOVEMENT_TYPE_WALK_SEQUENCE_UP_LEFT_DOWN_RIGHT
.byte TRUE @ MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_RIGHT_UP_LEFT
.byte TRUE @ MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_DOWN_RIGHT_UP
.byte TRUE @ MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_UP_LEFT_DOWN
.byte TRUE @ MOVEMENT_TYPE_WALK_SEQUENCE_UP_RIGHT_DOWN_LEFT
.byte TRUE @ MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_LEFT_UP_RIGHT
.byte TRUE @ MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_UP_RIGHT_DOWN
.byte TRUE @ MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_DOWN_LEFT_UP
.byte TRUE @ MOVEMENT_TYPE_COPY_PLAYER
.byte TRUE @ MOVEMENT_TYPE_COPY_PLAYER_OPPOSITE
.byte TRUE @ MOVEMENT_TYPE_COPY_PLAYER_COUNTERCLOCKWISE
.byte TRUE @ MOVEMENT_TYPE_COPY_PLAYER_CLOCKWISE
.byte FALSE @ MOVEMENT_TYPE_TREE_DISGUISE
.byte FALSE @ MOVEMENT_TYPE_MOUNTAIN_DISGUISE
.byte TRUE @ MOVEMENT_TYPE_COPY_PLAYER_IN_GRASS
.byte TRUE @ MOVEMENT_TYPE_COPY_PLAYER_OPPOSITE_IN_GRASS
.byte TRUE @ MOVEMENT_TYPE_COPY_PLAYER_COUNTERCLOCKWISE_IN_GRASS
.byte TRUE @ MOVEMENT_TYPE_COPY_PLAYER_CLOCKWISE_IN_GRASS
.byte FALSE @ MOVEMENT_TYPE_HIDDEN
.byte FALSE @ MOVEMENT_TYPE_WALK_IN_PLACE_DOWN
.byte FALSE @ MOVEMENT_TYPE_WALK_IN_PLACE_UP
.byte FALSE @ MOVEMENT_TYPE_WALK_IN_PLACE_LEFT
.byte FALSE @ MOVEMENT_TYPE_WALK_IN_PLACE_RIGHT
.byte FALSE @ MOVEMENT_TYPE_JOG_IN_PLACE_DOWN
.byte FALSE @ MOVEMENT_TYPE_JOG_IN_PLACE_UP
.byte FALSE @ MOVEMENT_TYPE_JOG_IN_PLACE_LEFT
.byte FALSE @ MOVEMENT_TYPE_JOG_IN_PLACE_RIGHT
.byte FALSE @ MOVEMENT_TYPE_RUN_IN_PLACE_DOWN
.byte FALSE @ MOVEMENT_TYPE_RUN_IN_PLACE_UP
.byte FALSE @ MOVEMENT_TYPE_RUN_IN_PLACE_LEFT
.byte FALSE @ MOVEMENT_TYPE_RUN_IN_PLACE_RIGHT
.byte FALSE @ MOVEMENT_TYPE_INVISIBLE
.byte FALSE @ MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_DOWN
.byte FALSE @ MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_UP
.byte FALSE @ MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_LEFT
.byte TRUE @ MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_RIGHT
gUnknown_839FD5D:: @ 839FD5D
.incbin "baserom.gba", 0x39FD5D, 0x53
gInitialMovementTypeFacingDirections:: @ 839FD5D
.byte 1 @ [MOVEMENT_TYPE_NONE] = DIR_SOUTH,
.byte 1 @ [MOVEMENT_TYPE_LOOK_AROUND] = DIR_SOUTH,
.byte 1 @ [MOVEMENT_TYPE_WANDER_AROUND] = DIR_SOUTH,
.byte 2 @ [MOVEMENT_TYPE_WANDER_UP_AND_DOWN] = DIR_NORTH,
.byte 1 @ [MOVEMENT_TYPE_WANDER_DOWN_AND_UP] = DIR_SOUTH,
.byte 3 @ [MOVEMENT_TYPE_WANDER_LEFT_AND_RIGHT] = DIR_WEST,
.byte 4 @ [MOVEMENT_TYPE_WANDER_RIGHT_AND_LEFT] = DIR_EAST,
.byte 2 @ [MOVEMENT_TYPE_FACE_UP] = DIR_NORTH,
.byte 1 @ [MOVEMENT_TYPE_FACE_DOWN] = DIR_SOUTH,
.byte 3 @ [MOVEMENT_TYPE_FACE_LEFT] = DIR_WEST,
.byte 4 @ [MOVEMENT_TYPE_FACE_RIGHT] = DIR_EAST,
.byte 1 @ [MOVEMENT_TYPE_PLAYER] = DIR_SOUTH,
.byte 1 @ [MOVEMENT_TYPE_BERRY_TREE_GROWTH] = DIR_SOUTH,
.byte 1 @ [MOVEMENT_TYPE_FACE_DOWN_AND_UP] = DIR_SOUTH,
.byte 3 @ [MOVEMENT_TYPE_FACE_LEFT_AND_RIGHT] = DIR_WEST,
.byte 2 @ [MOVEMENT_TYPE_FACE_UP_AND_LEFT] = DIR_NORTH,
.byte 2 @ [MOVEMENT_TYPE_FACE_UP_AND_RIGHT] = DIR_NORTH,
.byte 1 @ [MOVEMENT_TYPE_FACE_DOWN_AND_LEFT] = DIR_SOUTH,
.byte 1 @ [MOVEMENT_TYPE_FACE_DOWN_AND_RIGHT] = DIR_SOUTH,
.byte 1 @ [MOVEMENT_TYPE_FACE_DOWN_UP_AND_LEFT] = DIR_SOUTH,
.byte 1 @ [MOVEMENT_TYPE_FACE_DOWN_UP_AND_RIGHT] = DIR_SOUTH,
.byte 2 @ [MOVEMENT_TYPE_FACE_UP_LEFT_AND_RIGHT] = DIR_NORTH,
.byte 1 @ [MOVEMENT_TYPE_FACE_DOWN_LEFT_AND_RIGHT] = DIR_SOUTH,
.byte 1 @ [MOVEMENT_TYPE_ROTATE_COUNTERCLOCKWISE] = DIR_SOUTH,
.byte 1 @ [MOVEMENT_TYPE_ROTATE_CLOCKWISE] = DIR_SOUTH,
.byte 2 @ [MOVEMENT_TYPE_WALK_UP_AND_DOWN] = DIR_NORTH,
.byte 1 @ [MOVEMENT_TYPE_WALK_DOWN_AND_UP] = DIR_SOUTH,
.byte 3 @ [MOVEMENT_TYPE_WALK_LEFT_AND_RIGHT] = DIR_WEST,
.byte 4 @ [MOVEMENT_TYPE_WALK_RIGHT_AND_LEFT] = DIR_EAST,
.byte 2 @ [MOVEMENT_TYPE_WALK_SEQUENCE_UP_RIGHT_LEFT_DOWN] = DIR_NORTH,
.byte 4 @ [MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_LEFT_DOWN_UP] = DIR_EAST,
.byte 1 @ [MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_UP_RIGHT_LEFT] = DIR_SOUTH,
.byte 3 @ [MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_DOWN_UP_RIGHT] = DIR_WEST,
.byte 2 @ [MOVEMENT_TYPE_WALK_SEQUENCE_UP_LEFT_RIGHT_DOWN] = DIR_NORTH,
.byte 3 @ [MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_RIGHT_DOWN_UP] = DIR_WEST,
.byte 1 @ [MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_UP_LEFT_RIGHT] = DIR_SOUTH,
.byte 4 @ [MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_DOWN_UP_LEFT] = DIR_EAST,
.byte 3 @ [MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_UP_DOWN_RIGHT] = DIR_WEST,
.byte 2 @ [MOVEMENT_TYPE_WALK_SEQUENCE_UP_DOWN_RIGHT_LEFT] = DIR_NORTH,
.byte 4 @ [MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_LEFT_UP_DOWN] = DIR_EAST,
.byte 1 @ [MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_RIGHT_LEFT_UP] = DIR_SOUTH,
.byte 4 @ [MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_UP_DOWN_LEFT] = DIR_EAST,
.byte 2 @ [MOVEMENT_TYPE_WALK_SEQUENCE_UP_DOWN_LEFT_RIGHT] = DIR_NORTH,
.byte 3 @ [MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_RIGHT_UP_DOWN] = DIR_WEST,
.byte 1 @ [MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_LEFT_RIGHT_UP] = DIR_SOUTH,
.byte 2 @ [MOVEMENT_TYPE_WALK_SEQUENCE_UP_LEFT_DOWN_RIGHT] = DIR_NORTH,
.byte 1 @ [MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_RIGHT_UP_LEFT] = DIR_SOUTH,
.byte 3 @ [MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_DOWN_RIGHT_UP] = DIR_WEST,
.byte 4 @ [MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_UP_LEFT_DOWN] = DIR_EAST,
.byte 2 @ [MOVEMENT_TYPE_WALK_SEQUENCE_UP_RIGHT_DOWN_LEFT] = DIR_NORTH,
.byte 1 @ [MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_LEFT_UP_RIGHT] = DIR_SOUTH,
.byte 3 @ [MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_UP_RIGHT_DOWN] = DIR_WEST,
.byte 4 @ [MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_DOWN_LEFT_UP] = DIR_EAST,
.byte 2 @ [MOVEMENT_TYPE_COPY_PLAYER] = DIR_NORTH,
.byte 1 @ [MOVEMENT_TYPE_COPY_PLAYER_OPPOSITE] = DIR_SOUTH,
.byte 3 @ [MOVEMENT_TYPE_COPY_PLAYER_COUNTERCLOCKWISE] = DIR_WEST,
.byte 4 @ [MOVEMENT_TYPE_COPY_PLAYER_CLOCKWISE] = DIR_EAST,
.byte 1 @ [MOVEMENT_TYPE_TREE_DISGUISE] = DIR_SOUTH,
.byte 1 @ [MOVEMENT_TYPE_MOUNTAIN_DISGUISE] = DIR_SOUTH,
.byte 2 @ [MOVEMENT_TYPE_COPY_PLAYER_IN_GRASS] = DIR_NORTH,
.byte 1 @ [MOVEMENT_TYPE_COPY_PLAYER_OPPOSITE_IN_GRASS] = DIR_SOUTH,
.byte 3 @ [MOVEMENT_TYPE_COPY_PLAYER_COUNTERCLOCKWISE_IN_GRASS] = DIR_WEST,
.byte 4 @ [MOVEMENT_TYPE_COPY_PLAYER_CLOCKWISE_IN_GRASS] = DIR_EAST,
.byte 1 @ [MOVEMENT_TYPE_HIDDEN] = DIR_SOUTH,
.byte 1 @ [MOVEMENT_TYPE_WALK_IN_PLACE_DOWN] = DIR_SOUTH,
.byte 2 @ [MOVEMENT_TYPE_WALK_IN_PLACE_UP] = DIR_NORTH,
.byte 3 @ [MOVEMENT_TYPE_WALK_IN_PLACE_LEFT] = DIR_WEST,
.byte 4 @ [MOVEMENT_TYPE_WALK_IN_PLACE_RIGHT] = DIR_EAST,
.byte 1 @ [MOVEMENT_TYPE_JOG_IN_PLACE_DOWN] = DIR_SOUTH,
.byte 2 @ [MOVEMENT_TYPE_JOG_IN_PLACE_UP] = DIR_NORTH,
.byte 3 @ [MOVEMENT_TYPE_JOG_IN_PLACE_LEFT] = DIR_WEST,
.byte 4 @ [MOVEMENT_TYPE_JOG_IN_PLACE_RIGHT] = DIR_EAST,
.byte 1 @ [MOVEMENT_TYPE_RUN_IN_PLACE_DOWN] = DIR_SOUTH,
.byte 2 @ [MOVEMENT_TYPE_RUN_IN_PLACE_UP] = DIR_NORTH,
.byte 3 @ [MOVEMENT_TYPE_RUN_IN_PLACE_LEFT] = DIR_WEST,
.byte 4 @ [MOVEMENT_TYPE_RUN_IN_PLACE_RIGHT] = DIR_EAST,
.byte 1 @ [MOVEMENT_TYPE_INVISIBLE] = DIR_SOUTH,
.byte 1 @ [MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_DOWN] = DIR_SOUTH,
.byte 1 @ [MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_UP] = DIR_SOUTH,
.byte 1 @ [MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_LEFT] = DIR_SOUTH,
.byte 1 @ [MOVEMENT_TYPE_WALK_SLOWLY_IN_PLACE_RIGHT] = DIR_SOUTH,
.align 2, 0
gObjectEventGraphicsInfoPointers:: @ 839FDB0
.4byte gObjectEventGraphicsInfo_83A3BB0
.4byte gObjectEventGraphicsInfo_83A3BD4