Battle anims

This commit is contained in:
PikalaxALT 2015-12-23 17:10:50 -05:00
parent 3893feb835
commit 8152ab612c
15 changed files with 8177 additions and 7932 deletions

View File

@ -2549,7 +2549,7 @@ endr
ld [hl], a ld [hl], a
.start .start
call StartChannel call StartChannel
ld a, [wc2bc] ld a, [wStereoPanningMask]
and a and a
jr z, .next jr z, .next
@ -2750,7 +2750,7 @@ endr
call GetLRTracks call GetLRTracks
add hl, de add hl, de
ld a, [hl] ld a, [hl]
ld hl, wc2bc ld hl, wStereoPanningMask
and [hl] and [hl]
ld hl, Channel1Tracks - Channel1 ld hl, Channel1Tracks - Channel1
@ -2766,7 +2766,7 @@ endr
jr c, .skip jr c, .skip
; ch3-4 ; ch3-4
ld a, [wc2be] ld a, [wSFXDuration]
ld hl, Channel1Field0x2e - Channel1 ; $c12f - Channel1 ld hl, Channel1Field0x2e - Channel1 ; $c12f - Channel1
add hl, bc add hl, bc

View File

@ -105,9 +105,9 @@ RunBattleAnimScript: ; cc163
call Functioncc8d3 call Functioncc8d3
.playframe .playframe
call Functioncc25f call RunBattleAnimCommand
call _ExecuteBGEffects call _ExecuteBGEffects
call Functioncc96e call BattleAnim_UpdateOAM_All
call Function3b0c call Function3b0c
call BattleAnimRequestPals call BattleAnimRequestPals
@ -283,7 +283,7 @@ endr
ret ret
; cc25f ; cc25f
Functioncc25f: ; cc25f RunBattleAnimCommand: ; cc25f
call .CheckTimer call .CheckTimer
ret nc ret nc
call .RunScript call .RunScript
@ -725,24 +725,25 @@ endr
BattleAnimCmd_IncObj: ; cc4c0 (33:44c0) BattleAnimCmd_IncObj: ; cc4c0 (33:44c0)
call GetBattleAnimByte call GetBattleAnimByte
ld e, $a ld e, 10
ld bc, ActiveAnimObjects ld bc, ActiveAnimObjects
.asm_cc4c8 .loop
ld hl, $0 ld hl, BATTLEANIMSTRUCT_INDEX
add hl, bc add hl, bc
ld d, [hl] ld d, [hl]
ld a, [BattleAnimByte] ld a, [BattleAnimByte]
cp d cp d
jr z, .asm_cc4dd jr z, .increment
ld hl, $18 ld hl, BATTLEANIMSTRUCT_LENGTH
add hl, bc add hl, bc
ld c, l ld c, l
ld b, h ld b, h
dec e dec e
jr nz, .asm_cc4c8 jr nz, .loop
ret ret
.asm_cc4dd
ld hl, $e .increment
ld hl, BATTLEANIMSTRUCT_ANON_JT_INDEX
add hl, bc add hl, bc
inc [hl] inc [hl]
ret ret
@ -1208,17 +1209,17 @@ BattleAnimCmd_Sound: ; cc7cd (33:47cd)
ld e, a ld e, a
srl a srl a
srl a srl a
ld [wc2be], a ld [wSFXDuration], a
call Functioncc7fc call .GetCryTrack
and 3 and 3
ld [CryTracks], a ; CryTracks ld [CryTracks], a ; CryTracks
ld e, a ld e, a
ld d, 0 ld d, 0
ld hl, Datacc7f8 ld hl, .GetPanning
add hl, de add hl, de
ld a, [hl] ld a, [hl]
ld [wc2bc], a ld [wStereoPanningMask], a
call GetBattleAnimByte call GetBattleAnimByte
ld e, a ld e, a
@ -1228,11 +1229,11 @@ BattleAnimCmd_Sound: ; cc7cd (33:47cd)
ret ret
; cc7f8 (33:47f8) ; cc7f8 (33:47f8)
Datacc7f8: ; cc7f8 .GetPanning: ; cc7f8
db $f0, $0f, $f0, $0f db $f0, $0f, $f0, $0f
; cc7fc ; cc7fc
Functioncc7fc: ; cc7fc (33:47fc) .GetCryTrack: ; cc7fc (33:47fc)
ld a, [hBattleTurn] ld a, [hBattleTurn]
and a and a
jr nz, .enemy jr nz, .enemy
@ -1311,7 +1312,7 @@ endr
ld a, h ld a, h
ld [CryLength + 1], a ld [CryLength + 1], a
ld a, 1 ld a, 1
ld [wc2bc], a ld [wStereoPanningMask], a
callab _PlayCryHeader callab _PlayCryHeader
@ -1478,7 +1479,7 @@ Functioncc94b: ; cc94b
ret ret
; cc96e ; cc96e
Functioncc96e: ; cc96e BattleAnim_UpdateOAM_All: ; cc96e
ld a, $0 ld a, $0
ld [w5_d418], a ld [w5_d418], a
ld hl, ActiveAnimObjects ld hl, ActiveAnimObjects
@ -1491,14 +1492,14 @@ Functioncc96e: ; cc96e
ld b, h ld b, h
push hl push hl
push de push de
call Functionccfbe call DoBattleAnimFrame
call Functioncca09 call BattleAnimOAMUpdate
pop de pop de
pop hl pop hl
jr c, .done jr c, .done
.next .next
ld bc, $0018 ld bc, BATTLEANIMSTRUCT_LENGTH
add hl, bc add hl, bc
dec e dec e
jr nz, .loop jr nz, .loop

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

557
battle/objects/framesets.asm Executable file
View File

@ -0,0 +1,557 @@
BattleAnimFrameData: ; ce85e
dw Unknown_ce9d0 ; 00
dw Unknown_ce9d3 ; 01
dw Unknown_ce9d6 ; 02
dw Unknown_ce9d9 ; 03
dw Unknown_ce9dc ; 04
dw Unknown_ce9df ; 05
dw Unknown_ce9e2 ; 06
dw Unknown_ce9e5 ; 07
dw Unknown_cea6b ; 08
dw Unknown_cea74 ; 09
dw Unknown_cea7d ; 0a
dw Unknown_cea80 ; 0b
dw Unknown_cea83 ; 0c
dw Unknown_cea86 ; 0d
dw Unknown_cea91 ; 0e
dw Unknown_cea94 ; 0f
dw Unknown_cea99 ; 10
dw Unknown_cea9e ; 11
dw Unknown_ceaaf ; 12
dw Unknown_ceabc ; 13
dw Unknown_cead3 ; 14
dw Unknown_cead6 ; 15
dw Unknown_ceadb ; 16
dw Unknown_ceade ; 17
dw Unknown_ceb06 ; 18
dw Unknown_ceb0d ; 19
dw Unknown_ceb10 ; 1a
dw Unknown_ceb13 ; 1b
dw Unknown_ceb16 ; 1c
dw Unknown_ceb19 ; 1d
dw Unknown_ceb1c ; 1e
dw Unknown_ceb1f ; 1f
dw Unknown_ceb26 ; 20
dw Unknown_ceb2b ; 21
dw Unknown_ceb2e ; 22
dw Unknown_ceb37 ; 23
dw Unknown_ceb3a ; 24
dw Unknown_ceb3d ; 25
dw Unknown_ceb40 ; 26
dw Unknown_ceb43 ; 27
dw Unknown_ceb46 ; 28
dw Unknown_ceb4b ; 29
dw Unknown_ceb50 ; 2a
dw Unknown_ceb63 ; 2b
dw Unknown_ceb68 ; 2c
dw Unknown_ceb6d ; 2d
dw Unknown_ceb70 ; 2e
dw Unknown_ceb78 ; 2f
dw Unknown_ceb89 ; 30
dw Unknown_ceb8e ; 31
dw Unknown_ceb97 ; 32
dw Unknown_ceba0 ; 33
dw Unknown_ceba9 ; 34
dw Unknown_cebb0 ; 35
dw Unknown_cebc1 ; 36
dw Unknown_cebca ; 37
dw Unknown_cebcf ; 38
dw Unknown_cebd4 ; 39
dw Unknown_cebd9 ; 3a
dw Unknown_cebdc ; 3b
dw Unknown_cebdf ; 3c
dw Unknown_cebe2 ; 3d
dw Unknown_ce9f6 ; 3e
dw Unknown_cea0b ; 3f
dw Unknown_cea20 ; 40
dw Unknown_cea35 ; 41
dw Unknown_cea50 ; 42
dw Unknown_cebe5 ; 43
dw Unknown_cebf3 ; 44
dw Unknown_cec0f ; 45
dw Unknown_cec20 ; 46
dw Unknown_cec25 ; 47
dw Unknown_cec2a ; 48
dw Unknown_cec37 ; 49
dw Unknown_cec44 ; 4a
dw Unknown_cec4d ; 4b
dw Unknown_cebec ; 4c
dw Unknown_cec56 ; 4d
dw Unknown_cec67 ; 4e
dw Unknown_cec72 ; 4f
dw Unknown_cec77 ; 50
dw Unknown_cec7c ; 51
dw Unknown_cec7f ; 52
dw Unknown_cec86 ; 53
dw Unknown_cec8b ; 54
dw Unknown_cec92 ; 55
dw Unknown_ceaf3 ; 56
dw Unknown_ceaf6 ; 57
dw Unknown_ceb01 ; 58
dw Unknown_cec97 ; 59
dw Unknown_cec9a ; 5a
dw Unknown_cec9d ; 5b
dw Unknown_ceca0 ; 5c
dw Unknown_cecab ; 5d
dw Unknown_cecb0 ; 5e
dw Unknown_cecc9 ; 5f
dw Unknown_ceccc ; 60
dw Unknown_cece7 ; 61
dw Unknown_cecec ; 62
dw Unknown_cecf1 ; 63
dw Unknown_cecf4 ; 64
dw Unknown_cecf7 ; 65
dw Unknown_cecfa ; 66
dw Unknown_ced09 ; 67
dw Unknown_ced0c ; 68
dw Unknown_ced19 ; 69
dw Unknown_ced22 ; 6a
dw Unknown_ced2b ; 6b
dw Unknown_ced32 ; 6c
dw Unknown_ced39 ; 6d
dw Unknown_ced3c ; 6e
dw Unknown_ced3f ; 6f
dw Unknown_ced44 ; 70
dw Unknown_ced49 ; 71
dw Unknown_ced4c ; 72
dw Unknown_ced4f ; 73
dw Unknown_ced54 ; 74
dw Unknown_ced57 ; 75
dw Unknown_ced5a ; 76
dw Unknown_ced5d ; 77
dw Unknown_ced62 ; 78
dw Unknown_ced65 ; 79
dw Unknown_cecb3 ; 7a
dw Unknown_ced72 ; 7b
dw Unknown_ced75 ; 7c
dw Unknown_ced88 ; 7d
dw Unknown_cec08 ; 7e
dw Unknown_ced8b ; 7f
dw Unknown_ced8e ; 80
dw Unknown_ced91 ; 81
dw Unknown_ced93 ; 82
dw Unknown_ced95 ; 83
dw Unknown_ced98 ; 84
dw Unknown_ced9b ; 85
dw Unknown_ceda8 ; 86
dw Unknown_cedb5 ; 87
dw Unknown_cedb8 ; 88
dw Unknown_cedbb ; 89
dw Unknown_cedbe ; 8a
dw Unknown_cedc1 ; 8b
dw Unknown_cedc4 ; 8c
dw Unknown_cedc7 ; 8d
dw Unknown_cedcc ; 8e
dw Unknown_cedcf ; 8f
dw Unknown_cedd2 ; 90
dw Unknown_cedd5 ; 91
dw Unknown_cedd8 ; 92
dw Unknown_ceddb ; 93
dw Unknown_cedde ; 94
dw Unknown_cede1 ; 95
dw Unknown_cede4 ; 96
dw Unknown_cede7 ; 97
dw Unknown_cedea ; 98
dw Unknown_ceded ; 99
dw Unknown_cedf0 ; 9a
dw Unknown_cedf3 ; 9b
dw Unknown_cedf6 ; 9c
dw Unknown_cedf9 ; 9d
dw Unknown_cedfc ; 9e
dw Unknown_cedff ; 9f
dw Unknown_cee02 ; a0
dw Unknown_cee05 ; a1
dw Unknown_cee08 ; a2
dw Unknown_cee0b ; a3
dw Unknown_cee12 ; a4
dw Unknown_cee19 ; a5
dw Unknown_cee1e ; a6
dw Unknown_cee3d ; a7
dw Unknown_cee5c ; a8
dw Unknown_cee61 ; a9
dw Unknown_cee64 ; aa
dw Unknown_cee6b ; ab
dw Unknown_cee70 ; ac
dw Unknown_cee75 ; ad
dw Unknown_cee7e ; ae
dw Unknown_cecbe ; af
dw Unknown_cee81 ; b0
dw Unknown_cee84 ; b1
dw Unknown_cee8d ; b2
dw Unknown_cee96 ; b3
dw Unknown_cee9f ; b4
dw Unknown_ceea2 ; b5
dw Unknown_ceea5 ; b6
dw Unknown_ceea8 ; b7
dw Unknown_ceeab ; b8
; ce9d0
; OAM index (see battle/objects/oam.asm), flip flags / duration
Unknown_ce9d0: db $00,$06
db -4
Unknown_ce9d3: db $01,$06
db -4
Unknown_ce9d6: db $02,$06
db -4
Unknown_ce9d9: db $03,$06
db -4
Unknown_ce9dc: db $04,$06
db -4
Unknown_ce9df: db $05,$06
db -4
Unknown_ce9e2: db $06,$06
db -4
Unknown_ce9e5: db $03,$04, $01,$01, $03,$04, $01,$01, $03,$04, $01,$01, $03,$04, $01,$01
db -4
Unknown_ce9f6: db $4b,$02, $4c,$02, $4d,$04, $4e,$02, $fd,$02, $4e,$02, $fd,$02, $4e,$02, $fd,$02, $4e,$02
db -4
Unknown_cea0b: db $4b,$42, $4c,$42, $4d,$44, $4e,$42, $fd,$02, $4e,$42, $fd,$02, $4e,$42, $fd,$02, $4e,$42
db -4
Unknown_cea20: db $4b,$c2, $4c,$c2, $4d,$c4, $4e,$c2, $fd,$02, $4e,$c2, $fd,$02, $4e,$c2, $fd,$02, $4e,$c2
db -4
Unknown_cea35: db $4b,$01, $4c,$01, $4d,$01, $4f,$01, $50,$01, $51,$01, $52,$02, $fd,$02, $52,$02, $fd,$02, $52,$02, $fd,$02, $52,$02
db -4
Unknown_cea50: db $4b,$41, $4c,$41, $4d,$41, $4f,$41, $50,$41, $51,$41, $52,$42, $fd,$02, $52,$42, $fd,$02, $52,$42, $fd,$02, $52,$42
db -4
Unknown_cea6b: db $00,$03, $07,$03, $08,$03, $09,$03
db -4
Unknown_cea74: db $0a,$07, $0b,$07, $0a,$07, $0b,$47
db -2
Unknown_cea7d: db $0c,$08
db -1
Unknown_cea80: db $0d,$08
db -1
Unknown_cea83: db $0a,$08
db -1
Unknown_cea86: db $0a,$07, $0b,$07, $0a,$07, $0b,$47, $0a,$07
db -1
Unknown_cea91: db $0a,$08
db -1
Unknown_cea94: db $0a,$04, $0e,$04
db -2
Unknown_cea99: db $0f,$04, $10,$04
db -2
Unknown_cea9e: db $10,$04, $0f,$04, $0e,$04, $0a,$04, $0e,$04, $0a,$04, $0e,$04, $0a,$04
db -4
Unknown_ceaaf: db $10,$01, $0f,$01, $12,$01, $11,$01, $12,$01, $0f,$01
db -2
Unknown_ceabc: db $10,$03, $0f,$03, $12,$01, $fd,$01, $12,$01, $fd,$01, $12,$01, $fd,$01, $12,$01, $fd,$01, $12,$03
db -4
Unknown_cead3: db $13,$14
db -4
Unknown_cead6: db $10,$01, $0f,$01
db -2
Unknown_ceadb: db $14,$08
db -1
Unknown_ceade: db $17,$04, $16,$08, $15,$08, $16,$08, $17,$04, $17,$04, $16,$48, $15,$48, $16,$48, $17,$04
db -2
Unknown_ceaf3: db $69,$08
db -1
Unknown_ceaf6: db $69,$20, $6a,$04, $6b,$04, $6d,$04, $6c,$04
db -1
Unknown_ceb01: db $6c,$08, $6d,$08
db -2
Unknown_ceb06: db $18,$04, $19,$04, $1a,$04
db -4
Unknown_ceb0d: db $1b,$08
db -1
Unknown_ceb10: db $0f,$08
db -1
Unknown_ceb13: db $1c,$08
db -1
Unknown_ceb16: db $0a,$08
db -4
Unknown_ceb19: db $1d,$08
db -1
Unknown_ceb1c: db $17,$08
db -1
Unknown_ceb1f: db $0f,$03, $10,$03, $1e,$03
db -1
Unknown_ceb26: db $1f,$10, $20,$03
db -4
Unknown_ceb2b: db $20,$08
db -1
Unknown_ceb2e: db $20,$08, $21,$08, $1b,$08, $21,$08
db -2
Unknown_ceb37: db $22,$08
db -1
Unknown_ceb3a: db $1b,$08
db -1
Unknown_ceb3d: db $23,$08
db -1
Unknown_ceb40: db $24,$08
db -1
Unknown_ceb43: db $25,$08
db -1
Unknown_ceb46: db $26,$08, $27,$08
db -1
Unknown_ceb4b: db $28,$08, $29,$08
db -4
Unknown_ceb50: db $2a,$01, $2b,$01, $2c,$01, $2d,$01, $2e,$01, $2d,$01, $2c,$01, $2b,$01, $2a,$01
db -4
Unknown_ceb63: db $14,$01, $15,$01
db -2
Unknown_ceb68: db $2f,$04, $30,$28
db -4
Unknown_ceb6d: db $31,$08
db -1
Unknown_ceb70: db $32,$20, $33,$20, $34,$20, $35,$20 ; fallthrough
Unknown_ceb78: db $fd,$02, $35,$04, $fd,$02, $35,$04, $fd,$02, $35,$04, $fd,$02, $35,$04
db -4
Unknown_ceb89: db $14,$04, $15,$04
db -2
Unknown_ceb8e: db $36,$02, $37,$02, $38,$02, $39,$20
db -4
Unknown_ceb97: db $3a,$02, $3b,$02, $3c,$02, $3d,$20
db -4
Unknown_ceba0: db $3a,$42, $3b,$42, $3c,$42, $3d,$60
db -4
Unknown_ceba9: db $3e,$08, $3f,$08, $40,$08
db -1
Unknown_cebb0: db $40,$02, $fd,$02, $40,$02, $fd,$02, $41,$02, $fd,$02, $41,$02, $fd,$02
db -2
Unknown_cebc1: db $42,$02, $43,$02, $44,$02, $45,$02
db -2
Unknown_cebca: db $19,$02, $fd,$02
db -2
Unknown_cebcf: db $46,$04, $47,$04
db -2
Unknown_cebd4: db $18,$02, $fd,$02
db -2
Unknown_cebd9: db $48,$08
db -1
Unknown_cebdc: db $48,$48
db -1
Unknown_cebdf: db $49,$08
db -1
Unknown_cebe2: db $4a,$08
db -1
Unknown_cebe5: db $20,$10, $1f,$10, $1e,$10
db -1
Unknown_cebec: db $20,$08, $1f,$08, $1e,$08
db -1
Unknown_cebf3: db $fd,$14, $55,$28, $54,$28, $53,$14, $fd,$04, $53,$04, $fd,$04, $53,$04, $fd,$04, $53,$04
db -4
Unknown_cec08: db $1e,$08, $1f,$08, $20,$08
db -4
Unknown_cec0f: db $fd,$00, $14,$00, $15,$00, $14,$40, $fd,$00, $16,$40, $15,$00, $16,$00
db -2
Unknown_cec20: db $56,$02, $57,$04
db -4
Unknown_cec25: db $56,$c2, $57,$c4
db -4
Unknown_cec2a: db $56,$01, $57,$01, $58,$01, $57,$c1, $58,$c1, $57,$02
db -4
Unknown_cec37: db $56,$c1, $57,$c1, $58,$c1, $57,$01, $58,$01, $57,$c2
db -4
Unknown_cec44: db $57,$c1, $58,$c1, $57,$01, $58,$01
db -2
Unknown_cec4d: db $59,$01, $5a,$01, $5b,$01, $5c,$02
db -4
Unknown_cec56: db $0a,$0a, $0b,$43, $5d,$43, $0b,$c3, $0a,$82, $0b,$81, $5d,$01, $0b,$01
db -2
Unknown_cec67: db $0a,$03, $0b,$47, $0a,$07, $0b,$07, $0a,$03
db -2
Unknown_cec72: db $5e,$20, $5e,$20
db -4
Unknown_cec77: db $5f,$20, $5f,$20
db -4
Unknown_cec7c: db $60,$08
db -1
Unknown_cec7f: db $61,$01, $62,$01, $63,$01
db -1
Unknown_cec86: db $63,$07, $64,$07
db -2
Unknown_cec8b: db $65,$01, $66,$01, $67,$01
db -1
Unknown_cec92: db $67,$07, $68,$07
db -2
Unknown_cec97: db $6e,$08
db -1
Unknown_cec9a: db $6f,$08
db -1
Unknown_cec9d: db $6e,$88
db -1
Unknown_ceca0: db $18,$04, $70,$04, $71,$04, $72,$04, $73,$04
db -4
Unknown_cecab: db $74,$04, $75,$04
db -2
Unknown_cecb0: db $14,$08
db -1
Unknown_cecb3: db $74,$03, $14,$03, $15,$03, $14,$03, $15,$03
db -4
Unknown_cecbe: db $14,$00, $15,$00, $14,$00, $15,$00, $74,$0c
db -4
Unknown_cecc9: db $76,$08
db -1
Unknown_ceccc: db $77,$01, $78,$01, $79,$01, $7a,$01, $7b,$01, $7c,$01, $7d,$01, $7c,$c1, $7b,$c1, $7a,$c1, $79,$c1, $78,$c1, $77,$c1
db -4
Unknown_cece7: db $1b,$04, $7e,$04
db -2
Unknown_cecec: db $1b,$44, $7e,$44
db -2
Unknown_cecf1: db $7f,$08
db -1
Unknown_cecf4: db $25,$08
db -1
Unknown_cecf7: db $80,$08
db -1
Unknown_cecfa: db $83,$07, $82,$07, $81,$07, $82,$07, $83,$07, $82,$07, $81,$07
db -4
Unknown_ced09: db $1b,$10
db -4
Unknown_ced0c: db $fd,$0f, $84,$0f, $85,$0f, $29,$0f, $28,$0f, $86,$20
db -4
Unknown_ced19: db $1b,$03, $87,$03, $88,$03, $89,$03
db -4
Unknown_ced22: db $8a,$02, $8b,$02, $8c,$02, $8d,$02
db -4
Unknown_ced2b: db $61,$02, $62,$02, $63,$02
db -1
Unknown_ced32: db $65,$02, $66,$02, $67,$02
db -1
Unknown_ced39: db $8e,$08
db -1
Unknown_ced3c: db $8e,$48
db -1
Unknown_ced3f: db $8f,$10, $90,$10
db -2
Unknown_ced44: db $91,$10, $92,$10
db -2
Unknown_ced49: db $93,$08
db -1
Unknown_ced4c: db $1e,$08
db -1
Unknown_ced4f: db $1b,$07, $94,$07
db -2
Unknown_ced54: db $95,$08
db -1
Unknown_ced57: db $96,$08
db -1
Unknown_ced5a: db $95,$08
db -1
Unknown_ced5d: db $97,$01, $97,$41
db -2
Unknown_ced62: db $98,$08
db -1
Unknown_ced65: db $99,$20, $99,$20, $99,$20, $99,$20, $99,$20, $9a,$08
db -1
Unknown_ced72: db $9b,$08
db -1
Unknown_ced75: db $9c,$02, $9d,$02, $9e,$08, $fd,$02, $9e,$02, $fd,$02, $9e,$02, $fd,$02, $9e,$02
db -4
Unknown_ced88: db $9f,$08
db -1
Unknown_ced8b: db $0f,$08
db -1
Unknown_ced8e: db $6b,$18
db -4
Unknown_ced91: db $a0,$01 ; fallthrough
Unknown_ced93: db $a1,$01 ; fallthrough
Unknown_ced95: db $a2,$01
db -4
Unknown_ced98: db $a3,$08
db -1
Unknown_ced9b: db $a4,$04, $a5,$04, $a6,$04, $a7,$04, $a6,$44, $a5,$44
db -2
Unknown_ceda8: db $a8,$04, $a9,$04, $aa,$04, $ab,$04, $aa,$44, $a9,$44
db -2
Unknown_cedb5: db $1b,$08
db -1
Unknown_cedb8: db $ac,$08
db -1
Unknown_cedbb: db $ad,$08
db -1
Unknown_cedbe: db $ae,$08
db -1
Unknown_cedc1: db $af,$08
db -1
Unknown_cedc4: db $b0,$20
db -4
Unknown_cedc7: db $b1,$07, $b1,$47
db -2
Unknown_cedcc: db $b2,$08
db -1
Unknown_cedcf: db $b3,$08
db -1
Unknown_cedd2: db $b3,$48
db -1
Unknown_cedd5: db $b3,$88
db -1
Unknown_cedd8: db $b3,$c8
db -1
Unknown_ceddb: db $b5,$08
db -1
Unknown_cedde: db $b5,$48
db -1
Unknown_cede1: db $b5,$88
db -1
Unknown_cede4: db $b5,$c8
db -1
Unknown_cede7: db $b4,$08
db -1
Unknown_cedea: db $6b,$08
db -1
Unknown_ceded: db $b6,$08
db -1
Unknown_cedf0: db $b7,$20
db -1
Unknown_cedf3: db $1b,$20
db -1
Unknown_cedf6: db $b8,$20
db -1
Unknown_cedf9: db $b8,$60
db -1
Unknown_cedfc: db $b9,$20
db -1
Unknown_cedff: db $ba,$20
db -1
Unknown_cee02: db $bb,$60
db -1
Unknown_cee05: db $bb,$20
db -1
Unknown_cee08: db $bc,$20
db -1
Unknown_cee0b: db $bd,$0b, $be,$0b, $1b,$0b
db -4
Unknown_cee12: db $bf,$04, $c0,$04, $c1,$04
db -4
Unknown_cee19: db $c2,$20, $c2,$20
db -4
Unknown_cee1e: db $4b,$02, $4c,$02, $4d,$20, $4d,$20, $4d,$20, $4f,$01, $50,$01, $51,$01, $52,$02, $fd,$02, $52,$02, $fd,$02, $52,$02, $fd,$02, $52,$02
db -4
Unknown_cee3d: db $4b,$c2, $4c,$c2, $4d,$e0, $4d,$e0, $4d,$e0, $4f,$c1, $50,$c1, $51,$c1, $52,$c2, $fd,$02, $52,$c2, $fd,$02, $52,$c2, $fd,$02, $52,$c2
db -4
Unknown_cee5c: db $c3,$01, $c3,$c1
db -2
Unknown_cee61: db $c4,$20
db -1
Unknown_cee64: db $c5,$04, $c6,$04, $c7,$04
db -4
Unknown_cee6b: db $c8,$01, $c8,$41
db -2
Unknown_cee70: db $c9,$03, $05,$03
db -4
Unknown_cee75: db $ca,$20, $cb,$03, $ca,$03, $cb,$03
db -2
Unknown_cee7e: db $03,$a0
db -1
Unknown_cee81: db $cc,$20
db -1
Unknown_cee84: db $7f,$02, $25,$02, $80,$02, $25,$02
db -2
Unknown_cee8d: db $cd,$04, $ce,$04, $cd,$c4, $ce,$c4
db -2
Unknown_cee96: db $cf,$04, $d0,$04, $d1,$04, $d2,$04
db -4
Unknown_cee9f: db $d3,$20
db -1
Unknown_ceea2: db $d4,$08
db -1
Unknown_ceea5: db $d5,$08
db -1
Unknown_ceea8: db $d6,$08
db -1
Unknown_ceeab: db $d7,$08
db -1
; ceeae

4260
battle/objects/functions.asm Executable file

File diff suppressed because it is too large Load Diff

53
battle/objects/gfx_headers.asm Executable file
View File

@ -0,0 +1,53 @@
AnimObjGFX: ; cfcf6
object_gfx: MACRO
; label, # tiles
db \2
db BANK(\1)
dw \1
ENDM
object_gfx AnimObj00GFX, 0
object_gfx AnimObj01GFX, 21
object_gfx AnimObj02GFX, 6
object_gfx AnimObj03GFX, 6
object_gfx AnimObj04GFX, 20
object_gfx AnimObj05GFX, 26
object_gfx AnimObj06GFX, 18
object_gfx AnimObj07GFX, 12
object_gfx AnimObj08GFX, 9
object_gfx AnimObj09GFX, 17
object_gfx AnimObj10GFX, 6
object_gfx AnimObj11GFX, 10
object_gfx AnimObj12GFX, 9
object_gfx AnimObj13GFX, 13
object_gfx AnimObj14GFX, 16
object_gfx AnimObj15GFX, 2
object_gfx AnimObj16GFX, 11
object_gfx AnimObj17GFX, 9
object_gfx AnimObj18GFX, 9
object_gfx AnimObj19GFX, 19
object_gfx AnimObj20GFX, 10
object_gfx AnimObj21GFX, 12
object_gfx AnimObj22GFX, 18
object_gfx AnimObj23GFX, 13
object_gfx AnimObj24GFX, 10
object_gfx AnimObj25GFX, 27
object_gfx AnimObj26GFX, 12
object_gfx AnimObj27GFX, 14
object_gfx AnimObj28GFX, 16
object_gfx AnimObj29GFX, 7
object_gfx AnimObj30GFX, 8
object_gfx AnimObj31GFX, 40
object_gfx AnimObj32GFX, 36
object_gfx AnimObj33GFX, 16
object_gfx AnimObj34GFX, 48
object_gfx AnimObj35GFX, 18
object_gfx AnimObj36GFX, 38
object_gfx AnimObj37GFX, 35
object_gfx AnimObj38GFX, 18
object_gfx AnimObj39GFX, 24
object_gfx NULL, 1
object_gfx NULL, 1
; cfd9e

1087
battle/objects/oam.asm Executable file

File diff suppressed because it is too large Load Diff

View File

@ -1,13 +1,303 @@
const_def
const BATTLEANIMSTRUCT_INDEX
const BATTLEANIMSTRUCT_01
const BATTLEANIMSTRUCT_02
const BATTLEANIMSTRUCT_FRAMESET_ID
const BATTLEANIMSTRUCT_FUNCTION
const BATTLEANIMSTRUCT_05
const BATTLEANIMSTRUCT_TILEID
const BATTLEANIMSTRUCT_07
const BATTLEANIMSTRUCT_08
const BATTLEANIMSTRUCT_09
const BATTLEANIMSTRUCT_0A
const BATTLEANIMSTRUCT_0B
const BATTLEANIMSTRUCT_DURATION
const BATTLEANIMSTRUCT_FRAME
const BATTLEANIMSTRUCT_ANON_JT_INDEX
const BATTLEANIMSTRUCT_0F
const BATTLEANIMSTRUCT_10
const BATTLEANIMSTRUCT_11
const BATTLEANIMSTRUCT_12
const BATTLEANIMSTRUCT_13
const BATTLEANIMSTRUCT_14
const BATTLEANIMSTRUCT_15
const BATTLEANIMSTRUCT_16
const BATTLEANIMSTRUCT_17
BATTLEANIMSTRUCT_LENGTH EQU const_value
const_def
const ANIM_OBJ_00
const ANIM_OBJ_01
const ANIM_OBJ_02
const ANIM_OBJ_03
const ANIM_OBJ_04
const ANIM_OBJ_05
const ANIM_OBJ_06
const ANIM_OBJ_07
const ANIM_OBJ_08
const ANIM_OBJ_09
const ANIM_OBJ_0A
const ANIM_OBJ_0B
const ANIM_OBJ_0C
const ANIM_OBJ_0D
const ANIM_OBJ_0E
const ANIM_OBJ_0F
const ANIM_OBJ_BURNED
const ANIM_OBJ_11
const ANIM_OBJ_12
const ANIM_OBJ_13
const ANIM_OBJ_14
const ANIM_OBJ_15
const ANIM_OBJ_16
const ANIM_OBJ_17
const ANIM_OBJ_18
const ANIM_OBJ_19
const ANIM_OBJ_1A
const ANIM_OBJ_1B
const ANIM_OBJ_1C
const ANIM_OBJ_1D
const ANIM_OBJ_1E
const ANIM_OBJ_1F
const ANIM_OBJ_20
const ANIM_OBJ_21
const ANIM_OBJ_22
const ANIM_OBJ_23
const ANIM_OBJ_24
const ANIM_OBJ_25
const ANIM_OBJ_26
const ANIM_OBJ_27
const ANIM_OBJ_28
const ANIM_OBJ_29
const ANIM_OBJ_FROZEN
const ANIM_OBJ_2B
const ANIM_OBJ_2C
const ANIM_OBJ_2D
const ANIM_OBJ_2E
const ANIM_OBJ_2F
const ANIM_OBJ_30
const ANIM_OBJ_31
const ANIM_OBJ_32
const ANIM_OBJ_33
const ANIM_OBJ_34
const ANIM_OBJ_35
const ANIM_OBJ_36
const ANIM_OBJ_37
const ANIM_OBJ_38
const ANIM_OBJ_39
const ANIM_OBJ_3A
const ANIM_OBJ_3B
const ANIM_OBJ_3C
const ANIM_OBJ_3D
const ANIM_OBJ_GUST
const ANIM_OBJ_3F
const ANIM_OBJ_40
const ANIM_OBJ_41
const ANIM_OBJ_42
const ANIM_OBJ_43
const ANIM_OBJ_44
const ANIM_OBJ_45
const ANIM_OBJ_46
const ANIM_OBJ_47
const ANIM_OBJ_48
const ANIM_OBJ_49
const ANIM_OBJ_4A
const ANIM_OBJ_4B
const ANIM_OBJ_4C
const ANIM_OBJ_4D
const ANIM_OBJ_4E
const ANIM_OBJ_4F
const ANIM_OBJ_50
const ANIM_OBJ_51
const ANIM_OBJ_CHICK
const ANIM_OBJ_53
const ANIM_OBJ_54
const ANIM_OBJ_SKULL
const ANIM_OBJ_56
const ANIM_OBJ_57
const ANIM_OBJ_58
const ANIM_OBJ_PARALYZED
const ANIM_OBJ_5A
const ANIM_OBJ_5B
const ANIM_OBJ_5C
const ANIM_OBJ_5D
const ANIM_OBJ_5E
const ANIM_OBJ_5F
const ANIM_OBJ_60
const ANIM_OBJ_61
const ANIM_OBJ_62
const ANIM_OBJ_63
const ANIM_OBJ_64
const ANIM_OBJ_65
const ANIM_OBJ_66
const ANIM_OBJ_67
const ANIM_OBJ_68
const ANIM_OBJ_69
const ANIM_OBJ_6A
const ANIM_OBJ_6B
const ANIM_OBJ_6C
const ANIM_OBJ_6D
const ANIM_OBJ_6E
const ANIM_OBJ_6F
const ANIM_OBJ_70
const ANIM_OBJ_71
const ANIM_OBJ_72
const ANIM_OBJ_73
const ANIM_OBJ_74
const ANIM_OBJ_75
const ANIM_OBJ_76
const ANIM_OBJ_77
const ANIM_OBJ_78
const ANIM_OBJ_79
const ANIM_OBJ_7A
const ANIM_OBJ_7B
const ANIM_OBJ_7C
const ANIM_OBJ_7D
const ANIM_OBJ_HEART
const ANIM_OBJ_7F
const ANIM_OBJ_80
const ANIM_OBJ_81
const ANIM_OBJ_82
const ANIM_OBJ_83
const ANIM_OBJ_84
const ANIM_OBJ_85
const ANIM_OBJ_86
const ANIM_OBJ_87
const ANIM_OBJ_88
const ANIM_OBJ_89
const ANIM_OBJ_8A
const ANIM_OBJ_8B
const ANIM_OBJ_8C
const ANIM_OBJ_8D
const ANIM_OBJ_8E
const ANIM_OBJ_8F
const ANIM_OBJ_90
const ANIM_OBJ_91
const ANIM_OBJ_92
const ANIM_OBJ_93
const ANIM_OBJ_94
const ANIM_OBJ_95
const ANIM_OBJ_96
const ANIM_OBJ_97
const ANIM_OBJ_98
const ANIM_OBJ_99
const ANIM_OBJ_9A
const ANIM_OBJ_9B
const ANIM_OBJ_9C
const ANIM_OBJ_9D
const ANIM_OBJ_9E
const ANIM_OBJ_9F
const ANIM_OBJ_A0
const ANIM_OBJ_A1
const ANIM_OBJ_A2
const ANIM_OBJ_A3
const ANIM_OBJ_A4
const ANIM_OBJ_A5
const ANIM_OBJ_A6
const ANIM_OBJ_A7
const ANIM_OBJ_A8
const ANIM_OBJ_A9
const ANIM_OBJ_AA
const ANIM_OBJ_AB
const ANIM_OBJ_AC
const ANIM_OBJ_AD
const ANIM_OBJ_AE
const ANIM_OBJ_AF
const ANIM_OBJ_B0
const ANIM_OBJ_B1
const ANIM_OBJ_B2
const ANIM_OBJ_B3
const ANIM_OBJ_B4
const ANIM_OBJ_B5
const ANIM_OBJ_FLOWER
const ANIM_OBJ_COTTON
const ANIM_OBJ_B8
const ANIM_OBJ_B9
const ANIM_OBJ_BA
const ANIM_OBJ_BB
const_def
const BATTLEANIMFUNC_00
const BATTLEANIMFUNC_01
const BATTLEANIMFUNC_02
const BATTLEANIMFUNC_03
const BATTLEANIMFUNC_04
const BATTLEANIMFUNC_05
const BATTLEANIMFUNC_06
const BATTLEANIMFUNC_07
const BATTLEANIMFUNC_08
const BATTLEANIMFUNC_09
const BATTLEANIMFUNC_0A
const BATTLEANIMFUNC_0B
const BATTLEANIMFUNC_0C
const BATTLEANIMFUNC_0D
const BATTLEANIMFUNC_0E
const BATTLEANIMFUNC_0F
const BATTLEANIMFUNC_10
const BATTLEANIMFUNC_11
const BATTLEANIMFUNC_12
const BATTLEANIMFUNC_13
const BATTLEANIMFUNC_14
const BATTLEANIMFUNC_15
const BATTLEANIMFUNC_16
const BATTLEANIMFUNC_17
const BATTLEANIMFUNC_18
const BATTLEANIMFUNC_19
const BATTLEANIMFUNC_1A
const BATTLEANIMFUNC_1B
const BATTLEANIMFUNC_1C
const BATTLEANIMFUNC_1D
const BATTLEANIMFUNC_1E
const BATTLEANIMFUNC_1F
const BATTLEANIMFUNC_20
const BATTLEANIMFUNC_21
const BATTLEANIMFUNC_22
const BATTLEANIMFUNC_23
const BATTLEANIMFUNC_24
const BATTLEANIMFUNC_25
const BATTLEANIMFUNC_26
const BATTLEANIMFUNC_27
const BATTLEANIMFUNC_28
const BATTLEANIMFUNC_29
const BATTLEANIMFUNC_2A
const BATTLEANIMFUNC_2B
const BATTLEANIMFUNC_2C
const BATTLEANIMFUNC_2D
const BATTLEANIMFUNC_2E
const BATTLEANIMFUNC_2F
const BATTLEANIMFUNC_30
const BATTLEANIMFUNC_31
const BATTLEANIMFUNC_32
const BATTLEANIMFUNC_33
const BATTLEANIMFUNC_34
const BATTLEANIMFUNC_35
const BATTLEANIMFUNC_36
const BATTLEANIMFUNC_37
const BATTLEANIMFUNC_38
const BATTLEANIMFUNC_39
const BATTLEANIMFUNC_3A
const BATTLEANIMFUNC_3B
const BATTLEANIMFUNC_3C
const BATTLEANIMFUNC_3D
const BATTLEANIMFUNC_3E
const BATTLEANIMFUNC_3F
const BATTLEANIMFUNC_40
const BATTLEANIMFUNC_41
const BATTLEANIMFUNC_42
const BATTLEANIMFUNC_43
const BATTLEANIMFUNC_44
const BATTLEANIMFUNC_45
const BATTLEANIMFUNC_46
const BATTLEANIMFUNC_47
const BATTLEANIMFUNC_48
const BATTLEANIMFUNC_49
const BATTLEANIMFUNC_4A
const BATTLEANIMFUNC_4B
const BATTLEANIMFUNC_4C
const BATTLEANIMFUNC_4D
const BATTLEANIMFUNC_4E
const BATTLEANIMFUNC_4F
ANIM_OBJ_BURNED EQU $10
ANIM_OBJ_FROZEN EQU $2a
ANIM_OBJ_GUST EQU $3e
ANIM_OBJ_CHICK EQU $52
ANIM_OBJ_SKULL EQU $55
ANIM_OBJ_PARALYZED EQU $59
ANIM_OBJ_HEART EQU $7e
ANIM_OBJ_FLOWER EQU $b6
ANIM_OBJ_COTTON EQU $b7
ANIM_BG_FLASH_INVERTED EQU $01 ANIM_BG_FLASH_INVERTED EQU $01
ANIM_BG_FLASH_WHITE EQU $02 ANIM_BG_FLASH_WHITE EQU $02

View File

@ -374,30 +374,3 @@ SUBSTATUS_CURLED EQU 0
const WIN const WIN
const LOSE const LOSE
const DRAW const DRAW
const_def
const BATTLEANIMSTRUCT_INDEX
const BATTLEANIMSTRUCT_01
const BATTLEANIMSTRUCT_02
const BATTLEANIMSTRUCT_03
const BATTLEANIMSTRUCT_04
const BATTLEANIMSTRUCT_05
const BATTLEANIMSTRUCT_06
const BATTLEANIMSTRUCT_07
const BATTLEANIMSTRUCT_08
const BATTLEANIMSTRUCT_09
const BATTLEANIMSTRUCT_0A
const BATTLEANIMSTRUCT_0B
const BATTLEANIMSTRUCT_0C
const BATTLEANIMSTRUCT_0D
const BATTLEANIMSTRUCT_0E
const BATTLEANIMSTRUCT_0F
const BATTLEANIMSTRUCT_10
const BATTLEANIMSTRUCT_11
const BATTLEANIMSTRUCT_12
const BATTLEANIMSTRUCT_13
const BATTLEANIMSTRUCT_14
const BATTLEANIMSTRUCT_15
const BATTLEANIMSTRUCT_16
const BATTLEANIMSTRUCT_17
BATTLEANIMSTRUCT_LENGTH EQU const_value

View File

@ -238,7 +238,7 @@ Unknown_8d883: db $56, $0a
db $58, $09 db $58, $09
db $5a, $0a db $5a, $0a
db -2 db -2
Unknown_8d890: db $50, $02 ; center Unknown_8d890: db $50, $02
db $5b, $02 db $5b, $02
db $50, $02 db $50, $02
db $5b, $42 db $5b, $42

View File

@ -436,7 +436,7 @@ GetSpriteAnimFrame: ; 8d132
and a and a
jr z, .next_frame ; finished the current sequence jr z, .next_frame ; finished the current sequence
dec [hl] dec [hl]
call GetSpriteFrameDataPointer ; load pointer from SpriteAnimFrameData call .GetPointer ; load pointer from SpriteAnimFrameData
ld a, [hli] ld a, [hli]
push af push af
jr .okay jr .okay
@ -445,7 +445,7 @@ GetSpriteAnimFrame: ; 8d132
ld hl, SPRITEANIMSTRUCT_FRAME ld hl, SPRITEANIMSTRUCT_FRAME
add hl, bc add hl, bc
inc [hl] inc [hl]
call GetSpriteFrameDataPointer ; load pointer from SpriteAnimFrameData call .GetPointer ; load pointer from SpriteAnimFrameData
ld a, [hli] ld a, [hli]
cp -2 cp -2
jr z, .restart jr z, .restart
@ -497,7 +497,7 @@ endr
jr .loop jr .loop
; 8d189 ; 8d189
GetSpriteFrameDataPointer: ; 8d189 .GetPointer: ; 8d189
; Get the data for the current frame for the current animation sequence ; Get the data for the current frame for the current animation sequence
; SpriteAnimFrameData[SpriteAnim[SPRITEANIMSTRUCT_FRAMESET_ID]][SpriteAnim[SPRITEANIMSTRUCT_FRAME]] ; SpriteAnimFrameData[SpriteAnim[SPRITEANIMSTRUCT_FRAMESET_ID]][SpriteAnim[SPRITEANIMSTRUCT_FRAME]]

View File

@ -1,7 +1,7 @@
PlayStereoCry:: ; 37b6 PlayStereoCry:: ; 37b6
push af push af
ld a, 1 ld a, 1
ld [wc2bc], a ld [wStereoPanningMask], a
pop af pop af
call _PlayCry call _PlayCry
call WaitSFX call WaitSFX
@ -13,7 +13,7 @@ PlayStereoCry2:: ; 37c4
; Used during pic animations. ; Used during pic animations.
push af push af
ld a, 1 ld a, 1
ld [wc2bc], a ld [wStereoPanningMask], a
pop af pop af
jp _PlayCry jp _PlayCry
; 37ce ; 37ce
@ -28,7 +28,7 @@ PlayCry2:: ; 37d5
; Don't wait for the cry to end. ; Don't wait for the cry to end.
push af push af
xor a xor a
ld [wc2bc], a ld [wStereoPanningMask], a
ld [CryTracks], a ld [CryTracks], a
pop af pop af
call _PlayCry call _PlayCry

View File

@ -113,8 +113,8 @@ anim_resetobp0: macro
enum anim_sound_command ; e0 enum anim_sound_command ; e0
anim_sound: macro anim_sound: macro
db anim_sound_command db anim_sound_command
db \1 ; tracks db (\1 << 2) | \2 ; duration, tracks
db \2 ; id db \3 ; id
endm endm
enum anim_cry_command ; e1 enum anim_cry_command ; e1

View File

@ -330,12 +330,12 @@ Channel1JumpCondition:: ds 1
Channel2JumpCondition:: ds 1 Channel2JumpCondition:: ds 1
Channel3JumpCondition:: ds 1 Channel3JumpCondition:: ds 1
Channel4JumpCondition:: ds 1 Channel4JumpCondition:: ds 1
wc2bc:: ds 1 wStereoPanningMask:: ds 1
CryTracks:: ; c2bd CryTracks:: ; c2bd
; plays only in left or right track depending on what side the monster is on ; plays only in left or right track depending on what side the monster is on
; both tracks active outside of battle ; both tracks active outside of battle
ds 1 ds 1
wc2be:: ds 1 wSFXDuration:: ds 1
CurSFX:: ; c2bf CurSFX:: ; c2bf
; id of sfx currently playing ; id of sfx currently playing
ds 1 ds 1
@ -3282,9 +3282,9 @@ battle_anim_struct: MACRO
\1Anim01:: ds 1 \1Anim01:: ds 1
\1Anim02:: ds 1 \1Anim02:: ds 1
\1Anim03:: ds 1 \1Anim03:: ds 1
\1Anim04:: ds 1 \1AnimFunctionIndex:: ds 1
\1Anim05:: ds 1 \1Anim05:: ds 1
\1Anim06:: ds 1 \1AnimTileID:: ds 1
\1Anim07:: ds 1 \1Anim07:: ds 1
\1Anim08:: ds 1 \1Anim08:: ds 1
\1Anim09:: ds 1 \1Anim09:: ds 1
@ -3292,7 +3292,7 @@ battle_anim_struct: MACRO
\1Anim0b:: ds 1 \1Anim0b:: ds 1
\1Anim0c:: ds 1 \1Anim0c:: ds 1
\1Anim0d:: ds 1 \1Anim0d:: ds 1
\1Anim0e:: ds 1 \1AnimAnonJumptableIndex:: ds 1
\1Anim0f:: ds 1 \1Anim0f:: ds 1
\1Anim10:: ds 1 \1Anim10:: ds 1
\1Anim11:: ds 1 \1Anim11:: ds 1