summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorDizzyEggg <jajkodizzy@wp.pl>2017-10-22 01:04:02 +0200
committerDizzyEggg <jajkodizzy@wp.pl>2017-10-22 01:04:02 +0200
commit813b1bfd4a8f0fc316e78b39abaaafd09a42f0c4 (patch)
treedd296b40434282fbd798e31930939d2c1961f756 /include
parent3d1c16523e277b0b4044e685aa118c15aaaeffe9 (diff)
label and do more work at player controller
Diffstat (limited to 'include')
-rw-r--r--include/battle.h13
-rw-r--r--include/battle_controllers.h91
-rw-r--r--include/battle_message.h2
-rw-r--r--include/battle_script_commands.h6
-rw-r--r--include/global.h2
-rw-r--r--include/pokemon.h3
6 files changed, 94 insertions, 23 deletions
diff --git a/include/battle.h b/include/battle.h
index a67442f85..7d97f7777 100644
--- a/include/battle.h
+++ b/include/battle.h
@@ -326,7 +326,7 @@ struct UnknownFlags
struct DisableStruct
{
- /*0x00*/ u32 unk0;
+ /*0x00*/ u32 transformedMonPersonality;
/*0x04*/ u16 disabledMove;
/*0x06*/ u16 encoredMove;
/*0x08*/ u8 protectUses;
@@ -858,6 +858,16 @@ void BattleLoadOpponentMonSpriteGfx(struct Pokemon *mon, u8 bank);
void BattleLoadSubstituteSpriteGfx(u8 bank, bool8 arg1);
void nullsub_24(u16 arg0);
void nullsub_25(u8 arg0);
+void ClearTemporarySpeciesSpriteData(u8 bank, bool8 dontClearSubstitute);
+void sub_805D714(struct Sprite *sprite);
+void DecompressTrainerBackPic(u16 backPicId, u8 bank);
+void DecompressTrainerFrontPic(u16 frontPicId, u8 bank);
+void FreeTrainerFrontPicPalette(u16 frontPicId);
+void sub_805D7AC(struct Sprite *sprite);
+bool8 IsMoveWithoutAnimation(u16 moveId, u8 animationTurn);
+void sub_805EB9C(u8 arg0);
+void sub_805E394(void);
+void TrySetBehindSubstituteSpriteBit(u8 bank, u16 move);
enum
{
@@ -870,7 +880,6 @@ enum
BACK_PIC_WALLY,
BACK_PIC_STEVEN
};
-void LoadBackTrainerBankSpriteGfx(u8 backPicId, u8 bank);
// rom_80A5C6C
u8 GetBankSide(u8 bank);
diff --git a/include/battle_controllers.h b/include/battle_controllers.h
index 1c076b3e0..0b8fb0c0e 100644
--- a/include/battle_controllers.h
+++ b/include/battle_controllers.h
@@ -1,16 +1,69 @@
#ifndef GUARD_BATTLE_CONTROLLERS_H
#define GUARD_BATTLE_CONTROLLERS_H
-#define REQUEST_ALL_BATTLE 0x0
-#define REQUEST_SPECIES_BATTLE 0x1
-#define REQUEST_HELDITEM_BATTLE 0x2
-#define REQUEST_MOVES_PP_BATTLE 0x3
-#define REQUEST_PPMOVE1_BATTLE 0x9
-#define REQUEST_PPMOVE2_BATTLE 0xA
-#define REQUEST_PPMOVE3_BATTLE 0xB
-#define REQUEST_PPMOVE4_BATTLE 0xC
-#define REQUEST_STATUS_BATTLE 0x28
-#define REQUEST_HP_BATTLE 0x2A
+enum
+{
+ REQUEST_ALL_BATTLE,
+ REQUEST_SPECIES_BATTLE,
+ REQUEST_HELDITEM_BATTLE,
+ REQUEST_MOVES_PP_BATTLE,
+ REQUEST_MOVE1_BATTLE,
+ REQUEST_MOVE2_BATTLE,
+ REQUEST_MOVE3_BATTLE,
+ REQUEST_MOVE4_BATTLE,
+ REQUEST_PP_DATA_BATTLE,
+ REQUEST_PPMOVE1_BATTLE,
+ REQUEST_PPMOVE2_BATTLE,
+ REQUEST_PPMOVE3_BATTLE,
+ REQUEST_PPMOVE4_BATTLE,
+ REQUEST_UNUSED_13_BATTLE,
+ REQUEST_UNUSED_14_BATTLE,
+ REQUEST_UNUSED_15_BATTLE,
+ REQUEST_UNUSED_16_BATTLE,
+ REQUEST_OTID_BATTLE,
+ REQUEST_EXP_BATTLE,
+ REQUEST_HP_EV_BATTLE,
+ REQUEST_ATK_EV_BATTLE,
+ REQUEST_DEF_EV_BATTLE,
+ REQUEST_SPEED_EV_BATTLE,
+ REQUEST_SPATK_EV_BATTLE,
+ REQUEST_SPDEF_EV_BATTLE,
+ REQUEST_FRIENDSHIP_BATTLE,
+ REQUEST_POKERUS_BATTLE,
+ REQUEST_MET_LOCATION_BATTLE,
+ REQUEST_MET_LEVEL_BATTLE,
+ REQUEST_MET_GAME_BATTLE,
+ REQUEST_POKEBALL_BATTLE,
+ REQUEST_ALL_IVS_BATTLE,
+ REQUEST_HP_IV_BATTLE,
+ REQUEST_ATK_IV_BATTLE,
+ REQUEST_DEF_IV_BATTLE,
+ REQUEST_SPEED_IV_BATTLE,
+ REQUEST_SPATK_IV_BATTLE,
+ REQUEST_SPDEF_IV_BATTLE,
+ REQUEST_PERSONALITY_BATTLE,
+ REQUEST_CHECKSUM_BATTLE,
+ REQUEST_STATUS_BATTLE,
+ REQUEST_LEVEL_BATTLE,
+ REQUEST_HP_BATTLE,
+ REQUEST_MAX_HP_BATTLE,
+ REQUEST_ATK_BATTLE,
+ REQUEST_DEF_BATTLE,
+ REQUEST_SPEED_BATTLE,
+ REQUEST_SPATK_BATTLE,
+ REQUEST_SPDEF_BATTLE,
+ REQUEST_COOL_BATTLE,
+ REQUEST_BEAUTY_BATTLE,
+ REQUEST_CUTE_BATTLE,
+ REQUEST_SMART_BATTLE,
+ REQUEST_TOUGH_BATTLE,
+ REQUEST_SHEEN_BATTLE,
+ REQUEST_COOL_RIBBON_BATTLE,
+ REQUEST_BEAUTY_RIBBON_BATTLE,
+ REQUEST_CUTE_RIBBON_BATTLE,
+ REQUEST_SMART_RIBBON_BATTLE,
+ REQUEST_TOUGH_RIBBON_BATTLE,
+};
#define RESET_ACTION_MOVE_SELECTION 0
#define RESET_ACTION_SELECTION 1
@@ -31,7 +84,7 @@ struct HpAndStatus
struct MovePpInfo
{
- u16 move[4];
+ u16 moves[4];
u8 pp[4];
u8 ppBonuses;
};
@@ -59,7 +112,7 @@ enum
CONTROLLER_TRAINERSLIDE,
CONTROLLER_TRAINERSLIDEBACK,
CONTROLLER_FAINTANIMATION,
- CONTROLLER_11,
+ CONTROLLER_PALETTEFADE,
CONTROLLER_12,
CONTROLLER_BALLTHROW,
CONTROLLER_PAUSE,
@@ -67,7 +120,7 @@ enum
CONTROLLER_PRINTSTRING,
CONTROLLER_PRINTSTRINGPLAYERONLY,
CONTROLLER_CHOOSEACTION,
- CONTROLLER_19,
+ CONTROLLER_YESNOBOX,
CONTROLLER_CHOOSEMOVE,
CONTROLLER_OPENBAG,
CONTROLLER_CHOOSEPOKEMON,
@@ -81,7 +134,7 @@ enum
CONTROLLER_DMA3TRANSFER,
CONTROLLER_31,
CONTROLLER_32,
- CONTROLLER_33,
+ CONTROLLER_CHOICERETURNVALUE,
CONTROLLER_34,
CONTROLLER_35,
CONTROLLER_36,
@@ -117,9 +170,9 @@ void sub_8033648(void);
void PrepareBufferDataTransferLink(u8 bufferId, u16 size, u8 *data);
// emitters
-void EmitGetMonData(u8 bufferId, u8 arg1, u8 arg2);
+void EmitGetMonData(u8 bufferId, u8 requestId, u8 monsToCheck);
void EmitGetRawMonData(u8 bufferId, u8 monId, u8 bytes); // unused
-void EmitSetMonData(u8 bufferId, u8 request, u8 c, u8 bytes, void *data);
+void EmitSetMonData(u8 bufferId, u8 requestId, u8 monsToCheck, u8 bytes, void *data);
void EmitSetRawMonData(u8 bufferId, u8 monId, u8 bytes, void *data); // unused
void EmitLoadMonSprite(u8 bufferId);
void EmitSwitchInAnim(u8 bufferId, u8 partyId, bool8 dontClearSubstituteBit);
@@ -128,7 +181,7 @@ void EmitDrawTrainerPic(u8 bufferId);
void EmitTrainerSlide(u8 bufferId);
void EmitTrainerSlideBack(u8 bufferId);
void EmitFaintAnimation(u8 bufferId);
-void EmitCmd11(u8 bufferId); // unused
+void EmitPaletteFade(u8 bufferId); // unused
void EmitCmd12(u8 bufferId); // unused
void EmitBallThrow(u8 bufferId, u8 caseId);
void EmitPause(u8 bufferId, u8 toWait, void *data); // unused
@@ -136,7 +189,7 @@ void EmitMoveAnimation(u8 bufferId, u16 move, u8 turnOfMove, u16 movePower, s32
void EmitPrintString(u8 bufferId, u16 stringId);
void EmitPrintStringPlayerOnly(u8 bufferId, u16 stringId);
void EmitChooseAction(u8 bufferId, u8 arg1, u16 arg2);
-void EmitCmd19(u8 bufferId);
+void EmitYesNoBox(u8 bufferId);
void EmitChooseMove(u8 bufferId, bool8 isDoubleBattle, bool8 NoPpNumber, struct ChooseMoveStruct *movePpData);
void EmitOpenBag(u8 bufferId, u8* arg1);
void EmitChoosePokemon(u8 bufferId, u8 caseId, u8 arg2, u8 abilityId, u8* arg4);
@@ -150,7 +203,7 @@ void EmitDataTransfer(u8 bufferId, u16 size, void *data);
void EmitDMA3Transfer(u8 bufferId, void *dst, u16 size, void *data); // unused
void EmitPlayBGM(u8 bufferId, u16 songId, void *unusedDumbDataParameter); // unused
void EmitCmd32(u8 bufferId, u16 size, void *c); // unused
-void EmitCmd33(u8 bufferId, u8 arg1, u16 arg2);
+void EmitChoiceReturnValue(u8 bufferId, u8 arg1, u16 arg2);
void EmitCmd34(u8 bufferId, u8 b, u8 *c);
void EmitCmd35(u8 bufferId, u16 b);
void EmitCmd36(u8 bufferId, u16 b);
diff --git a/include/battle_message.h b/include/battle_message.h
index 3b154c5a6..0d7a7f489 100644
--- a/include/battle_message.h
+++ b/include/battle_message.h
@@ -204,7 +204,7 @@ struct StringInfoBattle
void BufferStringBattle(u16 stringID);
u32 BattleStringExpandPlaceholdersToDisplayedString(const u8* src);
u32 BattleStringExpandPlaceholders(const u8* src, u8* dst);
-void sub_814F9EC(const u8* text, u8 arg1);
+void BattleHandleAddTextPrinter(const u8* text, u8 arg1);
void SetPpNumbersPaletteInMoveSelection(void);
u8 GetCurrentPpToMaxPpState(u8 currentPp, u8 maxPp);
diff --git a/include/battle_script_commands.h b/include/battle_script_commands.h
index 6d3563c3d..a466abc04 100644
--- a/include/battle_script_commands.h
+++ b/include/battle_script_commands.h
@@ -25,6 +25,7 @@
#define VARIOUS_GET_MOVE_TARGET 3
#define VARIOUS_RESET_INTIMIDATE_TRACE_BITS 5
#define VARIOUS_UPDATE_CHOICE_MOVE_ON_LVL_UP 6
+#define VARIOUS_EMIT_YESNOBOX 13
#define VARIOUS_WAIT_CRY 18
#define VARIOUS_RETURN_OPPONENT_MON1 19
#define VARIOUS_RETURN_OPPONENT_MON2 20
@@ -41,6 +42,9 @@
#define STAT_CHANGE_WORKED 0
#define STAT_CHANGE_DIDNT_WORK 1
+#define WINDOW_CLEAR 0x1
+#define WINDOW_x80 0x80
+
void AI_CalcDmg(u8 bankAtk, u8 bankDef);
u8 TypeCalc(u16 move, u8 bankAtk, u8 bankDef);
u8 AI_TypeCalc(u16 move, u16 targetSpecies, u8 targetAbility);
@@ -49,7 +53,7 @@ void SetMoveEffect(bool8 primary, u8 certain);
void BattleDestroyYesNoCursorAt(u8 cursorPosition);
void BattleCreateYesNoCursorAt(u8 cursorPosition);
void BufferMoveToLearnIntoBattleTextBuff2(void);
-void sub_8056A3C(u8 xStart, u8 yStart, u8 xEnd, u8 yEnd, u8 flags);
+void HandleBattleWindow(u8 xStart, u8 yStart, u8 xEnd, u8 yEnd, u8 flags);
bool8 UproarWakeUpCheck(u8 bank);
extern void (* const gBattleScriptingCommandsTable[])(void);
diff --git a/include/global.h b/include/global.h
index d8547d9c3..4afe89de7 100644
--- a/include/global.h
+++ b/include/global.h
@@ -39,6 +39,8 @@ enum
VERSION_SAPPHIRE = 1,
VERSION_RUBY = 2,
VERSION_EMERALD = 3,
+ VERSION_FIRE_RED = 4,
+ VERSION_LEAF_GREEN = 5,
};
enum LanguageId {
diff --git a/include/pokemon.h b/include/pokemon.h
index 5048c1e4c..626d4d7a1 100644
--- a/include/pokemon.h
+++ b/include/pokemon.h
@@ -644,6 +644,9 @@ s8 GetMonFlavourRelation(struct Pokemon *mon, u8 a2);
s8 GetFlavourRelationByPersonality(u32 personality, u8 a2);
u8 GetItemEffectParamOffset(u16 itemId, u8 effectByte, u8 effectBit);
u8 GetDefaultMoveTarget(u8 atkBank);
+u16 PlayerGenderToFrontTrainerPicId(u8 playerGender);
+void sub_806A1C0(u16 arg0, u8 bankIdentity);
+void sub_806A12C(u16 trainerSpriteId, u8 bankIdentity);
#include "sprite.h"