Define constants for subanimations' base coords and frame block modes

This commit is contained in:
Rangi 2020-07-17 15:16:54 -04:00
parent ef9cb892fd
commit f53341efa1
4 changed files with 967 additions and 779 deletions

View file

@ -264,3 +264,191 @@ FIRST_SE_ID EQU const_value
const FRAMEBLOCK_77 const FRAMEBLOCK_77
const FRAMEBLOCK_78 const FRAMEBLOCK_78
const FRAMEBLOCK_79 const FRAMEBLOCK_79
; base coordinates that are part of subanimations
const_def
const BASECOORD_00
const BASECOORD_01
const BASECOORD_02
const BASECOORD_03
const BASECOORD_04
const BASECOORD_05
const BASECOORD_06
const BASECOORD_07
const BASECOORD_08
const BASECOORD_09
const BASECOORD_0A
const BASECOORD_0B
const BASECOORD_0C
const BASECOORD_0D
const BASECOORD_0E
const BASECOORD_0F
const BASECOORD_10
const BASECOORD_11
const BASECOORD_12
const BASECOORD_13
const BASECOORD_14
const BASECOORD_15
const BASECOORD_16
const BASECOORD_17
const BASECOORD_18
const BASECOORD_19
const BASECOORD_1A
const BASECOORD_1B
const BASECOORD_1C
const BASECOORD_1D
const BASECOORD_1E
const BASECOORD_1F
const BASECOORD_20
const BASECOORD_21
const BASECOORD_22
const BASECOORD_23
const BASECOORD_24
const BASECOORD_25
const BASECOORD_26
const BASECOORD_27
const BASECOORD_28
const BASECOORD_29
const BASECOORD_2A
const BASECOORD_2B
const BASECOORD_2C
const BASECOORD_2D
const BASECOORD_2E
const BASECOORD_2F
const BASECOORD_30
const BASECOORD_31
const BASECOORD_32
const BASECOORD_33
const BASECOORD_34
const BASECOORD_35
const BASECOORD_36
const BASECOORD_37
const BASECOORD_38
const BASECOORD_39
const BASECOORD_3A
const BASECOORD_3B
const BASECOORD_3C
const BASECOORD_3D
const BASECOORD_3E
const BASECOORD_3F
const BASECOORD_40
const BASECOORD_41
const BASECOORD_42
const BASECOORD_43
const BASECOORD_44
const BASECOORD_45
const BASECOORD_46
const BASECOORD_47
const BASECOORD_48
const BASECOORD_49
const BASECOORD_4A
const BASECOORD_4B
const BASECOORD_4C
const BASECOORD_4D
const BASECOORD_4E
const BASECOORD_4F
const BASECOORD_50
const BASECOORD_51
const BASECOORD_52
const BASECOORD_53
const BASECOORD_54
const BASECOORD_55
const BASECOORD_56
const BASECOORD_57
const BASECOORD_58
const BASECOORD_59
const BASECOORD_5A
const BASECOORD_5B
const BASECOORD_5C
const BASECOORD_5D
const BASECOORD_5E
const BASECOORD_5F
const BASECOORD_60
const BASECOORD_61
const BASECOORD_62
const BASECOORD_63
const BASECOORD_64
const BASECOORD_65
const BASECOORD_66
const BASECOORD_67
const BASECOORD_68
const BASECOORD_69
const BASECOORD_6A
const BASECOORD_6B
const BASECOORD_6C
const BASECOORD_6D
const BASECOORD_6E
const BASECOORD_6F
const BASECOORD_70
const BASECOORD_71
const BASECOORD_72
const BASECOORD_73
const BASECOORD_74
const BASECOORD_75
const BASECOORD_76
const BASECOORD_77
const BASECOORD_78
const BASECOORD_79
const BASECOORD_7A
const BASECOORD_7B
const BASECOORD_7C
const BASECOORD_7D
const BASECOORD_7E
const BASECOORD_7F
const BASECOORD_80
const BASECOORD_81
const BASECOORD_82
const BASECOORD_83
const BASECOORD_84
const BASECOORD_85
const BASECOORD_86
const BASECOORD_87
const BASECOORD_88
const BASECOORD_89
const BASECOORD_8A
const BASECOORD_8B
const BASECOORD_8C
const BASECOORD_8D
const BASECOORD_8E
const BASECOORD_8F
const BASECOORD_90
const BASECOORD_91
const BASECOORD_92
const BASECOORD_93
const BASECOORD_94
const BASECOORD_95
const BASECOORD_96
const BASECOORD_97
const BASECOORD_98
const BASECOORD_99
const BASECOORD_9A
const BASECOORD_9B
const BASECOORD_9C
const BASECOORD_9D
const BASECOORD_9E
const BASECOORD_9F
const BASECOORD_A0
const BASECOORD_A1
const BASECOORD_A2
const BASECOORD_A3
const BASECOORD_A4
const BASECOORD_A5
const BASECOORD_A6
const BASECOORD_A7
const BASECOORD_A8
const BASECOORD_A9
const BASECOORD_AA
const BASECOORD_AB
const BASECOORD_AC
const BASECOORD_AD
const BASECOORD_AE
const BASECOORD_AF
const BASECOORD_B0
; frame block modes that are part of subanimations
const_def
const FRAMEBLOCKMODE_00
const FRAMEBLOCKMODE_01
const FRAMEBLOCKMODE_02
const FRAMEBLOCKMODE_03
const FRAMEBLOCKMODE_04

View file

@ -1,178 +1,178 @@
FrameBlockBaseCoords: FrameBlockBaseCoords:
db $10, $68 db $10, $68 ; BASECOORD_00
db $10, $70 db $10, $70 ; BASECOORD_01
db $10, $78 db $10, $78 ; BASECOORD_02
db $10, $80 db $10, $80 ; BASECOORD_03
db $10, $88 db $10, $88 ; BASECOORD_04
db $10, $90 db $10, $90 ; BASECOORD_05
db $10, $98 db $10, $98 ; BASECOORD_06
db $18, $68 db $18, $68 ; BASECOORD_07
db $18, $70 db $18, $70 ; BASECOORD_08
db $18, $78 db $18, $78 ; BASECOORD_09
db $34, $28 db $34, $28 ; BASECOORD_0A
db $18, $80 db $18, $80 ; BASECOORD_0B
db $18, $88 db $18, $88 ; BASECOORD_0C
db $18, $98 db $18, $98 ; BASECOORD_0D
db $20, $68 db $20, $68 ; BASECOORD_0E
db $20, $70 db $20, $70 ; BASECOORD_0F
db $20, $78 db $20, $78 ; BASECOORD_10
db $20, $80 db $20, $80 ; BASECOORD_11
db $20, $88 db $20, $88 ; BASECOORD_12
db $20, $90 db $20, $90 ; BASECOORD_13
db $20, $98 db $20, $98 ; BASECOORD_14
db $28, $68 db $28, $68 ; BASECOORD_15
db $28, $70 db $28, $70 ; BASECOORD_16
db $28, $78 db $28, $78 ; BASECOORD_17
db $28, $80 db $28, $80 ; BASECOORD_18
db $28, $88 db $28, $88 ; BASECOORD_19
db $30, $68 db $30, $68 ; BASECOORD_1A
db $30, $70 db $30, $70 ; BASECOORD_1B
db $30, $78 db $30, $78 ; BASECOORD_1C
db $30, $80 db $30, $80 ; BASECOORD_1D
db $30, $90 db $30, $90 ; BASECOORD_1E
db $30, $98 db $30, $98 ; BASECOORD_1F
db $38, $68 db $38, $68 ; BASECOORD_20
db $38, $78 db $38, $78 ; BASECOORD_21
db $38, $80 db $38, $80 ; BASECOORD_22
db $38, $88 db $38, $88 ; BASECOORD_23
db $40, $68 db $40, $68 ; BASECOORD_24
db $40, $70 db $40, $70 ; BASECOORD_25
db $40, $78 db $40, $78 ; BASECOORD_26
db $40, $80 db $40, $80 ; BASECOORD_27
db $40, $88 db $40, $88 ; BASECOORD_28
db $40, $98 db $40, $98 ; BASECOORD_29
db $10, $60 db $10, $60 ; BASECOORD_2A
db $18, $60 db $18, $60 ; BASECOORD_2B
db $20, $60 db $20, $60 ; BASECOORD_2C
db $28, $60 db $28, $60 ; BASECOORD_2D
db $30, $60 db $30, $60 ; BASECOORD_2E
db $40, $60 db $40, $60 ; BASECOORD_2F
db $58, $28 db $58, $28 ; BASECOORD_30
db $43, $38 db $43, $38 ; BASECOORD_31
db $33, $48 db $33, $48 ; BASECOORD_32
db $20, $58 db $20, $58 ; BASECOORD_33
db $32, $78 db $32, $78 ; BASECOORD_34
db $58, $58 db $58, $58 ; BASECOORD_35
db $2C, $6C db $2C, $6C ; BASECOORD_36
db $34, $80 db $34, $80 ; BASECOORD_37
db $48, $70 db $48, $70 ; BASECOORD_38
db $42, $36 db $42, $36 ; BASECOORD_39
db $38, $44 db $38, $44 ; BASECOORD_3A
db $40, $52 db $40, $52 ; BASECOORD_3B
db $48, $60 db $48, $60 ; BASECOORD_3C
db $3E, $6E db $3E, $6E ; BASECOORD_3D
db $28, $7C db $28, $7C ; BASECOORD_3E
db $28, $8A db $28, $8A ; BASECOORD_3F
db $50, $3C db $50, $3C ; BASECOORD_40
db $48, $50 db $48, $50 ; BASECOORD_41
db $40, $64 db $40, $64 ; BASECOORD_42
db $38, $38 db $38, $38 ; BASECOORD_43
db $50, $30 db $50, $30 ; BASECOORD_44
db $50, $38 db $50, $38 ; BASECOORD_45
db $50, $40 db $50, $40 ; BASECOORD_46
db $50, $48 db $50, $48 ; BASECOORD_47
db $50, $50 db $50, $50 ; BASECOORD_48
db $48, $58 db $48, $58 ; BASECOORD_49
db $50, $44 db $50, $44 ; BASECOORD_4A
db $48, $48 db $48, $48 ; BASECOORD_4B
db $48, $4C db $48, $4C ; BASECOORD_4C
db $40, $50 db $40, $50 ; BASECOORD_4D
db $40, $54 db $40, $54 ; BASECOORD_4E
db $38, $58 db $38, $58 ; BASECOORD_4F
db $38, $5C db $38, $5C ; BASECOORD_50
db $30, $64 db $30, $64 ; BASECOORD_51
db $48, $40 db $48, $40 ; BASECOORD_52
db $48, $39 db $48, $39 ; BASECOORD_53
db $24, $88 db $24, $88 ; BASECOORD_54
db $24, $70 db $24, $70 ; BASECOORD_55
db $1C, $70 db $1C, $70 ; BASECOORD_56
db $1C, $88 db $1C, $88 ; BASECOORD_57
db $34, $68 db $34, $68 ; BASECOORD_58
db $34, $88 db $34, $88 ; BASECOORD_59
db $68, $50 db $68, $50 ; BASECOORD_5A
db $60, $50 db $60, $50 ; BASECOORD_5B
db $68, $60 db $68, $60 ; BASECOORD_5C
db $58, $50 db $58, $50 ; BASECOORD_5D
db $60, $60 db $60, $60 ; BASECOORD_5E
db $68, $40 db $68, $40 ; BASECOORD_5F
db $40, $40 db $40, $40 ; BASECOORD_60
db $38, $40 db $38, $40 ; BASECOORD_61
db $0B, $60 db $0B, $60 ; BASECOORD_62
db $44, $48 db $44, $48 ; BASECOORD_63
db $40, $14 db $40, $14 ; BASECOORD_64
db $48, $1C db $48, $1C ; BASECOORD_65
db $50, $24 db $50, $24 ; BASECOORD_66
db $4C, $24 db $4C, $24 ; BASECOORD_67
db $10, $62 db $10, $62 ; BASECOORD_68
db $12, $62 db $12, $62 ; BASECOORD_69
db $12, $60 db $12, $60 ; BASECOORD_6A
db $20, $72 db $20, $72 ; BASECOORD_6B
db $22, $72 db $22, $72 ; BASECOORD_6C
db $22, $70 db $22, $70 ; BASECOORD_6D
db $28, $62 db $28, $62 ; BASECOORD_6E
db $50, $0A db $50, $0A ; BASECOORD_6F
db $52, $0A db $52, $0A ; BASECOORD_70
db $38, $30 db $38, $30 ; BASECOORD_71
db $40, $48 db $40, $48 ; BASECOORD_72
db $30, $48 db $30, $48 ; BASECOORD_73
db $40, $30 db $40, $30 ; BASECOORD_74
db $30, $40 db $30, $40 ; BASECOORD_75
db $38, $48 db $38, $48 ; BASECOORD_76
db $40, $4A db $40, $4A ; BASECOORD_77
db $48, $4B db $48, $4B ; BASECOORD_78
db $50, $4C db $50, $4C ; BASECOORD_79
db $58, $4D db $58, $4D ; BASECOORD_7A
db $60, $4D db $60, $4D ; BASECOORD_7B
db $68, $4D db $68, $4D ; BASECOORD_7C
db $38, $10 db $38, $10 ; BASECOORD_7D
db $50, $10 db $50, $10 ; BASECOORD_7E
db $38, $28 db $38, $28 ; BASECOORD_7F
db $48, $18 db $48, $18 ; BASECOORD_80
db $40, $20 db $40, $20 ; BASECOORD_81
db $48, $20 db $48, $20 ; BASECOORD_82
db $40, $3C db $40, $3C ; BASECOORD_83
db $38, $50 db $38, $50 ; BASECOORD_84
db $28, $64 db $28, $64 ; BASECOORD_85
db $1C, $90 db $1C, $90 ; BASECOORD_86
db $24, $80 db $24, $80 ; BASECOORD_87
db $2C, $70 db $2C, $70 ; BASECOORD_88
db $30, $38 db $30, $38 ; BASECOORD_89
db $10, $50 db $10, $50 ; BASECOORD_8A
db $3C, $40 db $3C, $40 ; BASECOORD_8B
db $40, $58 db $40, $58 ; BASECOORD_8C
db $30, $58 db $30, $58 ; BASECOORD_8D
db $58, $48 db $58, $48 ; BASECOORD_8E
db $50, $58 db $50, $58 ; BASECOORD_8F
db $48, $68 db $48, $68 ; BASECOORD_90
db $40, $18 db $40, $18 ; BASECOORD_91
db $28, $58 db $28, $58 ; BASECOORD_92
db $40, $38 db $40, $38 ; BASECOORD_93
db $48, $38 db $48, $38 ; BASECOORD_94
db $08, $70 db $08, $70 ; BASECOORD_95
db $44, $1C db $44, $1C ; BASECOORD_96
db $3C, $58 db $3C, $58 ; BASECOORD_97
db $38, $60 db $38, $60 ; BASECOORD_98
db $08, $60 db $08, $60 ; BASECOORD_99
db $38, $70 db $38, $70 ; BASECOORD_9A
db $38, $6C db $38, $6C ; BASECOORD_9B
db $38, $64 db $38, $64 ; BASECOORD_9C
db $1C, $74 db $1C, $74 ; BASECOORD_9D
db $2E, $74 db $2E, $74 ; BASECOORD_9E
db $34, $50 db $34, $50 ; BASECOORD_9F
db $2F, $60 db $2F, $60 ; BASECOORD_A0
db $31, $70 db $31, $70 ; BASECOORD_A1
db $4C, $30 db $4C, $30 ; BASECOORD_A2
db $3B, $40 db $3B, $40 ; BASECOORD_A3
db $2D, $50 db $2D, $50 ; BASECOORD_A4
db $26, $60 db $26, $60 ; BASECOORD_A5
db $2D, $70 db $2D, $70 ; BASECOORD_A6
db $28, $50 db $28, $50 ; BASECOORD_A7
db $1E, $60 db $1E, $60 ; BASECOORD_A8
db $29, $70 db $29, $70 ; BASECOORD_A9
db $16, $60 db $16, $60 ; BASECOORD_AA
db $14, $58 db $14, $58 ; BASECOORD_AB
db $12, $54 db $12, $54 ; BASECOORD_AC
db $14, $50 db $14, $50 ; BASECOORD_AD
db $18, $4C db $18, $4C ; BASECOORD_AE
db $1C, $48 db $1C, $48 ; BASECOORD_AF
db $48, $28 db $48, $28 ; BASECOORD_B0

File diff suppressed because it is too large Load diff

View file

@ -132,15 +132,15 @@ DrawFrameBlock:
jp nz, .loop ; go back up if there are more tiles to draw jp nz, .loop ; go back up if there are more tiles to draw
.afterDrawingTiles .afterDrawingTiles
ld a, [wFBMode] ld a, [wFBMode]
cp 2 cp FRAMEBLOCKMODE_02
jr z, .advanceFrameBlockDestAddr; skip delay and don't clean OAM buffer jr z, .advanceFrameBlockDestAddr; skip delay and don't clean OAM buffer
ld a, [wSubAnimFrameDelay] ld a, [wSubAnimFrameDelay]
ld c, a ld c, a
call DelayFrames call DelayFrames
ld a, [wFBMode] ld a, [wFBMode]
cp 3 cp FRAMEBLOCKMODE_03
jr z, .advanceFrameBlockDestAddr ; skip cleaning OAM buffer jr z, .advanceFrameBlockDestAddr ; skip cleaning OAM buffer
cp 4 cp FRAMEBLOCKMODE_04
jr z, .done ; skip cleaning OAM buffer and don't advance the frame block destination address jr z, .done ; skip cleaning OAM buffer and don't advance the frame block destination address
ld a, [wAnimationID] ld a, [wAnimationID]
cp GROWL cp GROWL