summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/constants/game_stat.h5
-rw-r--r--include/global.h2
-rw-r--r--include/graphics.h6
-rw-r--r--include/pokedex.h3
-rw-r--r--include/pokemon_icon.h3
-rw-r--r--include/strings.h19
-rw-r--r--include/trainer_card.h17
-rw-r--r--include/trainer_pokemon_sprites.h2
8 files changed, 46 insertions, 11 deletions
diff --git a/include/constants/game_stat.h b/include/constants/game_stat.h
index b1f3d4197..234091bff 100644
--- a/include/constants/game_stat.h
+++ b/include/constants/game_stat.h
@@ -51,9 +51,10 @@
#define GAME_STAT_USED_DAYCARE 47
#define GAME_STAT_RODE_CABLE_CAR 48
#define GAME_STAT_ENTERED_HOT_SPRINGS 49
+#define GAME_STAT_NUM_UNION_ROOM_BATTLES 50
+#define GAME_STAT_BERRY_CRUSH_POINTS 51
-/*TODO: add new stats added in Emerald*/
-
+#define NUM_USED_GAME_STATS 52
#define NUM_GAME_STATS 64
#endif // GUARD_CONSTANTS_GAME_STAT_H
diff --git a/include/global.h b/include/global.h
index 8e5d90964..219c09c62 100644
--- a/include/global.h
+++ b/include/global.h
@@ -257,7 +257,7 @@ struct BattleTowerData // Leftover from R/S
/*0x04CC, 0x057C*/ u16 currentWinStreaks[2];
/*0x04D0, 0x0580*/ u8 lastStreakLevelType; // 0 = level 50, 1 = level 100. level type of the last streak. Used by tv to report the level mode.
/*0x04D1, 0x0581*/ u8 filler_4D1[0x317];
-};
+}; /* size = 0x7E8 */
struct SaveBlock2
{
diff --git a/include/graphics.h b/include/graphics.h
index bb501ffb0..89541e748 100644
--- a/include/graphics.h
+++ b/include/graphics.h
@@ -4848,4 +4848,10 @@ extern const u32 gBuyMenuFrame_Pal[];
// battle_message
extern const u16 gUnknown_8D2FBB4[];
+// trainer card
+extern const u16 gFireRedTrainerCard_Pal[];
+extern const u32 gFireRedTrainerCard_Gfx[];
+extern const u16 gEmeraldTrainerCard_Pal[];
+extern const u32 gEmeraldTrainerCard_Gfx[];
+
#endif //GUARD_GRAPHICS_H
diff --git a/include/pokedex.h b/include/pokedex.h
index a08d4ed26..c132ae794 100644
--- a/include/pokedex.h
+++ b/include/pokedex.h
@@ -44,6 +44,9 @@ s8 GetSetPokedexFlag(u16 nationalNum, u8 caseId);
u16 GetNationalPokedexCount(u8);
u16 sub_80C0844(u8);
u16 GetKantoPokedexCount(u8);
+bool16 HasAllHoennMons(void);
+bool16 HasAllKantoMons(void);
+bool16 HasAllMons(void);
u32 sub_8106B60(u16 species);
diff --git a/include/pokemon_icon.h b/include/pokemon_icon.h
index f0e5c8b9d..5b9876677 100644
--- a/include/pokemon_icon.h
+++ b/include/pokemon_icon.h
@@ -3,6 +3,8 @@
#include "global.h"
+extern const u16 gMonIconPalettes[][16];
+
const u8 *GetMonIconPtr(u16 speciesId, u32 personality, u32 frameNo);
const u8 *GetMonIconTiles(u16 iconSpecies, bool32 extra);
const u16 *GetValidMonIconPalettePtr(u16 speciesId);
@@ -23,5 +25,6 @@ u8 UpdateMonIconFrame(struct Sprite * sprite);
void LoadMonIconPalette(u16 iconId);
void FreeMonIconPalette(u16 iconId);
void SetPartyHPBarSprite(struct Sprite * sprite, u8 animNum);
+u8 GetMonIconPaletteIndexFromSpecies(u16 species);
#endif // GUARD_POKEMON_ICON_H
diff --git a/include/strings.h b/include/strings.h
index 8ad1dc533..498d6802d 100644
--- a/include/strings.h
+++ b/include/strings.h
@@ -976,4 +976,23 @@ extern const u8 gUnknown_8415F3D[];
extern const u8 gUnknown_8415F4A[];
extern const u8 gUnknown_8415F66[];
+// trainer card
+extern const u8 gText_WaitingTrainerFinishReading[];
+extern const u8 gText_TrainerCardName[];
+extern const u8 gText_TrainerCardIDNo[];
+extern const u8 gText_TrainerCardMoney[];
+extern const u8 gText_TrainerCardYen[];
+extern const u8 gText_TrainerCardPokedex[];
+extern const u8 gText_TrainerCardNull[];
+extern const u8 gText_Colon2[];
+extern const u8 gText_TrainerCardTime[];
+extern const u8 gText_Var1sTrainerCard[];
+extern const u8 gText_HallOfFameDebut[];
+extern const u8 gText_WinLossRatio[];
+extern const u8 gText_PokemonTrades[];
+extern const u8 gText_BerryCrushes[];
+extern const u8 gText_UnionRoomTradesBattles[];
+extern const u8 gText_LinkBattles[];
+extern const u8 gText_LinkCableBattles[];
+
#endif //GUARD_STRINGS_H
diff --git a/include/trainer_card.h b/include/trainer_card.h
index b38754988..06844dc2e 100644
--- a/include/trainer_card.h
+++ b/include/trainer_card.h
@@ -24,23 +24,26 @@ struct TrainerCard
/*0x20*/ u16 pokemonTrades;
/*0x24*/ u32 money;
/*0x28*/ u16 var_28[4];
- /*0x30*/ u8 playerName[PLAYER_NAME_LENGTH + 1];
+ /*0x30*/ u8 playerName[PLAYER_NAME_LENGTH];
/*0x38*/ u8 version;
/*0x3A*/ u16 var_3A;
/*0x3C*/ u32 berryCrushPoints;
/*0x40*/ u32 unionRoomNum;
- /*0x44*/ u8 filler44[0x8];
- /*0x4C*/ u8 var_4C;
- /*0x4D*/ u8 var_4D;
+ /*0x44*/ u32 berriesPicked;
+ /*0x48*/ u32 jumpsInRow;
+ /*0x4C*/ bool8 var_4C;
+ /*0x4D*/ bool8 hasAllMons;
/*0x4E*/ u8 var_4E;
/*0x4F*/ u8 var_4F;
- /*0x50*/ u8 var_50[0x4];
+ /*0x50*/ u8 var_50[4];
/*0x54*/ u16 monSpecies[PARTY_SIZE];
};
extern struct TrainerCard gTrainerCards[4];
-void InitTrainerCard(MainCallback callback);
-void InitLinkPartnerTrainerCard(u8 whoseCard, MainCallback callback);
+void ShowPlayerTrainerCard(void (*callback)(void));
+void ShowTrainerCardInLink(u8 whoseCard, MainCallback callback);
+u8 GetTrainerCardStars(u8 cardId);
+void TrainerCard_GenerateCardForLinkPlayer(struct TrainerCard *trainerCard);
#endif //GUARD_TRAINER_CARD_H
diff --git a/include/trainer_pokemon_sprites.h b/include/trainer_pokemon_sprites.h
index 3e27f58e4..436a791e9 100644
--- a/include/trainer_pokemon_sprites.h
+++ b/include/trainer_pokemon_sprites.h
@@ -3,13 +3,13 @@
#include "global.h"
+u16 sub_810C330(u16 species, bool8 isFrontPic, u16 destX, u16 destY, u8 paletteSlot, u8 windowId);
bool16 ResetAllPicSprites(void);
u16 sub_818D3E4(u16 species, u32 otId, u32 personality, u8 flags, s16 x, s16 y, u8 paletteSlot, u16 paletteTag);
u16 sub_818D7D8(u16 species, u32 otId, u32 personality, bool8 isFrontPic, s16 x, s16 y, u8 paletteSlot, u16 paletteTag);
u16 sub_818D820(u16 spriteId);
u16 sub_818D8AC(u16 species, bool8 isFrontPic, s16 x, s16 y, u8 paletteSlot, u16 paletteTag);
u16 sub_818D8F0(u16 spriteId);
-u16 sub_818D938(u16 species, bool8 isFrontPic, u16 destX, u16 destY, u8 paletteSlot, u8 windowId);
u8 sub_818D97C(u8 a0, u8 a1);
u16 CreateTrainerPicSprite(u16 species, bool8 isFrontPic, s16 x, s16 y, u8 paletteSlot, u16 paletteTag);
u16 FreeAndDestroyMonPicSprite(u16);