diff options
-rwxr-xr-x | asm/poison.s | 364 | ||||
-rwxr-xr-x | asm/wisp_fire.s | 144 | ||||
-rw-r--r-- | ld_script.txt | 3 | ||||
-rw-r--r-- | src/battle/anim/poison.c | 140 | ||||
-rw-r--r-- | src/battle/anim/wisp_fire.c | 48 | ||||
-rw-r--r-- | src/rom_8077ABC.c | 4 |
6 files changed, 192 insertions, 511 deletions
diff --git a/asm/poison.s b/asm/poison.s deleted file mode 100755 index 234348df2..000000000 --- a/asm/poison.s +++ /dev/null @@ -1,364 +0,0 @@ - .include "constants/gba_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - @ poison - - thumb_func_start sub_80D9D70 -sub_80D9D70: @ 80D9D70 - push {r4,r5,lr} - adds r5, r0, 0 - ldr r4, _080D9DC4 @ =gBattleAnimArgs - movs r1, 0x6 - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _080D9D86 - adds r0, r5, 0 - movs r1, 0x2 - bl StartSpriteAnim -_080D9D86: - adds r0, r5, 0 - movs r1, 0x1 - bl sub_80787B0 - ldrh r0, [r4, 0x4] - strh r0, [r5, 0x2E] - ldr r4, _080D9DC8 @ =gAnimBankTarget - ldrb r0, [r4] - movs r1, 0x2 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x32] - ldrb r0, [r4] - movs r1, 0x3 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x36] - ldr r0, _080D9DCC @ =0x0000ffe2 - strh r0, [r5, 0x38] - adds r0, r5, 0 - bl sub_80786EC - ldr r0, _080D9DD0 @ =sub_80D9DD4 - str r0, [r5, 0x1C] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080D9DC4: .4byte gBattleAnimArgs -_080D9DC8: .4byte gAnimBankTarget -_080D9DCC: .4byte 0x0000ffe2 -_080D9DD0: .4byte sub_80D9DD4 - thumb_func_end sub_80D9D70 - - thumb_func_start sub_80D9DD4 -sub_80D9DD4: @ 80D9DD4 - push {r4,lr} - adds r4, r0, 0 - bl sub_8078718 - lsls r0, 24 - cmp r0, 0 - beq _080D9DE8 - adds r0, r4, 0 - bl DestroyAnimSprite -_080D9DE8: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80D9DD4 - - thumb_func_start sub_80D9DF0 -sub_80D9DF0: @ 80D9DF0 - push {r4-r6,lr} - sub sp, 0x4 - adds r4, r0, 0 - ldr r5, _080D9E64 @ =gBattleAnimArgs - movs r1, 0x6 - ldrsh r0, [r5, r1] - cmp r0, 0 - bne _080D9E08 - adds r0, r4, 0 - movs r1, 0x2 - bl StartSpriteAnim -_080D9E08: - adds r0, r4, 0 - movs r1, 0x1 - bl sub_80787B0 - ldr r0, _080D9E68 @ =gAnimBankTarget - ldrb r0, [r0] - mov r6, sp - adds r6, 0x2 - movs r1, 0x1 - mov r2, sp - adds r3, r6, 0 - bl sub_807A3FC - ldr r0, _080D9E6C @ =gAnimBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _080D9E36 - ldrh r0, [r5, 0x8] - negs r0, r0 - strh r0, [r5, 0x8] -_080D9E36: - ldrh r0, [r5, 0x4] - strh r0, [r4, 0x2E] - mov r1, sp - ldrh r0, [r5, 0x8] - ldrh r1, [r1] - adds r0, r1 - strh r0, [r4, 0x32] - ldrh r0, [r5, 0xA] - ldrh r6, [r6] - adds r0, r6 - strh r0, [r4, 0x36] - ldr r0, _080D9E70 @ =0x0000ffe2 - strh r0, [r4, 0x38] - adds r0, r4, 0 - bl sub_80786EC - ldr r0, _080D9E74 @ =sub_80D9E78 - str r0, [r4, 0x1C] - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080D9E64: .4byte gBattleAnimArgs -_080D9E68: .4byte gAnimBankTarget -_080D9E6C: .4byte gAnimBankAttacker -_080D9E70: .4byte 0x0000ffe2 -_080D9E74: .4byte sub_80D9E78 - thumb_func_end sub_80D9DF0 - - thumb_func_start sub_80D9E78 -sub_80D9E78: @ 80D9E78 - push {r4,lr} - adds r4, r0, 0 - bl sub_8078718 - lsls r0, 24 - cmp r0, 0 - beq _080D9E8C - adds r0, r4, 0 - bl DestroyAnimSprite -_080D9E8C: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80D9E78 - - thumb_func_start sub_80D9E94 -sub_80D9E94: @ 80D9E94 - push {r4,r5,lr} - adds r4, r0, 0 - ldr r5, _080D9EE0 @ =gBattleAnimArgs - ldrh r0, [r5, 0x4] - strh r0, [r4, 0x2E] - ldrh r0, [r4, 0x20] - strh r0, [r4, 0x30] - ldrh r1, [r5] - adds r0, r1 - strh r0, [r4, 0x32] - ldrh r0, [r4, 0x22] - strh r0, [r4, 0x34] - ldrh r1, [r5, 0x2] - adds r0, r1 - strh r0, [r4, 0x36] - adds r0, r4, 0 - bl sub_8078A5C - movs r1, 0x30 - ldrsh r0, [r4, r1] - movs r2, 0x4 - ldrsh r1, [r5, r2] - bl __divsi3 - strh r0, [r4, 0x38] - movs r1, 0x32 - ldrsh r0, [r4, r1] - movs r2, 0x4 - ldrsh r1, [r5, r2] - bl __divsi3 - strh r0, [r4, 0x3A] - ldr r0, _080D9EE4 @ =sub_80D9EE8 - str r0, [r4, 0x1C] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080D9EE0: .4byte gBattleAnimArgs -_080D9EE4: .4byte sub_80D9EE8 - thumb_func_end sub_80D9E94 - - thumb_func_start sub_80D9EE8 -sub_80D9EE8: @ 80D9EE8 - push {r4,lr} - adds r4, r0, 0 - bl sub_8078394 - ldrh r0, [r4, 0x30] - ldrh r1, [r4, 0x38] - subs r0, r1 - strh r0, [r4, 0x30] - ldrh r0, [r4, 0x32] - ldrh r1, [r4, 0x3A] - subs r0, r1 - strh r0, [r4, 0x32] - movs r1, 0x2E - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _080D9F0E - adds r0, r4, 0 - bl DestroyAnimSprite -_080D9F0E: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80D9EE8 - - thumb_func_start sub_80D9F14 -sub_80D9F14: @ 80D9F14 - push {r4,lr} - adds r4, r0, 0 - ldr r0, _080D9F74 @ =gAnimBankTarget - ldrb r0, [r0] - adds r2, r4, 0 - adds r2, 0x20 - adds r3, r4, 0 - adds r3, 0x22 - movs r1, 0x1 - bl sub_807A3FC - ldr r0, _080D9F78 @ =gAnimBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _080D9F40 - ldr r1, _080D9F7C @ =gBattleAnimArgs - ldrh r0, [r1] - negs r0, r0 - strh r0, [r1] -_080D9F40: - ldr r0, _080D9F7C @ =gBattleAnimArgs - ldrh r2, [r0] - ldrh r1, [r4, 0x20] - adds r2, r1 - strh r2, [r4, 0x20] - ldrh r1, [r0, 0x2] - ldrh r3, [r4, 0x22] - adds r1, r3 - strh r1, [r4, 0x22] - ldrh r3, [r0, 0x8] - strh r3, [r4, 0x2E] - ldrh r0, [r0, 0x4] - adds r2, r0 - strh r2, [r4, 0x32] - adds r1, r3 - strh r1, [r4, 0x36] - ldr r0, _080D9F80 @ =sub_8078B34 - str r0, [r4, 0x1C] - ldr r1, _080D9F84 @ =DestroyAnimSprite - adds r0, r4, 0 - bl StoreSpriteCallbackInData - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080D9F74: .4byte gAnimBankTarget -_080D9F78: .4byte gAnimBankAttacker -_080D9F7C: .4byte gBattleAnimArgs -_080D9F80: .4byte sub_8078B34 -_080D9F84: .4byte DestroyAnimSprite - thumb_func_end sub_80D9F14 - - thumb_func_start sub_80D9F88 -sub_80D9F88: @ 80D9F88 - push {r4,r5,lr} - adds r4, r0, 0 - ldr r5, _080D9FA0 @ =gBattleAnimArgs - movs r1, 0x4 - ldrsh r0, [r5, r1] - cmp r0, 0 - bne _080D9FA4 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_8078764 - b _080D9FDA - .align 2, 0 -_080D9FA0: .4byte gBattleAnimArgs -_080D9FA4: - ldr r0, _080D9FE4 @ =gAnimBankTarget - ldrb r0, [r0] - adds r2, r4, 0 - adds r2, 0x20 - adds r3, r4, 0 - adds r3, 0x22 - movs r1, 0x1 - bl sub_807A3FC - ldr r0, _080D9FE8 @ =gAnimBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _080D9FCA - ldrh r0, [r5] - negs r0, r0 - strh r0, [r5] -_080D9FCA: - ldrh r0, [r5] - ldrh r1, [r4, 0x20] - adds r0, r1 - strh r0, [r4, 0x20] - ldrh r0, [r5, 0x2] - ldrh r1, [r4, 0x22] - adds r0, r1 - strh r0, [r4, 0x22] -_080D9FDA: - ldr r0, _080D9FEC @ =sub_80D9FF0 - str r0, [r4, 0x1C] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080D9FE4: .4byte gAnimBankTarget -_080D9FE8: .4byte gAnimBankAttacker -_080D9FEC: .4byte sub_80D9FF0 - thumb_func_end sub_80D9F88 - - thumb_func_start sub_80D9FF0 -sub_80D9FF0: @ 80D9FF0 - push {r4,lr} - adds r4, r0, 0 - ldrh r0, [r4, 0x2E] - adds r0, 0xB - movs r1, 0xFF - ands r0, r1 - strh r0, [r4, 0x2E] - movs r1, 0x2E - ldrsh r0, [r4, r1] - movs r1, 0x4 - bl Sin - strh r0, [r4, 0x24] - ldrh r0, [r4, 0x30] - adds r0, 0x30 - strh r0, [r4, 0x30] - lsls r0, 16 - asrs r0, 24 - negs r0, r0 - strh r0, [r4, 0x26] - adds r0, r4, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _080DA02C - adds r0, r4, 0 - bl DestroyAnimSprite -_080DA02C: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80D9FF0 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/wisp_fire.s b/asm/wisp_fire.s index a6407589f..5fc7a07ab 100755 --- a/asm/wisp_fire.s +++ b/asm/wisp_fire.s @@ -7,150 +7,6 @@ @ wisp_fire - thumb_func_start sub_80D5CC0 -sub_80D5CC0: @ 80D5CC0 - push {r4,lr} - adds r4, r0, 0 - ldrh r1, [r4, 0x2E] - movs r2, 0x2E - ldrsh r0, [r4, r2] - cmp r0, 0 - bne _080D5CD8 - ldr r0, _080D5D4C @ =gBattleAnimArgs - ldrh r0, [r0] - strh r0, [r4, 0x30] - adds r0, r1, 0x1 - strh r0, [r4, 0x2E] -_080D5CD8: - movs r0, 0xC0 - lsls r0, 1 - adds r1, r0, 0 - ldrh r2, [r4, 0x34] - adds r1, r2 - strh r1, [r4, 0x34] - ldrh r0, [r4, 0x36] - adds r0, 0xA0 - strh r0, [r4, 0x36] - movs r2, 0x30 - ldrsh r0, [r4, r2] - lsls r1, 16 - asrs r1, 24 - bl Sin - strh r0, [r4, 0x24] - movs r1, 0x30 - ldrsh r0, [r4, r1] - ldrh r1, [r4, 0x36] - lsls r1, 16 - asrs r1, 24 - bl Cos - strh r0, [r4, 0x26] - ldrh r0, [r4, 0x30] - adds r2, r0, 0x7 - movs r0, 0xFF - ands r2, r0 - strh r2, [r4, 0x30] - ldr r0, _080D5D50 @ =gMain - ldr r1, _080D5D54 @ =0x0000043d - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080D5D84 - adds r0, r2, 0 - subs r0, 0x40 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x83 - bls _080D5D5C - ldr r0, _080D5D58 @ =gAnimBankTarget - ldrb r0, [r0] - bl sub_8079ED4 - movs r1, 0x3 - ands r1, r0 - lsls r1, 2 - ldrb r2, [r4, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r4, 0x5] - b _080D5DA0 - .align 2, 0 -_080D5D4C: .4byte gBattleAnimArgs -_080D5D50: .4byte gMain -_080D5D54: .4byte 0x0000043d -_080D5D58: .4byte gAnimBankTarget -_080D5D5C: - ldr r0, _080D5D80 @ =gAnimBankTarget - ldrb r0, [r0] - bl sub_8079ED4 - lsls r0, 24 - lsrs r0, 24 - adds r0, 0x1 - movs r1, 0x3 - ands r0, r1 - lsls r0, 2 - ldrb r2, [r4, 0x5] - movs r1, 0xD - negs r1, r1 - ands r1, r2 - orrs r1, r0 - strb r1, [r4, 0x5] - b _080D5DA0 - .align 2, 0 -_080D5D80: .4byte gAnimBankTarget -_080D5D84: - adds r0, r2, 0 - subs r0, 0x40 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x83 - bls _080D5D98 - adds r1, r4, 0 - adds r1, 0x43 - movs r0, 0x1D - b _080D5D9E -_080D5D98: - adds r1, r4, 0 - adds r1, 0x43 - movs r0, 0x1F -_080D5D9E: - strb r0, [r1] -_080D5DA0: - ldrh r0, [r4, 0x32] - adds r0, 0x1 - strh r0, [r4, 0x32] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x14 - ble _080D5DC8 - adds r3, r4, 0 - adds r3, 0x3E - ldrb r2, [r3] - lsls r0, r2, 29 - lsrs r0, 31 - movs r1, 0x1 - eors r1, r0 - lsls r1, 2 - movs r0, 0x5 - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r3] -_080D5DC8: - movs r2, 0x32 - ldrsh r0, [r4, r2] - cmp r0, 0x1E - bne _080D5DD6 - adds r0, r4, 0 - bl DestroyAnimSprite -_080D5DD6: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80D5CC0 - thumb_func_start sub_80D5DDC sub_80D5DDC: @ 80D5DDC push {r4,lr} diff --git a/ld_script.txt b/ld_script.txt index 5bfc8b171..125d288cf 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -283,6 +283,7 @@ SECTIONS { src/battle/anim/fire_2.o(.text); src/battle/anim/heated_rock.o(.text); src/battle/anim/wisp_orb.o(.text); + src/battle/anim/wisp_fire.o(.text); asm/wisp_fire.o(.text); src/battle/anim/thunder.o(.text); src/battle/anim/beta_beat_up.o(.text); @@ -290,7 +291,7 @@ SECTIONS { asm/current.o(.text); asm/ice.o(.text); asm/fight.o(.text); - asm/poison.o(.text); + src/battle/anim/poison.o(.text); asm/flying.o(.text); asm/psychic.o(.text); asm/bug.o(.text); diff --git a/src/battle/anim/poison.c b/src/battle/anim/poison.c new file mode 100644 index 000000000..f31c441fb --- /dev/null +++ b/src/battle/anim/poison.c @@ -0,0 +1,140 @@ +#include "global.h" +#include "battle_anim.h" +#include "rom_8077ABC.h" +#include "trig.h" + +extern s16 gBattleAnimArgs[]; +extern u8 gAnimBankAttacker; +extern u8 gAnimBankTarget; + +void sub_80D9DD4(struct Sprite *sprite); +void sub_80D9E78(struct Sprite *sprite); +void sub_80D9EE8(struct Sprite *sprite); +void sub_80D9FF0(struct Sprite *sprite); + +void sub_80D9D70(struct Sprite *sprite) +{ + if (!gBattleAnimArgs[3]) + StartSpriteAnim(sprite, 2); + + sub_80787B0(sprite, 1); + + sprite->data[0] = gBattleAnimArgs[2]; + sprite->data[2] = GetBankPosition(gAnimBankTarget, 2); + sprite->data[4] = GetBankPosition(gAnimBankTarget, 3); + sprite->data[5] = -30; + + sub_80786EC(sprite); + + sprite->callback = sub_80D9DD4; +} + +void sub_80D9DD4(struct Sprite *sprite) // same as sub_80D9E78 +{ + if (sub_8078718(sprite)) + DestroyAnimSprite(sprite); +} + +void sub_80D9DF0(struct Sprite *sprite) +{ + s16 l1, l2; + if (!gBattleAnimArgs[3]) + StartSpriteAnim(sprite, 2); + + sub_80787B0(sprite, 1); + sub_807A3FC(gAnimBankTarget, 1, &l1, &l2); + + if (GetBankSide(gAnimBankAttacker)) + gBattleAnimArgs[4] = -gBattleAnimArgs[4]; + + sprite->data[0] = gBattleAnimArgs[2]; + sprite->data[2] = l1 + gBattleAnimArgs[4]; + sprite->data[4] = l2 + gBattleAnimArgs[5]; + sprite->data[5] = -30; + + sub_80786EC(sprite); + + sprite->callback = sub_80D9E78; +} + +void sub_80D9E78(struct Sprite *sprite) // same as sub_80D9DD4 +{ + if (sub_8078718(sprite)) + DestroyAnimSprite(sprite); +} + +void sub_80D9E94(struct Sprite *sprite) +{ + sprite->data[0] = gBattleAnimArgs[2]; + sprite->data[1] = sprite->pos1.x; + sprite->data[2] = sprite->pos1.x + gBattleAnimArgs[0]; + sprite->data[3] = sprite->pos1.y; + sprite->data[4] = sprite->pos1.y + gBattleAnimArgs[1]; + + sub_8078A5C(sprite); + + sprite->data[5] = sprite->data[1] / gBattleAnimArgs[2]; + sprite->data[6] = sprite->data[2] / gBattleAnimArgs[2]; + + sprite->callback = sub_80D9EE8; +} + +void sub_80D9EE8(struct Sprite *sprite) +{ + sub_8078394(sprite); + + sprite->data[1] -= sprite->data[5]; + sprite->data[2] -= sprite->data[6]; + + if (!sprite->data[0]) + DestroyAnimSprite(sprite); +} + +void sub_80D9F14(struct Sprite *sprite) +{ + sub_807A3FC(gAnimBankTarget, TRUE, &sprite->pos1.x, &sprite->pos1.y); + + if (GetBankSide(gAnimBankAttacker)) + gBattleAnimArgs[0] = -gBattleAnimArgs[0]; + + sprite->pos1.x += gBattleAnimArgs[0]; + sprite->pos1.y += gBattleAnimArgs[1]; + + sprite->data[0] = gBattleAnimArgs[4]; + sprite->data[2] = sprite->pos1.x + gBattleAnimArgs[2]; + sprite->data[4] = sprite->pos1.y + sprite->data[0]; + + sprite->callback = sub_8078B34; + StoreSpriteCallbackInData(sprite, DestroyAnimSprite); +} + +void sub_80D9F88(struct Sprite *sprite) +{ + if (!gBattleAnimArgs[2]) + { + sub_8078764(sprite, TRUE); + } + else + { + sub_807A3FC(gAnimBankTarget, TRUE, &sprite->pos1.x, &sprite->pos1.y); + + if (GetBankSide(gAnimBankAttacker)) + gBattleAnimArgs[0] = -gBattleAnimArgs[0]; + + sprite->pos1.x += gBattleAnimArgs[0]; + sprite->pos1.y += gBattleAnimArgs[1]; + } + + sprite->callback = sub_80D9FF0; +} + +void sub_80D9FF0(struct Sprite *sprite) +{ + sprite->data[0] = (sprite->data[0] + 0xB) & 0xFF; + sprite->pos2.x = Sin(sprite->data[0], 4); + sprite->data[1] += 0x30; + sprite->pos2.y = -(sprite->data[1] >> 8); + + if (sprite->affineAnimEnded) + DestroyAnimSprite(sprite); +}
\ No newline at end of file diff --git a/src/battle/anim/wisp_fire.c b/src/battle/anim/wisp_fire.c new file mode 100644 index 000000000..e31c15d9c --- /dev/null +++ b/src/battle/anim/wisp_fire.c @@ -0,0 +1,48 @@ +#include "global.h" +#include "battle_anim.h" +#include "main.h" +#include "rom_8077ABC.h" +#include "trig.h" + +extern s16 gBattleAnimArgs[]; +extern u8 gAnimBankTarget; +// extern u8 gAnimBankAttacker; + +void sub_80D5CC0(struct Sprite *sprite) +{ + if (!sprite->data[0]) + { + sprite->data[1] = gBattleAnimArgs[0]; + sprite->data[0] += 1; + } + + sprite->data[3] += 0xC0 * 2; + sprite->data[4] += 0xA0; + + sprite->pos2.x = Sin(sprite->data[1], sprite->data[3] >> 8); + sprite->pos2.y = Cos(sprite->data[1], sprite->data[4] >> 8); + + sprite->data[1] = (sprite->data[1] + 7) & 0xFF; + + if (gMain.inBattle) + if ((u16) (sprite->data[1] - 0x40) > 0x83) + sprite->oam.priority = sub_8079ED4(gAnimBankTarget); + else + sprite->oam.priority = sub_8079ED4(gAnimBankTarget) + 1; + else + if ((u16) (sprite->data[1] - 0x40) > 0x83) + sprite->subpriority = 0x1D; + else + sprite->subpriority = 0x1F; + + if (++sprite->data[2] > 0x14) + sprite->invisible ^= 1; + + if (sprite->data[2] == 0x1E) + DestroyAnimSprite(sprite); +} + +// void sub_80D5DDC(struct Sprite *sprite) +// { + +// }
\ No newline at end of file diff --git a/src/rom_8077ABC.c b/src/rom_8077ABC.c index 9cf28a111..667f74a25 100644 --- a/src/rom_8077ABC.c +++ b/src/rom_8077ABC.c @@ -698,7 +698,7 @@ void oamt_add_pos2_onto_pos1(struct Sprite *sprite) { sprite->pos2.y = 0; } -void sub_8078764(struct Sprite *sprite, u8 a2) { +void sub_8078764(struct Sprite *sprite, bool8 a2) { if (!a2) { sprite->pos1.x = sub_8077EE4(gAnimBankTarget, 0); sprite->pos1.y = sub_8077EE4(gAnimBankTarget, 1); @@ -1841,7 +1841,7 @@ int sub_807A100(u8 slot, u8 a2) { } } -void sub_807A3FC(u8 slot, u8 a2, s16 *a3, s16 *a4) { +void sub_807A3FC(u8 slot, bool8 a2, s16 *a3, s16 *a4) { u8 v1, v2; s16 v3, v4; s16 v5, v6; |