Merge branch 'master' into doc-inconnect
This commit is contained in:
@@ -16,6 +16,7 @@
|
||||
*.gbapal
|
||||
*.hwjpnfont
|
||||
*.i
|
||||
*.idb
|
||||
*.id0
|
||||
*.id1
|
||||
*.id2
|
||||
@@ -54,3 +55,4 @@ types_*.taghl
|
||||
!sound/programmable_wave_samples/*.pcm
|
||||
_Deparsed_XSubs.pm
|
||||
porymap.project.cfg
|
||||
.vscode/*.*
|
||||
|
||||
@@ -76,7 +76,7 @@ ASFLAGS := -mcpu=arm7tdmi --defsym $(GAME_VERSION)=1 --defsym REVISION=$(GAME_RE
|
||||
|
||||
LDFLAGS = -Map ../../$(MAP)
|
||||
|
||||
LIB := $(LIBPATH) -lgcc -lc
|
||||
LIB := $(LIBPATH) -lc -lgcc
|
||||
#ifneq ($(MODERN),0)
|
||||
#LIB += -lsysbase
|
||||
#endif
|
||||
|
||||
-3775
File diff suppressed because it is too large
Load Diff
@@ -1,210 +0,0 @@
|
||||
#include "constants/maps.h"
|
||||
#include "constants/species.h"
|
||||
.include "asm/macros.inc"
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.section .rodata
|
||||
.align 2
|
||||
|
||||
gUnknown_83E44F4:: @ 83E44F4
|
||||
.incbin "graphics/battle_anims/unk_83E4874.4bpp"
|
||||
|
||||
gUnknown_83E4874::
|
||||
.incbin "graphics/battle_anims/unk_83E4874.bin"
|
||||
|
||||
gUnknown_83E5874:: @ 83E5874
|
||||
obj_image_anim_frame 0, 2
|
||||
obj_image_anim_frame 8, 2
|
||||
obj_image_anim_frame 16, 2
|
||||
obj_image_anim_frame 24, 6
|
||||
obj_image_anim_frame 32, 2
|
||||
obj_image_anim_frame 40, 2
|
||||
obj_image_anim_frame 48, 2
|
||||
obj_image_anim_end
|
||||
|
||||
gUnknown_83E5894:: @ 83E5894
|
||||
.4byte gUnknown_83E5874
|
||||
|
||||
gUnknown_83E5898:: @ 83E5898
|
||||
spr_template 10115, 10115, gOamData_AffineOff_ObjNormal_16x32, gUnknown_83E5894, NULL, gDummySpriteAffineAnimTable, sub_80AAC54
|
||||
|
||||
gUnknown_83E58B0:: @ 83E58B0
|
||||
obj_rot_scal_anim_frame -5, -5, 0, 10
|
||||
obj_rot_scal_anim_frame 5, 5, 0, 10
|
||||
obj_rot_scal_anim_jump 0
|
||||
|
||||
gUnknown_83E58C8:: @ 83E58C8
|
||||
.4byte gUnknown_83E58B0
|
||||
|
||||
gUnknown_83E58CC:: @ 83E58CC
|
||||
obj_image_anim_frame 0, 1
|
||||
obj_image_anim_frame 4, 5
|
||||
obj_image_anim_frame 8, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gUnknown_83E58DC:: @ 83E58DC
|
||||
.4byte gUnknown_83E58CC
|
||||
|
||||
gUnknown_83E58E0:: @ 83E58E0
|
||||
spr_template 10146, 10146, gOamData_AffineNormal_ObjBlend_16x16, gUnknown_83E58DC, NULL, gUnknown_83E58C8, sub_80AAC98
|
||||
|
||||
gUnknown_83E58F8:: @ 83E58F8
|
||||
obj_image_anim_frame 0, 1
|
||||
obj_image_anim_end
|
||||
|
||||
gUnknown_83E5900:: @ 83E5900
|
||||
obj_image_anim_frame 4, 1
|
||||
obj_image_anim_end
|
||||
|
||||
gUnknown_83E5908:: @ 83E5908
|
||||
.4byte gUnknown_83E58F8
|
||||
.4byte gUnknown_83E5900
|
||||
|
||||
gUnknown_83E5910:: @ 83E5910
|
||||
obj_rot_scal_anim_frame 0, 0, 0, 1
|
||||
obj_rot_scal_anim_frame 96, 96, 0, 1
|
||||
obj_rot_scal_anim_end
|
||||
|
||||
gUnknown_83E5928:: @ 83E5928
|
||||
.4byte gUnknown_83E5910
|
||||
|
||||
gUnknown_83E592C:: @ 83E592C
|
||||
spr_template 10140, 10140, gOamData_AffineDouble_ObjNormal_8x16, gUnknown_83E5908, NULL, gUnknown_83E5928, sub_80AAE84
|
||||
|
||||
gUnknown_83E5944:: @ 83E5944
|
||||
obj_image_anim_frame 0, 1
|
||||
obj_image_anim_frame 4, 1
|
||||
obj_image_anim_frame 8, 1
|
||||
obj_image_anim_frame 12, 1
|
||||
obj_image_anim_jump 0
|
||||
|
||||
gUnknown_83E5958:: @ 83E5958
|
||||
.4byte gUnknown_83E5944
|
||||
|
||||
gUnknown_83E595C:: @ 83E595C
|
||||
spr_template 10149, 10149, gOamData_AffineOff_ObjBlend_16x16, gUnknown_83E5958, NULL, gDummySpriteAffineAnimTable, sub_80AB024
|
||||
|
||||
gUnknown_83E5974:: @ 83E5974
|
||||
spr_template 10259, 10259, gOamData_AffineOff_ObjBlend_16x16, gUnknown_83E5958, NULL, gDummySpriteAffineAnimTable, sub_80AB024
|
||||
|
||||
gUnknown_83E598C:: @ 83E598C
|
||||
spr_template 10264, 10264, gOamData_AffineOff_ObjNormal_8x8, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_80AB024
|
||||
|
||||
gUnknown_83E59A4:: @ 83E59A4
|
||||
spr_template 10265, 10265, gOamData_AffineOff_ObjNormal_8x8, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_80AB024
|
||||
|
||||
gUnknown_83E59BC:: @ 83E59BC
|
||||
obj_image_anim_frame 16, 2
|
||||
obj_image_anim_frame 32, 2
|
||||
obj_image_anim_frame 48, 2
|
||||
obj_image_anim_jump 0
|
||||
|
||||
gUnknown_83E59CC:: @ 83E59CC
|
||||
.4byte gUnknown_83E59BC
|
||||
|
||||
gUnknown_83E59D0:: @ 83E59D0
|
||||
spr_template 10029, 10029, gOamData_AffineOff_ObjNormal_32x32, gUnknown_83E59CC, NULL, gDummySpriteAffineAnimTable, sub_80AB024
|
||||
|
||||
gUnknown_83E59E8:: @ 83E59E8
|
||||
spr_template 10165, 10165, gOamData_AffineDouble_ObjNormal_16x32, gDummySpriteAnimTable, NULL, gGrowingRingAffineAnimTable, sub_80AB024
|
||||
|
||||
gUnknown_83E5A00:: @ 83E5A00
|
||||
obj_rot_scal_anim_frame 3, 3, 10, 50
|
||||
obj_rot_scal_anim_frame 0, 0, 0, 10
|
||||
obj_rot_scal_anim_frame -20, -20, 246, 20
|
||||
obj_rot_scal_anim_end
|
||||
|
||||
gUnknown_83E5A20:: @ 83E5A20
|
||||
obj_rot_scal_anim_frame 336, 336, 0, 0
|
||||
obj_rot_scal_anim_end
|
||||
|
||||
gUnknown_83E5A30:: @ 83E5A30
|
||||
.4byte gUnknown_83E5A00
|
||||
|
||||
gUnknown_83E5A34:: @ 83E5A34
|
||||
.4byte gUnknown_83E5A20
|
||||
|
||||
gUnknown_83E5A38:: @ 83E5A38
|
||||
spr_template 10149, 10149, gOamData_AffineDouble_ObjBlend_16x16, gUnknown_83E5958, NULL, gUnknown_83E5A30, sub_80AB168
|
||||
|
||||
gUnknown_83E5A50:: @ 83E5A50
|
||||
spr_template 10149, 10149, gOamData_AffineDouble_ObjBlend_16x16, gUnknown_83E5958, NULL, gUnknown_83E5A34, sub_80AB1F8
|
||||
|
||||
gUnknown_83E5A68:: @ 83E5A68
|
||||
obj_image_anim_frame 0, 1
|
||||
obj_image_anim_end
|
||||
|
||||
gUnknown_83E5A70:: @ 83E5A70
|
||||
obj_image_anim_frame 4, 1
|
||||
obj_image_anim_end
|
||||
|
||||
gUnknown_83E5A78:: @ 83E5A78
|
||||
.4byte gUnknown_83E5A68
|
||||
|
||||
gUnknown_83E5A7C:: @ 83E5A7C
|
||||
.4byte gUnknown_83E5A70
|
||||
|
||||
gUnknown_83E5A80:: @ 83E5A80
|
||||
spr_template 10155, 10155, gOamData_AffineOff_ObjBlend_16x16, gUnknown_83E5A78, NULL, gDummySpriteAffineAnimTable, AnimThrowProjectile
|
||||
|
||||
gUnknown_83E5A98:: @ 83E5A98
|
||||
spr_template 10155, 10155, gOamData_AffineDouble_ObjBlend_16x16, gUnknown_83E5A7C, NULL, gUnknown_83E6A80, sub_80AB2CC
|
||||
|
||||
gUnknown_83E5AB0:: @ 83E5AB0
|
||||
spr_template 10141, 10141, gOamData_AffineOff_ObjNormal_8x8, gUnknown_83E6330, NULL, gDummySpriteAffineAnimTable, sub_80AB308
|
||||
|
||||
gUnknown_83E5AC8:: @ 83E5AC8
|
||||
spr_template 10155, 10155, gOamData_AffineOff_ObjNormal_8x8, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_80ABA78
|
||||
|
||||
gUnknown_83E5AE0:: @ 83E5AE0
|
||||
spr_template 10268, 10268, gOamData_AffineOff_ObjNormal_8x8, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_80ABF60
|
||||
|
||||
gUnknown_83E5AF8:: @ 83E5AF8
|
||||
obj_image_anim_frame 8, 1
|
||||
obj_image_anim_end
|
||||
|
||||
gUnknown_83E5B00:: @ 83E5B00
|
||||
obj_image_anim_frame 9, 1
|
||||
obj_image_anim_end
|
||||
|
||||
gUnknown_83E5B08:: @ 83E5B08
|
||||
obj_image_anim_frame 4, 1
|
||||
obj_image_anim_end
|
||||
|
||||
gUnknown_83E5B10:: @ 83E5B10
|
||||
.4byte gUnknown_83E5AF8
|
||||
.4byte gUnknown_83E5B00
|
||||
|
||||
gUnknown_83E5B18:: @ 83E5B18
|
||||
.4byte gUnknown_83E5B08
|
||||
|
||||
gUnknown_83E5B1C:: @ 83E5B1C
|
||||
obj_rot_scal_anim_frame 256, 256, 0, 0
|
||||
obj_rot_scal_anim_frame -10, -10, 0, 15
|
||||
obj_rot_scal_anim_end
|
||||
|
||||
gUnknown_83E5B34:: @ 83E5B34
|
||||
obj_rot_scal_anim_frame 224, 224, 0, 0
|
||||
obj_rot_scal_anim_frame -8, -8, 0, 15
|
||||
obj_rot_scal_anim_end
|
||||
|
||||
gUnknown_83E5B4C:: @ 83E5B4C
|
||||
obj_rot_scal_anim_frame 336, 336, 0, 0
|
||||
obj_rot_scal_anim_frame 0, 0, 0, 15
|
||||
obj_rot_scal_anim_end
|
||||
|
||||
gUnknown_83E5B64:: @ 83E5B64
|
||||
.4byte gUnknown_83E5B1C
|
||||
.4byte gUnknown_83E5B34
|
||||
|
||||
gUnknown_83E5B6C:: @ 83E5B6C
|
||||
.4byte gUnknown_83E5B4C
|
||||
|
||||
gUnknown_83E5B70:: @ 83E5B70
|
||||
spr_template 10155, 10155, gOamData_AffineOff_ObjNormal_8x8, gUnknown_83E5B10, NULL, gDummySpriteAffineAnimTable, sub_80AC624
|
||||
|
||||
gUnknown_83E5B88:: @ 83E5B88
|
||||
spr_template 10155, 10155, gOamData_AffineNormal_ObjNormal_8x8, gUnknown_83E5B10, NULL, gUnknown_83E5B64, sub_80AC698
|
||||
|
||||
gUnknown_83E5BA0:: @ 83E5BA0
|
||||
spr_template 10155, 10155, gOamData_AffineNormal_ObjNormal_16x16, gUnknown_83E5B18, NULL, gUnknown_83E5B6C, sub_8077350
|
||||
+2417
-2447
File diff suppressed because it is too large
Load Diff
+78
-74
@@ -215,9 +215,10 @@ void AnimMetronomeFinger(struct Sprite *);
|
||||
void AnimFollowMeFinger(struct Sprite *);
|
||||
void AnimTauntFinger(struct Sprite *);
|
||||
void SetSpriteNextToMonHead(u8 battler, struct Sprite* sprite);
|
||||
void sub_80A2F0C(u8 taskId);
|
||||
void AnimTask_ShrinkTargetCopy(u8 taskId);
|
||||
|
||||
// battle_anim_effects_2.c
|
||||
extern const union AffineAnimCmd *const gGrowingRingAffineAnimTable[];
|
||||
void sub_80A6E48(struct Sprite *);
|
||||
void sub_80A6E98(struct Sprite *);
|
||||
void sub_80A6F8C(struct Sprite *);
|
||||
@@ -345,7 +346,6 @@ void LaunchStatusAnimation(u8 battlerId, u8 statusAnimId);
|
||||
|
||||
// battle_anim_mons.c
|
||||
extern const struct MonCoords gCastformFrontSpriteCoords[];
|
||||
|
||||
u8 GetBattlerSpriteCoord(u8 battlerId, u8 coordType);
|
||||
u8 GetBattlerSpriteCoord2(u8 battlerId, u8 coordType);
|
||||
u8 GetBattlerSpriteDefault_Y(u8 battlerId);
|
||||
@@ -421,9 +421,9 @@ void AnimThrowProjectile(struct Sprite *sprite);
|
||||
void AnimSnoreZ(struct Sprite *sprite);
|
||||
s16 CloneBattlerSpriteWithBlend(u8 animBattler);
|
||||
void obj_delete_but_dont_free_vram(struct Sprite *sprite);
|
||||
void sub_8076048(u8 taskId);
|
||||
void AnimTask_AlphaFadeIn(u8 taskId);
|
||||
void AnimTask_BlendMonInAndOut(u8 task);
|
||||
void sub_8076288(u8 taskId);
|
||||
void AnimTask_BlendPalInAndOutByTag(u8 taskId);
|
||||
void PrepareAffineAnimInTaskData(struct Task *task, u8 spriteId, const union AffineAnimCmd *affineAnimCmds);
|
||||
bool8 RunAffineAnimFromTaskData(struct Task *task);
|
||||
void SetBattlerSpriteYOffsetFromYScale(u8 spriteId);
|
||||
@@ -445,9 +445,9 @@ u8 sub_8076E34(s32 battlerId, u8 spriteId, s32 species);
|
||||
void sub_8076ED8(struct Sprite *sprite);
|
||||
void sub_8076F58(struct Sprite *sprite);
|
||||
void sub_8076FD0(struct Sprite *sprite);
|
||||
void sub_8077030(u8 taskId);
|
||||
void AnimTask_AttackerPunchWithTrace(u8 taskId);
|
||||
void sub_807729C(struct Sprite *sprite);
|
||||
void sub_8077350(struct Sprite *sprite);
|
||||
void AnimWeatherBallDown(struct Sprite *sprite);
|
||||
|
||||
// battle_anim_mon_movement.c
|
||||
void AnimTask_ShakeMon(u8 taskId);
|
||||
@@ -457,107 +457,111 @@ void AnimTask_ShakeAndSinkMon(u8 taskId);
|
||||
void AnimTask_TranslateMonElliptical(u8 taskId);
|
||||
void AnimTask_TranslateMonEllipticalRespectSide(u8 taskId);
|
||||
void AnimTask_WindUpLunge(u8 taskId);
|
||||
void sub_80995FC(u8 taskId);
|
||||
void AnimTask_SlideOffScreen(u8 taskId);
|
||||
void AnimTask_SwayMon(u8 taskId);
|
||||
void AnimTask_ScaleMonAndRestore(u8 taskId);
|
||||
void sub_8099980(u8 taskId);
|
||||
void sub_8099A78(u8 taskId);
|
||||
void sub_8099BD4(u8 taskId);
|
||||
void AnimTask_RotateMonSpriteToSide(u8 taskId);
|
||||
void AnimTask_RotateMonToSideAndRestore(u8 taskId);
|
||||
void AnimTask_ShakeTargetBasedOnMovePowerOrDmg(u8 taskId);
|
||||
|
||||
// normal.c
|
||||
extern const struct SpriteTemplate gUnknown_83E7C98;
|
||||
extern const struct SpriteTemplate gFlashingHitSplatSpriteTemplate;
|
||||
extern const struct SpriteTemplate gBasicHitSplatSpriteTemplate;
|
||||
extern const struct SpriteTemplate gWaterHitSplatSpriteTemplate;
|
||||
u32 UnpackSelectedBattleAnimPalettes(s16 selector);
|
||||
void AnimTask_CurseBlendEffect(u8 taskId);
|
||||
void sub_80B9CE4(u8 taskId);
|
||||
void sub_80B9E58(u8 taskId);
|
||||
void sub_80B9F6C(u8 taskId);
|
||||
void sub_80BA0E8(u8 taskId);
|
||||
void sub_80BA47C(u8 taskId);
|
||||
void AnimTask_BlendColorCycleExclude(u8 taskId);
|
||||
void AnimTask_BlendColorCycleByTag(u8 taskId);
|
||||
void AnimTask_FlashAnimTagWithColor(u8 taskId);
|
||||
void AnimTask_InvertScreenColor(u8 taskId);
|
||||
void AnimTask_ShakeBattleTerrain(u8 taskId);
|
||||
|
||||
// ground.c
|
||||
void sub_80B8E94(u8 taskId);
|
||||
void sub_80B90EC(u8 taskId);
|
||||
void sub_80B94B4(u8 taskId);
|
||||
void AnimTask_DigDownMovement(u8 taskId);
|
||||
void AnimTask_DigUpMovement(u8 taskId);
|
||||
void AnimTask_HorizontalShake(u8 taskId);
|
||||
void AnimTask_IsPowerOver99(u8 taskId);
|
||||
void sub_80B9800(u8 taskId);
|
||||
void AnimTask_PositionFissureBgOnBattler(u8 taskId);
|
||||
|
||||
// dragon.c
|
||||
void sub_80B75E0(u8 taskId);
|
||||
void AnimTask_DragonDanceWaver(u8 taskId);
|
||||
|
||||
// ghost.c
|
||||
void sub_80B54E8(u8 taskId);
|
||||
void sub_80B58AC(u8 taskId);
|
||||
void sub_80B5AAC(u8 taskId);
|
||||
void sub_80B6020(u8 taskId);
|
||||
void sub_80B63B4(u8 taskId);
|
||||
void sub_80B68C8(u8 taskId);
|
||||
void AnimTask_NightShadeClone(u8 taskId);
|
||||
void AnimTask_NightmareClone(u8 taskId);
|
||||
void AnimTask_SpiteTargetShadow(u8 taskId);
|
||||
void AnimTask_DestinyBondWhiteShadow(u8 taskId);
|
||||
void AnimTask_CurseStretchingBlackBg(u8 taskId);
|
||||
void AnimTask_GrudgeFlames(u8 taskId);
|
||||
void sub_80B6BBC(u8 taskId);
|
||||
|
||||
// rock.c
|
||||
void AnimTask_LoadSandstormBackground(u8 taskId);
|
||||
void sub_80B4BD0(u8 taskId);
|
||||
void AnimTask_Rollout(u8 taskId);
|
||||
void AnimTask_GetSeismicTossDamageLevel(u8 taskId);
|
||||
void sub_80B5188(u8 taskId);
|
||||
void sub_80B51EC(u8 taskId);
|
||||
void AnimTask_MoveSeismicTossBg(u8 taskId);
|
||||
void AnimTask_SeismicTossBgAccelerateDownAtEnd(u8 taskId);
|
||||
|
||||
// psychic.c
|
||||
void sub_80B3418(u8 taskId);
|
||||
void sub_80B3480(u8 taskId);
|
||||
void sub_80B3584(u8 taskId);
|
||||
void sub_80B3834(u8 taskId);
|
||||
void sub_80B3A58(u8 taskId);
|
||||
void sub_80B3C78(u8 taskId);
|
||||
void AnimTask_MeditateStretchAttacker(u8 taskId);
|
||||
void AnimTask_Teleport(u8 taskId);
|
||||
void AnimTask_ImprisonOrbs(u8 taskId);
|
||||
void AnimTask_SkillSwap(u8 taskId);
|
||||
void AnimTask_ExtrasensoryDistortion(u8 taskId);
|
||||
void AnimTask_TransparentCloneGrowAndShrink(u8 taskId);
|
||||
|
||||
// dark.c
|
||||
extern const union AffineAnimCmd *const gUnknown_83E7910[];
|
||||
void sub_80B78E0(u8 taskId);
|
||||
void sub_80B79DC(u8 taskId);
|
||||
void sub_80B7A80(u8 taskId);
|
||||
void sub_80B7DA4(u8 taskId);
|
||||
void sub_80B8070(u8 taskId);
|
||||
void sub_80B85B8(u8 taskId);
|
||||
extern const union AffineAnimCmd *const gAffineAnims_Bite[];
|
||||
void AnimTask_AttackerFadeToInvisible(u8 taskId);
|
||||
void AnimTask_AttackerFadeFromInvisible(u8 taskId);
|
||||
void AnimTask_InitAttackerFadeFromInvisible(u8 taskId);
|
||||
void AnimTask_MoveAttackerMementoShadow(u8 taskId);
|
||||
void AnimTask_MoveTargetMementoShadow(u8 taskId);
|
||||
void AnimTask_InitMementoShadow(u8 taskId);
|
||||
void sub_80B8664(u8 taskId);
|
||||
void AnimTask_MetallicShine(u8 taskId);
|
||||
void AnimTask_SetGreyscaleOrOriginalPal(u8 taskId);
|
||||
void sub_80B8B38(u8 taskId);
|
||||
void GetIsDoomDesireHitTurn(u8 taskId);
|
||||
|
||||
// flying.c
|
||||
void sub_80B194C(u8 taskId);
|
||||
void AnimTask_AnimateGustTornadoPalette(u8 taskId);
|
||||
void sub_80B1D3C(struct Sprite *sprite);
|
||||
void sub_80B2868(u8 taskId);
|
||||
void AnimTask_DrillPeckHitSplats(u8 taskId);
|
||||
|
||||
// poison.c
|
||||
extern const union AffineAnimCmd *const gAffineAnims_Droplet[];
|
||||
|
||||
// fighting.c
|
||||
void sub_80B1530(u8 taskId);
|
||||
void AnimTask_MoveSkyUppercutBg(u8 taskId);
|
||||
|
||||
// ice.c
|
||||
extern const union AnimCmd *const gAnims_SmallBubblePair[];
|
||||
void AnimTask_Haze1(u8 taskId);
|
||||
void AnimTask_LoadMistTiles(u8 taskId);
|
||||
void AnimTask_Hail1(u8 taskId);
|
||||
void AnimTask_GetRolloutCounter(u8 taskId);
|
||||
|
||||
// electric.c
|
||||
void sub_80AE220(u8 taskId);
|
||||
void sub_80AE540(u8 taskId);
|
||||
void sub_80AE8A0(u8 taskId);
|
||||
void sub_80AEA10(u8 taskId);
|
||||
void sub_80AECE0(u8 taskId);
|
||||
void sub_80AEFA0(u8 taskId);
|
||||
void AnimTask_ElectricBolt(u8 taskId);
|
||||
void AnimTask_ElectricChargingParticles(u8 taskId);
|
||||
void AnimTask_VoltTackleAttackerReappear(u8 taskId);
|
||||
void AnimTask_VoltTackleBolt(u8 taskId);
|
||||
void AnimTask_ShockWaveProgressingBolt(u8 taskId);
|
||||
void AnimTask_ShockWaveLightning(u8 taskId);
|
||||
|
||||
// fire.c
|
||||
extern const union AnimCmd *const gUnknown_83E5D48[];
|
||||
|
||||
void sub_80ACEA4(u8 taskId);
|
||||
void sub_80ADAD8(u8 taskId);
|
||||
extern const union AnimCmd *const gAnims_BasicFire[];
|
||||
void AnimTask_EruptionLaunchRocks(u8 taskId);
|
||||
void AnimTask_ShakeTargetInPattern(u8 taskId);
|
||||
void AnimTask_BlendBackground(u8 taskId);
|
||||
void sub_80AD800(u8 taskId);
|
||||
void AnimTask_MoveHeatWaveTargets(u8 taskId);
|
||||
|
||||
// water.s
|
||||
extern const union AnimCmd *const gUnknown_83E5958[];
|
||||
extern const union AnimCmd *const gUnknown_83E5A78[];
|
||||
// water.c
|
||||
extern const union AnimCmd *const gAnims_WaterMudOrb[];
|
||||
extern const union AnimCmd *const gAnims_WaterBubble[];
|
||||
void AnimWaterPulseRing(struct Sprite *sprite);
|
||||
|
||||
// smokescreen.s
|
||||
// smokescreen.c
|
||||
u8 SmokescreenImpact(s16 x, s16 y, u8 a3);
|
||||
|
||||
// battle_anim_utility_funcs.c
|
||||
@@ -570,25 +574,25 @@ void AnimTask_CloneBattlerSpriteWithBlend(u8 taskId);
|
||||
void AnimTask_SetUpCurseBackground(u8 taskId);
|
||||
void sub_80BB088(u8 taskId);
|
||||
void sub_80BB660(u8 taskId);
|
||||
void sub_80BB7DC(u8 taskId);
|
||||
void sub_80BB82C(u8 taskId);
|
||||
void AnimTask_BlendNonAttackerPalettes(u8 taskId);
|
||||
void AnimTask_StartSlidingBg(u8 taskId);
|
||||
void AnimTask_GetAttackerSide(u8 taskId);
|
||||
void AnimTask_GetTargetSide(u8 taskId);
|
||||
void AnimTask_GetTargetIsAttackerPartner(u8 taskId);
|
||||
void sub_80BB9B0(u8 taskId);
|
||||
void AnimTask_SetAllNonAttackersInvisiblity(u8 taskId);
|
||||
void sub_80BBA20(u8 taskId, s32 unused, u16 arg2, u8 battler1, u8 arg4, u8 arg5, u8 arg6, u8 arg7, const u32 *gfx, const u32 *tilemap, const u32 *palette);
|
||||
void AnimTask_GetBattleTerrain(u8 taskId);
|
||||
void sub_80BBE10(u8 taskId);
|
||||
void sub_80BBE3C(u8 taskId);
|
||||
void sub_80BBE6C(u8 taskId);
|
||||
void sub_80BBF08(u8 taskId);
|
||||
void sub_80BBFA4(u8 taskId);
|
||||
void AnimTask_AllocBackupPalBuffer(u8 taskId);
|
||||
void AnimTask_FreeBackupPalBuffer(u8 taskId);
|
||||
void AnimTask_CopyPalUnfadedToBackup(u8 taskId);
|
||||
void AnimTask_CopyPalUnfadedFromBackup(u8 taskId);
|
||||
void AnimTask_CopyPalFadedToUnfaded(u8 taskId);
|
||||
void AnimTask_IsContest(u8 taskId);
|
||||
void sub_80BC060(u8 taskId);
|
||||
void AnimTask_SetAnimAttackerAndTargetForEffectTgt(u8 taskId);
|
||||
void AnimTask_IsTargetSameSide(u8 taskId);
|
||||
void sub_80BC0DC(u8 taskId);
|
||||
void sub_80BC0FC(u8 taskId);
|
||||
void sub_80BC12C(u8 taskId);
|
||||
void AnimTask_SetAnimTargetToBattlerTarget(u8 taskId);
|
||||
void AnimTask_SetAnimAttackerAndTargetForEffectAtk(u8 taskId);
|
||||
void AnimTask_SetAttackerInvisibleWaitForSignal(u8 taskId);
|
||||
|
||||
// battle_anim_scripts.s
|
||||
extern const u8 *const gBattleAnims_StatusConditions[];
|
||||
|
||||
@@ -4241,6 +4241,7 @@ extern const u32 gBattleAnimBgImage_Cosmic[];
|
||||
extern const u32 gBattleAnimBgImage_InAir[];
|
||||
extern const u32 gBattleAnimBgImage_Aurora[];
|
||||
extern const u32 gBattleAnimBgImage_Fissure[];
|
||||
extern const u32 gBattleAnimBgImage_Surf[];
|
||||
extern const u32 gBattleAnimBgPalette_Dark[];
|
||||
extern const u32 gBattleAnimBgPalette_Ghost[];
|
||||
extern const u32 gBattleAnimBgPalette_Psychic[];
|
||||
@@ -4252,11 +4253,13 @@ extern const u32 gBattleAnimBgPalette_Guillotine[];
|
||||
extern const u32 gBattleAnimBgPalette_Ice[];
|
||||
extern const u32 gBattleAnimBgPalette_Cosmic[];
|
||||
extern const u32 gBattleAnimBgPalette_InAir[];
|
||||
extern const u32 gBattleAnimBgPalette_MuddyWater[];
|
||||
extern const u32 gBattleAnimBgPalette_Sky[];
|
||||
extern const u32 gBattleAnimBgPalette_Aurora[];
|
||||
extern const u32 gBattleAnimBgPalette_Fissure[];
|
||||
extern const u32 gBattleAnimBgPalette_Bug[];
|
||||
extern const u32 gBattleAnimBgPalette_Solarbeam[];
|
||||
extern const u32 gBattleAnimBgPalette_Surf[];
|
||||
extern const u32 gBattleAnimBgTilemap_Dark[];
|
||||
extern const u32 gBattleAnimBgTilemap_Ghost[];
|
||||
extern const u32 gBattleAnimBgTilemap_Psychic[];
|
||||
@@ -4276,6 +4279,9 @@ extern const u32 gBattleAnimBgTilemap_Cosmic[];
|
||||
extern const u32 gBattleAnimBgTilemap_InAir[];
|
||||
extern const u32 gBattleAnimBgTilemap_Aurora[];
|
||||
extern const u32 gBattleAnimBgTilemap_Fissure[];
|
||||
extern const u32 gBattleAnimBgTilemap_SurfOpponent[];
|
||||
extern const u32 gBattleAnimBgTilemap_SurfPlayer[];
|
||||
extern const u32 gBattleAnimBgTilemap_SurfContest[];
|
||||
|
||||
// dark
|
||||
extern const u32 gMetalShineGfx[];
|
||||
|
||||
+1
-7
@@ -90,13 +90,8 @@
|
||||
|
||||
#define RFU_MBOOT_DOWNLOADER_SERIAL_NO 0x0000 // The game serial number of the multi-boot downloader (programs that boot without a Game Pak)
|
||||
|
||||
#if LIBRFU_VERSION >= 1028
|
||||
#define RFU_API_BUFF_SIZE_RAM 0x0e8c // Necessary size for buffer specified by rfu_initializeAPI (fast communication version that operates the library SIO interrupt routines in RAM)
|
||||
#define RFU_API_BUFF_SIZE_ROM 0x052c // Necessary size for buffer specified by rfu_initializeAPI (fast communication version that operates the library SIO interrupt routines in ROM)
|
||||
#else
|
||||
#define RFU_API_BUFF_SIZE_RAM 0x0e64 // Necessary size for buffer specified by rfu_initializeAPI (fast communication version that operates the library SIO interrupt routines in RAM)
|
||||
#define RFU_API_BUFF_SIZE_ROM 0x0504 // Necessary size for buffer specified by rfu_initializeAPI (fast communication version that operates the library SIO interrupt routines in ROM)
|
||||
#endif
|
||||
|
||||
#define RFU_CHILD_MAX 4 // Maximum number of slaves that can be connected to one parent device
|
||||
|
||||
@@ -376,8 +371,7 @@ struct NIComm
|
||||
u16 state; // Communication state of slot
|
||||
u16 failCounter; // Count of failed transmissions/receptions (Count is increased when transmission/reception of data does not succeed within 1PF=16.7 ms)
|
||||
const u8 *now_p[WINDOW_COUNT]; // Address of current send/receive (The data is divided into WINDOW_COUNT blocks and sent in payloadSize units.)
|
||||
// remainSize is u32 in SDK. This is a hack to match ASM
|
||||
s32 remainSize; // Size of remaining communication data
|
||||
u32 remainSize; // Size of remaining communication data
|
||||
u16 errorCode; // Error code
|
||||
u8 bmSlot; // Expresses the current communication slot in bits
|
||||
// (When sending from the Master, because multiple slaves can be specified with bmSlot, communications are terminated based on the failCounter for each child device)
|
||||
|
||||
+2
-2
@@ -162,7 +162,7 @@ SECTIONS {
|
||||
src/item_use.o(.text);
|
||||
src/battle_anim_effects_1.o(.text);
|
||||
src/battle_anim_effects_2.o(.text);
|
||||
asm/water.o(.text);
|
||||
src/water.o(.text);
|
||||
src/fire.o(.text);
|
||||
src/electric.o(.text);
|
||||
src/ice.o(.text);
|
||||
@@ -483,7 +483,7 @@ SECTIONS {
|
||||
src/item_use.o(.rodata);
|
||||
src/battle_anim_effects_1.o(.rodata);
|
||||
src/battle_anim_effects_2.o(.rodata);
|
||||
data/battle_anim_effects_misc.o(.rodata);
|
||||
src/water.o(.rodata);
|
||||
src/fire.o(.rodata);
|
||||
src/electric.o(.rodata);
|
||||
src/ice.o(.rodata);
|
||||
|
||||
@@ -2767,7 +2767,7 @@ static void AnimConstrictBindingStep2(struct Sprite* sprite)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80A2F0C(u8 taskId)
|
||||
void AnimTask_ShrinkTargetCopy(u8 taskId)
|
||||
{
|
||||
u8 spriteId = GetAnimBattlerSpriteId(ANIM_TARGET);
|
||||
|
||||
@@ -3605,7 +3605,7 @@ static void AnimFlyingParticleStep(struct Sprite* sprite)
|
||||
DestroySpriteAndMatrix(sprite);
|
||||
}
|
||||
|
||||
void sub_80A41C4(u8 taskId)
|
||||
void AnimTask_CycleMagicalLeafPal(u8 taskId)
|
||||
{
|
||||
struct Task* task = &gTasks[taskId];
|
||||
|
||||
|
||||
@@ -32,7 +32,7 @@ static void AnimTask_SplashStep(u8);
|
||||
static void AnimTask_GrowAndShrinkStep(u8);
|
||||
static void ThrashMoveMonStep(u8);
|
||||
static void ThrashMoveMon(u8);
|
||||
static void AnimTask_SketchDrawMon(u8);
|
||||
static void AnimTask_SketchDrawMon_Step(u8);
|
||||
static void AnimPencil_Step(struct Sprite *);
|
||||
static void AnimSoftBoiledEgg_Step1(struct Sprite *);
|
||||
static void AnimSoftBoiledEgg_Step2(struct Sprite *);
|
||||
@@ -115,7 +115,7 @@ static const struct SpriteTemplate sUnknown_83E3B30 =
|
||||
.oam = &gOamData_AffineNormal_ObjBlend_64x64,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E7910,
|
||||
.affineAnims = gAffineAnims_Bite,
|
||||
.callback = sub_80A7020,
|
||||
};
|
||||
|
||||
@@ -2347,7 +2347,7 @@ static void ThrashMoveMon(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80A8874(u8 taskId)
|
||||
void AnimTask_SketchDrawMon(u8 taskId)
|
||||
{
|
||||
struct Task* task = &gTasks[taskId];
|
||||
struct ScanlineEffectParams params;
|
||||
@@ -2385,10 +2385,10 @@ void sub_80A8874(u8 taskId)
|
||||
params.initState = 1;
|
||||
params.unused9 = 0;
|
||||
ScanlineEffect_SetParams(params);
|
||||
task->func = AnimTask_SketchDrawMon;
|
||||
task->func = AnimTask_SketchDrawMon_Step;
|
||||
}
|
||||
|
||||
static void AnimTask_SketchDrawMon(u8 taskId)
|
||||
static void AnimTask_SketchDrawMon_Step(u8 taskId)
|
||||
{
|
||||
struct Task* task = &gTasks[taskId];
|
||||
|
||||
@@ -2983,7 +2983,7 @@ void AnimSpeedDust(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80A96B4(u8 taskId)
|
||||
void AnimTask_LoadMusicNotesPals(u8 taskId)
|
||||
{
|
||||
int i;
|
||||
u8 paletteNums[3];
|
||||
@@ -3001,7 +3001,7 @@ void sub_80A96B4(u8 taskId)
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
void sub_80A9760(u8 taskId)
|
||||
void AnimTask_FreeMusicNotesPals(u8 taskId)
|
||||
{
|
||||
int i;
|
||||
|
||||
@@ -3101,7 +3101,7 @@ static void FakeOutStep2(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80A9A20(u8 taskId)
|
||||
void AnimTask_StretchTargetUp(u8 taskId)
|
||||
{
|
||||
u8 spriteId = GetAnimBattlerSpriteId(ANIM_TARGET);
|
||||
|
||||
@@ -3122,7 +3122,7 @@ void sub_80A9A20(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80A9AB0(u8 taskId)
|
||||
void AnimTask_StretchAttackerUp(u8 taskId)
|
||||
{
|
||||
u8 spriteId = GetAnimBattlerSpriteId(ANIM_ATTACKER);
|
||||
|
||||
|
||||
@@ -3571,7 +3571,7 @@ static void sub_80E1AD8(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80E1C48(u8 taskId)
|
||||
void AnimTask_SlideMonForFocusBand(u8 taskId)
|
||||
{
|
||||
gTasks[taskId].data[15] = gBattlerSpriteIds[gBattleAnimAttacker];
|
||||
gTasks[taskId].data[14] = gBattleAnimArgs[0];
|
||||
@@ -3751,7 +3751,7 @@ static void AnimTask_FacadeColorBlendStep(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80E2084(u8 taskId)
|
||||
void AnimTask_StatusClearedEffect(u8 taskId)
|
||||
{
|
||||
sub_80BBA20(taskId, 0, 0x1A0, gBattleAnimAttacker, gBattleAnimArgs[0], 10, 2, 30, gCureBubblesGfx, gCureBubblesTilemap, gCureBubblesPal);
|
||||
}
|
||||
|
||||
@@ -73,7 +73,7 @@ const struct SpriteTemplate gSlideMonToOffsetSpriteTemplate =
|
||||
.callback = SlideMonToOffset,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83D4EB4 =
|
||||
const struct SpriteTemplate gSlideMonToOffsetAndBackSpriteTemplate =
|
||||
{
|
||||
.tileTag = 0,
|
||||
.paletteTag = 0,
|
||||
@@ -620,7 +620,7 @@ static void AnimTask_WindUpLungePart2(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80995FC(u8 taskId)
|
||||
void AnimTask_SlideOffScreen(u8 taskId)
|
||||
{
|
||||
u8 spriteId;
|
||||
|
||||
@@ -772,7 +772,7 @@ static void AnimTask_ScaleMonAndRestoreStep(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_8099980(u8 taskId)
|
||||
void AnimTask_RotateMonSpriteToSide(u8 taskId)
|
||||
{
|
||||
u8 spriteId = GetAnimBattlerSpriteId(gBattleAnimArgs[2]);
|
||||
PrepareBattlerSpriteForRotScale(spriteId, 0);
|
||||
@@ -805,7 +805,7 @@ void sub_8099980(u8 taskId)
|
||||
gTasks[taskId].func = sub_8099B54;
|
||||
}
|
||||
|
||||
void sub_8099A78(u8 taskId)
|
||||
void AnimTask_RotateMonToSideAndRestore(u8 taskId)
|
||||
{
|
||||
u8 spriteId = GetAnimBattlerSpriteId(gBattleAnimArgs[2]);
|
||||
PrepareBattlerSpriteForRotScale(spriteId, 0);
|
||||
@@ -866,7 +866,7 @@ static void sub_8099B54(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_8099BD4(u8 taskId)
|
||||
void AnimTask_ShakeTargetBasedOnMovePowerOrDmg(u8 taskId)
|
||||
{
|
||||
if (gBattleAnimArgs[0] == 0)
|
||||
{
|
||||
|
||||
@@ -1466,7 +1466,7 @@ void obj_delete_but_dont_free_vram(struct Sprite *sprite)
|
||||
DestroySprite(sprite);
|
||||
}
|
||||
|
||||
void sub_8076048(u8 taskId)
|
||||
void AnimTask_AlphaFadeIn(u8 taskId)
|
||||
{
|
||||
s16 v1 = 0, v2 = 0;
|
||||
|
||||
@@ -1584,7 +1584,7 @@ static void AnimTask_BlendMonInAndOutStep(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_8076288(u8 taskId)
|
||||
void AnimTask_BlendPalInAndOutByTag(u8 taskId)
|
||||
{
|
||||
u8 palette = IndexOfSpritePaletteTag(gBattleAnimArgs[0]);
|
||||
|
||||
@@ -2117,7 +2117,7 @@ void sub_8076FD0(struct Sprite *sprite)
|
||||
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
|
||||
}
|
||||
|
||||
void sub_8077030(u8 taskId)
|
||||
void AnimTask_AttackerPunchWithTrace(u8 taskId)
|
||||
{
|
||||
u16 src;
|
||||
u16 dest;
|
||||
@@ -2225,7 +2225,7 @@ static void sub_80772F4(struct Sprite *sprite)
|
||||
DestroyAnimSprite(sprite);
|
||||
}
|
||||
|
||||
void sub_8077350(struct Sprite *sprite)
|
||||
void AnimWeatherBallDown(struct Sprite *sprite)
|
||||
{
|
||||
s32 x;
|
||||
|
||||
|
||||
@@ -66,7 +66,7 @@ static void sub_80DCEE4(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void mas_80DCF38(u8 taskId)
|
||||
void SoundTask_LoopSEAdjustPanning(u8 taskId)
|
||||
{
|
||||
u16 songId = gBattleAnimArgs[0];
|
||||
s8 targetPan = gBattleAnimArgs[2];
|
||||
@@ -116,7 +116,7 @@ static void sub_80DCFE8(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80DD06C(u8 taskId)
|
||||
void SoundTask_PlayCryHighPitch(u8 taskId)
|
||||
{
|
||||
u16 species = SPECIES_NONE;
|
||||
u8 battlerId;
|
||||
@@ -147,7 +147,7 @@ void sub_80DD06C(u8 taskId)
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
void sub_80DD148(u8 taskId)
|
||||
void SoundTask_PlayDoubleCry(u8 taskId)
|
||||
{
|
||||
u16 species = SPECIES_NONE;
|
||||
u8 battlerId;
|
||||
@@ -214,7 +214,7 @@ static void sub_80DD270(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80DD2F4(u8 taskId)
|
||||
void SoundTask_WaitForCry(u8 taskId)
|
||||
{
|
||||
if (gTasks[taskId].data[9] < 2)
|
||||
++gTasks[taskId].data[9];
|
||||
@@ -259,7 +259,7 @@ static void sub_80DD390(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80DD3DC(u8 taskId)
|
||||
void SoundTask_PlaySE1WithPanning(u8 taskId)
|
||||
{
|
||||
u16 songId = gBattleAnimArgs[0];
|
||||
s8 pan = BattleAnimAdjustPanning(gBattleAnimArgs[1]);
|
||||
@@ -268,7 +268,7 @@ void sub_80DD3DC(u8 taskId)
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
void sub_80DD410(u8 taskId)
|
||||
void SoundTask_PlaySE2WithPanning(u8 taskId)
|
||||
{
|
||||
u16 songId = gBattleAnimArgs[0];
|
||||
s8 pan = BattleAnimAdjustPanning(gBattleAnimArgs[1]);
|
||||
@@ -277,7 +277,7 @@ void sub_80DD410(u8 taskId)
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
void sub_80DD444(u8 taskId)
|
||||
void SoundTask_AdjustPanningVar(u8 taskId)
|
||||
{
|
||||
s8 targetPan = gBattleAnimArgs[1];
|
||||
s8 panIncrement = gBattleAnimArgs[2];
|
||||
|
||||
+12
-12
@@ -397,7 +397,7 @@ static const union AnimCmd *const sSpriteAnimTable_840C20C[] =
|
||||
sUnknown_840C204,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_840C210 =
|
||||
const struct SpriteTemplate gSafariRockTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_ROCKS,
|
||||
.paletteTag = ANIM_TAG_ROCKS,
|
||||
@@ -534,7 +534,7 @@ void sub_80EEFC8(u8 *paletteId1, u8 *paletteId2, u8 battler)
|
||||
gSprites[spriteId2].oam.paletteNum = *paletteId2;
|
||||
}
|
||||
|
||||
void sub_80EF0B4(u8 taskId)
|
||||
void AnimTask_LoadHealthboxPalsForLevelUp(u8 taskId)
|
||||
{
|
||||
u8 paletteId1, paletteId2;
|
||||
|
||||
@@ -560,13 +560,13 @@ void sub_80EF0E0(u8 battler)
|
||||
gSprites[spriteId2].oam.paletteNum = paletteId2;
|
||||
}
|
||||
|
||||
void sub_80EF180(u8 taskId)
|
||||
void AnimTask_FreeHealthboxPalsForLevelUp(u8 taskId)
|
||||
{
|
||||
sub_80EF0E0(gBattleAnimAttacker);
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
void sub_80EF1A0(u8 taskId)
|
||||
void AnimTask_FlashHealthboxOnLevelUp(u8 taskId)
|
||||
{
|
||||
gTasks[taskId].data[10] = gBattleAnimArgs[0];
|
||||
gTasks[taskId].data[11] = gBattleAnimArgs[1];
|
||||
@@ -610,7 +610,7 @@ static void sub_80EF1CC(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80EF298(u8 taskId)
|
||||
void AnimTask_SwitchOutShrinkMon(u8 taskId)
|
||||
{
|
||||
u8 spriteId;
|
||||
|
||||
@@ -637,7 +637,7 @@ void sub_80EF298(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80EF344(u8 taskId)
|
||||
void AnimTask_SwitchOutBallEffect(u8 taskId)
|
||||
{
|
||||
u8 spriteId;
|
||||
u16 ball;
|
||||
@@ -672,7 +672,7 @@ void sub_80EF344(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80EF490(u8 taskId)
|
||||
void AnimTask_LoadBallGfx(u8 taskId)
|
||||
{
|
||||
u8 ballId = ItemIdToBallId(gLastUsedItem);
|
||||
|
||||
@@ -680,7 +680,7 @@ void sub_80EF490(u8 taskId)
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
void sub_80EF4B8(u8 taskId)
|
||||
void AnimTask_FreeBallGfx(u8 taskId)
|
||||
{
|
||||
u8 ballId = ItemIdToBallId(gLastUsedItem);
|
||||
|
||||
@@ -738,7 +738,7 @@ u8 ItemIdToBallId(u16 ballItem)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80EF5AC(u8 taskId)
|
||||
void AnimTask_ThrowBall(u8 taskId)
|
||||
{
|
||||
u8 ballId;
|
||||
u8 spriteId;
|
||||
@@ -762,7 +762,7 @@ static void sub_80EF698(u8 taskId)
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
void sub_80EF6D4(u8 taskId)
|
||||
void AnimTask_ThrowBallSpecial(u8 taskId)
|
||||
{
|
||||
int x, y;
|
||||
u8 ballId;
|
||||
@@ -1942,7 +1942,7 @@ static void sub_80F13C0(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80F1420(u8 taskId)
|
||||
void AnimTask_SwapMonSpriteToFromSubstitute(u8 taskId)
|
||||
{
|
||||
u8 spriteId;
|
||||
u32 x;
|
||||
@@ -2000,7 +2000,7 @@ void sub_80F1420(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80F15C8(u8 taskId)
|
||||
void AnimTask_SubstituteFadeToInvisible(u8 taskId)
|
||||
{
|
||||
u8 spriteId;
|
||||
|
||||
|
||||
@@ -68,7 +68,7 @@ static const union AnimCmd *const sSpriteAnimTable_83BF430[] =
|
||||
sUnknown_83BF428
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gSpriteTemplate_83BF434 =
|
||||
const struct SpriteTemplate gWeatherBallUpSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_WEATHER_BALL,
|
||||
.paletteTag = ANIM_TAG_WEATHER_BALL,
|
||||
@@ -79,7 +79,7 @@ const struct SpriteTemplate gSpriteTemplate_83BF434 =
|
||||
.callback = sub_807729C,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gSpriteTemplate_83BF44C =
|
||||
const struct SpriteTemplate gWeatherBallNormalDownSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_WEATHER_BALL,
|
||||
.paletteTag = ANIM_TAG_WEATHER_BALL,
|
||||
@@ -87,7 +87,7 @@ const struct SpriteTemplate gSpriteTemplate_83BF44C =
|
||||
.anims = sSpriteAnimTable_83BF430,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_8077350,
|
||||
.callback = AnimWeatherBallDown,
|
||||
};
|
||||
|
||||
static const union AnimCmd sUnknown_83BF464[] =
|
||||
@@ -343,7 +343,7 @@ static void sub_8078380(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80783FC(u8 taskId)
|
||||
void AnimTask_FrozenIceCube(u8 taskId)
|
||||
{
|
||||
s16 x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) - 32;
|
||||
s16 y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) - 36;
|
||||
|
||||
@@ -577,7 +577,7 @@ static void sub_80BB4B8(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80BB660(u8 taskId)
|
||||
void AnimTask_Flash(u8 taskId)
|
||||
{
|
||||
u32 selectedPalettes = SelectBattlerSpritePalettes(1, 1, 1, 1);
|
||||
|
||||
@@ -646,7 +646,7 @@ static void sub_80BB790(u32 selectedPalettes, u16 color)
|
||||
gPlttBufferFaded[curOffset] = color;
|
||||
}
|
||||
|
||||
void sub_80BB7DC(u8 taskId)
|
||||
void AnimTask_BlendNonAttackerPalettes(u8 taskId)
|
||||
{
|
||||
s32 j;
|
||||
u32 battler, selectedPalettes = 0;
|
||||
@@ -659,7 +659,7 @@ void sub_80BB7DC(u8 taskId)
|
||||
StartBlendAnimSpriteColor(taskId, selectedPalettes);
|
||||
}
|
||||
|
||||
void sub_80BB82C(u8 taskId)
|
||||
void AnimTask_StartSlidingBg(u8 taskId)
|
||||
{
|
||||
u8 newTaskId;
|
||||
|
||||
@@ -712,7 +712,7 @@ void AnimTask_GetTargetIsAttackerPartner(u8 taskId)
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
void sub_80BB9B0(u8 taskId)
|
||||
void AnimTask_SetAllNonAttackersInvisiblity(u8 taskId)
|
||||
{
|
||||
u16 battler;
|
||||
|
||||
@@ -837,19 +837,19 @@ void AnimTask_GetBattleTerrain(u8 taskId)
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
void sub_80BBE10(u8 taskId)
|
||||
void AnimTask_AllocBackupPalBuffer(u8 taskId)
|
||||
{
|
||||
gMonSpritesGfxPtr->field_17C = AllocZeroed(0x2000);
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
void sub_80BBE3C(u8 taskId)
|
||||
void AnimTask_FreeBackupPalBuffer(u8 taskId)
|
||||
{
|
||||
FREE_AND_SET_NULL(gMonSpritesGfxPtr->field_17C);
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
void sub_80BBE6C(u8 taskId)
|
||||
void AnimTask_CopyPalUnfadedToBackup(u8 taskId)
|
||||
{
|
||||
u32 selectedPalettes;
|
||||
s32 paletteIndex = 0;
|
||||
@@ -867,7 +867,7 @@ void sub_80BBE6C(u8 taskId)
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
void sub_80BBF08(u8 taskId)
|
||||
void AnimTask_CopyPalUnfadedFromBackup(u8 taskId)
|
||||
{
|
||||
u32 selectedPalettes;
|
||||
s32 paletteIndex = 0;
|
||||
@@ -885,7 +885,7 @@ void sub_80BBF08(u8 taskId)
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
void sub_80BBFA4(u8 taskId)
|
||||
void AnimTask_CopyPalFadedToUnfaded(u8 taskId)
|
||||
{
|
||||
u32 selectedPalettes;
|
||||
s32 paletteIndex = 0;
|
||||
@@ -912,7 +912,7 @@ void AnimTask_IsContest(u8 taskId)
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
void sub_80BC060(u8 taskId)
|
||||
void AnimTask_SetAnimAttackerAndTargetForEffectTgt(u8 taskId)
|
||||
{
|
||||
gBattleAnimAttacker = gBattlerTarget;
|
||||
gBattleAnimTarget = gEffectBattler;
|
||||
@@ -928,20 +928,20 @@ void AnimTask_IsTargetSameSide(u8 taskId)
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
void sub_80BC0DC(u8 taskId)
|
||||
void AnimTask_SetAnimTargetToBattlerTarget(u8 taskId)
|
||||
{
|
||||
gBattleAnimTarget = gBattlerTarget;
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
void sub_80BC0FC(u8 taskId)
|
||||
void AnimTask_SetAnimAttackerAndTargetForEffectAtk(u8 taskId)
|
||||
{
|
||||
gBattleAnimAttacker = gBattlerAttacker;
|
||||
gBattleAnimTarget = gEffectBattler;
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
void sub_80BC12C(u8 taskId)
|
||||
void AnimTask_SetAttackerInvisibleWaitForSignal(u8 taskId)
|
||||
{
|
||||
if (IsContest())
|
||||
{
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
#include <limits.h>
|
||||
#include "global.h"
|
||||
#include "bg.h"
|
||||
#include "dma3.h"
|
||||
@@ -1136,20 +1137,19 @@ void CopyTileMapEntry(const u16 *src, u16 *dest, s32 palette1, s32 tileOffset, s
|
||||
{
|
||||
u16 var;
|
||||
|
||||
if (palette1 == 16)
|
||||
goto CASE_16;
|
||||
switch (palette1)
|
||||
{
|
||||
case 0 ... 16:
|
||||
case 0 ... 15:
|
||||
var = ((*src + tileOffset) & 0xFFF) + ((palette1 + palette2) << 12);
|
||||
break;
|
||||
CASE_16:
|
||||
case 16:
|
||||
var = *dest;
|
||||
var &= 0xFC00;
|
||||
var += palette2 << 12;
|
||||
var |= (*src + tileOffset) & 0x3FF;
|
||||
break;
|
||||
default:
|
||||
case 17 ... INT_MAX:
|
||||
var = *src + tileOffset + (palette2 << 12);
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -3,90 +3,90 @@
|
||||
#include "gpu_regs.h"
|
||||
#include "trig.h"
|
||||
|
||||
static void sub_80B3FAC(struct Sprite *sprite);
|
||||
static void sub_80B407C(struct Sprite *sprite);
|
||||
static void AnimMegahornHorn(struct Sprite *sprite);
|
||||
static void AnimLeechLifeNeedle(struct Sprite *sprite);
|
||||
static void AnimTranslateWebThread(struct Sprite *sprite);
|
||||
static void sub_80B41F8(struct Sprite *sprite);
|
||||
static void sub_80B42C0(struct Sprite *sprite);
|
||||
static void AnimStringWrap(struct Sprite *sprite);
|
||||
static void AnimSpiderWeb(struct Sprite *sprite);
|
||||
static void AnimTranslateStinger(struct Sprite *sprite);
|
||||
static void AnimMissileArc(struct Sprite *sprite);
|
||||
static void sub_80B45D8(struct Sprite *sprite);
|
||||
static void AnimTailGlowOrb(struct Sprite *sprite);
|
||||
static void sub_80B41C0(struct Sprite *sprite);
|
||||
static void sub_80B4274(struct Sprite *sprite);
|
||||
static void sub_80B42E8(struct Sprite *sprite);
|
||||
static void sub_80B4344(struct Sprite *sprite);
|
||||
static void AnimMissileArcStep(struct Sprite *sprite);
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E71E8[] =
|
||||
static const union AffineAnimCmd sAffineAnim_MegahornHorn_0[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x100, 0x100, 30, 0),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E71F8[] =
|
||||
static const union AffineAnimCmd sAffineAnim_MegahornHorn_1[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x100, 0x100, -99, 0),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E7208[] =
|
||||
static const union AffineAnimCmd sAffineAnim_MegahornHorn_2[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x100, 0x100, 94, 0),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E7218[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_MegahornHorn[] =
|
||||
{
|
||||
gUnknown_83E71E8,
|
||||
gUnknown_83E71F8,
|
||||
gUnknown_83E7208,
|
||||
sAffineAnim_MegahornHorn_0,
|
||||
sAffineAnim_MegahornHorn_1,
|
||||
sAffineAnim_MegahornHorn_2,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7224 =
|
||||
const struct SpriteTemplate gMegahornHornSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_HORN_HIT_2,
|
||||
.paletteTag = ANIM_TAG_HORN_HIT_2,
|
||||
.oam = &gOamData_AffineDouble_ObjNormal_32x16,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E7218,
|
||||
.callback = sub_80B3FAC,
|
||||
.affineAnims = sAffineAnims_MegahornHorn,
|
||||
.callback = AnimMegahornHorn,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E723C[] =
|
||||
static const union AffineAnimCmd sAffineAnim_LeechLifeNeedle_0[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x0, 0x0, -33, 1),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E724C[] =
|
||||
static const union AffineAnimCmd sAffineAnim_LeechLifeNeedle_1[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x0, 0x0, 96, 1),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E725C[] =
|
||||
static const union AffineAnimCmd sAffineAnim_LeechLifeNeedle_2[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x0, 0x0, -96, 1),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E726C[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_LeechLifeNeedle[] =
|
||||
{
|
||||
gUnknown_83E723C,
|
||||
gUnknown_83E724C,
|
||||
gUnknown_83E725C,
|
||||
sAffineAnim_LeechLifeNeedle_0,
|
||||
sAffineAnim_LeechLifeNeedle_1,
|
||||
sAffineAnim_LeechLifeNeedle_2,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7278 =
|
||||
const struct SpriteTemplate gLeechLifeNeedleSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_NEEDLE,
|
||||
.paletteTag = ANIM_TAG_NEEDLE,
|
||||
.oam = &gOamData_AffineNormal_ObjNormal_16x16,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E726C,
|
||||
.callback = sub_80B407C,
|
||||
.affineAnims = sAffineAnims_LeechLifeNeedle,
|
||||
.callback = AnimLeechLifeNeedle,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gWebThreadSpriteTemplate =
|
||||
@@ -100,7 +100,7 @@ const struct SpriteTemplate gWebThreadSpriteTemplate =
|
||||
.callback = AnimTranslateWebThread,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E72A8 =
|
||||
const struct SpriteTemplate gStringWrapSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_STRING,
|
||||
.paletteTag = ANIM_TAG_STRING,
|
||||
@@ -108,19 +108,19 @@ const struct SpriteTemplate gUnknown_83E72A8 =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B41F8,
|
||||
.callback = AnimStringWrap,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E72C0[] =
|
||||
static const union AffineAnimCmd sAffineAnim_SpiderWeb[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0),
|
||||
AFFINEANIMCMD_FRAME(0x6, 0x6, 0, 1),
|
||||
AFFINEANIMCMD_JUMP(1),
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E72D8[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_SpiderWeb[] =
|
||||
{
|
||||
gUnknown_83E72C0,
|
||||
sAffineAnim_SpiderWeb,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gSpiderWebSpriteTemplate =
|
||||
@@ -130,8 +130,8 @@ const struct SpriteTemplate gSpiderWebSpriteTemplate =
|
||||
.oam = &gOamData_AffineDouble_ObjBlend_64x64,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E72D8,
|
||||
.callback = sub_80B42C0,
|
||||
.affineAnims = sAffineAnims_SpiderWeb,
|
||||
.callback = AnimSpiderWeb,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gLinearStingerSpriteTemplate =
|
||||
@@ -167,7 +167,7 @@ const struct SpriteTemplate gIcicleSpearSpriteTemplate =
|
||||
.callback = AnimMissileArc,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E733C[] =
|
||||
static const union AffineAnimCmd sAffineAnim_TailGlowOrb[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0),
|
||||
AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 18),
|
||||
@@ -178,23 +178,23 @@ static const union AffineAnimCmd gUnknown_83E733C[] =
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E7374[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_TailGlowOrb[] =
|
||||
{
|
||||
gUnknown_83E733C,
|
||||
sAffineAnim_TailGlowOrb,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7378 =
|
||||
const struct SpriteTemplate gTailGlowOrbSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_CIRCLE_OF_LIGHT,
|
||||
.paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT,
|
||||
.oam = &gOamData_AffineNormal_ObjBlend_64x64,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E7374,
|
||||
.callback = sub_80B45D8,
|
||||
.affineAnims = sAffineAnims_TailGlowOrb,
|
||||
.callback = AnimTailGlowOrb,
|
||||
};
|
||||
|
||||
static void sub_80B3FAC(struct Sprite *sprite)
|
||||
static void AnimMegahornHorn(struct Sprite *sprite)
|
||||
{
|
||||
if (IsContest())
|
||||
{
|
||||
@@ -219,7 +219,7 @@ static void sub_80B3FAC(struct Sprite *sprite)
|
||||
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
|
||||
}
|
||||
|
||||
static void sub_80B407C(struct Sprite *sprite)
|
||||
static void AnimLeechLifeNeedle(struct Sprite *sprite)
|
||||
{
|
||||
if (IsContest())
|
||||
{
|
||||
@@ -280,7 +280,7 @@ static void sub_80B41C0(struct Sprite *sprite)
|
||||
sprite->data[6] = (sprite->data[6] + 13) & 0xFF;
|
||||
}
|
||||
|
||||
static void sub_80B41F8(struct Sprite *sprite)
|
||||
static void AnimStringWrap(struct Sprite *sprite)
|
||||
{
|
||||
SetAverageBattlerPositions(gBattleAnimTarget, 0, &sprite->pos1.x, &sprite->pos1.y);
|
||||
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
|
||||
@@ -306,7 +306,7 @@ static void sub_80B4274(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_80B42C0(struct Sprite *sprite)
|
||||
static void AnimSpiderWeb(struct Sprite *sprite)
|
||||
{
|
||||
SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT2_ALL | BLDCNT_EFFECT_BLEND);
|
||||
SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(16, 0));
|
||||
@@ -445,7 +445,7 @@ static void AnimMissileArcStep(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_80B45D8(struct Sprite *sprite)
|
||||
static void AnimTailGlowOrb(struct Sprite *sprite)
|
||||
{
|
||||
if (gBattleAnimArgs[0] == 0)
|
||||
{
|
||||
|
||||
+58
-58
@@ -7,11 +7,11 @@
|
||||
#include "util.h"
|
||||
|
||||
static void sub_80B7ACC(struct Sprite *sprite);
|
||||
static void sub_80B7BD4(struct Sprite *sprite);
|
||||
static void sub_80B7C88(struct Sprite *sprite);
|
||||
static void sub_80B86B0(struct Sprite *sprite);
|
||||
static void sub_80B7954(u8 taskId);
|
||||
static void sub_80B7A14(u8 taskId);
|
||||
static void AnimBite(struct Sprite *sprite);
|
||||
static void AnimTearDrop(struct Sprite *sprite);
|
||||
static void AnimClawSlash(struct Sprite *sprite);
|
||||
static void AnimTask_AttackerFadeToInvisible_Step(u8 taskId);
|
||||
static void AnimTask_AttackerFadeFromInvisible_Step(u8 taskId);
|
||||
static void sub_80B7B48(struct Sprite *sprite);
|
||||
static void sub_80B7C10(struct Sprite *sprite);
|
||||
static void sub_80B7C50(struct Sprite *sprite);
|
||||
@@ -33,120 +33,120 @@ const struct SpriteTemplate gUnknown_83E7878 =
|
||||
.callback = sub_80B7ACC,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E7890[] =
|
||||
static const union AffineAnimCmd sAffineAnim_Bite_0[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 1),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E78A0[] =
|
||||
static const union AffineAnimCmd sAffineAnim_Bite_1[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x0, 0x0, 32, 1),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E78B0[] =
|
||||
static const union AffineAnimCmd sAffineAnim_Bite_2[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x0, 0x0, 64, 1),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E78C0[] =
|
||||
static const union AffineAnimCmd sAffineAnim_Bite_3[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x0, 0x0, 96, 1),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E78D0[] =
|
||||
static const union AffineAnimCmd sAffineAnim_Bite_4[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x0, 0x0, -128, 1),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E78E0[] =
|
||||
static const union AffineAnimCmd sAffineAnim_Bite_5[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x0, 0x0, -96, 1),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E78F0[] =
|
||||
static const union AffineAnimCmd sAffineAnim_Bite_6[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x0, 0x0, -64, 1),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E7900[] =
|
||||
static const union AffineAnimCmd sAffineAnim_Bite_7[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x0, 0x0, -32, 1),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
const union AffineAnimCmd *const gUnknown_83E7910[] =
|
||||
const union AffineAnimCmd *const gAffineAnims_Bite[] =
|
||||
{
|
||||
gUnknown_83E7890,
|
||||
gUnknown_83E78A0,
|
||||
gUnknown_83E78B0,
|
||||
gUnknown_83E78C0,
|
||||
gUnknown_83E78D0,
|
||||
gUnknown_83E78E0,
|
||||
gUnknown_83E78F0,
|
||||
gUnknown_83E7900,
|
||||
sAffineAnim_Bite_0,
|
||||
sAffineAnim_Bite_1,
|
||||
sAffineAnim_Bite_2,
|
||||
sAffineAnim_Bite_3,
|
||||
sAffineAnim_Bite_4,
|
||||
sAffineAnim_Bite_5,
|
||||
sAffineAnim_Bite_6,
|
||||
sAffineAnim_Bite_7,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7930 =
|
||||
const struct SpriteTemplate gSharpTeethSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_SHARP_TEETH,
|
||||
.paletteTag = ANIM_TAG_SHARP_TEETH,
|
||||
.oam = &gOamData_AffineNormal_ObjBlend_64x64,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E7910,
|
||||
.callback = sub_80B7BD4,
|
||||
.affineAnims = gAffineAnims_Bite,
|
||||
.callback = AnimBite,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7948 =
|
||||
const struct SpriteTemplate gClampJawSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_CLAMP,
|
||||
.paletteTag = ANIM_TAG_CLAMP,
|
||||
.oam = &gOamData_AffineNormal_ObjBlend_64x64,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E7910,
|
||||
.callback = sub_80B7BD4,
|
||||
.affineAnims = gAffineAnims_Bite,
|
||||
.callback = AnimBite,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E7960[] =
|
||||
static const union AffineAnimCmd sAffineAnim_TearDrop_0[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0xC0, 0xC0, 80, 0),
|
||||
AFFINEANIMCMD_FRAME(0x0, 0x0, -2, 8),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E7978[] =
|
||||
static const union AffineAnimCmd sAffineAnim_TearDrop_1[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0xC0, 0xC0, -80, 0),
|
||||
AFFINEANIMCMD_FRAME(0x0, 0x0, 2, 8),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E7990[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_TearDrop[] =
|
||||
{
|
||||
gUnknown_83E7960,
|
||||
gUnknown_83E7978,
|
||||
sAffineAnim_TearDrop_0,
|
||||
sAffineAnim_TearDrop_1,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7998 =
|
||||
const struct SpriteTemplate gTearDropSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_SMALL_BUBBLES,
|
||||
.paletteTag = ANIM_TAG_SMALL_BUBBLES,
|
||||
.oam = &gOamData_AffineNormal_ObjNormal_16x16,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E7990,
|
||||
.callback = sub_80B7C88,
|
||||
.affineAnims = sAffineAnims_TearDrop,
|
||||
.callback = AnimTearDrop,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E79B0[] =
|
||||
static const union AnimCmd sAnim_ClawSlash_0[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 4),
|
||||
ANIMCMD_FRAME(16, 4),
|
||||
@@ -156,7 +156,7 @@ static const union AnimCmd gUnknown_83E79B0[] =
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E79C8[] =
|
||||
static const union AnimCmd sAnim_ClawSlash_1[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 4, .hFlip = TRUE),
|
||||
ANIMCMD_FRAME(16, 4, .hFlip = TRUE),
|
||||
@@ -166,24 +166,24 @@ static const union AnimCmd gUnknown_83E79C8[] =
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E79E0[] =
|
||||
static const union AnimCmd *const sAnims_ClawSlash[] =
|
||||
{
|
||||
gUnknown_83E79B0,
|
||||
gUnknown_83E79C8,
|
||||
sAnim_ClawSlash_0,
|
||||
sAnim_ClawSlash_1,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E79E8 =
|
||||
const struct SpriteTemplate gClawSlashSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_CLAW_SLASH,
|
||||
.paletteTag = ANIM_TAG_CLAW_SLASH,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E79E0,
|
||||
.anims = sAnims_ClawSlash,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B86B0,
|
||||
.callback = AnimClawSlash,
|
||||
};
|
||||
|
||||
void sub_80B78E0(u8 taskId)
|
||||
void AnimTask_AttackerFadeToInvisible(u8 taskId)
|
||||
{
|
||||
s32 battler;
|
||||
|
||||
@@ -195,10 +195,10 @@ void sub_80B78E0(u8 taskId)
|
||||
SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT2_ALL | BLDCNT_EFFECT_BLEND | BLDCNT_TGT1_BG1);
|
||||
else
|
||||
SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT2_ALL | BLDCNT_EFFECT_BLEND | BLDCNT_TGT1_BG2);
|
||||
gTasks[taskId].func = sub_80B7954;
|
||||
gTasks[taskId].func = AnimTask_AttackerFadeToInvisible_Step;
|
||||
}
|
||||
|
||||
static void sub_80B7954(u8 taskId)
|
||||
static void AnimTask_AttackerFadeToInvisible_Step(u8 taskId)
|
||||
{
|
||||
u8 blendA = gTasks[taskId].data[1] >> 8;
|
||||
u8 blendB = gTasks[taskId].data[1];
|
||||
@@ -222,15 +222,15 @@ static void sub_80B7954(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80B79DC(u8 taskId)
|
||||
void AnimTask_AttackerFadeFromInvisible(u8 taskId)
|
||||
{
|
||||
gTasks[taskId].data[0] = gBattleAnimArgs[0];
|
||||
gTasks[taskId].data[1] = BLDALPHA_BLEND(0, 16);
|
||||
gTasks[taskId].func = sub_80B7A14;
|
||||
gTasks[taskId].func = AnimTask_AttackerFadeFromInvisible_Step;
|
||||
SetGpuReg(REG_OFFSET_BLDALPHA, gTasks[taskId].data[1]);
|
||||
}
|
||||
|
||||
static void sub_80B7A14(u8 taskId)
|
||||
static void AnimTask_AttackerFadeFromInvisible_Step(u8 taskId)
|
||||
{
|
||||
u8 blendA = gTasks[taskId].data[1] >> 8;
|
||||
u8 blendB = gTasks[taskId].data[1];
|
||||
@@ -255,7 +255,7 @@ static void sub_80B7A14(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80B7A80(u8 taskId)
|
||||
void AnimTask_InitAttackerFadeFromInvisible(u8 taskId)
|
||||
{
|
||||
SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(0, 16));
|
||||
if (GetBattlerSpriteBGPriorityRank(gBattleAnimAttacker) == 1)
|
||||
@@ -306,7 +306,7 @@ static void sub_80B7B48(struct Sprite *sprite)
|
||||
DestroyAnimSprite(sprite);
|
||||
}
|
||||
|
||||
static void sub_80B7BD4(struct Sprite *sprite)
|
||||
static void AnimBite(struct Sprite *sprite)
|
||||
{
|
||||
sprite->pos1.x += gBattleAnimArgs[0];
|
||||
sprite->pos1.y += gBattleAnimArgs[1];
|
||||
@@ -337,7 +337,7 @@ static void sub_80B7C50(struct Sprite *sprite)
|
||||
DestroySpriteAndMatrix(sprite);
|
||||
}
|
||||
|
||||
static void sub_80B7C88(struct Sprite *sprite)
|
||||
static void AnimTearDrop(struct Sprite *sprite)
|
||||
{
|
||||
u8 battler;
|
||||
s8 xOffset;
|
||||
@@ -385,7 +385,7 @@ static void sub_80B7D88(struct Sprite *sprite)
|
||||
DestroySpriteAndMatrix(sprite);
|
||||
}
|
||||
|
||||
void sub_80B7DA4(u8 taskId)
|
||||
void AnimTask_MoveAttackerMementoShadow(u8 taskId)
|
||||
{
|
||||
struct ScanlineEffectParams scanlineParams;
|
||||
struct BattleAnimBgData animBg;
|
||||
@@ -502,7 +502,7 @@ static void sub_80B7F58(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80B8070(u8 taskId)
|
||||
void AnimTask_MoveTargetMementoShadow(u8 taskId)
|
||||
{
|
||||
struct BattleAnimBgData animBg;
|
||||
struct ScanlineEffectParams scanlineParams;
|
||||
@@ -724,7 +724,7 @@ static void sub_80B856C(u8 priority)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80B85B8(u8 taskId)
|
||||
void AnimTask_InitMementoShadow(u8 taskId)
|
||||
{
|
||||
bool8 toBG2 = GetBattlerSpriteBGPriorityRank(gBattleAnimAttacker) ^ 1 ? TRUE : FALSE;
|
||||
|
||||
@@ -748,7 +748,7 @@ void sub_80B8664(u8 taskId)
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
static void sub_80B86B0(struct Sprite *sprite)
|
||||
static void AnimClawSlash(struct Sprite *sprite)
|
||||
{
|
||||
sprite->pos1.x += gBattleAnimArgs[0];
|
||||
sprite->pos1.y += gBattleAnimArgs[1];
|
||||
@@ -910,7 +910,7 @@ void AnimTask_SetGreyscaleOrOriginalPal(u8 taskId)
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
void sub_80B8B38(u8 taskId)
|
||||
void GetIsDoomDesireHitTurn(u8 taskId)
|
||||
{
|
||||
if (gAnimMoveTurn < 2)
|
||||
gBattleAnimArgs[7] = 0;
|
||||
|
||||
+47
-47
@@ -5,10 +5,10 @@
|
||||
#include "trig.h"
|
||||
|
||||
static void sub_80B725C(struct Sprite *sprite);
|
||||
static void sub_80B741C(struct Sprite *sprite);
|
||||
static void sub_80B73AC(struct Sprite *sprite);
|
||||
static void sub_80B7448(struct Sprite *sprite);
|
||||
static void sub_80B77E4(struct Sprite *sprite);
|
||||
static void AnimDragonFireToTarget(struct Sprite *sprite);
|
||||
static void AnimDragonRageFirePlume(struct Sprite *sprite);
|
||||
static void AnimDragonDanceOrb(struct Sprite *sprite);
|
||||
static void AnimOverheatFlame(struct Sprite *sprite);
|
||||
static void sub_80B74D8(struct Sprite *sprite);
|
||||
static void sub_80B76B0(u8 taskId);
|
||||
static void sub_80B776C(struct Task *task);
|
||||
@@ -31,7 +31,7 @@ static const union AnimCmd *const gUnknown_83E7728[] =
|
||||
gUnknown_83E7710,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E772C =
|
||||
const struct SpriteTemplate gOutrageFlameSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_SMALL_EMBER,
|
||||
.paletteTag = ANIM_TAG_SMALL_EMBER,
|
||||
@@ -42,7 +42,7 @@ const struct SpriteTemplate gUnknown_83E772C =
|
||||
.callback = sub_80B725C,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E7744[] =
|
||||
static const union AnimCmd sAnim_DragonBreathFire_0[] =
|
||||
{
|
||||
ANIMCMD_FRAME(16, 3),
|
||||
ANIMCMD_FRAME(32, 3),
|
||||
@@ -50,7 +50,7 @@ static const union AnimCmd gUnknown_83E7744[] =
|
||||
ANIMCMD_JUMP(0),
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E7754[] =
|
||||
static const union AnimCmd sAnim_DragonBreathFire_1[] =
|
||||
{
|
||||
ANIMCMD_FRAME(16, 3, .vFlip = TRUE, .hFlip = TRUE),
|
||||
ANIMCMD_FRAME(32, 3, .vFlip = TRUE, .hFlip = TRUE),
|
||||
@@ -58,44 +58,44 @@ static const union AnimCmd gUnknown_83E7754[] =
|
||||
ANIMCMD_JUMP(0),
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E7764[] =
|
||||
static const union AnimCmd *const sAnims_DragonBreathFire[] =
|
||||
{
|
||||
gUnknown_83E7744,
|
||||
gUnknown_83E7754,
|
||||
sAnim_DragonBreathFire_0,
|
||||
sAnim_DragonBreathFire_1,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E776C[] =
|
||||
static const union AffineAnimCmd sAffineAnim_DragonBreathFire_0[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x50, 0x50, 127, 0),
|
||||
AFFINEANIMCMD_FRAME(0xD, 0xD, 0, 100),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E7784[] =
|
||||
static const union AffineAnimCmd sAffineAnim_DragonBreathFire_1[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x50, 0x50, 0, 0),
|
||||
AFFINEANIMCMD_FRAME(0xD, 0xD, 0, 100),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E779C[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_DragonBreathFire[] =
|
||||
{
|
||||
gUnknown_83E776C,
|
||||
gUnknown_83E7784,
|
||||
sAffineAnim_DragonBreathFire_0,
|
||||
sAffineAnim_DragonBreathFire_1,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E77A4 =
|
||||
const struct SpriteTemplate gDragonBreathFireSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_SMALL_EMBER,
|
||||
.paletteTag = ANIM_TAG_SMALL_EMBER,
|
||||
.oam = &gOamData_AffineDouble_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E7764,
|
||||
.anims = sAnims_DragonBreathFire,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E779C,
|
||||
.callback = sub_80B741C,
|
||||
.affineAnims = sAffineAnims_DragonBreathFire,
|
||||
.callback = AnimDragonFireToTarget,
|
||||
};
|
||||
|
||||
const union AnimCmd gUnknown_83E77BC[] =
|
||||
const union AnimCmd sAnim_DragonRageFirePlume[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 5),
|
||||
ANIMCMD_FRAME(16, 5),
|
||||
@@ -105,23 +105,23 @@ const union AnimCmd gUnknown_83E77BC[] =
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E77D4[] =
|
||||
static const union AnimCmd *const sAnims_DragonRageFirePlume[] =
|
||||
{
|
||||
gUnknown_83E77BC,
|
||||
sAnim_DragonRageFirePlume,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E77D8 =
|
||||
const struct SpriteTemplate gDragonRageFirePlumeSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_FIRE_PLUME,
|
||||
.paletteTag = ANIM_TAG_FIRE_PLUME,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E77D4,
|
||||
.anims = sAnims_DragonRageFirePlume,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B73AC,
|
||||
.callback = AnimDragonRageFirePlume,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E77F0[] =
|
||||
static const union AnimCmd sAnim_DragonRageFire[] =
|
||||
{
|
||||
ANIMCMD_FRAME(16, 3),
|
||||
ANIMCMD_FRAME(32, 3),
|
||||
@@ -129,42 +129,42 @@ static const union AnimCmd gUnknown_83E77F0[] =
|
||||
ANIMCMD_JUMP(0),
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E7800[] =
|
||||
static const union AnimCmd *const sAnims_DragonRageFire[] =
|
||||
{
|
||||
gUnknown_83E77F0,
|
||||
gUnknown_83E77F0,
|
||||
sAnim_DragonRageFire,
|
||||
sAnim_DragonRageFire,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E7808[] =
|
||||
static const union AffineAnimCmd sAffineAnim_DragonRageFire_0[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x64, 0x64, 127, 1),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E7818[] =
|
||||
static const union AffineAnimCmd sAffineAnim_DragonRageFire_1[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x64, 0x64, 0, 1),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E7828[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_DragonRageFire[] =
|
||||
{
|
||||
gUnknown_83E7808,
|
||||
gUnknown_83E7818,
|
||||
sAffineAnim_DragonRageFire_0,
|
||||
sAffineAnim_DragonRageFire_1,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7830 =
|
||||
const struct SpriteTemplate gDragonRageFireSpitSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_SMALL_EMBER,
|
||||
.paletteTag = ANIM_TAG_SMALL_EMBER,
|
||||
.oam = &gOamData_AffineDouble_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E7800,
|
||||
.anims = sAnims_DragonRageFire,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E7828,
|
||||
.callback = sub_80B741C,
|
||||
.affineAnims = sAffineAnims_DragonRageFire,
|
||||
.callback = AnimDragonFireToTarget,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7848 =
|
||||
const struct SpriteTemplate gDragonDanceOrbSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_HOLLOW_ORB,
|
||||
.paletteTag = ANIM_TAG_HOLLOW_ORB,
|
||||
@@ -172,10 +172,10 @@ const struct SpriteTemplate gUnknown_83E7848 =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B7448,
|
||||
.callback = AnimDragonDanceOrb,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7860 =
|
||||
const struct SpriteTemplate gOverheatFlameSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_SMALL_EMBER,
|
||||
.paletteTag = ANIM_TAG_SMALL_EMBER,
|
||||
@@ -183,7 +183,7 @@ const struct SpriteTemplate gUnknown_83E7860 =
|
||||
.anims = gUnknown_83E7728,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B77E4,
|
||||
.callback = AnimOverheatFlame,
|
||||
};
|
||||
|
||||
static void sub_80B725C(struct Sprite *sprite)
|
||||
@@ -235,7 +235,7 @@ static void sub_80B72F8(struct Sprite *sprite)
|
||||
StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix);
|
||||
}
|
||||
|
||||
static void sub_80B73AC(struct Sprite *sprite)
|
||||
static void AnimDragonRageFirePlume(struct Sprite *sprite)
|
||||
{
|
||||
if (gBattleAnimArgs[0] == 0)
|
||||
{
|
||||
@@ -253,14 +253,14 @@ static void sub_80B73AC(struct Sprite *sprite)
|
||||
StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix);
|
||||
}
|
||||
|
||||
static void sub_80B741C(struct Sprite *sprite)
|
||||
static void AnimDragonFireToTarget(struct Sprite *sprite)
|
||||
{
|
||||
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
|
||||
StartSpriteAffineAnim(sprite, 1);
|
||||
sub_80B72F8(sprite);
|
||||
}
|
||||
|
||||
static void sub_80B7448(struct Sprite *sprite)
|
||||
static void AnimDragonDanceOrb(struct Sprite *sprite)
|
||||
{
|
||||
u16 r5;
|
||||
u16 r0;
|
||||
@@ -319,7 +319,7 @@ static void sub_80B74D8(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80B75E0(u8 taskId)
|
||||
void AnimTask_DragonDanceWaver(u8 taskId)
|
||||
{
|
||||
struct ScanlineEffectParams sp;
|
||||
struct Task *task = &gTasks[taskId];
|
||||
@@ -404,7 +404,7 @@ static void sub_80B776C(struct Task *task)
|
||||
task->data[5] = (task->data[5] + 9) & 0xFF;
|
||||
}
|
||||
|
||||
static void sub_80B77E4(struct Sprite *sprite)
|
||||
static void AnimOverheatFlame(struct Sprite *sprite)
|
||||
{
|
||||
s32 i, r6 = (gBattleAnimArgs[2] * 3) / 5;
|
||||
|
||||
|
||||
+124
-124
@@ -4,22 +4,22 @@
|
||||
#include "sound.h"
|
||||
#include "constants/songs.h"
|
||||
|
||||
static void sub_80ADBEC(struct Sprite *sprite);
|
||||
static void AnimLightning(struct Sprite *sprite);
|
||||
static void sub_80ADC58(struct Sprite *sprite);
|
||||
static void sub_80ADCB8(struct Sprite *sprite);
|
||||
static void sub_80ADD4C(struct Sprite *sprite);
|
||||
static void sub_80ADEB0(struct Sprite *sprite);
|
||||
static void sub_80AE000(struct Sprite *sprite);
|
||||
static void sub_80AE06C(struct Sprite *sprite);
|
||||
static void sub_80AE1A0(struct Sprite *sprite);
|
||||
static void sub_80AE420(struct Sprite *sprite);
|
||||
static void sub_80AE470(struct Sprite *sprite);
|
||||
static void sub_80AE71C(struct Sprite *sprite);
|
||||
static void sub_80AE774(struct Sprite *sprite);
|
||||
static void sub_80AE7DC(struct Sprite *sprite);
|
||||
static void sub_80AEC34(struct Sprite *sprite);
|
||||
static void sub_80AEC80(struct Sprite *sprite);
|
||||
static void sub_80AEF60(struct Sprite *sprite);
|
||||
static void AnimZapCannonSpark(struct Sprite *sprite);
|
||||
static void AnimThunderboltOrb(struct Sprite *sprite);
|
||||
static void AnimSparkElectricityFlashing(struct Sprite *sprite);
|
||||
static void AnimElectricity(struct Sprite *sprite);
|
||||
static void AnimElectricBoltSegment(struct Sprite *sprite);
|
||||
static void AnimThunderWave(struct Sprite *sprite);
|
||||
static void AnimGrowingChargeOrb(struct Sprite *sprite);
|
||||
static void AnimElectricPuff(struct Sprite *sprite);
|
||||
static void AnimVoltTackleOrbSlide(struct Sprite *sprite);
|
||||
static void AnimVoltTackleBolt(struct Sprite *sprite);
|
||||
static void AnimGrowingShockWaveOrb(struct Sprite *sprite);
|
||||
static void AnimShockWaveProgressingBolt(struct Sprite *sprite);
|
||||
static void sub_80ADC3C(struct Sprite *sprite);
|
||||
static void sub_80ADC9C(struct Sprite *sprite);
|
||||
static void sub_80ADF38(struct Sprite *sprite);
|
||||
@@ -34,7 +34,7 @@ static bool8 sub_80AEE74(struct Task *task, u8 taskId);
|
||||
static bool8 sub_80AF058(struct Task *task, u8 taskId);
|
||||
static void sub_80AF0C8(struct Sprite *sprite);
|
||||
|
||||
static const union AnimCmd gUnknown_83E5F1C[] =
|
||||
static const union AnimCmd sAnim_Lightning[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 5),
|
||||
ANIMCMD_FRAME(16, 5),
|
||||
@@ -44,20 +44,20 @@ static const union AnimCmd gUnknown_83E5F1C[] =
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E5F34[] =
|
||||
static const union AnimCmd *const sAnims_Lightning[] =
|
||||
{
|
||||
gUnknown_83E5F1C,
|
||||
sAnim_Lightning,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E5F38 =
|
||||
const struct SpriteTemplate gLightningSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_LIGHTNING,
|
||||
.paletteTag = ANIM_TAG_LIGHTNING,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E5F34,
|
||||
.anims = sAnims_Lightning,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80ADBEC,
|
||||
.callback = AnimLightning,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E5F50[] =
|
||||
@@ -111,7 +111,7 @@ const struct SpriteTemplate gUnknown_83E5FAC =
|
||||
.callback = sub_80ADCB8,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E5FC4 =
|
||||
const struct SpriteTemplate gSparkElectricitySpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_SPARK_2,
|
||||
.paletteTag = ANIM_TAG_SPARK_2,
|
||||
@@ -122,7 +122,7 @@ const struct SpriteTemplate gUnknown_83E5FC4 =
|
||||
.callback = sub_80ADD4C,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E5FDC =
|
||||
const struct SpriteTemplate gZapCannonBallSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_BLACK_BALL_2,
|
||||
.paletteTag = ANIM_TAG_BLACK_BALL_2,
|
||||
@@ -133,29 +133,29 @@ const struct SpriteTemplate gUnknown_83E5FDC =
|
||||
.callback = TranslateAnimSpriteToTargetMonLocation,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E5FF4[] =
|
||||
static const union AffineAnimCmd sAffineAnim_FlashingSpark[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x0, 0x0, 20, 1),
|
||||
AFFINEANIMCMD_JUMP(0),
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E6004[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_FlashingSpark[] =
|
||||
{
|
||||
gUnknown_83E5FF4,
|
||||
sAffineAnim_FlashingSpark,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6008 =
|
||||
const struct SpriteTemplate gZapCannonSparkSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_SPARK_2,
|
||||
.paletteTag = ANIM_TAG_SPARK_2,
|
||||
.oam = &gOamData_AffineNormal_ObjNormal_16x16,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E6004,
|
||||
.callback = sub_80ADEB0,
|
||||
.affineAnims = sAffineAnims_FlashingSpark,
|
||||
.callback = AnimZapCannonSpark,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E6020[] =
|
||||
static const union AnimCmd sAnim_ThunderboltOrb[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 6),
|
||||
ANIMCMD_FRAME(16, 6),
|
||||
@@ -163,12 +163,12 @@ static const union AnimCmd gUnknown_83E6020[] =
|
||||
ANIMCMD_JUMP(0),
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E6030[] =
|
||||
static const union AnimCmd *const sAnims_ThunderboltOrb[] =
|
||||
{
|
||||
gUnknown_83E6020,
|
||||
sAnim_ThunderboltOrb,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E6034[] =
|
||||
static const union AffineAnimCmd sAffineAnim_ThunderboltOrb[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0xE8, 0xE8, 0, 0),
|
||||
AFFINEANIMCMD_FRAME(-0x8, -0x8, 0, 10),
|
||||
@@ -176,31 +176,31 @@ static const union AffineAnimCmd gUnknown_83E6034[] =
|
||||
AFFINEANIMCMD_JUMP(1),
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E6054[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_ThunderboltOrb[] =
|
||||
{
|
||||
gUnknown_83E6034,
|
||||
sAffineAnim_ThunderboltOrb,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6058 =
|
||||
const struct SpriteTemplate gThunderboltOrbSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_SHOCK_3,
|
||||
.paletteTag = ANIM_TAG_SHOCK_3,
|
||||
.oam = &gOamData_AffineNormal_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E6030,
|
||||
.anims = sAnims_ThunderboltOrb,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E6054,
|
||||
.callback = sub_80AE000,
|
||||
.affineAnims = sAffineAnims_ThunderboltOrb,
|
||||
.callback = AnimThunderboltOrb,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6070 =
|
||||
const struct SpriteTemplate gSparkElectricityFlashingSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_SPARK_2,
|
||||
.paletteTag = ANIM_TAG_SPARK_2,
|
||||
.oam = &gOamData_AffineNormal_ObjNormal_16x16,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E6004,
|
||||
.callback = sub_80AE06C,
|
||||
.affineAnims = sAffineAnims_FlashingSpark,
|
||||
.callback = AnimSparkElectricityFlashing,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gElectricitySpriteTemplate =
|
||||
@@ -211,10 +211,10 @@ const struct SpriteTemplate gElectricitySpriteTemplate =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80AE1A0,
|
||||
.callback = AnimElectricity,
|
||||
};
|
||||
|
||||
static const struct SpriteTemplate gUnknown_83E60A0 =
|
||||
static const struct SpriteTemplate sElectricBoltSegmentSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_SPARK,
|
||||
.paletteTag = ANIM_TAG_SPARK,
|
||||
@@ -222,10 +222,10 @@ static const struct SpriteTemplate gUnknown_83E60A0 =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80AE420,
|
||||
.callback = AnimElectricBoltSegment,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E60B8 =
|
||||
const struct SpriteTemplate gThunderWaveSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_SPARK_H,
|
||||
.paletteTag = ANIM_TAG_SPARK_H,
|
||||
@@ -233,10 +233,10 @@ const struct SpriteTemplate gUnknown_83E60B8 =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80AE470,
|
||||
.callback = AnimThunderWave,
|
||||
};
|
||||
|
||||
static const s8 gUnknown_83E60D0[][2] =
|
||||
static const s8 sElectricChargingParticleCoordOffsets[][2] =
|
||||
{
|
||||
{ 58, -60},
|
||||
{-56, -36},
|
||||
@@ -256,7 +256,7 @@ static const s8 gUnknown_83E60D0[][2] =
|
||||
{ 48, 48},
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E60F0[] =
|
||||
static const union AnimCmd sAnim_ElectricChargingParticles_0[] =
|
||||
{
|
||||
ANIMCMD_FRAME(3, 1),
|
||||
ANIMCMD_FRAME(2, 1),
|
||||
@@ -265,7 +265,7 @@ static const union AnimCmd gUnknown_83E60F0[] =
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E6104[] =
|
||||
static const union AnimCmd sAnim_ElectricChargingParticles_1[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 5),
|
||||
ANIMCMD_FRAME(1, 5),
|
||||
@@ -274,24 +274,24 @@ static const union AnimCmd gUnknown_83E6104[] =
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E6118[] =
|
||||
static const union AnimCmd *const sAnims_ElectricChargingParticles[] =
|
||||
{
|
||||
gUnknown_83E60F0,
|
||||
gUnknown_83E6104,
|
||||
sAnim_ElectricChargingParticles_0,
|
||||
sAnim_ElectricChargingParticles_1,
|
||||
};
|
||||
|
||||
static const struct SpriteTemplate gUnknown_83E6120 =
|
||||
static const struct SpriteTemplate gElectricChargingParticlesSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_ELECTRIC_ORBS,
|
||||
.paletteTag = ANIM_TAG_ELECTRIC_ORBS,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_8x8,
|
||||
.anims = gUnknown_83E6118,
|
||||
.anims = sAnims_ElectricChargingParticles,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = SpriteCallbackDummy,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E6138[] =
|
||||
static const union AffineAnimCmd sAffineAnim_GrowingElectricOrb_0[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0),
|
||||
AFFINEANIMCMD_FRAME(0x4, 0x4, 0, 60),
|
||||
@@ -303,7 +303,7 @@ static const union AffineAnimCmd gUnknown_83E6138[] =
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E6178[] =
|
||||
static const union AffineAnimCmd sAffineAnim_GrowingElectricOrb_1[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0),
|
||||
AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 30),
|
||||
@@ -313,7 +313,7 @@ static const union AffineAnimCmd gUnknown_83E6178[] =
|
||||
AFFINEANIMCMD_JUMP(3),
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E61A8[] =
|
||||
static const union AffineAnimCmd sAffineAnim_GrowingElectricOrb_2[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0),
|
||||
AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 30),
|
||||
@@ -321,25 +321,25 @@ static const union AffineAnimCmd gUnknown_83E61A8[] =
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E61C8[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_GrowingElectricOrb[] =
|
||||
{
|
||||
gUnknown_83E6138,
|
||||
gUnknown_83E6178,
|
||||
gUnknown_83E61A8,
|
||||
sAffineAnim_GrowingElectricOrb_0,
|
||||
sAffineAnim_GrowingElectricOrb_1,
|
||||
sAffineAnim_GrowingElectricOrb_2,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E61D4 =
|
||||
const struct SpriteTemplate gGrowingChargeOrbSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_CIRCLE_OF_LIGHT,
|
||||
.paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT,
|
||||
.oam = &gOamData_AffineNormal_ObjBlend_64x64,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E61C8,
|
||||
.callback = sub_80AE71C,
|
||||
.affineAnims = sAffineAnims_GrowingElectricOrb,
|
||||
.callback = AnimGrowingChargeOrb,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E61EC[] =
|
||||
static const union AnimCmd sAnim_ElectricPuff[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 3),
|
||||
ANIMCMD_FRAME(16, 3),
|
||||
@@ -348,99 +348,99 @@ static const union AnimCmd gUnknown_83E61EC[] =
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E6200[] =
|
||||
static const union AnimCmd *const sAnims_ElectricPuff[] =
|
||||
{
|
||||
gUnknown_83E61EC,
|
||||
sAnim_ElectricPuff,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6204 =
|
||||
const struct SpriteTemplate gElectricPuffSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_ELECTRICITY,
|
||||
.paletteTag = ANIM_TAG_ELECTRICITY,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E6200,
|
||||
.anims = sAnims_ElectricPuff,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80AE774,
|
||||
.callback = AnimElectricPuff,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E621C =
|
||||
const struct SpriteTemplate gVoltTackleOrbSlideSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_CIRCLE_OF_LIGHT,
|
||||
.paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT,
|
||||
.oam = &gOamData_AffineNormal_ObjBlend_64x64,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E61C8,
|
||||
.callback = sub_80AE7DC,
|
||||
.affineAnims = sAffineAnims_GrowingElectricOrb,
|
||||
.callback = AnimVoltTackleOrbSlide,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E6234[] =
|
||||
static const union AnimCmd sAnim_VoltTackleBolt_0[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 3),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E623C[] =
|
||||
static const union AnimCmd sAnim_VoltTackleBolt_1[] =
|
||||
{
|
||||
ANIMCMD_FRAME(2, 3),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E6244[] =
|
||||
static const union AnimCmd sAnim_VoltTackleBolt_2[] =
|
||||
{
|
||||
ANIMCMD_FRAME(4, 3),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E624C[] =
|
||||
static const union AnimCmd sAnim_VoltTackleBolt_3[] =
|
||||
{
|
||||
ANIMCMD_FRAME(6, 3),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E6254[] =
|
||||
static const union AnimCmd *const sAnims_VoltTackleBolt[] =
|
||||
{
|
||||
gUnknown_83E6234,
|
||||
gUnknown_83E623C,
|
||||
gUnknown_83E6244,
|
||||
gUnknown_83E624C,
|
||||
sAnim_VoltTackleBolt_0,
|
||||
sAnim_VoltTackleBolt_1,
|
||||
sAnim_VoltTackleBolt_2,
|
||||
sAnim_VoltTackleBolt_3,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E6264[] =
|
||||
static const union AffineAnimCmd sAffineAnim_VoltTackleBolt[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x100, 0x100, 64, 0),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E6274[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_VoltTackleBolt[] =
|
||||
{
|
||||
gUnknown_83E6264,
|
||||
sAffineAnim_VoltTackleBolt,
|
||||
};
|
||||
|
||||
static const struct SpriteTemplate gUnknown_83E6278 =
|
||||
static const struct SpriteTemplate gVoltTackleBoltSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_SPARK,
|
||||
.paletteTag = ANIM_TAG_SPARK,
|
||||
.oam = &gOamData_AffineDouble_ObjNormal_8x16,
|
||||
.anims = gUnknown_83E6254,
|
||||
.anims = sAnims_VoltTackleBolt,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E6274,
|
||||
.callback = sub_80AEC34,
|
||||
.affineAnims = sAffineAnims_VoltTackleBolt,
|
||||
.callback = AnimVoltTackleBolt,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6290 =
|
||||
const struct SpriteTemplate gGrowingShockWaveOrbSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_CIRCLE_OF_LIGHT,
|
||||
.paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT,
|
||||
.oam = &gOamData_AffineNormal_ObjBlend_64x64,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E61C8,
|
||||
.callback = sub_80AEC80,
|
||||
.affineAnims = sAffineAnims_GrowingElectricOrb,
|
||||
.callback = AnimGrowingShockWaveOrb,
|
||||
};
|
||||
|
||||
static const struct SpriteTemplate gUnknown_83E62A8 =
|
||||
static const struct SpriteTemplate sShockWaveProgressingBoltSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_SPARK,
|
||||
.paletteTag = ANIM_TAG_SPARK,
|
||||
@@ -448,10 +448,10 @@ static const struct SpriteTemplate gUnknown_83E62A8 =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80AEF60,
|
||||
.callback = AnimShockWaveProgressingBolt,
|
||||
};
|
||||
|
||||
static void sub_80ADBEC(struct Sprite *sprite)
|
||||
static void AnimLightning(struct Sprite *sprite)
|
||||
{
|
||||
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
|
||||
sprite->pos1.x -= gBattleAnimArgs[0];
|
||||
@@ -555,7 +555,7 @@ static void sub_80ADD4C(struct Sprite *sprite)
|
||||
sprite->callback = sub_80B1D3C;
|
||||
}
|
||||
|
||||
static void sub_80ADEB0(struct Sprite *sprite)
|
||||
static void AnimZapCannonSpark(struct Sprite *sprite)
|
||||
{
|
||||
InitSpritePosToAnimAttacker(sprite, 1);
|
||||
sprite->data[0] = gBattleAnimArgs[3];
|
||||
@@ -599,7 +599,7 @@ static void sub_80ADFB0(struct Sprite *sprite)
|
||||
DestroyAnimSprite(sprite);
|
||||
}
|
||||
|
||||
static void sub_80AE000(struct Sprite *sprite)
|
||||
static void AnimThunderboltOrb(struct Sprite *sprite)
|
||||
{
|
||||
if (IsContest() || GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER)
|
||||
gBattleAnimArgs[1] = -gBattleAnimArgs[1];
|
||||
@@ -611,7 +611,7 @@ static void sub_80AE000(struct Sprite *sprite)
|
||||
sprite->callback = sub_80ADFB0;
|
||||
}
|
||||
|
||||
static void sub_80AE06C(struct Sprite *sprite)
|
||||
static void AnimSparkElectricityFlashing(struct Sprite *sprite)
|
||||
{
|
||||
u8 battler;
|
||||
|
||||
@@ -644,7 +644,7 @@ static void sub_80AE130(struct Sprite *sprite)
|
||||
DestroyAnimSprite(sprite);
|
||||
}
|
||||
|
||||
static void sub_80AE1A0(struct Sprite *sprite)
|
||||
static void AnimElectricity(struct Sprite *sprite)
|
||||
{
|
||||
InitSpritePosToAnimTarget(sprite, FALSE);
|
||||
sprite->oam.tileNum += gBattleAnimArgs[3] * 4;
|
||||
@@ -657,7 +657,7 @@ static void sub_80AE1A0(struct Sprite *sprite)
|
||||
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
|
||||
}
|
||||
|
||||
void sub_80AE220(u8 taskId)
|
||||
void AnimTask_ElectricBolt(u8 taskId)
|
||||
{
|
||||
gTasks[taskId].data[0] = GetBattlerSpriteCoord(gBattleAnimTarget, 0) + gBattleAnimArgs[0];
|
||||
gTasks[taskId].data[1] = GetBattlerSpriteCoord(gBattleAnimTarget, 1) + gBattleAnimArgs[1];
|
||||
@@ -692,30 +692,30 @@ static void sub_80AE278(u8 taskId)
|
||||
{
|
||||
case 0:
|
||||
r12 *= 1;
|
||||
spriteId = CreateSprite(&gUnknown_83E60A0, x, y + r12, 2);
|
||||
spriteId = CreateSprite(&sElectricBoltSegmentSpriteTemplate, x, y + r12, 2);
|
||||
++r7;
|
||||
break;
|
||||
case 2:
|
||||
r12 *= 2;
|
||||
r8 += r2;
|
||||
spriteId = CreateSprite(&gUnknown_83E60A0, x, y + r12, 2);
|
||||
spriteId = CreateSprite(&sElectricBoltSegmentSpriteTemplate, x, y + r12, 2);
|
||||
++r7;
|
||||
break;
|
||||
case 4:
|
||||
r12 *= 3;
|
||||
r8 += r2 * 2;
|
||||
spriteId = CreateSprite(&gUnknown_83E60A0, x, y + r12, 2);
|
||||
spriteId = CreateSprite(&sElectricBoltSegmentSpriteTemplate, x, y + r12, 2);
|
||||
++r7;
|
||||
break;
|
||||
case 6:
|
||||
r12 *= 4;
|
||||
r8 += r2 * 3;
|
||||
spriteId = CreateSprite(&gUnknown_83E60A0, x, y + r12, 2);
|
||||
spriteId = CreateSprite(&sElectricBoltSegmentSpriteTemplate, x, y + r12, 2);
|
||||
++r7;
|
||||
break;
|
||||
case 8:
|
||||
r12 *= 5;
|
||||
spriteId = CreateSprite(&gUnknown_83E60A0, x, y + r12, 2);
|
||||
spriteId = CreateSprite(&sElectricBoltSegmentSpriteTemplate, x, y + r12, 2);
|
||||
++r7;
|
||||
break;
|
||||
case 10:
|
||||
@@ -731,7 +731,7 @@ static void sub_80AE278(u8 taskId)
|
||||
++gTasks[taskId].data[10];
|
||||
}
|
||||
|
||||
static void sub_80AE420(struct Sprite *sprite)
|
||||
static void AnimElectricBoltSegment(struct Sprite *sprite)
|
||||
{
|
||||
if (!sprite->data[0])
|
||||
{
|
||||
@@ -747,13 +747,13 @@ static void sub_80AE420(struct Sprite *sprite)
|
||||
DestroySprite(sprite);
|
||||
}
|
||||
|
||||
static void sub_80AE470(struct Sprite *sprite)
|
||||
static void AnimThunderWave(struct Sprite *sprite)
|
||||
{
|
||||
u8 spriteId;
|
||||
|
||||
sprite->pos1.x += gBattleAnimArgs[0];
|
||||
sprite->pos1.y += gBattleAnimArgs[1];
|
||||
spriteId = CreateSprite(&gUnknown_83E60B8, sprite->pos1.x + 32, sprite->pos1.y, sprite->subpriority);
|
||||
spriteId = CreateSprite(&gThunderWaveSpriteTemplate, sprite->pos1.x + 32, sprite->pos1.y, sprite->subpriority);
|
||||
gSprites[spriteId].oam.tileNum += 8;
|
||||
++gAnimVisualTaskCount;
|
||||
gSprites[spriteId].callback = sub_80AE4F4;
|
||||
@@ -771,7 +771,7 @@ static void sub_80AE4F4(struct Sprite *sprite)
|
||||
DestroyAnimSprite(sprite);
|
||||
}
|
||||
|
||||
void sub_80AE540(u8 taskId)
|
||||
void AnimTask_ElectricChargingParticles(u8 taskId)
|
||||
{
|
||||
struct Task *task = &gTasks[taskId];
|
||||
|
||||
@@ -807,13 +807,13 @@ static void sub_80AE5BC(u8 taskId)
|
||||
u8 spriteId;
|
||||
|
||||
task->data[12] = 0;
|
||||
spriteId = CreateSprite(&gUnknown_83E6120, task->data[14], task->data[15], 2);
|
||||
spriteId = CreateSprite(&gElectricChargingParticlesSpriteTemplate, task->data[14], task->data[15], 2);
|
||||
if (spriteId != MAX_SPRITES)
|
||||
{
|
||||
struct Sprite *sprite = &gSprites[spriteId];
|
||||
|
||||
sprite->pos1.x += gUnknown_83E60D0[task->data[9]][0];
|
||||
sprite->pos1.y += gUnknown_83E60D0[task->data[9]][1];
|
||||
sprite->pos1.x += sElectricChargingParticleCoordOffsets[task->data[9]][0];
|
||||
sprite->pos1.y += sElectricChargingParticleCoordOffsets[task->data[9]][1];
|
||||
sprite->data[0] = 40 - task->data[8] * 5;
|
||||
sprite->data[1] = sprite->pos1.x;
|
||||
sprite->data[2] = task->data[14];
|
||||
@@ -857,7 +857,7 @@ static void sub_80AE704(struct Sprite *sprite)
|
||||
sprite->callback = sub_80AE6D0;
|
||||
}
|
||||
|
||||
static void sub_80AE71C(struct Sprite *sprite)
|
||||
static void AnimGrowingChargeOrb(struct Sprite *sprite)
|
||||
{
|
||||
if (!gBattleAnimArgs[0])
|
||||
{
|
||||
@@ -873,7 +873,7 @@ static void sub_80AE71C(struct Sprite *sprite)
|
||||
sprite->callback = RunStoredCallbackWhenAffineAnimEnds;
|
||||
}
|
||||
|
||||
static void sub_80AE774(struct Sprite *sprite)
|
||||
static void AnimElectricPuff(struct Sprite *sprite)
|
||||
{
|
||||
if (!gBattleAnimArgs[0])
|
||||
{
|
||||
@@ -891,7 +891,7 @@ static void sub_80AE774(struct Sprite *sprite)
|
||||
sprite->callback = RunStoredCallbackWhenAnimEnds;
|
||||
}
|
||||
|
||||
static void sub_80AE7DC(struct Sprite *sprite)
|
||||
static void AnimVoltTackleOrbSlide(struct Sprite *sprite)
|
||||
{
|
||||
StartSpriteAffineAnim(sprite, 1);
|
||||
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
|
||||
@@ -920,7 +920,7 @@ static void sub_80AE83C(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80AE8A0(u8 taskId)
|
||||
void AnimTask_VoltTackleAttackerReappear(u8 taskId)
|
||||
{
|
||||
struct Task *task = &gTasks[taskId];
|
||||
|
||||
@@ -975,7 +975,7 @@ void sub_80AE8A0(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80AEA10(u8 taskId)
|
||||
void AnimTask_VoltTackleBolt(u8 taskId)
|
||||
{
|
||||
struct Task *task = &gTasks[taskId];
|
||||
|
||||
@@ -1049,7 +1049,7 @@ void sub_80AEA10(u8 taskId)
|
||||
|
||||
static bool8 sub_80AEB98(struct Task *task, u8 taskId)
|
||||
{
|
||||
u8 spriteId = CreateSprite(&gUnknown_83E6278, task->data[3], task->data[5], 35);
|
||||
u8 spriteId = CreateSprite(&gVoltTackleBoltSpriteTemplate, task->data[3], task->data[5], 35);
|
||||
|
||||
if (spriteId != MAX_SPRITES)
|
||||
{
|
||||
@@ -1070,7 +1070,7 @@ static bool8 sub_80AEB98(struct Task *task, u8 taskId)
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
static void sub_80AEC34(struct Sprite *sprite)
|
||||
static void AnimVoltTackleBolt(struct Sprite *sprite)
|
||||
{
|
||||
if (++sprite->data[0] > 12)
|
||||
{
|
||||
@@ -1080,7 +1080,7 @@ static void sub_80AEC34(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_80AEC80(struct Sprite *sprite)
|
||||
static void AnimGrowingShockWaveOrb(struct Sprite *sprite)
|
||||
{
|
||||
switch (sprite->data[0])
|
||||
{
|
||||
@@ -1097,7 +1097,7 @@ static void sub_80AEC80(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80AECE0(u8 taskId)
|
||||
void AnimTask_ShockWaveProgressingBolt(u8 taskId)
|
||||
{
|
||||
struct Task *task = &gTasks[taskId];
|
||||
|
||||
@@ -1174,7 +1174,7 @@ void sub_80AECE0(u8 taskId)
|
||||
|
||||
static bool8 sub_80AEE74(struct Task *task, u8 taskId)
|
||||
{
|
||||
u8 spriteId = CreateSprite(&gUnknown_83E62A8, task->data[6], task->data[7], 35);
|
||||
u8 spriteId = CreateSprite(&sShockWaveProgressingBoltSpriteTemplate, task->data[6], task->data[7], 35);
|
||||
if (spriteId != MAX_SPRITES)
|
||||
{
|
||||
gSprites[spriteId].oam.tileNum += task->data[4];
|
||||
@@ -1206,7 +1206,7 @@ static bool8 sub_80AEE74(struct Task *task, u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_80AEF60(struct Sprite *sprite)
|
||||
static void AnimShockWaveProgressingBolt(struct Sprite *sprite)
|
||||
{
|
||||
if (++sprite->data[0] > 12)
|
||||
{
|
||||
@@ -1215,7 +1215,7 @@ static void sub_80AEF60(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80AEFA0(u8 taskId)
|
||||
void AnimTask_ShockWaveLightning(u8 taskId)
|
||||
{
|
||||
struct Task *task = &gTasks[taskId];
|
||||
|
||||
@@ -1247,7 +1247,7 @@ void sub_80AEFA0(u8 taskId)
|
||||
|
||||
static bool8 sub_80AF058(struct Task *task, u8 taskId)
|
||||
{
|
||||
u8 spriteId = CreateSprite(&gUnknown_83E5F38, task->data[13], task->data[14], task->data[12]);
|
||||
u8 spriteId = CreateSprite(&gLightningSpriteTemplate, task->data[13], task->data[14], task->data[12]);
|
||||
|
||||
if (spriteId != MAX_SPRITES)
|
||||
{
|
||||
|
||||
+118
-118
@@ -6,23 +6,23 @@
|
||||
#include "trig.h"
|
||||
|
||||
static void unc_080B08A0(struct Sprite *sprite);
|
||||
static void sub_80B08DC(struct Sprite *sprite);
|
||||
static void sub_80B0928(struct Sprite *sprite);
|
||||
static void AnimSlideHandOrFootToTarget(struct Sprite *sprite);
|
||||
static void AnimJumpKick(struct Sprite *sprite);
|
||||
static void AnimBasicFistOrFoot(struct Sprite *sprite);
|
||||
static void sub_80B09A4(struct Sprite *sprite);
|
||||
static void sub_80B0B80(struct Sprite *sprite);
|
||||
static void sub_80B0C28(struct Sprite *sprite);
|
||||
static void AnimFistOrFootRandomPos(struct Sprite *sprite);
|
||||
static void AnimCrossChopHand(struct Sprite *sprite);
|
||||
static void AnimSlidingKick(struct Sprite *sprite);
|
||||
static void AnimSpinningKickOrPunch(struct Sprite *sprite);
|
||||
static void AnimStompFoot(struct Sprite *sprite);
|
||||
static void sub_80B0DF0(struct Sprite *sprite);
|
||||
static void sub_80B0E80(struct Sprite *sprite);
|
||||
static void sub_80B0F68(struct Sprite *sprite);
|
||||
static void sub_80B107C(struct Sprite *sprite);
|
||||
static void sub_80B1188(struct Sprite *sprite);
|
||||
static void sub_80B12E8(struct Sprite *sprite);
|
||||
static void sub_80B13F8(struct Sprite *sprite);
|
||||
static void sub_80B1484(struct Sprite *sprite);
|
||||
static void sub_80B14F0(struct Sprite *sprite);
|
||||
static void AnimDizzyPunchDuck(struct Sprite *sprite);
|
||||
static void AnimBrickBreakWall(struct Sprite *sprite);
|
||||
static void AnimBrickBreakWallShard(struct Sprite *sprite);
|
||||
static void AnimSuperpowerOrb(struct Sprite *sprite);
|
||||
static void AnimSuperpowerRock(struct Sprite *sprite);
|
||||
static void AnimSuperpowerFireball(struct Sprite *sprite);
|
||||
static void AnimArmThrustHit(struct Sprite *sprite);
|
||||
static void AnimRevengeScratch(struct Sprite *sprite);
|
||||
static void AnimFocusPunchFist(struct Sprite *sprite);
|
||||
static void sub_80B0B2C(struct Sprite *sprite);
|
||||
static void sub_80B0BD8(struct Sprite *sprite);
|
||||
static void sub_80B0CB4(struct Sprite *sprite);
|
||||
@@ -46,73 +46,73 @@ const struct SpriteTemplate gUnknown_83E668C =
|
||||
.callback = unc_080B08A0,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E66A4[] =
|
||||
static const union AnimCmd sAnim_HandOrFoot[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E66AC[] =
|
||||
static const union AnimCmd sAnim_SlidingKick_0[] =
|
||||
{
|
||||
ANIMCMD_FRAME(16, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E66B4[] =
|
||||
static const union AnimCmd sAnim_SlidingKick_1[] =
|
||||
{
|
||||
ANIMCMD_FRAME(32, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E66BC[] =
|
||||
static const union AnimCmd sAnim_CrossChopHand_0[] =
|
||||
{
|
||||
ANIMCMD_FRAME(48, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E66C4[] =
|
||||
static const union AnimCmd sAnim_CrossChopHand_1[] =
|
||||
{
|
||||
ANIMCMD_FRAME(48, 1, .hFlip = TRUE),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E66CC[] =
|
||||
static const union AnimCmd *const sAnims_HandOrFoot[] =
|
||||
{
|
||||
gUnknown_83E66A4,
|
||||
sAnim_HandOrFoot,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E66D0[] =
|
||||
static const union AnimCmd *const sAnims_SlidingKick[] =
|
||||
{
|
||||
gUnknown_83E66AC,
|
||||
gUnknown_83E66B4,
|
||||
sAnim_SlidingKick_0,
|
||||
sAnim_SlidingKick_1,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E66D8[] =
|
||||
static const union AnimCmd *const sAnims_CrossChopHand[] =
|
||||
{
|
||||
gUnknown_83E66BC,
|
||||
gUnknown_83E66C4,
|
||||
sAnim_CrossChopHand_0,
|
||||
sAnim_CrossChopHand_1,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E66E0 =
|
||||
const struct SpriteTemplate gKarateChopSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_HANDS_AND_FEET,
|
||||
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E66CC,
|
||||
.anims = sAnims_HandOrFoot,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B08DC,
|
||||
.callback = AnimSlideHandOrFootToTarget,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E66F8 =
|
||||
const struct SpriteTemplate gJumpKickSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_HANDS_AND_FEET,
|
||||
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E66CC,
|
||||
.anims = sAnims_HandOrFoot,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B0928,
|
||||
.callback = AnimJumpKick,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gFistFootSpriteTemplate =
|
||||
@@ -120,78 +120,78 @@ const struct SpriteTemplate gFistFootSpriteTemplate =
|
||||
.tileTag = ANIM_TAG_HANDS_AND_FEET,
|
||||
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E66CC,
|
||||
.anims = sAnims_HandOrFoot,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = AnimBasicFistOrFoot,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6728 =
|
||||
const struct SpriteTemplate gFistFootRandomPosSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_HANDS_AND_FEET,
|
||||
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E66CC,
|
||||
.anims = sAnims_HandOrFoot,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B09A4,
|
||||
.callback = AnimFistOrFootRandomPos,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6740 =
|
||||
const struct SpriteTemplate gCrossChopHandSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_HANDS_AND_FEET,
|
||||
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E66D8,
|
||||
.anims = sAnims_CrossChopHand,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B0B80,
|
||||
.callback = AnimCrossChopHand,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6758 =
|
||||
const struct SpriteTemplate gSlidingKickSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_HANDS_AND_FEET,
|
||||
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E66D0,
|
||||
.anims = sAnims_SlidingKick,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B0C28,
|
||||
.callback = AnimSlidingKick,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E6770[] =
|
||||
static const union AffineAnimCmd sAffineAnim_SpinningHandOrFoot[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
|
||||
AFFINEANIMCMD_FRAME(-0x8, -0x8, 20, 1),
|
||||
AFFINEANIMCMD_JUMP(1),
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E6788[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_SpinningHandOrFoot[] =
|
||||
{
|
||||
gUnknown_83E6770,
|
||||
sAffineAnim_SpinningHandOrFoot,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E678C =
|
||||
const struct SpriteTemplate gSpinningHandOrFootSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_HANDS_AND_FEET,
|
||||
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
|
||||
.oam = &gOamData_AffineDouble_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E66CC,
|
||||
.anims = sAnims_HandOrFoot,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E6788,
|
||||
.affineAnims = sAffineAnims_SpinningHandOrFoot,
|
||||
.callback = AnimSpinningKickOrPunch,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E67A4[] =
|
||||
static const union AffineAnimCmd sAffineAnim_MegaPunchKick[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
|
||||
AFFINEANIMCMD_FRAME(-0x4, -0x4, 20, 1),
|
||||
AFFINEANIMCMD_JUMP(1),
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E67BC[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_MegaPunchKick[] =
|
||||
{
|
||||
gUnknown_83E67A4,
|
||||
sAffineAnim_MegaPunchKick,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gMegaPunchKickSpriteTemplate =
|
||||
@@ -199,24 +199,24 @@ const struct SpriteTemplate gMegaPunchKickSpriteTemplate =
|
||||
.tileTag = ANIM_TAG_HANDS_AND_FEET,
|
||||
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
|
||||
.oam = &gOamData_AffineDouble_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E66CC,
|
||||
.anims = sAnims_HandOrFoot,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E67BC,
|
||||
.affineAnims = sAffineAnims_MegaPunchKick,
|
||||
.callback = AnimSpinningKickOrPunch,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E67D8 =
|
||||
const struct SpriteTemplate gStompFootSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_HANDS_AND_FEET,
|
||||
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E66D0,
|
||||
.anims = sAnims_SlidingKick,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = AnimStompFoot,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E67F0 =
|
||||
const struct SpriteTemplate gDizzyPunchDuckSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_DUCK,
|
||||
.paletteTag = ANIM_TAG_DUCK,
|
||||
@@ -224,10 +224,10 @@ const struct SpriteTemplate gUnknown_83E67F0 =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B0DF0,
|
||||
.callback = AnimDizzyPunchDuck,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6808 =
|
||||
const struct SpriteTemplate gBrickBreakWallSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_BLUE_LIGHT_WALL,
|
||||
.paletteTag = ANIM_TAG_BLUE_LIGHT_WALL,
|
||||
@@ -235,10 +235,10 @@ const struct SpriteTemplate gUnknown_83E6808 =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B0E80,
|
||||
.callback = AnimBrickBreakWall,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6820 =
|
||||
const struct SpriteTemplate gBrickBreakWallShardSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_TORN_METAL,
|
||||
.paletteTag = ANIM_TAG_TORN_METAL,
|
||||
@@ -246,10 +246,10 @@ const struct SpriteTemplate gUnknown_83E6820 =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B0F68,
|
||||
.callback = AnimBrickBreakWallShard,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E6838[] =
|
||||
static const union AffineAnimCmd sAffineAnim_SuperpowerOrb[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x20, 0x20, 0, 0),
|
||||
AFFINEANIMCMD_FRAME(0x4, 0x4, 0, 64),
|
||||
@@ -258,23 +258,23 @@ static const union AffineAnimCmd gUnknown_83E6838[] =
|
||||
AFFINEANIMCMD_JUMP(2),
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E6860[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_SuperpowerOrb[] =
|
||||
{
|
||||
gUnknown_83E6838,
|
||||
sAffineAnim_SuperpowerOrb,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6864 =
|
||||
const struct SpriteTemplate gSuperpowerOrbSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_CIRCLE_OF_LIGHT,
|
||||
.paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT,
|
||||
.oam = &gOamData_AffineDouble_ObjBlend_64x64,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E6860,
|
||||
.callback = sub_80B107C,
|
||||
.affineAnims = sAffineAnims_SuperpowerOrb,
|
||||
.callback = AnimSuperpowerOrb,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E687C =
|
||||
const struct SpriteTemplate gSuperpowerRockSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_FLAT_ROCK,
|
||||
.paletteTag = ANIM_TAG_FLAT_ROCK,
|
||||
@@ -282,10 +282,10 @@ const struct SpriteTemplate gUnknown_83E687C =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B1188,
|
||||
.callback = AnimSuperpowerRock,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6894 =
|
||||
const struct SpriteTemplate gSuperpowerFireballSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_METEOR,
|
||||
.paletteTag = ANIM_TAG_METEOR,
|
||||
@@ -293,21 +293,21 @@ const struct SpriteTemplate gUnknown_83E6894 =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B12E8,
|
||||
.callback = AnimSuperpowerFireball,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E68AC =
|
||||
const struct SpriteTemplate gArmThrustHandSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_HANDS_AND_FEET,
|
||||
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E66CC,
|
||||
.anims = sAnims_HandOrFoot,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B13F8,
|
||||
.callback = AnimArmThrustHit,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E68C4[] =
|
||||
static const union AnimCmd sAnim_RevengeSmallScratch_0[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 4),
|
||||
ANIMCMD_FRAME(16, 4),
|
||||
@@ -315,7 +315,7 @@ static const union AnimCmd gUnknown_83E68C4[] =
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E68D4[] =
|
||||
static const union AnimCmd sAnim_RevengeSmallScratch_1[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 4, .vFlip = TRUE),
|
||||
ANIMCMD_FRAME(16, 4, .vFlip = TRUE),
|
||||
@@ -323,7 +323,7 @@ static const union AnimCmd gUnknown_83E68D4[] =
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E68E4[] =
|
||||
static const union AnimCmd sAnim_RevengeSmallScratch_2[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 4, .hFlip = TRUE),
|
||||
ANIMCMD_FRAME(16, 4, .hFlip = TRUE),
|
||||
@@ -331,84 +331,84 @@ static const union AnimCmd gUnknown_83E68E4[] =
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E68F4[] =
|
||||
static const union AnimCmd *const sAnims_RevengeSmallScratch[] =
|
||||
{
|
||||
gUnknown_83E68C4,
|
||||
gUnknown_83E68D4,
|
||||
gUnknown_83E68E4,
|
||||
sAnim_RevengeSmallScratch_0,
|
||||
sAnim_RevengeSmallScratch_1,
|
||||
sAnim_RevengeSmallScratch_2,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6900 =
|
||||
const struct SpriteTemplate gRevengeSmallScratchSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_PURPLE_SCRATCH,
|
||||
.paletteTag = ANIM_TAG_PURPLE_SCRATCH,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E68F4,
|
||||
.anims = sAnims_RevengeSmallScratch,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B1484,
|
||||
.callback = AnimRevengeScratch,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E6918[] =
|
||||
static const union AnimCmd sAnim_RevengeBigScratch_0[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 6),
|
||||
ANIMCMD_FRAME(64, 6),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E6924[] =
|
||||
static const union AnimCmd sAnim_RevengeBigScratch_1[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 6, .vFlip = TRUE, .hFlip = TRUE),
|
||||
ANIMCMD_FRAME(64, 6, .vFlip = TRUE, .hFlip = TRUE),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E6930[] =
|
||||
static const union AnimCmd sAnim_RevengeBigScratch_2[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 6, .hFlip = TRUE),
|
||||
ANIMCMD_FRAME(64, 6, .hFlip = TRUE),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E693C[] =
|
||||
static const union AnimCmd *const sAnims_RevengeBigScratch[] =
|
||||
{
|
||||
gUnknown_83E6918,
|
||||
gUnknown_83E6924,
|
||||
gUnknown_83E6930,
|
||||
sAnim_RevengeBigScratch_0,
|
||||
sAnim_RevengeBigScratch_1,
|
||||
sAnim_RevengeBigScratch_2,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6948 =
|
||||
const struct SpriteTemplate gRevengeBigScratchSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_PURPLE_SWIPE,
|
||||
.paletteTag = ANIM_TAG_PURPLE_SWIPE,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_64x64,
|
||||
.anims = gUnknown_83E693C,
|
||||
.anims = sAnims_RevengeBigScratch,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B1484,
|
||||
.callback = AnimRevengeScratch,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E6960[] =
|
||||
static const union AffineAnimCmd sAffineAnim_FocusPunchFist[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x200, 0x200, 0, 0),
|
||||
AFFINEANIMCMD_FRAME(-0x20, -0x20, 0, 8),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E6978[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_FocusPunchFist[] =
|
||||
{
|
||||
gUnknown_83E6960,
|
||||
sAffineAnim_FocusPunchFist,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E697C =
|
||||
const struct SpriteTemplate gFocusPunchFistSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_HANDS_AND_FEET,
|
||||
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
|
||||
.oam = &gOamData_AffineDouble_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E66CC,
|
||||
.anims = sAnims_HandOrFoot,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E6978,
|
||||
.callback = sub_80B14F0,
|
||||
.affineAnims = sAffineAnims_FocusPunchFist,
|
||||
.callback = AnimFocusPunchFist,
|
||||
};
|
||||
|
||||
static void unc_080B08A0(struct Sprite *sprite)
|
||||
@@ -420,7 +420,7 @@ static void unc_080B08A0(struct Sprite *sprite)
|
||||
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
|
||||
}
|
||||
|
||||
static void sub_80B08DC(struct Sprite *sprite)
|
||||
static void AnimSlideHandOrFootToTarget(struct Sprite *sprite)
|
||||
{
|
||||
if (gBattleAnimArgs[7] == 1 && GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
|
||||
{
|
||||
@@ -432,14 +432,14 @@ static void sub_80B08DC(struct Sprite *sprite)
|
||||
AnimSnoreZ(sprite);
|
||||
}
|
||||
|
||||
static void sub_80B0928(struct Sprite *sprite)
|
||||
static void AnimJumpKick(struct Sprite *sprite)
|
||||
{
|
||||
if (IsContest())
|
||||
{
|
||||
gBattleAnimArgs[1] = -gBattleAnimArgs[1];
|
||||
gBattleAnimArgs[3] = -gBattleAnimArgs[3];
|
||||
}
|
||||
sub_80B08DC(sprite);
|
||||
AnimSlideHandOrFootToTarget(sprite);
|
||||
}
|
||||
|
||||
// Displays a basic fist or foot sprite for a given duration.
|
||||
@@ -461,7 +461,7 @@ static void AnimBasicFistOrFoot(struct Sprite *sprite)
|
||||
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
|
||||
}
|
||||
|
||||
static void sub_80B09A4(struct Sprite *sprite)
|
||||
static void AnimFistOrFootRandomPos(struct Sprite *sprite)
|
||||
{
|
||||
u8 battler;
|
||||
s16 xMod, yMod;
|
||||
@@ -516,7 +516,7 @@ static void sub_80B0B2C(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_80B0B80(struct Sprite *sprite)
|
||||
static void AnimCrossChopHand(struct Sprite *sprite)
|
||||
{
|
||||
InitSpritePosToAnimTarget(sprite, TRUE);
|
||||
sprite->data[0] = 30;
|
||||
@@ -550,7 +550,7 @@ static void sub_80B0BD8(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_80B0C28(struct Sprite *sprite)
|
||||
static void AnimSlidingKick(struct Sprite *sprite)
|
||||
{
|
||||
if (BATTLE_PARTNER(gBattleAnimAttacker) == gBattleAnimTarget && GetBattlerPosition(gBattleAnimTarget) < B_POSITION_PLAYER_RIGHT)
|
||||
gBattleAnimArgs[0] *= -1;
|
||||
@@ -636,7 +636,7 @@ static void AnimStompFootEnd(struct Sprite *sprite)
|
||||
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
|
||||
}
|
||||
|
||||
static void sub_80B0DF0(struct Sprite *sprite)
|
||||
static void AnimDizzyPunchDuck(struct Sprite *sprite)
|
||||
{
|
||||
if (sprite->data[0] == 0)
|
||||
{
|
||||
@@ -658,7 +658,7 @@ static void sub_80B0DF0(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_80B0E80(struct Sprite *sprite)
|
||||
static void AnimBrickBreakWall(struct Sprite *sprite)
|
||||
{
|
||||
if (gBattleAnimArgs[0] == 0)
|
||||
{
|
||||
@@ -709,7 +709,7 @@ static void sub_80B0EF0(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_80B0F68(struct Sprite *sprite)
|
||||
static void AnimBrickBreakWallShard(struct Sprite *sprite)
|
||||
{
|
||||
if (gBattleAnimArgs[0] == 0)
|
||||
{
|
||||
@@ -756,7 +756,7 @@ static void sub_80B1050(struct Sprite *sprite)
|
||||
DestroyAnimSprite(sprite);
|
||||
}
|
||||
|
||||
static void sub_80B107C(struct Sprite *sprite)
|
||||
static void AnimSuperpowerOrb(struct Sprite *sprite)
|
||||
{
|
||||
if (gBattleAnimArgs[0] == 0)
|
||||
{
|
||||
@@ -792,7 +792,7 @@ static void sub_80B111C(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_80B1188(struct Sprite *sprite)
|
||||
static void AnimSuperpowerRock(struct Sprite *sprite)
|
||||
{
|
||||
sprite->pos1.x = gBattleAnimArgs[0];
|
||||
sprite->pos1.y = 120;
|
||||
@@ -847,7 +847,7 @@ static void sub_80B12A4(struct Sprite *sprite)
|
||||
DestroyAnimSprite(sprite);
|
||||
}
|
||||
|
||||
static void sub_80B12E8(struct Sprite *sprite)
|
||||
static void AnimSuperpowerFireball(struct Sprite *sprite)
|
||||
{
|
||||
u8 battler;
|
||||
|
||||
@@ -884,7 +884,7 @@ static void sub_80B13D4(struct Sprite *sprite)
|
||||
++sprite->data[0];
|
||||
}
|
||||
|
||||
static void sub_80B13F8(struct Sprite *sprite)
|
||||
static void AnimArmThrustHit(struct Sprite *sprite)
|
||||
{
|
||||
u8 turn;
|
||||
|
||||
@@ -908,7 +908,7 @@ static void sub_80B13F8(struct Sprite *sprite)
|
||||
sprite->callback = sub_80B13D4;
|
||||
}
|
||||
|
||||
static void sub_80B1484(struct Sprite *sprite)
|
||||
static void AnimRevengeScratch(struct Sprite *sprite)
|
||||
{
|
||||
if (gBattleAnimArgs[2] == 0)
|
||||
InitSpritePosToAnimAttacker(sprite, 0);
|
||||
@@ -922,7 +922,7 @@ static void sub_80B1484(struct Sprite *sprite)
|
||||
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
|
||||
}
|
||||
|
||||
static void sub_80B14F0(struct Sprite *sprite)
|
||||
static void AnimFocusPunchFist(struct Sprite *sprite)
|
||||
{
|
||||
if (sprite->affineAnimEnded)
|
||||
{
|
||||
@@ -933,7 +933,7 @@ static void sub_80B14F0(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80B1530(u8 taskId)
|
||||
void AnimTask_MoveSkyUppercutBg(u8 taskId)
|
||||
{
|
||||
struct Task *task = &gTasks[taskId];
|
||||
|
||||
|
||||
+112
-109
@@ -6,21 +6,21 @@
|
||||
#include "trig.h"
|
||||
#include "constants/songs.h"
|
||||
|
||||
static void sub_80AC90C(struct Sprite *sprite);
|
||||
static void sub_80AC94C(struct Sprite *sprite);
|
||||
static void sub_80ACA00(struct Sprite *sprite);
|
||||
static void sub_80AC990(struct Sprite *sprite);
|
||||
static void AnimFireSpiralInward(struct Sprite *sprite);
|
||||
static void AnimFireSpread(struct Sprite *sprite);
|
||||
static void AnimLargeFlame(struct Sprite *sprite);
|
||||
static void AnimFirePlume(struct Sprite *sprite);
|
||||
static void sub_80ACAA8(struct Sprite *sprite);
|
||||
static void sub_80ACBB0(struct Sprite *sprite);
|
||||
static void AnimEmberFlare(struct Sprite *sprite);
|
||||
static void sub_80ACC44(struct Sprite *sprite);
|
||||
static void AnimBurnFlame(struct Sprite *sprite);
|
||||
static void AnimFireRing(struct Sprite *sprite);
|
||||
static void AnimFireCross(struct Sprite *sprite);
|
||||
static void sub_80ACDE8(struct Sprite *sprite);
|
||||
static void sub_80AD330(struct Sprite *sprite);
|
||||
static void sub_80AD454(struct Sprite *sprite);
|
||||
static void sub_80AD540(struct Sprite *sprite);
|
||||
static void sub_80AD6F4(struct Sprite *sprite);
|
||||
static void AnimFireSpiralOutward(struct Sprite *sprite);
|
||||
static void AnimEruptionLaunchRock(struct Sprite *sprite);
|
||||
static void AnimEruptionFallingRock(struct Sprite *sprite);
|
||||
static void AnimWillOWispOrb(struct Sprite *sprite);
|
||||
static void AnimWillOWispFire(struct Sprite *sprite);
|
||||
static void sub_80ACA6C(struct Sprite *sprite);
|
||||
static void sub_80ACB1C(struct Sprite *sprite);
|
||||
static void AnimFireRing_Step1(struct Sprite *sprite);
|
||||
@@ -38,7 +38,7 @@ static void sub_80AD4A8(struct Sprite *sprite);
|
||||
static void sub_80AD690(struct Sprite *sprite);
|
||||
static void sub_80AD870(u8 taskId);
|
||||
|
||||
static const union AnimCmd gUnknown_83E5BB8[] =
|
||||
static const union AnimCmd sAnim_FireSpiralSpread_0[] =
|
||||
{
|
||||
ANIMCMD_FRAME(16, 4),
|
||||
ANIMCMD_FRAME(32, 4),
|
||||
@@ -46,7 +46,7 @@ static const union AnimCmd gUnknown_83E5BB8[] =
|
||||
ANIMCMD_JUMP(0),
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E5BC8[] =
|
||||
static const union AnimCmd sAnim_FireSpiralSpread_1[] =
|
||||
{
|
||||
ANIMCMD_FRAME(16, 4, .vFlip = TRUE, .hFlip = TRUE),
|
||||
ANIMCMD_FRAME(32, 4, .vFlip = TRUE, .hFlip = TRUE),
|
||||
@@ -54,35 +54,35 @@ static const union AnimCmd gUnknown_83E5BC8[] =
|
||||
ANIMCMD_JUMP(0),
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E5BD8[] =
|
||||
static const union AnimCmd *const sAnims_FireSpiralSpread[] =
|
||||
{
|
||||
gUnknown_83E5BB8,
|
||||
gUnknown_83E5BC8,
|
||||
sAnim_FireSpiralSpread_0,
|
||||
sAnim_FireSpiralSpread_1,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E5BE0 =
|
||||
const struct SpriteTemplate gFireSpiralInwardSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_SMALL_EMBER,
|
||||
.paletteTag = ANIM_TAG_SMALL_EMBER,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E5BD8,
|
||||
.anims = sAnims_FireSpiralSpread,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80AC90C,
|
||||
.callback = AnimFireSpiralInward,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E5BF8 =
|
||||
const struct SpriteTemplate gFireSpreadSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_SMALL_EMBER,
|
||||
.paletteTag = ANIM_TAG_SMALL_EMBER,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E5BD8,
|
||||
.anims = sAnims_FireSpiralSpread,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80AC94C,
|
||||
.callback = AnimFireSpread,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E5C10[] =
|
||||
static const union AnimCmd sAnim_LargeFlame[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 3),
|
||||
ANIMCMD_FRAME(16, 3),
|
||||
@@ -95,12 +95,12 @@ static const union AnimCmd gUnknown_83E5C10[] =
|
||||
ANIMCMD_JUMP(0),
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E5C34[] =
|
||||
static const union AnimCmd *const sAnims_LargeFlame[] =
|
||||
{
|
||||
gUnknown_83E5C10,
|
||||
sAnim_LargeFlame,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E5C38[] =
|
||||
static const union AnimCmd sAnim_FirePlume[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 5),
|
||||
ANIMCMD_FRAME(16, 5),
|
||||
@@ -110,54 +110,54 @@ static const union AnimCmd gUnknown_83E5C38[] =
|
||||
ANIMCMD_JUMP(0),
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E5C50[] =
|
||||
static const union AnimCmd *const sAnims_FirePlume[] =
|
||||
{
|
||||
gUnknown_83E5C38,
|
||||
sAnim_FirePlume,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E5C54[] =
|
||||
static const union AffineAnimCmd sAffineAnim_LargeFlame[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x32, 0x100, 0, 0),
|
||||
AFFINEANIMCMD_FRAME(0x20, 0x0, 0, 7),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E5C6C[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_LargeFlame[] =
|
||||
{
|
||||
gUnknown_83E5C54,
|
||||
sAffineAnim_LargeFlame,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E5C70 =
|
||||
const struct SpriteTemplate gLargeFlameSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_FIRE,
|
||||
.paletteTag = ANIM_TAG_FIRE,
|
||||
.oam = &gOamData_AffineNormal_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E5C34,
|
||||
.anims = sAnims_LargeFlame,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E5C6C,
|
||||
.callback = sub_80ACA00,
|
||||
.affineAnims = sAffineAnims_LargeFlame,
|
||||
.callback = AnimLargeFlame,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E5C88 =
|
||||
const struct SpriteTemplate gLargeFlameScatterSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_FIRE,
|
||||
.paletteTag = ANIM_TAG_FIRE,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E5C34,
|
||||
.anims = sAnims_LargeFlame,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80ACA00,
|
||||
.callback = AnimLargeFlame,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E5CA0 =
|
||||
const struct SpriteTemplate gFirePlumeSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_FIRE_PLUME,
|
||||
.paletteTag = ANIM_TAG_FIRE_PLUME,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E5C50,
|
||||
.anims = sAnims_FirePlume,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80AC990,
|
||||
.callback = AnimFirePlume,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E5CB8 =
|
||||
@@ -165,10 +165,10 @@ const struct SpriteTemplate gUnknown_83E5CB8 =
|
||||
.tileTag = ANIM_TAG_SMALL_EMBER,
|
||||
.paletteTag = ANIM_TAG_SMALL_EMBER,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E5C50,
|
||||
.anims = sAnims_FirePlume,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80AC990,
|
||||
.callback = AnimFirePlume,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E5CD0[] =
|
||||
@@ -195,30 +195,30 @@ const struct SpriteTemplate gUnknown_83E5CE4 =
|
||||
.callback = sub_80ACAA8,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E5CFC[] =
|
||||
static const union AffineAnimCmd sAffineAnim_SunlightRay[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x50, 0x50, 0, 0),
|
||||
AFFINEANIMCMD_FRAME(0x2, 0x2, 10, 1),
|
||||
AFFINEANIMCMD_JUMP(1),
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E5D14[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_SunlightRay[] =
|
||||
{
|
||||
gUnknown_83E5CFC,
|
||||
sAffineAnim_SunlightRay,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E5D18 =
|
||||
const struct SpriteTemplate gSunlightRaySpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_SUNLIGHT,
|
||||
.paletteTag = ANIM_TAG_SUNLIGHT,
|
||||
.oam = &gOamData_AffineNormal_ObjBlend_32x32,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E5D14,
|
||||
.affineAnims = sAffineAnims_SunlightRay,
|
||||
.callback = sub_80ACBB0,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E5D30[] =
|
||||
static const union AnimCmd sAnim_BasicFire[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 4),
|
||||
ANIMCMD_FRAME(16, 4),
|
||||
@@ -228,9 +228,9 @@ static const union AnimCmd gUnknown_83E5D30[] =
|
||||
ANIMCMD_JUMP(0),
|
||||
};
|
||||
|
||||
const union AnimCmd *const gUnknown_83E5D48[] =
|
||||
const union AnimCmd *const gAnims_BasicFire[] =
|
||||
{
|
||||
gUnknown_83E5D30,
|
||||
sAnim_BasicFire,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gEmberSpriteTemplate =
|
||||
@@ -249,44 +249,44 @@ const struct SpriteTemplate gEmberFlareSpriteTemplate =
|
||||
.tileTag = ANIM_TAG_SMALL_EMBER,
|
||||
.paletteTag = ANIM_TAG_SMALL_EMBER,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E5D48,
|
||||
.anims = gAnims_BasicFire,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = AnimEmberFlare,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E5D7C =
|
||||
const struct SpriteTemplate gBurnFlameSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_SMALL_EMBER,
|
||||
.paletteTag = ANIM_TAG_SMALL_EMBER,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E5D48,
|
||||
.anims = gAnims_BasicFire,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80ACC44,
|
||||
.callback = AnimBurnFlame,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E5D94 =
|
||||
const struct SpriteTemplate gFireBlastRingSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_SMALL_EMBER,
|
||||
.paletteTag = ANIM_TAG_SMALL_EMBER,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E5D48,
|
||||
.anims = gAnims_BasicFire,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = AnimFireRing,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E5DAC[] =
|
||||
static const union AnimCmd sAnim_FireBlastCross[] =
|
||||
{
|
||||
ANIMCMD_FRAME(32, 6),
|
||||
ANIMCMD_FRAME(48, 6),
|
||||
ANIMCMD_JUMP(0),
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E5DB8[] =
|
||||
static const union AnimCmd *const sAnims_FireBlastCross[] =
|
||||
{
|
||||
gUnknown_83E5DAC,
|
||||
sAnim_FireBlastCross,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E5DBC[] =
|
||||
@@ -307,40 +307,40 @@ static const union AffineAnimCmd *const gUnknown_83E5DDC[] =
|
||||
gUnknown_83E5DCC,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E5DE4 =
|
||||
const struct SpriteTemplate gFireBlastCrossSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_SMALL_EMBER,
|
||||
.paletteTag = ANIM_TAG_SMALL_EMBER,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E5DB8,
|
||||
.anims = sAnims_FireBlastCross,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = AnimFireCross,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E5DFC =
|
||||
const struct SpriteTemplate gFireSpiralOutwardSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_SMALL_EMBER,
|
||||
.paletteTag = ANIM_TAG_SMALL_EMBER,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E5D48,
|
||||
.anims = gAnims_BasicFire,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80ACDE8,
|
||||
.callback = AnimFireSpiralOutward,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E5E14 =
|
||||
const struct SpriteTemplate gWeatherBallFireDownSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_SMALL_EMBER,
|
||||
.paletteTag = ANIM_TAG_SMALL_EMBER,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E5D48,
|
||||
.anims = gAnims_BasicFire,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_8077350,
|
||||
.callback = AnimWeatherBallDown,
|
||||
};
|
||||
|
||||
static const struct SpriteTemplate gUnknown_83E5E2C =
|
||||
static const struct SpriteTemplate gEruptionLaunchRockSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_WARM_ROCK,
|
||||
.paletteTag = ANIM_TAG_WARM_ROCK,
|
||||
@@ -348,10 +348,10 @@ static const struct SpriteTemplate gUnknown_83E5E2C =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80AD330,
|
||||
.callback = AnimEruptionLaunchRock,
|
||||
};
|
||||
|
||||
static const s16 sHeatedRockCoords[][2] =
|
||||
static const s16 sEruptionLaunchRockCoords[][2] =
|
||||
{
|
||||
{-2, -5},
|
||||
{-1, -1},
|
||||
@@ -362,7 +362,7 @@ static const s16 sHeatedRockCoords[][2] =
|
||||
{ 4, -7},
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E5E60 =
|
||||
const struct SpriteTemplate gEruptionFallingRockSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_WARM_ROCK,
|
||||
.paletteTag = ANIM_TAG_WARM_ROCK,
|
||||
@@ -370,10 +370,10 @@ const struct SpriteTemplate gUnknown_83E5E60 =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80AD454,
|
||||
.callback = AnimEruptionFallingRock,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E5E78[] =
|
||||
static const union AnimCmd sAnim_WillOWispOrb_0[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 5),
|
||||
ANIMCMD_FRAME(4, 5),
|
||||
@@ -382,44 +382,44 @@ static const union AnimCmd gUnknown_83E5E78[] =
|
||||
ANIMCMD_JUMP(0),
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E5E8C[] =
|
||||
static const union AnimCmd sAnim_WillOWispOrb_1[] =
|
||||
{
|
||||
ANIMCMD_FRAME(16, 5),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E5E94[] =
|
||||
static const union AnimCmd sAnim_WillOWispOrb_2[] =
|
||||
{
|
||||
ANIMCMD_FRAME(20, 5),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E5E9C[] =
|
||||
static const union AnimCmd sAnim_WillOWispOrb_3[] =
|
||||
{
|
||||
ANIMCMD_FRAME(20, 5),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E5EA4[] =
|
||||
static const union AnimCmd *const sAnims_WillOWispOrb[] =
|
||||
{
|
||||
gUnknown_83E5E78,
|
||||
gUnknown_83E5E8C,
|
||||
gUnknown_83E5E94,
|
||||
gUnknown_83E5E9C,
|
||||
sAnim_WillOWispOrb_0,
|
||||
sAnim_WillOWispOrb_1,
|
||||
sAnim_WillOWispOrb_2,
|
||||
sAnim_WillOWispOrb_3,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E5EB4 =
|
||||
const struct SpriteTemplate gWillOWispOrbSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_WISP_ORB,
|
||||
.paletteTag = ANIM_TAG_WISP_ORB,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_16x16,
|
||||
.anims = gUnknown_83E5EA4,
|
||||
.anims = sAnims_WillOWispOrb,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80AD540,
|
||||
.callback = AnimWillOWispOrb,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E5ECC[] =
|
||||
static const union AnimCmd sAnim_WillOWispFire[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 5),
|
||||
ANIMCMD_FRAME(16, 5),
|
||||
@@ -428,33 +428,36 @@ static const union AnimCmd gUnknown_83E5ECC[] =
|
||||
ANIMCMD_JUMP(0),
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E5EE0[] =
|
||||
static const union AnimCmd *const sAnims_WillOWispFire[] =
|
||||
{
|
||||
gUnknown_83E5ECC,
|
||||
sAnim_WillOWispFire,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E5EE4 =
|
||||
const struct SpriteTemplate gWillOWispFireSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_WISP_FIRE,
|
||||
.paletteTag = ANIM_TAG_WISP_FIRE,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E5EE0,
|
||||
.anims = sAnims_WillOWispFire,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80AD6F4,
|
||||
.callback = AnimWillOWispFire,
|
||||
};
|
||||
|
||||
static const s8 gUnknown_83E5EFC[16] =
|
||||
// Directions for shaking up/down or left/right in AnimTask_ShakeTargetInPattern
|
||||
// Only first 10 values are ever accessed.
|
||||
// First pattern results in larger shakes, second results in faster oscillation
|
||||
static const s8 sShakeDirsPattern0[16] =
|
||||
{
|
||||
-1, -1, 0, 1, 1, 0, 0, -1, -1, 1, 1, 0, 0, -1, 0, 1,
|
||||
};
|
||||
|
||||
static const s8 gUnknown_83E5F0C[16] =
|
||||
static const s8 sShakeDirsPattern1[16] =
|
||||
{
|
||||
-1, 0, 1, 0, -1, 1, 0, -1, 0, 1, 0, -1, 0, 1, 0, 1,
|
||||
};
|
||||
|
||||
static void sub_80AC90C(struct Sprite *sprite)
|
||||
static void AnimFireSpiralInward(struct Sprite *sprite)
|
||||
{
|
||||
sprite->data[0] = gBattleAnimArgs[0];
|
||||
sprite->data[1] = 0x3C;
|
||||
@@ -466,7 +469,7 @@ static void sub_80AC90C(struct Sprite *sprite)
|
||||
sprite->callback(sprite);
|
||||
}
|
||||
|
||||
static void sub_80AC94C(struct Sprite *sprite)
|
||||
static void AnimFireSpread(struct Sprite *sprite)
|
||||
{
|
||||
SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]);
|
||||
sprite->pos1.y += gBattleAnimArgs[1];
|
||||
@@ -477,7 +480,7 @@ static void sub_80AC94C(struct Sprite *sprite)
|
||||
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
|
||||
}
|
||||
|
||||
static void sub_80AC990(struct Sprite *sprite)
|
||||
static void AnimFirePlume(struct Sprite *sprite)
|
||||
{
|
||||
SetSpriteCoordsToAnimAttackerCoords(sprite);
|
||||
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
|
||||
@@ -498,7 +501,7 @@ static void sub_80AC990(struct Sprite *sprite)
|
||||
sprite->callback = sub_80ACA6C;
|
||||
}
|
||||
|
||||
static void sub_80ACA00(struct Sprite *sprite)
|
||||
static void AnimLargeFlame(struct Sprite *sprite)
|
||||
{
|
||||
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
|
||||
{
|
||||
@@ -606,7 +609,7 @@ static void AnimEmberFlare(struct Sprite *sprite)
|
||||
sprite->callback(sprite);
|
||||
}
|
||||
|
||||
static void sub_80ACC44(struct Sprite *sprite)
|
||||
static void AnimBurnFlame(struct Sprite *sprite)
|
||||
{
|
||||
gBattleAnimArgs[0] = -gBattleAnimArgs[0];
|
||||
gBattleAnimArgs[2] = -gBattleAnimArgs[2];
|
||||
@@ -696,7 +699,7 @@ static void AnimFireCross(struct Sprite *sprite)
|
||||
sprite->callback = TranslateSpriteLinear;
|
||||
}
|
||||
|
||||
static void sub_80ACDE8(struct Sprite *sprite)
|
||||
static void AnimFireSpiralOutward(struct Sprite *sprite)
|
||||
{
|
||||
InitSpritePosToAnimAttacker(sprite, 1);
|
||||
sprite->data[1] = gBattleAnimArgs[2];
|
||||
@@ -725,7 +728,7 @@ static void sub_80ACE50(struct Sprite *sprite)
|
||||
DestroyAnimSprite(sprite);
|
||||
}
|
||||
|
||||
void sub_80ACEA4(u8 taskId) // initialize animation task for Move_ERUPTION?
|
||||
void AnimTask_EruptionLaunchRocks(u8 taskId) // initialize animation task for Move_ERUPTION?
|
||||
{
|
||||
struct Task *task = &gTasks[taskId];
|
||||
|
||||
@@ -857,14 +860,14 @@ static void sub_80AD1F8(u8 spriteId, u8 taskId, u8 a3)
|
||||
}
|
||||
for (i = 0, j = 0; i <= 6; ++i)
|
||||
{
|
||||
u8 spriteId = CreateSprite(&gUnknown_83E5E2C, x, y, 2);
|
||||
u8 spriteId = CreateSprite(&gEruptionLaunchRockSpriteTemplate, x, y, 2);
|
||||
|
||||
if (spriteId != 0x40)
|
||||
{
|
||||
gSprites[spriteId].oam.tileNum += j * 4 + 0x40;
|
||||
if (++j >= 5)
|
||||
j = 0;
|
||||
sub_80AD3C8(&gSprites[spriteId], sHeatedRockCoords[i][0] * sign, sHeatedRockCoords[i][1]);
|
||||
sub_80AD3C8(&gSprites[spriteId], sEruptionLaunchRockCoords[i][0] * sign, sEruptionLaunchRockCoords[i][1]);
|
||||
gSprites[spriteId].data[6] = taskId;
|
||||
gSprites[spriteId].data[7] = a3;
|
||||
++gTasks[taskId].data[a3];
|
||||
@@ -872,7 +875,7 @@ static void sub_80AD1F8(u8 spriteId, u8 taskId, u8 a3)
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_80AD330(struct Sprite *sprite)
|
||||
static void AnimEruptionLaunchRock(struct Sprite *sprite)
|
||||
{
|
||||
sub_80AD3E4(sprite);
|
||||
if (sprite->invisible)
|
||||
@@ -922,7 +925,7 @@ static void sub_80AD3E4(struct Sprite *sprite)
|
||||
sprite->invisible = TRUE;
|
||||
}
|
||||
|
||||
static void sub_80AD454(struct Sprite *sprite)
|
||||
static void AnimEruptionFallingRock(struct Sprite *sprite)
|
||||
{
|
||||
sprite->pos1.x = gBattleAnimArgs[0];
|
||||
sprite->pos1.y = gBattleAnimArgs[1];
|
||||
@@ -971,7 +974,7 @@ static void sub_80AD4A8(struct Sprite *sprite)
|
||||
}
|
||||
|
||||
//wisp orb
|
||||
static void sub_80AD540(struct Sprite *sprite)
|
||||
static void AnimWillOWispOrb(struct Sprite *sprite)
|
||||
{
|
||||
switch (sprite->data[0])
|
||||
{
|
||||
@@ -1040,7 +1043,7 @@ static void sub_80AD690(struct Sprite *sprite)
|
||||
}
|
||||
|
||||
//wisp fire
|
||||
static void sub_80AD6F4(struct Sprite *sprite)
|
||||
static void AnimWillOWispFire(struct Sprite *sprite)
|
||||
{
|
||||
if (!sprite->data[0])
|
||||
{
|
||||
@@ -1072,7 +1075,7 @@ static void sub_80AD6F4(struct Sprite *sprite)
|
||||
DestroyAnimSprite(sprite);
|
||||
}
|
||||
|
||||
void sub_80AD800(u8 taskId)
|
||||
void AnimTask_MoveHeatWaveTargets(u8 taskId)
|
||||
{
|
||||
struct Task *task = &gTasks[taskId];
|
||||
|
||||
@@ -1162,7 +1165,7 @@ void AnimTask_BlendBackground(u8 taskId)
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
void sub_80ADAD8(u8 taskId)
|
||||
void AnimTask_ShakeTargetInPattern(u8 taskId)
|
||||
{
|
||||
s8 unk;
|
||||
u8 spriteId;
|
||||
@@ -1177,9 +1180,9 @@ void sub_80ADAD8(u8 taskId)
|
||||
++gTasks[taskId].data[0];
|
||||
spriteId = gBattlerSpriteIds[gBattleAnimTarget];
|
||||
if (!gTasks[taskId].data[4])
|
||||
unk = gUnknown_83E5EFC[gTasks[taskId].data[0] % 10];
|
||||
unk = sShakeDirsPattern0[gTasks[taskId].data[0] % 10];
|
||||
else
|
||||
unk = gUnknown_83E5F0C[gTasks[taskId].data[0] % 10];
|
||||
unk = sShakeDirsPattern1[gTasks[taskId].data[0] % 10];
|
||||
if (gTasks[taskId].data[3] == 1)
|
||||
gSprites[spriteId].pos2.y = gBattleAnimArgs[1] * unk < 0 ? -(gBattleAnimArgs[1] * unk) : gBattleAnimArgs[1] * unk;
|
||||
else
|
||||
|
||||
+96
-96
@@ -5,22 +5,22 @@
|
||||
#include "constants/battle_anim.h"
|
||||
#include "random.h"
|
||||
|
||||
static void sub_80B18E4(struct Sprite *sprite);
|
||||
static void sub_80B1A1C(struct Sprite *sprite);
|
||||
static void sub_80B1AB8(struct Sprite *sprite);
|
||||
static void sub_80B1BB0(struct Sprite *sprite);
|
||||
static void sub_80B1C3C(struct Sprite *sprite);
|
||||
static void sub_80B1D88(struct Sprite *sprite);
|
||||
static void AnimEllipticalGust(struct Sprite *sprite);
|
||||
static void AnimGustToTarget(struct Sprite *sprite);
|
||||
static void AnimAirWaveCrescent(struct Sprite *sprite);
|
||||
static void AnimFlyBallUp(struct Sprite *sprite);
|
||||
static void AnimFlyBallAttack(struct Sprite *sprite);
|
||||
static void AnimFallingFeather(struct Sprite *sprite);
|
||||
static void sub_80B24C0(struct Sprite *sprite);
|
||||
static void sub_80B2514(struct Sprite *sprite);
|
||||
static void sub_80B2780(struct Sprite *sprite);
|
||||
static void sub_80B2914(struct Sprite *sprite);
|
||||
static void sub_80B2974(struct Sprite *sprite);
|
||||
static void sub_80B2A08(struct Sprite *sprite);
|
||||
static void sub_80B2AF4(struct Sprite *sprite);
|
||||
static void sub_80B2BD8(struct Sprite *sprite);
|
||||
static void AnimWhirlwindLine(struct Sprite *sprite);
|
||||
static void AnimBounceBallShrink(struct Sprite *sprite);
|
||||
static void AnimBounceBallLand(struct Sprite *sprite);
|
||||
static void AnimDiveBall(struct Sprite *sprite);
|
||||
static void AnimDiveWaterSplash(struct Sprite *sprite);
|
||||
static void AnimSprayWaterDroplet(struct Sprite *sprite);
|
||||
static void sub_80B2CE4(struct Sprite *sprite);
|
||||
static void sub_80B2D64(struct Sprite *sprite);
|
||||
static void AnimSkyAttackBird(struct Sprite *sprite);
|
||||
static void sub_80B190C(struct Sprite *sprite);
|
||||
static void sub_80B198C(u8 taskId);
|
||||
static void sub_80B1A9C(struct Sprite *sprite);
|
||||
@@ -35,7 +35,7 @@ static void sub_80B2C88(struct Sprite *sprite);
|
||||
static void sub_80B2CF8(struct Sprite *sprite);
|
||||
static void sub_80B2E20(struct Sprite *sprite);
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6AE8 =
|
||||
const struct SpriteTemplate gEllipticalGustSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_GUST,
|
||||
.paletteTag = ANIM_TAG_GUST,
|
||||
@@ -43,33 +43,33 @@ const struct SpriteTemplate gUnknown_83E6AE8 =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B18E4,
|
||||
.callback = AnimEllipticalGust,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E6B00[] =
|
||||
static const union AffineAnimCmd sAffineAnim_GustToTarget[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x10, 0x100, 0, 0),
|
||||
AFFINEANIMCMD_FRAME(0xA, 0x0, 0, 24),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E6B18[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_GustToTarget[] =
|
||||
{
|
||||
gUnknown_83E6B00,
|
||||
sAffineAnim_GustToTarget,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6B1C =
|
||||
const struct SpriteTemplate gGustToTargetSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_GUST,
|
||||
.paletteTag = ANIM_TAG_GUST,
|
||||
.oam = &gOamData_AffineNormal_ObjNormal_32x64,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E6B18,
|
||||
.callback = sub_80B1A1C,
|
||||
.affineAnims = sAffineAnims_GustToTarget,
|
||||
.callback = AnimGustToTarget,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E6B34[] =
|
||||
static const union AnimCmd sAffineAnim_AirWaveCrescent[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 3),
|
||||
ANIMCMD_FRAME(0, 3, .hFlip = TRUE),
|
||||
@@ -78,23 +78,23 @@ static const union AnimCmd gUnknown_83E6B34[] =
|
||||
ANIMCMD_JUMP(0),
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E6B48[] =
|
||||
static const union AnimCmd *const sAffineAnims_AirWaveCrescent[] =
|
||||
{
|
||||
gUnknown_83E6B34,
|
||||
sAffineAnim_AirWaveCrescent,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6B4C =
|
||||
const struct SpriteTemplate gAirWaveCrescentSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_AIR_WAVE_2,
|
||||
.paletteTag = ANIM_TAG_AIR_WAVE_2,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x16,
|
||||
.anims = gUnknown_83E6B48,
|
||||
.anims = sAffineAnims_AirWaveCrescent,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B1AB8,
|
||||
.callback = AnimAirWaveCrescent,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E6B64[] =
|
||||
static const union AffineAnimCmd sAffineAnim_FlyBallUp[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x10, 0x100, 0, 0),
|
||||
AFFINEANIMCMD_FRAME(0x28, 0x0, 0, 6),
|
||||
@@ -103,78 +103,78 @@ static const union AffineAnimCmd gUnknown_83E6B64[] =
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E6B8C[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_FlyBallUp[] =
|
||||
{
|
||||
gUnknown_83E6B64,
|
||||
sAffineAnim_FlyBallUp,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E6B90[] =
|
||||
static const union AffineAnimCmd sAffineAnim_FlyBallAttack_0[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x0, 0x0, 50, 1),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E6B9C[] =
|
||||
static const union AffineAnimCmd sAffineAnim_FlyBallAttack_1[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x0, 0x0, -40, 1),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E6BB0[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_FlyBallAttack[] =
|
||||
{
|
||||
gUnknown_83E6B90,
|
||||
gUnknown_83E6B9C,
|
||||
sAffineAnim_FlyBallAttack_0,
|
||||
sAffineAnim_FlyBallAttack_1,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6BB8 =
|
||||
const struct SpriteTemplate gFlyBallUpSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_ROUND_SHADOW,
|
||||
.paletteTag = ANIM_TAG_ROUND_SHADOW,
|
||||
.oam = &gOamData_AffineDouble_ObjNormal_64x64,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E6B8C,
|
||||
.callback = sub_80B1BB0,
|
||||
.affineAnims = sAffineAnims_FlyBallUp,
|
||||
.callback = AnimFlyBallUp,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6BD0 =
|
||||
const struct SpriteTemplate gFlyBallAttackSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_ROUND_SHADOW,
|
||||
.paletteTag = ANIM_TAG_ROUND_SHADOW,
|
||||
.oam = &gOamData_AffineNormal_ObjNormal_64x64,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E6BB0,
|
||||
.callback = sub_80B1C3C,
|
||||
.affineAnims = sAffineAnims_FlyBallAttack,
|
||||
.callback = AnimFlyBallAttack,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E6BE8[] =
|
||||
static const union AnimCmd sAnim_FallingFeather_0[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 0),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E6BF0[] =
|
||||
static const union AnimCmd sAnim_FallingFeather_1[] =
|
||||
{
|
||||
ANIMCMD_FRAME(16, 0, .hFlip = TRUE),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E6BF8[] =
|
||||
static const union AnimCmd *const sAnims_FallingFeather[] =
|
||||
{
|
||||
gUnknown_83E6BE8,
|
||||
gUnknown_83E6BF0,
|
||||
sAnim_FallingFeather_0,
|
||||
sAnim_FallingFeather_1,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6C00 =
|
||||
const struct SpriteTemplate gFallingFeatherSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_WHITE_FEATHER,
|
||||
.paletteTag = ANIM_TAG_WHITE_FEATHER,
|
||||
.oam = &gOamData_AffineNormal_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E6BF8,
|
||||
.anims = sAnims_FallingFeather,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B1D88,
|
||||
.callback = AnimFallingFeather,
|
||||
};
|
||||
|
||||
// not used
|
||||
@@ -196,13 +196,13 @@ const struct SpriteTemplate gUnknown_83E6C50 =
|
||||
.tileTag = ANIM_TAG_WHITE_FEATHER,
|
||||
.paletteTag = ANIM_TAG_WHITE_FEATHER,
|
||||
.oam = &gOamData_AffineNormal_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E6BF8,
|
||||
.anims = sAnims_FallingFeather,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B2514,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E6C68[] =
|
||||
static const union AnimCmd sAnim_WhirlwindLines[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 1),
|
||||
ANIMCMD_FRAME(8, 1),
|
||||
@@ -212,23 +212,23 @@ static const union AnimCmd gUnknown_83E6C68[] =
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E6C80[] =
|
||||
static const union AnimCmd *const sAnims_WhirlwindLines[] =
|
||||
{
|
||||
gUnknown_83E6C68,
|
||||
sAnim_WhirlwindLines,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6C84 =
|
||||
const struct SpriteTemplate gWhirlwindLineSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_WHIRLWIND_LINES,
|
||||
.paletteTag = ANIM_TAG_WHIRLWIND_LINES,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x16,
|
||||
.anims = gUnknown_83E6C80,
|
||||
.anims = sAnims_WhirlwindLines,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B2780,
|
||||
.callback = AnimWhirlwindLine,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E6C9C[] =
|
||||
static const union AffineAnimCmd sAffineAnim_BounceBallShrink[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x10, 0x100, 0, 0),
|
||||
AFFINEANIMCMD_FRAME(0x28, 0x0, 0, 6),
|
||||
@@ -238,45 +238,45 @@ static const union AffineAnimCmd gUnknown_83E6C9C[] =
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E6CCC[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_BounceBallShrink[] =
|
||||
{
|
||||
gUnknown_83E6C9C,
|
||||
sAffineAnim_BounceBallShrink,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6CD0 =
|
||||
const struct SpriteTemplate gBounceBallShrinkSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_ROUND_SHADOW,
|
||||
.paletteTag = ANIM_TAG_ROUND_SHADOW,
|
||||
.oam = &gOamData_AffineDouble_ObjNormal_64x64,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E6CCC,
|
||||
.callback = sub_80B2914,
|
||||
.affineAnims = sAffineAnims_BounceBallShrink,
|
||||
.callback = AnimBounceBallShrink,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E6CE8[] =
|
||||
static const union AffineAnimCmd sAffineAnim_BounceBallLand[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0xA0, 0x100, 0, 0),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E6CF8[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_BounceBallLand[] =
|
||||
{
|
||||
gUnknown_83E6CE8,
|
||||
sAffineAnim_BounceBallLand,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6CFC =
|
||||
const struct SpriteTemplate gBounceBallLandSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_ROUND_SHADOW,
|
||||
.paletteTag = ANIM_TAG_ROUND_SHADOW,
|
||||
.oam = &gOamData_AffineDouble_ObjNormal_64x64,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E6CF8,
|
||||
.callback = sub_80B2974,
|
||||
.affineAnims = sAffineAnims_BounceBallLand,
|
||||
.callback = AnimBounceBallLand,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E6D14[] =
|
||||
static const union AffineAnimCmd sAffineAnim_DiveBall[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x10, 0x100, 0, 0),
|
||||
AFFINEANIMCMD_FRAME(0x28, 0x0, 0, 6),
|
||||
@@ -285,20 +285,20 @@ static const union AffineAnimCmd gUnknown_83E6D14[] =
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E6D3C[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_DiveBall[] =
|
||||
{
|
||||
gUnknown_83E6D14,
|
||||
sAffineAnim_DiveBall,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6D40 =
|
||||
const struct SpriteTemplate gDiveBallSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_ROUND_SHADOW,
|
||||
.paletteTag = ANIM_TAG_ROUND_SHADOW,
|
||||
.oam = &gOamData_AffineDouble_ObjNormal_64x64,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E6D3C,
|
||||
.callback = sub_80B2A08,
|
||||
.affineAnims = sAffineAnims_DiveBall,
|
||||
.callback = AnimDiveBall,
|
||||
};
|
||||
|
||||
// not used
|
||||
@@ -316,7 +316,7 @@ static const union AffineAnimCmd *const gUnknown_83E6D80[] =
|
||||
gUnknown_83E6D58,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6D7C =
|
||||
const struct SpriteTemplate gDiveWaterSplashSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_SPLASH,
|
||||
.paletteTag = ANIM_TAG_SPLASH,
|
||||
@@ -324,10 +324,10 @@ const struct SpriteTemplate gUnknown_83E6D7C =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B2AF4,
|
||||
.callback = AnimDiveWaterSplash,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6D94 =
|
||||
const struct SpriteTemplate gSprayWaterDropletSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_SWEAT_BEAD,
|
||||
.paletteTag = ANIM_TAG_SWEAT_BEAD,
|
||||
@@ -335,7 +335,7 @@ const struct SpriteTemplate gUnknown_83E6D94 =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B2BD8,
|
||||
.callback = AnimSprayWaterDroplet,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6DAC =
|
||||
@@ -349,7 +349,7 @@ const struct SpriteTemplate gUnknown_83E6DAC =
|
||||
.callback = sub_80B2CE4,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6DB4 =
|
||||
const struct SpriteTemplate gSkyAttackBirdSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_BIRD,
|
||||
.paletteTag = ANIM_TAG_BIRD,
|
||||
@@ -357,10 +357,10 @@ const struct SpriteTemplate gUnknown_83E6DB4 =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B2D64,
|
||||
.callback = AnimSkyAttackBird,
|
||||
};
|
||||
|
||||
static void sub_80B18E4(struct Sprite *sprite)
|
||||
static void AnimEllipticalGust(struct Sprite *sprite)
|
||||
{
|
||||
InitSpritePosToAnimTarget(sprite, FALSE);
|
||||
sprite->pos1.y += 20;
|
||||
@@ -379,7 +379,7 @@ static void sub_80B190C(struct Sprite *sprite)
|
||||
DestroyAnimSprite(sprite);
|
||||
}
|
||||
|
||||
void sub_80B194C(u8 taskId)
|
||||
void AnimTask_AnimateGustTornadoPalette(u8 taskId)
|
||||
{
|
||||
gTasks[taskId].data[0] = gBattleAnimArgs[1];
|
||||
gTasks[taskId].data[1] = gBattleAnimArgs[0];
|
||||
@@ -411,7 +411,7 @@ static void sub_80B198C(u8 taskId)
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
static void sub_80B1A1C(struct Sprite *sprite)
|
||||
static void AnimGustToTarget(struct Sprite *sprite)
|
||||
{
|
||||
InitSpritePosToAnimAttacker(sprite, TRUE);
|
||||
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
|
||||
@@ -432,7 +432,7 @@ static void sub_80B1A9C(struct Sprite *sprite)
|
||||
DestroyAnimSprite(sprite);
|
||||
}
|
||||
|
||||
static void sub_80B1AB8(struct Sprite *sprite)
|
||||
static void AnimAirWaveCrescent(struct Sprite *sprite)
|
||||
{
|
||||
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
|
||||
{
|
||||
@@ -467,7 +467,7 @@ static void sub_80B1AB8(struct Sprite *sprite)
|
||||
SeekSpriteAnim(sprite, gBattleAnimArgs[5]);
|
||||
}
|
||||
|
||||
static void sub_80B1BB0(struct Sprite *sprite)
|
||||
static void AnimFlyBallUp(struct Sprite *sprite)
|
||||
{
|
||||
InitSpritePosToAnimAttacker(sprite, TRUE);
|
||||
sprite->data[0] = gBattleAnimArgs[2];
|
||||
@@ -491,7 +491,7 @@ static void sub_80B1BF8(struct Sprite *sprite)
|
||||
DestroyAnimSprite(sprite);
|
||||
}
|
||||
|
||||
static void sub_80B1C3C(struct Sprite *sprite)
|
||||
static void AnimFlyBallAttack(struct Sprite *sprite)
|
||||
{
|
||||
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
|
||||
{
|
||||
@@ -564,7 +564,7 @@ struct FeatherDanceData
|
||||
u16 unkE_1:15;
|
||||
};
|
||||
|
||||
static void sub_80B1D88(struct Sprite *sprite)
|
||||
static void AnimFallingFeather(struct Sprite *sprite)
|
||||
{
|
||||
u8 battler, matrixNum, sinIndex;
|
||||
s16 spriteCoord, sinVal;
|
||||
@@ -986,7 +986,7 @@ static void sub_80B268C(struct Sprite *sprite)
|
||||
sprite->callback = sub_80B1F94;
|
||||
}
|
||||
|
||||
static void sub_80B2780(struct Sprite *sprite)
|
||||
static void AnimWhirlwindLine(struct Sprite *sprite)
|
||||
{
|
||||
u16 arg;
|
||||
u8 mult;
|
||||
@@ -1023,7 +1023,7 @@ static void sub_80B2820(struct Sprite *sprite)
|
||||
DestroyAnimSprite(sprite);
|
||||
}
|
||||
|
||||
void sub_80B2868(u8 taskId)
|
||||
void AnimTask_DrillPeckHitSplats(u8 taskId)
|
||||
{
|
||||
if (!(gTasks[taskId].data[0] % 32))
|
||||
{
|
||||
@@ -1032,7 +1032,7 @@ void sub_80B2868(u8 taskId)
|
||||
gBattleAnimArgs[1] = Cos(gTasks[taskId].data[0], -13);
|
||||
gBattleAnimArgs[2] = 1;
|
||||
gBattleAnimArgs[3] = 3;
|
||||
CreateSpriteAndAnimate(&gUnknown_83E7C98,
|
||||
CreateSpriteAndAnimate(&gFlashingHitSplatSpriteTemplate,
|
||||
GetBattlerSpriteCoord(gBattleAnimTarget, 2),
|
||||
GetBattlerSpriteCoord(gBattleAnimTarget, 3),
|
||||
3);
|
||||
@@ -1042,7 +1042,7 @@ void sub_80B2868(u8 taskId)
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
static void sub_80B2914(struct Sprite *sprite)
|
||||
static void AnimBounceBallShrink(struct Sprite *sprite)
|
||||
{
|
||||
switch (sprite->data[0])
|
||||
{
|
||||
@@ -1058,7 +1058,7 @@ static void sub_80B2914(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_80B2974(struct Sprite *sprite)
|
||||
static void AnimBounceBallLand(struct Sprite *sprite)
|
||||
{
|
||||
switch (sprite->data[0])
|
||||
{
|
||||
@@ -1083,7 +1083,7 @@ static void sub_80B2974(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_80B2A08(struct Sprite *sprite)
|
||||
static void AnimDiveBall(struct Sprite *sprite)
|
||||
{
|
||||
InitSpritePosToAnimAttacker(sprite, 1);
|
||||
sprite->data[0] = gBattleAnimArgs[2];
|
||||
@@ -1120,7 +1120,7 @@ static void sub_80B2AB0(struct Sprite *sprite)
|
||||
DestroyAnimSprite(sprite);
|
||||
}
|
||||
|
||||
static void sub_80B2AF4(struct Sprite *sprite)
|
||||
static void AnimDiveWaterSplash(struct Sprite *sprite)
|
||||
{
|
||||
u32 matrixNum;
|
||||
s32 t1, t2;
|
||||
@@ -1165,7 +1165,7 @@ static void sub_80B2AF4(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_80B2BD8(struct Sprite *sprite)
|
||||
static void AnimSprayWaterDroplet(struct Sprite *sprite)
|
||||
{
|
||||
s32 v1 = 0x1FF & Random();
|
||||
s32 v2 = 0x7F & Random();
|
||||
@@ -1241,7 +1241,7 @@ static void sub_80B2CF8(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_80B2D64(struct Sprite *sprite)
|
||||
static void AnimSkyAttackBird(struct Sprite *sprite)
|
||||
{
|
||||
u16 rotation;
|
||||
s16 posx = sprite->pos1.x;
|
||||
|
||||
+58
-58
@@ -8,65 +8,65 @@
|
||||
#include "decompress.h"
|
||||
#include "constants/songs.h"
|
||||
|
||||
static void sub_80B5268(struct Sprite *sprite);
|
||||
static void AnimConfuseRayBallBounce(struct Sprite *sprite);
|
||||
static void sub_80B52D0(struct Sprite *sprite);
|
||||
static void sub_80B5344(struct Sprite *sprite);
|
||||
static void sub_80B53C0(struct Sprite *sprite);
|
||||
static void sub_80B5450(struct Sprite *sprite);
|
||||
static void AnimConfuseRayBallSpiral(struct Sprite *sprite);
|
||||
static void sub_80B5470(struct Sprite *sprite);
|
||||
static void sub_80B5570(u8 taskId);
|
||||
static void sub_80B55C8(u8 taskId);
|
||||
static void InitAnimShadowBall(struct Sprite *sprite);
|
||||
static void AnimShadowBall(struct Sprite *sprite);
|
||||
static void AnimShadowBallStep(struct Sprite *sprite);
|
||||
static void sub_80B57F8(struct Sprite *sprite);
|
||||
static void AnimLick(struct Sprite *sprite);
|
||||
static void sub_80B5810(struct Sprite *sprite);
|
||||
static void sub_80B59D4(u8 taskId);
|
||||
static void sub_80B5AD4(u8 taskId);
|
||||
static void sub_80B5D38(u8 taskId);
|
||||
static void sub_80B5DCC(u8 taskId);
|
||||
static void sub_80B5EC0(struct Sprite *sprite);
|
||||
static void AnimDestinyBondWhiteShadow(struct Sprite *sprite);
|
||||
static void sub_80B5FE0(struct Sprite *sprite);
|
||||
static void sub_80B623C(u8 taskId);
|
||||
static void sub_80B6468(u8 taskId);
|
||||
static void sub_80B65F0(u8 taskId);
|
||||
static void sub_80B664C(struct Sprite *sprite);
|
||||
static void AnimCurseNail(struct Sprite *sprite);
|
||||
static void sub_80B66A8(struct Sprite *sprite);
|
||||
static void sub_80B6728(struct Sprite *sprite);
|
||||
static void sub_80B67A0(struct Sprite *sprite);
|
||||
static void sub_80B67D4(struct Sprite *sprite);
|
||||
static void AnimGhostStatusSprite(struct Sprite *sprite);
|
||||
static void sub_80B68A8(struct Sprite *sprite);
|
||||
static void sub_80B696C(u8 taskId);
|
||||
static void sub_80B6AF8(struct Sprite *sprite);
|
||||
static void AnimGrudgeFlame(struct Sprite *sprite);
|
||||
static void sub_80B7158(struct Sprite *sprite);
|
||||
static void sub_80B6BE4(u8 taskId);
|
||||
static void sub_80B6F30(u8 taskId);
|
||||
static void sub_80B6FC4(u8 taskId);
|
||||
static void sub_80B71B0(struct Sprite *sprite);
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E75A8[] =
|
||||
static const union AffineAnimCmd sAffineAnim_ConfuseRayBallBounce[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x1E, 0x1E, 10, 5),
|
||||
AFFINEANIMCMD_FRAME(-0x1E, -0x1E, 10, 5),
|
||||
AFFINEANIMCMD_JUMP(0),
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E75C0[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_ConfuseRayBallBounce[] =
|
||||
{
|
||||
gUnknown_83E75A8,
|
||||
sAffineAnim_ConfuseRayBallBounce,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E75C4 =
|
||||
const struct SpriteTemplate gConfuseRayBallBounceSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_YELLOW_BALL,
|
||||
.paletteTag = ANIM_TAG_YELLOW_BALL,
|
||||
.oam = &gOamData_AffineDouble_ObjNormal_16x16,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E75C0,
|
||||
.callback = sub_80B5268,
|
||||
.affineAnims = sAffineAnims_ConfuseRayBallBounce,
|
||||
.callback = AnimConfuseRayBallBounce,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E75DC =
|
||||
const struct SpriteTemplate gConfuseRayBallSpiralSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_YELLOW_BALL,
|
||||
.paletteTag = ANIM_TAG_YELLOW_BALL,
|
||||
@@ -74,18 +74,18 @@ const struct SpriteTemplate gUnknown_83E75DC =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B5450,
|
||||
.callback = AnimConfuseRayBallSpiral,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E75F4[] =
|
||||
static const union AffineAnimCmd sAffineAnim_ShadowBall[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x0, 0x0, 10, 1),
|
||||
AFFINEANIMCMD_JUMP(0),
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E7604[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_ShadowBall[] =
|
||||
{
|
||||
gUnknown_83E75F4,
|
||||
sAffineAnim_ShadowBall,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gShadowBallSpriteTemplate =
|
||||
@@ -95,11 +95,11 @@ const struct SpriteTemplate gShadowBallSpriteTemplate =
|
||||
.oam = &gOamData_AffineNormal_ObjNormal_32x32,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E7604,
|
||||
.callback = InitAnimShadowBall,
|
||||
.affineAnims = sAffineAnims_ShadowBall,
|
||||
.callback = AnimShadowBall,
|
||||
};
|
||||
|
||||
const union AnimCmd gUnknown_83E7620[] =
|
||||
const union AnimCmd sAnim_Lick[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 2),
|
||||
ANIMCMD_FRAME(8, 2),
|
||||
@@ -109,20 +109,20 @@ const union AnimCmd gUnknown_83E7620[] =
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E7638[] =
|
||||
static const union AnimCmd *const sAnims_Lick[] =
|
||||
{
|
||||
gUnknown_83E7620,
|
||||
sAnim_Lick,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E763C =
|
||||
const struct SpriteTemplate gLickSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_LICK,
|
||||
.paletteTag = ANIM_TAG_LICK,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_16x32,
|
||||
.anims = gUnknown_83E7638,
|
||||
.anims = sAnims_Lick,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B57F8,
|
||||
.callback = AnimLick,
|
||||
};
|
||||
|
||||
// not used
|
||||
@@ -138,7 +138,7 @@ static const union AffineAnimCmd *const gUnknown_83E7664[] =
|
||||
gUnknown_83E7654,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7668 =
|
||||
const struct SpriteTemplate gDestinyBondWhiteShadowSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_WHITE_SHADOW,
|
||||
.paletteTag = ANIM_TAG_WHITE_SHADOW,
|
||||
@@ -146,10 +146,10 @@ const struct SpriteTemplate gUnknown_83E7668 =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B5EC0,
|
||||
.callback = AnimDestinyBondWhiteShadow,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7680 =
|
||||
const struct SpriteTemplate gCurseNailSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_NAIL,
|
||||
.paletteTag = ANIM_TAG_NAIL,
|
||||
@@ -157,10 +157,10 @@ const struct SpriteTemplate gUnknown_83E7680 =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B664C,
|
||||
.callback = AnimCurseNail,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7698 =
|
||||
const struct SpriteTemplate gCurseGhostSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_GHOSTLY_SPIRIT,
|
||||
.paletteTag = ANIM_TAG_GHOSTLY_SPIRIT,
|
||||
@@ -168,10 +168,10 @@ const struct SpriteTemplate gUnknown_83E7698 =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B67D4,
|
||||
.callback = AnimGhostStatusSprite,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E76B0 =
|
||||
const struct SpriteTemplate gNightmareDevilSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_DEVIL,
|
||||
.paletteTag = ANIM_TAG_DEVIL,
|
||||
@@ -179,10 +179,10 @@ const struct SpriteTemplate gUnknown_83E76B0 =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B67D4,
|
||||
.callback = AnimGhostStatusSprite,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E76C8[] =
|
||||
static const union AnimCmd sAnim_GrudgeFlame[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 4),
|
||||
ANIMCMD_FRAME(8, 4),
|
||||
@@ -191,20 +191,20 @@ static const union AnimCmd gUnknown_83E76C8[] =
|
||||
ANIMCMD_JUMP(0),
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E76DC[] =
|
||||
static const union AnimCmd *const sAnims_GrudgeFlame[] =
|
||||
{
|
||||
gUnknown_83E76C8,
|
||||
sAnim_GrudgeFlame,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E76E0 =
|
||||
const struct SpriteTemplate gGrudgeFlameSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_PURPLE_FLAME,
|
||||
.paletteTag = ANIM_TAG_PURPLE_FLAME,
|
||||
.oam = &gOamData_AffineOff_ObjBlend_16x32,
|
||||
.anims = gUnknown_83E76DC,
|
||||
.anims = sAnims_GrudgeFlame,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B6AF8,
|
||||
.callback = AnimGrudgeFlame,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E76F8 =
|
||||
@@ -218,7 +218,7 @@ const struct SpriteTemplate gUnknown_83E76F8 =
|
||||
.callback = sub_80B7158,
|
||||
};
|
||||
|
||||
static void sub_80B5268(struct Sprite *sprite)
|
||||
static void AnimConfuseRayBallBounce(struct Sprite *sprite)
|
||||
{
|
||||
InitSpritePosToAnimAttacker(sprite, 1);
|
||||
sprite->data[0] = gBattleAnimArgs[2];
|
||||
@@ -306,7 +306,7 @@ static void sub_80B53C0(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_80B5450(struct Sprite *sprite)
|
||||
static void AnimConfuseRayBallSpiral(struct Sprite *sprite)
|
||||
{
|
||||
InitSpritePosToAnimTarget(sprite, TRUE);
|
||||
sprite->callback = sub_80B5470;
|
||||
@@ -332,7 +332,7 @@ static void sub_80B5470(struct Sprite *sprite)
|
||||
DestroyAnimSprite(sprite);
|
||||
}
|
||||
|
||||
void sub_80B54E8(u8 taskId)
|
||||
void AnimTask_NightShadeClone(u8 taskId)
|
||||
{
|
||||
u8 spriteId;
|
||||
|
||||
@@ -393,7 +393,7 @@ static void sub_80B55C8(u8 taskId)
|
||||
// arg 0: duration step 1 (attacker -> center)
|
||||
// arg 1: duration step 2 (spin center)
|
||||
// arg 2: duration step 3 (center -> target)
|
||||
static void InitAnimShadowBall(struct Sprite *sprite)
|
||||
static void AnimShadowBall(struct Sprite *sprite)
|
||||
{
|
||||
s16 oldPosX = sprite->pos1.x;
|
||||
s16 oldPosY = sprite->pos1.y;
|
||||
@@ -455,7 +455,7 @@ static void AnimShadowBallStep(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_80B57F8(struct Sprite *sprite)
|
||||
static void AnimLick(struct Sprite *sprite)
|
||||
{
|
||||
InitSpritePosToAnimTarget(sprite, TRUE);
|
||||
sprite->callback = sub_80B5810;
|
||||
@@ -507,7 +507,7 @@ static void sub_80B5810(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80B58AC(u8 taskId)
|
||||
void AnimTask_NightmareClone(u8 taskId)
|
||||
{
|
||||
struct Task *task;
|
||||
|
||||
@@ -579,7 +579,7 @@ static void sub_80B59D4(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80B5AAC(u8 taskId)
|
||||
void AnimTask_SpiteTargetShadow(u8 taskId)
|
||||
{
|
||||
struct Task *task;
|
||||
|
||||
@@ -732,7 +732,7 @@ static void sub_80B5DCC(u8 taskId)
|
||||
++task->data[15];
|
||||
}
|
||||
|
||||
static void sub_80B5EC0(struct Sprite *sprite)
|
||||
static void AnimDestinyBondWhiteShadow(struct Sprite *sprite)
|
||||
{
|
||||
s16 battler1X, battler1Y;
|
||||
s16 battler2X, battler2Y;
|
||||
@@ -781,7 +781,7 @@ static void sub_80B5FE0(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80B6020(u8 taskId)
|
||||
void AnimTask_DestinyBondWhiteShadow(u8 taskId)
|
||||
{
|
||||
struct Task *task;
|
||||
s16 battler;
|
||||
@@ -808,7 +808,7 @@ void sub_80B6020(u8 taskId)
|
||||
&& battler != (gBattleAnimAttacker ^ 2)
|
||||
&& IsBattlerSpriteVisible(battler))
|
||||
{
|
||||
spriteId = CreateSprite(&gUnknown_83E7668, baseX, baseY, 55);
|
||||
spriteId = CreateSprite(&gDestinyBondWhiteShadowSpriteTemplate, baseX, baseY, 55);
|
||||
if (spriteId != MAX_SPRITES)
|
||||
{
|
||||
x = GetBattlerSpriteCoord(battler, 2);
|
||||
@@ -829,7 +829,7 @@ void sub_80B6020(u8 taskId)
|
||||
}
|
||||
else
|
||||
{
|
||||
spriteId = CreateSprite(&gUnknown_83E7668, baseX, baseY, 55);
|
||||
spriteId = CreateSprite(&gDestinyBondWhiteShadowSpriteTemplate, baseX, baseY, 55);
|
||||
if (spriteId != MAX_SPRITES)
|
||||
{
|
||||
x = 48;
|
||||
@@ -921,7 +921,7 @@ static void sub_80B623C(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80B63B4(u8 taskId)
|
||||
void AnimTask_CurseStretchingBlackBg(u8 taskId)
|
||||
{
|
||||
s16 startX, startY;
|
||||
s16 leftDistance, topDistance, bottomDistance, rightDistance;
|
||||
@@ -1004,7 +1004,7 @@ static void sub_80B65F0(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_80B664C(struct Sprite *sprite)
|
||||
static void AnimCurseNail(struct Sprite *sprite)
|
||||
{
|
||||
s16 xDelta, xDelta2;
|
||||
|
||||
@@ -1093,7 +1093,7 @@ static void sub_80B67A0(struct Sprite *sprite)
|
||||
DestroyAnimSprite(sprite);
|
||||
}
|
||||
|
||||
static void sub_80B67D4(struct Sprite *sprite)
|
||||
static void AnimGhostStatusSprite(struct Sprite *sprite)
|
||||
{
|
||||
u16 coeffB, coeffA;
|
||||
|
||||
@@ -1137,7 +1137,7 @@ static void sub_80B68A8(struct Sprite *sprite)
|
||||
DestroyAnimSprite(sprite);
|
||||
}
|
||||
|
||||
void sub_80B68C8(u8 taskId)
|
||||
void AnimTask_GrudgeFlames(u8 taskId)
|
||||
{
|
||||
struct Task *task = &gTasks[taskId];
|
||||
|
||||
@@ -1168,7 +1168,7 @@ static void sub_80B696C(u8 taskId)
|
||||
case 0:
|
||||
for (i = 0; i < 6; ++i)
|
||||
{
|
||||
spriteId = CreateSprite(&gUnknown_83E76E0, task->data[9], task->data[10], task->data[6]);
|
||||
spriteId = CreateSprite(&gGrudgeFlameSpriteTemplate, task->data[9], task->data[10], task->data[6]);
|
||||
if (spriteId != MAX_SPRITES)
|
||||
{
|
||||
gSprites[spriteId].data[0] = taskId;
|
||||
@@ -1235,7 +1235,7 @@ static void sub_80B696C(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_80B6AF8(struct Sprite *sprite)
|
||||
static void AnimGrudgeFlame(struct Sprite *sprite)
|
||||
{
|
||||
u16 index;
|
||||
|
||||
|
||||
+7
-6
@@ -1019,7 +1019,7 @@ const u32 gBattleAnimBgTilemap_InAir[] = INCBIN_U32("graphics/battle_anims/backg
|
||||
const u32 gBattleAnimSpriteGfx_Protect[] = INCBIN_U32("graphics/battle_anims/sprites/protect.4bpp.lz");
|
||||
const u32 gBattleAnimSpritePal_Protect[] = INCBIN_U32("graphics/battle_anims/sprites/protect.gbapal.lz");
|
||||
|
||||
const u32 gFile_graphics_battle_anims_backgrounds_water_muddy_palette[] = INCBIN_U32("graphics/battle_anims/backgrounds/water_muddy.gbapal.lz");
|
||||
const u32 gBattleAnimBgPalette_MuddyWater[] = INCBIN_U32("graphics/battle_anims/backgrounds/water_muddy.gbapal.lz");
|
||||
|
||||
const u32 gFile_graphics_battle_interface_enemy_mon_shadow_sheet[] = INCBIN_U32("graphics/battle_interface/enemy_mon_shadow.4bpp.lz");
|
||||
|
||||
@@ -1085,11 +1085,12 @@ const u32 gBattleAnimSpritePal_Bird[] = INCBIN_U32("graphics/battle_anims/sprite
|
||||
const u32 gBattleAnimSpriteGfx_CrossImpact[] = INCBIN_U32("graphics/battle_anims/sprites/cross_impact.4bpp.lz");
|
||||
const u32 gBattleAnimSpritePal_CrossImpact[] = INCBIN_U32("graphics/battle_anims/sprites/cross_impact.gbapal.lz");
|
||||
|
||||
const u32 gFile_graphics_battle_anims_backgrounds_water_sheet[] = INCBIN_U32("graphics/battle_anims/backgrounds/water.4bpp.lz");
|
||||
const u32 gFile_graphics_battle_anims_backgrounds_water_palette[] = INCBIN_U32("graphics/battle_anims/backgrounds/water.gbapal.lz");
|
||||
const u32 gFile_graphics_unknown_unknown_E81D14_tilemap[] = INCBIN_U32("graphics/unknown/unknown_E81D14.bin.lz");
|
||||
const u32 gFile_graphics_unknown_unknown_E81FE4_tilemap[] = INCBIN_U32("graphics/unknown/unknown_E81FE4.bin.lz");
|
||||
const u32 gFile_graphics_unknown_unknown_E822B8_tilemap[] = INCBIN_U32("graphics/unknown/unknown_E822B8.bin.lz");
|
||||
const u32 gBattleAnimBgImage_Surf[] = INCBIN_U32("graphics/battle_anims/backgrounds/water.4bpp.lz");
|
||||
const u32 gBattleAnimBgPalette_Surf[] = INCBIN_U32("graphics/battle_anims/backgrounds/water.gbapal.lz");
|
||||
|
||||
const u32 gBattleAnimBgTilemap_SurfOpponent[] = INCBIN_U32("graphics/battle_anims/backgrounds/water_opponent.bin.lz");
|
||||
const u32 gBattleAnimBgTilemap_SurfPlayer[] = INCBIN_U32("graphics/battle_anims/backgrounds/water_player.bin.lz");
|
||||
const u32 gBattleAnimBgTilemap_SurfContest[] = INCBIN_U32("graphics/battle_anims/backgrounds/water_contest.bin.lz");
|
||||
|
||||
const u32 gBattleAnimSpritePal_Slash2[] = INCBIN_U32("graphics/battle_anims/sprites/slash_2.gbapal.lz");
|
||||
|
||||
|
||||
+23
-23
@@ -26,51 +26,51 @@ static void sub_80B967C(u8 taskId);
|
||||
static void sub_80B9760(struct Task *task);
|
||||
static void sub_80B98A8(u8 taskId);
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E7A00[] =
|
||||
static const union AffineAnimCmd sAffineAnim_Bonemerang[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x0, 0x0, 15, 1),
|
||||
AFFINEANIMCMD_JUMP(0),
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E7A10[] =
|
||||
static const union AffineAnimCmd sAffineAnim_SpinningBone[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x0, 0x0, 20, 1),
|
||||
AFFINEANIMCMD_JUMP(0),
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E7A20[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_Bonemerang[] =
|
||||
{
|
||||
gUnknown_83E7A00,
|
||||
sAffineAnim_Bonemerang,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E7A24[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_SpinningBone[] =
|
||||
{
|
||||
gUnknown_83E7A10,
|
||||
sAffineAnim_SpinningBone,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7A28 =
|
||||
const struct SpriteTemplate gBonemerangSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_BONE,
|
||||
.paletteTag = ANIM_TAG_BONE,
|
||||
.oam = &gOamData_AffineNormal_ObjNormal_32x32,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E7A20,
|
||||
.affineAnims = sAffineAnims_Bonemerang,
|
||||
.callback = AnimBonemerangProjectile,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7A40 =
|
||||
const struct SpriteTemplate gSpinningBoneSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_BONE,
|
||||
.paletteTag = ANIM_TAG_BONE,
|
||||
.oam = &gOamData_AffineNormal_ObjNormal_32x32,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E7A24,
|
||||
.affineAnims = sAffineAnims_SpinningBone,
|
||||
.callback = AnimBoneHitProjectile,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7A58 =
|
||||
const struct SpriteTemplate gSandAttackDirtSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_MUD_SAND,
|
||||
.paletteTag = ANIM_TAG_MUD_SAND,
|
||||
@@ -81,29 +81,29 @@ const struct SpriteTemplate gUnknown_83E7A58 =
|
||||
.callback = AnimDirtScatter,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E7A70[] =
|
||||
static const union AnimCmd sAnim_MudSlapMud[] =
|
||||
{
|
||||
ANIMCMD_FRAME(1, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E7A78[] =
|
||||
static const union AnimCmd *const sAnims_MudSlapMud[] =
|
||||
{
|
||||
gUnknown_83E7A70,
|
||||
sAnim_MudSlapMud,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7A7C =
|
||||
const struct SpriteTemplate gMudSlapMudSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_MUD_SAND,
|
||||
.paletteTag = ANIM_TAG_MUD_SAND,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_16x16,
|
||||
.anims = gUnknown_83E7A78,
|
||||
.anims = sAnims_MudSlapMud,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = AnimDirtScatter,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7A94 =
|
||||
const struct SpriteTemplate gMudsportMudSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_MUD_SAND,
|
||||
.paletteTag = ANIM_TAG_MUD_SAND,
|
||||
@@ -114,7 +114,7 @@ const struct SpriteTemplate gUnknown_83E7A94 =
|
||||
.callback = AnimMudSportDirt,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7AAC =
|
||||
const struct SpriteTemplate gDirtPlumeSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_MUD_SAND,
|
||||
.paletteTag = ANIM_TAG_MUD_SAND,
|
||||
@@ -125,7 +125,7 @@ const struct SpriteTemplate gUnknown_83E7AAC =
|
||||
.callback = AnimFissureDirtPlumeParticle,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7AC4 =
|
||||
const struct SpriteTemplate gDirtMoundSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_DIRT_MOUND,
|
||||
.paletteTag = ANIM_TAG_DIRT_MOUND,
|
||||
@@ -279,7 +279,7 @@ static void AnimMudSportDirtFalling(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80B8E94(u8 taskId)
|
||||
void AnimTask_DigDownMovement(u8 taskId)
|
||||
{
|
||||
struct Task *task = &gTasks[taskId];
|
||||
|
||||
@@ -372,7 +372,7 @@ static void sub_80B908C(u8 taskId)
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
void sub_80B90EC(u8 taskId)
|
||||
void AnimTask_DigUpMovement(u8 taskId)
|
||||
{
|
||||
struct Task *task = &gTasks[taskId];
|
||||
|
||||
@@ -538,7 +538,7 @@ static void AnimDigDirtMound(struct Sprite *sprite)
|
||||
sprite->callback = WaitAnimForDuration;
|
||||
}
|
||||
|
||||
void sub_80B94B4(u8 taskId)
|
||||
void AnimTask_HorizontalShake(u8 taskId)
|
||||
{
|
||||
u16 i;
|
||||
struct Task *task = &gTasks[taskId];
|
||||
@@ -689,7 +689,7 @@ void AnimTask_IsPowerOver99(u8 taskId)
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
void sub_80B9800(u8 taskId)
|
||||
void AnimTask_PositionFissureBgOnBattler(u8 taskId)
|
||||
{
|
||||
struct Task *newTask;
|
||||
u8 battler = (gBattleAnimArgs[0] & 1) ? gBattleAnimTarget : gBattleAnimAttacker;
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
#include "global.h"
|
||||
#include "malloc.h"
|
||||
#include "menu.h"
|
||||
#include "malloc.h"
|
||||
|
||||
static EWRAM_DATA u8 sHelpMessageWindowId = 0;
|
||||
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
#include "gflib.h"
|
||||
#include "decompress.h"
|
||||
#include "m4a.h"
|
||||
#include "event_data.h"
|
||||
#include "help_system.h"
|
||||
#include "list_menu.h"
|
||||
#include "strings.h"
|
||||
|
||||
@@ -74,134 +74,135 @@ static const union AnimCmd gUnknown_83E62E8[] =
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E62F0[] =
|
||||
static const union AnimCmd sAnim_IceCrystalLarge[] =
|
||||
{
|
||||
ANIMCMD_FRAME(4, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E62F8[] =
|
||||
static const union AnimCmd sAnim_IceCrystalSmall[] =
|
||||
{
|
||||
ANIMCMD_FRAME(6, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E6300[] =
|
||||
static const union AnimCmd sAnim_Snowball[] =
|
||||
{
|
||||
ANIMCMD_FRAME(7, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E6308[] =
|
||||
static const union AnimCmd sAnim_BlizzardIceCrystal[] =
|
||||
{
|
||||
ANIMCMD_FRAME(8, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E6310[] =
|
||||
static const union AnimCmd sAnim_SmallBubblePair[] =
|
||||
{
|
||||
ANIMCMD_FRAME(12, 6),
|
||||
ANIMCMD_FRAME(13, 6),
|
||||
ANIMCMD_JUMP(0),
|
||||
};
|
||||
|
||||
// unused
|
||||
static const union AnimCmd *const gUnknown_83E631C[] =
|
||||
{
|
||||
gUnknown_83E62E8,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E6320[] =
|
||||
static const union AnimCmd *const sAnims_IceCrystalLarge[] =
|
||||
{
|
||||
gUnknown_83E62F0,
|
||||
sAnim_IceCrystalLarge,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E6324[] =
|
||||
static const union AnimCmd *const sAnims_IceCrystalSmall[] =
|
||||
{
|
||||
gUnknown_83E62F8,
|
||||
sAnim_IceCrystalSmall,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E6328[] =
|
||||
static const union AnimCmd *const sAnims_Snowball[] =
|
||||
{
|
||||
gUnknown_83E6300,
|
||||
sAnim_Snowball,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E632C[] =
|
||||
static const union AnimCmd *const sAnims_BlizzardIceCrystal[] =
|
||||
{
|
||||
gUnknown_83E6308,
|
||||
sAnim_BlizzardIceCrystal,
|
||||
};
|
||||
|
||||
const union AnimCmd *const gUnknown_83E6330[] =
|
||||
const union AnimCmd *const gAnims_SmallBubblePair[] =
|
||||
{
|
||||
gUnknown_83E6310,
|
||||
sAnim_SmallBubblePair,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E6334[] =
|
||||
static const union AffineAnimCmd sAffineAnim_IceCrystalSpiralInwardLarge[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x0, 0x0, 40, 1),
|
||||
AFFINEANIMCMD_JUMP(0),
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E6344[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_IceCrystalSpiralInwardLarge[] =
|
||||
{
|
||||
gUnknown_83E6334,
|
||||
sAffineAnim_IceCrystalSpiralInwardLarge,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6348 =
|
||||
const struct SpriteTemplate gIceCrystalSpiralInwardLarge =
|
||||
{
|
||||
.tileTag = ANIM_TAG_ICE_CRYSTALS,
|
||||
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
|
||||
.oam = &gOamData_AffineDouble_ObjBlend_8x16,
|
||||
.anims = gUnknown_83E6320,
|
||||
.anims = sAnims_IceCrystalLarge,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E6344,
|
||||
.affineAnims = sAffineAnims_IceCrystalSpiralInwardLarge,
|
||||
.callback = AnimIcePunchSwirlingParticle,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6360 =
|
||||
const struct SpriteTemplate gIceCrystalSpiralInwardSmall =
|
||||
{
|
||||
.tileTag = ANIM_TAG_ICE_CRYSTALS,
|
||||
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
|
||||
.oam = &gOamData_AffineOff_ObjBlend_8x8,
|
||||
.anims = gUnknown_83E6324,
|
||||
.anims = sAnims_IceCrystalSmall,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = AnimIcePunchSwirlingParticle,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E6378[] =
|
||||
static const union AffineAnimCmd sAffineAnim_IceBeamInnerCrystal[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x0, 0x0, 10, 1),
|
||||
AFFINEANIMCMD_JUMP(0),
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E6388[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_IceBeamInnerCrystal[] =
|
||||
{
|
||||
gUnknown_83E6378,
|
||||
sAffineAnim_IceBeamInnerCrystal,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E638C =
|
||||
const struct SpriteTemplate gIceBeamInnerCrystalSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_ICE_CRYSTALS,
|
||||
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
|
||||
.oam = &gOamData_AffineNormal_ObjBlend_8x16,
|
||||
.anims = gUnknown_83E6320,
|
||||
.anims = sAnims_IceCrystalLarge,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E6388,
|
||||
.affineAnims = sAffineAnims_IceBeamInnerCrystal,
|
||||
.callback = AnimIceBeamParticle,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E63A4 =
|
||||
const struct SpriteTemplate gIceBeamOuterCrystalSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_ICE_CRYSTALS,
|
||||
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
|
||||
.oam = &gOamData_AffineOff_ObjBlend_8x8,
|
||||
.anims = gUnknown_83E6324,
|
||||
.anims = sAnims_IceCrystalSmall,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = AnimIceBeamParticle,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E63BC[] =
|
||||
static const union AffineAnimCmd sAffineAnim_IceCrystalHit[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0xCE, 0xCE, 0, 0),
|
||||
AFFINEANIMCMD_FRAME(0x5, 0x5, 0, 10),
|
||||
@@ -209,67 +210,67 @@ static const union AffineAnimCmd gUnknown_83E63BC[] =
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E63DC[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_IceCrystalHit[] =
|
||||
{
|
||||
gUnknown_83E63BC,
|
||||
sAffineAnim_IceCrystalHit,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E63E0 =
|
||||
const struct SpriteTemplate gIceCrystalHitLargeSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_ICE_CRYSTALS,
|
||||
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
|
||||
.oam = &gOamData_AffineNormal_ObjBlend_8x16,
|
||||
.anims = gUnknown_83E6320,
|
||||
.anims = sAnims_IceCrystalLarge,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E63DC,
|
||||
.affineAnims = sAffineAnims_IceCrystalHit,
|
||||
.callback = AnimIceEffectParticle,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E63F8 =
|
||||
const struct SpriteTemplate gIceCrystalHitSmallSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_ICE_CRYSTALS,
|
||||
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
|
||||
.oam = &gOamData_AffineNormal_ObjBlend_8x8,
|
||||
.anims = gUnknown_83E6324,
|
||||
.anims = sAnims_IceCrystalSmall,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E63DC,
|
||||
.affineAnims = sAffineAnims_IceCrystalHit,
|
||||
.callback = AnimIceEffectParticle,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6410 =
|
||||
const struct SpriteTemplate gSwirlingSnowballSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_ICE_CRYSTALS,
|
||||
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_8x8,
|
||||
.anims = gUnknown_83E6328,
|
||||
.anims = sAnims_Snowball,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = AnimSwirlingSnowball_Step1,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6428 =
|
||||
const struct SpriteTemplate gBlizzardIceCrystalSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_ICE_CRYSTALS,
|
||||
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_16x16,
|
||||
.anims = gUnknown_83E632C,
|
||||
.anims = sAnims_BlizzardIceCrystal,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = AnimMoveParticleBeyondTarget,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6440 =
|
||||
const struct SpriteTemplate gPowderSnowSnowballSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_ICE_CRYSTALS,
|
||||
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_8x8,
|
||||
.anims = gUnknown_83E6328,
|
||||
.anims = sAnims_Snowball,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = AnimMoveParticleBeyondTarget,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E6458[] =
|
||||
static const union AnimCmd sAnim_IceGroundSpike[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 5),
|
||||
ANIMCMD_FRAME(2, 5),
|
||||
@@ -281,51 +282,51 @@ static const union AnimCmd gUnknown_83E6458[] =
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E6478[] =
|
||||
static const union AnimCmd *const sAnims_IceGroundSpike[] =
|
||||
{
|
||||
gUnknown_83E6458,
|
||||
sAnim_IceGroundSpike,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E647C =
|
||||
const struct SpriteTemplate gIceGroundSpikeSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_ICE_SPIKES,
|
||||
.paletteTag = ANIM_TAG_ICE_SPIKES,
|
||||
.oam = &gOamData_AffineOff_ObjBlend_8x16,
|
||||
.anims = gUnknown_83E6478,
|
||||
.anims = sAnims_IceGroundSpike,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = AnimWaveFromCenterOfTarget,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E6494[] =
|
||||
static const union AnimCmd sAnim_Cloud[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 8),
|
||||
ANIMCMD_FRAME(8, 8),
|
||||
ANIMCMD_JUMP(0),
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E64A0[] =
|
||||
static const union AnimCmd *const sAnims_Cloud[] =
|
||||
{
|
||||
gUnknown_83E6494,
|
||||
sAnim_Cloud,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E64A4 =
|
||||
const struct SpriteTemplate gMistCloudSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_MIST_CLOUD,
|
||||
.paletteTag = ANIM_TAG_MIST_CLOUD,
|
||||
.oam = &gOamData_AffineOff_ObjBlend_32x16,
|
||||
.anims = gUnknown_83E64A0,
|
||||
.anims = sAnims_Cloud,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = InitSwirlingFogAnim,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E64BC =
|
||||
const struct SpriteTemplate gSmogCloudSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_PURPLE_GAS_CLOUD,
|
||||
.paletteTag = ANIM_TAG_PURPLE_GAS_CLOUD,
|
||||
.oam = &gOamData_AffineOff_ObjBlend_32x16,
|
||||
.anims = gUnknown_83E64A0,
|
||||
.anims = sAnims_Cloud,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = InitSwirlingFogAnim,
|
||||
@@ -336,7 +337,7 @@ static const u8 gUnknown_83E64D4[] =
|
||||
0, 1, 2, 2, 2, 2, 3, 4, 4, 4, 5, 6, 6, 6, 6, 7, 8, 8, 8, 9,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E64E8 =
|
||||
const struct SpriteTemplate gMistBallSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_SMALL_BUBBLES,
|
||||
.paletteTag = ANIM_TAG_SMALL_BUBBLES,
|
||||
@@ -352,18 +353,18 @@ static const u8 gUnknown_83E6500[] =
|
||||
0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6514 =
|
||||
const struct SpriteTemplate gPoisonGasCloudSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_PURPLE_GAS_CLOUD,
|
||||
.paletteTag = ANIM_TAG_PURPLE_GAS_CLOUD,
|
||||
.oam = &gOamData_AffineOff_ObjBlend_32x16,
|
||||
.anims = gUnknown_83E64A0,
|
||||
.anims = sAnims_Cloud,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = InitPoisonGasCloudAnim,
|
||||
};
|
||||
|
||||
static const struct HailStruct gUnknown_83E652C[] =
|
||||
static const struct HailStruct sHailCoordData[] =
|
||||
{
|
||||
{100, 120, 0, 2},
|
||||
{85, 120, 0, 0},
|
||||
@@ -377,71 +378,71 @@ static const struct HailStruct gUnknown_83E652C[] =
|
||||
{38, 120, 2, 0},
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E6554[] =
|
||||
static const union AffineAnimCmd sAffineAnim_HailParticle_0[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E6564[] =
|
||||
static const union AffineAnimCmd sAffineAnim_HailParticle_1[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0xF0, 0xF0, 0, 0),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E6574[] =
|
||||
static const union AffineAnimCmd sAffineAnim_HailParticle_2[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0xE0, 0xE0, 0, 0),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E6584[] =
|
||||
static const union AffineAnimCmd sAffineAnim_WeatherBallIceDown[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x150, 0x150, 0, 0),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E6594[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_HailParticle[] =
|
||||
{
|
||||
gUnknown_83E6554,
|
||||
gUnknown_83E6564,
|
||||
gUnknown_83E6574,
|
||||
sAffineAnim_HailParticle_0,
|
||||
sAffineAnim_HailParticle_1,
|
||||
sAffineAnim_HailParticle_2,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E65A0[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_WeatherBallIceDown[] =
|
||||
{
|
||||
gUnknown_83E6584,
|
||||
sAffineAnim_WeatherBallIceDown,
|
||||
};
|
||||
|
||||
static const struct SpriteTemplate gUnknown_83E65A4 =
|
||||
static const struct SpriteTemplate sHailParticleSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_HAIL,
|
||||
.paletteTag = ANIM_TAG_HAIL,
|
||||
.oam = &gOamData_AffineNormal_ObjNormal_16x16,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E6594,
|
||||
.affineAnims = sAffineAnims_HailParticle,
|
||||
.callback = AnimHailBegin,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E65BC =
|
||||
const struct SpriteTemplate gWeatherBallIceDownSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_HAIL,
|
||||
.paletteTag = ANIM_TAG_HAIL,
|
||||
.oam = &gOamData_AffineNormal_ObjNormal_16x16,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E65A0,
|
||||
.callback = sub_8077350,
|
||||
.affineAnims = sAffineAnims_WeatherBallIceDown,
|
||||
.callback = AnimWeatherBallDown,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E65D4[] =
|
||||
static const union AnimCmd sAnim_IceBallChunk_0[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E65DC[] =
|
||||
static const union AnimCmd sAnim_IceBallChunk_1[] =
|
||||
{
|
||||
ANIMCMD_FRAME(16, 4),
|
||||
ANIMCMD_FRAME(32, 4),
|
||||
@@ -450,68 +451,68 @@ static const union AnimCmd gUnknown_83E65DC[] =
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E65F0[] =
|
||||
static const union AnimCmd *const sAnims_IceBallChunk[] =
|
||||
{
|
||||
gUnknown_83E65D4,
|
||||
gUnknown_83E65DC,
|
||||
sAnim_IceBallChunk_0,
|
||||
sAnim_IceBallChunk_1,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E65F8[] =
|
||||
static const union AffineAnimCmd sAffineAnim_IceBallChunk_0[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0xE0, 0xE0, 0, 0),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E6608[] =
|
||||
static const union AffineAnimCmd sAffineAnim_IceBallChunk_1[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x118, 0x118, 0, 0),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E6618[] =
|
||||
static const union AffineAnimCmd sAffineAnim_IceBallChunk_2[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x150, 0x150, 0, 0),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E6628[] =
|
||||
static const union AffineAnimCmd sAffineAnim_IceBallChunk_3[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x180, 0x180, 0, 0),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E6638[] =
|
||||
static const union AffineAnimCmd sAffineAnim_IceBallChunk_4[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x1C0, 0x1C0, 0, 0),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E6648[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_IceBallChunk[] =
|
||||
{
|
||||
gUnknown_83E65F8,
|
||||
gUnknown_83E6608,
|
||||
gUnknown_83E6618,
|
||||
gUnknown_83E6628,
|
||||
gUnknown_83E6638,
|
||||
sAffineAnim_IceBallChunk_0,
|
||||
sAffineAnim_IceBallChunk_1,
|
||||
sAffineAnim_IceBallChunk_2,
|
||||
sAffineAnim_IceBallChunk_3,
|
||||
sAffineAnim_IceBallChunk_4,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E665C =
|
||||
const struct SpriteTemplate gIceBallChunkSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_ICE_CHUNK,
|
||||
.paletteTag = ANIM_TAG_ICE_CHUNK,
|
||||
.oam = &gOamData_AffineDouble_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E65F0,
|
||||
.anims = sAnims_IceBallChunk,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E6648,
|
||||
.affineAnims = sAffineAnims_IceBallChunk,
|
||||
.callback = InitIceBallAnim,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6674 =
|
||||
const struct SpriteTemplate gIceBallImpactShardSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_ICE_CRYSTALS,
|
||||
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_8x8,
|
||||
.anims = gUnknown_83E6324,
|
||||
.anims = sAnims_IceCrystalSmall,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = InitIceBallParticle,
|
||||
@@ -1305,11 +1306,11 @@ static bool8 GenerateHailParticle(u8 hailStructId, u8 affineAnimNum, u8 taskId,
|
||||
s16 battlerX, battlerY;
|
||||
s16 spriteX;
|
||||
bool8 possibleBool = FALSE;
|
||||
s8 unk = gUnknown_83E652C[hailStructId].unk3;
|
||||
s8 unk = sHailCoordData[hailStructId].unk3;
|
||||
|
||||
if (unk != 2)
|
||||
{
|
||||
id = GetBattlerAtPosition(gUnknown_83E652C[hailStructId].unk2);
|
||||
id = GetBattlerAtPosition(sHailCoordData[hailStructId].unk2);
|
||||
if (IsBattlerSpriteVisible(id))
|
||||
{
|
||||
possibleBool = TRUE;
|
||||
@@ -1329,17 +1330,17 @@ static bool8 GenerateHailParticle(u8 hailStructId, u8 affineAnimNum, u8 taskId,
|
||||
}
|
||||
else
|
||||
{
|
||||
battlerX = (gUnknown_83E652C[hailStructId].unk0);
|
||||
battlerY = (gUnknown_83E652C[hailStructId].unk1);
|
||||
battlerX = (sHailCoordData[hailStructId].unk0);
|
||||
battlerY = (sHailCoordData[hailStructId].unk1);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
battlerX = (gUnknown_83E652C[hailStructId].unk0);
|
||||
battlerY = (gUnknown_83E652C[hailStructId].unk1);
|
||||
battlerX = (sHailCoordData[hailStructId].unk0);
|
||||
battlerY = (sHailCoordData[hailStructId].unk1);
|
||||
}
|
||||
spriteX = battlerX - ((battlerY + 8) / 2);
|
||||
id = CreateSprite(&gUnknown_83E65A4, spriteX, -8, 18);
|
||||
id = CreateSprite(&sHailParticleSpriteTemplate, spriteX, -8, 18);
|
||||
if (id == MAX_SPRITES)
|
||||
{
|
||||
return FALSE;
|
||||
@@ -1367,7 +1368,7 @@ static void AnimHailBegin(struct Sprite *sprite)
|
||||
return;
|
||||
if (sprite->data[0] == 1 && sprite->data[5] == 0)
|
||||
{
|
||||
spriteId = CreateSprite(&gUnknown_83E63E0, sprite->data[3], sprite->data[4], sprite->subpriority);
|
||||
spriteId = CreateSprite(&gIceCrystalHitLargeSpriteTemplate, sprite->data[3], sprite->data[4], sprite->subpriority);
|
||||
sprite->data[0] = spriteId;
|
||||
if (spriteId != 64)
|
||||
{
|
||||
|
||||
+26
-31
@@ -1,3 +1,4 @@
|
||||
#include <limits.h>
|
||||
#include "librfu.h"
|
||||
|
||||
struct LLSFStruct
|
||||
@@ -110,7 +111,7 @@ static const struct LLSFStruct llsf_struct[2] = {
|
||||
|
||||
#define xstr(s) str(s)
|
||||
#define str(s) #s
|
||||
const char version_string[] = "RFU_V" xstr(LIBRFU_VERSION);
|
||||
static const char version_string[] = "RFU_V" xstr(LIBRFU_VERSION);
|
||||
|
||||
static const char str_checkMbootLL[] = "RFU-MBOOT";
|
||||
|
||||
@@ -154,16 +155,13 @@ u16 rfu_initializeAPI(u32 *APIBuffer, u16 buffByteSize, IntrFunc *sioIntrTable_p
|
||||
gRfuStatic = (void *)APIBuffer + 0xb4; // + sizeof(*gRfuLinkStatus)
|
||||
gRfuFixed = (void *)APIBuffer + 0xdc; // + sizeof(*gRfuStatic)
|
||||
gRfuSlotStatusNI[0] = (void *)APIBuffer + 0x1bc; // + sizeof(*gRfuFixed)
|
||||
gRfuSlotStatusUNI[0] = (void *)APIBuffer + 0x37c; // + sizeof(*gRfuSlotStatusNI[0])
|
||||
gRfuSlotStatusUNI[0] = (void *)APIBuffer + 0x37c; // + sizeof(*gRfuSlotStatusNI[0]) * RFU_CHILD_MAX
|
||||
for (i = 1; i < RFU_CHILD_MAX; ++i)
|
||||
{
|
||||
gRfuSlotStatusNI[i] = &gRfuSlotStatusNI[i - 1][1];
|
||||
gRfuSlotStatusUNI[i] = &gRfuSlotStatusUNI[i - 1][1];
|
||||
}
|
||||
// TODO: Is it possible to fix the following 2 statements?
|
||||
// It's equivalent to:
|
||||
// gRfuFixed->STWIBuffer = &APIBuffer->intr;
|
||||
// STWI_init_all(&APIBuffer->intr, sioIntrTable_p, copyInterruptToRam);
|
||||
// remaining space in API buffer is used for `struct RfuIntrStruct`.
|
||||
gRfuFixed->STWIBuffer = (struct RfuIntrStruct *)&gRfuSlotStatusUNI[3][1];
|
||||
STWI_init_all((struct RfuIntrStruct *)&gRfuSlotStatusUNI[3][1], sioIntrTable_p, copyInterruptToRam);
|
||||
rfu_STC_clearAPIVariables();
|
||||
@@ -1800,7 +1798,7 @@ static u16 rfu_STC_NI_constructLLSF(u8 bm_slot_id, u8 **dest_pp, struct NIComm *
|
||||
}
|
||||
else
|
||||
{
|
||||
if ((u32)NI_comm->remainSize >= NI_comm->payloadSize)
|
||||
if (NI_comm->remainSize >= NI_comm->payloadSize)
|
||||
size = NI_comm->payloadSize;
|
||||
else
|
||||
size = NI_comm->remainSize;
|
||||
@@ -2095,34 +2093,31 @@ static void rfu_STC_NI_receive_Sender(u8 NI_slot, u8 bm_flag, const struct RfuLo
|
||||
else
|
||||
NI_comm->now_p[llsf_NI->phase] += NI_comm->payloadSize << 2;
|
||||
NI_comm->remainSize -= NI_comm->payloadSize;
|
||||
if (NI_comm->remainSize != 0)
|
||||
if (NI_comm->remainSize >= 0)
|
||||
goto _081E30AE;
|
||||
// Above is a hack to avoid optimization over comparison.
|
||||
// rfu_STC_NI_constructLLSF uses this field as u32.
|
||||
// It's equivalent to the following condition:
|
||||
// if (NI_comm->remainSize == 0 || NI_comm->remainSize < 0)
|
||||
switch (NI_comm->remainSize)
|
||||
{
|
||||
default:
|
||||
case 0:
|
||||
NI_comm->phase = 0;
|
||||
if (NI_comm->state == SLOT_STATE_SEND_START)
|
||||
{
|
||||
NI_comm->phase = 0;
|
||||
if (NI_comm->state == SLOT_STATE_SEND_START)
|
||||
for (i = 0; i < WINDOW_COUNT; ++i)
|
||||
{
|
||||
for (i = 0; i < WINDOW_COUNT; ++i)
|
||||
{
|
||||
NI_comm->n[i] = 1;
|
||||
NI_comm->now_p[i] = NI_comm->src + NI_comm->payloadSize * i;
|
||||
}
|
||||
NI_comm->remainSize = NI_comm->dataSize;
|
||||
NI_comm->state = SLOT_STATE_SENDING;
|
||||
}
|
||||
else
|
||||
{
|
||||
NI_comm->n[0] = 0;
|
||||
NI_comm->remainSize = 0;
|
||||
NI_comm->state = SLOT_STATE_SEND_LAST;
|
||||
NI_comm->n[i] = 1;
|
||||
NI_comm->now_p[i] = NI_comm->src + NI_comm->payloadSize * i;
|
||||
}
|
||||
NI_comm->remainSize = NI_comm->dataSize;
|
||||
NI_comm->state = SLOT_STATE_SENDING;
|
||||
}
|
||||
_081E30AE:
|
||||
;
|
||||
else
|
||||
{
|
||||
NI_comm->n[0] = 0;
|
||||
NI_comm->remainSize = 0;
|
||||
NI_comm->state = SLOT_STATE_SEND_LAST;
|
||||
}
|
||||
break;
|
||||
case 1 ... INT_MAX:
|
||||
break;
|
||||
}
|
||||
}
|
||||
else if (NI_comm->state == SLOT_STATE_SEND_LAST)
|
||||
{
|
||||
|
||||
+64
-64
@@ -7,16 +7,16 @@
|
||||
|
||||
static void AnimConfusionDuck(struct Sprite *sprite);
|
||||
static void AnimSimplePaletteBlend(struct Sprite *sprite);
|
||||
static void sub_80B9A7C(struct Sprite *sprite);
|
||||
static void AnimComplexPaletteBlend(struct Sprite *sprite);
|
||||
static void sub_80B9B8C(struct Sprite *sprite);
|
||||
static void sub_80BA27C(struct Sprite *sprite);
|
||||
static void sub_80BA560(struct Sprite *sprite);
|
||||
static void sub_80BA5F8(struct Sprite *sprite);
|
||||
static void sub_80BA630(struct Sprite *sprite);
|
||||
static void sub_80BA6C8(struct Sprite *sprite);
|
||||
static void sub_80BA738(struct Sprite *sprite);
|
||||
static void sub_80BA780(struct Sprite *sprite);
|
||||
static void sub_80BA5A8(struct Sprite *sprite);
|
||||
static void AnimShakeMonOrBattleTerrain(struct Sprite *sprite);
|
||||
static void AnimHitSplatBasic(struct Sprite *sprite);
|
||||
static void AnimHitSplatHandleInvert(struct Sprite *sprite);
|
||||
static void AnimHitSplatRandom(struct Sprite *sprite);
|
||||
static void AnimHitSplatOnMonEdge(struct Sprite *sprite);
|
||||
static void AnimCrossImpact(struct Sprite *sprite);
|
||||
static void AnimFlashingHitSplat(struct Sprite *sprite);
|
||||
static void AnimHitSplatPersistent(struct Sprite *sprite);
|
||||
static void AnimConfusionDuckStep(struct Sprite *sprite);
|
||||
static void AnimSimplePaletteBlendStep(struct Sprite *sprite);
|
||||
static void sub_80B9AD0(struct Sprite *sprite);
|
||||
@@ -35,7 +35,7 @@ static void sub_80BA4D0(u8 taskId);
|
||||
static void sub_80BA7BC(struct Sprite *sprite);
|
||||
|
||||
|
||||
static const union AnimCmd gUnknown_83E7ADC[] =
|
||||
static const union AnimCmd sAnim_ConfusionDuck_0[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 8),
|
||||
ANIMCMD_FRAME(4, 8),
|
||||
@@ -44,7 +44,7 @@ static const union AnimCmd gUnknown_83E7ADC[] =
|
||||
ANIMCMD_JUMP(0),
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E7AF0[] =
|
||||
static const union AnimCmd sAnim_ConfusionDuck_1[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 8, .hFlip = TRUE),
|
||||
ANIMCMD_FRAME(4, 8),
|
||||
@@ -53,10 +53,10 @@ static const union AnimCmd gUnknown_83E7AF0[] =
|
||||
ANIMCMD_JUMP(0),
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E7B04[] =
|
||||
static const union AnimCmd *const sAnims_ConfusionDuck[] =
|
||||
{
|
||||
gUnknown_83E7ADC,
|
||||
gUnknown_83E7AF0,
|
||||
sAnim_ConfusionDuck_0,
|
||||
sAnim_ConfusionDuck_1,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gConfusionDuckSpriteTemplate =
|
||||
@@ -64,7 +64,7 @@ const struct SpriteTemplate gConfusionDuckSpriteTemplate =
|
||||
.tileTag = ANIM_TAG_DUCK,
|
||||
.paletteTag = ANIM_TAG_DUCK,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_16x16,
|
||||
.anims = gUnknown_83E7B04,
|
||||
.anims = sAnims_ConfusionDuck,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = AnimConfusionDuck,
|
||||
@@ -89,7 +89,7 @@ const struct SpriteTemplate gComplexPaletteBlendSpriteTemplate =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B9A7C,
|
||||
.callback = AnimComplexPaletteBlend,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E7B54[] =
|
||||
@@ -118,7 +118,7 @@ const struct SpriteTemplate gUnknown_83E7B70 =
|
||||
.callback = sub_80B9B8C,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7B88 =
|
||||
const struct SpriteTemplate gShakeMonOrTerrainSpriteTemplate =
|
||||
{
|
||||
.tileTag = 0,
|
||||
.paletteTag = 0,
|
||||
@@ -126,42 +126,42 @@ const struct SpriteTemplate gUnknown_83E7B88 =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80BA27C,
|
||||
.callback = AnimShakeMonOrBattleTerrain,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E7BA0[] =
|
||||
static const union AffineAnimCmd sAffineAnim_HitSplat_0[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 8),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E7BB0[] =
|
||||
static const union AffineAnimCmd sAffineAnim_HitSplat_1[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0xD8, 0xD8, 0, 0),
|
||||
AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 8),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E7BC8[] =
|
||||
static const union AffineAnimCmd sAffineAnim_HitSplat_2[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0xB0, 0xB0, 0, 0),
|
||||
AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 8),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E7BE0[] =
|
||||
static const union AffineAnimCmd sAffineAnim_HitSplat_3[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x80, 0x80, 0, 0),
|
||||
AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 8),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E7BF8[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_HitSplat[] =
|
||||
{
|
||||
gUnknown_83E7BA0,
|
||||
gUnknown_83E7BB0,
|
||||
gUnknown_83E7BC8,
|
||||
gUnknown_83E7BE0,
|
||||
sAffineAnim_HitSplat_0,
|
||||
sAffineAnim_HitSplat_1,
|
||||
sAffineAnim_HitSplat_2,
|
||||
sAffineAnim_HitSplat_3,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gBasicHitSplatSpriteTemplate =
|
||||
@@ -171,55 +171,55 @@ const struct SpriteTemplate gBasicHitSplatSpriteTemplate =
|
||||
.oam = &gOamData_AffineNormal_ObjBlend_32x32,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E7BF8,
|
||||
.callback = sub_80BA560,
|
||||
.affineAnims = sAffineAnims_HitSplat,
|
||||
.callback = AnimHitSplatBasic,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7C20 =
|
||||
const struct SpriteTemplate gHandleInvertHitSplatSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_IMPACT,
|
||||
.paletteTag = ANIM_TAG_IMPACT,
|
||||
.oam = &gOamData_AffineNormal_ObjBlend_32x32,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E7BF8,
|
||||
.callback = sub_80BA5F8,
|
||||
.affineAnims = sAffineAnims_HitSplat,
|
||||
.callback = AnimHitSplatHandleInvert,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7C38 =
|
||||
const struct SpriteTemplate gWaterHitSplatSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_WATER_IMPACT,
|
||||
.paletteTag = ANIM_TAG_WATER_IMPACT,
|
||||
.oam = &gOamData_AffineNormal_ObjBlend_32x32,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E7BF8,
|
||||
.callback = sub_80BA560,
|
||||
.affineAnims = sAffineAnims_HitSplat,
|
||||
.callback = AnimHitSplatBasic,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7C50 =
|
||||
const struct SpriteTemplate gRandomPosHitSplatSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_IMPACT,
|
||||
.paletteTag = ANIM_TAG_IMPACT,
|
||||
.oam = &gOamData_AffineNormal_ObjBlend_32x32,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E7BF8,
|
||||
.callback = sub_80BA630,
|
||||
.affineAnims = sAffineAnims_HitSplat,
|
||||
.callback = AnimHitSplatRandom,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7C68 =
|
||||
const struct SpriteTemplate gMonEdgeHitSplatSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_IMPACT,
|
||||
.paletteTag = ANIM_TAG_IMPACT,
|
||||
.oam = &gOamData_AffineNormal_ObjBlend_32x32,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E7BF8,
|
||||
.callback = sub_80BA6C8,
|
||||
.affineAnims = sAffineAnims_HitSplat,
|
||||
.callback = AnimHitSplatOnMonEdge,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7C80 =
|
||||
const struct SpriteTemplate gCrossImpactSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_CROSS_IMPACT,
|
||||
.paletteTag = ANIM_TAG_CROSS_IMPACT,
|
||||
@@ -227,29 +227,29 @@ const struct SpriteTemplate gUnknown_83E7C80 =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80BA738,
|
||||
.callback = AnimCrossImpact,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7C98 =
|
||||
const struct SpriteTemplate gFlashingHitSplatSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_IMPACT,
|
||||
.paletteTag = ANIM_TAG_IMPACT,
|
||||
.oam = &gOamData_AffineNormal_ObjNormal_32x32,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E7BF8,
|
||||
.callback = sub_80BA780,
|
||||
.affineAnims = sAffineAnims_HitSplat,
|
||||
.callback = AnimFlashingHitSplat,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7CB0 =
|
||||
const struct SpriteTemplate gPersistHitSplatSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_IMPACT,
|
||||
.paletteTag = ANIM_TAG_IMPACT,
|
||||
.oam = &gOamData_AffineNormal_ObjBlend_32x32,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E7BF8,
|
||||
.callback = sub_80BA5A8,
|
||||
.affineAnims = sAffineAnims_HitSplat,
|
||||
.callback = AnimHitSplatPersistent,
|
||||
};
|
||||
|
||||
// Moves a spinning duck around the mon's head.
|
||||
@@ -335,7 +335,7 @@ static void AnimSimplePaletteBlendStep(struct Sprite *sprite)
|
||||
DestroyAnimSprite(sprite);
|
||||
}
|
||||
|
||||
static void sub_80B9A7C(struct Sprite *sprite)
|
||||
static void AnimComplexPaletteBlend(struct Sprite *sprite)
|
||||
{
|
||||
u32 selectedPalettes;
|
||||
|
||||
@@ -461,7 +461,7 @@ static void sub_80B9C7C(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80B9CE4(u8 taskId)
|
||||
void AnimTask_BlendColorCycleExclude(u8 taskId)
|
||||
{
|
||||
s32 battler;
|
||||
u32 selectedPalettes = 0;
|
||||
@@ -527,7 +527,7 @@ static void sub_80B9DF0(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80B9E58(u8 taskId)
|
||||
void AnimTask_BlendColorCycleByTag(u8 taskId)
|
||||
{
|
||||
u8 paletteIndex;
|
||||
|
||||
@@ -585,7 +585,7 @@ static void sub_80B9F04(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80B9F6C(u8 taskId)
|
||||
void AnimTask_FlashAnimTagWithColor(u8 taskId)
|
||||
{
|
||||
u8 paletteIndex;
|
||||
|
||||
@@ -652,7 +652,7 @@ static void sub_80BA090(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80BA0E8(u8 taskId)
|
||||
void AnimTask_InvertScreenColor(u8 taskId)
|
||||
{
|
||||
u32 selectedPalettes = 0;
|
||||
u8 attackerBattler = gBattleAnimAttacker;
|
||||
@@ -708,7 +708,7 @@ static void sub_80BA16C(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_80BA27C(struct Sprite *sprite)
|
||||
static void AnimShakeMonOrBattleTerrain(struct Sprite *sprite)
|
||||
{
|
||||
u16 var0;
|
||||
|
||||
@@ -789,7 +789,7 @@ static void sub_80BA3CC(void)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80BA47C(u8 taskId)
|
||||
void AnimTask_ShakeBattleTerrain(u8 taskId)
|
||||
{
|
||||
gTasks[taskId].data[0] = gBattleAnimArgs[0];
|
||||
gTasks[taskId].data[1] = gBattleAnimArgs[1];
|
||||
@@ -830,7 +830,7 @@ static void sub_80BA4D0(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_80BA560(struct Sprite *sprite)
|
||||
static void AnimHitSplatBasic(struct Sprite *sprite)
|
||||
{
|
||||
StartSpriteAffineAnim(sprite, gBattleAnimArgs[3]);
|
||||
if (gBattleAnimArgs[2] == 0)
|
||||
@@ -841,7 +841,7 @@ static void sub_80BA560(struct Sprite *sprite)
|
||||
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
|
||||
}
|
||||
|
||||
static void sub_80BA5A8(struct Sprite *sprite)
|
||||
static void AnimHitSplatPersistent(struct Sprite *sprite)
|
||||
{
|
||||
StartSpriteAffineAnim(sprite, gBattleAnimArgs[3]);
|
||||
if (gBattleAnimArgs[2] == 0)
|
||||
@@ -853,14 +853,14 @@ static void sub_80BA5A8(struct Sprite *sprite)
|
||||
StoreSpriteCallbackInData6(sprite, sub_80B1D3C);
|
||||
}
|
||||
|
||||
static void sub_80BA5F8(struct Sprite *sprite)
|
||||
static void AnimHitSplatHandleInvert(struct Sprite *sprite)
|
||||
{
|
||||
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER && !IsContest())
|
||||
gBattleAnimArgs[1] = -gBattleAnimArgs[1];
|
||||
sub_80BA560(sprite);
|
||||
AnimHitSplatBasic(sprite);
|
||||
}
|
||||
|
||||
static void sub_80BA630(struct Sprite *sprite)
|
||||
static void AnimHitSplatRandom(struct Sprite *sprite)
|
||||
{
|
||||
if (gBattleAnimArgs[1] == -1)
|
||||
gBattleAnimArgs[1] = Random() & 3;
|
||||
@@ -875,7 +875,7 @@ static void sub_80BA630(struct Sprite *sprite)
|
||||
sprite->callback = RunStoredCallbackWhenAffineAnimEnds;
|
||||
}
|
||||
|
||||
static void sub_80BA6C8(struct Sprite *sprite)
|
||||
static void AnimHitSplatOnMonEdge(struct Sprite *sprite)
|
||||
{
|
||||
sprite->data[0] = GetAnimBattlerSpriteId(gBattleAnimArgs[0]);
|
||||
sprite->pos1.x = gSprites[sprite->data[0]].pos1.x + gSprites[sprite->data[0]].pos2.x;
|
||||
@@ -887,7 +887,7 @@ static void sub_80BA6C8(struct Sprite *sprite)
|
||||
sprite->callback = RunStoredCallbackWhenAffineAnimEnds;
|
||||
}
|
||||
|
||||
static void sub_80BA738(struct Sprite *sprite)
|
||||
static void AnimCrossImpact(struct Sprite *sprite)
|
||||
{
|
||||
if (gBattleAnimArgs[2] == 0)
|
||||
InitSpritePosToAnimAttacker(sprite, 1);
|
||||
@@ -898,7 +898,7 @@ static void sub_80BA738(struct Sprite *sprite)
|
||||
sprite->callback = WaitAnimForDuration;
|
||||
}
|
||||
|
||||
static void sub_80BA780(struct Sprite *sprite)
|
||||
static void AnimFlashingHitSplat(struct Sprite *sprite)
|
||||
{
|
||||
StartSpriteAffineAnim(sprite, gBattleAnimArgs[3]);
|
||||
if (gBattleAnimArgs[2] == 0)
|
||||
|
||||
+54
-54
@@ -2,17 +2,17 @@
|
||||
#include "battle_anim.h"
|
||||
#include "trig.h"
|
||||
|
||||
static void sub_80B1620(struct Sprite *sprite);
|
||||
static void sub_80B16A0(struct Sprite *sprite);
|
||||
static void sub_80B1744(struct Sprite *sprite);
|
||||
static void sub_80B17C4(struct Sprite *sprite);
|
||||
static void AnimSludgeProjectile(struct Sprite *sprite);
|
||||
static void AnimAcidPoisonBubble(struct Sprite *sprite);
|
||||
static void AnimSludgeBombHitParticle(struct Sprite *sprite);
|
||||
static void AnimAcidPoisonDroplet(struct Sprite *sprite);
|
||||
static void AnimBubbleEffect(struct Sprite *sprite);
|
||||
static void sub_80B1684(struct Sprite *sprite);
|
||||
static void sub_80B1728(struct Sprite *sprite);
|
||||
static void sub_80B1798(struct Sprite *sprite);
|
||||
static void AnimBubbleEffectStep(struct Sprite *sprite);
|
||||
|
||||
static const union AnimCmd gUnknown_83E6994[] =
|
||||
static const union AnimCmd sAnim_ToxicBubble[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 5),
|
||||
ANIMCMD_FRAME(8, 5),
|
||||
@@ -21,56 +21,56 @@ static const union AnimCmd gUnknown_83E6994[] =
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E69A8[] =
|
||||
static const union AnimCmd *const sAnims_ToxicBubble[] =
|
||||
{
|
||||
gUnknown_83E6994,
|
||||
sAnim_ToxicBubble,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E69AC =
|
||||
const struct SpriteTemplate gToxicBubbleSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_TOXIC_BUBBLE,
|
||||
.paletteTag = ANIM_TAG_TOXIC_BUBBLE,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_16x32,
|
||||
.anims = gUnknown_83E69A8,
|
||||
.anims = sAnims_ToxicBubble,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = AnimSpriteOnMonPos,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E69C4[] =
|
||||
static const union AnimCmd sAnim_PoisonProjectile[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E69CC[] =
|
||||
static const union AnimCmd sAnim_AcidPoisonDroplet[] =
|
||||
{
|
||||
ANIMCMD_FRAME(4, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E69D4[] =
|
||||
static const union AnimCmd sAnim_SludgeBombHit[] =
|
||||
{
|
||||
ANIMCMD_FRAME(8, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E69DC[] =
|
||||
static const union AnimCmd *const sAnims_PoisonProjectile[] =
|
||||
{
|
||||
gUnknown_83E69C4,
|
||||
sAnim_PoisonProjectile,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E69E0[] =
|
||||
static const union AnimCmd *const sAnims_AcidPoisonDroplet[] =
|
||||
{
|
||||
gUnknown_83E69CC,
|
||||
sAnim_AcidPoisonDroplet,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E69E4[] =
|
||||
static const union AnimCmd *const sAnims_SludgeBombHit[] =
|
||||
{
|
||||
gUnknown_83E69D4,
|
||||
sAnim_SludgeBombHit,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E69E8[] =
|
||||
static const union AffineAnimCmd sAffineAnim_PoisonProjectile[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x160, 0x160, 0, 0),
|
||||
AFFINEANIMCMD_FRAME(-0xA, -0xA, 0, 10),
|
||||
@@ -78,88 +78,88 @@ static const union AffineAnimCmd gUnknown_83E69E8[] =
|
||||
AFFINEANIMCMD_JUMP(0),
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E6A08[] =
|
||||
static const union AffineAnimCmd sAffineAnim_SludgeBombHit[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0xEC, 0xEC, 0, 0),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E6A18[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_PoisonProjectile[] =
|
||||
{
|
||||
gUnknown_83E69E8,
|
||||
sAffineAnim_PoisonProjectile,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E6A1C[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_SludgeBombHit[] =
|
||||
{
|
||||
gUnknown_83E6A08,
|
||||
sAffineAnim_SludgeBombHit,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6A20 =
|
||||
const struct SpriteTemplate gSludgeProjectileSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_POISON_BUBBLE,
|
||||
.paletteTag = ANIM_TAG_POISON_BUBBLE,
|
||||
.oam = &gOamData_AffineDouble_ObjNormal_16x16,
|
||||
.anims = gUnknown_83E69DC,
|
||||
.anims = sAnims_PoisonProjectile,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E6A18,
|
||||
.callback = sub_80B1620,
|
||||
.affineAnims = sAffineAnims_PoisonProjectile,
|
||||
.callback = AnimSludgeProjectile,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6A38 =
|
||||
const struct SpriteTemplate gAcidPoisonBubbleSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_POISON_BUBBLE,
|
||||
.paletteTag = ANIM_TAG_POISON_BUBBLE,
|
||||
.oam = &gOamData_AffineDouble_ObjNormal_16x16,
|
||||
.anims = gUnknown_83E69DC,
|
||||
.anims = sAnims_PoisonProjectile,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E6A18,
|
||||
.callback = sub_80B16A0,
|
||||
.affineAnims = sAffineAnims_PoisonProjectile,
|
||||
.callback = AnimAcidPoisonBubble,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6A50 =
|
||||
const struct SpriteTemplate gSludgeBombHitParticleSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_POISON_BUBBLE,
|
||||
.paletteTag = ANIM_TAG_POISON_BUBBLE,
|
||||
.oam = &gOamData_AffineNormal_ObjNormal_16x16,
|
||||
.anims = gUnknown_83E69E4,
|
||||
.anims = sAnims_SludgeBombHit,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E6A1C,
|
||||
.callback = sub_80B1744,
|
||||
.affineAnims = sAffineAnims_SludgeBombHit,
|
||||
.callback = AnimSludgeBombHitParticle,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E6A68[] =
|
||||
static const union AffineAnimCmd sAffineAnim_AcidPoisonDroplet[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(-0x10, 0x10, 0, 6),
|
||||
AFFINEANIMCMD_FRAME(0x10, -0x10, 0, 6),
|
||||
AFFINEANIMCMD_JUMP(0),
|
||||
};
|
||||
|
||||
const union AffineAnimCmd *const gUnknown_83E6A80[] =
|
||||
const union AffineAnimCmd *const gAffineAnims_Droplet[] =
|
||||
{
|
||||
gUnknown_83E6A68,
|
||||
sAffineAnim_AcidPoisonDroplet,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6A84 =
|
||||
const struct SpriteTemplate gAcidPoisonDropletSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_POISON_BUBBLE,
|
||||
.paletteTag = ANIM_TAG_POISON_BUBBLE,
|
||||
.oam = &gOamData_AffineDouble_ObjNormal_16x16,
|
||||
.anims = gUnknown_83E69E0,
|
||||
.anims = sAnims_AcidPoisonDroplet,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E6A80,
|
||||
.callback = sub_80B17C4,
|
||||
.affineAnims = gAffineAnims_Droplet,
|
||||
.callback = AnimAcidPoisonDroplet,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E6A9C[] =
|
||||
static const union AffineAnimCmd sAffineAnim_Bubble[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x9C, 0x9C, 0, 0),
|
||||
AFFINEANIMCMD_FRAME(0x5, 0x5, 0, 20),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E6AB4[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_Bubble[] =
|
||||
{
|
||||
gUnknown_83E6A9C,
|
||||
sAffineAnim_Bubble,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gPoisonBubbleSpriteTemplate =
|
||||
@@ -167,9 +167,9 @@ const struct SpriteTemplate gPoisonBubbleSpriteTemplate =
|
||||
.tileTag = ANIM_TAG_POISON_BUBBLE,
|
||||
.paletteTag = ANIM_TAG_POISON_BUBBLE,
|
||||
.oam = &gOamData_AffineNormal_ObjNormal_16x16,
|
||||
.anims = gUnknown_83E69DC,
|
||||
.anims = sAnims_PoisonProjectile,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E6AB4,
|
||||
.affineAnims = sAffineAnims_Bubble,
|
||||
.callback = AnimBubbleEffect,
|
||||
};
|
||||
|
||||
@@ -178,13 +178,13 @@ const struct SpriteTemplate gWaterBubbleSpriteTemplate =
|
||||
.tileTag = ANIM_TAG_SMALL_BUBBLES,
|
||||
.paletteTag = ANIM_TAG_SMALL_BUBBLES,
|
||||
.oam = &gOamData_AffineNormal_ObjBlend_16x16,
|
||||
.anims = gUnknown_83E5A78,
|
||||
.anims = gAnims_WaterBubble,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E6AB4,
|
||||
.affineAnims = sAffineAnims_Bubble,
|
||||
.callback = AnimBubbleEffect,
|
||||
};
|
||||
|
||||
static void sub_80B1620(struct Sprite *sprite)
|
||||
static void AnimSludgeProjectile(struct Sprite *sprite)
|
||||
{
|
||||
if (!gBattleAnimArgs[3])
|
||||
StartSpriteAnim(sprite, 2);
|
||||
@@ -203,7 +203,7 @@ static void sub_80B1684(struct Sprite *sprite)
|
||||
DestroyAnimSprite(sprite);
|
||||
}
|
||||
|
||||
static void sub_80B16A0(struct Sprite *sprite)
|
||||
static void AnimAcidPoisonBubble(struct Sprite *sprite)
|
||||
{
|
||||
s16 l1, l2;
|
||||
|
||||
@@ -227,7 +227,7 @@ static void sub_80B1728(struct Sprite *sprite)
|
||||
DestroyAnimSprite(sprite);
|
||||
}
|
||||
|
||||
static void sub_80B1744(struct Sprite *sprite)
|
||||
static void AnimSludgeBombHitParticle(struct Sprite *sprite)
|
||||
{
|
||||
sprite->data[0] = gBattleAnimArgs[2];
|
||||
sprite->data[1] = sprite->pos1.x;
|
||||
@@ -249,7 +249,7 @@ static void sub_80B1798(struct Sprite *sprite)
|
||||
DestroyAnimSprite(sprite);
|
||||
}
|
||||
|
||||
static void sub_80B17C4(struct Sprite *sprite)
|
||||
static void AnimAcidPoisonDroplet(struct Sprite *sprite)
|
||||
{
|
||||
SetAverageBattlerPositions(gBattleAnimTarget, TRUE, &sprite->pos1.x, &sprite->pos1.y);
|
||||
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
|
||||
|
||||
+102
-102
@@ -5,13 +5,13 @@
|
||||
#include "trig.h"
|
||||
#include "constants/songs.h"
|
||||
|
||||
static void sub_80B2ECC(struct Sprite *sprite);
|
||||
static void sub_80B31D0(struct Sprite *sprite);
|
||||
static void sub_80B3278(struct Sprite *sprite);
|
||||
static void sub_80B32F4(struct Sprite *sprite);
|
||||
static void sub_80B37EC(struct Sprite *sprite);
|
||||
static void sub_80B3A34(struct Sprite *sprite);
|
||||
static void sub_80B3E84(struct Sprite *sprite);
|
||||
static void AnimDefensiveWall(struct Sprite *sprite);
|
||||
static void AnimWallSparkle(struct Sprite *sprite);
|
||||
static void AnimBentSpoon(struct Sprite *sprite);
|
||||
static void AnimQuestionMark(struct Sprite *sprite);
|
||||
static void AnimRedX(struct Sprite *sprite);
|
||||
static void AnimSkillSwapOrb(struct Sprite *sprite);
|
||||
static void AnimPsychoBoost(struct Sprite *sprite);
|
||||
static void sub_80B300C(struct Sprite *sprite);
|
||||
static void sub_80B3044(struct Sprite *sprite);
|
||||
static void sub_80B30B0(struct Sprite *sprite);
|
||||
@@ -25,30 +25,30 @@ static void sub_80B3980(u8 taskId);
|
||||
static void sub_80B3B78(u8 taskId);
|
||||
static void sub_80B3D78(u8 taskId);
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E6DDC[] =
|
||||
static const union AffineAnimCmd sAffineAnim_PsychUpSpiral[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
|
||||
AFFINEANIMCMD_FRAME(-0x2, -0x2, -10, 120),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E6DF4[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_PsychUpSpiral[] =
|
||||
{
|
||||
gUnknown_83E6DDC,
|
||||
sAffineAnim_PsychUpSpiral,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6DF8 =
|
||||
const struct SpriteTemplate gPsychUpSpiralSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_SPIRAL,
|
||||
.paletteTag = ANIM_TAG_SPIRAL,
|
||||
.oam = &gOamData_AffineNormal_ObjBlend_64x64,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E6DF4,
|
||||
.affineAnims = sAffineAnims_PsychUpSpiral,
|
||||
.callback = AnimSpriteOnMonPos,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6E10 =
|
||||
const struct SpriteTemplate gLightScreenWallSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_GREEN_LIGHT_WALL,
|
||||
.paletteTag = ANIM_TAG_GREEN_LIGHT_WALL,
|
||||
@@ -56,10 +56,10 @@ const struct SpriteTemplate gUnknown_83E6E10 =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B2ECC,
|
||||
.callback = AnimDefensiveWall,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6E28 =
|
||||
const struct SpriteTemplate gReflectWallSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_BLUE_LIGHT_WALL,
|
||||
.paletteTag = ANIM_TAG_BLUE_LIGHT_WALL,
|
||||
@@ -67,10 +67,10 @@ const struct SpriteTemplate gUnknown_83E6E28 =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B2ECC,
|
||||
.callback = AnimDefensiveWall,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6E40 =
|
||||
const struct SpriteTemplate gMirrorCoatWallSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_RED_LIGHT_WALL,
|
||||
.paletteTag = ANIM_TAG_RED_LIGHT_WALL,
|
||||
@@ -78,10 +78,10 @@ const struct SpriteTemplate gUnknown_83E6E40 =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B2ECC,
|
||||
.callback = AnimDefensiveWall,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6E58 =
|
||||
const struct SpriteTemplate gBarrierWallSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_GRAY_LIGHT_WALL,
|
||||
.paletteTag = ANIM_TAG_GRAY_LIGHT_WALL,
|
||||
@@ -89,10 +89,10 @@ const struct SpriteTemplate gUnknown_83E6E58 =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B2ECC,
|
||||
.callback = AnimDefensiveWall,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6E70 =
|
||||
const struct SpriteTemplate gMagicCoatWallSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_ORANGE_LIGHT_WALL,
|
||||
.paletteTag = ANIM_TAG_ORANGE_LIGHT_WALL,
|
||||
@@ -100,10 +100,10 @@ const struct SpriteTemplate gUnknown_83E6E70 =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B2ECC,
|
||||
.callback = AnimDefensiveWall,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E6E88[] =
|
||||
static const union AnimCmd sAnim_ReflectSparkle[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 3),
|
||||
ANIMCMD_FRAME(16, 3),
|
||||
@@ -113,23 +113,23 @@ static const union AnimCmd gUnknown_83E6E88[] =
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E6EA0[] =
|
||||
static const union AnimCmd *const sAnims_ReflectSparkle[] =
|
||||
{
|
||||
gUnknown_83E6E88,
|
||||
sAnim_ReflectSparkle,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6EA4 =
|
||||
const struct SpriteTemplate gReflectSparkleSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_SPARKLE_4,
|
||||
.paletteTag = ANIM_TAG_SPARKLE_4,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E6EA0,
|
||||
.anims = sAnims_ReflectSparkle,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B31D0,
|
||||
.callback = AnimWallSparkle,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E6EBC[] =
|
||||
static const union AnimCmd sAnim_SpecialScreenSparkle[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 5),
|
||||
ANIMCMD_FRAME(4, 5),
|
||||
@@ -138,23 +138,23 @@ static const union AnimCmd gUnknown_83E6EBC[] =
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E6ED0[] =
|
||||
static const union AnimCmd *const sAnims_SpecialScreenSparkle[] =
|
||||
{
|
||||
gUnknown_83E6EBC,
|
||||
sAnim_SpecialScreenSparkle,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6ED4 =
|
||||
const struct SpriteTemplate gSpecialScreenSparkleSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_SPARKLE_3,
|
||||
.paletteTag = ANIM_TAG_SPARKLE_3,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_16x16,
|
||||
.anims = gUnknown_83E6ED0,
|
||||
.anims = sAnims_SpecialScreenSparkle,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B31D0,
|
||||
.callback = AnimWallSparkle,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6EEC =
|
||||
const struct SpriteTemplate gGoldRingSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_GOLD_RING,
|
||||
.paletteTag = ANIM_TAG_GOLD_RING,
|
||||
@@ -165,7 +165,7 @@ const struct SpriteTemplate gUnknown_83E6EEC =
|
||||
.callback = TranslateAnimSpriteToTargetMonLocation,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E6F04[] =
|
||||
static const union AnimCmd sAnim_BentSpoon_0[] =
|
||||
{
|
||||
ANIMCMD_FRAME(8, 60, .hFlip = TRUE),
|
||||
ANIMCMD_FRAME(16, 5, .hFlip = TRUE),
|
||||
@@ -185,7 +185,7 @@ static const union AnimCmd gUnknown_83E6F04[] =
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
const union AnimCmd gUnknown_83E6F44[] =
|
||||
static const union AnimCmd sAnim_BentSpoon_1[] =
|
||||
{
|
||||
ANIMCMD_FRAME(8, 60),
|
||||
ANIMCMD_FRAME(16, 5),
|
||||
@@ -205,24 +205,24 @@ const union AnimCmd gUnknown_83E6F44[] =
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E6F84[] =
|
||||
static const union AnimCmd *const sAnims_BentSpoon[] =
|
||||
{
|
||||
gUnknown_83E6F04,
|
||||
gUnknown_83E6F44,
|
||||
sAnim_BentSpoon_0,
|
||||
sAnim_BentSpoon_1,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6F8C =
|
||||
const struct SpriteTemplate gBentSpoonSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_BENT_SPOON,
|
||||
.paletteTag = ANIM_TAG_BENT_SPOON,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_16x32,
|
||||
.anims = gUnknown_83E6F84,
|
||||
.anims = sAnims_BentSpoon,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B3278,
|
||||
.callback = AnimBentSpoon,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E6FA4[] =
|
||||
static const union AnimCmd sAnim_QuestionMark[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 6),
|
||||
ANIMCMD_FRAME(16, 6),
|
||||
@@ -234,12 +234,12 @@ static const union AnimCmd gUnknown_83E6FA4[] =
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E6FC4[] =
|
||||
static const union AnimCmd *const sAnims_QuestionMark[] =
|
||||
{
|
||||
gUnknown_83E6FA4,
|
||||
sAnim_QuestionMark,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E6FC8[] =
|
||||
static const union AffineAnimCmd sAffineAnim_QuestionMark[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0, 0, 4, 4),
|
||||
AFFINEANIMCMD_FRAME(0, 0, -4, 8),
|
||||
@@ -248,23 +248,23 @@ static const union AffineAnimCmd gUnknown_83E6FC8[] =
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E6FF0[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_QuestionMark[] =
|
||||
{
|
||||
gUnknown_83E6FC8,
|
||||
sAffineAnim_QuestionMark,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E6FF4 =
|
||||
const struct SpriteTemplate gQuestionMarkSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_AMNESIA,
|
||||
.paletteTag = ANIM_TAG_AMNESIA,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E6FC4,
|
||||
.anims = sAnims_QuestionMark,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B32F4,
|
||||
.callback = AnimQuestionMark,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E700C[] =
|
||||
static const union AffineAnimCmd sAffineAnim_MeditateStretchAttacker[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(-8, 10, 0, 16),
|
||||
AFFINEANIMCMD_FRAME(18, -18, 0, 16),
|
||||
@@ -272,14 +272,14 @@ static const union AffineAnimCmd gUnknown_83E700C[] =
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E702C[] =
|
||||
static const union AffineAnimCmd sAffineAnim_Teleport[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(64, -4, 0, 20),
|
||||
AFFINEANIMCMD_FRAME(0, 0, 0, -56),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const struct SpriteTemplate gUnknown_83E7044 =
|
||||
static const struct SpriteTemplate sImprisonOrbSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_HOLLOW_ORB,
|
||||
.paletteTag = ANIM_TAG_HOLLOW_ORB,
|
||||
@@ -290,25 +290,25 @@ static const struct SpriteTemplate gUnknown_83E7044 =
|
||||
.callback = SpriteCallbackDummy,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E705C =
|
||||
const struct SpriteTemplate gRedXSpriteTemplate =
|
||||
{
|
||||
.tileTag = 0x280A,
|
||||
.paletteTag = 0x280A,
|
||||
.tileTag = ANIM_TAG_X_SIGN,
|
||||
.paletteTag = ANIM_TAG_X_SIGN,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_64x64,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B37EC,
|
||||
.callback = AnimRedX,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E7074[] =
|
||||
static const union AffineAnimCmd sAffineAnim_SkillSwapOrb_0[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(-0x8, -0x8, 0, 8),
|
||||
AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 8),
|
||||
AFFINEANIMCMD_JUMP(0),
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E708C[] =
|
||||
static const union AffineAnimCmd sAffineAnim_SkillSwapOrb_1[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0xF0, 0xF0, 0, 0),
|
||||
AFFINEANIMCMD_FRAME(-0x8, -0x8, 0, 6),
|
||||
@@ -317,7 +317,7 @@ static const union AffineAnimCmd gUnknown_83E708C[] =
|
||||
AFFINEANIMCMD_JUMP(1),
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E70B4[] =
|
||||
static const union AffineAnimCmd sAffineAnim_SkillSwapOrb_2[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0xD0, 0xD0, 0, 0),
|
||||
AFFINEANIMCMD_FRAME(-0x8, -0x8, 0, 4),
|
||||
@@ -326,7 +326,7 @@ static const union AffineAnimCmd gUnknown_83E70B4[] =
|
||||
AFFINEANIMCMD_JUMP(1),
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E70DC[] =
|
||||
static const union AffineAnimCmd sAffineAnim_SkillSwapOrb_3[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0xB0, 0xB0, 0, 0),
|
||||
AFFINEANIMCMD_FRAME(-0x8, -0x8, 0, 2),
|
||||
@@ -335,49 +335,49 @@ static const union AffineAnimCmd gUnknown_83E70DC[] =
|
||||
AFFINEANIMCMD_JUMP(1),
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E7104[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_SkillSwapOrb[] =
|
||||
{
|
||||
gUnknown_83E7074,
|
||||
gUnknown_83E708C,
|
||||
gUnknown_83E70B4,
|
||||
gUnknown_83E70DC,
|
||||
sAffineAnim_SkillSwapOrb_0,
|
||||
sAffineAnim_SkillSwapOrb_1,
|
||||
sAffineAnim_SkillSwapOrb_2,
|
||||
sAffineAnim_SkillSwapOrb_3,
|
||||
};
|
||||
|
||||
static const struct SpriteTemplate gUnknown_83E7114 =
|
||||
static const struct SpriteTemplate sSkillSwapOrbSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_BLUEGREEN_ORB,
|
||||
.paletteTag = ANIM_TAG_BLUEGREEN_ORB,
|
||||
.oam = &gOamData_AffineNormal_ObjNormal_16x16,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E7104,
|
||||
.callback = sub_80B3A34,
|
||||
.affineAnims = sAffineAnims_SkillSwapOrb,
|
||||
.callback = AnimSkillSwapOrb,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E712C[] =
|
||||
static const union AffineAnimCmd sAffineAnim_LusterPurgeCircle[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x20, 0x20, 0, 0),
|
||||
AFFINEANIMCMD_FRAME(0x4, 0x4, 0, 120),
|
||||
AFFINEANIMCMD_END_ALT(1),
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E7144[] =
|
||||
static const union AffineAnimCmd *const gAffineAnims_LusterPurgeCircle[] =
|
||||
{
|
||||
gUnknown_83E712C,
|
||||
sAffineAnim_LusterPurgeCircle,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7148 =
|
||||
const struct SpriteTemplate gLusterPurgeCircleSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_WHITE_CIRCLE_OF_LIGHT,
|
||||
.paletteTag = ANIM_TAG_WHITE_CIRCLE_OF_LIGHT,
|
||||
.oam = &gOamData_AffineDouble_ObjBlend_64x64,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E7144,
|
||||
.affineAnims = gAffineAnims_LusterPurgeCircle,
|
||||
.callback = AnimSpriteOnMonPos,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E7160[] =
|
||||
static const union AffineAnimCmd sAffineAnim_PsychoBoostOrb_0[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x20, 0x20, 0, 0),
|
||||
AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 17),
|
||||
@@ -392,30 +392,30 @@ static const union AffineAnimCmd gUnknown_83E7160[] =
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E71B8[] =
|
||||
static const union AffineAnimCmd sAffineAnim_PsychoBoostOrb_1[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(-0x14, 0x18, 0, 15),
|
||||
AFFINEANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E71C8[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_PsychoBoostOrb[] =
|
||||
{
|
||||
gUnknown_83E7160,
|
||||
gUnknown_83E71B8,
|
||||
sAffineAnim_PsychoBoostOrb_0,
|
||||
sAffineAnim_PsychoBoostOrb_1,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E71D0 =
|
||||
const struct SpriteTemplate gPsychoBoostOrbSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_CIRCLE_OF_LIGHT,
|
||||
.paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT,
|
||||
.oam = &gOamData_AffineDouble_ObjBlend_64x64,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E71C8,
|
||||
.callback = sub_80B3E84,
|
||||
.affineAnims = sAffineAnims_PsychoBoostOrb,
|
||||
.callback = AnimPsychoBoost,
|
||||
};
|
||||
|
||||
static void sub_80B2ECC(struct Sprite *sprite)
|
||||
static void AnimDefensiveWall(struct Sprite *sprite)
|
||||
{
|
||||
if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER || IsContest())
|
||||
{
|
||||
@@ -531,7 +531,7 @@ static void sub_80B3168(struct Sprite *sprite)
|
||||
sprite->callback = DestroyAnimSprite;
|
||||
}
|
||||
|
||||
static void sub_80B31D0(struct Sprite *sprite)
|
||||
static void AnimWallSparkle(struct Sprite *sprite)
|
||||
{
|
||||
if (sprite->data[0] == 0)
|
||||
{
|
||||
@@ -568,7 +568,7 @@ static void sub_80B31D0(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_80B3278(struct Sprite *sprite)
|
||||
static void AnimBentSpoon(struct Sprite *sprite)
|
||||
{
|
||||
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
|
||||
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
|
||||
@@ -589,7 +589,7 @@ static void sub_80B3278(struct Sprite *sprite)
|
||||
sprite->callback = RunStoredCallbackWhenAnimEnds;
|
||||
}
|
||||
|
||||
static void sub_80B32F4(struct Sprite *sprite)
|
||||
static void AnimQuestionMark(struct Sprite *sprite)
|
||||
{
|
||||
s16 x = GetBattlerSpriteCoordAttr(gBattleAnimAttacker, BATTLER_COORD_ATTR_WIDTH) / 2;
|
||||
s16 y = GetBattlerSpriteCoordAttr(gBattleAnimAttacker, BATTLER_COORD_ATTR_HEIGHT) / -2;
|
||||
@@ -607,7 +607,7 @@ static void sub_80B32F4(struct Sprite *sprite)
|
||||
static void sub_80B3384(struct Sprite *sprite)
|
||||
{
|
||||
sprite->oam.affineMode = ST_OAM_AFFINE_NORMAL;
|
||||
sprite->affineAnims = gUnknown_83E6FF0;
|
||||
sprite->affineAnims = sAffineAnims_QuestionMark;
|
||||
sprite->data[0] = 0;
|
||||
InitSpriteAffineAnim(sprite);
|
||||
sprite->callback = sub_80B33B8;
|
||||
@@ -633,13 +633,13 @@ static void sub_80B33B8(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80B3418(u8 taskId)
|
||||
void AnimTask_MeditateStretchAttacker(u8 taskId)
|
||||
{
|
||||
struct Task *task = &gTasks[taskId];
|
||||
u8 spriteId = GetAnimBattlerSpriteId(ANIM_ATTACKER);
|
||||
|
||||
task->data[0] = spriteId;
|
||||
PrepareAffineAnimInTaskData(task, spriteId, gUnknown_83E700C);
|
||||
PrepareAffineAnimInTaskData(task, spriteId, sAffineAnim_MeditateStretchAttacker);
|
||||
task->func = sub_80B3454;
|
||||
}
|
||||
|
||||
@@ -649,7 +649,7 @@ static void sub_80B3454(u8 taskId)
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
void sub_80B3480(u8 taskId)
|
||||
void AnimTask_Teleport(u8 taskId)
|
||||
{
|
||||
struct Task *task = &gTasks[taskId];
|
||||
u8 spriteId = GetAnimBattlerSpriteId(ANIM_ATTACKER);
|
||||
@@ -658,7 +658,7 @@ void sub_80B3480(u8 taskId)
|
||||
task->data[1] = 0;
|
||||
task->data[2] = 0;
|
||||
task->data[3] = GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER ? 4 : 8;
|
||||
PrepareAffineAnimInTaskData(task, task->data[0], gUnknown_83E702C);
|
||||
PrepareAffineAnimInTaskData(task, task->data[0], sAffineAnim_Teleport);
|
||||
task->func = sub_80B34DC;
|
||||
}
|
||||
|
||||
@@ -690,7 +690,7 @@ static void sub_80B34DC(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80B3584(u8 taskId)
|
||||
void AnimTask_ImprisonOrbs(u8 taskId)
|
||||
{
|
||||
u16 var0, var1;
|
||||
struct Task *task = &gTasks[taskId];
|
||||
@@ -719,7 +719,7 @@ static void sub_80B3618(u8 taskId)
|
||||
if (++task->data[1] > 8)
|
||||
{
|
||||
task->data[1] = 0;
|
||||
spriteId = CreateSprite(&gUnknown_83E7044, task->data[13], task->data[14], 0);
|
||||
spriteId = CreateSprite(&sImprisonOrbSpriteTemplate, task->data[13], task->data[14], 0);
|
||||
task->data[task->data[2] + 8] = spriteId;
|
||||
if (spriteId != MAX_SPRITES)
|
||||
{
|
||||
@@ -782,7 +782,7 @@ static void sub_80B37A4(struct Sprite *sprite)
|
||||
++sprite->data[1];
|
||||
}
|
||||
|
||||
static void sub_80B37EC(struct Sprite *sprite)
|
||||
static void AnimRedX(struct Sprite *sprite)
|
||||
{
|
||||
if (gBattleAnimArgs[0] == 0)
|
||||
{
|
||||
@@ -793,7 +793,7 @@ static void sub_80B37EC(struct Sprite *sprite)
|
||||
sprite->callback = sub_80B37A4;
|
||||
}
|
||||
|
||||
void sub_80B3834(u8 taskId)
|
||||
void AnimTask_SkillSwap(u8 taskId)
|
||||
{
|
||||
struct Task *task = &gTasks[taskId];
|
||||
|
||||
@@ -850,7 +850,7 @@ static void sub_80B3980(u8 taskId)
|
||||
if (++task->data[1] > 6)
|
||||
{
|
||||
task->data[1] = 0;
|
||||
spriteId = CreateSprite(&gUnknown_83E7114, task->data[11], task->data[12], 0);
|
||||
spriteId = CreateSprite(&sSkillSwapOrbSpriteTemplate, task->data[11], task->data[12], 0);
|
||||
if (spriteId != 64)
|
||||
{
|
||||
gSprites[spriteId].data[0] = 16;
|
||||
@@ -872,7 +872,7 @@ static void sub_80B3980(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_80B3A34(struct Sprite *sprite)
|
||||
static void AnimSkillSwapOrb(struct Sprite *sprite)
|
||||
{
|
||||
if (TranslateAnimHorizontalArc(sprite))
|
||||
{
|
||||
@@ -881,7 +881,7 @@ static void sub_80B3A34(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80B3A58(u8 taskId)
|
||||
void AnimTask_ExtrasensoryDistortion(u8 taskId)
|
||||
{
|
||||
s16 i;
|
||||
u8 yOffset;
|
||||
@@ -969,7 +969,7 @@ static void sub_80B3B78(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80B3C78(u8 taskId)
|
||||
void AnimTask_TransparentCloneGrowAndShrink(u8 taskId)
|
||||
{
|
||||
s16 spriteId;
|
||||
s16 matrixNum;
|
||||
@@ -1034,7 +1034,7 @@ static void sub_80B3D78(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_80B3E84(struct Sprite *sprite)
|
||||
static void AnimPsychoBoost(struct Sprite *sprite)
|
||||
{
|
||||
switch (sprite->data[0])
|
||||
{
|
||||
|
||||
+91
-91
@@ -6,16 +6,16 @@
|
||||
#include "trig.h"
|
||||
#include "constants/songs.h"
|
||||
|
||||
static void sub_80B4634(struct Sprite *sprite);
|
||||
static void sub_80B46F8(struct Sprite *sprite);
|
||||
static void AnimFallingRock(struct Sprite *sprite);
|
||||
static void AnimRockFragment(struct Sprite *sprite);
|
||||
static void AnimDirtParticleAcrossScreen(struct Sprite *sprite);
|
||||
static void AnimRaiseSprite(struct Sprite *sprite);
|
||||
static void sub_80B4D00(u8 taskId);
|
||||
static void sub_80B4F78(struct Sprite *sprite);
|
||||
static void sub_80B4FE4(struct Sprite *sprite);
|
||||
static void sub_80B5074(struct Sprite *sprite);
|
||||
static void sub_80B50A0(struct Sprite *sprite);
|
||||
static void sub_80B477C(struct Sprite *sprite);
|
||||
static void AnimRolloutParticle(struct Sprite *sprite);
|
||||
static void AnimRockTomb(struct Sprite *sprite);
|
||||
static void AnimRockBlastRock(struct Sprite *sprite);
|
||||
static void AnimRockScatter(struct Sprite *sprite);
|
||||
static void AnimParticleInVortex(struct Sprite *sprite);
|
||||
static void sub_80B46B4(struct Sprite *sprite);
|
||||
static void sub_80B47C4(struct Sprite *sprite);
|
||||
static void sub_80B490C(u8 taskId);
|
||||
@@ -24,54 +24,54 @@ static u8 sub_80B4FB8(void);
|
||||
static void sub_80B5024(struct Sprite *sprite);
|
||||
static void sub_80B50F8(struct Sprite *sprite);
|
||||
|
||||
static const union AnimCmd gUnknown_83E7390[] =
|
||||
static const union AnimCmd sAnim_FlyingRock_0[] =
|
||||
{
|
||||
ANIMCMD_FRAME(32, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E7398[] =
|
||||
static const union AnimCmd sAnim_FlyingRock_1[] =
|
||||
{
|
||||
ANIMCMD_FRAME(48, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E73A0[] =
|
||||
static const union AnimCmd sAnim_FlyingRock_2[] =
|
||||
{
|
||||
ANIMCMD_FRAME(64, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E73A8[] =
|
||||
static const union AnimCmd *const sAnims_FlyingRock[] =
|
||||
{
|
||||
gUnknown_83E7390,
|
||||
gUnknown_83E7398,
|
||||
gUnknown_83E73A0,
|
||||
sAnim_FlyingRock_0,
|
||||
sAnim_FlyingRock_1,
|
||||
sAnim_FlyingRock_2,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E73B4 =
|
||||
const struct SpriteTemplate gFallingRockSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_ROCKS,
|
||||
.paletteTag = ANIM_TAG_ROCKS,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E73A8,
|
||||
.anims = sAnims_FlyingRock,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B4634,
|
||||
.callback = AnimFallingRock,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E73CC =
|
||||
const struct SpriteTemplate gRockFragmentSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_ROCKS,
|
||||
.paletteTag = ANIM_TAG_ROCKS,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E73A8,
|
||||
.anims = sAnims_FlyingRock,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B46F8,
|
||||
.callback = AnimRockFragment,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E73E4 =
|
||||
const struct SpriteTemplate gSwirlingDirtSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_MUD_SAND,
|
||||
.paletteTag = ANIM_TAG_MUD_SAND,
|
||||
@@ -79,10 +79,10 @@ const struct SpriteTemplate gUnknown_83E73E4 =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B477C,
|
||||
.callback = AnimParticleInVortex,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E73FC[] =
|
||||
static const union AffineAnimCmd sAffineAnim_Whirlpool[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0xC0, 0xC0, 0, 0),
|
||||
AFFINEANIMCMD_FRAME(0x2, -0x3, 0, 5),
|
||||
@@ -90,34 +90,34 @@ static const union AffineAnimCmd gUnknown_83E73FC[] =
|
||||
AFFINEANIMCMD_JUMP(1),
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E741C[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_Whirlpool[] =
|
||||
{
|
||||
gUnknown_83E73FC,
|
||||
sAffineAnim_Whirlpool,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7420 =
|
||||
const struct SpriteTemplate gWhirlpoolSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_WATER_ORB,
|
||||
.paletteTag = ANIM_TAG_WATER_ORB,
|
||||
.oam = &gOamData_AffineNormal_ObjBlend_16x16,
|
||||
.anims = gUnknown_83E5958,
|
||||
.anims = gAnims_WaterMudOrb,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E741C,
|
||||
.callback = sub_80B477C,
|
||||
.affineAnims = sAffineAnims_Whirlpool,
|
||||
.callback = AnimParticleInVortex,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7438 =
|
||||
const struct SpriteTemplate gFireSpinSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_SMALL_EMBER,
|
||||
.paletteTag = ANIM_TAG_SMALL_EMBER,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E5D48,
|
||||
.anims = gAnims_BasicFire,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B477C,
|
||||
.callback = AnimParticleInVortex,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7450 =
|
||||
const struct SpriteTemplate gFlyingSandCrescentSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_FLYING_DIRT,
|
||||
.paletteTag = ANIM_TAG_FLYING_DIRT,
|
||||
@@ -128,7 +128,7 @@ const struct SpriteTemplate gUnknown_83E7450 =
|
||||
.callback = AnimDirtParticleAcrossScreen,
|
||||
};
|
||||
|
||||
static const struct Subsprite gUnknown_83E7468[] =
|
||||
static const struct Subsprite sFlyingSandSubsprites[] =
|
||||
{
|
||||
{
|
||||
.x = -16,
|
||||
@@ -148,77 +148,77 @@ static const struct Subsprite gUnknown_83E7468[] =
|
||||
},
|
||||
};
|
||||
|
||||
static const struct SubspriteTable gUnknown_83E7470[] =
|
||||
static const struct SubspriteTable sFlyingSandSubspriteTable[] =
|
||||
{
|
||||
{ NELEMS(gUnknown_83E7468), gUnknown_83E7468 },
|
||||
{ NELEMS(sFlyingSandSubsprites), sFlyingSandSubsprites },
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E7478[] =
|
||||
static const union AnimCmd sAnim_BasicRock_0[] =
|
||||
{
|
||||
ANIMCMD_FRAME(0, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E7480[] =
|
||||
static const union AnimCmd sAnim_BasicRock_1[] =
|
||||
{
|
||||
ANIMCMD_FRAME(16, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E7488[] =
|
||||
static const union AnimCmd sAnim_WeatherBallRockDown_0[] =
|
||||
{
|
||||
ANIMCMD_FRAME(32, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E7490[] =
|
||||
static const union AnimCmd sAnim_WeatherBallRockDown_1[] =
|
||||
{
|
||||
ANIMCMD_FRAME(48, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E7498[] =
|
||||
static const union AnimCmd sAnim_TwisterRock_0[] =
|
||||
{
|
||||
ANIMCMD_FRAME(64, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd gUnknown_83E74A0[] =
|
||||
static const union AnimCmd sAnim_TwisterRock_1[] =
|
||||
{
|
||||
ANIMCMD_FRAME(80, 1),
|
||||
ANIMCMD_END,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E74A8[] =
|
||||
static const union AnimCmd *const sAnims_BasicRock[] =
|
||||
{
|
||||
gUnknown_83E7478,
|
||||
gUnknown_83E7480,
|
||||
sAnim_BasicRock_0,
|
||||
sAnim_BasicRock_1,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E74B0[] =
|
||||
static const union AnimCmd *const sAnims_WeatherBallRockDown[] =
|
||||
{
|
||||
gUnknown_83E7488,
|
||||
gUnknown_83E7490,
|
||||
sAnim_WeatherBallRockDown_0,
|
||||
sAnim_WeatherBallRockDown_1,
|
||||
};
|
||||
|
||||
static const union AnimCmd *const gUnknown_83E74B8[] =
|
||||
static const union AnimCmd *const sAnims_TwisterRock[] =
|
||||
{
|
||||
gUnknown_83E7498,
|
||||
gUnknown_83E74A0,
|
||||
sAnim_TwisterRock_0,
|
||||
sAnim_TwisterRock_1,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E74C0 =
|
||||
const struct SpriteTemplate gAncientPowerRockSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_ROCKS,
|
||||
.paletteTag = ANIM_TAG_ROCKS,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E74A8,
|
||||
.anims = sAnims_BasicRock,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = AnimRaiseSprite,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E74D8 =
|
||||
const struct SpriteTemplate gRolloutMudSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_MUD_SAND,
|
||||
.paletteTag = ANIM_TAG_MUD_SAND,
|
||||
@@ -226,7 +226,7 @@ const struct SpriteTemplate gUnknown_83E74D8 =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B4F78,
|
||||
.callback = AnimRolloutParticle,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E74F0 =
|
||||
@@ -237,83 +237,83 @@ const struct SpriteTemplate gUnknown_83E74F0 =
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B4F78,
|
||||
.callback = AnimRolloutParticle,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7508 =
|
||||
const struct SpriteTemplate gRockTombRockSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_ROCKS,
|
||||
.paletteTag = ANIM_TAG_ROCKS,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E74A8,
|
||||
.anims = sAnims_BasicRock,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_80B4FE4,
|
||||
.callback = AnimRockTomb,
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E7520[] =
|
||||
static const union AffineAnimCmd sAffineAnim_BasicRock_0[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x0, 0x0, -5, 5),
|
||||
AFFINEANIMCMD_JUMP(0),
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd gUnknown_83E7530[] =
|
||||
static const union AffineAnimCmd sAffineAnim_BasicRock_1[] =
|
||||
{
|
||||
AFFINEANIMCMD_FRAME(0x0, 0x0, 5, 5),
|
||||
AFFINEANIMCMD_JUMP(0),
|
||||
};
|
||||
|
||||
static const union AffineAnimCmd *const gUnknown_83E7540[] =
|
||||
static const union AffineAnimCmd *const sAffineAnims_BasicRock[] =
|
||||
{
|
||||
gUnknown_83E7520,
|
||||
gUnknown_83E7530,
|
||||
sAffineAnim_BasicRock_0,
|
||||
sAffineAnim_BasicRock_1,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7548 =
|
||||
const struct SpriteTemplate gRockBlastRockSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_ROCKS,
|
||||
.paletteTag = ANIM_TAG_ROCKS,
|
||||
.oam = &gOamData_AffineNormal_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E74A8,
|
||||
.anims = sAnims_BasicRock,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E7540,
|
||||
.callback = sub_80B5074,
|
||||
.affineAnims = sAffineAnims_BasicRock,
|
||||
.callback = AnimRockBlastRock,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7560 =
|
||||
const struct SpriteTemplate gRockScatterSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_ROCKS,
|
||||
.paletteTag = ANIM_TAG_ROCKS,
|
||||
.oam = &gOamData_AffineNormal_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E74A8,
|
||||
.anims = sAnims_BasicRock,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E7540,
|
||||
.callback = sub_80B50A0,
|
||||
.affineAnims = sAffineAnims_BasicRock,
|
||||
.callback = AnimRockScatter,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7578 =
|
||||
const struct SpriteTemplate gTwisterRockSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_ROCKS,
|
||||
.paletteTag = ANIM_TAG_ROCKS,
|
||||
.oam = &gOamData_AffineOff_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E74B8,
|
||||
.anims = sAnims_TwisterRock,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E7540,
|
||||
.affineAnims = sAffineAnims_BasicRock,
|
||||
.callback = AnimMoveTwisterParticle,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83E7590 =
|
||||
const struct SpriteTemplate gWeatherBallRockDownSpriteTemplate =
|
||||
{
|
||||
.tileTag = ANIM_TAG_ROCKS,
|
||||
.paletteTag = ANIM_TAG_ROCKS,
|
||||
.oam = &gOamData_AffineNormal_ObjNormal_32x32,
|
||||
.anims = gUnknown_83E74B0,
|
||||
.anims = sAnims_WeatherBallRockDown,
|
||||
.images = NULL,
|
||||
.affineAnims = gUnknown_83E7540,
|
||||
.callback = sub_8077350,
|
||||
.affineAnims = sAffineAnims_BasicRock,
|
||||
.callback = AnimWeatherBallDown,
|
||||
};
|
||||
|
||||
static void sub_80B4634(struct Sprite *sprite)
|
||||
static void AnimFallingRock(struct Sprite *sprite)
|
||||
{
|
||||
if (gBattleAnimArgs[3] != 0)
|
||||
SetAverageBattlerPositions(gBattleAnimTarget, 0, &sprite->pos1.x, &sprite->pos1.y);
|
||||
@@ -345,7 +345,7 @@ static void sub_80B46B4(struct Sprite *sprite)
|
||||
sprite->callback(sprite);
|
||||
}
|
||||
|
||||
static void sub_80B46F8(struct Sprite *sprite)
|
||||
static void AnimRockFragment(struct Sprite *sprite)
|
||||
{
|
||||
StartSpriteAnim(sprite, gBattleAnimArgs[5]);
|
||||
AnimateSprite(sprite);
|
||||
@@ -366,7 +366,7 @@ static void sub_80B46F8(struct Sprite *sprite)
|
||||
StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix);
|
||||
}
|
||||
|
||||
static void sub_80B477C(struct Sprite *sprite)
|
||||
static void AnimParticleInVortex(struct Sprite *sprite)
|
||||
{
|
||||
if (gBattleAnimArgs[6] == 0)
|
||||
InitSpritePosToAnimAttacker(sprite, 0);
|
||||
@@ -503,7 +503,7 @@ static void AnimDirtParticleAcrossScreen(struct Sprite *sprite)
|
||||
sprite->pos1.x = -64;
|
||||
}
|
||||
sprite->pos1.y = gBattleAnimArgs[0];
|
||||
SetSubspriteTables(sprite, gUnknown_83E7470);
|
||||
SetSubspriteTables(sprite, sFlyingSandSubspriteTable);
|
||||
sprite->data[1] = gBattleAnimArgs[1];
|
||||
sprite->data[2] = gBattleAnimArgs[2];
|
||||
++sprite->data[0];
|
||||
@@ -547,7 +547,7 @@ static void AnimRaiseSprite(struct Sprite *sprite)
|
||||
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
|
||||
}
|
||||
|
||||
void sub_80B4BD0(u8 taskId)
|
||||
void AnimTask_Rollout(u8 taskId)
|
||||
{
|
||||
u16 var0, var1, var2, var3;
|
||||
u8 var4;
|
||||
@@ -660,7 +660,7 @@ static void sub_80B4E70(struct Task *task)
|
||||
switch (task->data[1])
|
||||
{
|
||||
case 1:
|
||||
spriteTemplate = &gUnknown_83E74D8;
|
||||
spriteTemplate = &gRolloutMudSpriteTemplate;
|
||||
var0 = 0;
|
||||
break;
|
||||
case 2:
|
||||
@@ -696,7 +696,7 @@ static void sub_80B4E70(struct Task *task)
|
||||
task->data[12] *= -1;
|
||||
}
|
||||
|
||||
static void sub_80B4F78(struct Sprite *sprite)
|
||||
static void AnimRolloutParticle(struct Sprite *sprite)
|
||||
{
|
||||
if (TranslateAnimHorizontalArc(sprite))
|
||||
{
|
||||
@@ -718,7 +718,7 @@ static u8 sub_80B4FB8(void)
|
||||
return retVal;
|
||||
}
|
||||
|
||||
static void sub_80B4FE4(struct Sprite *sprite)
|
||||
static void AnimRockTomb(struct Sprite *sprite)
|
||||
{
|
||||
StartSpriteAnim(sprite, gBattleAnimArgs[4]);
|
||||
sprite->pos2.x = gBattleAnimArgs[0];
|
||||
@@ -749,14 +749,14 @@ static void sub_80B5024(struct Sprite *sprite)
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_80B5074(struct Sprite *sprite)
|
||||
static void AnimRockBlastRock(struct Sprite *sprite)
|
||||
{
|
||||
if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_OPPONENT)
|
||||
StartSpriteAffineAnim(sprite, 1);
|
||||
TranslateAnimSpriteToTargetMonLocation(sprite);
|
||||
}
|
||||
|
||||
static void sub_80B50A0(struct Sprite *sprite)
|
||||
static void AnimRockScatter(struct Sprite *sprite)
|
||||
{
|
||||
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 0);
|
||||
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 1);
|
||||
@@ -791,7 +791,7 @@ void AnimTask_GetSeismicTossDamageLevel(u8 taskId)
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
void sub_80B5188(u8 taskId)
|
||||
void AnimTask_MoveSeismicTossBg(u8 taskId)
|
||||
{
|
||||
if (gTasks[taskId].data[0] == 0)
|
||||
{
|
||||
@@ -808,7 +808,7 @@ void sub_80B5188(u8 taskId)
|
||||
++gTasks[taskId].data[0];
|
||||
}
|
||||
|
||||
void sub_80B51EC(u8 taskId)
|
||||
void AnimTask_SeismicTossBgAccelerateDownAtEnd(u8 taskId)
|
||||
{
|
||||
if (gTasks[taskId].data[0] == 0)
|
||||
{
|
||||
|
||||
+2229
File diff suppressed because it is too large
Load Diff
+64
-11
@@ -27,7 +27,17 @@ void ConvertGbaToPng(char *inputPath, char *outputPath, struct GbaToPngOptions *
|
||||
|
||||
if (options->paletteFilePath != NULL)
|
||||
{
|
||||
ReadGbaPalette(options->paletteFilePath, &image.palette);
|
||||
char *paletteFileExtension = GetFileExtensionAfterDot(options->paletteFilePath);
|
||||
|
||||
if (strcmp(paletteFileExtension, "gbapal") == 0)
|
||||
{
|
||||
ReadGbaPalette(options->paletteFilePath, &image.palette);
|
||||
}
|
||||
else
|
||||
{
|
||||
ReadJascPalette(options->paletteFilePath, &image.palette);
|
||||
}
|
||||
|
||||
image.hasPalette = true;
|
||||
}
|
||||
else
|
||||
@@ -59,7 +69,7 @@ void ConvertPngToGba(char *inputPath, char *outputPath, struct PngToGbaOptions *
|
||||
|
||||
void HandleGbaToPngCommand(char *inputPath, char *outputPath, int argc, char **argv)
|
||||
{
|
||||
char *inputFileExtension = GetFileExtension(inputPath);
|
||||
char *inputFileExtension = GetFileExtensionAfterDot(inputPath);
|
||||
struct GbaToPngOptions options;
|
||||
options.paletteFilePath = NULL;
|
||||
options.bitDepth = inputFileExtension[0] - '0';
|
||||
@@ -138,7 +148,7 @@ void HandleGbaToPngCommand(char *inputPath, char *outputPath, int argc, char **a
|
||||
|
||||
void HandlePngToGbaCommand(char *inputPath, char *outputPath, int argc, char **argv)
|
||||
{
|
||||
char *outputFileExtension = GetFileExtension(outputPath);
|
||||
char *outputFileExtension = GetFileExtensionAfterDot(outputPath);
|
||||
int bitDepth = outputFileExtension[0] - '0';
|
||||
struct PngToGbaOptions options;
|
||||
options.numTiles = 0;
|
||||
@@ -198,9 +208,17 @@ void HandlePngToGbaCommand(char *inputPath, char *outputPath, int argc, char **a
|
||||
ConvertPngToGba(inputPath, outputPath, &options);
|
||||
}
|
||||
|
||||
void HandlePngToJascPaletteCommand(char *inputPath, char *outputPath, int argc UNUSED, char **argv UNUSED)
|
||||
{
|
||||
struct Palette palette = {0};
|
||||
|
||||
ReadPngPalette(inputPath, &palette);
|
||||
WriteJascPalette(outputPath, &palette);
|
||||
}
|
||||
|
||||
void HandlePngToGbaPaletteCommand(char *inputPath, char *outputPath, int argc UNUSED, char **argv UNUSED)
|
||||
{
|
||||
struct Palette palette;
|
||||
struct Palette palette = {0};
|
||||
|
||||
ReadPngPalette(inputPath, &palette);
|
||||
WriteGbaPalette(outputPath, &palette);
|
||||
@@ -208,7 +226,7 @@ void HandlePngToGbaPaletteCommand(char *inputPath, char *outputPath, int argc UN
|
||||
|
||||
void HandleGbaToJascPaletteCommand(char *inputPath, char *outputPath, int argc UNUSED, char **argv UNUSED)
|
||||
{
|
||||
struct Palette palette;
|
||||
struct Palette palette = {0};
|
||||
|
||||
ReadGbaPalette(inputPath, &palette);
|
||||
WriteJascPalette(outputPath, &palette);
|
||||
@@ -241,7 +259,7 @@ void HandleJascToGbaPaletteCommand(char *inputPath, char *outputPath, int argc,
|
||||
}
|
||||
}
|
||||
|
||||
struct Palette palette;
|
||||
struct Palette palette = {0};
|
||||
|
||||
ReadJascPalette(inputPath, &palette);
|
||||
|
||||
@@ -483,6 +501,8 @@ void HandleHuffDecompressCommand(char *inputPath, char *outputPath, int argc UNU
|
||||
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
char converted = 0;
|
||||
|
||||
if (argc < 3)
|
||||
FATAL_ERROR("Usage: gbagfx INPUT_PATH OUTPUT_PATH [options...]\n");
|
||||
|
||||
@@ -495,6 +515,7 @@ int main(int argc, char **argv)
|
||||
{ "png", "4bpp", HandlePngToGbaCommand },
|
||||
{ "png", "8bpp", HandlePngToGbaCommand },
|
||||
{ "png", "gbapal", HandlePngToGbaPaletteCommand },
|
||||
{ "png", "pal", HandlePngToJascPaletteCommand },
|
||||
{ "gbapal", "pal", HandleGbaToJascPaletteCommand },
|
||||
{ "pal", "gbapal", HandleJascToGbaPaletteCommand },
|
||||
{ "latfont", "png", HandleLatinFontToPngCommand },
|
||||
@@ -514,14 +535,39 @@ int main(int argc, char **argv)
|
||||
|
||||
char *inputPath = argv[1];
|
||||
char *outputPath = argv[2];
|
||||
char *inputFileExtension = GetFileExtension(inputPath);
|
||||
char *outputFileExtension = GetFileExtension(outputPath);
|
||||
char *inputFileExtension = GetFileExtensionAfterDot(inputPath);
|
||||
char *outputFileExtension = GetFileExtensionAfterDot(outputPath);
|
||||
|
||||
if (inputFileExtension == NULL)
|
||||
FATAL_ERROR("Input file \"%s\" has no extension.\n", inputPath);
|
||||
|
||||
if (outputFileExtension == NULL)
|
||||
FATAL_ERROR("Output file \"%s\" has no extension.\n", outputPath);
|
||||
{
|
||||
outputFileExtension = GetFileExtension(outputPath);
|
||||
|
||||
if (*outputFileExtension == '.')
|
||||
outputFileExtension++;
|
||||
|
||||
if (*outputFileExtension == 0)
|
||||
FATAL_ERROR("Output file \"%s\" has no extension.\n", outputPath);
|
||||
|
||||
size_t newOutputPathSize = strlen(inputPath) - strlen(inputFileExtension) + strlen(outputFileExtension);
|
||||
outputPath = malloc(newOutputPathSize);
|
||||
|
||||
if (outputPath == NULL)
|
||||
FATAL_ERROR("Failed to allocate memory for new output path.\n");
|
||||
|
||||
for (int i = 0; i < newOutputPathSize; i++)
|
||||
{
|
||||
outputPath[i] = inputPath[i];
|
||||
|
||||
if (outputPath[i] == '.')
|
||||
{
|
||||
strcpy(&outputPath[i + 1], outputFileExtension);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
for (int i = 0; handlers[i].function != NULL; i++)
|
||||
{
|
||||
@@ -529,9 +575,16 @@ int main(int argc, char **argv)
|
||||
&& (handlers[i].outputFileExtension == NULL || strcmp(handlers[i].outputFileExtension, outputFileExtension) == 0))
|
||||
{
|
||||
handlers[i].function(inputPath, outputPath, argc, argv);
|
||||
return 0;
|
||||
converted = 1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
FATAL_ERROR("Don't know how to convert \"%s\" to \"%s\".\n", inputPath, outputPath);
|
||||
if (outputPath != argv[2])
|
||||
free(outputPath);
|
||||
|
||||
if (!converted)
|
||||
FATAL_ERROR("Don't know how to convert \"%s\" to \"%s\".\n", argv[1], argv[2]);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -47,6 +47,13 @@ char *GetFileExtension(char *path)
|
||||
while (extension > path && *extension != '.')
|
||||
extension--;
|
||||
|
||||
return extension;
|
||||
}
|
||||
|
||||
char *GetFileExtensionAfterDot(char *path)
|
||||
{
|
||||
char *extension = GetFileExtension(path);
|
||||
|
||||
if (extension == path)
|
||||
return NULL;
|
||||
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
|
||||
bool ParseNumber(char *s, char **end, int radix, int *intValue);
|
||||
char *GetFileExtension(char *path);
|
||||
char *GetFileExtensionAfterDot(char *path);
|
||||
unsigned char *ReadWholeFile(char *path, int *size);
|
||||
unsigned char *ReadWholeFileZeroPadded(char *path, int *size, int padAmount);
|
||||
void WriteWholeFile(char *path, void *buffer, int bufferSize);
|
||||
|
||||
Reference in New Issue
Block a user