summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/battle_anim.h10
-rw-r--r--include/constants/battle_anim.h9
-rw-r--r--include/contest.h19
-rw-r--r--include/global.h9
-rw-r--r--include/item.h2
-rw-r--r--include/macros/battle_anim.inc74
-rw-r--r--include/rom_8077ABC.h23
7 files changed, 74 insertions, 72 deletions
diff --git a/include/battle_anim.h b/include/battle_anim.h
index fd1becf39..ce9bb13de 100644
--- a/include/battle_anim.h
+++ b/include/battle_anim.h
@@ -9,14 +9,6 @@
#define REG_BG2CNT_BITFIELD REG_BGnCNT_BITFIELD(2)
#define REG_BG3CNT_BITFIELD REG_BGnCNT_BITFIELD(3)
-enum
-{
- ANIM_BANK_ATTACKER,
- ANIM_BANK_TARGET,
- ANIM_BANK_ATK_PARTNER,
- ANIM_BANK_DEF_PARTNER,
-};
-
struct BattleAnimBackground
{
void *image;
@@ -51,7 +43,7 @@ extern struct DisableStruct *gAnimDisableStructPtr;
void DoMoveAnim(u16 move);
void LaunchBattleAnimation(const u8 *const moveAnims[], u16 b, u8 c);
bool8 IsAnimBankSpriteVisible(u8 a);
-void sub_8076034(u8, u8);
+void MoveBattlerSpriteToBG(u8, u8);
bool8 IsContest(void);
void ClearBattleAnimationVars(void);
void DestroyAnimSprite(struct Sprite *sprite);
diff --git a/include/constants/battle_anim.h b/include/constants/battle_anim.h
new file mode 100644
index 000000000..c173a8730
--- /dev/null
+++ b/include/constants/battle_anim.h
@@ -0,0 +1,9 @@
+#ifndef GUARD_BATTLEANIM_CONSTANTS_H
+#define GUARD_BATTLEANIM_CONSTANTS_H
+
+#define ANIM_BANK_ATTACKER 0
+#define ANIM_BANK_TARGET 1
+#define ANIM_BANK_ATK_PARTNER 2
+#define ANIM_BANK_DEF_PARTNER 3
+
+#endif
diff --git a/include/contest.h b/include/contest.h
index b0bdd7f61..557b9e5c4 100644
--- a/include/contest.h
+++ b/include/contest.h
@@ -43,17 +43,13 @@ struct ContestPokemon
/*0x02*/ u8 nickname[POKEMON_NAME_LENGTH + 1];
/*0x0D*/ u8 trainerName[8];
/*0x15*/ u8 trainerGfxId;
- /*0x16*/ u8 unk16;
- /*0x17*/ u8 filler17;
/*0x18*/ u32 flags;
- /*0x1C*/ u8 unk1C_0:2;
- u8 unk1C_2:1;
- u8 unk1C_3:1;
- u8 unk1C_4:1;
- u8 unk1C_5:1;
- u8 unk1C_6:1;
- u8 unk1C_7:1;
- u8 filler1D;
+ /*0x1C*/ u8 whichRank:2;
+ u8 aiPool_Cool:1;
+ u8 aiPool_Beauty:1;
+ u8 aiPool_Cute:1;
+ u8 aiPool_Smart:1;
+ u8 aiPool_Tough:1;
/*0x1E*/ u16 moves[4]; // moves
/*0x26*/ u8 cool; // cool
/*0x27*/ u8 beauty; // beauty
@@ -61,8 +57,7 @@ struct ContestPokemon
/*0x29*/ u8 smart; // smart
/*0x2A*/ u8 tough; // tough
/*0x2B*/ u8 sheen; // sheen
- /*0x2C*/ u8 unk2C;
- /*0x2D*/ u8 unk2D[11];
+ /*0x2C*/ u8 unk2C[12];
/*0x38*/ u32 personality; // personality
/*0x3C*/ u32 otId; // otId
}; // wow
diff --git a/include/global.h b/include/global.h
index d0af4a4d1..6dd772795 100644
--- a/include/global.h
+++ b/include/global.h
@@ -65,6 +65,15 @@ enum
#define T2_READ_32(ptr) ((ptr)[0] + ((ptr)[1] << 8) + ((ptr)[2] << 16) + ((ptr)[3] << 24))
#define T2_READ_PTR(ptr) (void*) T2_READ_32(ptr)
+// Credits to Made (dolphin emoji)
+#define S16TOPOSFLOAT(val) \
+({ \
+ s16 v = (val); \
+ float f = (float)v; \
+ if(v < 0) f += 65536.0f; \
+ f; \
+})
+
enum
{
VERSION_SAPPHIRE = 1,
diff --git a/include/item.h b/include/item.h
index 8f6cc883b..bafa8a3fd 100644
--- a/include/item.h
+++ b/include/item.h
@@ -30,8 +30,6 @@ struct BagPocket
#define NUM_BAG_POCKETS 5
-extern const struct BagPocket gBagPockets[NUM_BAG_POCKETS];
-
void CopyItemName(u16 itemId, u8 *string);
bool8 IsBagPocketNonEmpty(u8 pocket);
bool8 CheckBagHasItem(u16 itemId, u16 count);
diff --git a/include/macros/battle_anim.inc b/include/macros/battle_anim.inc
index 4ff845032..bf409a848 100644
--- a/include/macros/battle_anim.inc
+++ b/include/macros/battle_anim.inc
@@ -1,14 +1,14 @@
- .macro loadsprite id
+ .macro loadspritegfx id
.byte 0x00
.2byte \id
.endm
- .macro unloadsprite id
+ .macro unloadspritegfx id
.byte 0x01
.2byte \id
.endm
- .macro sprite template, priority, argv:vararg
+ .macro createsprite template, priority, argv:vararg
.byte 0x02
.4byte \template
.byte \priority
@@ -18,7 +18,7 @@
.Lsprite_\@_2:
.endm
- .macro createtask addr, priority, argv:vararg
+ .macro createvisualtask addr, priority, argv:vararg
.byte 0x03
.4byte \addr
.byte \priority
@@ -28,12 +28,12 @@
.Lcreatetask_\@_2:
.endm
- .macro pause delay
+ .macro delay amount
.byte 0x04
- .byte \delay
+ .byte \amount
.endm
- .macro wait
+ .macro waitforvisualfinish
.byte 0x05
.endm
@@ -78,29 +78,29 @@
.4byte \addr
.endm
- .macro ret
+ .macro return
.byte 0x0F
.endm
- .macro setvar var_num, value
+ .macro setarg arg_num, value
.byte 0x10
- .byte \var_num
+ .byte \arg_num
.2byte \value
.endm
- .macro ifelse addr1, addr2
+ .macro choosetwoturnanim addr1, addr2
.byte 0x11
.4byte \addr1
.4byte \addr2
.endm
- .macro jumpif cond, addr
+ .macro jumpifmoveturn cond, addr
.byte 0x12
.byte \cond
.4byte \addr
.endm
- .macro jump addr
+ .macro goto addr
.byte 0x13
.4byte \addr
.endm
@@ -127,7 +127,7 @@
.byte \id
.endm
- .macro panse_19 id, pan
+ .macro playsewithpan id, pan
.byte 0x19
.2byte \id
.byte \pan
@@ -147,7 +147,7 @@
.byte \delay
.endm
- .macro panse_1C id, pan, delay, count
+ .macro loopsewithpan id, pan, delay, count
.byte 0x1C
.2byte \id
.byte \pan
@@ -155,7 +155,7 @@
.byte \count
.endm
- .macro panse_1D id, pan, count
+ .macro waitplaysewithpan id, pan, count
.byte 0x1D
.2byte \id
.byte \pan
@@ -167,7 +167,7 @@
.2byte \bldcnt
.endm
- .macro createtask_1F addr, argv:vararg
+ .macro createsoundtask addr, argv:vararg
.byte 0x1F
.4byte \addr
.byte (.Lcreatetask_1F_\@_2 - .Lcreatetask_1F_\@_1) / 2
@@ -180,29 +180,29 @@
.byte 0x20
.endm
- .macro jumpvareq var_num, value, addr
+ .macro jumpargeq arg_num, value, addr
.byte 0x21
- .byte \var_num
+ .byte \arg_num
.2byte \value
.4byte \addr
.endm
- .macro monbg_22 unk
+ .macro monbg_22 bank
.byte 0x22
- .byte \unk
+ .byte \bank
.endm
- .macro clearmonbg_23 unk
+ .macro clearmonbg_23 bank
.byte 0x23
- .byte \unk
+ .byte \bank
.endm
- .macro jumpunkcond addr
+ .macro jumpifcontest addr
.byte 0x24
.4byte \addr
.endm
- .macro fadetobg_25 a, b, c
+ .macro fadetobgfromset a, b, c
.byte 0x25
.byte \a
.byte \b
@@ -227,38 +227,38 @@
.byte \delay
.endm
- .macro monbgprio_28 unk
+ .macro monbgprio_28 bank
.byte 0x28
- .byte \unk
+ .byte \bank
.endm
.macro monbgprio_29
.byte 0x29
.endm
- .macro monbgprio_2A unk
+ .macro monbgprio_2A bank
.byte 0x2A
- .byte \unk
+ .byte \bank
.endm
- .macro invisible side
+ .macro invisible bank
.byte 0x2B
- .byte \side
+ .byte \bank
.endm
- .macro visible side
+ .macro visible bank
.byte 0x2C
- .byte \side
+ .byte \bank
.endm
- .macro doublebattle_2D unk
+ .macro doublebattle_2D bank
.byte 0x2D
- .byte \unk
+ .byte \bank
.endm
- .macro doublebattle_2E unk
+ .macro doublebattle_2E bank
.byte 0x2E
- .byte \unk
+ .byte \bank
.endm
.macro stopsound
diff --git a/include/rom_8077ABC.h b/include/rom_8077ABC.h
index ff737135b..ed42871a6 100644
--- a/include/rom_8077ABC.h
+++ b/include/rom_8077ABC.h
@@ -16,8 +16,8 @@ u8 GetAnimBankSpriteId(u8 side);
void StoreSpriteCallbackInData(struct Sprite *sprite, void(*callback)(struct Sprite *));
void sub_8078314(struct Sprite *sprite);
void sub_8078364(struct Sprite *sprite);
-void sub_8078458(struct Sprite *sprite);
-void sub_80784A8(struct Sprite *sprite);
+void TranslateMonBGUntil(struct Sprite *sprite);
+void TranslateMonBGSubPixelUntil(struct Sprite *sprite);
u8 GetBankSide(u8);
u8 GetBankSide(u8);
u8 GetBankSide(u8 side);
@@ -34,11 +34,10 @@ u8 IsDoubleBattle(void);
bool8 IsDoubleBattle(void);
void sub_8078914();
u8 sub_80789BC();
-void sub_8078A5C(struct Sprite *sprite);
-void sub_8078A5C(struct Sprite *sprite);
-void obj_translate_based_on_private_1_2_3_4(struct Sprite *sprite);
-bool8 sub_8078B5C(struct Sprite *sprite);
-void sub_8078BB8(struct Sprite *sprite);
+void InitSpriteDataForLinearTranslation(struct Sprite *sprite);
+void InitAnimSpriteTranslationDeltas(struct Sprite *sprite);
+bool8 TranslateAnimSpriteByDeltas(struct Sprite *sprite);
+void TranslateAnimSpriteByDeltasUntil(struct Sprite *sprite);
void sub_8078D44(struct Sprite *sprite);
void obj_id_set_rotscale(u8 sprite, s16, s16, u16);
bool8 sub_8078E38();
@@ -65,9 +64,9 @@ void sub_807A850(struct Task *task, u8 taskId);
void sub_807A8D4(struct Sprite *sprite);
void sub_807A960(struct Sprite *sprite);
void sub_8078A34(struct Sprite *sprite);
-void sub_80787B0(struct Sprite *sprite, u8);
+void InitAnimSpritePos(struct Sprite *sprite, u8);
void sub_8078764(struct Sprite *sprite, u8);
-void sub_8078B34(struct Sprite *sprite);
+void StartTranslateAnimSpriteByDeltas(struct Sprite *sprite);
void sub_8078D60(struct Sprite *sprite);
void sub_80786EC(struct Sprite *sprite);
void sub_80782D8(struct Sprite *sprite);
@@ -83,7 +82,7 @@ void sub_8078C00(struct Sprite *sprite);
void sub_8078114(struct Sprite *sprite);
void sub_8078174(struct Sprite *sprite);
void sub_80793C4(struct Sprite *sprite);
-void sub_807A3FC(u8 slot, u8 a2, s16 *a3, s16 *a4);
+void SetAverageBattlerPositions(u8 slot, u8 a2, s16 *a3, s16 *a4);
u8 sub_8079ED4(u8 slot);
s16 sub_807A100(u8 slot, u8 a2);
u16 sub_80790F0(s16 a, s16 b);
@@ -99,11 +98,11 @@ void sub_80798F4(struct Task *task, u8 a2, const void *a3);
bool8 sub_807992C(struct Task *task);
u8 sub_8077FC0(u8 slot);
void move_anim_8074EE0(struct Sprite *sprite);
-bool8 sub_8078718(struct Sprite *sprite);
+bool8 TranslateAnimSpriteLinearAndSine(struct Sprite *sprite);
bool8 sub_8078CE8(struct Sprite *sprite);
void oamt_add_pos2_onto_pos1(struct Sprite *sprite);
void sub_8078BD4(struct Sprite *sprite);
-void sub_807941C(struct Sprite *sprite);
+void TranslateAnimSpriteToTargetMonLocation(struct Sprite *sprite);
void sub_80789D4(bool8 a1);
void sub_8079AB8(u8 sprite, u8 sprite2);
u8 sub_807A4A0(int bank, u8 sprite, int species);