add more const pokemon data, clear include
This commit is contained in:
284
include/constants/battle.h
Normal file
284
include/constants/battle.h
Normal file
@@ -0,0 +1,284 @@
|
||||
#ifndef GUARD_CONSTANTS_BATTLE_H
|
||||
#define GUARD_CONSTANTS_BATTLE_H
|
||||
|
||||
/*
|
||||
* A battler may be in one of four positions on the field. The first bit determines
|
||||
* what side the battler is on, either the player's side or the opponent's side.
|
||||
* The second bit determines what flank the battler is on, either the left or right.
|
||||
* Note that the opponent's flanks are drawn corresponding to their perspective, so
|
||||
* their right mon appears on the left, and their left mon appears on the right.
|
||||
* The battler ID is usually the same as the position, except in the case of link battles.
|
||||
*
|
||||
* + ------------------------- +
|
||||
* | Opponent's side |
|
||||
* | Right Left |
|
||||
* | 3 1 |
|
||||
* | |
|
||||
* | Player's side |
|
||||
* | Left Right |
|
||||
* | 0 2 |
|
||||
* ----------------------------+
|
||||
* | |
|
||||
* | |
|
||||
* +---------------------------+
|
||||
*/
|
||||
|
||||
#define MAX_BATTLERS_COUNT 4
|
||||
|
||||
#define B_POSITION_PLAYER_LEFT 0
|
||||
#define B_POSITION_OPPONENT_LEFT 1
|
||||
#define B_POSITION_PLAYER_RIGHT 2
|
||||
#define B_POSITION_OPPONENT_RIGHT 3
|
||||
|
||||
// These macros can be used with either battler ID or positions to get the partner or the opposite mon
|
||||
#define BATTLE_OPPOSITE(id) ((id) ^ 1)
|
||||
#define BATTLE_PARTNER(id) ((id) ^ 2)
|
||||
|
||||
#define B_SIDE_PLAYER 0
|
||||
#define B_SIDE_OPPONENT 1
|
||||
|
||||
#define B_FLANK_LEFT 0
|
||||
#define B_FLANK_RIGHT 1
|
||||
|
||||
#define BIT_SIDE 1
|
||||
#define BIT_FLANK 2
|
||||
|
||||
// Battle Type Flags
|
||||
#define BATTLE_TYPE_DOUBLE 0x0001
|
||||
#define BATTLE_TYPE_LINK 0x0002
|
||||
#define BATTLE_TYPE_WILD 0x0004
|
||||
#define BATTLE_TYPE_TRAINER 0x0008
|
||||
#define BATTLE_TYPE_FIRST_BATTLE 0x0010
|
||||
#define BATTLE_TYPE_20 0x0020
|
||||
#define BATTLE_TYPE_MULTI 0x0040
|
||||
#define BATTLE_TYPE_SAFARI 0x0080
|
||||
#define BATTLE_TYPE_BATTLE_TOWER 0x0100
|
||||
#define BATTLE_TYPE_WALLY_TUTORIAL 0x0200
|
||||
#define BATTLE_TYPE_ROAMER 0x0400
|
||||
#define BATTLE_TYPE_EREADER_TRAINER 0x0800
|
||||
#define BATTLE_TYPE_KYOGRE_GROUDON 0x1000
|
||||
#define BATTLE_TYPE_LEGENDARY 0x2000
|
||||
#define BATTLE_TYPE_REGI 0x4000
|
||||
#define BATTLE_TYPE_TWO_OPPONENTS 0x8000
|
||||
#define BATTLE_TYPE_DOME 0x10000
|
||||
#define BATTLE_TYPE_PALACE 0x20000
|
||||
#define BATTLE_TYPE_ARENA 0x40000
|
||||
#define BATTLE_TYPE_FACTORY 0x80000
|
||||
#define BATTLE_TYPE_PIKE 0x100000
|
||||
#define BATTLE_TYPE_PYRAMID 0x200000
|
||||
#define BATTLE_TYPE_INGAME_PARTNER 0x400000
|
||||
#define BATTLE_TYPE_x800000 0x800000
|
||||
#define BATTLE_TYPE_RECORDED 0x1000000
|
||||
#define BATTLE_TYPE_x2000000 0x2000000
|
||||
#define BATTLE_TYPE_x4000000 0x4000000
|
||||
#define BATTLE_TYPE_SECRET_BASE 0x8000000
|
||||
#define BATTLE_TYPE_GROUDON 0x10000000
|
||||
#define BATTLE_TYPE_KYOGRE 0x20000000
|
||||
#define BATTLE_TYPE_RAYQUAZA 0x40000000
|
||||
#define BATTLE_TYPE_x80000000 0x80000000
|
||||
#define BATTLE_TYPE_FRONTIER (BATTLE_TYPE_BATTLE_TOWER | BATTLE_TYPE_DOME | BATTLE_TYPE_PALACE | BATTLE_TYPE_ARENA | BATTLE_TYPE_FACTORY | BATTLE_TYPE_PIKE | BATTLE_TYPE_PYRAMID)
|
||||
#define BATTLE_TYPE_FRONTIER_NO_PYRAMID (BATTLE_TYPE_BATTLE_TOWER | BATTLE_TYPE_DOME | BATTLE_TYPE_PALACE | BATTLE_TYPE_ARENA | BATTLE_TYPE_FACTORY | BATTLE_TYPE_PIKE)
|
||||
|
||||
// Battle Outcome defines
|
||||
#define B_OUTCOME_WON 0x1
|
||||
#define B_OUTCOME_LOST 0x2
|
||||
#define B_OUTCOME_DREW 0x3
|
||||
#define B_OUTCOME_RAN 0x4
|
||||
#define B_OUTCOME_PLAYER_TELEPORTED 0x5
|
||||
#define B_OUTCOME_MON_FLED 0x6
|
||||
#define B_OUTCOME_CAUGHT 0x7
|
||||
#define B_OUTCOME_NO_SAFARI_BALLS 0x8
|
||||
#define B_OUTCOME_FORFEITED 0x9
|
||||
#define B_OUTCOME_MON_TELEPORTED 0xA
|
||||
#define B_OUTCOME_LINK_BATTLE_RAN 0x80
|
||||
|
||||
// Non-volatile status conditions
|
||||
// These persist remain outside of battle and after switching out
|
||||
#define STATUS1_NONE 0x0
|
||||
#define STATUS1_SLEEP 0x7
|
||||
#define STATUS1_POISON 0x8
|
||||
#define STATUS1_BURN 0x10
|
||||
#define STATUS1_FREEZE 0x20
|
||||
#define STATUS1_PARALYSIS 0x40
|
||||
#define STATUS1_TOXIC_POISON 0x80
|
||||
#define STATUS1_TOXIC_COUNTER 0xF00
|
||||
#define STATUS1_PSN_ANY (STATUS1_POISON | STATUS1_TOXIC_POISON)
|
||||
#define STATUS1_ANY (STATUS1_SLEEP | STATUS1_POISON | STATUS1_BURN | STATUS1_FREEZE | STATUS1_PARALYSIS | STATUS1_TOXIC_POISON)
|
||||
|
||||
// Volatile status ailments
|
||||
// These are removed after exiting the battle or switching out
|
||||
#define STATUS2_CONFUSION 0x00000007
|
||||
#define STATUS2_FLINCHED 0x00000008
|
||||
#define STATUS2_UPROAR 0x00000070
|
||||
#define STATUS2_BIDE 0x00000300 // two bits 0x100, 0x200
|
||||
#define STATUS2_LOCK_CONFUSE 0x00000C00
|
||||
#define STATUS2_MULTIPLETURNS 0x00001000
|
||||
#define STATUS2_WRAPPED 0x0000E000
|
||||
#define STATUS2_INFATUATION 0x000F0000 // 4 bits, one for every battler
|
||||
#define STATUS2_INFATUATED_WITH(battler) (gBitTable[battler] << 16)
|
||||
#define STATUS2_FOCUS_ENERGY 0x00100000
|
||||
#define STATUS2_TRANSFORMED 0x00200000
|
||||
#define STATUS2_RECHARGE 0x00400000
|
||||
#define STATUS2_RAGE 0x00800000
|
||||
#define STATUS2_SUBSTITUTE 0x01000000
|
||||
#define STATUS2_DESTINY_BOND 0x02000000
|
||||
#define STATUS2_ESCAPE_PREVENTION 0x04000000
|
||||
#define STATUS2_NIGHTMARE 0x08000000
|
||||
#define STATUS2_CURSED 0x10000000
|
||||
#define STATUS2_FORESIGHT 0x20000000
|
||||
#define STATUS2_DEFENSE_CURL 0x40000000
|
||||
#define STATUS2_TORMENT 0x80000000
|
||||
|
||||
// Seems like per-battler statuses. Not quite sure how to categorize these
|
||||
#define STATUS3_LEECHSEED_BANK 0x3
|
||||
#define STATUS3_LEECHSEED 0x4
|
||||
#define STATUS3_ALWAYS_HITS 0x18 // two bits
|
||||
#define STATUS3_PERISH_SONG 0x20
|
||||
#define STATUS3_ON_AIR 0x40
|
||||
#define STATUS3_UNDERGROUND 0x80
|
||||
#define STATUS3_MINIMIZED 0x100
|
||||
#define STATUS3_ROOTED 0x400
|
||||
#define STATUS3_CHARGED_UP 0x200
|
||||
#define STATUS3_YAWN 0x1800 // two bits
|
||||
#define STATUS3_IMPRISONED_OTHERS 0x2000
|
||||
#define STATUS3_GRUDGE 0x4000
|
||||
#define STATUS3_CANT_SCORE_A_CRIT 0x8000
|
||||
#define STATUS3_MUDSPORT 0x10000
|
||||
#define STATUS3_WATERSPORT 0x20000
|
||||
#define STATUS3_UNDERWATER 0x40000
|
||||
#define STATUS3_INTIMIDATE_POKES 0x80000
|
||||
#define STATUS3_TRACE 0x100000
|
||||
#define STATUS3_SEMI_INVULNERABLE (STATUS3_UNDERGROUND | STATUS3_ON_AIR | STATUS3_UNDERWATER)
|
||||
|
||||
// Not really sure what a "hitmarker" is.
|
||||
#define HITMARKER_x10 0x00000010
|
||||
#define HITMARKER_x20 0x00000020
|
||||
#define HITMARKER_DESTINYBOND 0x00000040
|
||||
#define HITMARKER_NO_ANIMATIONS 0x00000080
|
||||
#define HITMARKER_IGNORE_SUBSTITUTE 0x00000100
|
||||
#define HITMARKER_NO_ATTACKSTRING 0x00000200
|
||||
#define HITMARKER_ATTACKSTRING_PRINTED 0x00000400
|
||||
#define HITMARKER_NO_PPDEDUCT 0x00000800
|
||||
#define HITMARKER_PURSUIT_TRAP 0x00001000
|
||||
#define HITMARKER_IGNORE_SAFEGUARD 0x00002000
|
||||
#define HITMARKER_SYNCHRONISE_EFFECT 0x00004000
|
||||
#define HITMARKER_RUN 0x00008000
|
||||
#define HITMARKER_IGNORE_ON_AIR 0x00010000
|
||||
#define HITMARKER_IGNORE_UNDERGROUND 0x00020000
|
||||
#define HITMARKER_IGNORE_UNDERWATER 0x00040000
|
||||
#define HITMARKER_UNABLE_TO_USE_MOVE 0x00080000
|
||||
#define HITMARKER_x100000 0x00100000
|
||||
#define HITMARKER_x200000 0x00200000
|
||||
#define HITMARKER_x400000 0x00400000
|
||||
#define HITMARKER_x800000 0x00800000
|
||||
#define HITMARKER_GRUDGE 0x01000000
|
||||
#define HITMARKER_OBEYS 0x02000000
|
||||
#define HITMARKER_x4000000 0x04000000
|
||||
#define HITMARKER_x8000000 0x08000000
|
||||
#define HITMARKER_FAINTED(battler) (gBitTable[battler] << 0x1C)
|
||||
#define HITMARKER_UNK(battler) (0x10000000 << battler)
|
||||
|
||||
// Per-side statuses that affect an entire party
|
||||
#define SIDE_STATUS_REFLECT (1 << 0)
|
||||
#define SIDE_STATUS_LIGHTSCREEN (1 << 1)
|
||||
#define SIDE_STATUS_X4 (1 << 2)
|
||||
#define SIDE_STATUS_SPIKES (1 << 4)
|
||||
#define SIDE_STATUS_SAFEGUARD (1 << 5)
|
||||
#define SIDE_STATUS_FUTUREATTACK (1 << 6)
|
||||
#define SIDE_STATUS_MIST (1 << 8)
|
||||
#define SIDE_STATUS_SPIKES_DAMAGED (1 << 9)
|
||||
|
||||
// Flags describing move's result
|
||||
#define MOVE_RESULT_MISSED (1 << 0)
|
||||
#define MOVE_RESULT_SUPER_EFFECTIVE (1 << 1)
|
||||
#define MOVE_RESULT_NOT_VERY_EFFECTIVE (1 << 2)
|
||||
#define MOVE_RESULT_DOESNT_AFFECT_FOE (1 << 3)
|
||||
#define MOVE_RESULT_ONE_HIT_KO (1 << 4)
|
||||
#define MOVE_RESULT_FAILED (1 << 5)
|
||||
#define MOVE_RESULT_FOE_ENDURED (1 << 6)
|
||||
#define MOVE_RESULT_FOE_HUNG_ON (1 << 7)
|
||||
#define MOVE_RESULT_NO_EFFECT (MOVE_RESULT_MISSED | MOVE_RESULT_DOESNT_AFFECT_FOE | MOVE_RESULT_FAILED)
|
||||
|
||||
// Battle Weather flags
|
||||
#define WEATHER_RAIN_TEMPORARY (1 << 0)
|
||||
#define WEATHER_RAIN_DOWNPOUR (1 << 1) // unused
|
||||
#define WEATHER_RAIN_PERMANENT (1 << 2)
|
||||
#define WEATHER_RAIN_ANY (WEATHER_RAIN_TEMPORARY | WEATHER_RAIN_DOWNPOUR | WEATHER_RAIN_PERMANENT)
|
||||
#define WEATHER_SANDSTORM_TEMPORARY (1 << 3)
|
||||
#define WEATHER_SANDSTORM_PERMANENT (1 << 4)
|
||||
#define WEATHER_SANDSTORM_ANY (WEATHER_SANDSTORM_TEMPORARY | WEATHER_SANDSTORM_PERMANENT)
|
||||
#define WEATHER_SUN_TEMPORARY (1 << 5)
|
||||
#define WEATHER_SUN_PERMANENT (1 << 6)
|
||||
#define WEATHER_SUN_ANY (WEATHER_SUN_TEMPORARY | WEATHER_SUN_PERMANENT)
|
||||
#define WEATHER_HAIL (1 << 7)
|
||||
#define WEATHER_HAIL_ANY (WEATHER_HAIL)
|
||||
#define WEATHER_ANY (WEATHER_RAIN_ANY | WEATHER_SANDSTORM_ANY | WEATHER_SUN_ANY | WEATHER_HAIL_ANY)
|
||||
|
||||
// Move Effects
|
||||
#define MOVE_EFFECT_SLEEP 0x1
|
||||
#define MOVE_EFFECT_POISON 0x2
|
||||
#define MOVE_EFFECT_BURN 0x3
|
||||
#define MOVE_EFFECT_FREEZE 0x4
|
||||
#define MOVE_EFFECT_PARALYSIS 0x5
|
||||
#define MOVE_EFFECT_TOXIC 0x6
|
||||
#define MOVE_EFFECT_CONFUSION 0x7
|
||||
#define MOVE_EFFECT_FLINCH 0x8
|
||||
#define MOVE_EFFECT_TRI_ATTACK 0x9
|
||||
#define MOVE_EFFECT_UPROAR 0xA
|
||||
#define MOVE_EFFECT_PAYDAY 0xB
|
||||
#define MOVE_EFFECT_CHARGING 0xC
|
||||
#define MOVE_EFFECT_WRAP 0xD
|
||||
#define MOVE_EFFECT_RECOIL_25 0xE
|
||||
#define MOVE_EFFECT_ATK_PLUS_1 0xF
|
||||
#define MOVE_EFFECT_DEF_PLUS_1 0x10
|
||||
#define MOVE_EFFECT_SPD_PLUS_1 0x11
|
||||
#define MOVE_EFFECT_SP_ATK_PLUS_1 0x12
|
||||
#define MOVE_EFFECT_SP_DEF_PLUS_1 0x13
|
||||
#define MOVE_EFFECT_ACC_PLUS_1 0x14
|
||||
#define MOVE_EFFECT_EVS_PLUS_1 0x15
|
||||
#define MOVE_EFFECT_ATK_MINUS_1 0x16
|
||||
#define MOVE_EFFECT_DEF_MINUS_1 0x17
|
||||
#define MOVE_EFFECT_SPD_MINUS_1 0x18
|
||||
#define MOVE_EFFECT_SP_ATK_MINUS_1 0x19
|
||||
#define MOVE_EFFECT_SP_DEF_MINUS_1 0x1A
|
||||
#define MOVE_EFFECT_ACC_MINUS_1 0x1B
|
||||
#define MOVE_EFFECT_EVS_MINUS_1 0x1C
|
||||
#define MOVE_EFFECT_RECHARGE 0x1D
|
||||
#define MOVE_EFFECT_RAGE 0x1E
|
||||
#define MOVE_EFFECT_STEAL_ITEM 0x1F
|
||||
#define MOVE_EFFECT_PREVENT_ESCAPE 0x20
|
||||
#define MOVE_EFFECT_NIGHTMARE 0x21
|
||||
#define MOVE_EFFECT_ALL_STATS_UP 0x22
|
||||
#define MOVE_EFFECT_RAPIDSPIN 0x23
|
||||
#define MOVE_EFFECT_REMOVE_PARALYSIS 0x24
|
||||
#define MOVE_EFFECT_ATK_DEF_DOWN 0x25
|
||||
#define MOVE_EFFECT_RECOIL_33_PARALYSIS 0x26
|
||||
#define MOVE_EFFECT_ATK_PLUS_2 0x27
|
||||
#define MOVE_EFFECT_DEF_PLUS_2 0x28
|
||||
#define MOVE_EFFECT_SPD_PLUS_2 0x29
|
||||
#define MOVE_EFFECT_SP_ATK_PLUS_2 0x2A
|
||||
#define MOVE_EFFECT_SP_DEF_PLUS_2 0x2B
|
||||
#define MOVE_EFFECT_ACC_PLUS_2 0x2C
|
||||
#define MOVE_EFFECT_EVS_PLUS_2 0x2D
|
||||
#define MOVE_EFFECT_ATK_MINUS_2 0x2E
|
||||
#define MOVE_EFFECT_DEF_MINUS_2 0x2F
|
||||
#define MOVE_EFFECT_SPD_MINUS_2 0x30
|
||||
#define MOVE_EFFECT_SP_ATK_MINUS_2 0x31
|
||||
#define MOVE_EFFECT_SP_DEF_MINUS_2 0x32
|
||||
#define MOVE_EFFECT_ACC_MINUS_2 0x33
|
||||
#define MOVE_EFFECT_EVS_MINUS_2 0x34
|
||||
#define MOVE_EFFECT_THRASH 0x35
|
||||
#define MOVE_EFFECT_KNOCK_OFF 0x36
|
||||
#define MOVE_EFFECT_NOTHING_37 0x37
|
||||
#define MOVE_EFFECT_NOTHING_38 0x38
|
||||
#define MOVE_EFFECT_NOTHING_39 0x39
|
||||
#define MOVE_EFFECT_NOTHING_3A 0x3A
|
||||
#define MOVE_EFFECT_SP_ATK_TWO_DOWN 0x3B
|
||||
#define MOVE_EFFECT_NOTHING_3C 0x3C
|
||||
#define MOVE_EFFECT_NOTHING_3D 0x3D
|
||||
#define MOVE_EFFECT_NOTHING_3E 0x3E
|
||||
#define MOVE_EFFECT_NOTHING_3F 0x3F
|
||||
#define MOVE_EFFECT_AFFECTS_USER 0x40
|
||||
#define MOVE_EFFECT_CERTAIN 0x80
|
||||
|
||||
#endif // GUARD_CONSTANTS_BATTLE_H
|
||||
@@ -1,7 +1,7 @@
|
||||
#ifndef GUARD_BATTLE_AI_H
|
||||
#define GUARD_BATTLE_AI_H
|
||||
#ifndef GUARD_CONSTANTS_BATTLE_AI_H
|
||||
#define GUARD_CONSTANTS_BATTLE_AI_H
|
||||
|
||||
// banks enum
|
||||
// battlers
|
||||
#define AI_TARGET 0
|
||||
#define AI_USER 1
|
||||
#define AI_TARGET_PARTNER 2
|
||||
@@ -22,7 +22,7 @@
|
||||
#define AI_EFFECTIVENESS_x0_25 10
|
||||
#define AI_EFFECTIVENESS_x0 0
|
||||
|
||||
// ai weather enum
|
||||
// ai weather
|
||||
#define AI_WEATHER_SUN 0
|
||||
#define AI_WEATHER_RAIN 1
|
||||
#define AI_WEATHER_SANDSTORM 2
|
||||
@@ -49,4 +49,4 @@
|
||||
#define AI_SCRIPT_SAFARI (1 << 30)
|
||||
#define AI_SCRIPT_FIRST_BATTLE (1 << 31)
|
||||
|
||||
#endif // GUARD_BATTLE_AI_H
|
||||
#endif // GUARD_CONSTANTS_BATTLE_AI_H
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#ifndef GUARD_CONSTANTS_BATTLE_ANIM_H
|
||||
#define GUARD_CONSTANTS_BATTLE_ANIM_H
|
||||
|
||||
// banks enum used in scripts
|
||||
// battlers
|
||||
#define ANIM_ATTACKER 0
|
||||
#define ANIM_TARGET 1
|
||||
#define ANIM_ATK_PARTNER 2
|
||||
|
||||
97
include/constants/battle_script_commands.h
Normal file
97
include/constants/battle_script_commands.h
Normal file
@@ -0,0 +1,97 @@
|
||||
#ifndef GUARD_CONSTANTS_BATTLE_SCRIPT_COMMANDS_H
|
||||
#define GUARD_CONSTANTS_BATTLE_SCRIPT_COMMANDS_H
|
||||
|
||||
// Battle Scripting and BattleCommunication addresses
|
||||
#define sPAINSPLIT_HP gBattleScripting
|
||||
#define sBIDE_DMG gBattleScripting + 4
|
||||
#define sMULTIHIT_STRING gBattleScripting + 8
|
||||
#define sDMG_MULTIPLIER gBattleScripting + 0xE
|
||||
#define sTWOTURN_STRINGID gBattleScripting + 0xF
|
||||
#define sB_ANIM_ARG1 gBattleScripting + 0x10
|
||||
#define sB_ANIM_ARG2 gBattleScripting + 0x11
|
||||
#define sTRIPLE_KICK_POWER gBattleScripting + 0x12
|
||||
#define sMOVEEND_STATE gBattleScripting + 0x14
|
||||
#define sBANK_WITH_ABILITY gBattleScripting + 0x15
|
||||
#define sMULTIHIT_EFFECT gBattleScripting + 0x16
|
||||
#define sBANK gBattleScripting + 0x17
|
||||
#define sB_ANIM_TURN gBattleScripting + 0x18
|
||||
#define sB_ANIM_TARGETS_HIT gBattleScripting + 0x19
|
||||
#define sSTATCHANGER gBattleScripting + 0x1A
|
||||
#define sFIELD_1B gBattleScripting + 0x1B
|
||||
#define sGIVEEXP_STATE gBattleScripting + 0x1C
|
||||
#define sBATTLE_STYLE gBattleScripting + 0x1D
|
||||
#define sLVLBOX_STATE gBattleScripting + 0x1E
|
||||
#define sLEARNMOVE_STATE gBattleScripting + 0x1F
|
||||
#define sFIELD_20 gBattleScripting + 0x20
|
||||
#define sRESHOW_MAIN_STATE gBattleScripting + 0x21
|
||||
#define sRESHOW_HELPER_STATE gBattleScripting + 0x22
|
||||
#define sFIELD_23 gBattleScripting + 0x23
|
||||
#define sFIELD_24 gBattleScripting + 0x24
|
||||
#define sMULTIPLAYER_ID gBattleScripting + 0x25
|
||||
|
||||
#define cEFFECT_CHOOSER gBattleCommunication + 3
|
||||
#define cMULTISTRING_CHOOSER gBattleCommunication + 5
|
||||
|
||||
// Battle Script defines for getting the wanted battler
|
||||
#define BS_TARGET 0
|
||||
#define BS_ATTACKER 1
|
||||
#define BS_EFFECT_BATTLER 2
|
||||
#define BS_FAINTED 3
|
||||
#define BS_BANK_0 7
|
||||
#define BS_ATTACKER_WITH_PARTNER 4 // for atk98_status_icon_update
|
||||
#define BS_ATTACKER_SIDE 8 // for atk1E_jumpifability
|
||||
#define BS_NOT_ATTACKER_SIDE 9 // for atk1E_jumpifability
|
||||
#define BS_SCRIPTING 10
|
||||
#define BS_PLAYER1 11
|
||||
#define BS_OPPONENT1 12
|
||||
#define BS_PLAYER2 13
|
||||
#define BS_OPPONENT2 14
|
||||
|
||||
// atk 01, accuracy calc
|
||||
#define NO_ACC_CALC 0xFFFE
|
||||
#define NO_ACC_CALC_CHECK_LOCK_ON 0xFFFF
|
||||
#define ACC_CURR_MOVE 0
|
||||
|
||||
// compare operands
|
||||
#define CMP_EQUAL 0x0
|
||||
#define CMP_NOT_EQUAL 0x1
|
||||
#define CMP_GREATER_THAN 0x2
|
||||
#define CMP_LESS_THAN 0x3
|
||||
#define CMP_COMMON_BITS 0x4
|
||||
#define CMP_NO_COMMON_BITS 0x5
|
||||
|
||||
// atk76, various
|
||||
#define VARIOUS_CANCEL_MULTI_TURN_MOVES 0
|
||||
#define VARIOUS_SET_MAGIC_COAT_TARGET 1
|
||||
#define VARIOUS_IS_RUNNING_IMPOSSIBLE 2
|
||||
#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
|
||||
#define VARIOUS_SET_TELEPORT_OUTCOME 25
|
||||
#define VARIOUS_PLAY_TRAINER_DEFEATED_MUSIC 26
|
||||
|
||||
// atk80, dmg manipulation
|
||||
#define ATK80_DMG_CHANGE_SIGN 0
|
||||
#define ATK80_DMG_HALF_BY_TWO_NOT_MORE_THAN_HALF_MAX_HP 1
|
||||
#define ATK80_DMG_DOUBLED 2
|
||||
|
||||
// atk4F, a flag used for the jumpifcantswitch command
|
||||
#define ATK4F_DONT_CHECK_STATUSES 0x80
|
||||
|
||||
// statchange defines
|
||||
#define STAT_CHANGE_BS_PTR 0x1
|
||||
#define STAT_CHANGE_NOT_PROTECT_AFFECTED 0x20
|
||||
#define STAT_CHANGE_WORKED 0
|
||||
#define STAT_CHANGE_DIDNT_WORK 1
|
||||
|
||||
// atk48
|
||||
#define ATK48_STAT_NEGATIVE 0x1
|
||||
#define ATK48_STAT_BY_TWO 0x2
|
||||
#define ATK48_BIT_x4 0x4
|
||||
#define ATK48_LOWER_FAIL_CHECK 0x8
|
||||
|
||||
#endif // GUARD_CONSTANTS_BATTLE_SCRIPT_COMMANDS_H
|
||||
386
include/constants/battle_string_ids.h
Normal file
386
include/constants/battle_string_ids.h
Normal file
@@ -0,0 +1,386 @@
|
||||
#ifndef GUARD_CONSTANTS_BATTLE_STRING_IDS_H
|
||||
#define GUARD_CONSTANTS_BATTLE_STRING_IDS_H
|
||||
|
||||
#define BATTLESTRINGS_COUNT 369
|
||||
|
||||
#define BATTLESTRINGS_ID_ADDER 12 // all battlestrings have its ID + 12, because first 5 are reserved
|
||||
|
||||
#define STRINGID_INTROMSG 0
|
||||
#define STRINGID_INTROSENDOUT 1
|
||||
#define STRINGID_RETURNMON 2
|
||||
#define STRINGID_SWITCHINMON 3
|
||||
#define STRINGID_USEDMOVE 4
|
||||
#define STRINGID_BATTLEEND 5
|
||||
|
||||
// todo: make some of those names less vague: attacker/target vs pkmn, etc.
|
||||
#define STRINGID_TRAINER1LOSETEXT 12
|
||||
#define STRINGID_PKMNGAINEDEXP 13
|
||||
#define STRINGID_PKMNGREWTOLV 14
|
||||
#define STRINGID_PKMNLEARNEDMOVE 15
|
||||
#define STRINGID_TRYTOLEARNMOVE1 16
|
||||
#define STRINGID_TRYTOLEARNMOVE2 17
|
||||
#define STRINGID_TRYTOLEARNMOVE3 18
|
||||
#define STRINGID_PKMNFORGOTMOVE 19
|
||||
#define STRINGID_STOPLEARNINGMOVE 20
|
||||
#define STRINGID_DIDNOTLEARNMOVE 21
|
||||
#define STRINGID_PKMNLEARNEDMOVE2 22
|
||||
#define STRINGID_ATTACKMISSED 23
|
||||
#define STRINGID_PKMNPROTECTEDITSELF 24
|
||||
#define STRINGID_STATSWONTINCREASE2 25
|
||||
#define STRINGID_AVOIDEDDAMAGE 26
|
||||
#define STRINGID_ITDOESNTAFFECT 27
|
||||
#define STRINGID_ATTACKERFAINTED 28
|
||||
#define STRINGID_TARGETFAINTED 29
|
||||
#define STRINGID_PLAYERGOTMONEY 30
|
||||
#define STRINGID_PLAYERWHITEOUT 31
|
||||
#define STRINGID_PLAYERWHITEOUT2 32
|
||||
#define STRINGID_PREVENTSESCAPE 33
|
||||
#define STRINGID_HITXTIMES 34
|
||||
#define STRINGID_PKMNFELLASLEEP 35
|
||||
#define STRINGID_PKMNMADESLEEP 36
|
||||
#define STRINGID_PKMNALREADYASLEEP 37
|
||||
#define STRINGID_PKMNALREADYASLEEP2 38
|
||||
#define STRINGID_PKMNWASNTAFFECTED 39
|
||||
#define STRINGID_PKMNWASPOISONED 40
|
||||
#define STRINGID_PKMNPOISONEDBY 41
|
||||
#define STRINGID_PKMNHURTBYPOISON 42
|
||||
#define STRINGID_PKMNALREADYPOISONED 43
|
||||
#define STRINGID_PKMNBADLYPOISONED 44
|
||||
#define STRINGID_PKMNENERGYDRAINED 45
|
||||
#define STRINGID_PKMNWASBURNED 46
|
||||
#define STRINGID_PKMNBURNEDBY 47
|
||||
#define STRINGID_PKMNHURTBYBURN 48
|
||||
#define STRINGID_PKMNWASFROZEN 49
|
||||
#define STRINGID_PKMNFROZENBY 50
|
||||
#define STRINGID_PKMNISFROZEN 51
|
||||
#define STRINGID_PKMNWASDEFROSTED 52
|
||||
#define STRINGID_PKMNWASDEFROSTED2 53
|
||||
#define STRINGID_PKMNWASDEFROSTEDBY 54
|
||||
#define STRINGID_PKMNWASPARALYZED 55
|
||||
#define STRINGID_PKMNWASPARALYZEDBY 56
|
||||
#define STRINGID_PKMNISPARALYZED 57
|
||||
#define STRINGID_PKMNISALREADYPARALYZED 58
|
||||
#define STRINGID_PKMNHEALEDPARALYSIS 59
|
||||
#define STRINGID_PKMNDREAMEATEN 60
|
||||
#define STRINGID_STATSWONTINCREASE 61
|
||||
#define STRINGID_STATSWONTDECREASE 62
|
||||
#define STRINGID_TEAMSTOPPEDWORKING 63
|
||||
#define STRINGID_FOESTOPPEDWORKING 64
|
||||
#define STRINGID_PKMNISCONFUSED 65
|
||||
#define STRINGID_PKMNHEALEDCONFUSION 66
|
||||
#define STRINGID_PKMNWASCONFUSED 67
|
||||
#define STRINGID_PKMNALREADYCONFUSED 68
|
||||
#define STRINGID_PKMNFELLINLOVE 69
|
||||
#define STRINGID_PKMNINLOVE 70
|
||||
#define STRINGID_PKMNIMMOBILIZEDBYLOVE 71
|
||||
#define STRINGID_PKMNBLOWNAWAY 72
|
||||
#define STRINGID_PKMNCHANGEDTYPE 73
|
||||
#define STRINGID_PKMNFLINCHED 74
|
||||
#define STRINGID_PKMNREGAINEDHEALTH 75
|
||||
#define STRINGID_PKMNHPFULL 76
|
||||
#define STRINGID_PKMNRAISEDSPDEF 77
|
||||
#define STRINGID_PKMNRAISEDDEF 78
|
||||
#define STRINGID_PKMNCOVEREDBYVEIL 79
|
||||
#define STRINGID_PKMNUSEDSAFEGUARD 80
|
||||
#define STRINGID_PKMNSAFEGUARDEXPIRED 81
|
||||
#define STRINGID_PKMNWENTTOSLEEP 82
|
||||
#define STRINGID_PKMNSLEPTHEALTHY 83
|
||||
#define STRINGID_PKMNWHIPPEDWHIRLWIND 84
|
||||
#define STRINGID_PKMNTOOKSUNLIGHT 85
|
||||
#define STRINGID_PKMNLOWEREDHEAD 86
|
||||
#define STRINGID_PKMNISGLOWING 87
|
||||
#define STRINGID_PKMNFLEWHIGH 88
|
||||
#define STRINGID_PKMNDUGHOLE 89
|
||||
#define STRINGID_PKMNSQUEEZEDBYBIND 90
|
||||
#define STRINGID_PKMNTRAPPEDINVORTEX 91
|
||||
#define STRINGID_PKMNWRAPPEDBY 92
|
||||
#define STRINGID_PKMNCLAMPED 93
|
||||
#define STRINGID_PKMNHURTBY 94
|
||||
#define STRINGID_PKMNFREEDFROM 95
|
||||
#define STRINGID_PKMNCRASHED 96
|
||||
#define STRINGID_PKMNSHROUDEDINMIST 97
|
||||
#define STRINGID_PKMNPROTECTEDBYMIST 98
|
||||
#define STRINGID_PKMNGETTINGPUMPED 99
|
||||
#define STRINGID_PKMNHITWITHRECOIL 100
|
||||
#define STRINGID_PKMNPROTECTEDITSELF2 101
|
||||
#define STRINGID_PKMNBUFFETEDBYSANDSTORM 102
|
||||
#define STRINGID_PKMNPELTEDBYHAIL 103
|
||||
#define STRINGID_PKMNSEEDED 104
|
||||
#define STRINGID_PKMNEVADEDATTACK 105
|
||||
#define STRINGID_PKMNSAPPEDBYLEECHSEED 106
|
||||
#define STRINGID_PKMNFASTASLEEP 107
|
||||
#define STRINGID_PKMNWOKEUP 108
|
||||
#define STRINGID_PKMNUPROARKEPTAWAKE 109
|
||||
#define STRINGID_PKMNWOKEUPINUPROAR 110
|
||||
#define STRINGID_PKMNCAUSEDUPROAR 111
|
||||
#define STRINGID_PKMNMAKINGUPROAR 112
|
||||
#define STRINGID_PKMNCALMEDDOWN 113
|
||||
#define STRINGID_PKMNCANTSLEEPINUPROAR 114
|
||||
#define STRINGID_PKMNSTOCKPILED 115
|
||||
#define STRINGID_PKMNCANTSTOCKPILE 116
|
||||
#define STRINGID_PKMNCANTSLEEPINUPROAR2 117
|
||||
#define STRINGID_UPROARKEPTPKMNAWAKE 118
|
||||
#define STRINGID_PKMNSTAYEDAWAKEUSING 119
|
||||
#define STRINGID_PKMNSTORINGENERGY 120
|
||||
#define STRINGID_PKMNUNLEASHEDENERGY 121
|
||||
#define STRINGID_PKMNFATIGUECONFUSION 122
|
||||
#define STRINGID_PKMNPICKEDUPITEM 123
|
||||
#define STRINGID_PKMNUNAFFECTED 124
|
||||
#define STRINGID_PKMNTRANSFORMEDINTO 125
|
||||
#define STRINGID_PKMNMADESUBSTITUTE 126
|
||||
#define STRINGID_PKMNHASSUBSTITUTE 127
|
||||
#define STRINGID_SUBSTITUTEDAMAGED 128
|
||||
#define STRINGID_PKMNSUBSTITUTEFADED 129
|
||||
#define STRINGID_PKMNMUSTRECHARGE 130
|
||||
#define STRINGID_PKMNRAGEBUILDING 131
|
||||
#define STRINGID_PKMNMOVEWASDISABLED 132
|
||||
#define STRINGID_PKMNMOVEISDISABLED 133
|
||||
#define STRINGID_PKMNMOVEDISABLEDNOMORE 134
|
||||
#define STRINGID_PKMNGOTENCORE 135
|
||||
#define STRINGID_PKMNENCOREENDED 136
|
||||
#define STRINGID_PKMNTOOKAIM 137
|
||||
#define STRINGID_PKMNSKETCHEDMOVE 138
|
||||
#define STRINGID_PKMNTRYINGTOTAKEFOE 139
|
||||
#define STRINGID_PKMNTOOKFOE 140
|
||||
#define STRINGID_PKMNREDUCEDPP 141
|
||||
#define STRINGID_PKMNSTOLEITEM 142
|
||||
#define STRINGID_TARGETCANTESCAPENOW 143
|
||||
#define STRINGID_PKMNFELLINTONIGHTMARE 144
|
||||
#define STRINGID_PKMNLOCKEDINNIGHTMARE 145
|
||||
#define STRINGID_PKMNLAIDCURSE 146
|
||||
#define STRINGID_PKMNAFFLICTEDBYCURSE 147
|
||||
#define STRINGID_SPIKESSCATTERED 148
|
||||
#define STRINGID_PKMNHURTBYSPIKES 149
|
||||
#define STRINGID_PKMNIDENTIFIED 150
|
||||
#define STRINGID_PKMNPERISHCOUNTFELL 151
|
||||
#define STRINGID_PKMNBRACEDITSELF 152
|
||||
#define STRINGID_PKMNENDUREDHIT 153
|
||||
#define STRINGID_MAGNITUDESTRENGTH 154
|
||||
#define STRINGID_PKMNCUTHPMAXEDATTACK 155
|
||||
#define STRINGID_PKMNCOPIEDSTATCHANGES 156
|
||||
#define STRINGID_PKMNGOTFREE 157
|
||||
#define STRINGID_PKMNSHEDLEECHSEED 158
|
||||
#define STRINGID_PKMNBLEWAWAYSPIKES 159
|
||||
#define STRINGID_PKMNFLEDFROMBATTLE 160
|
||||
#define STRINGID_PKMNFORESAWATTACK 161
|
||||
#define STRINGID_PKMNTOOKATTACK 162
|
||||
#define STRINGID_PKMNATTACK 163
|
||||
#define STRINGID_PKMNCENTERATTENTION 164
|
||||
#define STRINGID_PKMNCHARGINGPOWER 165
|
||||
#define STRINGID_NATUREPOWERTURNEDINTO 166
|
||||
#define STRINGID_PKMNSTATUSNORMAL 167
|
||||
#define STRINGID_PKMNHASNOMOVESLEFT 168
|
||||
#define STRINGID_PKMNSUBJECTEDTOTORMENT 169
|
||||
#define STRINGID_PKMNCANTUSEMOVETORMENT 170
|
||||
#define STRINGID_PKMNTIGHTENINGFOCUS 171
|
||||
#define STRINGID_PKMNFELLFORTAUNT 172
|
||||
#define STRINGID_PKMNCANTUSEMOVETAUNT 173
|
||||
#define STRINGID_PKMNREADYTOHELP 174
|
||||
#define STRINGID_PKMNSWITCHEDITEMS 175
|
||||
#define STRINGID_PKMNCOPIEDFOE 176
|
||||
#define STRINGID_PKMNMADEWISH 177
|
||||
#define STRINGID_PKMNWISHCAMETRUE 178
|
||||
#define STRINGID_PKMNPLANTEDROOTS 179
|
||||
#define STRINGID_PKMNABSORBEDNUTRIENTS 180
|
||||
#define STRINGID_PKMNANCHOREDITSELF 181
|
||||
#define STRINGID_PKMNWASMADEDROWSY 182
|
||||
#define STRINGID_PKMNKNOCKEDOFF 183
|
||||
#define STRINGID_PKMNSWAPPEDABILITIES 184
|
||||
#define STRINGID_PKMNSEALEDOPPONENTMOVE 185
|
||||
#define STRINGID_PKMNCANTUSEMOVESEALED 186
|
||||
#define STRINGID_PKMNWANTSGRUDGE 187
|
||||
#define STRINGID_PKMNLOSTPPGRUDGE 188
|
||||
#define STRINGID_PKMNSHROUDEDITSELF 189
|
||||
#define STRINGID_PKMNMOVEBOUNCED 190
|
||||
#define STRINGID_PKMNWAITSFORTARGET 191
|
||||
#define STRINGID_PKMNSNATCHEDMOVE 192
|
||||
#define STRINGID_PKMNMADEITRAIN 193
|
||||
#define STRINGID_PKMNRAISEDSPEED 194
|
||||
#define STRINGID_PKMNPROTECTEDBY 195
|
||||
#define STRINGID_PKMNPREVENTSUSAGE 196
|
||||
#define STRINGID_PKMNRESTOREDHPUSING 197
|
||||
#define STRINGID_PKMNCHANGEDTYPEWITH 198
|
||||
#define STRINGID_PKMNPREVENTSPARALYSISWITH 199
|
||||
#define STRINGID_PKMNPREVENTSROMANCEWITH 200
|
||||
#define STRINGID_PKMNPREVENTSPOISONINGWITH 201
|
||||
#define STRINGID_PKMNPREVENTSCONFUSIONWITH 202
|
||||
#define STRINGID_PKMNRAISEDFIREPOWERWITH 203
|
||||
#define STRINGID_PKMNANCHORSITSELFWITH 204
|
||||
#define STRINGID_PKMNCUTSATTACKWITH 205
|
||||
#define STRINGID_PKMNPREVENTSSTATLOSSWITH 206
|
||||
#define STRINGID_PKMNHURTSWITH 207
|
||||
#define STRINGID_PKMNTRACED 208
|
||||
#define STRINGID_STATSHARPLY 209
|
||||
#define STRINGID_STATROSE 210
|
||||
#define STRINGID_STATHARSHLY 211
|
||||
#define STRINGID_STATFELL 212
|
||||
#define STRINGID_PKMNSSTATCHANGED 213
|
||||
#define STRINGID_PKMNSSTATCHANGED2 214
|
||||
#define STRINGID_PKMNSSTATCHANGED3 215
|
||||
#define STRINGID_PKMNSSTATCHANGED4 216
|
||||
#define STRINGID_CRITICALHIT 217
|
||||
#define STRINGID_ONEHITKO 218
|
||||
#define STRINGID_123POOF 219
|
||||
#define STRINGID_ANDELLIPSIS 220
|
||||
#define STRINGID_NOTVERYEFFECTIVE 221
|
||||
#define STRINGID_SUPEREFFECTIVE 222
|
||||
#define STRINGID_GOTAWAYSAFELY 223
|
||||
#define STRINGID_WILDPKMNFLED 224
|
||||
#define STRINGID_NORUNNINGFROMTRAINERS 225
|
||||
#define STRINGID_CANTESCAPE 226
|
||||
#define STRINGID_DONTLEAVEBIRCH 227
|
||||
#define STRINGID_BUTNOTHINGHAPPENED 228
|
||||
#define STRINGID_BUTITFAILED 229
|
||||
#define STRINGID_ITHURTCONFUSION 230
|
||||
#define STRINGID_MIRRORMOVEFAILED 231
|
||||
#define STRINGID_STARTEDTORAIN 232
|
||||
#define STRINGID_DOWNPOURSTARTED 233
|
||||
#define STRINGID_RAINCONTINUES 234
|
||||
#define STRINGID_DOWNPOURCONTINUES 235
|
||||
#define STRINGID_RAINSTOPPED 236
|
||||
#define STRINGID_SANDSTORMBREWED 237
|
||||
#define STRINGID_SANDSTORMRAGES 238
|
||||
#define STRINGID_SANDSTORMSUBSIDED 239
|
||||
#define STRINGID_SUNLIGHTGOTBRIGHT 240
|
||||
#define STRINGID_SUNLIGHTSTRONG 241
|
||||
#define STRINGID_SUNLIGHTFADED 242
|
||||
#define STRINGID_STARTEDHAIL 243
|
||||
#define STRINGID_HAILCONTINUES 244
|
||||
#define STRINGID_HAILSTOPPED 245
|
||||
#define STRINGID_FAILEDTOSPITUP 246
|
||||
#define STRINGID_FAILEDTOSWALLOW 247
|
||||
#define STRINGID_WINDBECAMEHEATWAVE 248
|
||||
#define STRINGID_STATCHANGESGONE 249
|
||||
#define STRINGID_COINSSCATTERED 250
|
||||
#define STRINGID_TOOWEAKFORSUBSTITUTE 251
|
||||
#define STRINGID_SHAREDPAIN 252
|
||||
#define STRINGID_BELLCHIMED 253
|
||||
#define STRINGID_FAINTINTHREE 254
|
||||
#define STRINGID_NOPPLEFT 255
|
||||
#define STRINGID_BUTNOPPLEFT 256
|
||||
#define STRINGID_PLAYERUSEDITEM 257
|
||||
#define STRINGID_WALLYUSEDITEM 258
|
||||
#define STRINGID_TRAINERBLOCKEDBALL 259
|
||||
#define STRINGID_DONTBEATHIEF 260
|
||||
#define STRINGID_ITDODGEDBALL 261
|
||||
#define STRINGID_YOUMISSEDPKMN 262
|
||||
#define STRINGID_PKMNBROKEFREE 263
|
||||
#define STRINGID_ITAPPEAREDCAUGHT 264
|
||||
#define STRINGID_AARGHALMOSTHADIT 265
|
||||
#define STRINGID_SHOOTSOCLOSE 266
|
||||
#define STRINGID_GOTCHAPKMNCAUGHT 267
|
||||
#define STRINGID_GOTCHAPKMNCAUGHT2 268
|
||||
#define STRINGID_GIVENICKNAMECAPTURED 269
|
||||
#define STRINGID_PKMNSENTTOPC 270
|
||||
#define STRINGID_PKMNDATAADDEDTODEX 271
|
||||
#define STRINGID_ITISRAINING 272
|
||||
#define STRINGID_SANDSTORMISRAGING 273
|
||||
#define STRINGID_CANTESCAPE2 274
|
||||
#define STRINGID_PKMNIGNORESASLEEP 275
|
||||
#define STRINGID_PKMNIGNOREDORDERS 276
|
||||
#define STRINGID_PKMNBEGANTONAP 277
|
||||
#define STRINGID_PKMNLOAFING 278
|
||||
#define STRINGID_PKMNWONTOBEY 279
|
||||
#define STRINGID_PKMNTURNEDAWAY 280
|
||||
#define STRINGID_PKMNPRETENDNOTNOTICE 281
|
||||
#define STRINGID_ENEMYABOUTTOSWITCHPKMN 282
|
||||
#define STRINGID_CREPTCLOSER 283
|
||||
#define STRINGID_CANTGETCLOSER 284
|
||||
#define STRINGID_PKMNWATCHINGCAREFULLY 285
|
||||
#define STRINGID_PKMNCURIOUSABOUTX 286
|
||||
#define STRINGID_PKMNENTHRALLEDBYX 287
|
||||
#define STRINGID_PKMNIGNOREDX 288
|
||||
#define STRINGID_THREWPOKEBLOCKATPKMN 289
|
||||
#define STRINGID_OUTOFSAFARIBALLS 290
|
||||
#define STRINGID_PKMNSITEMCUREDPARALYSIS 291
|
||||
#define STRINGID_PKMNSITEMCUREDPOISON 292
|
||||
#define STRINGID_PKMNSITEMHEALEDBURN 293
|
||||
#define STRINGID_PKMNSITEMDEFROSTEDIT 294
|
||||
#define STRINGID_PKMNSITEMWOKEIT 295
|
||||
#define STRINGID_PKMNSITEMSNAPPEDOUT 296
|
||||
#define STRINGID_PKMNSITEMCUREDPROBLEM 297
|
||||
#define STRINGID_PKMNSITEMRESTOREDHEALTH 298
|
||||
#define STRINGID_PKMNSITEMRESTOREDPP 299
|
||||
#define STRINGID_PKMNSITEMRESTOREDSTATUS 300
|
||||
#define STRINGID_PKMNSITEMRESTOREDHPALITTLE 301
|
||||
#define STRINGID_ITEMALLOWSONLYYMOVE 302
|
||||
#define STRINGID_PKMNHUNGONWITHX 303
|
||||
#define STRINGID_EMPTYSTRING3 304
|
||||
#define STRINGID_PKMNSXPREVENTSBURNS 305
|
||||
#define STRINGID_PKMNSXBLOCKSY 306
|
||||
#define STRINGID_PKMNSXRESTOREDHPALITTLE2 307
|
||||
#define STRINGID_PKMNSXWHIPPEDUPSANDSTORM 308
|
||||
#define STRINGID_PKMNSXPREVENTSYLOSS 309
|
||||
#define STRINGID_PKMNSXINFATUATEDY 310
|
||||
#define STRINGID_PKMNSXMADEYINEFFECTIVE 311
|
||||
#define STRINGID_PKMNSXCUREDYPROBLEM 312
|
||||
#define STRINGID_ITSUCKEDLIQUIDOOZE 313
|
||||
#define STRINGID_PKMNTRANSFORMED 314
|
||||
#define STRINGID_ELECTRICITYWEAKENED 315
|
||||
#define STRINGID_FIREWEAKENED 316
|
||||
#define STRINGID_PKMNHIDUNDERWATER 317
|
||||
#define STRINGID_PKMNSPRANGUP 318
|
||||
#define STRINGID_HMMOVESCANTBEFORGOTTEN 319
|
||||
#define STRINGID_XFOUNDONEY 320
|
||||
#define STRINGID_PLAYERDEFEATEDTRAINER1 321
|
||||
#define STRINGID_SOOTHINGAROMA 322
|
||||
#define STRINGID_ITEMSCANTBEUSEDNOW 323
|
||||
#define STRINGID_FORXCOMMAYZ 324
|
||||
#define STRINGID_USINGXTHEYOFZN 325
|
||||
#define STRINGID_PKMNUSEDXTOGETPUMPED 326
|
||||
#define STRINGID_PKMNSXMADEYUSELESS 327
|
||||
#define STRINGID_PKMNTRAPPEDBYSANDTOMB 328
|
||||
#define STRINGID_EMPTYSTRING4 329
|
||||
#define STRINGID_ABOOSTED 330
|
||||
#define STRINGID_PKMNSXINTENSIFIEDSUN 331
|
||||
#define STRINGID_PKMNMAKESGROUNDMISS 332
|
||||
#define STRINGID_YOUTHROWABALLNOWRIGHT 333
|
||||
#define STRINGID_PKMNSXTOOKATTACK 334
|
||||
#define STRINGID_PKMNCHOSEXASDESTINY 335
|
||||
#define STRINGID_PKMNLOSTFOCUS 336
|
||||
#define STRINGID_USENEXTPKMN 337
|
||||
#define STRINGID_PKMNFLEDUSINGITS 338
|
||||
#define STRINGID_PKMNFLEDUSING 339
|
||||
#define STRINGID_PKMNWASDRAGGEDOUT 340
|
||||
#define STRINGID_PREVENTEDFROMWORKING 341
|
||||
#define STRINGID_PKMNSITEMNORMALIZEDSTATUS 342
|
||||
#define STRINGID_TRAINER1USEDITEM 343
|
||||
#define STRINGID_BOXISFULL 344
|
||||
#define STRINGID_PKMNAVOIDEDATTACK 345
|
||||
#define STRINGID_PKMNSXMADEITINEFFECTIVE 346
|
||||
#define STRINGID_PKMNSXPREVENTSFLINCHING 347
|
||||
#define STRINGID_PKMNALREADYHASBURN 348
|
||||
#define STRINGID_STATSWONTDECREASE2 349
|
||||
#define STRINGID_PKMNSXBLOCKSY2 350
|
||||
#define STRINGID_PKMNSXWOREOFF 351
|
||||
#define STRINGID_PKMNRAISEDDEFALITTLE 352
|
||||
#define STRINGID_PKMNRAISEDSPDEFALITTLE 353
|
||||
#define STRINGID_THEWALLSHATTERED 354
|
||||
#define STRINGID_PKMNSXPREVENTSYSZ 355
|
||||
#define STRINGID_PKMNSXCUREDITSYPROBLEM 356
|
||||
#define STRINGID_ATTACKERCANTESCAPE 357
|
||||
#define STRINGID_PKMNOBTAINEDX 358
|
||||
#define STRINGID_PKMNOBTAINEDX2 359
|
||||
#define STRINGID_PKMNOBTAINEDXYOBTAINEDZ 360
|
||||
#define STRINGID_BUTNOEFFECT 361
|
||||
#define STRINGID_PKMNSXHADNOEFFECTONY 362
|
||||
#define STRINGID_TWOENEMIESDEFEATED 363
|
||||
#define STRINGID_TRAINER2LOSETEXT 364
|
||||
#define STRINGID_PKMNINCAPABLEOFPOWER 365
|
||||
#define STRINGID_GLINTAPPEARSINEYE 366
|
||||
#define STRINGID_PKMNGETTINGINTOPOSITION 367
|
||||
#define STRINGID_PKMNBEGANGROWLINGDEEPLY 368
|
||||
#define STRINGID_PKMNEAGERFORMORE 369
|
||||
#define STRINGID_DEFEATEDOPPONENTBYREFEREE 370
|
||||
#define STRINGID_LOSTTOOPPONENTBYREFEREE 371
|
||||
#define STRINGID_TIEDOPPONENTBYREFEREE 372
|
||||
#define STRINGID_QUESTIONFORFEITMATCH 373
|
||||
#define STRINGID_FORFEITEDMATCH 374
|
||||
#define STRINGID_PKMNTRANSFERREDSOMEONESPC 375
|
||||
#define STRINGID_PKMNTRANSFERREDLANETTESPC 376
|
||||
#define STRINGID_PKMNBOXSOMEONESPCFULL 377
|
||||
#define STRINGID_PKMNBOXLANETTESPCFULL 378
|
||||
#define STRINGID_TRAINER1WINTEXT 379
|
||||
#define STRINGID_TRAINER2WINTEXT 380
|
||||
|
||||
#endif // GUARD_CONSTANTS_BATTLE_STRING_IDS_H
|
||||
80
include/constants/pokemon.h
Normal file
80
include/constants/pokemon.h
Normal file
@@ -0,0 +1,80 @@
|
||||
#ifndef GUARD_CONSTANTS_POKEMON_H
|
||||
#define GUARD_CONSTANTS_POKEMON_H
|
||||
|
||||
// Pokemon types
|
||||
#define TYPE_NORMAL 0x00
|
||||
#define TYPE_FIGHTING 0x01
|
||||
#define TYPE_FLYING 0x02
|
||||
#define TYPE_POISON 0x03
|
||||
#define TYPE_GROUND 0x04
|
||||
#define TYPE_ROCK 0x05
|
||||
#define TYPE_BUG 0x06
|
||||
#define TYPE_GHOST 0x07
|
||||
#define TYPE_STEEL 0x08
|
||||
#define TYPE_MYSTERY 0x09
|
||||
#define TYPE_FIRE 0x0a
|
||||
#define TYPE_WATER 0x0b
|
||||
#define TYPE_GRASS 0x0c
|
||||
#define TYPE_ELECTRIC 0x0d
|
||||
#define TYPE_PSYCHIC 0x0e
|
||||
#define TYPE_ICE 0x0f
|
||||
#define TYPE_DRAGON 0x10
|
||||
#define TYPE_DARK 0x11
|
||||
#define NUMBER_OF_MON_TYPES 0x12
|
||||
|
||||
// Pokemon egg groups
|
||||
#define EGG_GROUP_NONE 0
|
||||
#define EGG_GROUP_MONSTER 1
|
||||
#define EGG_GROUP_WATER_1 2
|
||||
#define EGG_GROUP_BUG 3
|
||||
#define EGG_GROUP_FLYING 4
|
||||
#define EGG_GROUP_FIELD 5
|
||||
#define EGG_GROUP_FAIRY 6
|
||||
#define EGG_GROUP_GRASS 7
|
||||
#define EGG_GROUP_HUMAN_LIKE 8
|
||||
#define EGG_GROUP_WATER_3 9
|
||||
#define EGG_GROUP_MINERAL 10
|
||||
#define EGG_GROUP_AMORPHOUS 11
|
||||
#define EGG_GROUP_WATER_2 12
|
||||
#define EGG_GROUP_DITTO 13
|
||||
#define EGG_GROUP_DRAGON 14
|
||||
#define EGG_GROUP_UNDISCOVERED 15
|
||||
|
||||
// Pokemon natures
|
||||
#define NATURE_HARDY 0
|
||||
#define NATURE_LONELY 1
|
||||
#define NATURE_BRAVE 2
|
||||
#define NATURE_ADAMANT 3
|
||||
#define NATURE_NAUGHTY 4
|
||||
#define NATURE_BOLD 5
|
||||
#define NATURE_DOCILE 6
|
||||
#define NATURE_RELAXED 7
|
||||
#define NATURE_IMPISH 8
|
||||
#define NATURE_LAX 9
|
||||
#define NATURE_TIMID 10
|
||||
#define NATURE_HASTY 11
|
||||
#define NATURE_SERIOUS 12
|
||||
#define NATURE_JOLLY 13
|
||||
#define NATURE_NAIVE 14
|
||||
#define NATURE_MODEST 15
|
||||
#define NATURE_MILD 16
|
||||
#define NATURE_QUIET 17
|
||||
#define NATURE_BASHFUL 18
|
||||
#define NATURE_RASH 19
|
||||
#define NATURE_CALM 20
|
||||
#define NATURE_GENTLE 21
|
||||
#define NATURE_SASSY 22
|
||||
#define NATURE_CAREFUL 23
|
||||
#define NATURE_QUIRKY 24
|
||||
|
||||
// Pokemon Stats
|
||||
#define STAT_HP 0
|
||||
#define STAT_ATK 1
|
||||
#define STAT_DEF 2
|
||||
#define STAT_SPEED 3
|
||||
#define STAT_SPATK 4
|
||||
#define STAT_SPDEF 5
|
||||
#define STAT_ACC 6 // only in battles
|
||||
#define STAT_EVASION 7 // only in battles
|
||||
|
||||
#endif // GUARD_CONSTANTS_POKEMON_H
|
||||
Reference in New Issue
Block a user