Merge branch 'master' into record_mixing
This commit is contained in:
@@ -1,81 +0,0 @@
|
||||
enum
|
||||
{
|
||||
ABILITY_NONE,
|
||||
ABILITY_STENCH,
|
||||
ABILITY_DRIZZLE,
|
||||
ABILITY_SPEED_BOOST,
|
||||
ABILITY_BATTLE_ARMOR,
|
||||
ABILITY_STURDY,
|
||||
ABILITY_DAMP,
|
||||
ABILITY_LIMBER,
|
||||
ABILITY_SAND_VEIL,
|
||||
ABILITY_STATIC,
|
||||
ABILITY_VOLT_ABSORB,
|
||||
ABILITY_WATER_ABSORB,
|
||||
ABILITY_OBLIVIOUS,
|
||||
ABILITY_CLOUD_NINE,
|
||||
ABILITY_COMPOUND_EYES,
|
||||
ABILITY_INSOMNIA,
|
||||
ABILITY_COLOR_CHANGE,
|
||||
ABILITY_IMMUNITY,
|
||||
ABILITY_FLASH_FIRE,
|
||||
ABILITY_SHIELD_DUST,
|
||||
ABILITY_OWN_TEMPO,
|
||||
ABILITY_SUCTION_CUPS,
|
||||
ABILITY_INTIMIDATE,
|
||||
ABILITY_SHADOW_TAG,
|
||||
ABILITY_ROUGH_SKIN,
|
||||
ABILITY_WONDER_GUARD,
|
||||
ABILITY_LEVITATE,
|
||||
ABILITY_EFFECT_SPORE,
|
||||
ABILITY_SYNCHRONIZE,
|
||||
ABILITY_CLEAR_BODY,
|
||||
ABILITY_NATURAL_CURE,
|
||||
ABILITY_LIGHTNING_ROD,
|
||||
ABILITY_SERENE_GRACE,
|
||||
ABILITY_SWIFT_SWIM,
|
||||
ABILITY_CHLOROPHYLL,
|
||||
ABILITY_ILLUMINATE,
|
||||
ABILITY_TRACE,
|
||||
ABILITY_HUGE_POWER,
|
||||
ABILITY_POISON_POINT,
|
||||
ABILITY_INNER_FOCUS,
|
||||
ABILITY_MAGMA_ARMOR,
|
||||
ABILITY_WATER_VEIL,
|
||||
ABILITY_MAGNET_PULL,
|
||||
ABILITY_SOUNDPROOF,
|
||||
ABILITY_RAIN_DISH,
|
||||
ABILITY_SAND_STREAM,
|
||||
ABILITY_PRESSURE,
|
||||
ABILITY_THICK_FAT,
|
||||
ABILITY_EARLY_BIRD,
|
||||
ABILITY_FLAME_BODY,
|
||||
ABILITY_RUN_AWAY,
|
||||
ABILITY_KEEN_EYE,
|
||||
ABILITY_HYPER_CUTTER,
|
||||
ABILITY_PICKUP,
|
||||
ABILITY_TRUANT,
|
||||
ABILITY_HUSTLE,
|
||||
ABILITY_CUTE_CHARM,
|
||||
ABILITY_PLUS,
|
||||
ABILITY_MINUS,
|
||||
ABILITY_FORECAST,
|
||||
ABILITY_STICKY_HOLD,
|
||||
ABILITY_SHED_SKIN,
|
||||
ABILITY_GUTS,
|
||||
ABILITY_MARVEL_SCALE,
|
||||
ABILITY_LIQUID_OOZE,
|
||||
ABILITY_OVERGROW,
|
||||
ABILITY_BLAZE,
|
||||
ABILITY_TORRENT,
|
||||
ABILITY_SWARM,
|
||||
ABILITY_ROCK_HEAD,
|
||||
ABILITY_DROUGHT,
|
||||
ABILITY_ARENA_TRAP,
|
||||
ABILITY_VITAL_SPIRIT,
|
||||
ABILITY_WHITE_SMOKE,
|
||||
ABILITY_PURE_POWER,
|
||||
ABILITY_SHELL_ARMOR,
|
||||
ABILITY_CACOPHONY,
|
||||
ABILITY_AIR_LOCK
|
||||
};
|
||||
709
include/battle.h
709
include/battle.h
@@ -2,67 +2,18 @@
|
||||
#define GUARD_BATTLE_H
|
||||
|
||||
// should they be included here or included individually by every file?
|
||||
#include "constants/battle.h"
|
||||
#include "battle_util.h"
|
||||
#include "battle_script_commands.h"
|
||||
#include "battle_2.h"
|
||||
#include "battle_main.h"
|
||||
#include "battle_ai_switch_items.h"
|
||||
#include "battle_gfx_sfx_util.h"
|
||||
#include "battle_util2.h"
|
||||
#include "battle_bg.h"
|
||||
|
||||
/*
|
||||
Banks are a name given to what could be called a 'battlerId' or 'monControllerId'.
|
||||
Each bank has a value consisting of two bits.
|
||||
0x1 bit is responsible for the side, 0 = player's side, 1 = opponent's side.
|
||||
0x2 bit is responsible for the id of sent out pokemon. 0 means it's the first sent out pokemon, 1 it's the second one. (Triple battle didn't exist at the time yet.)
|
||||
*/
|
||||
|
||||
#define BATTLE_BANKS_COUNT 4
|
||||
|
||||
#define IDENTITY_PLAYER_MON1 0
|
||||
#define IDENTITY_OPPONENT_MON1 1
|
||||
#define IDENTITY_PLAYER_MON2 2
|
||||
#define IDENTITY_OPPONENT_MON2 3
|
||||
|
||||
#define SIDE_PLAYER 0x0
|
||||
#define SIDE_OPPONENT 0x1
|
||||
|
||||
#define BIT_SIDE 0x1
|
||||
#define BIT_MON 0x2
|
||||
|
||||
#define GET_BANK_IDENTITY(bank)((gBanksByIdentity[bank]))
|
||||
#define GET_BANK_SIDE(bank)((GetBankIdentity(bank) & BIT_SIDE))
|
||||
#define GET_BANK_SIDE2(bank)((GET_BANK_IDENTITY(bank) & BIT_SIDE))
|
||||
|
||||
#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_x100000 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_KYORGE 0x20000000
|
||||
#define BATTLE_TYPE_RAYQUAZA 0x40000000
|
||||
#define BATTLE_TYPE_x80000000 0x80000000
|
||||
#define GET_BATTLER_POSITION(battler) (gBattlerPositions[battler])
|
||||
#define GET_BATTLER_SIDE(battler) (GetBattlerPosition(battler) & BIT_SIDE)
|
||||
#define GET_BATTLER_SIDE2(battler) (GET_BATTLER_POSITION(battler) & BIT_SIDE)
|
||||
|
||||
#define TRAINER_OPPONENT_3FE 0x3FE
|
||||
#define TRAINER_OPPONENT_C00 0xC00
|
||||
@@ -70,165 +21,37 @@
|
||||
#define STEVEN_PARTNER_ID 0xC03
|
||||
#define SECRET_BASE_OPPONENT 0x400
|
||||
|
||||
#define BATTLE_TYPE_FRONTIER (BATTLE_TYPE_BATTLE_TOWER | BATTLE_TYPE_DOME | BATTLE_TYPE_PALACE | BATTLE_TYPE_ARENA | BATTLE_TYPE_FACTORY | BATTLE_TYPE_x100000 | 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_x100000)
|
||||
|
||||
#define BATTLE_WON 0x1
|
||||
#define BATTLE_LOST 0x2
|
||||
#define BATTLE_DREW 0x3
|
||||
#define BATTLE_RAN 0x4
|
||||
#define BATTLE_PLAYER_TELEPORTED 0x5
|
||||
#define BATTLE_POKE_FLED 0x6
|
||||
#define BATTLE_CAUGHT 0x7
|
||||
#define BATTLE_SAFARI_OUT_OF_BALLS 0x8
|
||||
#define BATTLE_FORFEITED 0x9
|
||||
#define BATTLE_OPPONENT_TELEPORTED 0xA
|
||||
|
||||
#define BATTLE_OUTCOME_BIT_x80 0x80
|
||||
|
||||
#define STATUS_SLEEP 0x7
|
||||
#define STATUS_POISON 0x8
|
||||
#define STATUS_BURN 0x10
|
||||
#define STATUS_FREEZE 0x20
|
||||
#define STATUS_PARALYSIS 0x40
|
||||
#define STATUS_TOXIC_POISON 0x80
|
||||
#define STATUS_TOXIC_COUNTER 0xF00
|
||||
|
||||
#define STATUS_PSN_ANY ((STATUS_POISON | STATUS_TOXIC_POISON))
|
||||
#define STATUS_ANY ((STATUS_SLEEP | STATUS_POISON | STATUS_BURN | STATUS_FREEZE | STATUS_PARALYSIS | STATUS_TOXIC_POISON))
|
||||
|
||||
#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 bank
|
||||
#define STATUS2_INFATUATED_WITH(bank)((gBitTable[bank] << 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
|
||||
|
||||
#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))
|
||||
|
||||
#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(bank) ((gBitTable[bank] << 0x1C))
|
||||
#define HITMARKER_UNK(bank) ((0x10000000 << bank))
|
||||
|
||||
#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)
|
||||
|
||||
#define ACTION_USE_MOVE 0
|
||||
#define ACTION_USE_ITEM 1
|
||||
#define ACTION_SWITCH 2
|
||||
#define ACTION_RUN 3
|
||||
#define ACTION_WATCHES_CAREFULLY 4
|
||||
#define ACTION_SAFARI_ZONE_BALL 5
|
||||
#define ACTION_POKEBLOCK_CASE 6
|
||||
#define ACTION_GO_NEAR 7
|
||||
#define ACTION_SAFARI_ZONE_RUN 8
|
||||
#define ACTION_9 9
|
||||
#define ACTION_RUN_BATTLESCRIPT 10 // when executing an action
|
||||
#define ACTION_CANCEL_PARTNER 12 // when choosing an action
|
||||
#define ACTION_FINISHED 12 // when executing an action
|
||||
#define ACTION_NOTHING_FAINTED 13 // when choosing an action
|
||||
#define ACTION_INIT_VALUE 0xFF
|
||||
|
||||
#define MOVESTATUS_MISSED (1 << 0)
|
||||
#define MOVESTATUS_SUPEREFFECTIVE (1 << 1)
|
||||
#define MOVESTATUS_NOTVERYEFFECTIVE (1 << 2)
|
||||
#define MOVESTATUS_NOTAFFECTED (1 << 3)
|
||||
#define MOVESTATUS_ONEHITKO (1 << 4)
|
||||
#define MOVESTATUS_FAILED (1 << 5)
|
||||
#define MOVESTATUS_ENDURED (1 << 6)
|
||||
#define MOVESTATUS_HUNGON (1 << 7)
|
||||
|
||||
#define MOVESTATUS_NOEFFECT ((MOVESTATUS_MISSED | MOVESTATUS_NOTAFFECTED | MOVESTATUS_FAILED))
|
||||
// Battle Actions
|
||||
// These determine what each battler will do in a turn
|
||||
#define B_ACTION_USE_MOVE 0
|
||||
#define B_ACTION_USE_ITEM 1
|
||||
#define B_ACTION_SWITCH 2
|
||||
#define B_ACTION_RUN 3
|
||||
#define B_ACTION_SAFARI_WATCH_CAREFULLY 4
|
||||
#define B_ACTION_SAFARI_BALL 5
|
||||
#define B_ACTION_SAFARI_POKEBLOCK 6
|
||||
#define B_ACTION_SAFARI_GO_NEAR 7
|
||||
#define B_ACTION_SAFARI_RUN 8
|
||||
// The exact purposes of these are unclear
|
||||
#define B_ACTION_UNKNOWN9 9
|
||||
#define B_ACTION_EXEC_SCRIPT 10 // when executing an action
|
||||
#define B_ACTION_CANCEL_PARTNER 12 // when choosing an action
|
||||
#define B_ACTION_FINISHED 12 // when executing an action
|
||||
#define B_ACTION_NOTHING_FAINTED 13 // when choosing an action
|
||||
#define B_ACTION_NONE 0xFF
|
||||
|
||||
#define MAX_TRAINER_ITEMS 4
|
||||
#define MAX_MON_MOVES 4
|
||||
|
||||
#define WEATHER_RAIN_TEMPORARY (1 << 0)
|
||||
#define WEATHER_RAIN_DOWNPOUR (1 << 1)
|
||||
#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))
|
||||
|
||||
#define BATTLE_TERRAIN_GRASS 0
|
||||
#define BATTLE_TERRAIN_LONG_GRASS 1
|
||||
#define BATTLE_TERRAIN_SAND 2
|
||||
#define BATTLE_TERRAIN_UNDERWATER 3
|
||||
#define BATTLE_TERRAIN_WATER 4
|
||||
#define BATTLE_TERRAIN_POND 5
|
||||
#define BATTLE_TERRAIN_ROCK 6
|
||||
#define BATTLE_TERRAIN_MOUNTAIN 6
|
||||
#define BATTLE_TERRAIN_CAVE 7
|
||||
#define BATTLE_TERRAIN_INSIDE 8
|
||||
#define BATTLE_TERRAIN_BUILDING 8
|
||||
#define BATTLE_TERRAIN_PLAIN 9
|
||||
|
||||
// array entries for battle communication
|
||||
@@ -252,29 +75,22 @@
|
||||
#define MOVE_TARGET_FOES_AND_ALLY 0x20
|
||||
#define MOVE_TARGET_OPPONENTS_FIELD 0x40
|
||||
|
||||
// defines for the u8 array gTypeEffectiveness
|
||||
#define TYPE_EFFECT_ATK_TYPE(i)((gTypeEffectiveness[i + 0]))
|
||||
#define TYPE_EFFECT_DEF_TYPE(i)((gTypeEffectiveness[i + 1]))
|
||||
#define TYPE_EFFECT_MULTIPLIER(i)((gTypeEffectiveness[i + 2]))
|
||||
|
||||
// defines for the gTypeEffectiveness multipliers
|
||||
#define TYPE_MUL_NO_EFFECT 0
|
||||
#define TYPE_MUL_NOT_EFFECTIVE 5
|
||||
#define TYPE_MUL_NORMAL 10
|
||||
#define TYPE_MUL_SUPER_EFFECTIVE 20
|
||||
|
||||
#define BS_GET_TARGET 0
|
||||
#define BS_GET_ATTACKER 1
|
||||
#define BS_GET_EFFECT_BANK 2
|
||||
#define BS_ATTACKER_WITH_PARTNER 4 // for atk98_status_icon_update
|
||||
#define BS_GET_ATTACKER_SIDE 8 // for atk1E_jumpifability
|
||||
#define BS_GET_NOT_ATTACKER_SIDE 9 // for atk1E_jumpifability
|
||||
#define BS_GET_SCRIPTING_BANK 10
|
||||
#define BS_GET_OPPONENT1 12
|
||||
#define BS_GET_PLAYER2 13
|
||||
#define BS_GET_OPPONENT2 14
|
||||
// special type table Ids
|
||||
#define TYPE_FORESIGHT 0xFE
|
||||
#define TYPE_ENDTABLE 0xFF
|
||||
|
||||
// for battle script commands
|
||||
#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
|
||||
#define BATTLE_BUFFER_LINK_SIZE 0x1000
|
||||
|
||||
struct TrainerMonNoItemDefaultMoves
|
||||
{
|
||||
@@ -283,9 +99,6 @@ struct TrainerMonNoItemDefaultMoves
|
||||
u16 species;
|
||||
};
|
||||
|
||||
u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg);
|
||||
u8 GetBankSide(u8 bank);
|
||||
|
||||
struct TrainerMonItemDefaultMoves
|
||||
{
|
||||
u16 iv;
|
||||
@@ -313,10 +126,10 @@ struct TrainerMonItemCustomMoves
|
||||
|
||||
union TrainerMonPtr
|
||||
{
|
||||
struct TrainerMonNoItemDefaultMoves* NoItemDefaultMoves;
|
||||
struct TrainerMonNoItemCustomMoves* NoItemCustomMoves;
|
||||
struct TrainerMonItemDefaultMoves* ItemDefaultMoves;
|
||||
struct TrainerMonItemCustomMoves* ItemCustomMoves;
|
||||
struct TrainerMonNoItemDefaultMoves *NoItemDefaultMoves;
|
||||
struct TrainerMonNoItemCustomMoves *NoItemCustomMoves;
|
||||
struct TrainerMonItemDefaultMoves *ItemDefaultMoves;
|
||||
struct TrainerMonItemCustomMoves *ItemCustomMoves;
|
||||
};
|
||||
|
||||
struct Trainer
|
||||
@@ -333,9 +146,6 @@ struct Trainer
|
||||
/*0x24*/ union TrainerMonPtr party;
|
||||
};
|
||||
|
||||
#define PARTY_FLAG_CUSTOM_MOVES 0x1
|
||||
#define PARTY_FLAG_HAS_ITEM 0x2
|
||||
|
||||
extern const struct Trainer gTrainers[];
|
||||
|
||||
#define TRAINER_ENCOUNTER_MUSIC(trainer)((gTrainers[trainer].encounterMusic_gender & 0x7F))
|
||||
@@ -361,8 +171,8 @@ struct DisableStruct
|
||||
/*0x0D*/ u8 unkD;
|
||||
/*0x0E*/ u8 encoreTimer1 : 4;
|
||||
/*0x0E*/ u8 encoreTimer2 : 4;
|
||||
/*0x0F*/ u8 perishSong1 : 4;
|
||||
/*0x0F*/ u8 perishSong2 : 4;
|
||||
/*0x0F*/ u8 perishSongTimer1 : 4;
|
||||
/*0x0F*/ u8 perishSongTimer2 : 4;
|
||||
/*0x10*/ u8 furyCutterCounter;
|
||||
/*0x11*/ u8 rolloutCounter1 : 4;
|
||||
/*0x11*/ u8 rolloutCounter2 : 4;
|
||||
@@ -370,8 +180,8 @@ struct DisableStruct
|
||||
/*0x12*/ u8 chargeTimer2 : 4;
|
||||
/*0x13*/ u8 tauntTimer1:4;
|
||||
/*0x13*/ u8 tauntTimer2:4;
|
||||
/*0x14*/ u8 bankPreventingEscape;
|
||||
/*0x15*/ u8 bankWithSureHit;
|
||||
/*0x14*/ u8 battlerPreventingEscape;
|
||||
/*0x15*/ u8 battlerWithSureHit;
|
||||
/*0x16*/ u8 isFirstTurn;
|
||||
/*0x17*/ u8 unk17;
|
||||
/*0x18*/ u8 truantCounter : 1;
|
||||
@@ -382,8 +192,6 @@ struct DisableStruct
|
||||
/*0x1A*/ u8 unk1A[2];
|
||||
};
|
||||
|
||||
extern struct DisableStruct gDisableStructs[BATTLE_BANKS_COUNT];
|
||||
|
||||
struct ProtectStruct
|
||||
{
|
||||
/* field_0 */
|
||||
@@ -417,13 +225,11 @@ struct ProtectStruct
|
||||
|
||||
/* field_4 */ u32 physicalDmg;
|
||||
/* field_8 */ u32 specialDmg;
|
||||
/* field_C */ u8 physicalBank;
|
||||
/* field_D */ u8 specialBank;
|
||||
/* field_C */ u8 physicalBattlerId;
|
||||
/* field_D */ u8 specialBattlerId;
|
||||
/* field_E */ u16 fieldE;
|
||||
};
|
||||
|
||||
extern struct ProtectStruct gProtectStructs[BATTLE_BANKS_COUNT];
|
||||
|
||||
struct SpecialStatus
|
||||
{
|
||||
u8 statLowered : 1; // 0x1
|
||||
@@ -435,49 +241,43 @@ struct SpecialStatus
|
||||
u8 flag40 : 1;
|
||||
u8 focusBanded : 1;
|
||||
u8 field1[3];
|
||||
s32 moveturnLostHP;
|
||||
s32 moveturnLostHP_physical;
|
||||
s32 moveturnLostHP_special;
|
||||
u8 moveturnPhysicalBank;
|
||||
u8 moveturnSpecialBank;
|
||||
s32 dmg;
|
||||
s32 physicalDmg;
|
||||
s32 specialDmg;
|
||||
u8 physicalBattlerId;
|
||||
u8 specialBattlerId;
|
||||
u8 field12;
|
||||
u8 field13;
|
||||
};
|
||||
|
||||
extern struct SpecialStatus gSpecialStatuses[BATTLE_BANKS_COUNT];
|
||||
|
||||
struct SideTimer
|
||||
{
|
||||
/*0x00*/ u8 reflectTimer;
|
||||
/*0x01*/ u8 reflectBank;
|
||||
/*0x01*/ u8 reflectBattlerId;
|
||||
/*0x02*/ u8 lightscreenTimer;
|
||||
/*0x03*/ u8 lightscreenBank;
|
||||
/*0x03*/ u8 lightscreenBattlerId;
|
||||
/*0x04*/ u8 mistTimer;
|
||||
/*0x05*/ u8 mistBank;
|
||||
/*0x05*/ u8 mistBattlerId;
|
||||
/*0x06*/ u8 safeguardTimer;
|
||||
/*0x07*/ u8 safeguardBank;
|
||||
/*0x07*/ u8 safeguardBattlerId;
|
||||
/*0x08*/ u8 followmeTimer;
|
||||
/*0x09*/ u8 followmeTarget;
|
||||
/*0x0A*/ u8 spikesAmount;
|
||||
/*0x0B*/ u8 fieldB;
|
||||
};
|
||||
|
||||
extern struct SideTimer gSideTimers[];
|
||||
|
||||
struct WishFutureKnock
|
||||
{
|
||||
u8 futureSightCounter[BATTLE_BANKS_COUNT];
|
||||
u8 futureSightAttacker[BATTLE_BANKS_COUNT];
|
||||
s32 futureSightDmg[BATTLE_BANKS_COUNT];
|
||||
u16 futureSightMove[BATTLE_BANKS_COUNT];
|
||||
u8 wishCounter[BATTLE_BANKS_COUNT];
|
||||
u8 wishUserID[BATTLE_BANKS_COUNT];
|
||||
u8 futureSightCounter[MAX_BATTLERS_COUNT];
|
||||
u8 futureSightAttacker[MAX_BATTLERS_COUNT];
|
||||
s32 futureSightDmg[MAX_BATTLERS_COUNT];
|
||||
u16 futureSightMove[MAX_BATTLERS_COUNT];
|
||||
u8 wishCounter[MAX_BATTLERS_COUNT];
|
||||
u8 wishMonId[MAX_BATTLERS_COUNT];
|
||||
u8 weatherDuration;
|
||||
u8 knockedOffPokes[2];
|
||||
};
|
||||
|
||||
extern struct WishFutureKnock gWishFutureKnock;
|
||||
|
||||
struct AI_ThinkingStruct
|
||||
{
|
||||
u8 aiState;
|
||||
@@ -494,16 +294,16 @@ struct AI_ThinkingStruct
|
||||
|
||||
struct UsedMoves
|
||||
{
|
||||
u16 moves[BATTLE_BANKS_COUNT];
|
||||
u16 unknown[BATTLE_BANKS_COUNT];
|
||||
u16 moves[MAX_BATTLERS_COUNT];
|
||||
u16 unknown[MAX_BATTLERS_COUNT];
|
||||
};
|
||||
|
||||
struct BattleHistory
|
||||
{
|
||||
struct UsedMoves usedMoves[BATTLE_BANKS_COUNT];
|
||||
u8 abilities[BATTLE_BANKS_COUNT];
|
||||
u8 itemEffects[BATTLE_BANKS_COUNT];
|
||||
u16 trainerItems[BATTLE_BANKS_COUNT];
|
||||
struct UsedMoves usedMoves[MAX_BATTLERS_COUNT];
|
||||
u8 abilities[MAX_BATTLERS_COUNT];
|
||||
u8 itemEffects[MAX_BATTLERS_COUNT];
|
||||
u16 trainerItems[MAX_BATTLERS_COUNT];
|
||||
u8 itemsNo;
|
||||
};
|
||||
|
||||
@@ -541,12 +341,6 @@ struct BattleResources
|
||||
struct BattleScriptsStack *AI_ScriptsStack;
|
||||
};
|
||||
|
||||
extern struct BattleResources* gBattleResources;
|
||||
|
||||
#define BATTLESCRIPTS_STACK (gBattleResources->battleScriptsStack)
|
||||
#define BATTLE_CALLBACKS_STACK (gBattleResources->battleCallbackStack)
|
||||
#define BATTLE_LVLUP_STATS (gBattleResources->statsBeforeLvlUp)
|
||||
|
||||
struct BattleResults
|
||||
{
|
||||
u8 playerFaintCounter; // 0x0
|
||||
@@ -570,21 +364,19 @@ struct BattleResults
|
||||
u16 playerMon2Species; // 0x26
|
||||
u16 caughtMonSpecies; // 0x28
|
||||
u8 caughtMonNick[10]; // 0x2A
|
||||
u8 filler34[2];
|
||||
u8 filler34[2]; // 0x34
|
||||
u8 catchAttempts[11]; // 0x36
|
||||
};
|
||||
|
||||
extern struct BattleResults gBattleResults;
|
||||
|
||||
struct BattleStruct
|
||||
{
|
||||
u8 turnEffectsTracker;
|
||||
u8 turnEffectsBank;
|
||||
u8 turnEffectsBattlerId;
|
||||
u8 filler2;
|
||||
u8 turncountersTracker;
|
||||
u8 turnCountersTracker;
|
||||
u8 wrappedMove[8]; // ask gamefreak why they declared it that way
|
||||
u8 moveTarget[4];
|
||||
u8 expGetterId;
|
||||
u8 expGetterMonId;
|
||||
u8 field_11;
|
||||
u8 wildVictorySong;
|
||||
u8 dynamicMoveType;
|
||||
@@ -598,20 +390,20 @@ struct BattleStruct
|
||||
u8 field_45;
|
||||
u8 field_46;
|
||||
u8 field_47;
|
||||
u8 focusPunchBank;
|
||||
u8 focusPunchBattlerId;
|
||||
u8 field_49;
|
||||
u8 moneyMultiplier;
|
||||
u8 field_4B;
|
||||
u8 savedTurnActionNumber;
|
||||
u8 switchInAbilitiesCounter;
|
||||
u8 field_4D;
|
||||
u8 field_4E;
|
||||
u8 faintedActionsState;
|
||||
u8 faintedActionsBattlerId;
|
||||
u8 field_4F;
|
||||
u16 expValue;
|
||||
u8 field_52;
|
||||
u8 sentInPokes;
|
||||
bool8 selectionScriptFinished[BATTLE_BANKS_COUNT];
|
||||
bool8 selectionScriptFinished[MAX_BATTLERS_COUNT];
|
||||
u8 field_58[4];
|
||||
u8 field_5C[4];
|
||||
u8 monToSwitchIntoId[MAX_BATTLERS_COUNT];
|
||||
u8 field_60[4][3];
|
||||
u8 runTries;
|
||||
u8 caughtMonNick[11];
|
||||
@@ -623,8 +415,8 @@ struct BattleStruct
|
||||
u8 field_7D;
|
||||
u8 field_7E;
|
||||
u8 formToChangeInto;
|
||||
u8 chosenMovePositions[BATTLE_BANKS_COUNT];
|
||||
u8 stateIdAfterSelScript[BATTLE_BANKS_COUNT];
|
||||
u8 chosenMovePositions[MAX_BATTLERS_COUNT];
|
||||
u8 stateIdAfterSelScript[MAX_BATTLERS_COUNT];
|
||||
u8 field_88;
|
||||
u8 field_89;
|
||||
u8 field_8A;
|
||||
@@ -632,7 +424,7 @@ struct BattleStruct
|
||||
u8 field_8C;
|
||||
u8 field_8D;
|
||||
u8 stringMoveType;
|
||||
u8 expGetterBank;
|
||||
u8 expGetterBattlerId;
|
||||
u8 field_90;
|
||||
u8 field_91;
|
||||
u8 field_92;
|
||||
@@ -657,12 +449,12 @@ struct BattleStruct
|
||||
u8 synchronizeMoveEffect;
|
||||
u8 field_B3;
|
||||
void (*savedCallback)(void);
|
||||
u16 usedHeldItems[BATTLE_BANKS_COUNT];
|
||||
u16 usedHeldItems[MAX_BATTLERS_COUNT];
|
||||
u8 chosenItem[4]; // why is this an u8?
|
||||
u8 AI_itemType[2];
|
||||
u8 AI_itemFlags[2];
|
||||
u16 choicedMove[BATTLE_BANKS_COUNT];
|
||||
u16 changedItems[BATTLE_BANKS_COUNT];
|
||||
u16 choicedMove[MAX_BATTLERS_COUNT];
|
||||
u16 changedItems[MAX_BATTLERS_COUNT];
|
||||
u8 intimidateBank;
|
||||
u8 switchInItemsCounter;
|
||||
u8 field_DA;
|
||||
@@ -670,35 +462,26 @@ struct BattleStruct
|
||||
u8 fillerDC[0xDF-0xDC];
|
||||
u8 field_DF;
|
||||
u8 mirrorMoveArrays[32];
|
||||
u16 castformPalette[4][16];
|
||||
u16 castformPalette[MAX_BATTLERS_COUNT][16];
|
||||
u8 field_180;
|
||||
u8 field_181;
|
||||
u8 field_182;
|
||||
u8 field_183;
|
||||
struct BattleEnigmaBerry battleEnigmaBerry;
|
||||
u8 field_1A0;
|
||||
u8 field_1A1;
|
||||
u8 wishPerishSongState;
|
||||
u8 wishPerishSongBattlerId;
|
||||
bool8 overworldWeatherDone;
|
||||
u8 atkCancellerTracker;
|
||||
u8 field_1A4[96];
|
||||
u8 field_204[104];
|
||||
u8 field_26C[40];
|
||||
u8 field_294[4];
|
||||
u8 AI_monToSwitchIntoId[MAX_BATTLERS_COUNT];
|
||||
u8 field_298[8];
|
||||
u8 field_2A0;
|
||||
u8 field_2A1;
|
||||
u8 field_2A2;
|
||||
};
|
||||
|
||||
extern struct BattleStruct* gBattleStruct;
|
||||
|
||||
#define MEME_ACCESS_U8(structName, structPtr, arrayId, offsetField, value) \
|
||||
{ \
|
||||
u8* var2 = (u8*)((u32)(arrayId)); \
|
||||
var2 = (u32)(structPtr) + var2; \
|
||||
var2[offsetof(struct structName, offsetField)] = value; \
|
||||
}
|
||||
|
||||
#define GET_MOVE_TYPE(move, typeArg) \
|
||||
{ \
|
||||
if (gBattleStruct->dynamicMoveType) \
|
||||
@@ -707,128 +490,31 @@ extern struct BattleStruct* gBattleStruct;
|
||||
typeArg = gBattleMoves[move].type; \
|
||||
}
|
||||
|
||||
#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
|
||||
|
||||
// table ids for general animations
|
||||
#define B_ANIM_CASTFORM_CHANGE 0x0
|
||||
#define B_ANIM_STATS_CHANGE 0x1
|
||||
#define B_ANIM_SUBSTITUTE_FADE 0x2
|
||||
#define B_ANIM_SUBSTITUTE_APPEAR 0x3
|
||||
#define B_ANIM_x4 0x4
|
||||
#define B_ANIM_ITEM_KNOCKOFF 0x5
|
||||
#define B_ANIM_TURN_TRAP 0x6
|
||||
#define B_ANIM_ITEM_EFFECT 0x7
|
||||
#define B_ANIM_SMOKEBALL_ESCAPE 0x8
|
||||
#define B_ANIM_HANGED_ON 0x9
|
||||
#define B_ANIM_RAIN_CONTINUES 0xA
|
||||
#define B_ANIM_SUN_CONTINUES 0xB
|
||||
#define B_ANIM_SANDSTORM_CONTINUES 0xC
|
||||
#define B_ANIM_HAIL_CONTINUES 0xD
|
||||
#define B_ANIM_LEECH_SEED_DRAIN 0xE
|
||||
#define B_ANIM_MON_HIT 0xF
|
||||
#define B_ANIM_ITEM_STEAL 0x10
|
||||
#define B_ANIM_SNATCH_MOVE 0x11
|
||||
#define B_ANIM_FUTURE_SIGHT_HIT 0x12
|
||||
#define B_ANIM_x13 0x13
|
||||
#define B_ANIM_x14 0x14
|
||||
#define B_ANIM_INGRAIN_HEAL 0x15
|
||||
#define B_ANIM_WISH_HEAL 0x16
|
||||
|
||||
// special animations table
|
||||
#define B_ANIM_LVL_UP 0x0
|
||||
#define B_ANIM_SWITCH_OUT_PLAYER_MON 0x1
|
||||
#define B_ANIM_SWITCH_OUT_OPPONENT_MON 0x2
|
||||
#define B_ANIM_BALL_THROW 0x3
|
||||
#define B_ANIM_SAFARI_BALL_THROW 0x4
|
||||
#define B_ANIM_SUBSTITUTE_TO_MON 0x5
|
||||
#define B_ANIM_MON_TO_SUBSTITUTE 0x6
|
||||
#define IS_MOVE_PHYSICAL(moveType)(moveType < TYPE_MYSTERY)
|
||||
#define IS_MOVE_SPECIAL(moveType)(moveType > TYPE_MYSTERY)
|
||||
|
||||
#define GET_STAT_BUFF_ID(n)((n & 0xF)) // first four bits 0x1, 0x2, 0x4, 0x8
|
||||
#define GET_STAT_BUFF_VALUE(n)(((n >> 4) & 7)) // 0x10, 0x20, 0x40
|
||||
#define STAT_BUFF_NEGATIVE 0x80 // 0x80, the sign bit
|
||||
|
||||
#define SET_STAT_BUFF_ID(n)((n & 0xF))
|
||||
#define SET_STAT_BUFF_VALUE(n)(((s8)(((s8)(n) << 4)) & 0xF0))
|
||||
|
||||
#define SET_STATCHANGER(statId, stage, goesDown)(gBattleScripting.statChanger = (statId) + (stage << 4) + (goesDown << 7))
|
||||
|
||||
struct BattleScripting
|
||||
{
|
||||
s32 painSplitHp;
|
||||
s32 bideDmg;
|
||||
u8 multihitString[6];
|
||||
u8 dmgMultiplier;
|
||||
u8 field_F;
|
||||
u8 twoTurnsMoveStringId;
|
||||
u8 animArg1;
|
||||
u8 animArg2;
|
||||
u8 field_12;
|
||||
u8 field_13;
|
||||
u16 tripleKickPower;
|
||||
u8 atk49_state;
|
||||
u8 field_15;
|
||||
u8 field_16;
|
||||
u8 bank;
|
||||
u8 battlerWithAbility;
|
||||
u8 multihitMoveEffect;
|
||||
u8 battler;
|
||||
u8 animTurn;
|
||||
u8 animTargetsHit;
|
||||
u8 statChanger;
|
||||
@@ -845,62 +531,6 @@ struct BattleScripting
|
||||
u8 multiplayerId;
|
||||
};
|
||||
|
||||
extern struct BattleScripting gBattleScripting;
|
||||
|
||||
// functions
|
||||
|
||||
// battle_1
|
||||
void LoadBattleTextboxAndBackground(void);
|
||||
void LoadBattleEntryBackground(void);
|
||||
void ApplyPlayerChosenFrameToBattleMenu(void);
|
||||
bool8 LoadChosenBattleElement(u8 caseId);
|
||||
void DrawMainBattleBackground(void);
|
||||
void task00_0800F6FC(u8 taskId);
|
||||
|
||||
// battle_5
|
||||
void AllocateBattleResrouces(void);
|
||||
void FreeBattleResources(void);
|
||||
void AdjustFriendshipOnBattleFaint(u8 bank);
|
||||
void sub_80571DC(u8 bank, u8 arg1);
|
||||
u32 sub_805725C(u8 bank);
|
||||
|
||||
// battle 7
|
||||
void AllocateBattleSpritesData(void);
|
||||
void FreeBattleSpritesData(void);
|
||||
void AllocateMonSpritesGfx(void);
|
||||
void FreeMonSpritesGfx(void);
|
||||
void BattleMusicStop(void);
|
||||
void sub_805E990(struct Pokemon *mon, u8 bank);
|
||||
void sub_805EF14(void);
|
||||
bool8 BattleInitAllSprites(u8 *state1, u8 *state2);
|
||||
void sub_805E350(void);
|
||||
bool8 BattleLoadAllHealthBoxesGfx(u8 state);
|
||||
void LoadAndCreateEnemyShadowSprites(void);
|
||||
void SetBankEnemyShadowSpriteCallback(u8 bank, u16 species);
|
||||
void BattleLoadPlayerMonSpriteGfx(struct Pokemon *mon, u8 bank);
|
||||
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);
|
||||
void DoStatusAnimation(bool8 isStatus2, u32 status);
|
||||
void DoSpecialBattleAnimation(u8 activeBank, u8 atkBank, u8 defBank, u8 tableId);
|
||||
bool8 DoBattleAnimationFromTable(u8 active, u8 atkBank, u8 defBank, u8 tableId, u16 argument);
|
||||
void CopyBattleSpriteInvisibility(u8 bank);
|
||||
u16 ChooseMoveAndTargetInBattlePalace(void);
|
||||
void LoadBattleBarGfx(u8 arg0);
|
||||
bool8 mplay_80342A4(u8 bank);
|
||||
void sub_805EEE0(u8 bank);
|
||||
|
||||
enum
|
||||
{
|
||||
BACK_PIC_BRENDAN,
|
||||
@@ -914,14 +544,14 @@ enum
|
||||
};
|
||||
|
||||
// rom_80A5C6C
|
||||
u8 GetBankSide(u8 bank);
|
||||
u8 GetBankIdentity(u8 bank);
|
||||
u8 GetBankByIdentity(u8 bank);
|
||||
u8 GetBattlerSide(u8 battler);
|
||||
u8 GetBattlerPosition(u8 bank);
|
||||
u8 GetBattlerAtPosition(u8 bank);
|
||||
|
||||
struct BattleSpriteInfo
|
||||
{
|
||||
u16 invisible : 1; // 0x1
|
||||
u16 flag_x2 : 1; // 0x2
|
||||
u16 lowHpSong : 1; // 0x2
|
||||
u16 behindSubstitute : 1; // 0x4
|
||||
u16 flag_x8 : 1; // 0x8
|
||||
u16 hpNumbersNoBars : 1; // 0x10
|
||||
@@ -930,7 +560,7 @@ struct BattleSpriteInfo
|
||||
|
||||
struct BattleAnimationInfo
|
||||
{
|
||||
u16 field; // to fill up later
|
||||
u16 animArg; // to fill up later
|
||||
u8 field_2;
|
||||
u8 field_3;
|
||||
u8 field_4;
|
||||
@@ -944,6 +574,12 @@ struct BattleAnimationInfo
|
||||
u8 field_9_x20 : 1;
|
||||
u8 field_9_x40 : 1;
|
||||
u8 field_9_x80 : 1;
|
||||
u8 field_A;
|
||||
u8 field_B;
|
||||
u8 field_C;
|
||||
u8 field_D;
|
||||
u8 field_E;
|
||||
u8 field_F;
|
||||
};
|
||||
|
||||
struct BattleHealthboxInfo
|
||||
@@ -951,7 +587,7 @@ struct BattleHealthboxInfo
|
||||
u8 flag_x1 : 1;
|
||||
u8 flag_x2 : 1;
|
||||
u8 flag_x4 : 1;
|
||||
u8 flag_x8 : 1;
|
||||
u8 ballAnimActive : 1; // 0x8
|
||||
u8 statusAnimActive : 1; // x10
|
||||
u8 animFromTableActive : 1; // x20
|
||||
u8 specialAnimActive : 1; //x40
|
||||
@@ -966,7 +602,7 @@ struct BattleHealthboxInfo
|
||||
u8 animationState;
|
||||
u8 field_5;
|
||||
u8 field_6;
|
||||
u8 field_7;
|
||||
u8 shadowSpriteId;
|
||||
u8 field_8;
|
||||
u8 field_9;
|
||||
u8 field_A;
|
||||
@@ -984,21 +620,12 @@ struct BattleBarInfo
|
||||
|
||||
struct BattleSpriteData
|
||||
{
|
||||
struct BattleSpriteInfo *bankData;
|
||||
struct BattleSpriteInfo *battlerData;
|
||||
struct BattleHealthboxInfo *healthBoxesData;
|
||||
struct BattleAnimationInfo *animationData;
|
||||
struct BattleBarInfo *battleBars;
|
||||
};
|
||||
|
||||
extern struct BattleSpriteData *gBattleSpritesDataPtr;
|
||||
|
||||
#define BATTLE_BUFFER_LINK_SIZE 0x1000
|
||||
|
||||
extern u8 *gLinkBattleSendBuffer;
|
||||
extern u8 *gLinkBattleRecvBuffer;
|
||||
|
||||
// Move this somewhere else
|
||||
|
||||
#include "sprite.h"
|
||||
|
||||
struct MonSpritesGfx
|
||||
@@ -1006,15 +633,113 @@ struct MonSpritesGfx
|
||||
void* firstDecompressed; // ptr to the decompressed sprite of the first pokemon
|
||||
void* sprites[4];
|
||||
struct SpriteTemplate templates[4];
|
||||
u8 field_74[0x100];
|
||||
u8 *fontPixels;
|
||||
struct SpriteFrameImage field_74[4][4];
|
||||
u8 field_F4[0x80];
|
||||
u8 *barFontGfx;
|
||||
void *field_178;
|
||||
void *field_17C;
|
||||
};
|
||||
|
||||
extern struct BattleSpritesGfx* gMonSpritesGfx;
|
||||
extern u8 gBattleOutcome;
|
||||
extern u16 gLastUsedItem;
|
||||
// all battle variables are declared in battle_main.c
|
||||
extern u32 gBattleTypeFlags;
|
||||
extern struct MonSpritesGfx* gMonSpritesGfxPtr;
|
||||
extern u16 gTrainerBattleOpponent_A;
|
||||
extern u8 gBattleTerrain;
|
||||
extern u32 gUnknown_02022FF4;
|
||||
extern u8 *gUnknown_0202305C;
|
||||
extern u8 *gUnknown_02023060;
|
||||
extern u8 gBattleBufferA[MAX_BATTLERS_COUNT][0x200];
|
||||
extern u8 gBattleBufferB[MAX_BATTLERS_COUNT][0x200];
|
||||
extern u8 gActiveBattler;
|
||||
extern u32 gBattleControllerExecFlags;
|
||||
extern u8 gBattlersCount;
|
||||
extern u16 gBattlerPartyIndexes[MAX_BATTLERS_COUNT];
|
||||
extern u8 gBattlerPositions[MAX_BATTLERS_COUNT];
|
||||
extern u8 gActionsByTurnOrder[MAX_BATTLERS_COUNT];
|
||||
extern u8 gBattleTurnOrder[MAX_BATTLERS_COUNT];
|
||||
extern u8 gCurrentTurnActionNumber;
|
||||
extern u8 gCurrentActionFuncId;
|
||||
extern struct BattlePokemon gBattleMons[MAX_BATTLERS_COUNT];
|
||||
extern u8 gBattlerSpriteIds[MAX_BATTLERS_COUNT];
|
||||
extern u8 gCurrMovePos;
|
||||
extern u8 gChosenMovePos;
|
||||
extern u16 gCurrentMove;
|
||||
extern u16 gChosenMove;
|
||||
extern u16 gRandomMove;
|
||||
extern s32 gBattleMoveDamage;
|
||||
extern s32 gHpDealt;
|
||||
extern s32 gTakenDmg[MAX_BATTLERS_COUNT];
|
||||
extern u16 gLastUsedItem;
|
||||
extern u8 gLastUsedAbility;
|
||||
extern u8 gBattlerAttacker;
|
||||
extern u8 gBattlerTarget;
|
||||
extern u8 gBattlerFainted;
|
||||
extern u8 gEffectBattler;
|
||||
extern u8 gPotentialItemEffectBattler;
|
||||
extern u8 gAbsentBattlerFlags;
|
||||
extern u8 gCritMultiplier;
|
||||
extern u8 gMultiHitCounter;
|
||||
extern const u8 *gBattlescriptCurrInstr;
|
||||
extern u32 gUnusedBattleMainVar;
|
||||
extern u8 gChosenActionByBattler[MAX_BATTLERS_COUNT];
|
||||
extern const u8 *gSelectionBattleScripts[MAX_BATTLERS_COUNT];
|
||||
extern const u8 *gPalaceSelectionBattleScripts[MAX_BATTLERS_COUNT];
|
||||
extern u16 gLastPrintedMoves[MAX_BATTLERS_COUNT];
|
||||
extern u16 gLastMoves[MAX_BATTLERS_COUNT];
|
||||
extern u16 gLastLandedMoves[MAX_BATTLERS_COUNT];
|
||||
extern u16 gLastHitByType[MAX_BATTLERS_COUNT];
|
||||
extern u16 gLastResultingMoves[MAX_BATTLERS_COUNT];
|
||||
extern u16 gLockedMoves[MAX_BATTLERS_COUNT];
|
||||
extern u8 gLastHitBy[MAX_BATTLERS_COUNT];
|
||||
extern u16 gChosenMoveByBattler[MAX_BATTLERS_COUNT];
|
||||
extern u8 gMoveResultFlags;
|
||||
extern u32 gHitMarker;
|
||||
extern u8 gTakenDmgByBattler[MAX_BATTLERS_COUNT];
|
||||
extern u8 gUnknown_0202428C;
|
||||
extern u16 gSideStatuses[2];
|
||||
extern struct SideTimer gSideTimers[2];
|
||||
extern u32 gStatuses3[MAX_BATTLERS_COUNT];
|
||||
extern struct DisableStruct gDisableStructs[MAX_BATTLERS_COUNT];
|
||||
extern u16 gPauseCounterBattle;
|
||||
extern u16 gPaydayMoney;
|
||||
extern u16 gRandomTurnNumber;
|
||||
extern u8 gBattleCommunication[BATTLE_COMMUNICATION_ENTRIES_COUNT];
|
||||
extern u8 gBattleOutcome;
|
||||
extern struct ProtectStruct gProtectStructs[MAX_BATTLERS_COUNT];
|
||||
extern struct SpecialStatus gSpecialStatuses[MAX_BATTLERS_COUNT];
|
||||
extern u16 gBattleWeather;
|
||||
extern struct WishFutureKnock gWishFutureKnock;
|
||||
extern u16 gIntroSlideFlags;
|
||||
extern u8 gSentPokesToOpponent[2];
|
||||
extern u16 gDynamicBasePower;
|
||||
extern u16 gExpShareExp;
|
||||
extern struct BattleEnigmaBerry gEnigmaBerries[MAX_BATTLERS_COUNT];
|
||||
extern struct BattleScripting gBattleScripting;
|
||||
extern struct BattleStruct *gBattleStruct;
|
||||
extern u8 *gLinkBattleSendBuffer;
|
||||
extern u8 *gLinkBattleRecvBuffer;
|
||||
extern struct BattleResources *gBattleResources;
|
||||
extern u8 gActionSelectionCursor[MAX_BATTLERS_COUNT];
|
||||
extern u8 gMoveSelectionCursor[MAX_BATTLERS_COUNT];
|
||||
extern u8 gBattlerStatusSummaryTaskId[MAX_BATTLERS_COUNT];
|
||||
extern u8 gBattlerInMenuId;
|
||||
extern bool8 gDoingBattleAnim;
|
||||
extern u32 gTransformedPersonalities[MAX_BATTLERS_COUNT];
|
||||
extern u8 gPlayerDpadHoldFrames;
|
||||
extern struct BattleSpriteData *gBattleSpritesDataPtr;
|
||||
extern struct MonSpritesGfx *gMonSpritesGfxPtr;
|
||||
extern struct BattleHealthboxInfo *gUnknown_020244D8;
|
||||
extern struct BattleHealthboxInfo *gUnknown_020244DC;
|
||||
extern u16 gBattleMovePower;
|
||||
extern u16 gMoveToLearn;
|
||||
extern u8 gBattleMonForms[MAX_BATTLERS_COUNT];
|
||||
|
||||
extern void (*gPreBattleCallback1)(void);
|
||||
extern void (*gBattleMainFunc)(void);
|
||||
extern struct BattleResults gBattleResults;
|
||||
extern u8 gLeveledUpInBattle;
|
||||
extern void (*gBattlerControllerFuncs[MAX_BATTLERS_COUNT])(void);
|
||||
extern u8 gHealthboxSpriteIds[MAX_BATTLERS_COUNT];
|
||||
extern u8 gMultiUsePlayerCursor;
|
||||
extern u8 gNumberOfMovesToChoose;
|
||||
extern u8 gUnknown_03005D7C[MAX_BATTLERS_COUNT];
|
||||
|
||||
#endif // GUARD_BATTLE_H
|
||||
|
||||
@@ -4,9 +4,9 @@
|
||||
void BattleAI_HandleItemUseBeforeAISetup(u8 defaultScoreMoves);
|
||||
void BattleAI_SetupAIData(u8 defaultScoreMoves);
|
||||
u8 BattleAI_ChooseMoveOrAction(void);
|
||||
void ClearBankMoveHistory(u8 bank);
|
||||
void ClearBattlerMoveHistory(u8 bank);
|
||||
void RecordAbilityBattle(u8 bank, u8 abilityId);
|
||||
void ClearBankAbilityHistory(u8 bank);
|
||||
void ClearBattlerAbilityHistory(u8 bank);
|
||||
void RecordItemEffectBattle(u8 bank, u8 itemEffect);
|
||||
void ClearBankItemEffectHistory(u8 bank);
|
||||
|
||||
|
||||
@@ -1,14 +1,6 @@
|
||||
#ifndef GUARD_BATTLE_ANIM_H
|
||||
#define GUARD_BATTLE_ANIM_H
|
||||
|
||||
enum
|
||||
{
|
||||
ANIM_BANK_ATTACKER,
|
||||
ANIM_BANK_TARGET,
|
||||
ANIM_BANK_ATK_PARTNER,
|
||||
ANIM_BANK_DEF_PARTNER,
|
||||
};
|
||||
|
||||
enum
|
||||
{
|
||||
BG_ANIM_SCREEN_SIZE,
|
||||
@@ -53,9 +45,9 @@ extern u8 gAnimFriendship;
|
||||
extern u16 gWeatherMoveAnim;
|
||||
extern s16 gBattleAnimArgs[ANIM_ARGS_COUNT];
|
||||
extern u8 gAnimMoveTurn;
|
||||
extern u8 gAnimBankAttacker;
|
||||
extern u8 gAnimBankTarget;
|
||||
extern u16 gAnimSpeciesByBanks[BATTLE_BANKS_COUNT];
|
||||
extern u8 gBattleAnimAttacker;
|
||||
extern u8 gBattleAnimTarget;
|
||||
extern u16 gAnimSpeciesByBanks[MAX_BATTLERS_COUNT];
|
||||
extern u8 gUnknown_02038440;
|
||||
|
||||
void ClearBattleAnimationVars(void);
|
||||
@@ -64,8 +56,8 @@ void LaunchBattleAnimation(const u8 *const animsTable[], u16 tableId, bool8 isMo
|
||||
void DestroyAnimSprite(struct Sprite *sprite);
|
||||
void DestroyAnimVisualTask(u8 taskId);
|
||||
void DestroyAnimSoundTask(u8 taskId);
|
||||
bool8 IsAnimBankSpriteVisible(u8 bank);
|
||||
void sub_80A438C(u8 bank, bool8 toBG_2, bool8 setSpriteInvisible);
|
||||
bool8 IsBattlerSpriteVisible(u8 battlerId);
|
||||
void sub_80A438C(u8 battlerId, bool8 toBG_2, bool8 setSpriteInvisible);
|
||||
bool8 IsContest(void);
|
||||
s8 BattleAnimAdjustPanning(s8 pan);
|
||||
s8 BattleAnimAdjustPanning2(s8 pan);
|
||||
@@ -79,20 +71,40 @@ void HandleIntroSlide(u8 terrainId);
|
||||
|
||||
// battle_anim_80A5C6C.s
|
||||
void sub_80A6EEC(struct Sprite *sprite);
|
||||
void sub_80A68D4(struct Sprite *sprite);
|
||||
void sub_80A6F3C(struct Sprite *sprite);
|
||||
void sub_80A8278(void);
|
||||
void sub_80A6B30(struct UnknownAnimStruct2*);
|
||||
void sub_80A6B90(struct UnknownAnimStruct2*, u32 arg1);
|
||||
u8 sub_80A82E4(u8 bank);
|
||||
u8 sub_80A5C6C(u8 bank, u8 attributeId);
|
||||
bool8 IsBankSpritePresent(u8 bank);
|
||||
u8 sub_80A82E4(u8 battlerId);
|
||||
bool8 AnimateBallThrow(struct Sprite *sprite);
|
||||
|
||||
enum
|
||||
{
|
||||
BANK_X_POS,
|
||||
BANK_Y_POS,
|
||||
};
|
||||
|
||||
u8 GetBattlerSpriteCoord(u8 battlerId, u8 attributeId);
|
||||
|
||||
bool8 IsBattlerSpritePresent(u8 battlerId);
|
||||
void sub_80A6C68(u8 arg0);
|
||||
u8 GetAnimBankSpriteId(u8 wantedBank);
|
||||
u8 GetAnimBattlerSpriteId(u8 wantedBattler);
|
||||
bool8 IsDoubleBattle(void);
|
||||
u8 sub_80A6D94(void);
|
||||
u8 sub_80A8364(u8);
|
||||
void StoreSpriteCallbackInData6(struct Sprite *sprite, void (*spriteCallback)(struct Sprite*));
|
||||
void oamt_add_pos2_onto_pos1(struct Sprite *sprite);
|
||||
u8 sub_80A6138(u8 bank);
|
||||
u8 sub_80A82E4(u8 bank);
|
||||
u8 GetBattlerSpriteDefault_Y(u8 battlerId);
|
||||
u8 sub_80A82E4(u8 battlerId);
|
||||
u8 GetSubstituteSpriteDefault_Y(u8 battlerId);
|
||||
|
||||
// battle_anim_80A9C70.s
|
||||
void LaunchStatusAnimation(u8 battlerId, u8 statusAnimId);
|
||||
|
||||
// battle_anim_8170478.s
|
||||
u8 ItemIdToBallId(u16 itemId);
|
||||
u8 LaunchBallStarsTask(u8 x, u8 y, u8 kindOfStars, u8 arg3, u8 ballId);
|
||||
u8 LaunchBallFadeMonTask(bool8 unFadeLater, u8 battlerId, u32 arg2, u8 ballId);
|
||||
|
||||
#endif // GUARD_BATTLE_ANIM_H
|
||||
|
||||
13
include/battle_bg.h
Normal file
13
include/battle_bg.h
Normal file
@@ -0,0 +1,13 @@
|
||||
#ifndef GUARD_BATTLE_BG_H
|
||||
#define GUARD_BATTLE_BG_H
|
||||
|
||||
void sub_8035658(void);
|
||||
void sub_80356D0(void);
|
||||
void ApplyPlayerChosenFrameToBattleMenu(void);
|
||||
void DrawMainBattleBackground(void);
|
||||
void LoadBattleTextboxAndBackground(void);
|
||||
void sub_8035D74(u8 taskId);
|
||||
void LoadBattleEntryBackground(void);
|
||||
bool8 LoadChosenBattleElement(u8 caseId);
|
||||
|
||||
#endif // GUARD_BATTLE_BG_H
|
||||
@@ -181,62 +181,62 @@ void sub_8033648(void);
|
||||
void PrepareBufferDataTransferLink(u8 bufferId, u16 size, u8 *data);
|
||||
|
||||
// emitters
|
||||
void EmitGetMonData(u8 bufferId, u8 requestId, u8 monToCheck);
|
||||
void EmitGetRawMonData(u8 bufferId, u8 monId, u8 bytes); // unused
|
||||
void EmitSetMonData(u8 bufferId, u8 requestId, u8 monToCheck, 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);
|
||||
void EmitReturnMonToBall(u8 bufferId, u8 arg1);
|
||||
void EmitDrawTrainerPic(u8 bufferId);
|
||||
void EmitTrainerSlide(u8 bufferId);
|
||||
void EmitTrainerSlideBack(u8 bufferId);
|
||||
void EmitFaintAnimation(u8 bufferId);
|
||||
void EmitPaletteFade(u8 bufferId); // unused
|
||||
void EmitSuccessBallThrowAnim(u8 bufferId); // unused
|
||||
void EmitBallThrowAnim(u8 bufferId, u8 caseId);
|
||||
void EmitPause(u8 bufferId, u8 toWait, void *data); // unused
|
||||
void EmitMoveAnimation(u8 bufferId, u16 move, u8 turnOfMove, u16 movePower, s32 dmg, u8 friendship, struct DisableStruct *disableStructPtr, u8 multihit);
|
||||
void EmitPrintString(u8 bufferId, u16 stringId);
|
||||
void EmitPrintStringPlayerOnly(u8 bufferId, u16 stringId);
|
||||
void EmitChooseAction(u8 bufferId, u8 arg1, u16 arg2);
|
||||
void EmitUnknownYesNoBox(u8 bufferId);
|
||||
void EmitChooseMove(u8 bufferId, bool8 isDoubleBattle, bool8 NoPpNumber, struct ChooseMoveStruct *movePpData);
|
||||
void EmitChooseItem(u8 bufferId, u8* arg1);
|
||||
void EmitChoosePokemon(u8 bufferId, u8 caseId, u8 arg2, u8 abilityId, u8* arg4);
|
||||
void EmitCmd23(u8 bufferId); // unused
|
||||
void EmitHealthBarUpdate(u8 bufferId, u16 hpValue);
|
||||
void EmitExpUpdate(u8 bufferId, u8 partyId, u16 expPoints);
|
||||
void EmitStatusIconUpdate(u8 bufferId, u32 status1, u32 status2);
|
||||
void EmitStatusAnimation(u8 bufferId, bool8 status2, u32 status);
|
||||
void EmitStatusXor(u8 bufferId, u8 b); // unused
|
||||
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 EmitTwoReturnValues(u8 bufferId, u8 arg1, u16 arg2);
|
||||
void EmitChosenMonReturnValue(u8 bufferId, u8 b, u8 *c);
|
||||
void EmitOneReturnValue(u8 bufferId, u16 arg1);
|
||||
void EmitOneReturnValue_Duplicate(u8 bufferId, u16 b);
|
||||
void EmitCmd37(u8 bufferId); // unused
|
||||
void EmitCmd38(u8 bufferId, u8 b); // unused
|
||||
void EmitCmd39(u8 bufferId); // unused
|
||||
void EmitCmd40(u8 bufferId); // unused
|
||||
void EmitHitAnimation(u8 bufferId);
|
||||
void EmitCmd42(u8 bufferId);
|
||||
void EmitEffectivenessSound(u8 bufferId, u16 songId);
|
||||
void EmitPlayFanfareOrBGM(u8 bufferId, u16 songId, bool8 playBGM);
|
||||
void EmitFaintingCry(u8 bufferId);
|
||||
void EmitIntroSlide(u8 bufferId, u8 terrainId);
|
||||
void EmitIntroTrainerBallThrow(u8 bufferId);
|
||||
void EmitDrawPartyStatusSummary(u8 bufferId, struct HpAndStatus* hpAndStatus, u8 arg2);
|
||||
void EmitCmd49(u8 bufferId);
|
||||
void EmitCmd50(u8 bufferId);
|
||||
void EmitSpriteInvisibility(u8 bufferId, bool8 isInvisible);
|
||||
void EmitBattleAnimation(u8 bufferId, u8 animationId, u16 argument);
|
||||
void EmitLinkStandbyMsg(u8 bufferId, u8 arg1, bool32 arg2);
|
||||
void EmitResetActionMoveSelection(u8 bufferId, u8 caseId);
|
||||
void EmitCmd55(u8 bufferId, u8 arg1);
|
||||
void BtlController_EmitGetMonData(u8 bufferId, u8 requestId, u8 monToCheck);
|
||||
void BtlController_EmitGetRawMonData(u8 bufferId, u8 monId, u8 bytes); // unused
|
||||
void BtlController_EmitSetMonData(u8 bufferId, u8 requestId, u8 monToCheck, u8 bytes, void *data);
|
||||
void BtlController_EmitSetRawMonData(u8 bufferId, u8 monId, u8 bytes, void *data); // unused
|
||||
void BtlController_EmitLoadMonSprite(u8 bufferId);
|
||||
void BtlController_EmitSwitchInAnim(u8 bufferId, u8 partyId, bool8 dontClearSubstituteBit);
|
||||
void BtlController_EmitReturnMonToBall(u8 bufferId, u8 arg1);
|
||||
void BtlController_EmitDrawTrainerPic(u8 bufferId);
|
||||
void BtlController_EmitTrainerSlide(u8 bufferId);
|
||||
void BtlController_EmitTrainerSlideBack(u8 bufferId);
|
||||
void BtlController_EmitFaintAnimation(u8 bufferId);
|
||||
void BtlController_EmitPaletteFade(u8 bufferId); // unused
|
||||
void BtlController_EmitSuccessBallThrowAnim(u8 bufferId); // unused
|
||||
void BtlController_EmitBallThrowAnim(u8 bufferId, u8 caseId);
|
||||
void BtlController_EmitPause(u8 bufferId, u8 toWait, void *data); // unused
|
||||
void BtlController_EmitMoveAnimation(u8 bufferId, u16 move, u8 turnOfMove, u16 movePower, s32 dmg, u8 friendship, struct DisableStruct *disableStructPtr, u8 multihit);
|
||||
void BtlController_EmitPrintString(u8 bufferId, u16 stringId);
|
||||
void BtlController_EmitPrintSelectionString(u8 bufferId, u16 stringId);
|
||||
void BtlController_EmitChooseAction(u8 bufferId, u8 arg1, u16 arg2);
|
||||
void BtlController_EmitUnknownYesNoBox(u8 bufferId);
|
||||
void BtlController_EmitChooseMove(u8 bufferId, bool8 isDoubleBattle, bool8 NoPpNumber, struct ChooseMoveStruct *movePpData);
|
||||
void BtlController_EmitChooseItem(u8 bufferId, u8* arg1);
|
||||
void BtlController_EmitChoosePokemon(u8 bufferId, u8 caseId, u8 arg2, u8 abilityId, u8* arg4);
|
||||
void BtlController_EmitCmd23(u8 bufferId); // unused
|
||||
void BtlController_EmitHealthBarUpdate(u8 bufferId, u16 hpValue);
|
||||
void BtlController_EmitExpUpdate(u8 bufferId, u8 partyId, u16 expPoints);
|
||||
void BtlController_EmitStatusIconUpdate(u8 bufferId, u32 status1, u32 status2);
|
||||
void BtlController_EmitStatusAnimation(u8 bufferId, bool8 status2, u32 status);
|
||||
void BtlController_EmitStatusXor(u8 bufferId, u8 b); // unused
|
||||
void BtlController_EmitDataTransfer(u8 bufferId, u16 size, void *data);
|
||||
void BtlController_EmitDMA3Transfer(u8 bufferId, void *dst, u16 size, void *data); // unused
|
||||
void BtlController_EmitPlayBGM(u8 bufferId, u16 songId, void *unusedDumbDataParameter); // unused
|
||||
void BtlController_EmitCmd32(u8 bufferId, u16 size, void *c); // unused
|
||||
void BtlController_EmitTwoReturnValues(u8 bufferId, u8 arg1, u16 arg2);
|
||||
void BtlController_EmitChosenMonReturnValue(u8 bufferId, u8 b, u8 *c);
|
||||
void BtlController_EmitOneReturnValue(u8 bufferId, u16 arg1);
|
||||
void BtlController_EmitOneReturnValue_Duplicate(u8 bufferId, u16 b);
|
||||
void BtlController_EmitCmd37(u8 bufferId); // unused
|
||||
void BtlController_EmitCmd38(u8 bufferId, u8 b); // unused
|
||||
void BtlController_EmitCmd39(u8 bufferId); // unused
|
||||
void BtlController_EmitCmd40(u8 bufferId); // unused
|
||||
void BtlController_EmitHitAnimation(u8 bufferId);
|
||||
void BtlController_EmitCmd42(u8 bufferId);
|
||||
void BtlController_EmitPlaySE(u8 bufferId, u16 songId);
|
||||
void BtlController_EmitPlayFanfareOrBGM(u8 bufferId, u16 songId, bool8 playBGM);
|
||||
void BtlController_EmitFaintingCry(u8 bufferId);
|
||||
void BtlController_EmitIntroSlide(u8 bufferId, u8 terrainId);
|
||||
void BtlController_EmitIntroTrainerBallThrow(u8 bufferId);
|
||||
void BtlController_EmitDrawPartyStatusSummary(u8 bufferId, struct HpAndStatus* hpAndStatus, u8 arg2);
|
||||
void BtlController_EmitCmd49(u8 bufferId);
|
||||
void BtlController_EmitCmd50(u8 bufferId);
|
||||
void BtlController_EmitSpriteInvisibility(u8 bufferId, bool8 isInvisible);
|
||||
void BtlController_EmitBattleAnimation(u8 bufferId, u8 animationId, u16 argument);
|
||||
void BtlController_EmitLinkStandbyMsg(u8 bufferId, u8 arg1, bool32 arg2);
|
||||
void BtlController_EmitResetActionMoveSelection(u8 bufferId, u8 caseId);
|
||||
void BtlController_EmitCmd55(u8 bufferId, u8 arg1);
|
||||
|
||||
// player controller
|
||||
void SetControllerToPlayer(void);
|
||||
|
||||
7
include/battle_frontier_1.h
Normal file
7
include/battle_frontier_1.h
Normal file
@@ -0,0 +1,7 @@
|
||||
#ifndef GUARD_BATTLE_FRONTIER_1_H
|
||||
#define GUARD_BATTLE_FRONTIER_1_H
|
||||
|
||||
bool32 sub_8196094(void);
|
||||
void sub_8196080(const u8 *str);
|
||||
|
||||
#endif // GUARD_BATTLE_FRONTIER_1_H
|
||||
@@ -5,5 +5,6 @@ void sub_81A8934(u8);
|
||||
void sub_81A895C(void);
|
||||
u16 sub_81A89A0(u8);
|
||||
void sub_81A8AF8(void);
|
||||
bool8 InBattlePike(void);
|
||||
|
||||
#endif // GUARD_BATTLE_FRONTIER_2_H
|
||||
|
||||
50
include/battle_gfx_sfx_util.h
Normal file
50
include/battle_gfx_sfx_util.h
Normal file
@@ -0,0 +1,50 @@
|
||||
#ifndef GUARD_BATTLE_GFX_SFX_UTIL
|
||||
#define GUARD_BATTLE_GFX_SFX_UTIL
|
||||
|
||||
void AllocateBattleSpritesData(void);
|
||||
void FreeBattleSpritesData(void);
|
||||
u16 ChooseMoveAndTargetInBattlePalace(void);
|
||||
void sub_805D714(struct Sprite *sprite);
|
||||
void sub_805D770(struct Sprite *sprite, bool8 arg1);
|
||||
void sub_805D7AC(struct Sprite *sprite);
|
||||
void InitAndLaunchChosenStatusAnimation(bool8 isStatus2, u32 status);
|
||||
bool8 TryHandleLaunchBattleTableAnimation(u8 activeBattlerId, u8 attacker, u8 target, u8 tableId, u16 argument);
|
||||
void InitAndLaunchSpecialAnimation(u8 activeBattlerId, u8 attacker, u8 target, u8 tableId);
|
||||
bool8 IsMoveWithoutAnimation(u16 moveId, u8 animationTurn);
|
||||
bool8 mplay_80342A4(u8 battlerId);
|
||||
void BattleLoadOpponentMonSpriteGfx(struct Pokemon *mon, u8 battlerId);
|
||||
void BattleLoadPlayerMonSpriteGfx(struct Pokemon *mon, u8 battlerId);
|
||||
void nullsub_23(void);
|
||||
void nullsub_24(u16 species);
|
||||
void DecompressTrainerFrontPic(u16 frontPicId, u8 battlerId);
|
||||
void DecompressTrainerBackPic(u16 backPicId, u8 battlerId);
|
||||
void nullsub_25(u8 arg0);
|
||||
void FreeTrainerFrontPicPalette(u16 frontPicId);
|
||||
void sub_805DFFC(void);
|
||||
bool8 BattleLoadAllHealthBoxesGfx(u8 state);
|
||||
void LoadBattleBarGfx(u8 arg0);
|
||||
bool8 BattleInitAllSprites(u8 *state1, u8 *battlerId);
|
||||
void ClearSpritesHealthboxAnimData(void);
|
||||
void CopyAllBattleSpritesInvisibilities(void);
|
||||
void CopyBattleSpriteInvisibility(u8 battlerId);
|
||||
void HandleSpeciesGfxDataChange(u8 attacker, u8 target, bool8 notTransform);
|
||||
void BattleLoadSubstituteOrMonSpriteGfx(u8 battlerId, bool8 loadMonSprite);
|
||||
void LoadBattleMonGfxAndAnimate(u8 battlerId, bool8 loadMonSprite, u8 spriteId);
|
||||
void TrySetBehindSubstituteSpriteBit(u8 battlerId, u16 move);
|
||||
void ClearBehindSubstituteBit(u8 battlerId);
|
||||
void HandleLowHpMusicChange(struct Pokemon *mon, u8 battlerId);
|
||||
void BattleStopLowHpSound(void);
|
||||
u8 GetMonHPBarLevel(struct Pokemon *mon);
|
||||
void sub_805EAE8(void);
|
||||
void sub_805EB9C(u8 affineMode);
|
||||
void LoadAndCreateEnemyShadowSprites(void);
|
||||
void SpriteCB_SetInvisible(struct Sprite *sprite);
|
||||
void SetBattlerShadowSpriteCallback(u8 battlerId, u16 species);
|
||||
void HideBattlerShadowSprite(u8 battlerId);
|
||||
void sub_805EF14(void);
|
||||
void ClearTemporarySpeciesSpriteData(u8 battlerId, bool8 dontClearSubstitute);
|
||||
void AllocateMonSpritesGfx(void);
|
||||
void FreeMonSpritesGfx(void);
|
||||
bool32 ShouldPlayNormalPokeCry(struct Pokemon *mon);
|
||||
|
||||
#endif // GUARD_BATTLE_GFX_SFX_UTIL
|
||||
@@ -15,6 +15,15 @@ enum
|
||||
EXP_BAR
|
||||
};
|
||||
|
||||
enum
|
||||
{
|
||||
HP_BAR_EMPTY,
|
||||
HP_BAR_RED,
|
||||
HP_BAR_YELLOW,
|
||||
HP_BAR_GREEN,
|
||||
HP_BAR_FULL,
|
||||
};
|
||||
|
||||
#define TAG_HEALTHBOX_PLAYER1_TILE 0xD6FF
|
||||
#define TAG_HEALTHBOX_PLAYER2_TILE 0xD700
|
||||
#define TAG_HEALTHBOX_OPPONENT1_TILE 0xD701
|
||||
@@ -45,7 +54,7 @@ enum
|
||||
HEALTHBOX_SAFARI_BALLS_TEXT
|
||||
};
|
||||
|
||||
u8 CreateBankHealthboxSprites(u8 bank);
|
||||
u8 CreateBattlerHealthboxSprites(u8 bank);
|
||||
u8 CreateSafariPlayerHealthboxSprites(void);
|
||||
void SetBattleBarStruct(u8 bank, u8 healthboxSpriteId, s32 maxVal, s32 currVal, s32 receivedValue);
|
||||
void SetHealthboxSpriteInvisible(u8 healthboxSpriteId);
|
||||
@@ -53,7 +62,7 @@ void SetHealthboxSpriteVisible(u8 healthboxSpriteId);
|
||||
void DestoryHealthboxSprite(u8 healthboxSpriteId);
|
||||
void DummyBattleInterfaceFunc(u8 healthboxSpriteId, bool8 isDoubleBattleBankOnly);
|
||||
void UpdateOamPriorityInAllHealthboxes(u8 priority);
|
||||
void SetBankHealthboxSpritePos(u8 bank);
|
||||
void InitBattlerHealthboxCoords(u8 bank);
|
||||
void UpdateHpTextInHealthbox(u8 healthboxSpriteId, s16 value, u8 maxOrCurrent);
|
||||
void SwapHpBarsWithHpText(void);
|
||||
u8 CreatePartyStatusSummarySprites(u8 bank, struct HpAndStatus *partyInfo, u8 arg2, bool8 isBattleStart);
|
||||
|
||||
@@ -6,6 +6,6 @@ void sub_817E0FC(u16 move, u16 weatherFlags, struct DisableStruct *disableStruct
|
||||
void sub_817E32C(u8 animationId);
|
||||
void sub_817E3F4(void);
|
||||
void sub_817F2A8(void);
|
||||
u8 GetBankMoveSlotId(u8 bank, u16 move);
|
||||
u8 GetBattlerMoveSlotId(u8 bank, u16 move);
|
||||
|
||||
#endif // GUARD_BATTLE_LINK_817C95C_H
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#ifndef GUARD_BATTLE_2_H
|
||||
#define GUARD_BATTLE_2_H
|
||||
#ifndef GUARD_BATTLE_MAIN_H
|
||||
#define GUARD_BATTLE_MAIN_H
|
||||
|
||||
void CB2_InitBattle(void);
|
||||
void BattleMainCB2(void);
|
||||
@@ -21,8 +21,8 @@ void sub_8039B58(struct Sprite *sprite);
|
||||
void sub_8039BB4(struct Sprite *sprite);
|
||||
void sub_80105DC(struct Sprite *sprite);
|
||||
void sub_8039C00(struct Sprite *sprite);
|
||||
void dp11b_obj_instanciate(u8 bank, u8 b, s8 c, s8 d);
|
||||
void dp11b_obj_free(u8 bank, bool8 b);
|
||||
void dp11b_obj_instanciate(u8 battlerId, u8 b, s8 c, s8 d);
|
||||
void dp11b_obj_free(u8 battlerId, bool8 b);
|
||||
void sub_8039E44(struct Sprite *sprite);
|
||||
void sub_8039E60(struct Sprite *sprite);
|
||||
void sub_8039E84(struct Sprite *sprite);
|
||||
@@ -35,12 +35,12 @@ void sub_803B3AC(void); // unused
|
||||
void sub_803B598(void); // unused
|
||||
void BattleTurnPassed(void);
|
||||
u8 IsRunningFromBattleImpossible(void);
|
||||
void sub_803BDA0(u8 bank);
|
||||
void sub_803BDA0(u8 battlerId);
|
||||
void SwapTurnOrder(u8 id1, u8 id2);
|
||||
u8 GetWhoStrikesFirst(u8 bank1, u8 bank2, bool8 ignoreChosenMoves);
|
||||
u8 GetWhoStrikesFirst(u8 battlerId1, u8 battlerId2, bool8 ignoreChosenMoves);
|
||||
void RunBattleScriptCommands_PopCallbacksStack(void);
|
||||
void RunBattleScriptCommands(void);
|
||||
bool8 TryRunFromBattle(u8 bank);
|
||||
bool8 TryRunFromBattle(u8 battlerId);
|
||||
|
||||
extern const u8 gStatusConditionString_PoisonJpn[8];
|
||||
extern const u8 gStatusConditionString_SleepJpn[8];
|
||||
@@ -52,4 +52,4 @@ extern const u8 gStatusConditionString_LoveJpn[8];
|
||||
|
||||
extern const u8 * const gStatusConditionStringsTable[7][2];
|
||||
|
||||
#endif // GUARD_BATTLE_2_H
|
||||
#endif // GUARD_BATTLE_MAIN_H
|
||||
@@ -67,13 +67,21 @@
|
||||
#define B_BUFF_STAT 5
|
||||
#define B_BUFF_SPECIES 6
|
||||
#define B_BUFF_MON_NICK 7
|
||||
#define B_BUFF_NEGATIVE_FLAVOUR 8
|
||||
#define B_BUFF_NEGATIVE_FLAVOR 8
|
||||
#define B_BUFF_ABILITY 9
|
||||
#define B_BUFF_ITEM 10
|
||||
|
||||
#define B_BUFF_PLACEHOLDER_BEGIN 0xFD
|
||||
#define B_BUFF_EOS 0xFF
|
||||
|
||||
#define PREPARE_FLAVOR_BUFFER(textVar, flavorId) \
|
||||
{ \
|
||||
textVar[0] = B_BUFF_PLACEHOLDER_BEGIN; \
|
||||
textVar[1] = B_BUFF_NEGATIVE_FLAVOR; \
|
||||
textVar[2] = flavorId; \
|
||||
textVar[3] = B_BUFF_EOS; \
|
||||
}
|
||||
|
||||
#define PREPARE_STAT_BUFFER(textVar, statId) \
|
||||
{ \
|
||||
textVar[0] = B_BUFF_PLACEHOLDER_BEGIN; \
|
||||
@@ -189,7 +197,7 @@
|
||||
struct StringInfoBattle
|
||||
{
|
||||
u16 currentMove;
|
||||
u16 lastMove;
|
||||
u16 originallyUsedMove;
|
||||
u16 lastItem;
|
||||
u8 lastAbility;
|
||||
u8 scrActive;
|
||||
|
||||
@@ -1,222 +0,0 @@
|
||||
#ifndef GUARD_BATTLE_MOVE_EFFECTS_H
|
||||
#define GUARD_BATTLE_MOVE_EFFECTS_H
|
||||
|
||||
enum
|
||||
{
|
||||
EFFECT_HIT,
|
||||
EFFECT_SLEEP,
|
||||
EFFECT_POISON_HIT,
|
||||
EFFECT_ABSORB,
|
||||
EFFECT_BURN_HIT,
|
||||
EFFECT_FREEZE_HIT,
|
||||
EFFECT_PARALYZE_HIT,
|
||||
EFFECT_EXPLOSION,
|
||||
EFFECT_DREAM_EATER,
|
||||
EFFECT_MIRROR_MOVE,
|
||||
EFFECT_ATTACK_UP,
|
||||
EFFECT_DEFENSE_UP,
|
||||
EFFECT_SPEED_UP,
|
||||
EFFECT_SPECIAL_ATTACK_UP,
|
||||
EFFECT_SPECIAL_DEFENSE_UP,
|
||||
EFFECT_ACCURACY_UP,
|
||||
EFFECT_EVASION_UP,
|
||||
EFFECT_ALWAYS_HIT,
|
||||
EFFECT_ATTACK_DOWN,
|
||||
EFFECT_DEFENSE_DOWN,
|
||||
EFFECT_SPEED_DOWN,
|
||||
EFFECT_SPECIAL_ATTACK_DOWN, // unused
|
||||
EFFECT_SPECIAL_DEFENSE_DOWN, // unused
|
||||
EFFECT_ACCURACY_DOWN,
|
||||
EFFECT_EVASION_DOWN,
|
||||
EFFECT_HAZE,
|
||||
EFFECT_BIDE,
|
||||
EFFECT_RAMPAGE,
|
||||
EFFECT_ROAR,
|
||||
EFFECT_MULTI_HIT,
|
||||
EFFECT_CONVERSION,
|
||||
EFFECT_FLINCH_HIT,
|
||||
EFFECT_RESTORE_HP,
|
||||
EFFECT_TOXIC,
|
||||
EFFECT_PAY_DAY,
|
||||
EFFECT_LIGHT_SCREEN,
|
||||
EFFECT_TRI_ATTACK,
|
||||
EFFECT_REST,
|
||||
EFFECT_OHKO,
|
||||
EFFECT_RAZOR_WIND,
|
||||
EFFECT_SUPER_FANG,
|
||||
EFFECT_DRAGON_RAGE,
|
||||
EFFECT_TRAP,
|
||||
EFFECT_HIGH_CRITICAL,
|
||||
EFFECT_DOUBLE_HIT,
|
||||
EFFECT_RECOIL_IF_MISS,
|
||||
EFFECT_MIST,
|
||||
EFFECT_FOCUS_ENERGY,
|
||||
EFFECT_RECOIL,
|
||||
EFFECT_CONFUSE,
|
||||
EFFECT_ATTACK_UP_2,
|
||||
EFFECT_DEFENSE_UP_2,
|
||||
EFFECT_SPEED_UP_2,
|
||||
EFFECT_SPECIAL_ATTACK_UP_2,
|
||||
EFFECT_SPECIAL_DEFENSE_UP_2,
|
||||
EFFECT_ACCURACY_UP_2,
|
||||
EFFECT_EVASION_UP_2,
|
||||
EFFECT_TRANSFORM,
|
||||
EFFECT_ATTACK_DOWN_2,
|
||||
EFFECT_DEFENSE_DOWN_2,
|
||||
EFFECT_SPEED_DOWN_2,
|
||||
EFFECT_SPECIAL_ATTACK_DOWN_2,
|
||||
EFFECT_SPECIAL_DEFENSE_DOWN_2,
|
||||
EFFECT_ACCURACY_DOWN_2,
|
||||
EFFECT_EVASION_DOWN_2,
|
||||
EFFECT_REFLECT,
|
||||
EFFECT_POISON,
|
||||
EFFECT_PARALYZE,
|
||||
EFFECT_ATTACK_DOWN_HIT,
|
||||
EFFECT_DEFENSE_DOWN_HIT,
|
||||
EFFECT_SPEED_DOWN_HIT,
|
||||
EFFECT_SPECIAL_ATTACK_DOWN_HIT,
|
||||
EFFECT_SPECIAL_DEFENSE_DOWN_HIT,
|
||||
EFFECT_ACCURACY_DOWN_HIT,
|
||||
EFFECT_EVASION_DOWN_HIT,
|
||||
EFFECT_SKY_ATTACK,
|
||||
EFFECT_CONFUSE_HIT,
|
||||
EFFECT_TWINEEDLE,
|
||||
EFFECT_VITAL_THROW,
|
||||
EFFECT_SUBSTITUTE,
|
||||
EFFECT_RECHARGE,
|
||||
EFFECT_RAGE,
|
||||
EFFECT_MIMIC,
|
||||
EFFECT_METRONOME,
|
||||
EFFECT_LEECH_SEED,
|
||||
EFFECT_SPLASH,
|
||||
EFFECT_DISABLE,
|
||||
EFFECT_LEVEL_DAMAGE,
|
||||
EFFECT_PSYWAVE,
|
||||
EFFECT_COUNTER,
|
||||
EFFECT_ENCORE,
|
||||
EFFECT_PAIN_SPLIT,
|
||||
EFFECT_SNORE,
|
||||
EFFECT_CONVERSION_2,
|
||||
EFFECT_LOCK_ON,
|
||||
EFFECT_SKETCH,
|
||||
EFFECT_UNUSED_60, // thaw
|
||||
EFFECT_SLEEP_TALK,
|
||||
EFFECT_DESTINY_BOND,
|
||||
EFFECT_FLAIL,
|
||||
EFFECT_SPITE,
|
||||
EFFECT_FALSE_SWIPE,
|
||||
EFFECT_HEAL_BELL,
|
||||
EFFECT_QUICK_ATTACK,
|
||||
EFFECT_TRIPLE_KICK,
|
||||
EFFECT_THIEF,
|
||||
EFFECT_MEAN_LOOK,
|
||||
EFFECT_NIGHTMARE,
|
||||
EFFECT_MINIMIZE,
|
||||
EFFECT_CURSE,
|
||||
EFFECT_UNUSED_6E,
|
||||
EFFECT_PROTECT,
|
||||
EFFECT_SPIKES,
|
||||
EFFECT_FORESIGHT,
|
||||
EFFECT_PERISH_SONG,
|
||||
EFFECT_SANDSTORM,
|
||||
EFFECT_ENDURE,
|
||||
EFFECT_ROLLOUT,
|
||||
EFFECT_SWAGGER,
|
||||
EFFECT_FURY_CUTTER,
|
||||
EFFECT_ATTRACT,
|
||||
EFFECT_RETURN,
|
||||
EFFECT_PRESENT,
|
||||
EFFECT_FRUSTRATION,
|
||||
EFFECT_SAFEGUARD,
|
||||
EFFECT_THAW_HIT,
|
||||
EFFECT_MAGNITUDE,
|
||||
EFFECT_BATON_PASS,
|
||||
EFFECT_PURSUIT,
|
||||
EFFECT_RAPID_SPIN,
|
||||
EFFECT_SONICBOOM,
|
||||
EFFECT_UNUSED_83,
|
||||
EFFECT_MORNING_SUN,
|
||||
EFFECT_SYNTHESIS,
|
||||
EFFECT_MOONLIGHT,
|
||||
EFFECT_HIDDEN_POWER,
|
||||
EFFECT_RAIN_DANCE,
|
||||
EFFECT_SUNNY_DAY,
|
||||
EFFECT_DEFENSE_UP_HIT,
|
||||
EFFECT_ATTACK_UP_HIT,
|
||||
EFFECT_ALL_STATS_UP_HIT,
|
||||
EFFECT_UNUSED_8D, // incomplete fake out in gen 2
|
||||
EFFECT_BELLY_DRUM,
|
||||
EFFECT_PSYCH_UP,
|
||||
EFFECT_MIRROR_COAT,
|
||||
EFFECT_SKULL_BASH,
|
||||
EFFECT_TWISTER,
|
||||
EFFECT_EARTHQUAKE,
|
||||
EFFECT_FUTURE_SIGHT,
|
||||
EFFECT_GUST,
|
||||
EFFECT_FLINCH_HIT_2, // STOMP ASTONISH EXTRASENSORY NEEDLE_ARM
|
||||
EFFECT_SOLARBEAM,
|
||||
EFFECT_THUNDER,
|
||||
EFFECT_TELEPORT,
|
||||
EFFECT_BEAT_UP,
|
||||
EFFECT_FLY,
|
||||
EFFECT_DEFENSE_CURL,
|
||||
EFFECT_SOFTBOILED,
|
||||
EFFECT_FAKE_OUT,
|
||||
EFFECT_UPROAR,
|
||||
EFFECT_STOCKPILE,
|
||||
EFFECT_SPIT_UP,
|
||||
EFFECT_SWALLOW,
|
||||
EFFECT_UNUSED_A3,
|
||||
EFFECT_HAIL,
|
||||
EFFECT_TORMENT,
|
||||
EFFECT_FLATTER,
|
||||
EFFECT_WILL_O_WISP,
|
||||
EFFECT_MEMENTO,
|
||||
EFFECT_FACADE,
|
||||
EFFECT_FOCUS_PUNCH,
|
||||
EFFECT_SMELLINGSALT,
|
||||
EFFECT_FOLLOW_ME,
|
||||
EFFECT_NATURE_POWER,
|
||||
EFFECT_CHARGE,
|
||||
EFFECT_TAUNT,
|
||||
EFFECT_HELPING_HAND,
|
||||
EFFECT_TRICK,
|
||||
EFFECT_ROLE_PLAY,
|
||||
EFFECT_WISH,
|
||||
EFFECT_ASSIST,
|
||||
EFFECT_INGRAIN,
|
||||
EFFECT_SUPERPOWER,
|
||||
EFFECT_MAGIC_COAT,
|
||||
EFFECT_RECYCLE,
|
||||
EFFECT_REVENGE,
|
||||
EFFECT_BRICK_BREAK,
|
||||
EFFECT_YAWN,
|
||||
EFFECT_KNOCK_OFF,
|
||||
EFFECT_ENDEAVOR,
|
||||
EFFECT_ERUPTION,
|
||||
EFFECT_SKILL_SWAP,
|
||||
EFFECT_IMPRISON,
|
||||
EFFECT_REFRESH,
|
||||
EFFECT_GRUDGE,
|
||||
EFFECT_SNATCH,
|
||||
EFFECT_LOW_KICK,
|
||||
EFFECT_SECRET_POWER,
|
||||
EFFECT_DOUBLE_EDGE,
|
||||
EFFECT_TEETER_DANCE,
|
||||
EFFECT_BLAZE_KICK,
|
||||
EFFECT_MUD_SPORT,
|
||||
EFFECT_POISON_FANG,
|
||||
EFFECT_WEATHER_BALL,
|
||||
EFFECT_OVERHEAT,
|
||||
EFFECT_TICKLE,
|
||||
EFFECT_COSMIC_POWER,
|
||||
EFFECT_SKY_UPPERCUT,
|
||||
EFFECT_BULK_UP,
|
||||
EFFECT_POISON_TAIL,
|
||||
EFFECT_WATER_SPORT,
|
||||
EFFECT_CALM_MIND,
|
||||
EFFECT_DRAGON_DANCE,
|
||||
EFFECT_CAMOUFLAGE,
|
||||
};
|
||||
|
||||
#endif // GUARD_BATTLE_MOVE_EFFECTS_H
|
||||
@@ -1,54 +1,13 @@
|
||||
#ifndef GUARD_BATTLE_SCRIPT_COMMANDS_H
|
||||
#define GUARD_BATTLE_SCRIPT_COMMANDS_H
|
||||
|
||||
#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
|
||||
|
||||
#define BS_ATTACKER_WITH_PARTNER 4 // for atk98_status_icon_update
|
||||
#define BS_GET_ATTACKER_SIDE 8 // for atk1E_jumpifability
|
||||
#define BS_GET_NOT_ATTACKER_SIDE 9 // for atk1E_jumpifability
|
||||
|
||||
#define ATK48_STAT_NEGATIVE 0x1
|
||||
#define ATK48_STAT_BY_TWO 0x2
|
||||
#define ATK48_BIT_x4 0x4
|
||||
#define ATK48_LOWER_FAIL_CHECK 0x8
|
||||
|
||||
#define ATK4F_DONT_CHECK_STATUSES 0x80
|
||||
|
||||
#define VARIOUS_CANCEL_MULTI_TURN_MOVES 0
|
||||
#define VARIOUS_SET_MAGIC_COAT_TARGET 1
|
||||
#define VARIOUS_CAN_RUN_FROM_BATTLE 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
|
||||
|
||||
#define ATK80_DMG_CHANGE_SIGN 0
|
||||
#define ATK80_DMG_HALF_BY_TWO_NOT_MORE_THAN_HALF_MAX_HP 1
|
||||
#define ATK80_DMG_DOUBLED 2
|
||||
|
||||
#define STAT_CHANGE_BS_PTR 0x1
|
||||
#define STAT_CHANGE_NOT_PROTECT_AFFECTED 0x20
|
||||
|
||||
#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);
|
||||
u8 BankGetTurnOrder(u8 bank);
|
||||
u8 GetBattlerTurnOrderNum(u8 bank);
|
||||
void SetMoveEffect(bool8 primary, u8 certain);
|
||||
void BattleDestroyYesNoCursorAt(u8 cursorPosition);
|
||||
void BattleCreateYesNoCursorAt(u8 cursorPosition);
|
||||
@@ -57,6 +16,6 @@ void HandleBattleWindow(u8 xStart, u8 yStart, u8 xEnd, u8 yEnd, u8 flags);
|
||||
bool8 UproarWakeUpCheck(u8 bank);
|
||||
|
||||
extern void (* const gBattleScriptingCommandsTable[])(void);
|
||||
extern const u8 gUnknown_0831C494[];
|
||||
extern const u8 gUnknown_0831C494[][4];
|
||||
|
||||
#endif // GUARD_BATTLE_SCRIPT_COMMANDS_H
|
||||
|
||||
290
include/battle_scripts.h
Normal file
290
include/battle_scripts.h
Normal file
@@ -0,0 +1,290 @@
|
||||
#ifndef GUARD_BATTLE_SCRIPTS_H
|
||||
#define GUARD_BATTLE_SCRIPTS_H
|
||||
|
||||
extern const u8 BattleScript_HitFromCritCalc[];
|
||||
extern const u8 BattleScript_MoveEnd[];
|
||||
extern const u8 BattleScript_MakeMoveMissed[];
|
||||
extern const u8 BattleScript_PrintMoveMissed[];
|
||||
extern const u8 BattleScript_MoveMissedPause[];
|
||||
extern const u8 BattleScript_MoveMissed[];
|
||||
extern const u8 BattleScript_ButItFailed[];
|
||||
extern const u8 BattleScript_StatUp[];
|
||||
extern const u8 BattleScript_StatDown[];
|
||||
extern const u8 BattleScript_AlreadyAtFullHp[];
|
||||
extern const u8 BattleScript_PresentHealTarget[];
|
||||
extern const u8 BattleScript_MoveUsedMustRecharge[];
|
||||
extern const u8 BattleScript_FaintAttacker[];
|
||||
extern const u8 BattleScript_FaintTarget[];
|
||||
extern const u8 BattleScript_GiveExp[];
|
||||
extern const u8 BattleScript_HandleFaintedMon[];
|
||||
extern const u8 BattleScript_LocalTrainerBattleWon[];
|
||||
extern const u8 BattleScript_LocalTwoTrainersDefeated[];
|
||||
extern const u8 BattleScript_LocalBattleWonLoseTexts[];
|
||||
extern const u8 BattleScript_LocalBattleWonReward[];
|
||||
extern const u8 BattleScript_PayDayMoneyAndPickUpItems[];
|
||||
extern const u8 BattleScript_LocalBattleLost[];
|
||||
extern const u8 BattleScript_LocalBattleLostPrintWhiteOut[];
|
||||
extern const u8 BattleScript_LocalBattleLostEnd[];
|
||||
extern const u8 BattleScript_CheckDomeDrew[];
|
||||
extern const u8 BattleScript_82DAA0B[];
|
||||
extern const u8 BattleScript_82DAA31[];
|
||||
extern const u8 BattleScript_LinkBattleWonOrLost[];
|
||||
extern const u8 BattleScript_82DAA5C[];
|
||||
extern const u8 BattleScript_82DAA83[];
|
||||
extern const u8 BattleScript_FrontierTrainerBattleWon[];
|
||||
extern const u8 BattleScript_82DAAAB[];
|
||||
extern const u8 BattleScript_82DAAAE[];
|
||||
extern const u8 BattleScript_82DAACB[];
|
||||
extern const u8 BattleScript_82DAADA[];
|
||||
extern const u8 BattleScript_SmokeBallEscape[];
|
||||
extern const u8 BattleScript_RanAwayUsingMonAbility[];
|
||||
extern const u8 BattleScript_GotAwaySafely[];
|
||||
extern const u8 BattleScript_WildMonFled[];
|
||||
extern const u8 BattleScript_PrintCantRunFromTrainer[];
|
||||
extern const u8 BattleScript_PrintFailedToRunString[];
|
||||
extern const u8 BattleScript_PrintCantEscapeFromBattle[];
|
||||
extern const u8 BattleScript_PrintFullBox[];
|
||||
extern const u8 BattleScript_ActionSwitch[];
|
||||
extern const u8 BattleScript_82DAB35[];
|
||||
extern const u8 BattleScript_82DAB37[];
|
||||
extern const u8 BattleScript_82DAB44[];
|
||||
extern const u8 BattleScript_82DAB77[];
|
||||
extern const u8 BattleScript_82DABB8[];
|
||||
extern const u8 BattleScript_Pausex20[];
|
||||
extern const u8 BattleScript_LevelUp[];
|
||||
extern const u8 BattleScript_RainContinuesOrEnds[];
|
||||
extern const u8 BattleScript_DamagingWeatherContinues[];
|
||||
extern const u8 BattleScript_SandStormHailEnds[];
|
||||
extern const u8 BattleScript_SunlightContinues[];
|
||||
extern const u8 BattleScript_SunlightFaded[];
|
||||
extern const u8 BattleScript_OverworldWeatherStarts[];
|
||||
extern const u8 BattleScript_SideStatusWoreOff[];
|
||||
extern const u8 BattleScript_SafeguardProtected[];
|
||||
extern const u8 BattleScript_SafeguardEnds[];
|
||||
extern const u8 BattleScript_LeechSeedTurnDrain[];
|
||||
extern const u8 BattleScript_82DAD47[];
|
||||
extern const u8 BattleScript_82DAD4D[];
|
||||
extern const u8 BattleScript_BideStoringEnergy[];
|
||||
extern const u8 BattleScript_BideAttack[];
|
||||
extern const u8 BattleScript_BideNoEnergyToAttack[];
|
||||
extern const u8 BattleScript_SuccessForceOut[];
|
||||
extern const u8 BattleScript_82DADF1[];
|
||||
extern const u8 BattleScript_MistProtected[];
|
||||
extern const u8 BattleScript_RageIsBuilding[];
|
||||
extern const u8 BattleScript_MoveUsedIsDisabled[];
|
||||
extern const u8 BattleScript_SelectingDisabledMove[];
|
||||
extern const u8 BattleScript_DisabledNoMore[];
|
||||
extern const u8 BattleScript_SelectingDisabledMoveInPalace[];
|
||||
extern const u8 BattleScript_SelectingUnusableMoveInPalace[];
|
||||
extern const u8 BattleScript_EncoredNoMore[];
|
||||
extern const u8 BattleScript_DestinyBondTakesLife[];
|
||||
extern const u8 BattleScript_SpikesOnAttacker[];
|
||||
extern const u8 BattleScript_82DAE7A[];
|
||||
extern const u8 BattleScript_SpikesOnTarget[];
|
||||
extern const u8 BattleScript_82DAEB1[];
|
||||
extern const u8 BattleScript_SpikesOnFaintedBattler[];
|
||||
extern const u8 BattleScript_82DAEE8[];
|
||||
extern const u8 BattleScript_82DAEFE[];
|
||||
extern const u8 BattleScript_PerishSongTakesLife[];
|
||||
extern const u8 BattleScript_PerishSongCountGoesDown[];
|
||||
extern const u8 BattleScript_AllStatsUp[];
|
||||
extern const u8 BattleScript_82DAF54[];
|
||||
extern const u8 BattleScript_82DAF72[];
|
||||
extern const u8 BattleScript_82DAF86[];
|
||||
extern const u8 BattleScript_82DAF9A[];
|
||||
extern const u8 BattleScript_82DAFAE[];
|
||||
extern const u8 BattleScript_82DAFC2[];
|
||||
extern const u8 BattleScript_RapidSpinAway[];
|
||||
extern const u8 BattleScript_WrapFree[];
|
||||
extern const u8 BattleScript_LeechSeedFree[];
|
||||
extern const u8 BattleScript_SpikesFree[];
|
||||
extern const u8 BattleScript_MonTookFutureAttack[];
|
||||
extern const u8 BattleScript_82DB001[];
|
||||
extern const u8 BattleScript_82DB008[];
|
||||
extern const u8 BattleScript_82DB020[];
|
||||
extern const u8 BattleScript_82DB027[];
|
||||
extern const u8 BattleScript_82DB03F[];
|
||||
extern const u8 BattleScript_82DB058[];
|
||||
extern const u8 BattleScript_NoMovesLeft[];
|
||||
extern const u8 BattleScript_SelectingMoveWithNoPP[];
|
||||
extern const u8 BattleScript_NoPPForMove[];
|
||||
extern const u8 BattleScript_SelectingTormentedMove[];
|
||||
extern const u8 BattleScript_MoveUsedIsTormented[];
|
||||
extern const u8 BattleScript_SelectingTormentedMoveInPalace[];
|
||||
extern const u8 BattleScript_SelectingNotAllowedMoveTaunt[];
|
||||
extern const u8 BattleScript_MoveUsedIsTaunted[];
|
||||
extern const u8 BattleScript_SelectingNotAllowedMoveTauntInPalace[];
|
||||
extern const u8 BattleScript_WishComesTrue[];
|
||||
extern const u8 BattleScript_IngrainTurnHeal[];
|
||||
extern const u8 BattleScript_AtkDefDown[];
|
||||
extern const u8 BattleScript_82DB144[];
|
||||
extern const u8 BattleScript_82DB167[];
|
||||
extern const u8 BattleScript_KnockedOff[];
|
||||
extern const u8 BattleScript_MoveUsedIsImprisoned[];
|
||||
extern const u8 BattleScript_SelectingImprisionedMove[];
|
||||
extern const u8 BattleScript_SelectingImprisionedMoveInPalace[];
|
||||
extern const u8 BattleScript_GrudgeTakesPp[];
|
||||
extern const u8 BattleScript_MagicCoatBounce[];
|
||||
extern const u8 BattleScript_SnatchedMove[];
|
||||
extern const u8 BattleScript_EnduredMsg[];
|
||||
extern const u8 BattleScript_OneHitKOMsg[];
|
||||
extern const u8 BattleScript_SAtkDown2[];
|
||||
extern const u8 BattleScript_82DB1FE[];
|
||||
extern const u8 BattleScript_FocusPunchSetUp[];
|
||||
extern const u8 BattleScript_MoveUsedIsAsleep[];
|
||||
extern const u8 BattleScript_MoveUsedWokeUp[];
|
||||
extern const u8 BattleScript_MonWokeUpInUproar[];
|
||||
extern const u8 BattleScript_PoisonTurnDmg[];
|
||||
extern const u8 BattleScript_82DB243[];
|
||||
extern const u8 BattleScript_82DB245[];
|
||||
extern const u8 BattleScript_82DB25E[];
|
||||
extern const u8 BattleScript_BurnTurnDmg[];
|
||||
extern const u8 BattleScript_MoveUsedIsFrozen[];
|
||||
extern const u8 BattleScript_MoveUsedUnfroze[];
|
||||
extern const u8 BattleScript_DefrostedViaFireMove[];
|
||||
extern const u8 BattleScript_MoveUsedIsParalyzed[];
|
||||
extern const u8 BattleScript_MoveUsedFlinched[];
|
||||
extern const u8 BattleScript_PrintUproarOverTurns[];
|
||||
extern const u8 BattleScript_ThrashConfuses[];
|
||||
extern const u8 BattleScript_MoveUsedIsConfused[];
|
||||
extern const u8 BattleScript_82DB2D4[];
|
||||
extern const u8 BattleScript_82DB2FF[];
|
||||
extern const u8 BattleScript_MoveUsedIsConfusedNoMore[];
|
||||
extern const u8 BattleScript_PrintPayDayMoneyString[];
|
||||
extern const u8 BattleScript_WrapTurnDmg[];
|
||||
extern const u8 BattleScript_WrapEnds[];
|
||||
extern const u8 BattleScript_MoveUsedIsInLove[];
|
||||
extern const u8 BattleScript_MoveUsedIsParalyzedCantAttack[];
|
||||
extern const u8 BattleScript_NightmareTurnDmg[];
|
||||
extern const u8 BattleScript_CurseTurnDmg[];
|
||||
extern const u8 BattleScript_TargetPRLZHeal[];
|
||||
extern const u8 BattleScript_MoveEffectSleep[];
|
||||
extern const u8 BattleScript_82DB374[];
|
||||
extern const u8 BattleScript_YawnMakesAsleep[];
|
||||
extern const u8 BattleScript_MoveEffectPoison[];
|
||||
extern const u8 BattleScript_MoveEffectBurn[];
|
||||
extern const u8 BattleScript_MoveEffectFreeze[];
|
||||
extern const u8 BattleScript_MoveEffectParalysis[];
|
||||
extern const u8 BattleScript_MoveEffectUproar[];
|
||||
extern const u8 BattleScript_MoveEffectToxic[];
|
||||
extern const u8 BattleScript_MoveEffectPayDay[];
|
||||
extern const u8 BattleScript_MoveEffectWrap[];
|
||||
extern const u8 BattleScript_MoveEffectConfusion[];
|
||||
extern const u8 BattleScript_MoveEffectRecoil33[];
|
||||
extern const u8 BattleScript_DoRecoil33[];
|
||||
extern const u8 BattleScript_Recoil33End[];
|
||||
extern const u8 BattleScript_ItemSteal[];
|
||||
extern const u8 BattleScript_DrizzleActivates[];
|
||||
extern const u8 BattleScript_SpeedBoostActivates[];
|
||||
extern const u8 BattleScript_TraceActivates[];
|
||||
extern const u8 BattleScript_RainDishActivates[];
|
||||
extern const u8 BattleScript_SandstreamActivates[];
|
||||
extern const u8 BattleScript_ShedSkinActivates[];
|
||||
extern const u8 BattleScript_WeatherFormChanges[];
|
||||
extern const u8 BattleScript_WeatherFormChangesLoop[];
|
||||
extern const u8 BattleScript_CastformChange[];
|
||||
extern const u8 BattleScript_82DB4AF[];
|
||||
extern const u8 BattleScript_82DB4B8[];
|
||||
extern const u8 BattleScript_82DB4BE[];
|
||||
extern const u8 BattleScript_82DB4C1[];
|
||||
extern const u8 BattleScript_82DB4CD[];
|
||||
extern const u8 BattleScript_82DB510[];
|
||||
extern const u8 BattleScript_82DB51B[];
|
||||
extern const u8 BattleScript_82DB51C[];
|
||||
extern const u8 BattleScript_DroughtActivates[];
|
||||
extern const u8 BattleScript_TookAttack[];
|
||||
extern const u8 BattleScript_SturdyPreventsOHKO[];
|
||||
extern const u8 BattleScript_DampStopsExplosion[];
|
||||
extern const u8 BattleScript_MoveHPDrain_PPLoss[];
|
||||
extern const u8 BattleScript_MoveHPDrain[];
|
||||
extern const u8 BattleScript_MonMadeMoveUseless_PPLoss[];
|
||||
extern const u8 BattleScript_MonMadeMoveUseless[];
|
||||
extern const u8 BattleScript_FlashFireBoost_PPLoss[];
|
||||
extern const u8 BattleScript_FlashFireBoost[];
|
||||
extern const u8 BattleScript_AbilityNoStatLoss[];
|
||||
extern const u8 BattleScript_BRNPrevention[];
|
||||
extern const u8 BattleScript_PRLZPrevention[];
|
||||
extern const u8 BattleScript_PSNPrevention[];
|
||||
extern const u8 BattleScript_ObliviousPreventsAttraction[];
|
||||
extern const u8 BattleScript_FlinchPrevention[];
|
||||
extern const u8 BattleScript_OwnTempoPrevents[];
|
||||
extern const u8 BattleScript_SoundproofProtected[];
|
||||
extern const u8 BattleScript_AbilityNoSpecificStatLoss[];
|
||||
extern const u8 BattleScript_StickyHoldActivates[];
|
||||
extern const u8 BattleScript_ColorChangeActivates[];
|
||||
extern const u8 BattleScript_RoughSkinActivates[];
|
||||
extern const u8 BattleScript_CuteCharmActivates[];
|
||||
extern const u8 BattleScript_ApplySecondaryEffect[];
|
||||
extern const u8 BattleScript_SynchronizeActivates[];
|
||||
extern const u8 BattleScript_NoItemSteal[];
|
||||
extern const u8 BattleScript_AbilityCuredStatus[];
|
||||
extern const u8 BattleScript_82DB695[];
|
||||
extern const u8 BattleScript_IgnoresAndUsesRandomMove[];
|
||||
extern const u8 BattleScript_MoveUsedLoafingAround[];
|
||||
extern const u8 BattleScript_82DB6C7[];
|
||||
extern const u8 BattleScript_IgnoresAndFallsAsleep[];
|
||||
extern const u8 BattleScript_82DB6F0[];
|
||||
extern const u8 BattleScript_SubstituteFade[];
|
||||
extern const u8 BattleScript_BerryCurePrlzEnd2[];
|
||||
extern const u8 BattleScript_BerryCureParRet[];
|
||||
extern const u8 BattleScript_BerryCurePsnEnd2[];
|
||||
extern const u8 BattleScript_BerryCurePsnRet[];
|
||||
extern const u8 BattleScript_BerryCureBrnEnd2[];
|
||||
extern const u8 BattleScript_BerryCureBrnRet[];
|
||||
extern const u8 BattleScript_BerryCureFrzEnd2[];
|
||||
extern const u8 BattleScript_BerryCureFrzRet[];
|
||||
extern const u8 BattleScript_BerryCureSlpEnd2[];
|
||||
extern const u8 BattleScript_BerryCureSlpRet[];
|
||||
extern const u8 BattleScript_BerryCureConfusionEnd2[];
|
||||
extern const u8 BattleScript_BerryCureConfusionRet[];
|
||||
extern const u8 BattleScript_BerryCureChosenStatusEnd2[];
|
||||
extern const u8 BattleScript_BerryCureChosenStatusRet[];
|
||||
extern const u8 BattleScript_WhiteHerbEnd2[];
|
||||
extern const u8 BattleScript_WhiteHerbRet[];
|
||||
extern const u8 BattleScript_ItemHealHP_RemoveItem[];
|
||||
extern const u8 BattleScript_BerryPPHealEnd2[];
|
||||
extern const u8 BattleScript_ItemHealHP_End2[];
|
||||
extern const u8 BattleScript_ItemHealHP_Ret[];
|
||||
extern const u8 BattleScript_SelectingNotAllowedMoveChoiceItem[];
|
||||
extern const u8 BattleScript_HangedOnMsg[];
|
||||
extern const u8 BattleScript_BerryConfuseHealEnd2[];
|
||||
extern const u8 BattleScript_BerryStatRaiseEnd2[];
|
||||
extern const u8 BattleScript_82DB85B[];
|
||||
extern const u8 BattleScript_BerryFocusEnergyEnd2[];
|
||||
extern const u8 BattleScript_ActionSelectionItemsCantBeUsed[];
|
||||
extern const u8 BattleScript_82DB87D[];
|
||||
extern const u8 BattleScript_82DB881[];
|
||||
extern const u8 BattleScript_82DB887[];
|
||||
extern const u8 BattleScript_82DB89D[];
|
||||
extern const u8 BattleScript_82DB8BE[];
|
||||
extern const u8 BattleScript_82DB8E0[];
|
||||
extern const u8 BattleScript_82DB8F3[];
|
||||
extern const u8 BattleScript_82DB973[];
|
||||
extern const u8 BattleScript_82DB992[];
|
||||
extern const u8 BattleScript_AskIfWantsToForfeitMatch[];
|
||||
extern const u8 BattleScript_PrintPlayerForfeited[];
|
||||
extern const u8 BattleScript_PrintPlayerForfeitedLinkBattle[];
|
||||
extern const u8 BattleScript_BallThrow[];
|
||||
extern const u8 BattleScript_BallThrowByWally[];
|
||||
extern const u8 BattleScript_SafariBallThrow[];
|
||||
extern const u8 BattleScript_SuccessBallThrow[];
|
||||
extern const u8 BattleScript_82DBD92[];
|
||||
extern const u8 BattleScript_82DBDA5[];
|
||||
extern const u8 BattleScript_82DBDC2[];
|
||||
extern const u8 BattleScript_82DBDC3[];
|
||||
extern const u8 BattleScript_WallyBallThrow[];
|
||||
extern const u8 BattleScript_ShakeBallThrow[];
|
||||
extern const u8 BattleScript_82DBE01[];
|
||||
extern const u8 BattleScript_TrainerBallBlock[];
|
||||
extern const u8 BattleScript_82DBE12[];
|
||||
extern const u8 BattleScript_82DBE1C[];
|
||||
extern const u8 BattleScript_82DBE4B[];
|
||||
extern const u8 BattleScript_82DBE6F[];
|
||||
extern const u8 BattleScript_82DBE91[];
|
||||
extern const u8 BattleScript_RunByUsingItem[];
|
||||
extern const u8 BattleScript_ActionWatchesCarefully[];
|
||||
extern const u8 BattleScript_ActionGetNear[];
|
||||
extern const u8 BattleScript_ActionThrowPokeblock[];
|
||||
extern const u8 BattleScript_82DBEE3[];
|
||||
|
||||
#endif // GUARD_BATTLE_SCRIPTS_H
|
||||
@@ -1,15 +1,85 @@
|
||||
#ifndef GUARD_BATTLE_SETUP_H
|
||||
#define GUARD_BATTLE_SETUP_H
|
||||
|
||||
void BattleSetup_StartScriptedWildBattle(void);
|
||||
u8 BattleSetup_GetTerrainId(void);
|
||||
u8 *BattleSetup_ConfigureTrainerBattle(const u8 *data);
|
||||
enum
|
||||
{
|
||||
TRAINER_BATTLE_NORMAL,
|
||||
TRAINER_BATTLE_CONTINUE_SCRIPT_NO_MUSIC,
|
||||
TRAINER_BATTLE_CONTINUE_SCRIPT,
|
||||
TRAINER_BATTLE_NORMAL_NO_INTRO_TEXT,
|
||||
TRAINER_BATTLE_DOUBLE,
|
||||
TRAINER_BATTLE_REMATCH,
|
||||
TRAINER_BATTLE_CONTINUE_SCRIPT_DOUBLE,
|
||||
TRAINER_BATTLE_REMATCH_DOUBLE,
|
||||
TRAINER_BATTLE_CONTINUE_SCRIPT_DOUBLE_NO_MUSIC,
|
||||
TRAINER_BATTLE_9,
|
||||
TRAINER_BATTLE_SET_TRAINER_A,
|
||||
TRAINER_BATTLE_SET_TRAINER_B,
|
||||
TRAINER_BATTLE_12,
|
||||
};
|
||||
|
||||
u8 HasTrainerAlreadyBeenFought(u16);
|
||||
void trainer_flag_set(u16);
|
||||
void trainer_flag_clear(u16);
|
||||
#define REMATCHES_COUNT 5
|
||||
#define REMATCH_TABLE_ENTRIES 78
|
||||
#define REMATCH_WALLY_ENTRY 64
|
||||
#define REMATCH_ELITE_FOUR_ENTRIES 73
|
||||
|
||||
struct RematchTrainer
|
||||
{
|
||||
u16 trainerIds[REMATCHES_COUNT];
|
||||
u16 mapGroup;
|
||||
u16 mapNum;
|
||||
};
|
||||
|
||||
extern const struct RematchTrainer gRematchTable[REMATCH_TABLE_ENTRIES];
|
||||
|
||||
extern u16 gTrainerBattleOpponent_A;
|
||||
extern u16 gTrainerBattleOpponent_B;
|
||||
extern u16 gPartnerTrainerId;
|
||||
|
||||
void BattleSetup_StartWildBattle(void);
|
||||
void BattleSetup_StartBattlePikeWildBattle(void);
|
||||
void BattleSetup_StartRoamerBattle(void);
|
||||
void StartWallyTutorialBattle(void);
|
||||
void BattleSetup_StartScriptedWildBattle(void);
|
||||
void BattleSetup_StartLatiBattle(void);
|
||||
void BattleSetup_StartLegendaryBattle(void);
|
||||
void StartGroudonKyogreBattle(void);
|
||||
void StartRegiBattle(void);
|
||||
u8 BattleSetup_GetTerrainId(void);
|
||||
u8 sub_80B100C(s32 arg0);
|
||||
void ChooseStarter(void);
|
||||
void ResetTrainerOpponentIds(void);
|
||||
void SetMapVarsToTrainer(void);
|
||||
const u8 *BattleSetup_ConfigureTrainerBattle(const u8 *data);
|
||||
void ConfigureAndSetUpOneTrainerBattle(u8 trainerMapObjId, const u8 *trainerScript);
|
||||
void ConfigureTwoTrainersBattle(u8 trainerMapObjId, const u8 *trainerScript);
|
||||
void SetUpTwoTrainersBattle(void);
|
||||
bool32 GetTrainerFlagFromScriptPointer(const u8 *data);
|
||||
void sub_80B16D8(void);
|
||||
u8 GetTrainerBattleMode(void);
|
||||
bool8 GetTrainerFlag(void);
|
||||
bool8 HasTrainerBeenFought(u16 trainerId);
|
||||
void SetTrainerFlag(u16 trainerId);
|
||||
void ClearTrainerFlag(u16 trainerId);
|
||||
void BattleSetup_StartTrainerBattle(void);
|
||||
u8 *BattleSetup_GetScriptAddrAfterBattle(void);
|
||||
u8 *BattleSetup_GetTrainerPostBattleScript(void);
|
||||
void BattleSetup_StartRematchBattle(void);
|
||||
void ShowTrainerIntroSpeech(void);
|
||||
const u8 *BattleSetup_GetScriptAddrAfterBattle(void);
|
||||
const u8 *BattleSetup_GetTrainerPostBattleScript(void);
|
||||
void ShowTrainerCantBattleSpeech(void);
|
||||
void SetUpTrainerEncounterMusic(void);
|
||||
const u8 *GetTrainerALoseText(void);
|
||||
const u8 *GetTrainerBLoseText(void);
|
||||
const u8 *GetTrainerWonSpeech(void);
|
||||
void UpdateRematchIfDefeated(s32 rematchTableId);
|
||||
void IncrementRematchStepCounter(void);
|
||||
void TryUpdateRandomTrainerRematches(u16 mapGroup, u16 mapNum);
|
||||
bool32 DoesSomeoneWantRematchIn(u16 mapGroup, u16 mapNum);
|
||||
bool32 IsRematchTrainerIn(u16 mapGroup, u16 mapNum);
|
||||
u16 GetLastBeatenRematchTrainerId(u16 trainerId);
|
||||
bool8 ShouldTryRematchBattle(void);
|
||||
bool8 IsTrainerReadyForRematch(void);
|
||||
void ShouldTryGetTrainerScript(void);
|
||||
u16 CountBattledRematchTeams(u16 trainerId);
|
||||
|
||||
#endif // GUARD_BATTLE_SETUP_H
|
||||
|
||||
@@ -1,6 +1,72 @@
|
||||
#ifndef GUARD_BATTLE_TRANSITION_H
|
||||
#define GUARD_BATTLE_TRANSITION_H
|
||||
|
||||
void sub_8149DFC(u8 a1);
|
||||
void TestBattleTransition(u8 transitionId);
|
||||
void BattleTransition_StartOnField(u8 transitionId);
|
||||
void BattleTransition_Start(u8 transitionId);
|
||||
bool8 IsBattleTransitionDone(void);
|
||||
bool8 FldEff_Pokeball(void);
|
||||
void TransitionPhase1_Task_RunFuncs(u8 taskId);
|
||||
void sub_8149F58(u16 **a0, u16 **a1);
|
||||
|
||||
extern const struct SpritePalette gFieldEffectObjectPaletteInfo10;
|
||||
|
||||
enum // TRANSITION_MUGSHOT
|
||||
{
|
||||
MUGSHOT_SYDNEY,
|
||||
MUGSHOT_PHOEBE,
|
||||
MUGSHOT_GLACIA,
|
||||
MUGSHOT_DRAKE,
|
||||
MUGSHOT_CHAMPION,
|
||||
MUGSHOTS_COUNT
|
||||
};
|
||||
|
||||
// credits for the names go to Dyskinesia, Tetrable and Farore
|
||||
// names are naturally subject to change
|
||||
|
||||
#define B_TRANSITION_BLUR 0
|
||||
#define B_TRANSITION_SWIRL 1
|
||||
#define B_TRANSITION_SHUFFLE 2
|
||||
#define B_TRANSITION_BIG_POKEBALL 3
|
||||
#define B_TRANSITION_POKEBALLS_TRAIL 4
|
||||
#define B_TRANSITION_CLOCKWISE_BLACKFADE 5
|
||||
#define B_TRANSITION_RIPPLE 6
|
||||
#define B_TRANSITION_WAVE 7
|
||||
#define B_TRANSITION_SLICE 8
|
||||
#define B_TRANSITION_WHITEFADE 9
|
||||
#define B_TRANSITION_GRID_SQUARES 10
|
||||
#define B_TRANSITION_SHARDS 11
|
||||
#define B_TRANSITION_SYDNEY 12
|
||||
#define B_TRANSITION_PHOEBE 13
|
||||
#define B_TRANSITION_GLACIA 14
|
||||
#define B_TRANSITION_DRAKE 15
|
||||
#define B_TRANSITION_CHAMPION 16
|
||||
// added in Emerald
|
||||
#define B_TRANSITION_AQUA 17
|
||||
#define B_TRANSITION_MAGMA 18
|
||||
#define B_TRANSITION_REGICE 19
|
||||
#define B_TRANSITION_REGISTEEL 20
|
||||
#define B_TRANSITION_REGIROCK 21
|
||||
#define B_TRANSITION_KYOGRE 22
|
||||
#define B_TRANSITION_GROUDON 23
|
||||
#define B_TRANSITION_RAYQUAZA 24
|
||||
#define B_TRANSITION_SHRED_SPLIT 25
|
||||
#define B_TRANSITION_BLACKHOLE1 26
|
||||
#define B_TRANSITION_BLACKHOLE2 27
|
||||
#define B_TRANSITION_RECTANGULAR_SPIRAL 28
|
||||
#define B_TRANSITION_29 29
|
||||
#define B_TRANSITION_30 30
|
||||
#define B_TRANSITION_31 31
|
||||
#define B_TRANSITION_32 32
|
||||
#define B_TRANSITION_33 33
|
||||
#define B_TRANSITION_34 34
|
||||
#define B_TRANSITION_35 35
|
||||
#define B_TRANSITION_36 36
|
||||
#define B_TRANSITION_37 37
|
||||
#define B_TRANSITION_38 38
|
||||
#define B_TRANSITION_39 39
|
||||
#define B_TRANSITION_40 40
|
||||
#define B_TRANSITION_41 41
|
||||
#define B_TRANSITION_COUNT 42
|
||||
|
||||
#endif // GUARD_BATTLE_TRANSITION_H
|
||||
|
||||
@@ -44,12 +44,12 @@
|
||||
#define BS_GET_PLAYER2 13
|
||||
#define BS_GET_OPPONENT2 14
|
||||
|
||||
u8 GetBattleBank(u8 caseId);
|
||||
u8 GetBattlerForBattleScript(u8 caseId);
|
||||
void PressurePPLose(u8 bankDef, u8 bankAtk, u16 move);
|
||||
void PressurePPLoseOnUsingPerishSong(u8 bankAtk);
|
||||
void PressurePPLoseOnUsingImprision(u8 bankAtk);
|
||||
void MarkAllBufferBanksForExecution(void); // unused
|
||||
void MarkBufferBankForExecution(u8 bank);
|
||||
void MarkAllBattlersForControllerExec(void); // unused
|
||||
void MarkBattlerForControllerExec(u8 bank);
|
||||
void sub_803F850(u8 arg0);
|
||||
void CancelMultiTurnMoves(u8 bank);
|
||||
bool8 WasUnableToUseMove(u8 bank);
|
||||
@@ -66,8 +66,8 @@ bool8 AreAllMovesUnusable(void);
|
||||
u8 GetImprisonedMovesCount(u8 bank, u16 move);
|
||||
u8 UpdateTurnCounters(void);
|
||||
u8 TurnBasedEffects(void);
|
||||
bool8 sub_8041364(void);
|
||||
bool8 sub_8041728(void);
|
||||
bool8 HandleWishPerishSongOnTurnEnd(void);
|
||||
bool8 HandleFaintedMonActions(void);
|
||||
void TryClearRageStatuses(void);
|
||||
u8 AtkCanceller_UnableToUseMove(void);
|
||||
bool8 sub_80423F4(u8 bank, u8 r1, u8 r2);
|
||||
@@ -79,6 +79,6 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn);
|
||||
void ClearFuryCutterDestinyBondGrudge(u8 bank);
|
||||
void HandleAction_RunBattleScript(void);
|
||||
u8 GetMoveTarget(u16 move, u8 useMoveTarget);
|
||||
u8 IsPokeDisobedient(void);
|
||||
u8 IsMonDisobedient(void);
|
||||
|
||||
#endif // GUARD_BATTLE_UTIL_H
|
||||
|
||||
10
include/battle_util2.h
Normal file
10
include/battle_util2.h
Normal file
@@ -0,0 +1,10 @@
|
||||
#ifndef GUARD_BATTLE_UTIL2_H
|
||||
#define GUARD_BATTLE_UTIL2_H
|
||||
|
||||
void AllocateBattleResources(void);
|
||||
void FreeBattleResources(void);
|
||||
void AdjustFriendshipOnBattleFaint(u8 bank);
|
||||
void sub_80571DC(u8 bank, u8 arg1);
|
||||
u32 sub_805725C(u8 bank);
|
||||
|
||||
#endif // GUARD_BATTLE_UTIL_H
|
||||
@@ -11,6 +11,16 @@ enum
|
||||
BERRY_FIRMNESS_SUPER_HARD,
|
||||
};
|
||||
|
||||
enum
|
||||
{
|
||||
FLAVOR_SPICY,
|
||||
FLAVOR_DRY,
|
||||
FLAVOR_SWEET,
|
||||
FLAVOR_BITTER,
|
||||
FLAVOR_SOUR,
|
||||
FLAVOR_COUNT
|
||||
};
|
||||
|
||||
#define NUM_BERRIES 44
|
||||
|
||||
extern const u8 *const gBerryTreeFieldObjectGraphicsIdTablePointers[NUM_BERRIES];
|
||||
|
||||
8
include/berry_blender.h
Normal file
8
include/berry_blender.h
Normal file
@@ -0,0 +1,8 @@
|
||||
#ifndef GUARD_BERRY_BLENDER_H
|
||||
#define GUARD_BERRY_BLENDER_H
|
||||
|
||||
void DoBerryBlending(void);
|
||||
u16 GetBlenderArrowPosition(void);
|
||||
void ShowBerryBlenderRecordWindow(void);
|
||||
|
||||
#endif // GUARD_BERRY_BLENDER_H
|
||||
6
include/berry_fix_program.h
Normal file
6
include/berry_fix_program.h
Normal file
@@ -0,0 +1,6 @@
|
||||
#ifndef GUARD_BERRY_FIX_PROGRAM_H
|
||||
#define GUARD_BERRY_FIX_PROGRAM_H
|
||||
|
||||
void CB2_InitBerryFixProgram(void);
|
||||
|
||||
#endif // GUARD_BERRY_FIX_PROGRAM_H
|
||||
6
include/berry_tag_screen.h
Normal file
6
include/berry_tag_screen.h
Normal file
@@ -0,0 +1,6 @@
|
||||
#ifndef GUARD_BERRY_TAG_SCREEN_H
|
||||
#define GUARD_BERRY_TAG_SCREEN_H
|
||||
|
||||
void DoBerryTagScreen(void);
|
||||
|
||||
#endif // GUARD_BERRY_TAG_SCREEN_H
|
||||
@@ -70,7 +70,7 @@ void CopyToBgTilemapBuffer(u8 bg, const void *src, u16 mode, u16 destOffset);
|
||||
void CopyBgTilemapBufferToVram(u8 bg);
|
||||
void CopyToBgTilemapBufferRect(u8 bg, void* src, u8 destX, u8 destY, u8 width, u8 height);
|
||||
void CopyToBgTilemapBufferRect_ChangePalette(u8 bg, void *src, u8 destX, u8 destY, u8 rectWidth, u8 rectHeight, u8 palette);
|
||||
void CopyRectToBgTilemapBufferRect(u8 bg, void* src, u8 srcX, u8 srcY, u8 srcWidth, u8 srcHeight, u8 destX, u8 destY, u8 rectWidth, u8 rectHeight, u8 palette1, u16 tileOffset, u16 palette2);
|
||||
void CopyRectToBgTilemapBufferRect(u8 bg, const void *src, u8 srcX, u8 srcY, u8 srcWidth, u8 srcHeight, u8 destX, u8 destY, u8 rectWidth, u8 rectHeight, u8 palette1, u16 tileOffset, u16 palette2);
|
||||
void FillBgTilemapBufferRect_Palette0(u8 bg, u16 tileNum, u8 x, u8 y, u8 width, u8 height);
|
||||
void FillBgTilemapBufferRect(u8 bg, u16 tileNum, u8 x, u8 y, u8 width, u8 height, u8 palette);
|
||||
void WriteSequenceToBgTilemapBuffer(u8 bg, u16 firstTileNum, u8 x, u8 y, u8 width, u8 height, u8 paletteSlot, s16 tileNumDelta);
|
||||
|
||||
78
include/bike.h
Normal file
78
include/bike.h
Normal file
@@ -0,0 +1,78 @@
|
||||
#ifndef GUARD_BIKE_H
|
||||
#define GUARD_BIKE_H
|
||||
|
||||
// the struct below is used for checking button combinations of the last input so that the acro can potentially perform a side/turn jump.
|
||||
// its possible that at some point Game Freak intended for the acro bike to have more complex tricks: but only the acro jump combinations can be seen in the final ROM.
|
||||
struct BikeHistoryInputInfo
|
||||
{
|
||||
u32 dirHistoryMatch; // the direction you need to press
|
||||
u32 abStartSelectHistoryMatch; // the button you need to press
|
||||
u32 dirHistoryMask; // mask applied so that way only the recent nybble (the recent input) is checked
|
||||
u32 abStartSelectHistoryMask; // mask applied so that way only the recent nybble (the recent input) is checked
|
||||
const u8 *dirTimerHistoryList; // list of timers to check for direction before the button+dir combination can be verified.
|
||||
const u8 *abStartSelectHistoryList; // list of timers to check for buttons before the button+dir combination can be verified.
|
||||
u32 direction; // direction to jump
|
||||
};
|
||||
|
||||
// Player speeds
|
||||
enum
|
||||
{
|
||||
SPEED_STANDING,
|
||||
SPEED_NORMAL,
|
||||
SPEED_FAST,
|
||||
SPEED_FASTER,
|
||||
SPEED_FASTEST,
|
||||
};
|
||||
|
||||
// mach bike transitions enum
|
||||
enum
|
||||
{
|
||||
MACH_TRANS_FACE_DIRECTION,
|
||||
MACH_TRANS_TURN_DIRECTION,
|
||||
MACH_TRANS_KEEP_MOVING,
|
||||
MACH_TRANS_START_MOVING
|
||||
};
|
||||
|
||||
// Acro bike states
|
||||
enum
|
||||
{
|
||||
ACRO_STATE_NORMAL,
|
||||
ACRO_STATE_TURNING,
|
||||
ACRO_STATE_WHEELIE_STANDING,
|
||||
ACRO_STATE_BUNNY_HOP,
|
||||
ACRO_STATE_WHEELIE_MOVING,
|
||||
ACRO_STATE_SIDE_JUMP,
|
||||
ACRO_STATE_TURN_JUMP,
|
||||
};
|
||||
|
||||
// Acro bike transitions
|
||||
enum
|
||||
{
|
||||
ACRO_TRANS_FACE_DIRECTION,
|
||||
ACRO_TRANS_TURN_DIRECTION,
|
||||
ACRO_TRANS_MOVING,
|
||||
ACRO_TRANS_NORMAL_TO_WHEELIE,
|
||||
ACRO_TRANS_WHEELIE_TO_NORMAL,
|
||||
ACRO_TRANS_WHEELIE_IDLE,
|
||||
ACRO_TRANS_WHEELIE_HOPPING_STANDING,
|
||||
ACRO_TRANS_WHEELIE_HOPPING_MOVING,
|
||||
ACRO_TRANS_SIDE_JUMP,
|
||||
ACRO_TRANS_TURN_JUMP,
|
||||
ACRO_TRANS_WHEELIE_MOVING,
|
||||
ACRO_TRANS_WHEELIE_RISING_MOVING,
|
||||
ACRO_TRANS_WHEELIE_LOWERING_MOVING,
|
||||
};
|
||||
|
||||
void MovePlayerOnBike(u8 direction, u16 newKeys, u16 heldKeys);
|
||||
void Bike_TryAcroBikeHistoryUpdate(u16 newKeys, u16 heldKeys);
|
||||
bool8 RS_IsRunningDisallowed(u8 tile);
|
||||
bool8 IsBikingDisallowedByPlayer(void);
|
||||
bool8 player_should_look_direction_be_enforced_upon_movement(void);
|
||||
void GetOnOffBike(u8 transitionFlags);
|
||||
void BikeClearState(int newDirHistory, int newAbStartHistory);
|
||||
void Bike_UpdateBikeCounterSpeed(u8 counter);
|
||||
s16 GetPlayerSpeed(void);
|
||||
void Bike_HandleBumpySlopeJump(void);
|
||||
bool32 IsRunningDisallowed(u8 metatile);
|
||||
|
||||
#endif // GUARD_BIKE_H
|
||||
@@ -1,12 +1,6 @@
|
||||
#ifndef GUARD_BLEND_PALETTE_H
|
||||
#define GUARD_BLEND_PALETTE_H
|
||||
|
||||
// Exported type declarations
|
||||
void BlendPalette(u16 palOffset, u16 numEntries, u8 coeff, u16 blendColor);
|
||||
|
||||
// Exported RAM declarations
|
||||
|
||||
// Exported ROM declarations
|
||||
|
||||
void BlendPalette(u16, u16, u8, u16);
|
||||
|
||||
#endif //GUARD_BLEND_PALETTE_H
|
||||
#endif // GUARD_BLEND_PALETTE_H
|
||||
|
||||
6
include/clear_save_data_menu.h
Normal file
6
include/clear_save_data_menu.h
Normal file
@@ -0,0 +1,6 @@
|
||||
#ifndef GUARD_CLEAR_SAVE_DATA_MENU_H
|
||||
#define GUARD_CLEAR_SAVE_DATA_MENU_H
|
||||
|
||||
void CB2_InitClearSaveDataScreen(void);
|
||||
|
||||
#endif // GUARD_CLEAR_SAVE_DATA_MENU_H
|
||||
@@ -1,6 +1,23 @@
|
||||
#ifndef GUARD_CONFIG_H
|
||||
#define GUARD_CONFIG_H
|
||||
|
||||
// In the Generation 3 games, Asserts were used in various debug builds.
|
||||
// Ruby/Sapphire and Emerald do not have these asserts while Fire Red
|
||||
// still has them in the ROM. This is because the developers forgot
|
||||
// to define NDEBUG before release, however this has been changed as
|
||||
// Ruby's actual debug build does not use the AGBPrint features.
|
||||
#define NDEBUG
|
||||
|
||||
// To enable print debugging, comment out "#define NDEBUG". This allows
|
||||
// the various AGBPrint functions to be used. (See include/gba/isagbprint.h).
|
||||
// Some emulators support a debug console window: uncomment NoCashGBAPrint()
|
||||
// and NoCashGBAPrintf() in libisagbprn.c to use no$gba's own proprietary
|
||||
// printing system. Use NoCashGBAPrint() and NoCashGBAPrintf() like you
|
||||
// would normally use AGBPrint() and AGBPrintf().
|
||||
|
||||
// NOTE: Don't try to enable assert right now as many pointers
|
||||
// still exist in defines and WILL likely result in a broken ROM.
|
||||
|
||||
#define ENGLISH
|
||||
|
||||
#ifdef ENGLISH
|
||||
|
||||
83
include/constants/abilities.h
Normal file
83
include/constants/abilities.h
Normal file
@@ -0,0 +1,83 @@
|
||||
#ifndef GUARD_CONSTANTS_ABILITIES_H
|
||||
#define GUARD_CONSTANTS_ABILITIES_H
|
||||
|
||||
#define ABILITY_NONE 0
|
||||
#define ABILITY_STENCH 1
|
||||
#define ABILITY_DRIZZLE 2
|
||||
#define ABILITY_SPEED_BOOST 3
|
||||
#define ABILITY_BATTLE_ARMOR 4
|
||||
#define ABILITY_STURDY 5
|
||||
#define ABILITY_DAMP 6
|
||||
#define ABILITY_LIMBER 7
|
||||
#define ABILITY_SAND_VEIL 8
|
||||
#define ABILITY_STATIC 9
|
||||
#define ABILITY_VOLT_ABSORB 10
|
||||
#define ABILITY_WATER_ABSORB 11
|
||||
#define ABILITY_OBLIVIOUS 12
|
||||
#define ABILITY_CLOUD_NINE 13
|
||||
#define ABILITY_COMPOUND_EYES 14
|
||||
#define ABILITY_INSOMNIA 15
|
||||
#define ABILITY_COLOR_CHANGE 16
|
||||
#define ABILITY_IMMUNITY 17
|
||||
#define ABILITY_FLASH_FIRE 18
|
||||
#define ABILITY_SHIELD_DUST 19
|
||||
#define ABILITY_OWN_TEMPO 20
|
||||
#define ABILITY_SUCTION_CUPS 21
|
||||
#define ABILITY_INTIMIDATE 22
|
||||
#define ABILITY_SHADOW_TAG 23
|
||||
#define ABILITY_ROUGH_SKIN 24
|
||||
#define ABILITY_WONDER_GUARD 25
|
||||
#define ABILITY_LEVITATE 26
|
||||
#define ABILITY_EFFECT_SPORE 27
|
||||
#define ABILITY_SYNCHRONIZE 28
|
||||
#define ABILITY_CLEAR_BODY 29
|
||||
#define ABILITY_NATURAL_CURE 30
|
||||
#define ABILITY_LIGHTNING_ROD 31
|
||||
#define ABILITY_SERENE_GRACE 32
|
||||
#define ABILITY_SWIFT_SWIM 33
|
||||
#define ABILITY_CHLOROPHYLL 34
|
||||
#define ABILITY_ILLUMINATE 35
|
||||
#define ABILITY_TRACE 36
|
||||
#define ABILITY_HUGE_POWER 37
|
||||
#define ABILITY_POISON_POINT 38
|
||||
#define ABILITY_INNER_FOCUS 39
|
||||
#define ABILITY_MAGMA_ARMOR 40
|
||||
#define ABILITY_WATER_VEIL 41
|
||||
#define ABILITY_MAGNET_PULL 42
|
||||
#define ABILITY_SOUNDPROOF 43
|
||||
#define ABILITY_RAIN_DISH 44
|
||||
#define ABILITY_SAND_STREAM 45
|
||||
#define ABILITY_PRESSURE 46
|
||||
#define ABILITY_THICK_FAT 47
|
||||
#define ABILITY_EARLY_BIRD 48
|
||||
#define ABILITY_FLAME_BODY 49
|
||||
#define ABILITY_RUN_AWAY 50
|
||||
#define ABILITY_KEEN_EYE 51
|
||||
#define ABILITY_HYPER_CUTTER 52
|
||||
#define ABILITY_PICKUP 53
|
||||
#define ABILITY_TRUANT 54
|
||||
#define ABILITY_HUSTLE 55
|
||||
#define ABILITY_CUTE_CHARM 56
|
||||
#define ABILITY_PLUS 57
|
||||
#define ABILITY_MINUS 58
|
||||
#define ABILITY_FORECAST 59
|
||||
#define ABILITY_STICKY_HOLD 60
|
||||
#define ABILITY_SHED_SKIN 61
|
||||
#define ABILITY_GUTS 62
|
||||
#define ABILITY_MARVEL_SCALE 63
|
||||
#define ABILITY_LIQUID_OOZE 64
|
||||
#define ABILITY_OVERGROW 65
|
||||
#define ABILITY_BLAZE 66
|
||||
#define ABILITY_TORRENT 67
|
||||
#define ABILITY_SWARM 68
|
||||
#define ABILITY_ROCK_HEAD 69
|
||||
#define ABILITY_DROUGHT 70
|
||||
#define ABILITY_ARENA_TRAP 71
|
||||
#define ABILITY_VITAL_SPIRIT 72
|
||||
#define ABILITY_WHITE_SMOKE 73
|
||||
#define ABILITY_PURE_POWER 74
|
||||
#define ABILITY_SHELL_ARMOR 75
|
||||
#define ABILITY_CACOPHONY 76
|
||||
#define ABILITY_AIR_LOCK 77
|
||||
|
||||
#endif // GUARD_CONSTANTS_ABILITIES_H
|
||||
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
|
||||
52
include/constants/battle_ai.h
Normal file
52
include/constants/battle_ai.h
Normal file
@@ -0,0 +1,52 @@
|
||||
#ifndef GUARD_CONSTANTS_BATTLE_AI_H
|
||||
#define GUARD_CONSTANTS_BATTLE_AI_H
|
||||
|
||||
// battlers
|
||||
#define AI_TARGET 0
|
||||
#define AI_USER 1
|
||||
#define AI_TARGET_PARTNER 2
|
||||
#define AI_USER_PARTNER 3
|
||||
|
||||
// get_type command
|
||||
#define AI_TYPE1_TARGET 0
|
||||
#define AI_TYPE1_USER 1
|
||||
#define AI_TYPE2_TARGET 2
|
||||
#define AI_TYPE2_USER 3
|
||||
#define AI_TYPE_MOVE 4
|
||||
|
||||
// type effectiveness
|
||||
#define AI_EFFECTIVENESS_x4 160
|
||||
#define AI_EFFECTIVENESS_x2 80
|
||||
#define AI_EFFECTIVENESS_x1 40
|
||||
#define AI_EFFECTIVENESS_x0_5 20
|
||||
#define AI_EFFECTIVENESS_x0_25 10
|
||||
#define AI_EFFECTIVENESS_x0 0
|
||||
|
||||
// ai weather
|
||||
#define AI_WEATHER_SUN 0
|
||||
#define AI_WEATHER_RAIN 1
|
||||
#define AI_WEATHER_SANDSTORM 2
|
||||
#define AI_WEATHER_HAIL 3
|
||||
|
||||
// get_how_powerful_move_is
|
||||
#define MOVE_POWER_DISCOURAGED 0
|
||||
#define MOVE_NOT_MOST_POWERFUL 1
|
||||
#define MOVE_MOST_POWERFUL 2
|
||||
|
||||
// script's table id to bit
|
||||
#define AI_SCRIPT_CHECK_BAD_MOVE (1 << 0)
|
||||
#define AI_SCRIPT_CHECK_VIABILITY (1 << 1)
|
||||
#define AI_SCRIPT_TRY_TO_FAINT (1 << 2)
|
||||
#define AI_SCRIPT_SETUP_FIRST_TURN (1 << 3)
|
||||
#define AI_SCRIPT_RISKY (1 << 4)
|
||||
#define AI_SCRIPT_PREFER_STRONGEST_MOVE (1 << 5)
|
||||
#define AI_SCRIPT_PREFER_BATON_PASS (1 << 6)
|
||||
#define AI_SCRIPT_DOUBLE_BATTLE (1 << 7)
|
||||
#define AI_SCRIPT_HP_AWARE (1 << 8)
|
||||
#define AI_SCRIPT_UNKNOWN (1 << 9)
|
||||
// 10 - 28 are not used
|
||||
#define AI_SCRIPT_ROAMING (1 << 29)
|
||||
#define AI_SCRIPT_SAFARI (1 << 30)
|
||||
#define AI_SCRIPT_FIRST_BATTLE (1 << 31)
|
||||
|
||||
#endif // GUARD_CONSTANTS_BATTLE_AI_H
|
||||
85
include/constants/battle_anim.h
Normal file
85
include/constants/battle_anim.h
Normal file
@@ -0,0 +1,85 @@
|
||||
#ifndef GUARD_CONSTANTS_BATTLE_ANIM_H
|
||||
#define GUARD_CONSTANTS_BATTLE_ANIM_H
|
||||
|
||||
// battlers
|
||||
#define ANIM_ATTACKER 0
|
||||
#define ANIM_TARGET 1
|
||||
#define ANIM_ATK_PARTNER 2
|
||||
#define ANIM_DEF_PARTNER 3
|
||||
|
||||
// move background ids
|
||||
#define BG_DARK_ 0 // the same as BG_DARK but is unused
|
||||
#define BG_DARK 1
|
||||
#define BG_GHOST 2
|
||||
#define BG_PSYCHIC 3
|
||||
#define BG_IMPACT_OPPONENT 4
|
||||
#define BG_IMPACT_PLAYER 5
|
||||
#define BG_IMPACT_CONTESTS 6
|
||||
#define BG_DRILL 7
|
||||
#define BG_DRILL_CONTESTS 8
|
||||
#define BG_HIGHSPEED_OPPONENT 9
|
||||
#define BG_HIGHSPEED_PLAYER 10
|
||||
#define BG_THUNDER 11
|
||||
#define BG_GUILLOTINE_OPPONENT 12
|
||||
#define BG_GUILLOTINE_PLAYER 13
|
||||
#define BG_GUILLOTINE_CONTESTS 14
|
||||
#define BG_ICE 15
|
||||
#define BG_COSMIC 16
|
||||
#define BG_SEISMICTOSS_SKUUPPERCUT 17
|
||||
#define BG_FLYING 18
|
||||
#define BG_FLYING_CONTESTS 19
|
||||
#define BG_AURORABEAM 20
|
||||
#define BG_FISSURE 21
|
||||
#define BG_BUG_OPPONENT 22
|
||||
#define BG_BUG_PLAYER 23
|
||||
#define BG_SOLARBEAM_OPPONENT 24
|
||||
#define BG_SOLARBEAM_PLAYER 25
|
||||
#define BG_SOLARBEAM_CONTESTS 26
|
||||
|
||||
// table ids for general animations
|
||||
#define B_ANIM_CASTFORM_CHANGE 0x0
|
||||
#define B_ANIM_STATS_CHANGE 0x1
|
||||
#define B_ANIM_SUBSTITUTE_FADE 0x2
|
||||
#define B_ANIM_SUBSTITUTE_APPEAR 0x3
|
||||
#define B_ANIM_x4 0x4
|
||||
#define B_ANIM_ITEM_KNOCKOFF 0x5
|
||||
#define B_ANIM_TURN_TRAP 0x6
|
||||
#define B_ANIM_ITEM_EFFECT 0x7
|
||||
#define B_ANIM_SMOKEBALL_ESCAPE 0x8
|
||||
#define B_ANIM_HANGED_ON 0x9
|
||||
#define B_ANIM_RAIN_CONTINUES 0xA
|
||||
#define B_ANIM_SUN_CONTINUES 0xB
|
||||
#define B_ANIM_SANDSTORM_CONTINUES 0xC
|
||||
#define B_ANIM_HAIL_CONTINUES 0xD
|
||||
#define B_ANIM_LEECH_SEED_DRAIN 0xE
|
||||
#define B_ANIM_MON_HIT 0xF
|
||||
#define B_ANIM_ITEM_STEAL 0x10
|
||||
#define B_ANIM_SNATCH_MOVE 0x11
|
||||
#define B_ANIM_FUTURE_SIGHT_HIT 0x12
|
||||
#define B_ANIM_DOOM_DESIRE_HIT 0x13
|
||||
#define B_ANIM_x14 0x14
|
||||
#define B_ANIM_INGRAIN_HEAL 0x15
|
||||
#define B_ANIM_WISH_HEAL 0x16
|
||||
|
||||
// special animations table
|
||||
#define B_ANIM_LVL_UP 0x0
|
||||
#define B_ANIM_SWITCH_OUT_PLAYER_MON 0x1
|
||||
#define B_ANIM_SWITCH_OUT_OPPONENT_MON 0x2
|
||||
#define B_ANIM_BALL_THROW 0x3
|
||||
#define B_ANIM_SAFARI_BALL_THROW 0x4
|
||||
#define B_ANIM_SUBSTITUTE_TO_MON 0x5
|
||||
#define B_ANIM_MON_TO_SUBSTITUTE 0x6
|
||||
|
||||
// status animation table
|
||||
#define B_ANIM_STATUS_PSN 0x0
|
||||
#define B_ANIM_STATUS_CONFUSION 0x1
|
||||
#define B_ANIM_STATUS_BRN 0x2
|
||||
#define B_ANIM_STATUS_INFATUATION 0x3
|
||||
#define B_ANIM_STATUS_SLP 0x4
|
||||
#define B_ANIM_STATUS_PRZ 0x5
|
||||
#define B_ANIM_STATUS_FRZ 0x6
|
||||
#define B_ANIM_STATUS_CURSED 0x7
|
||||
#define B_ANIM_STATUS_NIGHTMARE 0x8
|
||||
#define B_ANIM_STATUS_WRAPPED 0x9 // does not actually exist
|
||||
|
||||
#endif // GUARD_CONSTANTS_BATTLE_ANIM_H
|
||||
219
include/constants/battle_move_effects.h
Normal file
219
include/constants/battle_move_effects.h
Normal file
@@ -0,0 +1,219 @@
|
||||
#ifndef GUARD_CONSTANTS_BATTLE_MOVE_EFFECTS_H
|
||||
#define GUARD_CONSTANTS_BATTLE_MOVE_EFFECTS_H
|
||||
|
||||
#define EFFECT_HIT 0
|
||||
#define EFFECT_SLEEP 1
|
||||
#define EFFECT_POISON_HIT 2
|
||||
#define EFFECT_ABSORB 3
|
||||
#define EFFECT_BURN_HIT 4
|
||||
#define EFFECT_FREEZE_HIT 5
|
||||
#define EFFECT_PARALYZE_HIT 6
|
||||
#define EFFECT_EXPLOSION 7
|
||||
#define EFFECT_DREAM_EATER 8
|
||||
#define EFFECT_MIRROR_MOVE 9
|
||||
#define EFFECT_ATTACK_UP 10
|
||||
#define EFFECT_DEFENSE_UP 11
|
||||
#define EFFECT_SPEED_UP 12
|
||||
#define EFFECT_SPECIAL_ATTACK_UP 13
|
||||
#define EFFECT_SPECIAL_DEFENSE_UP 14
|
||||
#define EFFECT_ACCURACY_UP 15
|
||||
#define EFFECT_EVASION_UP 16
|
||||
#define EFFECT_ALWAYS_HIT 17
|
||||
#define EFFECT_ATTACK_DOWN 18
|
||||
#define EFFECT_DEFENSE_DOWN 19
|
||||
#define EFFECT_SPEED_DOWN 20
|
||||
#define EFFECT_SPECIAL_ATTACK_DOWN 21 // unused
|
||||
#define EFFECT_SPECIAL_DEFENSE_DOWN 22 // unused
|
||||
#define EFFECT_ACCURACY_DOWN 23
|
||||
#define EFFECT_EVASION_DOWN 24
|
||||
#define EFFECT_HAZE 25
|
||||
#define EFFECT_BIDE 26
|
||||
#define EFFECT_RAMPAGE 27
|
||||
#define EFFECT_ROAR 28
|
||||
#define EFFECT_MULTI_HIT 29
|
||||
#define EFFECT_CONVERSION 30
|
||||
#define EFFECT_FLINCH_HIT 31
|
||||
#define EFFECT_RESTORE_HP 32
|
||||
#define EFFECT_TOXIC 33
|
||||
#define EFFECT_PAY_DAY 34
|
||||
#define EFFECT_LIGHT_SCREEN 35
|
||||
#define EFFECT_TRI_ATTACK 36
|
||||
#define EFFECT_REST 37
|
||||
#define EFFECT_OHKO 38
|
||||
#define EFFECT_RAZOR_WIND 39
|
||||
#define EFFECT_SUPER_FANG 40
|
||||
#define EFFECT_DRAGON_RAGE 41
|
||||
#define EFFECT_TRAP 42
|
||||
#define EFFECT_HIGH_CRITICAL 43
|
||||
#define EFFECT_DOUBLE_HIT 44
|
||||
#define EFFECT_RECOIL_IF_MISS 45
|
||||
#define EFFECT_MIST 46
|
||||
#define EFFECT_FOCUS_ENERGY 47
|
||||
#define EFFECT_RECOIL 48
|
||||
#define EFFECT_CONFUSE 49
|
||||
#define EFFECT_ATTACK_UP_2 50
|
||||
#define EFFECT_DEFENSE_UP_2 51
|
||||
#define EFFECT_SPEED_UP_2 52
|
||||
#define EFFECT_SPECIAL_ATTACK_UP_2 53
|
||||
#define EFFECT_SPECIAL_DEFENSE_UP_2 54
|
||||
#define EFFECT_ACCURACY_UP_2 55
|
||||
#define EFFECT_EVASION_UP_2 56
|
||||
#define EFFECT_TRANSFORM 57
|
||||
#define EFFECT_ATTACK_DOWN_2 58
|
||||
#define EFFECT_DEFENSE_DOWN_2 59
|
||||
#define EFFECT_SPEED_DOWN_2 60
|
||||
#define EFFECT_SPECIAL_ATTACK_DOWN_2 61
|
||||
#define EFFECT_SPECIAL_DEFENSE_DOWN_2 62
|
||||
#define EFFECT_ACCURACY_DOWN_2 63
|
||||
#define EFFECT_EVASION_DOWN_2 64
|
||||
#define EFFECT_REFLECT 65
|
||||
#define EFFECT_POISON 66
|
||||
#define EFFECT_PARALYZE 67
|
||||
#define EFFECT_ATTACK_DOWN_HIT 68
|
||||
#define EFFECT_DEFENSE_DOWN_HIT 69
|
||||
#define EFFECT_SPEED_DOWN_HIT 70
|
||||
#define EFFECT_SPECIAL_ATTACK_DOWN_HIT 71
|
||||
#define EFFECT_SPECIAL_DEFENSE_DOWN_HIT 72
|
||||
#define EFFECT_ACCURACY_DOWN_HIT 73
|
||||
#define EFFECT_EVASION_DOWN_HIT 74
|
||||
#define EFFECT_SKY_ATTACK 75
|
||||
#define EFFECT_CONFUSE_HIT 76
|
||||
#define EFFECT_TWINEEDLE 77
|
||||
#define EFFECT_VITAL_THROW 78
|
||||
#define EFFECT_SUBSTITUTE 79
|
||||
#define EFFECT_RECHARGE 80
|
||||
#define EFFECT_RAGE 81
|
||||
#define EFFECT_MIMIC 82
|
||||
#define EFFECT_METRONOME 83
|
||||
#define EFFECT_LEECH_SEED 84
|
||||
#define EFFECT_SPLASH 85
|
||||
#define EFFECT_DISABLE 86
|
||||
#define EFFECT_LEVEL_DAMAGE 87
|
||||
#define EFFECT_PSYWAVE 88
|
||||
#define EFFECT_COUNTER 89
|
||||
#define EFFECT_ENCORE 90
|
||||
#define EFFECT_PAIN_SPLIT 91
|
||||
#define EFFECT_SNORE 92
|
||||
#define EFFECT_CONVERSION_2 93
|
||||
#define EFFECT_LOCK_ON 94
|
||||
#define EFFECT_SKETCH 95
|
||||
#define EFFECT_UNUSED_60 96 // thaw
|
||||
#define EFFECT_SLEEP_TALK 97
|
||||
#define EFFECT_DESTINY_BOND 98
|
||||
#define EFFECT_FLAIL 99
|
||||
#define EFFECT_SPITE 100
|
||||
#define EFFECT_FALSE_SWIPE 101
|
||||
#define EFFECT_HEAL_BELL 102
|
||||
#define EFFECT_QUICK_ATTACK 103
|
||||
#define EFFECT_TRIPLE_KICK 104
|
||||
#define EFFECT_THIEF 105
|
||||
#define EFFECT_MEAN_LOOK 106
|
||||
#define EFFECT_NIGHTMARE 107
|
||||
#define EFFECT_MINIMIZE 108
|
||||
#define EFFECT_CURSE 109
|
||||
#define EFFECT_UNUSED_6E 110
|
||||
#define EFFECT_PROTECT 111
|
||||
#define EFFECT_SPIKES 112
|
||||
#define EFFECT_FORESIGHT 113
|
||||
#define EFFECT_PERISH_SONG 114
|
||||
#define EFFECT_SANDSTORM 115
|
||||
#define EFFECT_ENDURE 116
|
||||
#define EFFECT_ROLLOUT 117
|
||||
#define EFFECT_SWAGGER 118
|
||||
#define EFFECT_FURY_CUTTER 119
|
||||
#define EFFECT_ATTRACT 120
|
||||
#define EFFECT_RETURN 121
|
||||
#define EFFECT_PRESENT 122
|
||||
#define EFFECT_FRUSTRATION 123
|
||||
#define EFFECT_SAFEGUARD 124
|
||||
#define EFFECT_THAW_HIT 125
|
||||
#define EFFECT_MAGNITUDE 126
|
||||
#define EFFECT_BATON_PASS 127
|
||||
#define EFFECT_PURSUIT 128
|
||||
#define EFFECT_RAPID_SPIN 129
|
||||
#define EFFECT_SONICBOOM 130
|
||||
#define EFFECT_UNUSED_83 131
|
||||
#define EFFECT_MORNING_SUN 132
|
||||
#define EFFECT_SYNTHESIS 133
|
||||
#define EFFECT_MOONLIGHT 134
|
||||
#define EFFECT_HIDDEN_POWER 135
|
||||
#define EFFECT_RAIN_DANCE 136
|
||||
#define EFFECT_SUNNY_DAY 137
|
||||
#define EFFECT_DEFENSE_UP_HIT 138
|
||||
#define EFFECT_ATTACK_UP_HIT 139
|
||||
#define EFFECT_ALL_STATS_UP_HIT 140
|
||||
#define EFFECT_UNUSED_8D 141 // incomplete fake out in gen 2
|
||||
#define EFFECT_BELLY_DRUM 142
|
||||
#define EFFECT_PSYCH_UP 143
|
||||
#define EFFECT_MIRROR_COAT 144
|
||||
#define EFFECT_SKULL_BASH 145
|
||||
#define EFFECT_TWISTER 146
|
||||
#define EFFECT_EARTHQUAKE 147
|
||||
#define EFFECT_FUTURE_SIGHT 148
|
||||
#define EFFECT_GUST 149
|
||||
#define EFFECT_FLINCH_HIT_2 150 // STOMP ASTONISH EXTRASENSORY NEEDLE_ARM
|
||||
#define EFFECT_SOLARBEAM 151
|
||||
#define EFFECT_THUNDER 152
|
||||
#define EFFECT_TELEPORT 153
|
||||
#define EFFECT_BEAT_UP 154
|
||||
#define EFFECT_SEMI_INVULNERABLE 155
|
||||
#define EFFECT_DEFENSE_CURL 156
|
||||
#define EFFECT_SOFTBOILED 157
|
||||
#define EFFECT_FAKE_OUT 158
|
||||
#define EFFECT_UPROAR 159
|
||||
#define EFFECT_STOCKPILE 160
|
||||
#define EFFECT_SPIT_UP 161
|
||||
#define EFFECT_SWALLOW 162
|
||||
#define EFFECT_UNUSED_A3 163
|
||||
#define EFFECT_HAIL 164
|
||||
#define EFFECT_TORMENT 165
|
||||
#define EFFECT_FLATTER 166
|
||||
#define EFFECT_WILL_O_WISP 167
|
||||
#define EFFECT_MEMENTO 168
|
||||
#define EFFECT_FACADE 169
|
||||
#define EFFECT_FOCUS_PUNCH 170
|
||||
#define EFFECT_SMELLINGSALT 171
|
||||
#define EFFECT_FOLLOW_ME 172
|
||||
#define EFFECT_NATURE_POWER 173
|
||||
#define EFFECT_CHARGE 174
|
||||
#define EFFECT_TAUNT 175
|
||||
#define EFFECT_HELPING_HAND 176
|
||||
#define EFFECT_TRICK 177
|
||||
#define EFFECT_ROLE_PLAY 178
|
||||
#define EFFECT_WISH 179
|
||||
#define EFFECT_ASSIST 180
|
||||
#define EFFECT_INGRAIN 181
|
||||
#define EFFECT_SUPERPOWER 182
|
||||
#define EFFECT_MAGIC_COAT 183
|
||||
#define EFFECT_RECYCLE 184
|
||||
#define EFFECT_REVENGE 185
|
||||
#define EFFECT_BRICK_BREAK 186
|
||||
#define EFFECT_YAWN 187
|
||||
#define EFFECT_KNOCK_OFF 188
|
||||
#define EFFECT_ENDEAVOR 189
|
||||
#define EFFECT_ERUPTION 190
|
||||
#define EFFECT_SKILL_SWAP 191
|
||||
#define EFFECT_IMPRISON 192
|
||||
#define EFFECT_REFRESH 193
|
||||
#define EFFECT_GRUDGE 194
|
||||
#define EFFECT_SNATCH 195
|
||||
#define EFFECT_LOW_KICK 196
|
||||
#define EFFECT_SECRET_POWER 197
|
||||
#define EFFECT_DOUBLE_EDGE 198
|
||||
#define EFFECT_TEETER_DANCE 199
|
||||
#define EFFECT_BLAZE_KICK 200
|
||||
#define EFFECT_MUD_SPORT 201
|
||||
#define EFFECT_POISON_FANG 202
|
||||
#define EFFECT_WEATHER_BALL 203
|
||||
#define EFFECT_OVERHEAT 204
|
||||
#define EFFECT_TICKLE 205
|
||||
#define EFFECT_COSMIC_POWER 206
|
||||
#define EFFECT_SKY_UPPERCUT 207
|
||||
#define EFFECT_BULK_UP 208
|
||||
#define EFFECT_POISON_TAIL 209
|
||||
#define EFFECT_WATER_SPORT 210
|
||||
#define EFFECT_CALM_MIND 211
|
||||
#define EFFECT_DRAGON_DANCE 212
|
||||
#define EFFECT_CAMOUFLAGE 213
|
||||
|
||||
#endif // GUARD_CONSTANTS_BATTLE_MOVE_EFFECTS_H
|
||||
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
|
||||
@@ -1,5 +1,5 @@
|
||||
#ifndef GUARD_BATTLE_STRING_IDS_H
|
||||
#define GUARD_BATTLE_STRING_IDS_H
|
||||
#ifndef GUARD_CONSTANTS_BATTLE_STRING_IDS_H
|
||||
#define GUARD_CONSTANTS_BATTLE_STRING_IDS_H
|
||||
|
||||
#define BATTLESTRINGS_COUNT 369
|
||||
|
||||
@@ -12,7 +12,6 @@
|
||||
#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
|
||||
@@ -384,4 +383,4 @@
|
||||
#define STRINGID_TRAINER1WINTEXT 379
|
||||
#define STRINGID_TRAINER2WINTEXT 380
|
||||
|
||||
#endif // GUARD_BATTLE_STRING_IDS_H
|
||||
#endif // GUARD_CONSTANTS_BATTLE_STRING_IDS_H
|
||||
126
include/constants/decorations.h
Normal file
126
include/constants/decorations.h
Normal file
@@ -0,0 +1,126 @@
|
||||
#ifndef GUARD_CONSTANTS_DECORATIONS_H
|
||||
#define GUARD_CONSTANTS_DECORATIONS_H
|
||||
|
||||
#define DECOR_NONE 0
|
||||
#define DECOR_SMALL_DESK 1
|
||||
#define DECOR_POKEMON_DESK 2
|
||||
#define DECOR_HEAVY_DESK 3
|
||||
#define DECOR_RAGGED_DESK 4
|
||||
#define DECOR_COMFORT_DESK 5
|
||||
#define DECOR_PRETTY_DESK 6
|
||||
#define DECOR_BRICK_DESK 7
|
||||
#define DECOR_CAMP_DESK 8
|
||||
#define DECOR_HARD_DESK 9
|
||||
#define DECOR_SMALL_CHAIR 10
|
||||
#define DECOR_POKEMON_CHAIR 11
|
||||
#define DECOR_HEAVY_CHAIR 12
|
||||
#define DECOR_PRETTY_CHAIR 13
|
||||
#define DECOR_COMFORT_CHAIR 14
|
||||
#define DECOR_RAGGED_CHAIR 15
|
||||
#define DECOR_BRICK_CHAIR 16
|
||||
#define DECOR_CAMP_CHAIR 17
|
||||
#define DECOR_HARD_CHAIR 18
|
||||
#define DECOR_RED_PLANT 19
|
||||
#define DECOR_TROPICAL_PLANT 20
|
||||
#define DECOR_PRETTY_FLOWERS 21
|
||||
#define DECOR_COLORFUL_PLANT 22
|
||||
#define DECOR_BIG_PLANT 23
|
||||
#define DECOR_GORGEOUS_PLANT 24
|
||||
#define DECOR_RED_BRICK 25
|
||||
#define DECOR_YELLOW_BRICK 26
|
||||
#define DECOR_BLUE_BRICK 27
|
||||
#define DECOR_RED_BALLOON 28
|
||||
#define DECOR_BLUE_BALLOON 29
|
||||
#define DECOR_YELLOW_BALLOON 30
|
||||
#define DECOR_RED_TENT 31
|
||||
#define DECOR_BLUE_TENT 32
|
||||
#define DECOR_SOLID_BOARD 33
|
||||
#define DECOR_SLIDE 34
|
||||
#define DECOR_FENCE_LENGTH 35
|
||||
#define DECOR_FENCE_WIDTH 36
|
||||
#define DECOR_TIRE 37
|
||||
#define DECOR_STAND 38
|
||||
#define DECOR_MUD_BALL 39
|
||||
#define DECOR_BREAKABLE_DOOR 40
|
||||
#define DECOR_SAND_ORNAMENT 41
|
||||
#define DECOR_SILVER_SHIELD 42
|
||||
#define DECOR_GOLD_SHIELD 43
|
||||
#define DECOR_GLASS_ORNAMENT 44
|
||||
#define DECOR_TV 45
|
||||
#define DECOR_ROUND_TV 46
|
||||
#define DECOR_CUTE_TV 47
|
||||
#define DECOR_GLITTER_MAT 48
|
||||
#define DECOR_JUMP_MAT 49
|
||||
#define DECOR_SPIN_MAT 50
|
||||
#define DECOR_C_LOW_NOTE_MAT 51
|
||||
#define DECOR_D_NOTE_MAT 52
|
||||
#define DECOR_E_NOTE_MAT 53
|
||||
#define DECOR_F_NOTE_MAT 54
|
||||
#define DECOR_G_NOTE_MAT 55
|
||||
#define DECOR_A_NOTE_MAT 56
|
||||
#define DECOR_B_NOTE_MAT 57
|
||||
#define DECOR_C_HIGH_NOTE_MAT 58
|
||||
#define DECOR_SURF_MAT 59
|
||||
#define DECOR_THUNDER_MAT 60
|
||||
#define DECOR_FIRE_BLAST_MAT 61
|
||||
#define DECOR_POWDER_SNOW_MAT 62
|
||||
#define DECOR_ATTRACT_MAT 63
|
||||
#define DECOR_FISSURE_MAT 64
|
||||
#define DECOR_SPIKES_MAT 65
|
||||
#define DECOR_BALL_POSTER 66
|
||||
#define DECOR_GREEN_POSTER 67
|
||||
#define DECOR_RED_POSTER 68
|
||||
#define DECOR_BLUE_POSTER 69
|
||||
#define DECOR_CUTE_POSTER 70
|
||||
#define DECOR_PIKA_POSTER 71
|
||||
#define DECOR_LONG_POSTER 72
|
||||
#define DECOR_SEA_POSTER 73
|
||||
#define DECOR_SKY_POSTER 74
|
||||
#define DECOR_KISS_POSTER 75
|
||||
#define DECOR_PICHU_DOLL 76
|
||||
#define DECOR_PIKACHU_DOLL 77
|
||||
#define DECOR_MARILL_DOLL 78
|
||||
#define DECOR_TOGEPI_DOLL 79
|
||||
#define DECOR_CYNDAQUIL_DOLL 80
|
||||
#define DECOR_CHIKORITA_DOLL 81
|
||||
#define DECOR_TOTODILE_DOLL 82
|
||||
#define DECOR_JIGGLYPUFF_DOLL 83
|
||||
#define DECOR_MEOWTH_DOLL 84
|
||||
#define DECOR_CLEFAIRY_DOLL 85
|
||||
#define DECOR_DITTO_DOLL 86
|
||||
#define DECOR_SMOOCHUM_DOLL 87
|
||||
#define DECOR_TREECKO_DOLL 88
|
||||
#define DECOR_TORCHIC_DOLL 89
|
||||
#define DECOR_MUDKIP_DOLL 90
|
||||
#define DECOR_DUSKULL_DOLL 91
|
||||
#define DECOR_WYNAUT_DOLL 92
|
||||
#define DECOR_BALTOY_DOLL 93
|
||||
#define DECOR_KECLEON_DOLL 94
|
||||
#define DECOR_AZURILL_DOLL 95
|
||||
#define DECOR_SKITTY_DOLL 96
|
||||
#define DECOR_SWABLU_DOLL 97
|
||||
#define DECOR_GULPIN_DOLL 98
|
||||
#define DECOR_LOTAD_DOLL 99
|
||||
#define DECOR_SEEDOT_DOLL 100
|
||||
#define DECOR_PIKA_CUSHION 101
|
||||
#define DECOR_ROUND_CUSHION 102
|
||||
#define DECOR_KISS_CUSHION 103
|
||||
#define DECOR_ZIGZAG_CUSHION 104
|
||||
#define DECOR_SPIN_CUSHION 105
|
||||
#define DECOR_DIAMOND_CUSHION 106
|
||||
#define DECOR_BALL_CUSHION 107
|
||||
#define DECOR_GRASS_CUSHION 108
|
||||
#define DECOR_FIRE_CUSHION 109
|
||||
#define DECOR_WATER_CUSHION 110
|
||||
#define DECOR_SNORLAX_DOLL 111
|
||||
#define DECOR_RHYDON_DOLL 112
|
||||
#define DECOR_LAPRAS_DOLL 113
|
||||
#define DECOR_VENUSAUR_DOLL 114
|
||||
#define DECOR_CHARIZARD_DOLL 115
|
||||
#define DECOR_BLASTOISE_DOLL 116
|
||||
#define DECOR_WAILMER_DOLL 117
|
||||
#define DECOR_REGIROCK_DOLL 118
|
||||
#define DECOR_REGICE_DOLL 119
|
||||
#define DECOR_REGISTEEL_DOLL 120
|
||||
|
||||
#endif // GUARD_CONSTANTS_DECORATIONS_H
|
||||
1079
include/constants/easy_chat.h
Normal file
1079
include/constants/easy_chat.h
Normal file
File diff suppressed because it is too large
Load Diff
1579
include/constants/flags.h
Normal file
1579
include/constants/flags.h
Normal file
File diff suppressed because it is too large
Load Diff
@@ -1,5 +1,5 @@
|
||||
#ifndef GUARD_GAME_STAT_H
|
||||
#define GUARD_GAME_STAT_H
|
||||
#ifndef GUARD_CONSTANTS_GAME_STAT_H
|
||||
#define GUARD_CONSTANTS_GAME_STAT_H
|
||||
|
||||
#define GAME_STAT_SAVED_GAME 0
|
||||
#define GAME_STAT_FIRST_HOF_PLAY_TIME 1
|
||||
@@ -56,7 +56,4 @@
|
||||
|
||||
#define NUM_GAME_STATS 64
|
||||
|
||||
void IncrementGameStat(u8);
|
||||
u32 GetGameStat(u8);
|
||||
|
||||
#endif // GUARD_GAME_STAT_H
|
||||
#endif // GUARD_CONSTANTS_GAME_STAT_H
|
||||
467
include/constants/items.h
Normal file
467
include/constants/items.h
Normal file
@@ -0,0 +1,467 @@
|
||||
#ifndef GUARD_CONSTANTS_ITEMS_H
|
||||
#define GUARD_CONSTANTS_ITEMS_H
|
||||
|
||||
#define ITEM_NONE 0
|
||||
|
||||
// Balls
|
||||
#define ITEM_MASTER_BALL 1
|
||||
#define ITEM_ULTRA_BALL 2
|
||||
#define ITEM_GREAT_BALL 3
|
||||
#define ITEM_POKE_BALL 4
|
||||
#define ITEM_SAFARI_BALL 5
|
||||
#define ITEM_NET_BALL 6
|
||||
#define ITEM_DIVE_BALL 7
|
||||
#define ITEM_NEST_BALL 8
|
||||
#define ITEM_REPEAT_BALL 9
|
||||
#define ITEM_TIMER_BALL 10
|
||||
#define ITEM_LUXURY_BALL 11
|
||||
#define ITEM_PREMIER_BALL 12
|
||||
|
||||
// Pokemon Items
|
||||
#define ITEM_POTION 13
|
||||
#define ITEM_ANTIDOTE 14
|
||||
#define ITEM_BURN_HEAL 15
|
||||
#define ITEM_ICE_HEAL 16
|
||||
#define ITEM_AWAKENING 17
|
||||
#define ITEM_PARALYZE_HEAL 18
|
||||
#define ITEM_FULL_RESTORE 19
|
||||
#define ITEM_MAX_POTION 20
|
||||
#define ITEM_HYPER_POTION 21
|
||||
#define ITEM_SUPER_POTION 22
|
||||
#define ITEM_FULL_HEAL 23
|
||||
#define ITEM_REVIVE 24
|
||||
#define ITEM_MAX_REVIVE 25
|
||||
#define ITEM_FRESH_WATER 26
|
||||
#define ITEM_SODA_POP 27
|
||||
#define ITEM_LEMONADE 28
|
||||
#define ITEM_MOOMOO_MILK 29
|
||||
#define ITEM_ENERGY_POWDER 30
|
||||
#define ITEM_ENERGY_ROOT 31
|
||||
#define ITEM_HEAL_POWDER 32
|
||||
#define ITEM_REVIVAL_HERB 33
|
||||
#define ITEM_ETHER 34
|
||||
#define ITEM_MAX_ETHER 35
|
||||
#define ITEM_ELIXIR 36
|
||||
#define ITEM_MAX_ELIXIR 37
|
||||
#define ITEM_LAVA_COOKIE 38
|
||||
#define ITEM_BLUE_FLUTE 39
|
||||
#define ITEM_YELLOW_FLUTE 40
|
||||
#define ITEM_RED_FLUTE 41
|
||||
#define ITEM_BLACK_FLUTE 42
|
||||
#define ITEM_WHITE_FLUTE 43
|
||||
#define ITEM_BERRY_JUICE 44
|
||||
#define ITEM_SACRED_ASH 45
|
||||
#define ITEM_SHOAL_SALT 46
|
||||
#define ITEM_SHOAL_SHELL 47
|
||||
#define ITEM_RED_SHARD 48
|
||||
#define ITEM_BLUE_SHARD 49
|
||||
#define ITEM_YELLOW_SHARD 50
|
||||
#define ITEM_GREEN_SHARD 51
|
||||
#define ITEM_034 52
|
||||
#define ITEM_035 53
|
||||
#define ITEM_036 54
|
||||
#define ITEM_037 55
|
||||
#define ITEM_038 56
|
||||
#define ITEM_039 57
|
||||
#define ITEM_03A 58
|
||||
#define ITEM_03B 59
|
||||
#define ITEM_03C 60
|
||||
#define ITEM_03D 61
|
||||
#define ITEM_03E 62
|
||||
#define ITEM_HP_UP 63
|
||||
#define ITEM_PROTEIN 64
|
||||
#define ITEM_IRON 65
|
||||
#define ITEM_CARBOS 66
|
||||
#define ITEM_CALCIUM 67
|
||||
#define ITEM_RARE_CANDY 68
|
||||
#define ITEM_PP_UP 69
|
||||
#define ITEM_ZINC 70
|
||||
#define ITEM_PP_MAX 71
|
||||
#define ITEM_048 72
|
||||
#define ITEM_GUARD_SPEC 73
|
||||
#define ITEM_DIRE_HIT 74
|
||||
#define ITEM_X_ATTACK 75
|
||||
#define ITEM_X_DEFEND 76
|
||||
#define ITEM_X_SPEED 77
|
||||
#define ITEM_X_ACCURACY 78
|
||||
#define ITEM_X_SPECIAL 79
|
||||
#define ITEM_POKE_DOLL 80
|
||||
#define ITEM_FLUFFY_TAIL 81
|
||||
#define ITEM_052 82
|
||||
#define ITEM_SUPER_REPEL 83
|
||||
#define ITEM_MAX_REPEL 84
|
||||
#define ITEM_ESCAPE_ROPE 85
|
||||
#define ITEM_REPEL 86
|
||||
#define ITEM_057 87
|
||||
#define ITEM_058 88
|
||||
#define ITEM_059 89
|
||||
#define ITEM_05A 90
|
||||
#define ITEM_05B 91
|
||||
#define ITEM_05C 92
|
||||
#define ITEM_SUN_STONE 93
|
||||
#define ITEM_MOON_STONE 94
|
||||
#define ITEM_FIRE_STONE 95
|
||||
#define ITEM_THUNDER_STONE 96
|
||||
#define ITEM_WATER_STONE 97
|
||||
#define ITEM_LEAF_STONE 98
|
||||
#define ITEM_063 99
|
||||
#define ITEM_064 100
|
||||
#define ITEM_065 101
|
||||
#define ITEM_066 102
|
||||
#define ITEM_TINY_MUSHROOM 103
|
||||
#define ITEM_BIG_MUSHROOM 104
|
||||
#define ITEM_069 105
|
||||
#define ITEM_PEARL 106
|
||||
#define ITEM_BIG_PEARL 107
|
||||
#define ITEM_STARDUST 108
|
||||
#define ITEM_STAR_PIECE 109
|
||||
#define ITEM_NUGGET 110
|
||||
#define ITEM_HEART_SCALE 111
|
||||
#define ITEM_070 112
|
||||
#define ITEM_071 113
|
||||
#define ITEM_072 114
|
||||
#define ITEM_073 115
|
||||
#define ITEM_074 116
|
||||
#define ITEM_075 117
|
||||
#define ITEM_076 118
|
||||
#define ITEM_077 119
|
||||
#define ITEM_078 120
|
||||
#define ITEM_ORANGE_MAIL 121
|
||||
#define ITEM_HARBOR_MAIL 122
|
||||
#define ITEM_GLITTER_MAIL 123
|
||||
#define ITEM_MECH_MAIL 124
|
||||
#define ITEM_WOOD_MAIL 125
|
||||
#define ITEM_WAVE_MAIL 126
|
||||
#define ITEM_BEAD_MAIL 127
|
||||
#define ITEM_SHADOW_MAIL 128
|
||||
#define ITEM_TROPIC_MAIL 129
|
||||
#define ITEM_DREAM_MAIL 130
|
||||
#define ITEM_FAB_MAIL 131
|
||||
#define ITEM_RETRO_MAIL 132
|
||||
#define ITEM_CHERI_BERRY 133
|
||||
#define ITEM_CHESTO_BERRY 134
|
||||
#define ITEM_PECHA_BERRY 135
|
||||
#define ITEM_RAWST_BERRY 136
|
||||
#define ITEM_ASPEAR_BERRY 137
|
||||
#define ITEM_LEPPA_BERRY 138
|
||||
#define ITEM_ORAN_BERRY 139
|
||||
#define ITEM_PERSIM_BERRY 140
|
||||
#define ITEM_LUM_BERRY 141
|
||||
#define ITEM_SITRUS_BERRY 142
|
||||
#define ITEM_FIGY_BERRY 143
|
||||
#define ITEM_WIKI_BERRY 144
|
||||
#define ITEM_MAGO_BERRY 145
|
||||
#define ITEM_AGUAV_BERRY 146
|
||||
#define ITEM_IAPAPA_BERRY 147
|
||||
#define ITEM_RAZZ_BERRY 148
|
||||
#define ITEM_BLUK_BERRY 149
|
||||
#define ITEM_NANAB_BERRY 150
|
||||
#define ITEM_WEPEAR_BERRY 151
|
||||
#define ITEM_PINAP_BERRY 152
|
||||
#define ITEM_POMEG_BERRY 153
|
||||
#define ITEM_KELPSY_BERRY 154
|
||||
#define ITEM_QUALOT_BERRY 155
|
||||
#define ITEM_HONDEW_BERRY 156
|
||||
#define ITEM_GREPA_BERRY 157
|
||||
#define ITEM_TAMATO_BERRY 158
|
||||
#define ITEM_CORNN_BERRY 159
|
||||
#define ITEM_MAGOST_BERRY 160
|
||||
#define ITEM_RABUTA_BERRY 161
|
||||
#define ITEM_NOMEL_BERRY 162
|
||||
#define ITEM_SPELON_BERRY 163
|
||||
#define ITEM_PAMTRE_BERRY 164
|
||||
#define ITEM_WATMEL_BERRY 165
|
||||
#define ITEM_DURIN_BERRY 166
|
||||
#define ITEM_BELUE_BERRY 167
|
||||
#define ITEM_LIECHI_BERRY 168
|
||||
#define ITEM_GANLON_BERRY 169
|
||||
#define ITEM_SALAC_BERRY 170
|
||||
#define ITEM_PETAYA_BERRY 171
|
||||
#define ITEM_APICOT_BERRY 172
|
||||
#define ITEM_LANSAT_BERRY 173
|
||||
#define ITEM_STARF_BERRY 174
|
||||
#define ITEM_ENIGMA_BERRY 175
|
||||
#define ITEM_0B0 176
|
||||
#define ITEM_0B1 177
|
||||
#define ITEM_0B2 178
|
||||
|
||||
// hold items
|
||||
#define ITEM_BRIGHT_POWDER 179
|
||||
#define ITEM_WHITE_HERB 180
|
||||
#define ITEM_MACHO_BRACE 181
|
||||
#define ITEM_EXP_SHARE 182
|
||||
#define ITEM_QUICK_CLAW 183
|
||||
#define ITEM_SOOTHE_BELL 184
|
||||
#define ITEM_MENTAL_HERB 185
|
||||
#define ITEM_CHOICE_BAND 186
|
||||
#define ITEM_KINGS_ROCK 187
|
||||
#define ITEM_SILVER_POWDER 188
|
||||
#define ITEM_AMULET_COIN 189
|
||||
#define ITEM_CLEANSE_TAG 190
|
||||
#define ITEM_SOUL_DEW 191
|
||||
#define ITEM_DEEP_SEA_TOOTH 192
|
||||
#define ITEM_DEEP_SEA_SCALE 193
|
||||
#define ITEM_SMOKE_BALL 194
|
||||
#define ITEM_EVERSTONE 195
|
||||
#define ITEM_FOCUS_BAND 196
|
||||
#define ITEM_LUCKY_EGG 197
|
||||
#define ITEM_SCOPE_LENS 198
|
||||
#define ITEM_METAL_COAT 199
|
||||
#define ITEM_LEFTOVERS 200
|
||||
#define ITEM_DRAGON_SCALE 201
|
||||
#define ITEM_LIGHT_BALL 202
|
||||
#define ITEM_SOFT_SAND 203
|
||||
#define ITEM_HARD_STONE 204
|
||||
#define ITEM_MIRACLE_SEED 205
|
||||
#define ITEM_BLACK_GLASSES 206
|
||||
#define ITEM_BLACK_BELT 207
|
||||
#define ITEM_MAGNET 208
|
||||
#define ITEM_MYSTIC_WATER 209
|
||||
#define ITEM_SHARP_BEAK 210
|
||||
#define ITEM_POISON_BARB 211
|
||||
#define ITEM_NEVER_MELT_ICE 212
|
||||
#define ITEM_SPELL_TAG 213
|
||||
#define ITEM_TWISTED_SPOON 214
|
||||
#define ITEM_CHARCOAL 215
|
||||
#define ITEM_DRAGON_FANG 216
|
||||
#define ITEM_SILK_SCARF 217
|
||||
#define ITEM_UP_GRADE 218
|
||||
#define ITEM_SHELL_BELL 219
|
||||
#define ITEM_SEA_INCENSE 220
|
||||
#define ITEM_LAX_INCENSE 221
|
||||
#define ITEM_LUCKY_PUNCH 222
|
||||
#define ITEM_METAL_POWDER 223
|
||||
#define ITEM_THICK_CLUB 224
|
||||
#define ITEM_STICK 225
|
||||
#define ITEM_0E2 226
|
||||
#define ITEM_0E3 227
|
||||
#define ITEM_0E4 228
|
||||
#define ITEM_0E5 229
|
||||
#define ITEM_0E6 230
|
||||
#define ITEM_0E7 231
|
||||
#define ITEM_0E8 232
|
||||
#define ITEM_0E9 233
|
||||
#define ITEM_0EA 234
|
||||
#define ITEM_0EB 235
|
||||
#define ITEM_0EC 236
|
||||
#define ITEM_0ED 237
|
||||
#define ITEM_0EE 238
|
||||
#define ITEM_0EF 239
|
||||
#define ITEM_0F0 240
|
||||
#define ITEM_0F1 241
|
||||
#define ITEM_0F2 242
|
||||
#define ITEM_0F3 243
|
||||
#define ITEM_0F4 244
|
||||
#define ITEM_0F5 245
|
||||
#define ITEM_0F6 246
|
||||
#define ITEM_0F7 247
|
||||
#define ITEM_0F8 248
|
||||
#define ITEM_0F9 249
|
||||
#define ITEM_0FA 250
|
||||
#define ITEM_0FB 251
|
||||
#define ITEM_0FC 252
|
||||
#define ITEM_0FD 253
|
||||
#define ITEM_RED_SCARF 254
|
||||
#define ITEM_BLUE_SCARF 255
|
||||
#define ITEM_PINK_SCARF 256
|
||||
#define ITEM_GREEN_SCARF 257
|
||||
#define ITEM_YELLOW_SCARF 258
|
||||
|
||||
// Key Items
|
||||
#define ITEM_MACH_BIKE 259
|
||||
#define ITEM_COIN_CASE 260
|
||||
#define ITEM_ITEMFINDER 261
|
||||
#define ITEM_OLD_ROD 262
|
||||
#define ITEM_GOOD_ROD 263
|
||||
#define ITEM_SUPER_ROD 264
|
||||
#define ITEM_SS_TICKET 265
|
||||
#define ITEM_CONTEST_PASS 266
|
||||
#define ITEM_10B 267
|
||||
#define ITEM_WAILMER_PAIL 268
|
||||
#define ITEM_DEVON_GOODS 269
|
||||
#define ITEM_SOOT_SACK 270
|
||||
#define ITEM_BASEMENT_KEY 271
|
||||
#define ITEM_ACRO_BIKE 272
|
||||
#define ITEM_POKEBLOCK_CASE 273
|
||||
#define ITEM_LETTER 274
|
||||
#define ITEM_EON_TICKET 275
|
||||
#define ITEM_RED_ORB 276
|
||||
#define ITEM_BLUE_ORB 277
|
||||
#define ITEM_SCANNER 278
|
||||
#define ITEM_GO_GOGGLES 279
|
||||
#define ITEM_METEORITE 280
|
||||
#define ITEM_ROOM_1_KEY 281
|
||||
#define ITEM_ROOM_2_KEY 282
|
||||
#define ITEM_ROOM_4_KEY 283
|
||||
#define ITEM_ROOM_6_KEY 284
|
||||
#define ITEM_STORAGE_KEY 285
|
||||
#define ITEM_ROOT_FOSSIL 286
|
||||
#define ITEM_CLAW_FOSSIL 287
|
||||
#define ITEM_DEVON_SCOPE 288
|
||||
|
||||
// TMs/HMs
|
||||
#define ITEM_TM01 289
|
||||
#define ITEM_TM02 290
|
||||
#define ITEM_TM03 291
|
||||
#define ITEM_TM04 292
|
||||
#define ITEM_TM05 293
|
||||
#define ITEM_TM06 294
|
||||
#define ITEM_TM07 295
|
||||
#define ITEM_TM08 296
|
||||
#define ITEM_TM09 297
|
||||
#define ITEM_TM10 298
|
||||
#define ITEM_TM11 299
|
||||
#define ITEM_TM12 300
|
||||
#define ITEM_TM13 301
|
||||
#define ITEM_TM14 302
|
||||
#define ITEM_TM15 303
|
||||
#define ITEM_TM16 304
|
||||
#define ITEM_TM17 305
|
||||
#define ITEM_TM18 306
|
||||
#define ITEM_TM19 307
|
||||
#define ITEM_TM20 308
|
||||
#define ITEM_TM21 309
|
||||
#define ITEM_TM22 310
|
||||
#define ITEM_TM23 311
|
||||
#define ITEM_TM24 312
|
||||
#define ITEM_TM25 313
|
||||
#define ITEM_TM26 314
|
||||
#define ITEM_TM27 315
|
||||
#define ITEM_TM28 316
|
||||
#define ITEM_TM29 317
|
||||
#define ITEM_TM30 318
|
||||
#define ITEM_TM31 319
|
||||
#define ITEM_TM32 320
|
||||
#define ITEM_TM33 321
|
||||
#define ITEM_TM34 322
|
||||
#define ITEM_TM35 323
|
||||
#define ITEM_TM36 324
|
||||
#define ITEM_TM37 325
|
||||
#define ITEM_TM38 326
|
||||
#define ITEM_TM39 327
|
||||
#define ITEM_TM40 328
|
||||
#define ITEM_TM41 329
|
||||
#define ITEM_TM42 330
|
||||
#define ITEM_TM43 331
|
||||
#define ITEM_TM44 332
|
||||
#define ITEM_TM45 333
|
||||
#define ITEM_TM46 334
|
||||
#define ITEM_TM47 335
|
||||
#define ITEM_TM48 336
|
||||
#define ITEM_TM49 337
|
||||
#define ITEM_TM50 338
|
||||
#define ITEM_HM01 339
|
||||
#define ITEM_HM02 340
|
||||
#define ITEM_HM03 341
|
||||
#define ITEM_HM04 342
|
||||
#define ITEM_HM05 343
|
||||
#define ITEM_HM06 344
|
||||
#define ITEM_HM07 345
|
||||
#define ITEM_HM08 346
|
||||
|
||||
#define ITEM_TM01_FOCUS_PUNCH ITEM_TM01
|
||||
#define ITEM_TM02_DRAGON_CLAW ITEM_TM02
|
||||
#define ITEM_TM03_WATER_PULSE ITEM_TM03
|
||||
#define ITEM_TM04_CALM_MIND ITEM_TM04
|
||||
#define ITEM_TM05_ROAR ITEM_TM05
|
||||
#define ITEM_TM06_TOXIC ITEM_TM06
|
||||
#define ITEM_TM07_HAIL ITEM_TM07
|
||||
#define ITEM_TM08_BULK_UP ITEM_TM08
|
||||
#define ITEM_TM09_BULLET_SEED ITEM_TM09
|
||||
#define ITEM_TM10_HIDDEN_POWER ITEM_TM10
|
||||
#define ITEM_TM11_SUNNY_DAY ITEM_TM11
|
||||
#define ITEM_TM12_TAUNT ITEM_TM12
|
||||
#define ITEM_TM13_ICE_BEAM ITEM_TM13
|
||||
#define ITEM_TM14_BLIZZARD ITEM_TM14
|
||||
#define ITEM_TM15_HYPER_BEAM ITEM_TM15
|
||||
#define ITEM_TM16_LIGHT_SCREEN ITEM_TM16
|
||||
#define ITEM_TM17_PROTECT ITEM_TM17
|
||||
#define ITEM_TM18_RAIN_DANCE ITEM_TM18
|
||||
#define ITEM_TM19_GIGA_DRAIN ITEM_TM19
|
||||
#define ITEM_TM20_SAFEGUARD ITEM_TM20
|
||||
#define ITEM_TM21_FRUSTRATION ITEM_TM21
|
||||
#define ITEM_TM22_SOLARBEAM ITEM_TM22
|
||||
#define ITEM_TM23_IRON_TAIL ITEM_TM23
|
||||
#define ITEM_TM24_THUNDERBOLT ITEM_TM24
|
||||
#define ITEM_TM25_THUNDER ITEM_TM25
|
||||
#define ITEM_TM26_EARTHQUAKE ITEM_TM26
|
||||
#define ITEM_TM27_RETURN ITEM_TM27
|
||||
#define ITEM_TM28_DIG ITEM_TM28
|
||||
#define ITEM_TM29_PSYCHIC ITEM_TM29
|
||||
#define ITEM_TM30_SHADOW_BALL ITEM_TM30
|
||||
#define ITEM_TM31_BRICK_BREAK ITEM_TM31
|
||||
#define ITEM_TM32_DOUBLE_TEAM ITEM_TM32
|
||||
#define ITEM_TM33_REFLECT ITEM_TM33
|
||||
#define ITEM_TM34_SHOCK_WAVE ITEM_TM34
|
||||
#define ITEM_TM35_FLAMETHROWER ITEM_TM35
|
||||
#define ITEM_TM36_SLUDGE_BOMB ITEM_TM36
|
||||
#define ITEM_TM37_SANDSTORM ITEM_TM37
|
||||
#define ITEM_TM38_FIRE_BLAST ITEM_TM38
|
||||
#define ITEM_TM39_ROCK_TOMB ITEM_TM39
|
||||
#define ITEM_TM40_AERIAL_ACE ITEM_TM40
|
||||
#define ITEM_TM41_TORMENT ITEM_TM41
|
||||
#define ITEM_TM42_FACADE ITEM_TM42
|
||||
#define ITEM_TM43_SECRET_POWER ITEM_TM43
|
||||
#define ITEM_TM44_REST ITEM_TM44
|
||||
#define ITEM_TM45_ATTRACT ITEM_TM45
|
||||
#define ITEM_TM46_THIEF ITEM_TM46
|
||||
#define ITEM_TM47_STEEL_WING ITEM_TM47
|
||||
#define ITEM_TM48_SKILL_SWAP ITEM_TM48
|
||||
#define ITEM_TM49_SNATCH ITEM_TM49
|
||||
#define ITEM_TM50_OVERHEAT ITEM_TM50
|
||||
#define ITEM_HM01_CUT ITEM_HM01
|
||||
#define ITEM_HM02_FLY ITEM_HM02
|
||||
#define ITEM_HM03_SURF ITEM_HM03
|
||||
#define ITEM_HM04_STRENGTH ITEM_HM04
|
||||
#define ITEM_HM05_FLASH ITEM_HM05
|
||||
#define ITEM_HM06_ROCK_SMASH ITEM_HM06
|
||||
#define ITEM_HM07_WATERFALL ITEM_HM07
|
||||
#define ITEM_HM08_DIVE ITEM_HM08
|
||||
|
||||
// Unknown
|
||||
#define ITEM_15B 347
|
||||
#define ITEM_15C 348
|
||||
|
||||
// FireRed/LeafGreen
|
||||
#define ITEM_OAKS_PARCEL 349
|
||||
#define ITEM_POKE_FLUTE 350
|
||||
#define ITEM_SECRET_KEY 351
|
||||
#define ITEM_BIKE_VOUCHER 352
|
||||
#define ITEM_GOLD_TEETH 353
|
||||
#define ITEM_OLD_AMBER 354
|
||||
#define ITEM_CARD_KEY 355
|
||||
#define ITEM_LIFT_KEY 356
|
||||
#define ITEM_HELIX_FOSSIL 357
|
||||
#define ITEM_DOME_FOSSIL 358
|
||||
#define ITEM_SILPH_SCOPE 359
|
||||
#define ITEM_BICYCLE 360
|
||||
#define ITEM_TOWN_MAP 361
|
||||
#define ITEM_VS_SEEKER 362
|
||||
#define ITEM_FAME_CHECKER 363
|
||||
#define ITEM_TM_CASE 364
|
||||
#define ITEM_BERRY_POUCH 365
|
||||
#define ITEM_TEACHY_TV 366
|
||||
#define ITEM_TRI_PASS 367
|
||||
#define ITEM_RAINBOW_PASS 368
|
||||
#define ITEM_TEA 369
|
||||
#define ITEM_MYSTIC_TICKET 370
|
||||
#define ITEM_AURORA_TICKET 371
|
||||
#define ITEM_POWDER_JAR 372
|
||||
#define ITEM_RUBY 373
|
||||
#define ITEM_SAPPHIRE 374
|
||||
|
||||
// Emerald
|
||||
#define ITEM_MAGMA_EMBLEM 375
|
||||
#define ITEM_OLD_SEA_MAP 376
|
||||
|
||||
#define ITEM_LAST_ID 376
|
||||
#define ITEM_FIELD_ARROW ITEM_LAST_ID + 1
|
||||
|
||||
#define FIRST_BERRY_INDEX ITEM_CHERI_BERRY
|
||||
#define LAST_BERRY_INDEX ITEM_ENIGMA_BERRY
|
||||
#define ITEM_TO_BERRY(itemId)(((itemId - FIRST_BERRY_INDEX) + 1))
|
||||
|
||||
#define NUM_TECHNICAL_MACHINES 50
|
||||
#define NUM_HIDDEN_MACHINES 8
|
||||
|
||||
#endif // GUARD_CONSTANTS_ITEMS_H
|
||||
263
include/constants/map_objects.h
Normal file
263
include/constants/map_objects.h
Normal file
@@ -0,0 +1,263 @@
|
||||
#ifndef GUARD_CONSTANTS_MAP_OBJECTS_H
|
||||
#define GUARD_CONSTANTS_MAP_OBJECTS_H
|
||||
|
||||
#define MAP_OBJ_GFX_BRENDAN_NORMAL 0
|
||||
#define MAP_OBJ_GFX_BRENDAN_MACH_BIKE 1
|
||||
#define MAP_OBJ_GFX_BRENDAN_SURFING 2
|
||||
#define MAP_OBJ_GFX_BRENDAN_FIELD_MOVE 3
|
||||
#define MAP_OBJ_GFX_QUINTY_PLUMP 4
|
||||
#define MAP_OBJ_GFX_LITTLE_BOY_1 5
|
||||
#define MAP_OBJ_GFX_LITTLE_GIRL_1 6
|
||||
#define MAP_OBJ_GFX_BOY_1 7
|
||||
#define MAP_OBJ_GFX_GIRL_1 8
|
||||
#define MAP_OBJ_GFX_BOY_2 9
|
||||
#define MAP_OBJ_GFX_GIRL_2 10
|
||||
#define MAP_OBJ_GFX_LITTLE_BOY_2 11
|
||||
#define MAP_OBJ_GFX_LITTLE_GIRL_2 12
|
||||
#define MAP_OBJ_GFX_BOY_3 13
|
||||
#define MAP_OBJ_GFX_GIRL_3 14
|
||||
#define MAP_OBJ_GFX_BOY_4 15
|
||||
#define MAP_OBJ_GFX_WOMAN_1 16
|
||||
#define MAP_OBJ_GFX_FAT_MAN 17
|
||||
#define MAP_OBJ_GFX_WOMAN_2 18
|
||||
#define MAP_OBJ_GFX_MAN_1 19
|
||||
#define MAP_OBJ_GFX_WOMAN_3 20
|
||||
#define MAP_OBJ_GFX_OLD_MAN_1 21
|
||||
#define MAP_OBJ_GFX_OLD_WOMAN_1 22
|
||||
#define MAP_OBJ_GFX_MAN_2 23
|
||||
#define MAP_OBJ_GFX_WOMAN_4 24
|
||||
#define MAP_OBJ_GFX_MAN_3 25
|
||||
#define MAP_OBJ_GFX_WOMAN_5 26
|
||||
#define MAP_OBJ_GFX_COOK 27
|
||||
#define MAP_OBJ_GFX_WOMAN_6 28
|
||||
#define MAP_OBJ_GFX_OLD_MAN_2 29
|
||||
#define MAP_OBJ_GFX_OLD_WOMAN_2 30
|
||||
#define MAP_OBJ_GFX_CAMPER 31
|
||||
#define MAP_OBJ_GFX_PICNICKER 32
|
||||
#define MAP_OBJ_GFX_MAN_4 33
|
||||
#define MAP_OBJ_GFX_WOMAN_7 34
|
||||
#define MAP_OBJ_GFX_YOUNGSTER 35
|
||||
#define MAP_OBJ_GFX_BUG_CATCHER 36
|
||||
#define MAP_OBJ_GFX_PSYCHIC_M 37
|
||||
#define MAP_OBJ_GFX_SCHOOL_KID_M 38
|
||||
#define MAP_OBJ_GFX_MANIAC 39
|
||||
#define MAP_OBJ_GFX_HEX_MANIAC 40
|
||||
#define MAP_OBJ_GFX_RAYQUAZA_1 41
|
||||
#define MAP_OBJ_GFX_SWIMMER_M 42
|
||||
#define MAP_OBJ_GFX_SWIMMER_F 43
|
||||
#define MAP_OBJ_GFX_BLACK_BELT 44
|
||||
#define MAP_OBJ_GFX_BEAUTY 45
|
||||
#define MAP_OBJ_GFX_SCIENTIST_1 46
|
||||
#define MAP_OBJ_GFX_LASS 47
|
||||
#define MAP_OBJ_GFX_GENTLEMAN 48
|
||||
#define MAP_OBJ_GFX_SAILOR 49
|
||||
#define MAP_OBJ_GFX_FISHERMAN 50
|
||||
#define MAP_OBJ_GFX_RUNNING_TRIATHLETE_M 51
|
||||
#define MAP_OBJ_GFX_RUNNING_TRIATHLETE_F 52
|
||||
#define MAP_OBJ_GFX_TUBER_F 53
|
||||
#define MAP_OBJ_GFX_TUBER_M 54
|
||||
#define MAP_OBJ_GFX_HIKER 55
|
||||
#define MAP_OBJ_GFX_CYCLING_TRIATHLETE_M 56
|
||||
#define MAP_OBJ_GFX_CYCLING_TRIATHLETE_F 57
|
||||
#define MAP_OBJ_GFX_NURSE 58
|
||||
#define MAP_OBJ_GFX_ITEM_BALL 59
|
||||
#define MAP_OBJ_GFX_BERRY_TREE 60
|
||||
#define MAP_OBJ_GFX_BERRY_TREE_EARLY_STAGES 61
|
||||
#define MAP_OBJ_GFX_BERRY_TREE_LATE_STAGES 62
|
||||
#define MAP_OBJ_GFX_BRENDAN_ACRO_BIKE 63
|
||||
#define MAP_OBJ_GFX_PROF_BIRCH 64
|
||||
#define MAP_OBJ_GFX_MAN_5 65
|
||||
#define MAP_OBJ_GFX_MAN_6 66
|
||||
#define MAP_OBJ_GFX_REPORTER_M 67
|
||||
#define MAP_OBJ_GFX_REPORTER_F 68
|
||||
#define MAP_OBJ_GFX_BARD 69
|
||||
#define MAP_OBJ_GFX_ANABEL 70
|
||||
#define MAP_OBJ_GFX_TUCKER 71
|
||||
#define MAP_OBJ_GFX_GRETA 72
|
||||
#define MAP_OBJ_GFX_SPENSER 73
|
||||
#define MAP_OBJ_GFX_NOLAND 74
|
||||
#define MAP_OBJ_GFX_LUCY 75
|
||||
#define MAP_OBJ_GFX_UNUSED_NATU_DOLL 76
|
||||
#define MAP_OBJ_GFX_UNUSED_MAGNEMITE_DOLL 77
|
||||
#define MAP_OBJ_GFX_UNUSED_SQUIRTLE_DOLL 78
|
||||
#define MAP_OBJ_GFX_UNUSED_WOOPER_DOLL 79
|
||||
#define MAP_OBJ_GFX_UNUSED_PIKACHU_DOLL 80
|
||||
#define MAP_OBJ_GFX_UNUSED_PORYGON2_DOLL 81
|
||||
#define MAP_OBJ_GFX_CUTTABLE_TREE 82
|
||||
#define MAP_OBJ_GFX_MART_EMPLOYEE 83
|
||||
#define MAP_OBJ_GFX_ROOFTOP_SALE_WOMAN 84
|
||||
#define MAP_OBJ_GFX_TEALA 85
|
||||
#define MAP_OBJ_GFX_BREAKABLE_ROCK 86
|
||||
#define MAP_OBJ_GFX_PUSHABLE_BOULDER 87
|
||||
#define MAP_OBJ_GFX_MR_BRINEYS_BOAT 88
|
||||
#define MAP_OBJ_GFX_MAY_NORMAL 89
|
||||
#define MAP_OBJ_GFX_MAY_MACH_BIKE 90
|
||||
#define MAP_OBJ_GFX_MAY_ACRO_BIKE 91
|
||||
#define MAP_OBJ_GFX_MAY_SURFING 92
|
||||
#define MAP_OBJ_GFX_MAY_FIELD_MOVE 93
|
||||
#define MAP_OBJ_GFX_TRUCK 94
|
||||
#define MAP_OBJ_GFX_VIGAROTH_CARRYING_BOX 95
|
||||
#define MAP_OBJ_GFX_VIGAROTH_FACING_AWAY 96
|
||||
#define MAP_OBJ_GFX_BIRCHS_BAG 97
|
||||
#define MAP_OBJ_GFX_ZIGZAGOON_1 98
|
||||
#define MAP_OBJ_GFX_ARTIST 99
|
||||
#define MAP_OBJ_GFX_RIVAL_BRENDAN_NORMAL 100
|
||||
#define MAP_OBJ_GFX_RIVAL_BRENDAN_MACH_BIKE 101
|
||||
#define MAP_OBJ_GFX_RIVAL_BRENDAN_ACRO_BIKE 102
|
||||
#define MAP_OBJ_GFX_RIVAL_BRENDAN_SURFING 103
|
||||
#define MAP_OBJ_GFX_RIVAL_BRENDAN_FIELD_MOVE 104
|
||||
#define MAP_OBJ_GFX_RIVAL_MAY_NORMAL 105
|
||||
#define MAP_OBJ_GFX_RIVAL_MAY_MACH_BIKE 106
|
||||
#define MAP_OBJ_GFX_RIVAL_MAY_ACRO_BIKE 107
|
||||
#define MAP_OBJ_GFX_RIVAL_MAY_SURFING 108
|
||||
#define MAP_OBJ_GFX_RIVAL_MAY_FIELD_MOVE 109
|
||||
#define MAP_OBJ_GFX_CAMERAMAN 110
|
||||
#define MAP_OBJ_GFX_BRENDAN_UNDERWATER 111
|
||||
#define MAP_OBJ_GFX_MAY_UNDERWATER 112
|
||||
#define MAP_OBJ_GFX_MOVING_BOX 113
|
||||
#define MAP_OBJ_GFX_CABLE_CAR 114
|
||||
#define MAP_OBJ_GFX_SCIENTIST_2 115
|
||||
#define MAP_OBJ_GFX_MAN_7 116
|
||||
#define MAP_OBJ_GFX_AQUA_MEMBER_M 117
|
||||
#define MAP_OBJ_GFX_AQUA_MEMBER_F 118
|
||||
#define MAP_OBJ_GFX_MAGMA_MEMBER_M 119
|
||||
#define MAP_OBJ_GFX_MAGMA_MEMBER_F 120
|
||||
#define MAP_OBJ_GFX_SIDNEY 121
|
||||
#define MAP_OBJ_GFX_PHOEBE 122
|
||||
#define MAP_OBJ_GFX_GLACIA 123
|
||||
#define MAP_OBJ_GFX_DRAKE 124
|
||||
#define MAP_OBJ_GFX_ROXANNE 125
|
||||
#define MAP_OBJ_GFX_BRAWLY 126
|
||||
#define MAP_OBJ_GFX_WATTSON 127
|
||||
#define MAP_OBJ_GFX_FLANNERY 128
|
||||
#define MAP_OBJ_GFX_NORMAN 129
|
||||
#define MAP_OBJ_GFX_WINONA 130
|
||||
#define MAP_OBJ_GFX_LIZA 131
|
||||
#define MAP_OBJ_GFX_TATE 132
|
||||
#define MAP_OBJ_GFX_WALLACE 133
|
||||
#define MAP_OBJ_GFX_STEVEN 134
|
||||
#define MAP_OBJ_GFX_WALLY 135
|
||||
#define MAP_OBJ_GFX_LITTLE_BOY_3 136
|
||||
#define MAP_OBJ_GFX_BRENDAN_FISHING 137
|
||||
#define MAP_OBJ_GFX_MAY_FISHING 138
|
||||
#define MAP_OBJ_GFX_HOT_SPRINGS_OLD_WOMAN 139
|
||||
#define MAP_OBJ_GFX_SS_TIDAL 140
|
||||
#define MAP_OBJ_GFX_SUBMARINE_SHADOW 141
|
||||
#define MAP_OBJ_GFX_PICHU_DOLL 142
|
||||
#define MAP_OBJ_GFX_PIKACHU_DOLL 143
|
||||
#define MAP_OBJ_GFX_MARILL_DOLL 144
|
||||
#define MAP_OBJ_GFX_TOGEPI_DOLL 145
|
||||
#define MAP_OBJ_GFX_CYNDAQUIL_DOLL 146
|
||||
#define MAP_OBJ_GFX_CHIKORITA_DOLL 147
|
||||
#define MAP_OBJ_GFX_TOTODILE_DOLL 148
|
||||
#define MAP_OBJ_GFX_JIGGLYPUFF_DOLL 149
|
||||
#define MAP_OBJ_GFX_MEOWTH_DOLL 150
|
||||
#define MAP_OBJ_GFX_CLEFAIRY_DOLL 151
|
||||
#define MAP_OBJ_GFX_DITTO_DOLL 152
|
||||
#define MAP_OBJ_GFX_SMOOCHUM_DOLL 153
|
||||
#define MAP_OBJ_GFX_TREECKO_DOLL 154
|
||||
#define MAP_OBJ_GFX_TORCHIC_DOLL 155
|
||||
#define MAP_OBJ_GFX_MUDKIP_DOLL 156
|
||||
#define MAP_OBJ_GFX_DUSKULL_DOLL 157
|
||||
#define MAP_OBJ_GFX_WYNAUT_DOLL 158
|
||||
#define MAP_OBJ_GFX_BALTOY_DOLL 159
|
||||
#define MAP_OBJ_GFX_KECLEON_DOLL 160
|
||||
#define MAP_OBJ_GFX_AZURILL_DOLL 161
|
||||
#define MAP_OBJ_GFX_SKITTY_DOLL 162
|
||||
#define MAP_OBJ_GFX_SWABLU_DOLL 163
|
||||
#define MAP_OBJ_GFX_GULPIN_DOLL 164
|
||||
#define MAP_OBJ_GFX_LOTAD_DOLL 165
|
||||
#define MAP_OBJ_GFX_SEEDOT_DOLL 166
|
||||
#define MAP_OBJ_GFX_PIKA_CUSHION 167
|
||||
#define MAP_OBJ_GFX_ROUND_CUSHION 168
|
||||
#define MAP_OBJ_GFX_KISS_CUSHION 169
|
||||
#define MAP_OBJ_GFX_ZIGZAG_CUSHION 170
|
||||
#define MAP_OBJ_GFX_SPIN_CUSHION 171
|
||||
#define MAP_OBJ_GFX_DIAMOND_CUSHION 172
|
||||
#define MAP_OBJ_GFX_BALL_CUSHION 173
|
||||
#define MAP_OBJ_GFX_GRASS_CUSHION 174
|
||||
#define MAP_OBJ_GFX_FIRE_CUSHION 175
|
||||
#define MAP_OBJ_GFX_WATER_CUSHION 176
|
||||
#define MAP_OBJ_GFX_BIG_SNORLAX_DOLL 177
|
||||
#define MAP_OBJ_GFX_BIG_RHYDON_DOLL 178
|
||||
#define MAP_OBJ_GFX_BIG_LAPRAS_DOLL 179
|
||||
#define MAP_OBJ_GFX_BIG_VENUSAUR_DOLL 180
|
||||
#define MAP_OBJ_GFX_BIG_CHARIZARD_DOLL 181
|
||||
#define MAP_OBJ_GFX_BIG_BLASTOISE_DOLL 182
|
||||
#define MAP_OBJ_GFX_BIG_WAILMER_DOLL 183
|
||||
#define MAP_OBJ_GFX_BIG_REGIROCK_DOLL 184
|
||||
#define MAP_OBJ_GFX_BIG_REGICE_DOLL 185
|
||||
#define MAP_OBJ_GFX_BIG_REGISTEEL_DOLL 186
|
||||
#define MAP_OBJ_GFX_LATIAS 187
|
||||
#define MAP_OBJ_GFX_LATIOS 188
|
||||
#define MAP_OBJ_GFX_BOY_5 189
|
||||
#define MAP_OBJ_GFX_CONTEST_JUDGE 190
|
||||
#define MAP_OBJ_GFX_BRENDAN_WATERING 191
|
||||
#define MAP_OBJ_GFX_MAY_WATERING 192
|
||||
#define MAP_OBJ_GFX_BRENDAN_DECORATING 193
|
||||
#define MAP_OBJ_GFX_MAY_DECORATING 194
|
||||
#define MAP_OBJ_GFX_ARCHIE 195
|
||||
#define MAP_OBJ_GFX_MAXIE 196
|
||||
#define MAP_OBJ_GFX_KYOGRE_1 197
|
||||
#define MAP_OBJ_GFX_GROUDON_1 198
|
||||
#define MAP_OBJ_GFX_FOSSIL 199
|
||||
#define MAP_OBJ_GFX_REGIROCK 200
|
||||
#define MAP_OBJ_GFX_REGICE 201
|
||||
#define MAP_OBJ_GFX_REGISTEEL 202
|
||||
#define MAP_OBJ_GFX_SKITTY 203
|
||||
#define MAP_OBJ_GFX_KECLEON_1 204
|
||||
#define MAP_OBJ_GFX_KYOGRE_2 205
|
||||
#define MAP_OBJ_GFX_GROUDON_2 206
|
||||
#define MAP_OBJ_GFX_RAYQUAZA_2 207
|
||||
#define MAP_OBJ_GFX_ZIGZAGOON_2 208
|
||||
#define MAP_OBJ_GFX_PIKACHU 209
|
||||
#define MAP_OBJ_GFX_AZUMARILL 210
|
||||
#define MAP_OBJ_GFX_WINGULL 211
|
||||
#define MAP_OBJ_GFX_KECLEON_2 212
|
||||
#define MAP_OBJ_GFX_TUBER_M_SWIMMING 213
|
||||
#define MAP_OBJ_GFX_AZURILL 214
|
||||
#define MAP_OBJ_GFX_MOM 215
|
||||
#define MAP_OBJ_GFX_LINK_BRENDAN 216
|
||||
#define MAP_OBJ_GFX_LINK_MAY 217
|
||||
#define MAP_OBJ_GFX_JUAN 218
|
||||
#define MAP_OBJ_GFX_SCOTT 219
|
||||
#define MAP_OBJ_GFX_POOCHYENA 220
|
||||
#define MAP_OBJ_GFX_KYOGRE_3 221
|
||||
#define MAP_OBJ_GFX_GROUDON_3 222
|
||||
#define MAP_OBJ_GFX_MYSTERY_GIFT_MAN 223
|
||||
#define MAP_OBJ_GFX_TRICK_HOUSE_STATUE 224
|
||||
#define MAP_OBJ_GFX_KIRLIA 225
|
||||
#define MAP_OBJ_GFX_DUSCLOPS 226
|
||||
#define MAP_OBJ_GFX_UNION_ROOM_NURSE 227
|
||||
#define MAP_OBJ_GFX_SUDOWOODO 228
|
||||
#define MAP_OBJ_GFX_MEW 229
|
||||
#define MAP_OBJ_GFX_RED 230
|
||||
#define MAP_OBJ_GFX_LEAF 231
|
||||
#define MAP_OBJ_GFX_DEOXYS 232
|
||||
#define MAP_OBJ_GFX_DEOXYS_TRIANGLE 233
|
||||
#define MAP_OBJ_GFX_BRANDON 234
|
||||
#define MAP_OBJ_GFX_LINK_RS_BRENDAN 235
|
||||
#define MAP_OBJ_GFX_LINK_RS_MAY 236
|
||||
#define MAP_OBJ_GFX_LUGIA 237
|
||||
#define MAP_OBJ_GFX_HOOH 238
|
||||
#define MAP_OBJ_GFX_BARD_2 239
|
||||
#define MAP_OBJ_GFX_HIPSTER 240
|
||||
#define MAP_OBJ_GFX_TRADER 241
|
||||
#define MAP_OBJ_GFX_STORYTELLER 242
|
||||
#define MAP_OBJ_GFX_GIDDY 243
|
||||
#define MAP_OBJ_GFX_PLACEHOLDER_1 244
|
||||
#define MAP_OBJ_GFX_PLACEHOLDER_2 245
|
||||
|
||||
#define SHADOW_SIZE_S 0
|
||||
#define SHADOW_SIZE_M 1
|
||||
#define SHADOW_SIZE_L 2
|
||||
#define SHADOW_SIZE_XL 3
|
||||
|
||||
#define F_INANIMATE (1 << 6)
|
||||
#define F_DISABLE_REFLECTION_PALETTE_LOAD (1 << 7)
|
||||
|
||||
#define TRACKS_NONE 0
|
||||
#define TRACKS_FOOT 1
|
||||
#define TRACKS_BIKE_TIRE 2
|
||||
|
||||
#endif // GUARD_CONSTANTS_MAP_OBJECTS_H
|
||||
598
include/constants/maps.h
Normal file
598
include/constants/maps.h
Normal file
@@ -0,0 +1,598 @@
|
||||
#ifndef GUARD_CONSTANTS_MAPS_H
|
||||
#define GUARD_CONSTANTS_MAPS_H
|
||||
|
||||
// Map Group 0
|
||||
#define MAP_PETALBURG_CITY (0 | (0 << 8))
|
||||
#define MAP_SLATEPORT_CITY (1 | (0 << 8))
|
||||
#define MAP_MAUVILLE_CITY (2 | (0 << 8))
|
||||
#define MAP_RUSTBORO_CITY (3 | (0 << 8))
|
||||
#define MAP_FORTREE_CITY (4 | (0 << 8))
|
||||
#define MAP_LILYCOVE_CITY (5 | (0 << 8))
|
||||
#define MAP_MOSSDEEP_CITY (6 | (0 << 8))
|
||||
#define MAP_SOOTOPOLIS_CITY (7 | (0 << 8))
|
||||
#define MAP_EVER_GRANDE_CITY (8 | (0 << 8))
|
||||
#define MAP_LITTLEROOT_TOWN (9 | (0 << 8))
|
||||
#define MAP_OLDALE_TOWN (10 | (0 << 8))
|
||||
#define MAP_DEWFORD_TOWN (11 | (0 << 8))
|
||||
#define MAP_LAVARIDGE_TOWN (12 | (0 << 8))
|
||||
#define MAP_FALLARBOR_TOWN (13 | (0 << 8))
|
||||
#define MAP_VERDANTURF_TOWN (14 | (0 << 8))
|
||||
#define MAP_PACIFIDLOG_TOWN (15 | (0 << 8))
|
||||
#define MAP_ROUTE101 (16 | (0 << 8))
|
||||
#define MAP_ROUTE102 (17 | (0 << 8))
|
||||
#define MAP_ROUTE103 (18 | (0 << 8))
|
||||
#define MAP_ROUTE104 (19 | (0 << 8))
|
||||
#define MAP_ROUTE105 (20 | (0 << 8))
|
||||
#define MAP_ROUTE106 (21 | (0 << 8))
|
||||
#define MAP_ROUTE107 (22 | (0 << 8))
|
||||
#define MAP_ROUTE108 (23 | (0 << 8))
|
||||
#define MAP_ROUTE109 (24 | (0 << 8))
|
||||
#define MAP_ROUTE110 (25 | (0 << 8))
|
||||
#define MAP_ROUTE111 (26 | (0 << 8))
|
||||
#define MAP_ROUTE112 (27 | (0 << 8))
|
||||
#define MAP_ROUTE113 (28 | (0 << 8))
|
||||
#define MAP_ROUTE114 (29 | (0 << 8))
|
||||
#define MAP_ROUTE115 (30 | (0 << 8))
|
||||
#define MAP_ROUTE116 (31 | (0 << 8))
|
||||
#define MAP_ROUTE117 (32 | (0 << 8))
|
||||
#define MAP_ROUTE118 (33 | (0 << 8))
|
||||
#define MAP_ROUTE119 (34 | (0 << 8))
|
||||
#define MAP_ROUTE120 (35 | (0 << 8))
|
||||
#define MAP_ROUTE121 (36 | (0 << 8))
|
||||
#define MAP_ROUTE122 (37 | (0 << 8))
|
||||
#define MAP_ROUTE123 (38 | (0 << 8))
|
||||
#define MAP_ROUTE124 (39 | (0 << 8))
|
||||
#define MAP_ROUTE125 (40 | (0 << 8))
|
||||
#define MAP_ROUTE126 (41 | (0 << 8))
|
||||
#define MAP_ROUTE127 (42 | (0 << 8))
|
||||
#define MAP_ROUTE128 (43 | (0 << 8))
|
||||
#define MAP_ROUTE129 (44 | (0 << 8))
|
||||
#define MAP_ROUTE130 (45 | (0 << 8))
|
||||
#define MAP_ROUTE131 (46 | (0 << 8))
|
||||
#define MAP_ROUTE132 (47 | (0 << 8))
|
||||
#define MAP_ROUTE133 (48 | (0 << 8))
|
||||
#define MAP_ROUTE134 (49 | (0 << 8))
|
||||
#define MAP_UNDERWATER1 (50 | (0 << 8))
|
||||
#define MAP_UNDERWATER2 (51 | (0 << 8))
|
||||
#define MAP_UNDERWATER3 (52 | (0 << 8))
|
||||
#define MAP_UNDERWATER4 (53 | (0 << 8))
|
||||
#define MAP_UNDERWATER5 (54 | (0 << 8))
|
||||
#define MAP_UNDERWATER6 (55 | (0 << 8))
|
||||
#define MAP_UNDERWATER7 (56 | (0 << 8))
|
||||
|
||||
// Map Group 1
|
||||
#define MAP_LITTLEROOT_TOWN_BRENDANS_HOUSE_1F (0 | (1 << 8))
|
||||
#define MAP_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F (1 | (1 << 8))
|
||||
#define MAP_LITTLEROOT_TOWN_MAYS_HOUSE_1F (2 | (1 << 8))
|
||||
#define MAP_LITTLEROOT_TOWN_MAYS_HOUSE_2F (3 | (1 << 8))
|
||||
#define MAP_LITTLEROOT_TOWN_PROFESSOR_BIRCHS_LAB (4 | (1 << 8))
|
||||
|
||||
// Map Group 2
|
||||
#define MAP_OLDALE_TOWN_HOUSE1 (0 | (2 << 8))
|
||||
#define MAP_OLDALE_TOWN_HOUSE2 (1 | (2 << 8))
|
||||
#define MAP_OLDALE_TOWN_POKEMON_CENTER_1F (2 | (2 << 8))
|
||||
#define MAP_OLDALE_TOWN_POKEMON_CENTER_2F (3 | (2 << 8))
|
||||
#define MAP_OLDALE_TOWN_MART (4 | (2 << 8))
|
||||
|
||||
// Map Group 3
|
||||
#define MAP_DEWFORD_TOWN_HOUSE1 (0 | (3 << 8))
|
||||
#define MAP_DEWFORD_TOWN_POKEMON_CENTER_1F (1 | (3 << 8))
|
||||
#define MAP_DEWFORD_TOWN_POKEMON_CENTER_2F (2 | (3 << 8))
|
||||
#define MAP_DEWFORD_TOWN_GYM (3 | (3 << 8))
|
||||
#define MAP_DEWFORD_TOWN_HALL (4 | (3 << 8))
|
||||
#define MAP_DEWFORD_TOWN_HOUSE2 (5 | (3 << 8))
|
||||
|
||||
// Map Group 4
|
||||
#define MAP_LAVARIDGE_TOWN_HERB_SHOP (0 | (4 << 8))
|
||||
#define MAP_LAVARIDGE_TOWN_GYM_1F (1 | (4 << 8))
|
||||
#define MAP_LAVARIDGE_TOWN_GYM_B1F (2 | (4 << 8))
|
||||
#define MAP_LAVARIDGE_TOWN_HOUSE (3 | (4 << 8))
|
||||
#define MAP_LAVARIDGE_TOWN_MART (4 | (4 << 8))
|
||||
#define MAP_LAVARIDGE_TOWN_POKEMON_CENTER_1F (5 | (4 << 8))
|
||||
#define MAP_LAVARIDGE_TOWN_POKEMON_CENTER_2F (6 | (4 << 8))
|
||||
|
||||
// Map Group 5
|
||||
#define MAP_FALLARBOR_TOWN_MART (0 | (5 << 8))
|
||||
#define MAP_FALLARBOR_TOWN_BATTLE_TENT_LOBBY (1 | (5 << 8))
|
||||
#define MAP_FALLARBOR_TOWN_BATTLE_TENT_CORRIDOR (2 | (5 << 8))
|
||||
#define MAP_FALLARBOR_TOWN_BATTLE_TENT_BATTLE_ROOM (3 | (5 << 8))
|
||||
#define MAP_FALLARBOR_TOWN_POKEMON_CENTER_1F (4 | (5 << 8))
|
||||
#define MAP_FALLARBOR_TOWN_POKEMON_CENTER_2F (5 | (5 << 8))
|
||||
#define MAP_FALLARBOR_TOWN_HOUSE1 (6 | (5 << 8))
|
||||
#define MAP_FALLARBOR_TOWN_HOUSE2 (7 | (5 << 8))
|
||||
|
||||
// Map Group 6
|
||||
#define MAP_VERDANTURF_TOWN_BATTLE_TENT_LOBBY (0 | (6 << 8))
|
||||
#define MAP_VERDANTURF_TOWN_BATTLE_TENT_CORRIDOR (1 | (6 << 8))
|
||||
#define MAP_VERDANTURF_TOWN_BATTLE_TENT_BATTLE_ROOM (2 | (6 << 8))
|
||||
#define MAP_VERDANTURF_TOWN_MART (3 | (6 << 8))
|
||||
#define MAP_VERDANTURF_TOWN_POKEMON_CENTER_1F (4 | (6 << 8))
|
||||
#define MAP_VERDANTURF_TOWN_POKEMON_CENTER_2F (5 | (6 << 8))
|
||||
#define MAP_VERDANTURF_TOWN_WANDAS_HOUSE (6 | (6 << 8))
|
||||
#define MAP_VERDANTURF_TOWN_FRIENDSHIP_RATERS_HOUSE (7 | (6 << 8))
|
||||
#define MAP_VERDANTURF_TOWN_HOUSE (8 | (6 << 8))
|
||||
|
||||
// Map Group 7
|
||||
#define MAP_PACIFIDLOG_TOWN_POKEMON_CENTER_1F (0 | (7 << 8))
|
||||
#define MAP_PACIFIDLOG_TOWN_POKEMON_CENTER_2F (1 | (7 << 8))
|
||||
#define MAP_PACIFIDLOG_TOWN_HOUSE1 (2 | (7 << 8))
|
||||
#define MAP_PACIFIDLOG_TOWN_HOUSE2 (3 | (7 << 8))
|
||||
#define MAP_PACIFIDLOG_TOWN_HOUSE3 (4 | (7 << 8))
|
||||
#define MAP_PACIFIDLOG_TOWN_HOUSE4 (5 | (7 << 8))
|
||||
#define MAP_PACIFIDLOG_TOWN_HOUSE5 (6 | (7 << 8))
|
||||
|
||||
// Map Group 8
|
||||
#define MAP_PETALBURG_CITY_WALLYS_HOUSE (0 | (8 << 8))
|
||||
#define MAP_PETALBURG_CITY_GYM (1 | (8 << 8))
|
||||
#define MAP_PETALBURG_CITY_HOUSE1 (2 | (8 << 8))
|
||||
#define MAP_PETALBURG_CITY_HOUSE2 (3 | (8 << 8))
|
||||
#define MAP_PETALBURG_CITY_POKEMON_CENTER_1F (4 | (8 << 8))
|
||||
#define MAP_PETALBURG_CITY_POKEMON_CENTER_2F (5 | (8 << 8))
|
||||
#define MAP_PETALBURG_CITY_MART (6 | (8 << 8))
|
||||
|
||||
// Map Group 9
|
||||
#define MAP_SLATEPORT_CITY_STERNS_SHIPYARD_1F (0 | (9 << 8))
|
||||
#define MAP_SLATEPORT_CITY_STERNS_SHIPYARD_2F (1 | (9 << 8))
|
||||
#define MAP_SLATEPORT_CITY_BATTLE_TENT_LOBBY (2 | (9 << 8))
|
||||
#define MAP_SLATEPORT_CITY_BATTLE_TENT_CORRIDOR (3 | (9 << 8))
|
||||
#define MAP_SLATEPORT_CITY_BATTLE_TENT_BATTLE_ROOM (4 | (9 << 8))
|
||||
#define MAP_SLATEPORT_CITY_HOUSE1 (5 | (9 << 8))
|
||||
#define MAP_SLATEPORT_CITY_POKEMON_FAN_CLUB (6 | (9 << 8))
|
||||
#define MAP_SLATEPORT_CITY_OCEANIC_MUSEUM_1F (7 | (9 << 8))
|
||||
#define MAP_SLATEPORT_CITY_OCEANIC_MUSEUM_2F (8 | (9 << 8))
|
||||
#define MAP_SLATEPORT_CITY_HARBOR (9 | (9 << 8))
|
||||
#define MAP_SLATEPORT_CITY_HOUSE2 (10 | (9 << 8))
|
||||
#define MAP_SLATEPORT_CITY_POKEMON_CENTER_1F (11 | (9 << 8))
|
||||
#define MAP_SLATEPORT_CITY_POKEMON_CENTER_2F (12 | (9 << 8))
|
||||
#define MAP_SLATEPORT_CITY_MART (13 | (9 << 8))
|
||||
|
||||
// Map Group 10
|
||||
#define MAP_MAUVILLE_CITY_GYM (0 | (10 << 8))
|
||||
#define MAP_MAUVILLE_CITY_BIKE_SHOP (1 | (10 << 8))
|
||||
#define MAP_MAUVILLE_CITY_HOUSE1 (2 | (10 << 8))
|
||||
#define MAP_MAUVILLE_CITY_GAME_CORNER (3 | (10 << 8))
|
||||
#define MAP_MAUVILLE_CITY_HOUSE2 (4 | (10 << 8))
|
||||
#define MAP_MAUVILLE_CITY_POKEMON_CENTER_1F (5 | (10 << 8))
|
||||
#define MAP_MAUVILLE_CITY_POKEMON_CENTER_2F (6 | (10 << 8))
|
||||
#define MAP_MAUVILLE_CITY_MART (7 | (10 << 8))
|
||||
|
||||
// Map Group 11
|
||||
#define MAP_RUSTBORO_CITY_DEVON_CORP_1F (0 | (11 << 8))
|
||||
#define MAP_RUSTBORO_CITY_DEVON_CORP_2F (1 | (11 << 8))
|
||||
#define MAP_RUSTBORO_CITY_DEVON_CORP_3F (2 | (11 << 8))
|
||||
#define MAP_RUSTBORO_CITY_GYM (3 | (11 << 8))
|
||||
#define MAP_RUSTBORO_CITY_POKEMON_SCHOOL (4 | (11 << 8))
|
||||
#define MAP_RUSTBORO_CITY_POKEMON_CENTER_1F (5 | (11 << 8))
|
||||
#define MAP_RUSTBORO_CITY_POKEMON_CENTER_2F (6 | (11 << 8))
|
||||
#define MAP_RUSTBORO_CITY_MART (7 | (11 << 8))
|
||||
#define MAP_RUSTBORO_CITY_FLAT1_1F (8 | (11 << 8))
|
||||
#define MAP_RUSTBORO_CITY_FLAT1_2F (9 | (11 << 8))
|
||||
#define MAP_RUSTBORO_CITY_HOUSE1 (10 | (11 << 8))
|
||||
#define MAP_RUSTBORO_CITY_CUTTERS_HOUSE (11 | (11 << 8))
|
||||
#define MAP_RUSTBORO_CITY_HOUSE2 (12 | (11 << 8))
|
||||
#define MAP_RUSTBORO_CITY_FLAT2_1F (13 | (11 << 8))
|
||||
#define MAP_RUSTBORO_CITY_FLAT2_2F (14 | (11 << 8))
|
||||
#define MAP_RUSTBORO_CITY_FLAT2_3F (15 | (11 << 8))
|
||||
#define MAP_RUSTBORO_CITY_HOUSE3 (16 | (11 << 8))
|
||||
|
||||
// Map Group 12
|
||||
#define MAP_FORTREE_CITY_HOUSE1 (0 | (12 << 8))
|
||||
#define MAP_FORTREE_CITY_GYM (1 | (12 << 8))
|
||||
#define MAP_FORTREE_CITY_POKEMON_CENTER_1F (2 | (12 << 8))
|
||||
#define MAP_FORTREE_CITY_POKEMON_CENTER_2F (3 | (12 << 8))
|
||||
#define MAP_FORTREE_CITY_MART (4 | (12 << 8))
|
||||
#define MAP_FORTREE_CITY_HOUSE2 (5 | (12 << 8))
|
||||
#define MAP_FORTREE_CITY_HOUSE3 (6 | (12 << 8))
|
||||
#define MAP_FORTREE_CITY_HOUSE4 (7 | (12 << 8))
|
||||
#define MAP_FORTREE_CITY_HOUSE5 (8 | (12 << 8))
|
||||
#define MAP_FORTREE_CITY_DECORATION_SHOP (9 | (12 << 8))
|
||||
|
||||
// Map Group 13
|
||||
#define MAP_LILYCOVE_CITY_COVE_LILY_MOTEL_1F (0 | (13 << 8))
|
||||
#define MAP_LILYCOVE_CITY_COVE_LILY_MOTEL_2F (1 | (13 << 8))
|
||||
#define MAP_LILYCOVE_CITY_LILYCOVE_MUSEUM_1F (2 | (13 << 8))
|
||||
#define MAP_LILYCOVE_CITY_LILYCOVE_MUSEUM_2F (3 | (13 << 8))
|
||||
#define MAP_LILYCOVE_CITY_CONTEST_LOBBY (4 | (13 << 8))
|
||||
#define MAP_LILYCOVE_CITY_CONTEST_HALL (5 | (13 << 8))
|
||||
#define MAP_LILYCOVE_CITY_POKEMON_CENTER_1F (6 | (13 << 8))
|
||||
#define MAP_LILYCOVE_CITY_POKEMON_CENTER_2F (7 | (13 << 8))
|
||||
#define MAP_LILYCOVE_CITY_UNUSED_MART (8 | (13 << 8))
|
||||
#define MAP_LILYCOVE_CITY_POKEMON_TRAINER_FAN_CLUB (9 | (13 << 8))
|
||||
#define MAP_LILYCOVE_CITY_HARBOR (10 | (13 << 8))
|
||||
#define MAP_LILYCOVE_CITY_MOVE_DELETERS_HOUSE (11 | (13 << 8))
|
||||
#define MAP_LILYCOVE_CITY_HOUSE1 (12 | (13 << 8))
|
||||
#define MAP_LILYCOVE_CITY_HOUSE2 (13 | (13 << 8))
|
||||
#define MAP_LILYCOVE_CITY_HOUSE3 (14 | (13 << 8))
|
||||
#define MAP_LILYCOVE_CITY_HOUSE4 (15 | (13 << 8))
|
||||
#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_1F (16 | (13 << 8))
|
||||
#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_2F (17 | (13 << 8))
|
||||
#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_3F (18 | (13 << 8))
|
||||
#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_4F (19 | (13 << 8))
|
||||
#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_5F (20 | (13 << 8))
|
||||
#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_ROOFTOP (21 | (13 << 8))
|
||||
#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_ELEVATOR (22 | (13 << 8))
|
||||
|
||||
// Map Group 14
|
||||
#define MAP_MOSSDEEP_CITY_GYM (0 | (14 << 8))
|
||||
#define MAP_MOSSDEEP_CITY_HOUSE1 (1 | (14 << 8))
|
||||
#define MAP_MOSSDEEP_CITY_HOUSE2 (2 | (14 << 8))
|
||||
#define MAP_MOSSDEEP_CITY_POKEMON_CENTER_1F (3 | (14 << 8))
|
||||
#define MAP_MOSSDEEP_CITY_POKEMON_CENTER_2F (4 | (14 << 8))
|
||||
#define MAP_MOSSDEEP_CITY_MART (5 | (14 << 8))
|
||||
#define MAP_MOSSDEEP_CITY_HOUSE3 (6 | (14 << 8))
|
||||
#define MAP_MOSSDEEP_CITY_STEVENS_HOUSE (7 | (14 << 8))
|
||||
#define MAP_MOSSDEEP_CITY_HOUSE4 (8 | (14 << 8))
|
||||
#define MAP_MOSSDEEP_CITY_SPACE_CENTER_1F (9 | (14 << 8))
|
||||
#define MAP_MOSSDEEP_CITY_SPACE_CENTER_2F (10 | (14 << 8))
|
||||
#define MAP_MOSSDEEP_CITY_GAME_CORNER_1F (11 | (14 << 8))
|
||||
#define MAP_MOSSDEEP_CITY_GAME_CORNER_B1F (12 | (14 << 8))
|
||||
|
||||
// Map Group 15
|
||||
#define MAP_SOOTOPOLIS_CITY_GYM_1F (0 | (15 << 8))
|
||||
#define MAP_SOOTOPOLIS_CITY_GYM_B1F (1 | (15 << 8))
|
||||
#define MAP_SOOTOPOLIS_CITY_POKEMON_CENTER_1F (2 | (15 << 8))
|
||||
#define MAP_SOOTOPOLIS_CITY_POKEMON_CENTER_2F (3 | (15 << 8))
|
||||
#define MAP_SOOTOPOLIS_CITY_MART (4 | (15 << 8))
|
||||
#define MAP_SOOTOPOLIS_CITY_HOUSE1 (5 | (15 << 8))
|
||||
#define MAP_SOOTOPOLIS_CITY_HOUSE2 (6 | (15 << 8))
|
||||
#define MAP_SOOTOPOLIS_CITY_HOUSE3 (7 | (15 << 8))
|
||||
#define MAP_SOOTOPOLIS_CITY_HOUSE4 (8 | (15 << 8))
|
||||
#define MAP_SOOTOPOLIS_CITY_HOUSE5 (9 | (15 << 8))
|
||||
#define MAP_SOOTOPOLIS_CITY_HOUSE6 (10 | (15 << 8))
|
||||
#define MAP_SOOTOPOLIS_CITY_HOUSE7 (11 | (15 << 8))
|
||||
#define MAP_SOOTOPOLIS_CITY_HOUSE8 (12 | (15 << 8))
|
||||
#define MAP_SOOTOPOLIS_CITY_HOUSE9_1F (13 | (15 << 8))
|
||||
#define MAP_SOOTOPOLIS_CITY_HOUSE9_B1F (14 | (15 << 8))
|
||||
|
||||
// Map Group 16
|
||||
#define MAP_EVER_GRANDE_CITY_SIDNEYS_ROOM (0 | (16 << 8))
|
||||
#define MAP_EVER_GRANDE_CITY_PHOEBES_ROOM (1 | (16 << 8))
|
||||
#define MAP_EVER_GRANDE_CITY_GLACIAS_ROOM (2 | (16 << 8))
|
||||
#define MAP_EVER_GRANDE_CITY_DRAKES_ROOM (3 | (16 << 8))
|
||||
#define MAP_EVER_GRANDE_CITY_CHAMPIONS_ROOM (4 | (16 << 8))
|
||||
#define MAP_EVER_GRANDE_CITY_CORRIDOR1 (5 | (16 << 8))
|
||||
#define MAP_EVER_GRANDE_CITY_CORRIDOR2 (6 | (16 << 8))
|
||||
#define MAP_EVER_GRANDE_CITY_CORRIDOR3 (7 | (16 << 8))
|
||||
#define MAP_EVER_GRANDE_CITY_CORRIDOR4 (8 | (16 << 8))
|
||||
#define MAP_EVER_GRANDE_CITY_CORRIDOR5 (9 | (16 << 8))
|
||||
#define MAP_EVER_GRANDE_CITY_POKEMON_LEAGUE_1F (10 | (16 << 8))
|
||||
#define MAP_EVER_GRANDE_CITY_HALL_OF_FAME (11 | (16 << 8))
|
||||
#define MAP_EVER_GRANDE_CITY_POKEMON_CENTER_1F (12 | (16 << 8))
|
||||
#define MAP_EVER_GRANDE_CITY_POKEMON_CENTER_2F (13 | (16 << 8))
|
||||
#define MAP_EVER_GRANDE_CITY_POKEMON_LEAGUE_2F (14 | (16 << 8))
|
||||
|
||||
// Map Group 17
|
||||
#define MAP_ROUTE104_MR_BRINEYS_HOUSE (0 | (17 << 8))
|
||||
#define MAP_ROUTE104_PRETTY_PETAL_FLOWER_SHOP (1 | (17 << 8))
|
||||
|
||||
// Map Group 18
|
||||
#define MAP_ROUTE111_WINSTRATE_FAMILYS_HOUSE (0 | (18 << 8))
|
||||
#define MAP_ROUTE111_OLD_LADYS_REST_STOP (1 | (18 << 8))
|
||||
|
||||
// Map Group 19
|
||||
#define MAP_ROUTE112_CABLE_CAR_STATION (0 | (19 << 8))
|
||||
#define MAP_MT_CHIMNEY_CABLE_CAR_STATION (1 | (19 << 8))
|
||||
|
||||
// Map Group 20
|
||||
#define MAP_ROUTE114_FOSSIL_MANIACS_HOUSE (0 | (20 << 8))
|
||||
#define MAP_ROUTE114_FOSSIL_MANIACS_TUNNEL (1 | (20 << 8))
|
||||
#define MAP_ROUTE114_LANETTES_HOUSE (2 | (20 << 8))
|
||||
|
||||
// Map Group 21
|
||||
#define MAP_ROUTE116_TUNNELERS_REST_HOUSE (0 | (21 << 8))
|
||||
|
||||
// Map Group 22
|
||||
#define MAP_ROUTE117_POKEMON_DAY_CARE (0 | (22 << 8))
|
||||
|
||||
// Map Group 23
|
||||
#define MAP_ROUTE121_SAFARI_ZONE_ENTRANCE (0 | (23 << 8))
|
||||
|
||||
// Map Group 24
|
||||
#define MAP_METEOR_FALLS_1F_1R (0 | (24 << 8))
|
||||
#define MAP_METEOR_FALLS_1F_2R (1 | (24 << 8))
|
||||
#define MAP_METEOR_FALLS_B1F_1R (2 | (24 << 8))
|
||||
#define MAP_METEOR_FALLS_B1F_2R (3 | (24 << 8))
|
||||
#define MAP_RUSTURF_TUNNEL (4 | (24 << 8))
|
||||
#define MAP_UNDERWATER_SOOTOPOLIS_CITY (5 | (24 << 8))
|
||||
#define MAP_DESERT_RUINS (6 | (24 << 8))
|
||||
#define MAP_GRANITE_CAVE_1F (7 | (24 << 8))
|
||||
#define MAP_GRANITE_CAVE_B1F (8 | (24 << 8))
|
||||
#define MAP_GRANITE_CAVE_B2F (9 | (24 << 8))
|
||||
#define MAP_GRANITE_CAVE_STEVENS_ROOM (10 | (24 << 8))
|
||||
#define MAP_PETALBURG_WOODS (11 | (24 << 8))
|
||||
#define MAP_MT_CHIMNEY (12 | (24 << 8))
|
||||
#define MAP_JAGGED_PASS (13 | (24 << 8))
|
||||
#define MAP_FIERY_PATH (14 | (24 << 8))
|
||||
#define MAP_MT_PYRE_1F (15 | (24 << 8))
|
||||
#define MAP_MT_PYRE_2F (16 | (24 << 8))
|
||||
#define MAP_MT_PYRE_3F (17 | (24 << 8))
|
||||
#define MAP_MT_PYRE_4F (18 | (24 << 8))
|
||||
#define MAP_MT_PYRE_5F (19 | (24 << 8))
|
||||
#define MAP_MT_PYRE_6F (20 | (24 << 8))
|
||||
#define MAP_MT_PYRE_EXTERIOR (21 | (24 << 8))
|
||||
#define MAP_MT_PYRE_SUMMIT (22 | (24 << 8))
|
||||
#define MAP_AQUA_HIDEOUT_1F (23 | (24 << 8))
|
||||
#define MAP_AQUA_HIDEOUT_B1F (24 | (24 << 8))
|
||||
#define MAP_AQUA_HIDEOUT_B2F (25 | (24 << 8))
|
||||
#define MAP_UNDERWATER_SEAFLOOR_CAVERN (26 | (24 << 8))
|
||||
#define MAP_SEAFLOOR_CAVERN_ENTRANCE (27 | (24 << 8))
|
||||
#define MAP_SEAFLOOR_CAVERN_ROOM1 (28 | (24 << 8))
|
||||
#define MAP_SEAFLOOR_CAVERN_ROOM2 (29 | (24 << 8))
|
||||
#define MAP_SEAFLOOR_CAVERN_ROOM3 (30 | (24 << 8))
|
||||
#define MAP_SEAFLOOR_CAVERN_ROOM4 (31 | (24 << 8))
|
||||
#define MAP_SEAFLOOR_CAVERN_ROOM5 (32 | (24 << 8))
|
||||
#define MAP_SEAFLOOR_CAVERN_ROOM6 (33 | (24 << 8))
|
||||
#define MAP_SEAFLOOR_CAVERN_ROOM7 (34 | (24 << 8))
|
||||
#define MAP_SEAFLOOR_CAVERN_ROOM8 (35 | (24 << 8))
|
||||
#define MAP_SEAFLOOR_CAVERN_ROOM9 (36 | (24 << 8))
|
||||
#define MAP_CAVE_OF_ORIGIN_ENTRANCE (37 | (24 << 8))
|
||||
#define MAP_CAVE_OF_ORIGIN_1F (38 | (24 << 8))
|
||||
#define MAP_CAVE_OF_ORIGIN_UNUSED_RS_B1F (39 | (24 << 8)) //
|
||||
#define MAP_CAVE_OF_ORIGIN_UNUSED_RS_B2F (40 | (24 << 8)) // Ruby/Sapphire leftovers
|
||||
#define MAP_CAVE_OF_ORIGIN_UNUSED_RS_B3F (41 | (24 << 8)) //
|
||||
#define MAP_CAVE_OF_ORIGIN_B1F (42 | (24 << 8))
|
||||
#define MAP_VICTORY_ROAD_1F (43 | (24 << 8))
|
||||
#define MAP_VICTORY_ROAD_B1F (44 | (24 << 8))
|
||||
#define MAP_VICTORY_ROAD_B2F (45 | (24 << 8))
|
||||
#define MAP_SHOAL_CAVE_LOW_TIDE_ENTRANCE_ROOM (46 | (24 << 8))
|
||||
#define MAP_SHOAL_CAVE_LOW_TIDE_INNER_ROOM (47 | (24 << 8))
|
||||
#define MAP_SHOAL_CAVE_LOW_TIDE_STAIRS_ROOM (48 | (24 << 8))
|
||||
#define MAP_SHOAL_CAVE_LOW_TIDE_LOWER_ROOM (49 | (24 << 8))
|
||||
#define MAP_SHOAL_CAVE_HIGH_TIDE_ENTRANCE_ROOM (50 | (24 << 8))
|
||||
#define MAP_SHOAL_CAVE_HIGH_TIDE_INNER_ROOM (51 | (24 << 8))
|
||||
#define MAP_NEW_MAUVILLE_ENTRANCE (52 | (24 << 8))
|
||||
#define MAP_NEW_MAUVILLE_INSIDE (53 | (24 << 8))
|
||||
#define MAP_ABANDONED_SHIP_DECK (54 | (24 << 8))
|
||||
#define MAP_ABANDONED_SHIP_CORRIDORS_1F (55 | (24 << 8))
|
||||
#define MAP_ABANDONED_SHIP_ROOMS_1F (56 | (24 << 8))
|
||||
#define MAP_ABANDONED_SHIP_CORRIDORS_B1F (57 | (24 << 8))
|
||||
#define MAP_ABANDONED_SHIP_ROOMS_B1F (58 | (24 << 8))
|
||||
#define MAP_ABANDONED_SHIP_ROOMS2_B1F (59 | (24 << 8))
|
||||
#define MAP_ABANDONED_SHIP_UNDERWATER1 (60 | (24 << 8))
|
||||
#define MAP_ABANDONED_SHIP_ROOM_B1F (61 | (24 << 8))
|
||||
#define MAP_ABANDONED_SHIP_ROOMS2_1F (62 | (24 << 8))
|
||||
#define MAP_ABANDONED_SHIP_CAPTAINS_OFFICE (63 | (24 << 8))
|
||||
#define MAP_ABANDONED_SHIP_UNDERWATER2 (64 | (24 << 8))
|
||||
#define MAP_ABANDONED_SHIP_HIDDEN_FLOOR_CORRIDORS (65 | (24 << 8))
|
||||
#define MAP_ABANDONED_SHIP_HIDDEN_FLOOR_ROOMS (66 | (24 << 8))
|
||||
#define MAP_ISLAND_CAVE (67 | (24 << 8))
|
||||
#define MAP_ANCIENT_TOMB (68 | (24 << 8))
|
||||
#define MAP_UNDERWATER_ROUTE134 (69 | (24 << 8))
|
||||
#define MAP_UNDERWATER_SEALED_CHAMBER (70 | (24 << 8))
|
||||
#define MAP_SEALED_CHAMBER_OUTER_ROOM (71 | (24 << 8))
|
||||
#define MAP_SEALED_CHAMBER_INNER_ROOM (72 | (24 << 8))
|
||||
#define MAP_SCORCHED_SLAB (73 | (24 << 8))
|
||||
#define MAP_UNUSED_RUBY_MAGMA_HIDEOUT_1F (74 | (24 << 8)) //
|
||||
#define MAP_UNUSED_RUBY_MAGMA_HIDEOUT_B1F (75 | (24 << 8)) // Ruby/Sapphire leftovers
|
||||
#define MAP_UNUSED_RUBY_MAGMA_HIDEOUT_B2F (76 | (24 << 8)) //
|
||||
#define MAP_SKY_PILLAR_ENTRANCE (77 | (24 << 8))
|
||||
#define MAP_SKY_PILLAR_OUTSIDE (78 | (24 << 8))
|
||||
#define MAP_SKY_PILLAR_1F (79 | (24 << 8))
|
||||
#define MAP_SKY_PILLAR_2F (80 | (24 << 8))
|
||||
#define MAP_SKY_PILLAR_3F (81 | (24 << 8))
|
||||
#define MAP_SKY_PILLAR_4F (82 | (24 << 8))
|
||||
#define MAP_SHOAL_CAVE_LOW_TIDE_ICE_ROOM (83 | (24 << 8))
|
||||
#define MAP_SKY_PILLAR_5F (84 | (24 << 8))
|
||||
#define MAP_SKY_PILLAR_TOP (85 | (24 << 8))
|
||||
#define MAP_MAGMA_HIDEOUT_1F (86 | (24 << 8))
|
||||
#define MAP_MAGMA_HIDEOUT_2F_1R (87 | (24 << 8))
|
||||
#define MAP_MAGMA_HIDEOUT_2F_2R (88 | (24 << 8))
|
||||
#define MAP_MAGMA_HIDEOUT_3F_1R (89 | (24 << 8))
|
||||
#define MAP_MAGMA_HIDEOUT_3F_2R (90 | (24 << 8))
|
||||
#define MAP_MAGMA_HIDEOUT_4F (91 | (24 << 8))
|
||||
#define MAP_MAGMA_HIDEOUT_3F_3R (92 | (24 << 8))
|
||||
#define MAP_MAGMA_HIDEOUT_2F_3R (93 | (24 << 8))
|
||||
#define MAP_MIRAGE_TOWER_1F (94 | (24 << 8))
|
||||
#define MAP_MIRAGE_TOWER_2F (95 | (24 << 8))
|
||||
#define MAP_MIRAGE_TOWER_3F (96 | (24 << 8))
|
||||
#define MAP_MIRAGE_TOWER_4F (97 | (24 << 8))
|
||||
#define MAP_DESERT_UNDERPASS (98 | (24 << 8))
|
||||
#define MAP_ARTISAN_CAVE_B1F (99 | (24 << 8))
|
||||
#define MAP_ARTISAN_CAVE_1F (100 | (24 << 8))
|
||||
#define MAP_UNDERWATER_MARINE_CAVE (101 | (24 << 8))
|
||||
#define MAP_MARINE_CAVE_ENTRANCE (102 | (24 << 8))
|
||||
#define MAP_MARINE_CAVE_END (103 | (24 << 8))
|
||||
#define MAP_TERRA_CAVE_ENTRANCE (104 | (24 << 8))
|
||||
#define MAP_TERRA_CAVE_END (105 | (24 << 8))
|
||||
#define MAP_ALTERING_CAVE (106 | (24 << 8))
|
||||
#define MAP_METEOR_FALLS_STEVENS_CAVE (107 | (24 << 8))
|
||||
|
||||
// Map Group 25
|
||||
#define MAP_SECRET_BASE_RED_CAVE1 (0 | (25 << 8))
|
||||
#define MAP_SECRET_BASE_BROWN_CAVE1 (1 | (25 << 8))
|
||||
#define MAP_SECRET_BASE_BLUE_CAVE1 (2 | (25 << 8))
|
||||
#define MAP_SECRET_BASE_YELLOW_CAVE1 (3 | (25 << 8))
|
||||
#define MAP_SECRET_BASE_TREE1 (4 | (25 << 8))
|
||||
#define MAP_SECRET_BASE_SHRUB1 (5 | (25 << 8))
|
||||
#define MAP_SECRET_BASE_RED_CAVE2 (6 | (25 << 8))
|
||||
#define MAP_SECRET_BASE_BROWN_CAVE2 (7 | (25 << 8))
|
||||
#define MAP_SECRET_BASE_BLUE_CAVE2 (8 | (25 << 8))
|
||||
#define MAP_SECRET_BASE_YELLOW_CAVE2 (9 | (25 << 8))
|
||||
#define MAP_SECRET_BASE_TREE2 (10 | (25 << 8))
|
||||
#define MAP_SECRET_BASE_SHRUB2 (11 | (25 << 8))
|
||||
#define MAP_SECRET_BASE_RED_CAVE3 (12 | (25 << 8))
|
||||
#define MAP_SECRET_BASE_BROWN_CAVE3 (13 | (25 << 8))
|
||||
#define MAP_SECRET_BASE_BLUE_CAVE3 (14 | (25 << 8))
|
||||
#define MAP_SECRET_BASE_YELLOW_CAVE3 (15 | (25 << 8))
|
||||
#define MAP_SECRET_BASE_TREE3 (16 | (25 << 8))
|
||||
#define MAP_SECRET_BASE_SHRUB3 (17 | (25 << 8))
|
||||
#define MAP_SECRET_BASE_RED_CAVE4 (18 | (25 << 8))
|
||||
#define MAP_SECRET_BASE_BROWN_CAVE4 (19 | (25 << 8))
|
||||
#define MAP_SECRET_BASE_BLUE_CAVE4 (20 | (25 << 8))
|
||||
#define MAP_SECRET_BASE_YELLOW_CAVE4 (21 | (25 << 8))
|
||||
#define MAP_SECRET_BASE_TREE4 (22 | (25 << 8))
|
||||
#define MAP_SECRET_BASE_SHRUB4 (23 | (25 << 8))
|
||||
#define MAP_SINGLE_BATTLE_COLOSSEUM (24 | (25 << 8))
|
||||
#define MAP_TRADE_CENTER (25 | (25 << 8))
|
||||
#define MAP_RECORD_CORNER (26 | (25 << 8))
|
||||
#define MAP_DOUBLE_BATTLE_COLOSSEUM (27 | (25 << 8))
|
||||
#define MAP_LINK_CONTEST_ROOM1 (28 | (25 << 8))
|
||||
#define MAP_UNKNOWN_MAP_25_29 (29 | (25 << 8))
|
||||
#define MAP_UNKNOWN_MAP_25_30 (30 | (25 << 8))
|
||||
#define MAP_UNKNOWN_MAP_25_31 (31 | (25 << 8))
|
||||
#define MAP_UNKNOWN_MAP_25_32 (32 | (25 << 8))
|
||||
#define MAP_UNKNOWN_MAP_25_33 (33 | (25 << 8))
|
||||
#define MAP_UNKNOWN_MAP_25_34 (34 | (25 << 8))
|
||||
#define MAP_LINK_CONTEST_ROOM2 (35 | (25 << 8))
|
||||
#define MAP_LINK_CONTEST_ROOM3 (36 | (25 << 8))
|
||||
#define MAP_LINK_CONTEST_ROOM4 (37 | (25 << 8))
|
||||
#define MAP_LINK_CONTEST_ROOM5 (38 | (25 << 8))
|
||||
#define MAP_LINK_CONTEST_ROOM6 (39 | (25 << 8))
|
||||
#define MAP_INSIDE_OF_TRUCK (40 | (25 << 8))
|
||||
#define MAP_SS_TIDAL_CORRIDOR (41 | (25 << 8))
|
||||
#define MAP_SS_TIDAL_LOWER_DECK (42 | (25 << 8))
|
||||
#define MAP_SS_TIDAL_ROOMS (43 | (25 << 8))
|
||||
#define MAP_BATTLE_PYRAMID_SQUARE_01 (44 | (25 << 8))
|
||||
#define MAP_BATTLE_PYRAMID_SQUARE_02 (45 | (25 << 8))
|
||||
#define MAP_BATTLE_PYRAMID_SQUARE_03 (46 | (25 << 8))
|
||||
#define MAP_BATTLE_PYRAMID_SQUARE_04 (47 | (25 << 8))
|
||||
#define MAP_BATTLE_PYRAMID_SQUARE_05 (48 | (25 << 8))
|
||||
#define MAP_BATTLE_PYRAMID_SQUARE_06 (49 | (25 << 8))
|
||||
#define MAP_BATTLE_PYRAMID_SQUARE_07 (50 | (25 << 8))
|
||||
#define MAP_BATTLE_PYRAMID_SQUARE_08 (51 | (25 << 8))
|
||||
#define MAP_BATTLE_PYRAMID_SQUARE_09 (52 | (25 << 8))
|
||||
#define MAP_BATTLE_PYRAMID_SQUARE_10 (53 | (25 << 8))
|
||||
#define MAP_BATTLE_PYRAMID_SQUARE_11 (54 | (25 << 8))
|
||||
#define MAP_BATTLE_PYRAMID_SQUARE_12 (55 | (25 << 8))
|
||||
#define MAP_BATTLE_PYRAMID_SQUARE_13 (56 | (25 << 8))
|
||||
#define MAP_BATTLE_PYRAMID_SQUARE_14 (57 | (25 << 8))
|
||||
#define MAP_BATTLE_PYRAMID_SQUARE_15 (58 | (25 << 8))
|
||||
#define MAP_BATTLE_PYRAMID_SQUARE_16 (59 | (25 << 8))
|
||||
#define MAP_UNION_ROOM (60 | (25 << 8))
|
||||
|
||||
// Map Group 26
|
||||
#define MAP_SAFARI_ZONE_NORTHWEST (0 | (26 << 8))
|
||||
#define MAP_SAFARI_ZONE_NORTHEAST (1 | (26 << 8))
|
||||
#define MAP_SAFARI_ZONE_SOUTHWEST (2 | (26 << 8))
|
||||
#define MAP_SAFARI_ZONE_SOUTHEAST (3 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_OUTSIDE_WEST (4 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_BATTLE_TOWER_LOBBY (5 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_BATTLE_TOWER_ELEVATOR (6 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_BATTLE_TOWER_CORRIDOR (7 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_BATTLE_TOWER_BATTLE_ROOM (8 | (26 << 8))
|
||||
#define MAP_SOUTHERN_ISLAND_EXTERIOR (9 | (26 << 8))
|
||||
#define MAP_SOUTHERN_ISLAND_INTERIOR (10 | (26 << 8))
|
||||
#define MAP_SAFARI_ZONE_REST_HOUSE (11 | (26 << 8))
|
||||
#define MAP_SAFARI_ZONE_EM_1 (12 | (26 << 8))
|
||||
#define MAP_SAFARI_ZONE_EM_2 (13 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_OUTSIDE_EAST (14 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_BATTLE_ROOM (15 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_BATTLE_TOWER_CORRIDOR_2 (16 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_BATTLE_TOWER_BATTLE_ROOM_2 (17 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_BATTLE_DOME_LOBBY (18 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_BATTLE_DOME_CORRIDOR (19 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_BATTLE_DOME_PRE_BATTLE_ROOM (20 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_BATTLE_DOME_BATTLE_ROOM (21 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_BATTLE_PALACE_LOBBY (22 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_BATTLE_PALACE_CORRIDOR (23 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_BATTLE_PALACE_BATTLE_ROOM (24 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_LOBBY (25 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_EMPTY_SQUARE (26 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_TOP (27 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_BATTLE_ARENA_LOBBY (28 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_BATTLE_ARENA_CORRIDOR (29 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_BATTLE_ARENA_BATTLE_ROOM (30 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_BATTLE_FACTORY_LOBBY (31 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_BATTLE_FACTORY_PRE_BATTLE_ROOM (32 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_BATTLE_FACTORY_BATTLE_ROOM (33 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_BATTLE_PIKE_LOBBY (34 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_BATTLE_PIKE_CORRIDOR (35 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_BATTLE_PIKE_THREE_PATH_ROOM (36 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_BATTLE_PIKE_RANDOM_ROOM_1 (37 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_BATTLE_PIKE_RANDOM_ROOM_2 (38 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_BATTLE_PIKE_RANDOM_ROOM_3 (39 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_RANKING_HALL (40 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_LOUNGE_1 (41 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_BATTLE_POINT_EXCHANGE_SERVICE_CORNER (42 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_LOUNGE_2 (43 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_LOUNGE_3 (44 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_LOUNGE_4 (45 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_SCOTTS_HOUSE (46 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_LOUNGE_5 (47 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_LOUNGE_6 (48 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_LOUNGE_7 (49 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_RECEPTION_GATE (50 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_LOUNGE_8 (51 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_LOUNGE_9 (52 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_POKEMON_CENTER_1F (53 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_POKEMON_CENTER_2F (54 | (26 << 8))
|
||||
#define MAP_BATTLE_FRONTIER_MART (55 | (26 << 8))
|
||||
#define MAP_FARAWAY_ISLAND_ENTRANCE (56 | (26 << 8))
|
||||
#define MAP_FARAWAY_ISLAND_INTERIOR (57 | (26 << 8))
|
||||
#define MAP_BIRTH_ISLAND_EXTERIOR (58 | (26 << 8))
|
||||
#define MAP_BIRTH_ISLAND_HARBOR (59 | (26 << 8))
|
||||
#define MAP_TRAINER_HILL_ENTRANCE (60 | (26 << 8))
|
||||
#define MAP_TRAINER_HILL_1F (61 | (26 << 8))
|
||||
#define MAP_TRAINER_HILL_2F (62 | (26 << 8))
|
||||
#define MAP_TRAINER_HILL_3F (63 | (26 << 8))
|
||||
#define MAP_TRAINER_HILL_4F (64 | (26 << 8))
|
||||
#define MAP_TRAINER_HILL_ROOF (65 | (26 << 8))
|
||||
#define MAP_NAVEL_ROCK_EXTERIOR (66 | (26 << 8))
|
||||
#define MAP_NAVEL_ROCK_HARBOR (67 | (26 << 8))
|
||||
#define MAP_NAVEL_ROCK_ENTRANCE (68 | (26 << 8))
|
||||
#define MAP_NAVEL_ROCK_B1F (69 | (26 << 8))
|
||||
#define MAP_NAVEL_ROCK_FORK (70 | (26 << 8))
|
||||
#define MAP_NAVEL_ROCK_UP_1 (71 | (26 << 8))
|
||||
#define MAP_NAVEL_ROCK_UP_2 (72 | (26 << 8))
|
||||
#define MAP_NAVEL_ROCK_UP_3 (73 | (26 << 8))
|
||||
#define MAP_NAVEL_ROCK_UP_4 (74 | (26 << 8))
|
||||
#define MAP_NAVEL_ROCK_TOP (75 | (26 << 8))
|
||||
#define MAP_NAVEL_ROCK_DOWN_01 (76 | (26 << 8))
|
||||
#define MAP_NAVEL_ROCK_DOWN_02 (77 | (26 << 8))
|
||||
#define MAP_NAVEL_ROCK_DOWN_03 (78 | (26 << 8))
|
||||
#define MAP_NAVEL_ROCK_DOWN_04 (79 | (26 << 8))
|
||||
#define MAP_NAVEL_ROCK_DOWN_05 (80 | (26 << 8))
|
||||
#define MAP_NAVEL_ROCK_DOWN_06 (81 | (26 << 8))
|
||||
#define MAP_NAVEL_ROCK_DOWN_07 (82 | (26 << 8))
|
||||
#define MAP_NAVEL_ROCK_DOWN_08 (83 | (26 << 8))
|
||||
#define MAP_NAVEL_ROCK_DOWN_09 (84 | (26 << 8))
|
||||
#define MAP_NAVEL_ROCK_DOWN_10 (85 | (26 << 8))
|
||||
#define MAP_NAVEL_ROCK_DOWN_11 (86 | (26 << 8))
|
||||
#define MAP_NAVEL_ROCK_BOTTOM (87 | (26 << 8))
|
||||
#define MAP_TRAINER_HILL_ELEVATOR (88 | (26 << 8))
|
||||
|
||||
// Map Group 27
|
||||
#define MAP_ROUTE104_PROTOTYPE (0 | (27 << 8))
|
||||
#define MAP_ROUTE104_PROTOTYPE_PRETTY_PETAL_FLOWER_SHOP (1 | (27 << 8))
|
||||
|
||||
// Map Group 28
|
||||
#define MAP_ROUTE109_SEASHORE_HOUSE (0 | (28 << 8))
|
||||
|
||||
// Map Group 29
|
||||
#define MAP_ROUTE110_TRICK_HOUSE_ENTRANCE (0 | (29 << 8))
|
||||
#define MAP_ROUTE110_TRICK_HOUSE_END (1 | (29 << 8))
|
||||
#define MAP_ROUTE110_TRICK_HOUSE_CORRIDOR (2 | (29 << 8))
|
||||
#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE1 (3 | (29 << 8))
|
||||
#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE2 (4 | (29 << 8))
|
||||
#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE3 (5 | (29 << 8))
|
||||
#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE4 (6 | (29 << 8))
|
||||
#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE5 (7 | (29 << 8))
|
||||
#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE6 (8 | (29 << 8))
|
||||
#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE7 (9 | (29 << 8))
|
||||
#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE8 (10 | (29 << 8))
|
||||
#define MAP_ROUTE110_SEASIDE_CYCLING_ROAD_SOUTH_ENTRANCE (11 | (29 << 8))
|
||||
#define MAP_ROUTE110_SEASIDE_CYCLING_ROAD_NORTH_ENTRANCE (12 | (29 << 8))
|
||||
|
||||
// Map Group 30
|
||||
#define MAP_ROUTE113_GLASS_WORKSHOP (0 | (30 << 8))
|
||||
|
||||
// Map Group 31
|
||||
#define MAP_ROUTE123_BERRY_MASTERS_HOUSE (0 | (31 << 8))
|
||||
|
||||
// Map Group 32
|
||||
#define MAP_ROUTE119_WEATHER_INSTITUTE_1F (0 | (32 << 8))
|
||||
#define MAP_ROUTE119_WEATHER_INSTITUTE_2F (1 | (32 << 8))
|
||||
#define MAP_ROUTE119_HOUSE (2 | (32 << 8))
|
||||
|
||||
// Map Group 33
|
||||
#define MAP_ROUTE124_DIVING_TREASURE_HUNTERS_HOUSE (0 | (33 << 8))
|
||||
|
||||
|
||||
#define MAP_NONE (0x7F | (0x7F << 8))
|
||||
#define MAP_UNDEFINED (0xFF | (0xFF << 8))
|
||||
|
||||
|
||||
#define MAP_GROUP(map) (MAP_##map >> 8)
|
||||
#define MAP_NUM(map) (MAP_##map & 0xFF)
|
||||
|
||||
#endif // GUARD_CONSTANTS_MAPS_H
|
||||
10
include/constants/mauville_man.h
Normal file
10
include/constants/mauville_man.h
Normal file
@@ -0,0 +1,10 @@
|
||||
#ifndef GUARD_CONSTANTS_MAUVILLE_MAN_H
|
||||
#define GUARD_CONSTANTS_MAUVILLE_MAN_H
|
||||
|
||||
#define MAUVILLE_MAN_BARD 0
|
||||
#define MAUVILLE_MAN_HIPSTER 1
|
||||
#define MAUVILLE_MAN_TRADER 2
|
||||
#define MAUVILLE_MAN_STORYTELLER 3
|
||||
#define MAUVILLE_MAN_GIDDY 4
|
||||
|
||||
#endif // GUARD_CONSTANTS_MAUVILLE_MAN_H
|
||||
362
include/constants/moves.h
Normal file
362
include/constants/moves.h
Normal file
@@ -0,0 +1,362 @@
|
||||
#ifndef GUARD_CONSTANTS_MOVES_H
|
||||
#define GUARD_CONSTANTS_MOVES_H
|
||||
|
||||
#define MOVE_NONE 0
|
||||
#define MOVE_POUND 1
|
||||
#define MOVE_KARATE_CHOP 2
|
||||
#define MOVE_DOUBLE_SLAP 3
|
||||
#define MOVE_COMET_PUNCH 4
|
||||
#define MOVE_MEGA_PUNCH 5
|
||||
#define MOVE_PAY_DAY 6
|
||||
#define MOVE_FIRE_PUNCH 7
|
||||
#define MOVE_ICE_PUNCH 8
|
||||
#define MOVE_THUNDER_PUNCH 9
|
||||
#define MOVE_SCRATCH 10
|
||||
#define MOVE_VICE_GRIP 11
|
||||
#define MOVE_GUILLOTINE 12
|
||||
#define MOVE_RAZOR_WIND 13
|
||||
#define MOVE_SWORDS_DANCE 14
|
||||
#define MOVE_CUT 15
|
||||
#define MOVE_GUST 16
|
||||
#define MOVE_WING_ATTACK 17
|
||||
#define MOVE_WHIRLWIND 18
|
||||
#define MOVE_FLY 19
|
||||
#define MOVE_BIND 20
|
||||
#define MOVE_SLAM 21
|
||||
#define MOVE_VINE_WHIP 22
|
||||
#define MOVE_STOMP 23
|
||||
#define MOVE_DOUBLE_KICK 24
|
||||
#define MOVE_MEGA_KICK 25
|
||||
#define MOVE_JUMP_KICK 26
|
||||
#define MOVE_ROLLING_KICK 27
|
||||
#define MOVE_SAND_ATTACK 28
|
||||
#define MOVE_HEADBUTT 29
|
||||
#define MOVE_HORN_ATTACK 30
|
||||
#define MOVE_FURY_ATTACK 31
|
||||
#define MOVE_HORN_DRILL 32
|
||||
#define MOVE_TACKLE 33
|
||||
#define MOVE_BODY_SLAM 34
|
||||
#define MOVE_WRAP 35
|
||||
#define MOVE_TAKE_DOWN 36
|
||||
#define MOVE_THRASH 37
|
||||
#define MOVE_DOUBLE_EDGE 38
|
||||
#define MOVE_TAIL_WHIP 39
|
||||
#define MOVE_POISON_STING 40
|
||||
#define MOVE_TWINEEDLE 41
|
||||
#define MOVE_PIN_MISSILE 42
|
||||
#define MOVE_LEER 43
|
||||
#define MOVE_BITE 44
|
||||
#define MOVE_GROWL 45
|
||||
#define MOVE_ROAR 46
|
||||
#define MOVE_SING 47
|
||||
#define MOVE_SUPERSONIC 48
|
||||
#define MOVE_SONIC_BOOM 49
|
||||
#define MOVE_DISABLE 50
|
||||
#define MOVE_ACID 51
|
||||
#define MOVE_EMBER 52
|
||||
#define MOVE_FLAMETHROWER 53
|
||||
#define MOVE_MIST 54
|
||||
#define MOVE_WATER_GUN 55
|
||||
#define MOVE_HYDRO_PUMP 56
|
||||
#define MOVE_SURF 57
|
||||
#define MOVE_ICE_BEAM 58
|
||||
#define MOVE_BLIZZARD 59
|
||||
#define MOVE_PSYBEAM 60
|
||||
#define MOVE_BUBBLE_BEAM 61
|
||||
#define MOVE_AURORA_BEAM 62
|
||||
#define MOVE_HYPER_BEAM 63
|
||||
#define MOVE_PECK 64
|
||||
#define MOVE_DRILL_PECK 65
|
||||
#define MOVE_SUBMISSION 66
|
||||
#define MOVE_LOW_KICK 67
|
||||
#define MOVE_COUNTER 68
|
||||
#define MOVE_SEISMIC_TOSS 69
|
||||
#define MOVE_STRENGTH 70
|
||||
#define MOVE_ABSORB 71
|
||||
#define MOVE_MEGA_DRAIN 72
|
||||
#define MOVE_LEECH_SEED 73
|
||||
#define MOVE_GROWTH 74
|
||||
#define MOVE_RAZOR_LEAF 75
|
||||
#define MOVE_SOLAR_BEAM 76
|
||||
#define MOVE_POISON_POWDER 77
|
||||
#define MOVE_STUN_SPORE 78
|
||||
#define MOVE_SLEEP_POWDER 79
|
||||
#define MOVE_PETAL_DANCE 80
|
||||
#define MOVE_STRING_SHOT 81
|
||||
#define MOVE_DRAGON_RAGE 82
|
||||
#define MOVE_FIRE_SPIN 83
|
||||
#define MOVE_THUNDER_SHOCK 84
|
||||
#define MOVE_THUNDERBOLT 85
|
||||
#define MOVE_THUNDER_WAVE 86
|
||||
#define MOVE_THUNDER 87
|
||||
#define MOVE_ROCK_THROW 88
|
||||
#define MOVE_EARTHQUAKE 89
|
||||
#define MOVE_FISSURE 90
|
||||
#define MOVE_DIG 91
|
||||
#define MOVE_TOXIC 92
|
||||
#define MOVE_CONFUSION 93
|
||||
#define MOVE_PSYCHIC 94
|
||||
#define MOVE_HYPNOSIS 95
|
||||
#define MOVE_MEDITATE 96
|
||||
#define MOVE_AGILITY 97
|
||||
#define MOVE_QUICK_ATTACK 98
|
||||
#define MOVE_RAGE 99
|
||||
#define MOVE_TELEPORT 100
|
||||
#define MOVE_NIGHT_SHADE 101
|
||||
#define MOVE_MIMIC 102
|
||||
#define MOVE_SCREECH 103
|
||||
#define MOVE_DOUBLE_TEAM 104
|
||||
#define MOVE_RECOVER 105
|
||||
#define MOVE_HARDEN 106
|
||||
#define MOVE_MINIMIZE 107
|
||||
#define MOVE_SMOKESCREEN 108
|
||||
#define MOVE_CONFUSE_RAY 109
|
||||
#define MOVE_WITHDRAW 110
|
||||
#define MOVE_DEFENSE_CURL 111
|
||||
#define MOVE_BARRIER 112
|
||||
#define MOVE_LIGHT_SCREEN 113
|
||||
#define MOVE_HAZE 114
|
||||
#define MOVE_REFLECT 115
|
||||
#define MOVE_FOCUS_ENERGY 116
|
||||
#define MOVE_BIDE 117
|
||||
#define MOVE_METRONOME 118
|
||||
#define MOVE_MIRROR_MOVE 119
|
||||
#define MOVE_SELF_DESTRUCT 120
|
||||
#define MOVE_EGG_BOMB 121
|
||||
#define MOVE_LICK 122
|
||||
#define MOVE_SMOG 123
|
||||
#define MOVE_SLUDGE 124
|
||||
#define MOVE_BONE_CLUB 125
|
||||
#define MOVE_FIRE_BLAST 126
|
||||
#define MOVE_WATERFALL 127
|
||||
#define MOVE_CLAMP 128
|
||||
#define MOVE_SWIFT 129
|
||||
#define MOVE_SKULL_BASH 130
|
||||
#define MOVE_SPIKE_CANNON 131
|
||||
#define MOVE_CONSTRICT 132
|
||||
#define MOVE_AMNESIA 133
|
||||
#define MOVE_KINESIS 134
|
||||
#define MOVE_SOFT_BOILED 135
|
||||
#define MOVE_HI_JUMP_KICK 136
|
||||
#define MOVE_GLARE 137
|
||||
#define MOVE_DREAM_EATER 138
|
||||
#define MOVE_POISON_GAS 139
|
||||
#define MOVE_BARRAGE 140
|
||||
#define MOVE_LEECH_LIFE 141
|
||||
#define MOVE_LOVELY_KISS 142
|
||||
#define MOVE_SKY_ATTACK 143
|
||||
#define MOVE_TRANSFORM 144
|
||||
#define MOVE_BUBBLE 145
|
||||
#define MOVE_DIZZY_PUNCH 146
|
||||
#define MOVE_SPORE 147
|
||||
#define MOVE_FLASH 148
|
||||
#define MOVE_PSYWAVE 149
|
||||
#define MOVE_SPLASH 150
|
||||
#define MOVE_ACID_ARMOR 151
|
||||
#define MOVE_CRABHAMMER 152
|
||||
#define MOVE_EXPLOSION 153
|
||||
#define MOVE_FURY_SWIPES 154
|
||||
#define MOVE_BONEMERANG 155
|
||||
#define MOVE_REST 156
|
||||
#define MOVE_ROCK_SLIDE 157
|
||||
#define MOVE_HYPER_FANG 158
|
||||
#define MOVE_SHARPEN 159
|
||||
#define MOVE_CONVERSION 160
|
||||
#define MOVE_TRI_ATTACK 161
|
||||
#define MOVE_SUPER_FANG 162
|
||||
#define MOVE_SLASH 163
|
||||
#define MOVE_SUBSTITUTE 164
|
||||
#define MOVE_STRUGGLE 165
|
||||
#define MOVE_SKETCH 166
|
||||
#define MOVE_TRIPLE_KICK 167
|
||||
#define MOVE_THIEF 168
|
||||
#define MOVE_SPIDER_WEB 169
|
||||
#define MOVE_MIND_READER 170
|
||||
#define MOVE_NIGHTMARE 171
|
||||
#define MOVE_FLAME_WHEEL 172
|
||||
#define MOVE_SNORE 173
|
||||
#define MOVE_CURSE 174
|
||||
#define MOVE_FLAIL 175
|
||||
#define MOVE_CONVERSION_2 176
|
||||
#define MOVE_AEROBLAST 177
|
||||
#define MOVE_COTTON_SPORE 178
|
||||
#define MOVE_REVERSAL 179
|
||||
#define MOVE_SPITE 180
|
||||
#define MOVE_POWDER_SNOW 181
|
||||
#define MOVE_PROTECT 182
|
||||
#define MOVE_MACH_PUNCH 183
|
||||
#define MOVE_SCARY_FACE 184
|
||||
#define MOVE_FAINT_ATTACK 185
|
||||
#define MOVE_SWEET_KISS 186
|
||||
#define MOVE_BELLY_DRUM 187
|
||||
#define MOVE_SLUDGE_BOMB 188
|
||||
#define MOVE_MUD_SLAP 189
|
||||
#define MOVE_OCTAZOOKA 190
|
||||
#define MOVE_SPIKES 191
|
||||
#define MOVE_ZAP_CANNON 192
|
||||
#define MOVE_FORESIGHT 193
|
||||
#define MOVE_DESTINY_BOND 194
|
||||
#define MOVE_PERISH_SONG 195
|
||||
#define MOVE_ICY_WIND 196
|
||||
#define MOVE_DETECT 197
|
||||
#define MOVE_BONE_RUSH 198
|
||||
#define MOVE_LOCK_ON 199
|
||||
#define MOVE_OUTRAGE 200
|
||||
#define MOVE_SANDSTORM 201
|
||||
#define MOVE_GIGA_DRAIN 202
|
||||
#define MOVE_ENDURE 203
|
||||
#define MOVE_CHARM 204
|
||||
#define MOVE_ROLLOUT 205
|
||||
#define MOVE_FALSE_SWIPE 206
|
||||
#define MOVE_SWAGGER 207
|
||||
#define MOVE_MILK_DRINK 208
|
||||
#define MOVE_SPARK 209
|
||||
#define MOVE_FURY_CUTTER 210
|
||||
#define MOVE_STEEL_WING 211
|
||||
#define MOVE_MEAN_LOOK 212
|
||||
#define MOVE_ATTRACT 213
|
||||
#define MOVE_SLEEP_TALK 214
|
||||
#define MOVE_HEAL_BELL 215
|
||||
#define MOVE_RETURN 216
|
||||
#define MOVE_PRESENT 217
|
||||
#define MOVE_FRUSTRATION 218
|
||||
#define MOVE_SAFEGUARD 219
|
||||
#define MOVE_PAIN_SPLIT 220
|
||||
#define MOVE_SACRED_FIRE 221
|
||||
#define MOVE_MAGNITUDE 222
|
||||
#define MOVE_DYNAMIC_PUNCH 223
|
||||
#define MOVE_MEGAHORN 224
|
||||
#define MOVE_DRAGON_BREATH 225
|
||||
#define MOVE_BATON_PASS 226
|
||||
#define MOVE_ENCORE 227
|
||||
#define MOVE_PURSUIT 228
|
||||
#define MOVE_RAPID_SPIN 229
|
||||
#define MOVE_SWEET_SCENT 230
|
||||
#define MOVE_IRON_TAIL 231
|
||||
#define MOVE_METAL_CLAW 232
|
||||
#define MOVE_VITAL_THROW 233
|
||||
#define MOVE_MORNING_SUN 234
|
||||
#define MOVE_SYNTHESIS 235
|
||||
#define MOVE_MOONLIGHT 236
|
||||
#define MOVE_HIDDEN_POWER 237
|
||||
#define MOVE_CROSS_CHOP 238
|
||||
#define MOVE_TWISTER 239
|
||||
#define MOVE_RAIN_DANCE 240
|
||||
#define MOVE_SUNNY_DAY 241
|
||||
#define MOVE_CRUNCH 242
|
||||
#define MOVE_MIRROR_COAT 243
|
||||
#define MOVE_PSYCH_UP 244
|
||||
#define MOVE_EXTREME_SPEED 245
|
||||
#define MOVE_ANCIENT_POWER 246
|
||||
#define MOVE_SHADOW_BALL 247
|
||||
#define MOVE_FUTURE_SIGHT 248
|
||||
#define MOVE_ROCK_SMASH 249
|
||||
#define MOVE_WHIRLPOOL 250
|
||||
#define MOVE_BEAT_UP 251
|
||||
#define MOVE_FAKE_OUT 252
|
||||
#define MOVE_UPROAR 253
|
||||
#define MOVE_STOCKPILE 254
|
||||
#define MOVE_SPIT_UP 255
|
||||
#define MOVE_SWALLOW 256
|
||||
#define MOVE_HEAT_WAVE 257
|
||||
#define MOVE_HAIL 258
|
||||
#define MOVE_TORMENT 259
|
||||
#define MOVE_FLATTER 260
|
||||
#define MOVE_WILL_O_WISP 261
|
||||
#define MOVE_MEMENTO 262
|
||||
#define MOVE_FACADE 263
|
||||
#define MOVE_FOCUS_PUNCH 264
|
||||
#define MOVE_SMELLING_SALT 265
|
||||
#define MOVE_FOLLOW_ME 266
|
||||
#define MOVE_NATURE_POWER 267
|
||||
#define MOVE_CHARGE 268
|
||||
#define MOVE_TAUNT 269
|
||||
#define MOVE_HELPING_HAND 270
|
||||
#define MOVE_TRICK 271
|
||||
#define MOVE_ROLE_PLAY 272
|
||||
#define MOVE_WISH 273
|
||||
#define MOVE_ASSIST 274
|
||||
#define MOVE_INGRAIN 275
|
||||
#define MOVE_SUPERPOWER 276
|
||||
#define MOVE_MAGIC_COAT 277
|
||||
#define MOVE_RECYCLE 278
|
||||
#define MOVE_REVENGE 279
|
||||
#define MOVE_BRICK_BREAK 280
|
||||
#define MOVE_YAWN 281
|
||||
#define MOVE_KNOCK_OFF 282
|
||||
#define MOVE_ENDEAVOR 283
|
||||
#define MOVE_ERUPTION 284
|
||||
#define MOVE_SKILL_SWAP 285
|
||||
#define MOVE_IMPRISON 286
|
||||
#define MOVE_REFRESH 287
|
||||
#define MOVE_GRUDGE 288
|
||||
#define MOVE_SNATCH 289
|
||||
#define MOVE_SECRET_POWER 290
|
||||
#define MOVE_DIVE 291
|
||||
#define MOVE_ARM_THRUST 292
|
||||
#define MOVE_CAMOUFLAGE 293
|
||||
#define MOVE_TAIL_GLOW 294
|
||||
#define MOVE_LUSTER_PURGE 295
|
||||
#define MOVE_MIST_BALL 296
|
||||
#define MOVE_FEATHER_DANCE 297
|
||||
#define MOVE_TEETER_DANCE 298
|
||||
#define MOVE_BLAZE_KICK 299
|
||||
#define MOVE_MUD_SPORT 300
|
||||
#define MOVE_ICE_BALL 301
|
||||
#define MOVE_NEEDLE_ARM 302
|
||||
#define MOVE_SLACK_OFF 303
|
||||
#define MOVE_HYPER_VOICE 304
|
||||
#define MOVE_POISON_FANG 305
|
||||
#define MOVE_CRUSH_CLAW 306
|
||||
#define MOVE_BLAST_BURN 307
|
||||
#define MOVE_HYDRO_CANNON 308
|
||||
#define MOVE_METEOR_MASH 309
|
||||
#define MOVE_ASTONISH 310
|
||||
#define MOVE_WEATHER_BALL 311
|
||||
#define MOVE_AROMATHERAPY 312
|
||||
#define MOVE_FAKE_TEARS 313
|
||||
#define MOVE_AIR_CUTTER 314
|
||||
#define MOVE_OVERHEAT 315
|
||||
#define MOVE_ODOR_SLEUTH 316
|
||||
#define MOVE_ROCK_TOMB 317
|
||||
#define MOVE_SILVER_WIND 318
|
||||
#define MOVE_METAL_SOUND 319
|
||||
#define MOVE_GRASS_WHISTLE 320
|
||||
#define MOVE_TICKLE 321
|
||||
#define MOVE_COSMIC_POWER 322
|
||||
#define MOVE_WATER_SPOUT 323
|
||||
#define MOVE_SIGNAL_BEAM 324
|
||||
#define MOVE_SHADOW_PUNCH 325
|
||||
#define MOVE_EXTRASENSORY 326
|
||||
#define MOVE_SKY_UPPERCUT 327
|
||||
#define MOVE_SAND_TOMB 328
|
||||
#define MOVE_SHEER_COLD 329
|
||||
#define MOVE_MUDDY_WATER 330
|
||||
#define MOVE_BULLET_SEED 331
|
||||
#define MOVE_AERIAL_ACE 332
|
||||
#define MOVE_ICICLE_SPEAR 333
|
||||
#define MOVE_IRON_DEFENSE 334
|
||||
#define MOVE_BLOCK 335
|
||||
#define MOVE_HOWL 336
|
||||
#define MOVE_DRAGON_CLAW 337
|
||||
#define MOVE_FRENZY_PLANT 338
|
||||
#define MOVE_BULK_UP 339
|
||||
#define MOVE_BOUNCE 340
|
||||
#define MOVE_MUD_SHOT 341
|
||||
#define MOVE_POISON_TAIL 342
|
||||
#define MOVE_COVET 343
|
||||
#define MOVE_VOLT_TACKLE 344
|
||||
#define MOVE_MAGICAL_LEAF 345
|
||||
#define MOVE_WATER_SPORT 346
|
||||
#define MOVE_CALM_MIND 347
|
||||
#define MOVE_LEAF_BLADE 348
|
||||
#define MOVE_DRAGON_DANCE 349
|
||||
#define MOVE_ROCK_BLAST 350
|
||||
#define MOVE_SHOCK_WAVE 351
|
||||
#define MOVE_WATER_PULSE 352
|
||||
#define MOVE_DOOM_DESIRE 353
|
||||
#define MOVE_PSYCHO_BOOST 354
|
||||
|
||||
#define LAST_MOVE_INDEX MOVE_PSYCHO_BOOST
|
||||
|
||||
#endif // GUARD_CONSTANTS_MOVES_H
|
||||
860
include/constants/opponents.h
Normal file
860
include/constants/opponents.h
Normal file
@@ -0,0 +1,860 @@
|
||||
#ifndef GUARD_CONSTANTS_OPPONENTS_H
|
||||
#define GUARD_CONSTANTS_OPPONENTS_H
|
||||
|
||||
#define OPPONENT_NONE 0
|
||||
#define OPPONENT_SAWYER_1 1
|
||||
#define OPPONENT_GRUNT_1 2
|
||||
#define OPPONENT_GRUNT_2 3
|
||||
#define OPPONENT_GRUNT_3 4
|
||||
#define OPPONENT_GRUNT_4 5
|
||||
#define OPPONENT_GRUNT_5 6
|
||||
#define OPPONENT_GRUNT_6 7
|
||||
#define OPPONENT_GRUNT_7 8
|
||||
#define OPPONENT_GABRIELLE_1 9
|
||||
#define OPPONENT_GRUNT_8 10
|
||||
#define OPPONENT_MARCEL 11
|
||||
#define OPPONENT_ALBERTO 12
|
||||
#define OPPONENT_ED 13
|
||||
#define OPPONENT_GRUNT_9 14
|
||||
#define OPPONENT_DECLAN 15
|
||||
#define OPPONENT_GRUNT_10 16
|
||||
#define OPPONENT_GRUNT_11 17
|
||||
#define OPPONENT_GRUNT_12 18
|
||||
#define OPPONENT_GRUNT_13 19
|
||||
#define OPPONENT_GRUNT_14 20
|
||||
#define OPPONENT_GRUNT_15 21
|
||||
#define OPPONENT_GRUNT_16 22
|
||||
#define OPPONENT_GRUNT_17 23
|
||||
#define OPPONENT_GRUNT_18 24
|
||||
#define OPPONENT_GRUNT_19 25
|
||||
#define OPPONENT_GRUNT_20 26
|
||||
#define OPPONENT_GRUNT_21 27
|
||||
#define OPPONENT_GRUNT_22 28
|
||||
#define OPPONENT_FREDRICK 29
|
||||
#define OPPONENT_MATT_1 30
|
||||
#define OPPONENT_ZANDER 31
|
||||
#define OPPONENT_SHELLY_1 32
|
||||
#define OPPONENT_SHELLY_2 33
|
||||
#define OPPONENT_ARCHIE 34
|
||||
#define OPPONENT_LEAH 35
|
||||
#define OPPONENT_DAISY 36
|
||||
#define OPPONENT_ROSE_1 37
|
||||
#define OPPONENT_FELIX 38
|
||||
#define OPPONENT_VIOLET 39
|
||||
#define OPPONENT_ROSE_2 40
|
||||
#define OPPONENT_ROSE_3 41
|
||||
#define OPPONENT_ROSE_4 42
|
||||
#define OPPONENT_ROSE_5 43
|
||||
#define OPPONENT_DUSTY_1 44
|
||||
#define OPPONENT_CHIP 45
|
||||
#define OPPONENT_FOSTER 46
|
||||
#define OPPONENT_DUSTY_2 47
|
||||
#define OPPONENT_DUSTY_3 48
|
||||
#define OPPONENT_DUSTY_4 49
|
||||
#define OPPONENT_DUSTY_5 50
|
||||
#define OPPONENT_GABBY_AND_TY_1 51
|
||||
#define OPPONENT_GABBY_AND_TY_2 52
|
||||
#define OPPONENT_GABBY_AND_TY_3 53
|
||||
#define OPPONENT_GABBY_AND_TY_4 54
|
||||
#define OPPONENT_GABBY_AND_TY_5 55
|
||||
#define OPPONENT_GABBY_AND_TY_6 56
|
||||
#define OPPONENT_LOLA_1 57
|
||||
#define OPPONENT_AUSTINA 58
|
||||
#define OPPONENT_GWEN 59
|
||||
#define OPPONENT_LOLA_2 60
|
||||
#define OPPONENT_LOLA_3 61
|
||||
#define OPPONENT_LOLA_4 62
|
||||
#define OPPONENT_LOLA_5 63
|
||||
#define OPPONENT_RICKY_1 64
|
||||
#define OPPONENT_SIMON 65
|
||||
#define OPPONENT_CHARLIE 66
|
||||
#define OPPONENT_RICKY_2 67
|
||||
#define OPPONENT_RICKY_3 68
|
||||
#define OPPONENT_RICKY_4 69
|
||||
#define OPPONENT_RICKY_5 70
|
||||
#define OPPONENT_RANDALL 71
|
||||
#define OPPONENT_PARKER 72
|
||||
#define OPPONENT_GEORGE 73
|
||||
#define OPPONENT_BERKE 74
|
||||
#define OPPONENT_BRAXTON 75
|
||||
#define OPPONENT_VINCENT 76
|
||||
#define OPPONENT_LEROY 77
|
||||
#define OPPONENT_WILTON_1 78
|
||||
#define OPPONENT_EDGAR 79
|
||||
#define OPPONENT_ALBERT 80
|
||||
#define OPPONENT_SAMUEL 81
|
||||
#define OPPONENT_VITO 82
|
||||
#define OPPONENT_OWEN 83
|
||||
#define OPPONENT_WILTON_2 84
|
||||
#define OPPONENT_WILTON_3 85
|
||||
#define OPPONENT_WILTON_4 86
|
||||
#define OPPONENT_WILTON_5 87
|
||||
#define OPPONENT_WARREN 88
|
||||
#define OPPONENT_MARY 89
|
||||
#define OPPONENT_ALEXIA 90
|
||||
#define OPPONENT_JODY 91
|
||||
#define OPPONENT_WENDY 92
|
||||
#define OPPONENT_KEIRA 93
|
||||
#define OPPONENT_BROOKE_1 94
|
||||
#define OPPONENT_JENNIFER 95
|
||||
#define OPPONENT_HOPE 96
|
||||
#define OPPONENT_SHANNON 97
|
||||
#define OPPONENT_MICHELLE 98
|
||||
#define OPPONENT_CAROLINE 99
|
||||
#define OPPONENT_JULIE 100
|
||||
#define OPPONENT_BROOKE_2 101
|
||||
#define OPPONENT_BROOKE_3 102
|
||||
#define OPPONENT_BROOKE_4 103
|
||||
#define OPPONENT_BROOKE_5 104
|
||||
#define OPPONENT_PATRICIA 105
|
||||
#define OPPONENT_KINDRA 106
|
||||
#define OPPONENT_TAMMY 107
|
||||
#define OPPONENT_VALERIE_1 108
|
||||
#define OPPONENT_TASHA 109
|
||||
#define OPPONENT_VALERIE_2 110
|
||||
#define OPPONENT_VALERIE_3 111
|
||||
#define OPPONENT_VALERIE_4 112
|
||||
#define OPPONENT_VALERIE_5 113
|
||||
#define OPPONENT_CINDY_1 114
|
||||
#define OPPONENT_DAPHNE 115
|
||||
#define OPPONENT_GRUNT_23 116
|
||||
#define OPPONENT_CINDY_2 117
|
||||
#define OPPONENT_BRIANNA 118
|
||||
#define OPPONENT_NAOMI 119
|
||||
#define OPPONENT_CINDY_3 120
|
||||
#define OPPONENT_CINDY_4 121
|
||||
#define OPPONENT_CINDY_5 122
|
||||
#define OPPONENT_CINDY_6 123
|
||||
#define OPPONENT_MELISSA 124
|
||||
#define OPPONENT_SHEILA 125
|
||||
#define OPPONENT_SHIRLEY 126
|
||||
#define OPPONENT_JESSICA_1 127
|
||||
#define OPPONENT_CONNIE 128
|
||||
#define OPPONENT_BRIDGET 129
|
||||
#define OPPONENT_OLIVIA 130
|
||||
#define OPPONENT_TIFFANY 131
|
||||
#define OPPONENT_JESSICA_2 132
|
||||
#define OPPONENT_JESSICA_3 133
|
||||
#define OPPONENT_JESSICA_4 134
|
||||
#define OPPONENT_JESSICA_5 135
|
||||
#define OPPONENT_WINSTON_1 136
|
||||
#define OPPONENT_MOLLIE 137
|
||||
#define OPPONENT_GARRET 138
|
||||
#define OPPONENT_WINSTON_2 139
|
||||
#define OPPONENT_WINSTON_3 140
|
||||
#define OPPONENT_WINSTON_4 141
|
||||
#define OPPONENT_WINSTON_5 142
|
||||
#define OPPONENT_STEVE_1 143
|
||||
#define OPPONENT_THALIA_1 144
|
||||
#define OPPONENT_MARK 145
|
||||
#define OPPONENT_GRUNT_24 146
|
||||
#define OPPONENT_STEVE_2 147
|
||||
#define OPPONENT_STEVE_3 148
|
||||
#define OPPONENT_STEVE_4 149
|
||||
#define OPPONENT_STEVE_5 150
|
||||
#define OPPONENT_LUIS 151
|
||||
#define OPPONENT_DOMINIK 152
|
||||
#define OPPONENT_DOUGLAS 153
|
||||
#define OPPONENT_DARRIN 154
|
||||
#define OPPONENT_TONY_1 155
|
||||
#define OPPONENT_JEROME 156
|
||||
#define OPPONENT_MATTHEW 157
|
||||
#define OPPONENT_DAVID 158
|
||||
#define OPPONENT_SPENCER 159
|
||||
#define OPPONENT_ROLAND 160
|
||||
#define OPPONENT_NOLEN 161
|
||||
#define OPPONENT_STAN 162
|
||||
#define OPPONENT_BARRY 163
|
||||
#define OPPONENT_DEAN 164
|
||||
#define OPPONENT_RODNEY 165
|
||||
#define OPPONENT_RICHARD 166
|
||||
#define OPPONENT_HERMAN 167
|
||||
#define OPPONENT_SANTIAGO 168
|
||||
#define OPPONENT_GILBERT 169
|
||||
#define OPPONENT_FRANKLIN 170
|
||||
#define OPPONENT_KEVIN 171
|
||||
#define OPPONENT_JACK 172
|
||||
#define OPPONENT_DUDLEY 173
|
||||
#define OPPONENT_CHAD 174
|
||||
#define OPPONENT_TONY_2 175
|
||||
#define OPPONENT_TONY_3 176
|
||||
#define OPPONENT_TONY_4 177
|
||||
#define OPPONENT_TONY_5 178
|
||||
#define OPPONENT_TAKAO 179
|
||||
#define OPPONENT_HITOSHI 180
|
||||
#define OPPONENT_KIYO 181
|
||||
#define OPPONENT_KOICHI 182
|
||||
#define OPPONENT_NOB_1 183
|
||||
#define OPPONENT_NOB_2 184
|
||||
#define OPPONENT_NOB_3 185
|
||||
#define OPPONENT_NOB_4 186
|
||||
#define OPPONENT_NOB_5 187
|
||||
#define OPPONENT_YUJI 188
|
||||
#define OPPONENT_DAISUKE 189
|
||||
#define OPPONENT_ATSUSHI 190
|
||||
#define OPPONENT_KIRK 191
|
||||
#define OPPONENT_GRUNT_25 192
|
||||
#define OPPONENT_GRUNT_26 193
|
||||
#define OPPONENT_SHAWN 194
|
||||
#define OPPONENT_FERNANDO_1 195
|
||||
#define OPPONENT_DALTON_1 196
|
||||
#define OPPONENT_DALTON_2 197
|
||||
#define OPPONENT_DALTON_3 198
|
||||
#define OPPONENT_DALTON_4 199
|
||||
#define OPPONENT_DALTON_5 200
|
||||
#define OPPONENT_COLE 201
|
||||
#define OPPONENT_JEFF 202
|
||||
#define OPPONENT_AXLE 203
|
||||
#define OPPONENT_JACE 204
|
||||
#define OPPONENT_KEEGAN 205
|
||||
#define OPPONENT_BERNIE_1 206
|
||||
#define OPPONENT_BERNIE_2 207
|
||||
#define OPPONENT_BERNIE_3 208
|
||||
#define OPPONENT_BERNIE_4 209
|
||||
#define OPPONENT_BERNIE_5 210
|
||||
#define OPPONENT_DREW 211
|
||||
#define OPPONENT_BEAU 212
|
||||
#define OPPONENT_LARRY 213
|
||||
#define OPPONENT_SHANE 214
|
||||
#define OPPONENT_JUSTIN 215
|
||||
#define OPPONENT_ETHAN_1 216
|
||||
#define OPPONENT_AUTUMN 217
|
||||
#define OPPONENT_TRAVIS 218
|
||||
#define OPPONENT_ETHAN_2 219
|
||||
#define OPPONENT_ETHAN_3 220
|
||||
#define OPPONENT_ETHAN_4 221
|
||||
#define OPPONENT_ETHAN_5 222
|
||||
#define OPPONENT_BRENT 223
|
||||
#define OPPONENT_DONALD 224
|
||||
#define OPPONENT_TAYLOR 225
|
||||
#define OPPONENT_JEFFREY_1 226
|
||||
#define OPPONENT_DEREK 227
|
||||
#define OPPONENT_JEFFREY_2 228
|
||||
#define OPPONENT_JEFFREY_3 229
|
||||
#define OPPONENT_JEFFREY_4 230
|
||||
#define OPPONENT_JEFFREY_5 231
|
||||
#define OPPONENT_EDWARD 232
|
||||
#define OPPONENT_PRESTON 233
|
||||
#define OPPONENT_VIRGIL 234
|
||||
#define OPPONENT_BLAKE 235
|
||||
#define OPPONENT_WILLIAM 236
|
||||
#define OPPONENT_JOSHUA 237
|
||||
#define OPPONENT_CAMERON_1 238
|
||||
#define OPPONENT_CAMERON_2 239
|
||||
#define OPPONENT_CAMERON_3 240
|
||||
#define OPPONENT_CAMERON_4 241
|
||||
#define OPPONENT_CAMERON_5 242
|
||||
#define OPPONENT_JACLYN 243
|
||||
#define OPPONENT_HANNAH 244
|
||||
#define OPPONENT_SAMANTHA 245
|
||||
#define OPPONENT_MAURA 246
|
||||
#define OPPONENT_KAYLA 247
|
||||
#define OPPONENT_ALEXIS 248
|
||||
#define OPPONENT_JACKI_1 249
|
||||
#define OPPONENT_JACKI_2 250
|
||||
#define OPPONENT_JACKI_3 251
|
||||
#define OPPONENT_JACKI_4 252
|
||||
#define OPPONENT_JACKI_5 253
|
||||
#define OPPONENT_WALTER_1 254
|
||||
#define OPPONENT_MICAH 255
|
||||
#define OPPONENT_THOMAS 256
|
||||
#define OPPONENT_WALTER_2 257
|
||||
#define OPPONENT_WALTER_3 258
|
||||
#define OPPONENT_WALTER_4 259
|
||||
#define OPPONENT_WALTER_5 260
|
||||
#define OPPONENT_SIDNEY 261
|
||||
#define OPPONENT_PHOEBE 262
|
||||
#define OPPONENT_GLACIA 263
|
||||
#define OPPONENT_DRAKE 264
|
||||
#define OPPONENT_ROXANNE_1 265
|
||||
#define OPPONENT_BRAWLY_1 266
|
||||
#define OPPONENT_WATTSON_1 267
|
||||
#define OPPONENT_FLANNERY_1 268
|
||||
#define OPPONENT_NORMAN_1 269
|
||||
#define OPPONENT_WINONA_1 270
|
||||
#define OPPONENT_TATE_AND_LIZA_1 271
|
||||
#define OPPONENT_JUAN_1 272
|
||||
#define OPPONENT_JERRY_1 273
|
||||
#define OPPONENT_TED 274
|
||||
#define OPPONENT_PAUL 275
|
||||
#define OPPONENT_JERRY_2 276
|
||||
#define OPPONENT_JERRY_3 277
|
||||
#define OPPONENT_JERRY_4 278
|
||||
#define OPPONENT_JERRY_5 279
|
||||
#define OPPONENT_KAREN_1 280
|
||||
#define OPPONENT_GEORGIA 281
|
||||
#define OPPONENT_KAREN_2 282
|
||||
#define OPPONENT_KAREN_3 283
|
||||
#define OPPONENT_KAREN_4 284
|
||||
#define OPPONENT_KAREN_5 285
|
||||
#define OPPONENT_KATE_AND_JOY 286
|
||||
#define OPPONENT_ANNA_AND_MEG_1 287
|
||||
#define OPPONENT_ANNA_AND_MEG_2 288
|
||||
#define OPPONENT_ANNA_AND_MEG_3 289
|
||||
#define OPPONENT_ANNA_AND_MEG_4 290
|
||||
#define OPPONENT_ANNA_AND_MEG_5 291
|
||||
#define OPPONENT_VICTOR 292
|
||||
#define OPPONENT_MIGUEL_1 293
|
||||
#define OPPONENT_COLTON 294
|
||||
#define OPPONENT_MIGUEL_2 295
|
||||
#define OPPONENT_MIGUEL_3 296
|
||||
#define OPPONENT_MIGUEL_4 297
|
||||
#define OPPONENT_MIGUEL_5 298
|
||||
#define OPPONENT_VICTORIA 299
|
||||
#define OPPONENT_VANESSA 300
|
||||
#define OPPONENT_BETHANY 301
|
||||
#define OPPONENT_ISABEL_1 302
|
||||
#define OPPONENT_ISABEL_2 303
|
||||
#define OPPONENT_ISABEL_3 304
|
||||
#define OPPONENT_ISABEL_4 305
|
||||
#define OPPONENT_ISABEL_5 306
|
||||
#define OPPONENT_TIMOTHY_1 307
|
||||
#define OPPONENT_TIMOTHY_2 308
|
||||
#define OPPONENT_TIMOTHY_3 309
|
||||
#define OPPONENT_TIMOTHY_4 310
|
||||
#define OPPONENT_TIMOTHY_5 311
|
||||
#define OPPONENT_VICKY 312
|
||||
#define OPPONENT_SHELBY_1 313
|
||||
#define OPPONENT_SHELBY_2 314
|
||||
#define OPPONENT_SHELBY_3 315
|
||||
#define OPPONENT_SHELBY_4 316
|
||||
#define OPPONENT_SHELBY_5 317
|
||||
#define OPPONENT_CALVIN_1 318
|
||||
#define OPPONENT_BILLY 319
|
||||
#define OPPONENT_JOSH 320
|
||||
#define OPPONENT_TOMMY 321
|
||||
#define OPPONENT_JOEY 322
|
||||
#define OPPONENT_BEN 323
|
||||
#define OPPONENT_QUINCY 324
|
||||
#define OPPONENT_KATELYNN 325
|
||||
#define OPPONENT_JAYLEN 326
|
||||
#define OPPONENT_DILLON 327
|
||||
#define OPPONENT_CALVIN_2 328
|
||||
#define OPPONENT_CALVIN_3 329
|
||||
#define OPPONENT_CALVIN_4 330
|
||||
#define OPPONENT_CALVIN_5 331
|
||||
#define OPPONENT_EDDIE 332
|
||||
#define OPPONENT_ALLEN 333
|
||||
#define OPPONENT_TIMMY 334
|
||||
#define OPPONENT_WALLACE 335
|
||||
#define OPPONENT_ANDREW 336
|
||||
#define OPPONENT_IVAN 337
|
||||
#define OPPONENT_CLAUDE 338
|
||||
#define OPPONENT_ELLIOT_1 339
|
||||
#define OPPONENT_NED 340
|
||||
#define OPPONENT_DALE 341
|
||||
#define OPPONENT_NOLAN 342
|
||||
#define OPPONENT_BARNY 343
|
||||
#define OPPONENT_WADE 344
|
||||
#define OPPONENT_CARTER 345
|
||||
#define OPPONENT_ELLIOT_2 346
|
||||
#define OPPONENT_ELLIOT_3 347
|
||||
#define OPPONENT_ELLIOT_4 348
|
||||
#define OPPONENT_ELLIOT_5 349
|
||||
#define OPPONENT_RONALD 350
|
||||
#define OPPONENT_JACOB 351
|
||||
#define OPPONENT_ANTHONY 352
|
||||
#define OPPONENT_BENJAMIN_1 353
|
||||
#define OPPONENT_BENJAMIN_2 354
|
||||
#define OPPONENT_BENJAMIN_3 355
|
||||
#define OPPONENT_BENJAMIN_4 356
|
||||
#define OPPONENT_BENJAMIN_5 357
|
||||
#define OPPONENT_ABIGAIL_1 358
|
||||
#define OPPONENT_JASMINE 359
|
||||
#define OPPONENT_ABIGAIL_2 360
|
||||
#define OPPONENT_ABIGAIL_3 361
|
||||
#define OPPONENT_ABIGAIL_4 362
|
||||
#define OPPONENT_ABIGAIL_5 363
|
||||
#define OPPONENT_DYLAN_1 364
|
||||
#define OPPONENT_DYLAN_2 365
|
||||
#define OPPONENT_DYLAN_3 366
|
||||
#define OPPONENT_DYLAN_4 367
|
||||
#define OPPONENT_DYLAN_5 368
|
||||
#define OPPONENT_MARIA_1 369
|
||||
#define OPPONENT_MARIA_2 370
|
||||
#define OPPONENT_MARIA_3 371
|
||||
#define OPPONENT_MARIA_4 372
|
||||
#define OPPONENT_MARIA_5 373
|
||||
#define OPPONENT_CAMDEN 374
|
||||
#define OPPONENT_DEMETRIUS 375
|
||||
#define OPPONENT_ISAIAH_1 376
|
||||
#define OPPONENT_PABLO_1 377
|
||||
#define OPPONENT_CHASE 378
|
||||
#define OPPONENT_ISAIAH_2 379
|
||||
#define OPPONENT_ISAIAH_3 380
|
||||
#define OPPONENT_ISAIAH_4 381
|
||||
#define OPPONENT_ISAIAH_5 382
|
||||
#define OPPONENT_ISOBEL 383
|
||||
#define OPPONENT_DONNY 384
|
||||
#define OPPONENT_TALIA 385
|
||||
#define OPPONENT_KATELYN_1 386
|
||||
#define OPPONENT_ALLISON 387
|
||||
#define OPPONENT_KATELYN_2 388
|
||||
#define OPPONENT_KATELYN_3 389
|
||||
#define OPPONENT_KATELYN_4 390
|
||||
#define OPPONENT_KATELYN_5 391
|
||||
#define OPPONENT_NICOLAS_1 392
|
||||
#define OPPONENT_NICOLAS_2 393
|
||||
#define OPPONENT_NICOLAS_3 394
|
||||
#define OPPONENT_NICOLAS_4 395
|
||||
#define OPPONENT_NICOLAS_5 396
|
||||
#define OPPONENT_AARON 397
|
||||
#define OPPONENT_PERRY 398
|
||||
#define OPPONENT_HUGH 399
|
||||
#define OPPONENT_PHIL 400
|
||||
#define OPPONENT_JARED 401
|
||||
#define OPPONENT_HUMBERTO 402
|
||||
#define OPPONENT_PRESLEY 403
|
||||
#define OPPONENT_EDWARDO 404
|
||||
#define OPPONENT_COLIN 405
|
||||
#define OPPONENT_ROBERT_1 406
|
||||
#define OPPONENT_BENNY 407
|
||||
#define OPPONENT_CHESTER 408
|
||||
#define OPPONENT_ROBERT_2 409
|
||||
#define OPPONENT_ROBERT_3 410
|
||||
#define OPPONENT_ROBERT_4 411
|
||||
#define OPPONENT_ROBERT_5 412
|
||||
#define OPPONENT_ALEX 413
|
||||
#define OPPONENT_BECK 414
|
||||
#define OPPONENT_YASU 415
|
||||
#define OPPONENT_TAKASHI 416
|
||||
#define OPPONENT_DIANNE 417
|
||||
#define OPPONENT_JANI 418
|
||||
#define OPPONENT_LAO_1 419
|
||||
#define OPPONENT_LUNG 420
|
||||
#define OPPONENT_LAO_2 421
|
||||
#define OPPONENT_LAO_3 422
|
||||
#define OPPONENT_LAO_4 423
|
||||
#define OPPONENT_LAO_5 424
|
||||
#define OPPONENT_JOCELYN 425
|
||||
#define OPPONENT_LAURA 426
|
||||
#define OPPONENT_CYNDY_1 427
|
||||
#define OPPONENT_CORA 428
|
||||
#define OPPONENT_PAULA 429
|
||||
#define OPPONENT_CYNDY_2 430
|
||||
#define OPPONENT_CYNDY_3 431
|
||||
#define OPPONENT_CYNDY_4 432
|
||||
#define OPPONENT_CYNDY_5 433
|
||||
#define OPPONENT_MADELINE_1 434
|
||||
#define OPPONENT_CLARISSA 435
|
||||
#define OPPONENT_ANGELICA 436
|
||||
#define OPPONENT_MADELINE_2 437
|
||||
#define OPPONENT_MADELINE_3 438
|
||||
#define OPPONENT_MADELINE_4 439
|
||||
#define OPPONENT_MADELINE_5 440
|
||||
#define OPPONENT_BEVERLY 441
|
||||
#define OPPONENT_IMANI 442
|
||||
#define OPPONENT_KYLA 443
|
||||
#define OPPONENT_DENISE 444
|
||||
#define OPPONENT_BETH 445
|
||||
#define OPPONENT_TARA 446
|
||||
#define OPPONENT_MISSY 447
|
||||
#define OPPONENT_ALICE 448
|
||||
#define OPPONENT_JENNY_1 449
|
||||
#define OPPONENT_GRACE 450
|
||||
#define OPPONENT_TANYA 451
|
||||
#define OPPONENT_SHARON 452
|
||||
#define OPPONENT_NIKKI 453
|
||||
#define OPPONENT_BRENDA 454
|
||||
#define OPPONENT_KATIE 455
|
||||
#define OPPONENT_SUSIE 456
|
||||
#define OPPONENT_KARA 457
|
||||
#define OPPONENT_DANA 458
|
||||
#define OPPONENT_SIENNA 459
|
||||
#define OPPONENT_DEBRA 460
|
||||
#define OPPONENT_LINDA 461
|
||||
#define OPPONENT_KAYLEE 462
|
||||
#define OPPONENT_LAUREL 463
|
||||
#define OPPONENT_CARLEE 464
|
||||
#define OPPONENT_JENNY_2 465
|
||||
#define OPPONENT_JENNY_3 466
|
||||
#define OPPONENT_JENNY_4 467
|
||||
#define OPPONENT_JENNY_5 468
|
||||
#define OPPONENT_HEIDI 469
|
||||
#define OPPONENT_BECKY 470
|
||||
#define OPPONENT_CAROL 471
|
||||
#define OPPONENT_NANCY 472
|
||||
#define OPPONENT_MARTHA 473
|
||||
#define OPPONENT_DIANA_1 474
|
||||
#define OPPONENT_CEDRIC 475
|
||||
#define OPPONENT_IRENE 476
|
||||
#define OPPONENT_DIANA_2 477
|
||||
#define OPPONENT_DIANA_3 478
|
||||
#define OPPONENT_DIANA_4 479
|
||||
#define OPPONENT_DIANA_5 480
|
||||
#define OPPONENT_AMY_AND_LIV_1 481
|
||||
#define OPPONENT_AMY_AND_LIV_2 482
|
||||
#define OPPONENT_GINA_AND_MIA_1 483
|
||||
#define OPPONENT_MIU_AND_YUKI 484
|
||||
#define OPPONENT_AMY_AND_LIV_3 485
|
||||
#define OPPONENT_GINA_AND_MIA_2 486
|
||||
#define OPPONENT_AMY_AND_LIV_4 487
|
||||
#define OPPONENT_AMY_AND_LIV_5 488
|
||||
#define OPPONENT_AMY_AND_LIV_6 489
|
||||
#define OPPONENT_HUEY 490
|
||||
#define OPPONENT_EDMOND 491
|
||||
#define OPPONENT_ERNEST_1 492
|
||||
#define OPPONENT_DWAYNE 493
|
||||
#define OPPONENT_PHILLIP 494
|
||||
#define OPPONENT_LEONARD 495
|
||||
#define OPPONENT_DUNCAN 496
|
||||
#define OPPONENT_ERNEST_2 497
|
||||
#define OPPONENT_ERNEST_3 498
|
||||
#define OPPONENT_ERNEST_4 499
|
||||
#define OPPONENT_ERNEST_5 500
|
||||
#define OPPONENT_ELI 501
|
||||
#define OPPONENT_ANNIKA 502
|
||||
#define OPPONENT_JAZMYN 503
|
||||
#define OPPONENT_JONAS 504
|
||||
#define OPPONENT_KAYLEY 505
|
||||
#define OPPONENT_AURON 506
|
||||
#define OPPONENT_KELVIN 507
|
||||
#define OPPONENT_MARLEY 508
|
||||
#define OPPONENT_REYNA 509
|
||||
#define OPPONENT_HUDSON 510
|
||||
#define OPPONENT_CONOR 511
|
||||
#define OPPONENT_EDWIN_1 512
|
||||
#define OPPONENT_HECTOR 513
|
||||
#define OPPONENT_TABITHA_1 514
|
||||
#define OPPONENT_EDWIN_2 515
|
||||
#define OPPONENT_EDWIN_3 516
|
||||
#define OPPONENT_EDWIN_4 517
|
||||
#define OPPONENT_EDWIN_5 518
|
||||
#define OPPONENT_WALLY_1 519
|
||||
#define OPPONENT_BRENDAN_1 520
|
||||
#define OPPONENT_BRENDAN_2 521
|
||||
#define OPPONENT_BRENDAN_3 522
|
||||
#define OPPONENT_BRENDAN_4 523
|
||||
#define OPPONENT_BRENDAN_5 524
|
||||
#define OPPONENT_BRENDAN_6 525
|
||||
#define OPPONENT_BRENDAN_7 526
|
||||
#define OPPONENT_BRENDAN_8 527
|
||||
#define OPPONENT_BRENDAN_9 528
|
||||
#define OPPONENT_MAY_1 529
|
||||
#define OPPONENT_MAY_2 530
|
||||
#define OPPONENT_MAY_3 531
|
||||
#define OPPONENT_MAY_4 532
|
||||
#define OPPONENT_MAY_5 533
|
||||
#define OPPONENT_MAY_6 534
|
||||
#define OPPONENT_MAY_7 535
|
||||
#define OPPONENT_MAY_8 536
|
||||
#define OPPONENT_MAY_9 537
|
||||
#define OPPONENT_ISAAC_1 538
|
||||
#define OPPONENT_DAVIS 539
|
||||
#define OPPONENT_MITCHELL 540
|
||||
#define OPPONENT_ISAAC_2 541
|
||||
#define OPPONENT_ISAAC_3 542
|
||||
#define OPPONENT_ISAAC_4 543
|
||||
#define OPPONENT_ISAAC_5 544
|
||||
#define OPPONENT_LYDIA_1 545
|
||||
#define OPPONENT_HALLE 546
|
||||
#define OPPONENT_GARRISON 547
|
||||
#define OPPONENT_LYDIA_2 548
|
||||
#define OPPONENT_LYDIA_3 549
|
||||
#define OPPONENT_LYDIA_4 550
|
||||
#define OPPONENT_LYDIA_5 551
|
||||
#define OPPONENT_JACKSON_1 552
|
||||
#define OPPONENT_LORENZO 553
|
||||
#define OPPONENT_SEBASTIAN 554
|
||||
#define OPPONENT_JACKSON_2 555
|
||||
#define OPPONENT_JACKSON_3 556
|
||||
#define OPPONENT_JACKSON_4 557
|
||||
#define OPPONENT_JACKSON_5 558
|
||||
#define OPPONENT_CATHERINE_1 559
|
||||
#define OPPONENT_JENNA 560
|
||||
#define OPPONENT_SOPHIA 561
|
||||
#define OPPONENT_CATHERINE_2 562
|
||||
#define OPPONENT_CATHERINE_3 563
|
||||
#define OPPONENT_CATHERINE_4 564
|
||||
#define OPPONENT_CATHERINE_5 565
|
||||
#define OPPONENT_JULIO 566
|
||||
#define OPPONENT_GRUNT_27 567
|
||||
#define OPPONENT_GRUNT_28 568
|
||||
#define OPPONENT_GRUNT_29 569
|
||||
#define OPPONENT_GRUNT_30 570
|
||||
#define OPPONENT_MARC 571
|
||||
#define OPPONENT_BRENDEN 572
|
||||
#define OPPONENT_LILITH 573
|
||||
#define OPPONENT_CRISTIAN 574
|
||||
#define OPPONENT_SYLVIA 575
|
||||
#define OPPONENT_LEONARDO 576
|
||||
#define OPPONENT_ATHENA 577
|
||||
#define OPPONENT_HARRISON 578
|
||||
#define OPPONENT_GRUNT_31 579
|
||||
#define OPPONENT_CLARENCE 580
|
||||
#define OPPONENT_TERRY 581
|
||||
#define OPPONENT_NATE 582
|
||||
#define OPPONENT_KATHLEEN 583
|
||||
#define OPPONENT_CLIFFORD 584
|
||||
#define OPPONENT_NICHOLAS 585
|
||||
#define OPPONENT_GRUNT_32 586
|
||||
#define OPPONENT_GRUNT_33 587
|
||||
#define OPPONENT_GRUNT_34 588
|
||||
#define OPPONENT_GRUNT_35 589
|
||||
#define OPPONENT_GRUNT_36 590
|
||||
#define OPPONENT_MACEY 591
|
||||
#define OPPONENT_BRENDAN_10 592
|
||||
#define OPPONENT_BRENDAN_11 593
|
||||
#define OPPONENT_PAXTON 594
|
||||
#define OPPONENT_ISABELLA 595
|
||||
#define OPPONENT_GRUNT_37 596
|
||||
#define OPPONENT_TABITHA_2 597
|
||||
#define OPPONENT_JONATHAN 598
|
||||
#define OPPONENT_BRENDAN_12 599
|
||||
#define OPPONENT_MAY_10 600
|
||||
#define OPPONENT_MAXIE_1 601
|
||||
#define OPPONENT_MAXIE_2 602
|
||||
#define OPPONENT_TIANA 603
|
||||
#define OPPONENT_HALEY_1 604
|
||||
#define OPPONENT_JANICE 605
|
||||
#define OPPONENT_VIVI 606
|
||||
#define OPPONENT_HALEY_2 607
|
||||
#define OPPONENT_HALEY_3 608
|
||||
#define OPPONENT_HALEY_4 609
|
||||
#define OPPONENT_HALEY_5 610
|
||||
#define OPPONENT_SALLY 611
|
||||
#define OPPONENT_ROBIN 612
|
||||
#define OPPONENT_ANDREA 613
|
||||
#define OPPONENT_CRISSY 614
|
||||
#define OPPONENT_RICK 615
|
||||
#define OPPONENT_LYLE 616
|
||||
#define OPPONENT_JOSE 617
|
||||
#define OPPONENT_DOUG 618
|
||||
#define OPPONENT_GREG 619
|
||||
#define OPPONENT_KENT 620
|
||||
#define OPPONENT_JAMES_1 621
|
||||
#define OPPONENT_JAMES_2 622
|
||||
#define OPPONENT_JAMES_3 623
|
||||
#define OPPONENT_JAMES_4 624
|
||||
#define OPPONENT_JAMES_5 625
|
||||
#define OPPONENT_BRICE 626
|
||||
#define OPPONENT_TRENT_1 627
|
||||
#define OPPONENT_LENNY 628
|
||||
#define OPPONENT_LUCAS_1 629
|
||||
#define OPPONENT_ALAN 630
|
||||
#define OPPONENT_CLARK 631
|
||||
#define OPPONENT_ERIC 632
|
||||
#define OPPONENT_LUCAS_2 633
|
||||
#define OPPONENT_MIKE_1 634
|
||||
#define OPPONENT_MIKE_2 635
|
||||
#define OPPONENT_TRENT_2 636
|
||||
#define OPPONENT_TRENT_3 637
|
||||
#define OPPONENT_TRENT_4 638
|
||||
#define OPPONENT_TRENT_5 639
|
||||
#define OPPONENT_DEZ_AND_LUKE 640
|
||||
#define OPPONENT_LEA_AND_JED 641
|
||||
#define OPPONENT_KIRA_AND_DAN_1 642
|
||||
#define OPPONENT_KIRA_AND_DAN_2 643
|
||||
#define OPPONENT_KIRA_AND_DAN_3 644
|
||||
#define OPPONENT_KIRA_AND_DAN_4 645
|
||||
#define OPPONENT_KIRA_AND_DAN_5 646
|
||||
#define OPPONENT_JOHANNA 647
|
||||
#define OPPONENT_GERALD 648
|
||||
#define OPPONENT_VIVIAN 649
|
||||
#define OPPONENT_DANIELLE 650
|
||||
#define OPPONENT_HIDEO 651
|
||||
#define OPPONENT_KEIGO 652
|
||||
#define OPPONENT_RILEY 653
|
||||
#define OPPONENT_FLINT 654
|
||||
#define OPPONENT_ASHLEY 655
|
||||
#define OPPONENT_WALLY_2 656
|
||||
#define OPPONENT_WALLY_3 657
|
||||
#define OPPONENT_WALLY_4 658
|
||||
#define OPPONENT_WALLY_5 659
|
||||
#define OPPONENT_WALLY_6 660
|
||||
#define OPPONENT_BRENDAN_13 661
|
||||
#define OPPONENT_BRENDAN_14 662
|
||||
#define OPPONENT_BRENDAN_15 663
|
||||
#define OPPONENT_MAY_11 664
|
||||
#define OPPONENT_MAY_12 665
|
||||
#define OPPONENT_MAY_13 666
|
||||
#define OPPONENT_JONAH 667
|
||||
#define OPPONENT_HENRY 668
|
||||
#define OPPONENT_ROGER 669
|
||||
#define OPPONENT_ALEXA 670
|
||||
#define OPPONENT_RUBEN 671
|
||||
#define OPPONENT_KOJI_1 672
|
||||
#define OPPONENT_WAYNE 673
|
||||
#define OPPONENT_AIDAN 674
|
||||
#define OPPONENT_REED 675
|
||||
#define OPPONENT_TISHA 676
|
||||
#define OPPONENT_TORI_AND_TIA 677
|
||||
#define OPPONENT_KIM_AND_IRIS 678
|
||||
#define OPPONENT_TYRA_AND_IVY 679
|
||||
#define OPPONENT_MEL_AND_PAUL 680
|
||||
#define OPPONENT_JOHN_AND_JAY_1 681
|
||||
#define OPPONENT_JOHN_AND_JAY_2 682
|
||||
#define OPPONENT_JOHN_AND_JAY_3 683
|
||||
#define OPPONENT_JOHN_AND_JAY_4 684
|
||||
#define OPPONENT_JOHN_AND_JAY_5 685
|
||||
#define OPPONENT_RELI_AND_IAN 686
|
||||
#define OPPONENT_LILA_AND_ROY_1 687
|
||||
#define OPPONENT_LILA_AND_ROY_2 688
|
||||
#define OPPONENT_LILA_AND_ROY_3 689
|
||||
#define OPPONENT_LILA_AND_ROY_4 690
|
||||
#define OPPONENT_LILA_AND_ROY_5 691
|
||||
#define OPPONENT_LISA_AND_RAY 692
|
||||
#define OPPONENT_CHRIS 693
|
||||
#define OPPONENT_DAWSON 694
|
||||
#define OPPONENT_SARAH 695
|
||||
#define OPPONENT_DARIAN 696
|
||||
#define OPPONENT_HAILEY 697
|
||||
#define OPPONENT_CHANDLER 698
|
||||
#define OPPONENT_KALEB 699
|
||||
#define OPPONENT_JOSEPH 700
|
||||
#define OPPONENT_ALYSSA 701
|
||||
#define OPPONENT_MARCOS 702
|
||||
#define OPPONENT_RHETT 703
|
||||
#define OPPONENT_TYRON 704
|
||||
#define OPPONENT_CELINA 705
|
||||
#define OPPONENT_BIANCA 706
|
||||
#define OPPONENT_HAYDEN 707
|
||||
#define OPPONENT_SOPHIE 708
|
||||
#define OPPONENT_COBY 709
|
||||
#define OPPONENT_LAWRENCE 710
|
||||
#define OPPONENT_WYATT 711
|
||||
#define OPPONENT_ANGELINA 712
|
||||
#define OPPONENT_KAI 713
|
||||
#define OPPONENT_CHARLOTTE 714
|
||||
#define OPPONENT_DEANDRE 715
|
||||
#define OPPONENT_GRUNT_38 716
|
||||
#define OPPONENT_GRUNT_39 717
|
||||
#define OPPONENT_GRUNT_40 718
|
||||
#define OPPONENT_GRUNT_41 719
|
||||
#define OPPONENT_GRUNT_42 720
|
||||
#define OPPONENT_GRUNT_43 721
|
||||
#define OPPONENT_GRUNT_44 722
|
||||
#define OPPONENT_GRUNT_45 723
|
||||
#define OPPONENT_GRUNT_46 724
|
||||
#define OPPONENT_GRUNT_47 725
|
||||
#define OPPONENT_GRUNT_48 726
|
||||
#define OPPONENT_GRUNT_49 727
|
||||
#define OPPONENT_GRUNT_50 728
|
||||
#define OPPONENT_GRUNT_51 729
|
||||
#define OPPONENT_GRUNT_52 730
|
||||
#define OPPONENT_GRUNT_53 731
|
||||
#define OPPONENT_TABITHA_3 732
|
||||
#define OPPONENT_DARCY 733
|
||||
#define OPPONENT_MAXIE_3 734
|
||||
#define OPPONENT_PETE 735
|
||||
#define OPPONENT_ISABELLE 736
|
||||
#define OPPONENT_ANDRES_1 737
|
||||
#define OPPONENT_JOSUE 738
|
||||
#define OPPONENT_CAMRON 739
|
||||
#define OPPONENT_CORY_1 740
|
||||
#define OPPONENT_CAROLINA 741
|
||||
#define OPPONENT_ELIJAH 742
|
||||
#define OPPONENT_CELIA 743
|
||||
#define OPPONENT_BRYAN 744
|
||||
#define OPPONENT_BRANDEN 745
|
||||
#define OPPONENT_BRYANT 746
|
||||
#define OPPONENT_SHAYLA 747
|
||||
#define OPPONENT_KYRA 748
|
||||
#define OPPONENT_JAIDEN 749
|
||||
#define OPPONENT_ALIX 750
|
||||
#define OPPONENT_HELENE 751
|
||||
#define OPPONENT_MARLENE 752
|
||||
#define OPPONENT_DEVAN 753
|
||||
#define OPPONENT_JOHNSON 754
|
||||
#define OPPONENT_MELINA 755
|
||||
#define OPPONENT_BRANDI 756
|
||||
#define OPPONENT_AISHA 757
|
||||
#define OPPONENT_MAKAYLA 758
|
||||
#define OPPONENT_FABIAN 759
|
||||
#define OPPONENT_DAYTON 760
|
||||
#define OPPONENT_RACHEL 761
|
||||
#define OPPONENT_LEONEL 762
|
||||
#define OPPONENT_CALLIE 763
|
||||
#define OPPONENT_CALE 764
|
||||
#define OPPONENT_MYLES 765
|
||||
#define OPPONENT_PAT 766
|
||||
#define OPPONENT_CRISTIN_1 767
|
||||
#define OPPONENT_MAY_14 768
|
||||
#define OPPONENT_MAY_15 769
|
||||
#define OPPONENT_ROXANNE_2 770
|
||||
#define OPPONENT_ROXANNE_3 771
|
||||
#define OPPONENT_ROXANNE_4 772
|
||||
#define OPPONENT_ROXANNE_5 773
|
||||
#define OPPONENT_BRAWLY_2 774
|
||||
#define OPPONENT_BRAWLY_3 775
|
||||
#define OPPONENT_BRAWLY_4 776
|
||||
#define OPPONENT_BRAWLY_5 777
|
||||
#define OPPONENT_WATTSON_2 778
|
||||
#define OPPONENT_WATTSON_3 779
|
||||
#define OPPONENT_WATTSON_4 780
|
||||
#define OPPONENT_WATTSON_5 781
|
||||
#define OPPONENT_FLANNERY_2 782
|
||||
#define OPPONENT_FLANNERY_3 783
|
||||
#define OPPONENT_FLANNERY_4 784
|
||||
#define OPPONENT_FLANNERY_5 785
|
||||
#define OPPONENT_NORMAN_2 786
|
||||
#define OPPONENT_NORMAN_3 787
|
||||
#define OPPONENT_NORMAN_4 788
|
||||
#define OPPONENT_NORMAN_5 789
|
||||
#define OPPONENT_WINONA_2 790
|
||||
#define OPPONENT_WINONA_3 791
|
||||
#define OPPONENT_WINONA_4 792
|
||||
#define OPPONENT_WINONA_5 793
|
||||
#define OPPONENT_TATE_AND_LIZA_2 794
|
||||
#define OPPONENT_TATE_AND_LIZA_3 795
|
||||
#define OPPONENT_TATE_AND_LIZA_4 796
|
||||
#define OPPONENT_TATE_AND_LIZA_5 797
|
||||
#define OPPONENT_JUAN_2 798
|
||||
#define OPPONENT_JUAN_3 799
|
||||
#define OPPONENT_JUAN_4 800
|
||||
#define OPPONENT_JUAN_5 801
|
||||
#define OPPONENT_ANGELO 802
|
||||
#define OPPONENT_DARIUS 803
|
||||
#define OPPONENT_STEVEN 804
|
||||
#define OPPONENT_ANABEL 805
|
||||
#define OPPONENT_TUCKER 806
|
||||
#define OPPONENT_SPENSER 807
|
||||
#define OPPONENT_GRETA 808
|
||||
#define OPPONENT_NOLAND 809
|
||||
#define OPPONENT_LUCY 810
|
||||
#define OPPONENT_BRANDON 811
|
||||
#define OPPONENT_ANDRES_2 812
|
||||
#define OPPONENT_ANDRES_3 813
|
||||
#define OPPONENT_ANDRES_4 814
|
||||
#define OPPONENT_ANDRES_5 815
|
||||
#define OPPONENT_CORY_2 816
|
||||
#define OPPONENT_CORY_3 817
|
||||
#define OPPONENT_CORY_4 818
|
||||
#define OPPONENT_CORY_5 819
|
||||
#define OPPONENT_PABLO_2 820
|
||||
#define OPPONENT_PABLO_3 821
|
||||
#define OPPONENT_PABLO_4 822
|
||||
#define OPPONENT_PABLO_5 823
|
||||
#define OPPONENT_KOJI_2 824
|
||||
#define OPPONENT_KOJI_3 825
|
||||
#define OPPONENT_KOJI_4 826
|
||||
#define OPPONENT_KOJI_5 827
|
||||
#define OPPONENT_CRISTIN_2 828
|
||||
#define OPPONENT_CRISTIN_3 829
|
||||
#define OPPONENT_CRISTIN_4 830
|
||||
#define OPPONENT_CRISTIN_5 831
|
||||
#define OPPONENT_FERNANDO_2 832
|
||||
#define OPPONENT_FERNANDO_3 833
|
||||
#define OPPONENT_FERNANDO_4 834
|
||||
#define OPPONENT_FERNANDO_5 835
|
||||
#define OPPONENT_SAWYER_2 836
|
||||
#define OPPONENT_SAWYER_3 837
|
||||
#define OPPONENT_SAWYER_4 838
|
||||
#define OPPONENT_SAWYER_5 839
|
||||
#define OPPONENT_GABRIELLE_2 840
|
||||
#define OPPONENT_GABRIELLE_3 841
|
||||
#define OPPONENT_GABRIELLE_4 842
|
||||
#define OPPONENT_GABRIELLE_5 843
|
||||
#define OPPONENT_THALIA_2 844
|
||||
#define OPPONENT_THALIA_3 845
|
||||
#define OPPONENT_THALIA_4 846
|
||||
#define OPPONENT_THALIA_5 847
|
||||
#define OPPONENT_MARIELA 848
|
||||
#define OPPONENT_ALVARO 848
|
||||
#define OPPONENT_EVERETT 850
|
||||
#define OPPONENT_RED 851
|
||||
#define OPPONENT_LEAF 852
|
||||
#define OPPONENT_BRENDAN_16 853
|
||||
#define OPPONENT_MAY_16 854
|
||||
|
||||
#endif // GUARD_CONSTANTS_OPPONENTS_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
|
||||
219
include/constants/region_map_sections.h
Normal file
219
include/constants/region_map_sections.h
Normal file
@@ -0,0 +1,219 @@
|
||||
#ifndef GUARD_REGIONMAPSEC_H
|
||||
#define GUARD_REGIONMAPSEC_H
|
||||
|
||||
#define MAPSEC_LITTLEROOT_TOWN 0x00
|
||||
#define MAPSEC_OLDALE_TOWN 0x01
|
||||
#define MAPSEC_DEWFORD_TOWN 0x02
|
||||
#define MAPSEC_LAVARIDGE_TOWN 0x03
|
||||
#define MAPSEC_FALLARBOR_TOWN 0x04
|
||||
#define MAPSEC_VERDANTURF_TOWN 0x05
|
||||
#define MAPSEC_PACIFIDLOG_TOWN 0x06
|
||||
#define MAPSEC_PETALBURG_CITY 0x07
|
||||
#define MAPSEC_SLATEPORT_CITY 0x08
|
||||
#define MAPSEC_MAUVILLE_CITY 0x09
|
||||
#define MAPSEC_RUSTBORO_CITY 0x0A
|
||||
#define MAPSEC_FORTREE_CITY 0x0B
|
||||
#define MAPSEC_LILYCOVE_CITY 0x0C
|
||||
#define MAPSEC_MOSSDEEP_CITY 0x0D
|
||||
#define MAPSEC_SOOTOPOLIS_CITY 0x0E
|
||||
#define MAPSEC_EVER_GRANDE_CITY 0x0F
|
||||
#define MAPSEC_ROUTE_101 0x10
|
||||
#define MAPSEC_ROUTE_102 0x11
|
||||
#define MAPSEC_ROUTE_103 0x12
|
||||
#define MAPSEC_ROUTE_104 0x13
|
||||
#define MAPSEC_ROUTE_105 0x14
|
||||
#define MAPSEC_ROUTE_106 0x15
|
||||
#define MAPSEC_ROUTE_107 0x16
|
||||
#define MAPSEC_ROUTE_108 0x17
|
||||
#define MAPSEC_ROUTE_109 0x18
|
||||
#define MAPSEC_ROUTE_110 0x19
|
||||
#define MAPSEC_ROUTE_111 0x1A
|
||||
#define MAPSEC_ROUTE_112 0x1B
|
||||
#define MAPSEC_ROUTE_113 0x1C
|
||||
#define MAPSEC_ROUTE_114 0x1D
|
||||
#define MAPSEC_ROUTE_115 0x1E
|
||||
#define MAPSEC_ROUTE_116 0x1F
|
||||
#define MAPSEC_ROUTE_117 0x20
|
||||
#define MAPSEC_ROUTE_118 0x21
|
||||
#define MAPSEC_ROUTE_119 0x22
|
||||
#define MAPSEC_ROUTE_120 0x23
|
||||
#define MAPSEC_ROUTE_121 0x24
|
||||
#define MAPSEC_ROUTE_122 0x25
|
||||
#define MAPSEC_ROUTE_123 0x26
|
||||
#define MAPSEC_ROUTE_124 0x27
|
||||
#define MAPSEC_ROUTE_125 0x28
|
||||
#define MAPSEC_ROUTE_126 0x29
|
||||
#define MAPSEC_ROUTE_127 0x2A
|
||||
#define MAPSEC_ROUTE_128 0x2B
|
||||
#define MAPSEC_ROUTE_129 0x2C
|
||||
#define MAPSEC_ROUTE_130 0x2D
|
||||
#define MAPSEC_ROUTE_131 0x2E
|
||||
#define MAPSEC_ROUTE_132 0x2F
|
||||
#define MAPSEC_ROUTE_133 0x30
|
||||
#define MAPSEC_ROUTE_134 0x31
|
||||
#define MAPSEC_UNDERWATER_124 0x32
|
||||
#define MAPSEC_UNDERWATER_125 0x33
|
||||
#define MAPSEC_UNDERWATER_126 0x34
|
||||
#define MAPSEC_UNDERWATER_127 0x35
|
||||
#define MAPSEC_UNDERWATER_SOOTOPOLIS 0x36
|
||||
#define MAPSEC_GRANITE_CAVE 0x37
|
||||
#define MAPSEC_MT_CHIMNEY 0x38
|
||||
#define MAPSEC_SAFARI_ZONE 0x39
|
||||
#define MAPSEC_BATTLE_FRONTIER 0x3A
|
||||
#define MAPSEC_PETALBURG_WOODS 0x3B
|
||||
#define MAPSEC_RUSTURF_TUNNEL 0x3C
|
||||
#define MAPSEC_ABANDONED_SHIP 0x3D
|
||||
#define MAPSEC_NEW_MAUVILLE 0x3E
|
||||
#define MAPSEC_METEOR_FALLS 0x3F
|
||||
#define MAPSEC_METEOR_FALLS2 0x40
|
||||
#define MAPSEC_MT_PYRE 0x41
|
||||
#define MAPSEC_AQUA_HIDEOUT_OLD 0x42
|
||||
#define MAPSEC_SHOAL_CAVE 0x43
|
||||
#define MAPSEC_SEAFLOOR_CAVERN 0x44
|
||||
#define MAPSEC_UNDERWATER_128 0x45
|
||||
#define MAPSEC_VICTORY_ROAD 0x46
|
||||
#define MAPSEC_MIRAGE_ISLAND 0x47
|
||||
#define MAPSEC_CAVE_OF_ORIGIN 0x48
|
||||
#define MAPSEC_SOUTHERN_ISLAND 0x49
|
||||
#define MAPSEC_FIERY_PATH 0x4A
|
||||
#define MAPSEC_FIERY_PATH2 0x4B
|
||||
#define MAPSEC_JAGGED_PASS 0x4C
|
||||
#define MAPSEC_JAGGED_PASS2 0x4D
|
||||
#define MAPSEC_SEALED_CHAMBER 0x4E
|
||||
#define MAPSEC_UNDERWATER_SEALED_CHAMBER 0x4F
|
||||
#define MAPSEC_SCORCHED_SLAB 0x50
|
||||
#define MAPSEC_ISLAND_CAVE 0x51
|
||||
#define MAPSEC_DESERT_RUINS 0x52
|
||||
#define MAPSEC_ANCIENT_TOMB 0x53
|
||||
#define MAPSEC_INSIDE_OF_TRUCK 0x54
|
||||
#define MAPSEC_SKY_PILLAR 0x55
|
||||
#define MAPSEC_SECRET_BASE 0x56
|
||||
#define MAPSEC_DYNAMIC 0x57
|
||||
#define MAPSEC_PALLET_TOWN 0x58
|
||||
#define MAPSEC_VIRIDIAN_CITY 0x59
|
||||
#define MAPSEC_PEWTER_CITY 0x5A
|
||||
#define MAPSEC_CERULEAN_CITY 0x5B
|
||||
#define MAPSEC_LAVENDER_TOWN 0x5C
|
||||
#define MAPSEC_VERMILION_CITY 0x5D
|
||||
#define MAPSEC_CELADON_CITY 0x5E
|
||||
#define MAPSEC_FUCHSIA_CITY 0x5F
|
||||
#define MAPSEC_CINNABAR_ISLAND 0x60
|
||||
#define MAPSEC_INDIGO_PLATEAU 0x61
|
||||
#define MAPSEC_SAFFRON_CITY 0x62
|
||||
#define MAPSEC_ROUTE_4_FLYDUP 0x63
|
||||
#define MAPSEC_ROUTE_10_FLYDUP 0x64
|
||||
#define MAPSEC_ROUTE_1 0x65
|
||||
#define MAPSEC_ROUTE_2 0x66
|
||||
#define MAPSEC_ROUTE_3 0x67
|
||||
#define MAPSEC_ROUTE_4 0x68
|
||||
#define MAPSEC_ROUTE_5 0x69
|
||||
#define MAPSEC_ROUTE_6 0x6A
|
||||
#define MAPSEC_ROUTE_7 0x6B
|
||||
#define MAPSEC_ROUTE_8 0x6C
|
||||
#define MAPSEC_ROUTE_9 0x6D
|
||||
#define MAPSEC_ROUTE_10 0x6E
|
||||
#define MAPSEC_ROUTE_11 0x6F
|
||||
#define MAPSEC_ROUTE_12 0x70
|
||||
#define MAPSEC_ROUTE_13 0x71
|
||||
#define MAPSEC_ROUTE_14 0x72
|
||||
#define MAPSEC_ROUTE_15 0x73
|
||||
#define MAPSEC_ROUTE_16 0x74
|
||||
#define MAPSEC_ROUTE_17 0x75
|
||||
#define MAPSEC_ROUTE_18 0x76
|
||||
#define MAPSEC_ROUTE_19 0x77
|
||||
#define MAPSEC_ROUTE_20 0x78
|
||||
#define MAPSEC_ROUTE_21 0x79
|
||||
#define MAPSEC_ROUTE_22 0x7A
|
||||
#define MAPSEC_ROUTE_23 0x7B
|
||||
#define MAPSEC_ROUTE_24 0x7C
|
||||
#define MAPSEC_ROUTE_25 0x7D
|
||||
#define MAPSEC_VIRIDIAN_FOREST 0x7E
|
||||
#define MAPSEC_MT_MOON 0x7F
|
||||
#define MAPSEC_S_S_ANNE 0x80
|
||||
#define MAPSEC_UNDERGROUND_PATH 0x81
|
||||
#define MAPSEC_UNDERGROUND_PATH_2 0x82
|
||||
#define MAPSEC_DIGLETTS_CAVE 0x83
|
||||
#define MAPSEC_KANTO_VICTORY_ROAD 0x84
|
||||
#define MAPSEC_ROCKET_HIDEOUT 0x85
|
||||
#define MAPSEC_SILPH_CO 0x86
|
||||
#define MAPSEC_POKEMON_MANSION 0x87
|
||||
#define MAPSEC_KANTO_SAFARI_ZONE 0x88
|
||||
#define MAPSEC_POKEMON_LEAGUE 0x89
|
||||
#define MAPSEC_ROCK_TUNNEL 0x8A
|
||||
#define MAPSEC_SEAFOAM_ISLANDS 0x8B
|
||||
#define MAPSEC_POKEMON_TOWER 0x8C
|
||||
#define MAPSEC_CERULEAN_CAVE 0x8D
|
||||
#define MAPSEC_POWER_PLANT 0x8E
|
||||
#define MAPSEC_ONE_ISLAND 0x8F
|
||||
#define MAPSEC_TWO_ISLAND 0x90
|
||||
#define MAPSEC_THREE_ISLAND 0x91
|
||||
#define MAPSEC_FOUR_ISLAND 0x92
|
||||
#define MAPSEC_FIVE_ISLAND 0x93
|
||||
#define MAPSEC_SEVEN_ISLAND 0x94
|
||||
#define MAPSEC_SIX_ISLAND 0x95
|
||||
#define MAPSEC_KINDLE_ROAD 0x96
|
||||
#define MAPSEC_TREASURE_BEACH 0x97
|
||||
#define MAPSEC_CAPE_BRINK 0x98
|
||||
#define MAPSEC_BOND_BRIDGE 0x99
|
||||
#define MAPSEC_THREE_ISLE_PORT 0x9A
|
||||
#define MAPSEC_SEVII_ISLE_6 0x9B
|
||||
#define MAPSEC_SEVII_ISLE_7 0x9C
|
||||
#define MAPSEC_SEVII_ISLE_8 0x9D
|
||||
#define MAPSEC_SEVII_ISLE_9 0x9E
|
||||
#define MAPSEC_RESORT_GORGEOUS 0x9F
|
||||
#define MAPSEC_WATER_LABYRINTH 0xA0
|
||||
#define MAPSEC_FIVE_ISLE_MEADOW 0xA1
|
||||
#define MAPSEC_MEMORIAL_PILLAR 0xA2
|
||||
#define MAPSEC_OUTCAST_ISLAND 0xA3
|
||||
#define MAPSEC_GREEN_PATH 0xA4
|
||||
#define MAPSEC_WATER_PATH 0xA5
|
||||
#define MAPSEC_RUIN_VALLEY 0xA6
|
||||
#define MAPSEC_TRAINER_TOWER 0xA7
|
||||
#define MAPSEC_CANYON_ENTRANCE 0xA8
|
||||
#define MAPSEC_SEVAULT_CANYON 0xA9
|
||||
#define MAPSEC_TANOBY_RUINS 0xAA
|
||||
#define MAPSEC_SEVII_ISLE_22 0xAB
|
||||
#define MAPSEC_SEVII_ISLE_23 0xAC
|
||||
#define MAPSEC_SEVII_ISLE_24 0xAD
|
||||
#define MAPSEC_NAVEL_ROCK 0xAE
|
||||
#define MAPSEC_MT_EMBER 0xAF
|
||||
#define MAPSEC_BERRY_FOREST 0xB0
|
||||
#define MAPSEC_ICEFALL_CAVE 0xB1
|
||||
#define MAPSEC_ROCKET_WAREHOUSE 0xB2
|
||||
#define MAPSEC_TRAINER_TOWER_2 0xB3
|
||||
#define MAPSEC_DOTTED_HOLE 0xB4
|
||||
#define MAPSEC_LOST_CAVE 0xB5
|
||||
#define MAPSEC_PATTERN_BUSH 0xB6
|
||||
#define MAPSEC_ALTERING_CAVE 0xB7
|
||||
#define MAPSEC_TANOBY_CHAMBERS 0xB8
|
||||
#define MAPSEC_THREE_ISLE_PATH 0xB9
|
||||
#define MAPSEC_TANOBY_KEY 0xBA
|
||||
#define MAPSEC_BIRTH_ISLAND 0xBB
|
||||
#define MAPSEC_MONEAN_CHAMBER 0xBC
|
||||
#define MAPSEC_LIPTOO_CHAMBER 0xBD
|
||||
#define MAPSEC_WEEPTH_CHAMBER 0xBE
|
||||
#define MAPSEC_DILFORD_CHAMBER 0xBF
|
||||
#define MAPSEC_SCUFIB_CHAMBER 0xC0
|
||||
#define MAPSEC_RIXY_CHAMBER 0xC1
|
||||
#define MAPSEC_VIAPOIS_CHAMBER 0xC2
|
||||
#define MAPSEC_EMBER_SPA 0xC3
|
||||
#define MAPSEC_SPECIAL_AREA 0xC4
|
||||
#define MAPSEC_AQUA_HIDEOUT 0xC5
|
||||
#define MAPSEC_MAGMA_HIDEOUT 0xC6
|
||||
#define MAPSEC_MIRAGE_TOWER 0xC7
|
||||
#define MAPSEC_BIRTH_ISLAND_2 0xC8
|
||||
#define MAPSEC_FARAWAY_ISLAND 0xC9
|
||||
#define MAPSEC_ARTISAN_CAVE 0xCA
|
||||
#define MAPSEC_MARINE_CAVE 0xCB
|
||||
#define MAPSEC_UNDERWATER_MARINE_CAVE 0xCC
|
||||
#define MAPSEC_TERRA_CAVE 0xCD
|
||||
#define MAPSEC_UNDERWATER_TERRA_CAVE 0xCE
|
||||
#define MAPSEC_UNDERWATER_UNK1 0xCF
|
||||
#define MAPSEC_UNDERWATER_129 0xD0
|
||||
#define MAPSEC_DESERT_UNDERPASS 0xD1
|
||||
#define MAPSEC_ALTERING_CAVE_2 0xD2
|
||||
#define MAPSEC_NAVEL_ROCK2 0xD3
|
||||
#define MAPSEC_TRAINER_HILL 0xD4
|
||||
#define MAPSEC_NONE 0xD5
|
||||
|
||||
#endif //GUARD_REGIONMAPSEC_H
|
||||
16
include/constants/rgb.h
Normal file
16
include/constants/rgb.h
Normal file
@@ -0,0 +1,16 @@
|
||||
#ifndef GUARD_RGB_H
|
||||
#define GUARD_RGB_H
|
||||
|
||||
#define RGB(r, g, b) ((r) | ((g) << 5) | ((b) << 10))
|
||||
#define _RGB(r, g, b) ((((b) & 0x1F) << 10) + (((g) & 0x1F) << 5) + ((r) & 0x1F))
|
||||
|
||||
#define RGB_BLACK RGB(0, 0, 0)
|
||||
#define RGB_WHITE RGB(31, 31, 31)
|
||||
#define RGB_RED RGB(31, 0, 0)
|
||||
#define RGB_GREEN RGB(0, 31, 0)
|
||||
#define RGB_BLUE RGB(0, 0, 31)
|
||||
#define RGB_YELLOW RGB(31, 31, 0)
|
||||
#define RGB_MAGENTA RGB(31, 0, 31)
|
||||
#define RGB_CYAN RGB(0, 31, 31)
|
||||
|
||||
#endif // GUARD_RGB_H
|
||||
541
include/constants/songs.h
Normal file
541
include/constants/songs.h
Normal file
@@ -0,0 +1,541 @@
|
||||
#ifndef GUARD_CONSTANTS_SONGS_H
|
||||
#define GUARD_CONSTANTS_SONGS_H
|
||||
|
||||
#define MUS_DUMMY 0
|
||||
#define SE_KAIFUKU 1 // Healing Item
|
||||
#define SE_PC_LOGIN 2 // PC Logon
|
||||
#define SE_PC_OFF 3 // PC Shutdown
|
||||
#define SE_PC_ON 4 // PC Startup
|
||||
#define SE_SELECT 5 // Cursor Selection
|
||||
#define SE_WIN_OPEN 6 // Start Menu
|
||||
#define SE_WALL_HIT 7 // Wall Bump
|
||||
#define SE_DOOR 8 // Opening Door
|
||||
#define SE_KAIDAN 9 // Stairs
|
||||
#define SE_DANSA 10 // Ledge
|
||||
#define SE_JITENSYA 11 // Bicycle Bell
|
||||
#define SE_KOUKA_L 12 // Not Very Effective
|
||||
#define SE_KOUKA_M 13 // Normal Effectiveness
|
||||
#define SE_KOUKA_H 14 // Super Effective
|
||||
#define SE_BOWA2 15 // Pokémon Withdrawal
|
||||
#define SE_POKE_DEAD 16 // Pokémon Fainted
|
||||
#define SE_NIGERU 17 // Flee from Wild Battle
|
||||
#define SE_JIDO_DOA 18 // Pokémon Center Door
|
||||
#define SE_NAMINORI 19 // Briney's Ship
|
||||
#define SE_BAN 20 // Bang
|
||||
#define SE_PIN 21 // Exclamation Bubble
|
||||
#define SE_BOO 22 // Contest Jam
|
||||
#define SE_BOWA 23 // Giving Poké Ball to Nurse, Poké Ball Wiggle
|
||||
#define SE_JYUNI 24 // Places in Contest Appearing
|
||||
#define SE_A 25 // Bard A
|
||||
#define SE_I 26 // Bard I
|
||||
#define SE_U 27 // Bard U
|
||||
#define SE_E 28 // Bard E
|
||||
#define SE_O 29 // Bard O
|
||||
#define SE_N 30 // Bard N
|
||||
#define SE_SEIKAI 31 // Success
|
||||
#define SE_HAZURE 32 // Failure
|
||||
#define SE_EXP 33 // Exp. Bar
|
||||
#define SE_JITE_PYOKO 34 // Bunny Hop
|
||||
#define SE_MU_PACHI 35
|
||||
#define SE_TK_KASYA 36 // Mossdeep Gym/Trick House Switch
|
||||
#define SE_FU_ZAKU 37
|
||||
#define SE_FU_ZAKU2 38
|
||||
#define SE_FU_ZUZUZU 39 // Lavaridge Gym Warp
|
||||
#define SE_RU_GASHIN 40 // Sootopolis Gym - Stairs Appear
|
||||
#define SE_RU_GASYAN 41 // Sootopolis Gym - Ice Breaking
|
||||
#define SE_RU_BARI 42 // Sootopolis Gym - Walking on Ice
|
||||
#define SE_RU_HYUU 43 // Falling Down
|
||||
#define SE_KI_GASYAN 44
|
||||
#define SE_TK_WARPIN 45 // Warp In
|
||||
#define SE_TK_WARPOUT 46 // Warp Out
|
||||
#define SE_TU_SAA 47 // Repel
|
||||
#define SE_HI_TURUN 48 // Moving Obstacle in Fortree Gym
|
||||
#define SE_TRACK_MOVE 49 // Moving Truck
|
||||
#define SE_TRACK_STOP 50 // Moving Truck Stop
|
||||
#define SE_TRACK_HAIKI 51 // Moving Truck Unload
|
||||
#define SE_TRACK_DOOR 52 // Moving Truck Door
|
||||
#define SE_MOTER 53
|
||||
#define SE_CARD 54
|
||||
#define SE_SAVE 55 // Save
|
||||
#define SE_KON 56 // Poké Ball Bounce 1
|
||||
#define SE_KON2 57 // Poké Ball Bounce 2
|
||||
#define SE_KON3 58 // Poké Ball Bounce 3
|
||||
#define SE_KON4 59 // Poké Ball Bounce 4
|
||||
#define SE_SUIKOMU 60 // Poké Ball Trade
|
||||
#define SE_NAGERU 61 // Poké Ball Throw
|
||||
#define SE_TOY_C 62 // Note C
|
||||
#define SE_TOY_D 63 // Note D
|
||||
#define SE_TOY_E 64 // Note E
|
||||
#define SE_TOY_F 65 // Note F
|
||||
#define SE_TOY_G 66 // Note G
|
||||
#define SE_TOY_A 67 // Note A
|
||||
#define SE_TOY_B 68 // Note B
|
||||
#define SE_TOY_C1 69 // Note High C
|
||||
#define SE_MIZU 70 // Puddle
|
||||
#define SE_HASHI 71 // Boardwalk
|
||||
#define SE_DAUGI 72 // Slots Credits
|
||||
#define SE_PINPON 73 // Ding-dong!
|
||||
#define SE_FUUSEN1 74 // Red Balloon
|
||||
#define SE_FUUSEN2 75 // Blue Balloon
|
||||
#define SE_FUUSEN3 76 // Yellow Balloon
|
||||
#define SE_TOY_KABE 77 // Breakable Door
|
||||
#define SE_TOY_DANGO 78 // Mud Ball
|
||||
#define SE_DOKU 79 // Overworld Poison Damage
|
||||
#define SE_ESUKA 80 // Escalator
|
||||
#define SE_T_AME 81 // Rain
|
||||
#define SE_T_AME_E 82 // Rain Stop
|
||||
#define SE_T_OOAME 83 // Heavy Rain
|
||||
#define SE_T_OOAME_E 84 // Heavy Rain Stop
|
||||
#define SE_T_KOAME 85 // Light Rain
|
||||
#define SE_T_KOAME_E 86 // Light Rain Stop
|
||||
#define SE_T_KAMI 87 // Thunder
|
||||
#define SE_T_KAMI2 88 // Thunder 2
|
||||
#define SE_ELEBETA 89 // Elevator
|
||||
#define SE_HINSI 90 // Low Health
|
||||
#define SE_EXPMAX 91 // Exp. Max
|
||||
#define SE_TAMAKORO 92 // Roulette Ball
|
||||
#define SE_TAMAKORO_E 93 // Roulette Ball 2
|
||||
#define SE_BASABASA 94
|
||||
#define SE_REGI 95 // Cash Register
|
||||
#define SE_C_GAJI 96 // Contest Hearts
|
||||
#define SE_C_MAKU_U 97 // Contest Curtain rise
|
||||
#define SE_C_MAKU_D 98 // Contest Curtain fall
|
||||
#define SE_C_PASI 99
|
||||
#define SE_C_SYU 100
|
||||
#define SE_C_PIKON 101 // Pokémon Appears in Contest
|
||||
#define SE_REAPOKE 102 // Shiny Pokémon
|
||||
#define SE_OP_BASYU 103 // Opening Movie -> Title Screen whoosh
|
||||
#define SE_BT_START 104 // Battle Mugshot whoosh
|
||||
#define SE_DENDOU 105 // Audience Cheering
|
||||
#define SE_JIHANKI 106 // Vending Machine
|
||||
#define SE_TAMA 107 // Orb Used
|
||||
#define SE_Z_SCROLL 108 // Pokédex Scrolling
|
||||
#define SE_Z_PAGE 109 // Pokédex Page
|
||||
#define SE_PN_ON 110 // PokéNav On
|
||||
#define SE_PN_OFF 111 // PokéNav Off
|
||||
#define SE_Z_SEARCH 112 // Pokédex Search
|
||||
#define SE_TAMAGO 113 // Egg hatch
|
||||
#define SE_TB_START 114 // Battle - Poké Ball Tray slide in
|
||||
#define SE_TB_KON 115 // Battle - Poké Ball Tray ball sound
|
||||
#define SE_TB_KARA 116 // Battle - Poké Ball Tray slide out
|
||||
#define SE_BIDORO 117
|
||||
#define SE_W085 118 // Thunderbolt
|
||||
#define SE_W085B 119 // Thunderbolt 2
|
||||
#define SE_W231 120 // Harden
|
||||
#define SE_W171 121 // Nightmare
|
||||
#define SE_W233 122 // Vital Throw
|
||||
#define SE_W233B 123 // Vital Throw 2
|
||||
#define SE_W145 124 // Bubble
|
||||
#define SE_W145B 125 // Bubble 2
|
||||
#define SE_W145C 126 // Bubble 3
|
||||
#define SE_W240 127 // Rain Dance
|
||||
#define SE_W015 128 // Cut
|
||||
#define SE_W081 129 // String Shot
|
||||
#define SE_W081B 130 // String Shot 2
|
||||
#define SE_W088 131 // Rock Throw
|
||||
#define SE_W016 132 // Gust
|
||||
#define SE_W016B 133 // Gust 2
|
||||
#define SE_W003 134 // DoubleSlap
|
||||
#define SE_W104 135 // Double Team
|
||||
#define SE_W013 136 // Razor Wind
|
||||
#define SE_W196 137 // Icy Wind
|
||||
#define SE_W086 138 // Thunder Wave
|
||||
#define SE_W004 139 // Comet Punch
|
||||
#define SE_W025 140 // Mega Kick
|
||||
#define SE_W025B 141 // Mega Kick 2
|
||||
#define SE_W152 142 // Crabhammer
|
||||
#define SE_W026 143 // Jump Kick
|
||||
#define SE_W172 144 // Flame Wheel
|
||||
#define SE_W172B 145 // Flame Wheel 2
|
||||
#define SE_W053 146 // Flamethrower
|
||||
#define SE_W007 147 // Fire Punch
|
||||
#define SE_W092 148 // Toxic
|
||||
#define SE_W221 149 // Sacred Fire
|
||||
#define SE_W221B 150 // Sacred Fire 2
|
||||
#define SE_W052 151 // Ember
|
||||
#define SE_W036 152 // Take Down
|
||||
#define SE_W059 153 // Blizzard
|
||||
#define SE_W059B 154 // Blizzard 2
|
||||
#define SE_W010 155 // Scratch
|
||||
#define SE_W011 156 // Vicegrip
|
||||
#define SE_W017 157 // Wing Attack
|
||||
#define SE_W019 158 // Fly
|
||||
#define SE_W028 159 // Sand-Attack
|
||||
#define SE_W013B 160 // Razor Wind 2
|
||||
#define SE_W044 161 // Bite
|
||||
#define SE_W029 162 // Headbutt
|
||||
#define SE_W057 163 // Surf
|
||||
#define SE_W056 164 // Hydro Pump
|
||||
#define SE_W250 165 // Whirlpool
|
||||
#define SE_W030 166 // Horn Attack
|
||||
#define SE_W039 167 // Tail Whip
|
||||
#define SE_W054 168 // Mist
|
||||
#define SE_W077 169 // PoisonPowder
|
||||
#define SE_W020 170 // Bind
|
||||
#define SE_W082 171 // Dragon Rage
|
||||
#define SE_W047 172 // Sing
|
||||
#define SE_W195 173 // Perish Song
|
||||
#define SE_W006 174 // Pay Day
|
||||
#define SE_W091 175 // Dig
|
||||
#define SE_W146 176 // Dizzy Punch
|
||||
#define SE_W120 177 // Self-Destruct
|
||||
#define SE_W153 178 // Explosion
|
||||
#define SE_W071B 179 // Absorb 2
|
||||
#define SE_W071 180 // Absorb
|
||||
#define SE_W103 181 // Screech
|
||||
#define SE_W062 182 // BubbleBeam
|
||||
#define SE_W062B 183 // BubbleBeam 2
|
||||
#define SE_W048 184 // Supersonic
|
||||
#define SE_W187 185 // Belly Drum
|
||||
#define SE_W118 186 // Metronome
|
||||
#define SE_W155 187 // Bonemerang
|
||||
#define SE_W122 188 // Lick
|
||||
#define SE_W060 189 // Psybeam
|
||||
#define SE_W185 190 // Faint Attack
|
||||
#define SE_W014 191 // Swords Dance
|
||||
#define SE_W043 192 // Leer
|
||||
#define SE_W207 193 // Swagger
|
||||
#define SE_W207B 194 // Swagger 2
|
||||
#define SE_W215 195 // Heal Bell
|
||||
#define SE_W109 196 // Confuse Ray
|
||||
#define SE_W173 197 // Snore
|
||||
#define SE_W280 198 // Brick Break
|
||||
#define SE_W202 199 // Giga Drain
|
||||
#define SE_W060B 200 // Psybeam 2
|
||||
#define SE_W076 201 // SolarBeam
|
||||
#define SE_W080 202 // Petal Dance
|
||||
#define SE_W100 203 // Teleport
|
||||
#define SE_W107 204 // Minimize
|
||||
#define SE_W166 205 // Sketch
|
||||
#define SE_W129 206 // Swift
|
||||
#define SE_W115 207 // Reflect
|
||||
#define SE_W112 208 // Barrier
|
||||
#define SE_W197 209 // Detect
|
||||
#define SE_W199 210 // Lock-On
|
||||
#define SE_W236 211 // Moonlight
|
||||
#define SE_W204 212 // Charm
|
||||
#define SE_W268 213 // Charge
|
||||
#define SE_W070 214 // Strength
|
||||
#define SE_W063 215 // Hyper Beam
|
||||
#define SE_W127 216 // Waterfall
|
||||
#define SE_W179 217 // Reversal
|
||||
#define SE_W151 218 // Acid Armor
|
||||
#define SE_W201 219 // Sandstorm
|
||||
#define SE_W161 220 // Tri-Attack
|
||||
#define SE_W161B 221 // Tri-Attack 2
|
||||
#define SE_W227 222 // Encore
|
||||
#define SE_W227B 223 // Encore 2
|
||||
#define SE_W226 224 // Baton Pass
|
||||
#define SE_W208 225 // Milk Drink
|
||||
#define SE_W213 226 // Attract
|
||||
#define SE_W213B 227 // Attract 2
|
||||
#define SE_W234 228 // Morning Sun
|
||||
#define SE_W260 229 // Flatter
|
||||
#define SE_W328 230 // Sand Tomb
|
||||
#define SE_W320 231 // GrassWhistle
|
||||
#define SE_W255 232 // Spit Up
|
||||
#define SE_W291 233 // Dive
|
||||
#define SE_W089 234 // Earthquake
|
||||
#define SE_W239 235 // Twister
|
||||
#define SE_W230 236 // Sweet Scent
|
||||
#define SE_W281 237 // Yawn
|
||||
#define SE_W327 238 // Sky Uppercut
|
||||
#define SE_W287 239 // Stat Increased
|
||||
#define SE_W257 240 // Heat Wave
|
||||
#define SE_W253 241 // Uproar
|
||||
#define SE_W258 242 // Hail
|
||||
#define SE_W322 243 // Cosmic Power
|
||||
#define SE_W298 244 // Teeter Dance
|
||||
#define SE_W287B 245 // Stat Decreased
|
||||
#define SE_W114 246 // Haze
|
||||
#define SE_W063B 247 // Hyper Beam 2
|
||||
// FRLG SFX below
|
||||
#define SE_RG_W_DOOR 248 // Door
|
||||
#define SE_RG_CARD1 249 // Trainer Card 1
|
||||
#define SE_RG_CARD2 250 // Trainer Card 2
|
||||
#define SE_RG_CARD3 251 // Trainer Card 3
|
||||
#define SE_RG_BAG1 252 // Bag Scroll
|
||||
#define SE_RG_BAG2 253 // Bag Pocket Change
|
||||
#define SE_RG_GETTING 254
|
||||
#define SE_RG_SHOP 255 // Cash Register
|
||||
#define SE_RG_KITEKI 256 // S.S. Anne Horn
|
||||
#define SE_RG_HELP_OP 257 // Help Menu Open
|
||||
#define SE_RG_HELP_CL 258 // Help Menu Close
|
||||
#define SE_RG_HELP_NG 259 // Help Menu Error
|
||||
#define SE_RG_DEOMOV 260 // Deoxys Moves
|
||||
#define SE_RG_EXCELLENT 261
|
||||
#define SE_RG_NAWAMISS 262
|
||||
// end FRLG SFX
|
||||
#define SE_TOREEYE 263 // Trainer's Eye Call
|
||||
#define SE_TOREOFF 264 // Trainer's Eye Hang Up
|
||||
#define SE_HANTEI1 265 // Battle Arena Time's Up 1
|
||||
#define SE_HANTEI2 266 // Battle Arena Time's Up 2
|
||||
#define SE_CURTAIN 267 // Battle Pike Curtain Open
|
||||
#define SE_CURTAIN1 268 // Battle Pike Curtain Close
|
||||
#define SE_USSOKI 269 // Sudowoodo
|
||||
|
||||
#define MUS_TETSUJI 350 // Littleroot Town Test 'TETSUJI'
|
||||
#define MUS_FIELD13 351 // GSC - Route 38
|
||||
#define MUS_KACHI22 352 // Wild Pokémon Defeated
|
||||
#define MUS_KACHI2 353 // Wild Pokémon Defeated with Intro
|
||||
#define MUS_KACHI3 354 // Gym Leader Defeated
|
||||
#define MUS_KACHI5 355 // Victory! Elite Four
|
||||
#define MUS_PCC 356 // Crystal - Pokémon Communication Center
|
||||
#define MUS_NIBI 357 // GSC - Viridian/Saffron/Pewter/etc
|
||||
#define MUS_SUIKUN 358 // Crystal - Battle! Legendary Beasts
|
||||
#define MUS_DOORO1 359 // Route 101
|
||||
#define MUS_DOORO_X1 360 // Route 110
|
||||
#define MUS_DOORO_X3 361 // Route 120
|
||||
#define MUS_MACHI_S2 362 // Petalburg City
|
||||
#define MUS_MACHI_S4 363 // Oldale/Lavaridge Town
|
||||
#define MUS_GIM 364 // Gym
|
||||
#define MUS_NAMINORI 365 // Surfing
|
||||
#define MUS_DAN01 366 // Caves and Darkness
|
||||
#define MUS_FANFA1 367 // Level Up!
|
||||
#define MUS_ME_ASA 368 // Pokémon Healed
|
||||
#define MUS_ME_BACHI 369 // Obtained a Badge!
|
||||
#define MUS_FANFA4 370 // Obtained an Item!
|
||||
#define MUS_FANFA5 371 // Your Pokémon Just Evolved!
|
||||
#define MUS_ME_WAZA 372 // Obtained a TM/HM!
|
||||
#define MUS_BIJYUTU 373 // Lilycove Museum
|
||||
#define MUS_DOORO_X4 374 // Route 122/Intro
|
||||
#define MUS_FUNE_KAN 375 // Slateport Museum
|
||||
#define MUS_ME_SHINKA 376 // Evolution Intro
|
||||
#define MUS_SHINKA 377 // Evolution
|
||||
#define MUS_ME_WASURE 378 // Move Deleted/Messed Up Appeal
|
||||
#define MUS_SYOUJOEYE 379 // Encounter! Tuber
|
||||
#define MUS_BOYEYE 380 // Encounter! Boy
|
||||
#define MUS_DAN02 381 // Abandoned Ship/Southern Island
|
||||
#define MUS_MACHI_S3 382 // Fortree City/Pacifidlog Town
|
||||
#define MUS_ODAMAKI 383 // Professor Birch's Lab
|
||||
#define MUS_B_TOWER 384 // Battle Tower (RS)
|
||||
#define MUS_SWIMEYE 385 // Encounter! Swimmer
|
||||
#define MUS_DAN03 386 // Meteor Falls/Cave of Origin
|
||||
#define MUS_ME_KINOMI 387 // Obtained a Berry!
|
||||
#define MUS_ME_TAMA 388 // Awakening the Super-Ancient Pokémon
|
||||
#define MUS_ME_B_BIG 389 // Slots Jackpot!
|
||||
#define MUS_ME_B_SMALL 390 // Slots Victory!
|
||||
#define MUS_ME_ZANNEN 391 // Too bad!
|
||||
#define MUS_BD_TIME 392 // Roulette!
|
||||
#define MUS_TEST1 393 // Contest Test 1
|
||||
#define MUS_TEST2 394 // Contest Test 2
|
||||
#define MUS_TEST3 395 // Contest Test 3
|
||||
#define MUS_TEST4 396 // Contest Test 4
|
||||
#define MUS_TEST 397 // Encounter! Gentleman
|
||||
#define MUS_GOMACHI0 398 // Verdanturf Town
|
||||
#define MUS_GOTOWN 399 // Rustboro/Mauville/Mossdeep City
|
||||
#define MUS_POKECEN 400 // Pokémon Center
|
||||
#define MUS_NEXTROAD 401 // Route 104
|
||||
#define MUS_GRANROAD 402 // Route 119
|
||||
#define MUS_CYCLING 403 // Cycling
|
||||
#define MUS_FRIENDLY 404 // Pokémart
|
||||
#define MUS_MISHIRO 405 // Littleroot Town
|
||||
#define MUS_TOZAN 406 // Sky Pillar
|
||||
#define MUS_GIRLEYE 407 // Encounter! Girl
|
||||
#define MUS_MINAMO 408 // Lilycove City
|
||||
#define MUS_ASHROAD 409 // Route 111
|
||||
#define MUS_EVENT0 410 // Help me!
|
||||
#define MUS_DEEPDEEP 411 // Underwater
|
||||
#define MUS_KACHI1 412 // Victory! Trainer
|
||||
#define MUS_TITLE3 413 // Title Screen
|
||||
#define MUS_DEMO1 414 // Opening Movie
|
||||
#define MUS_GIRL_SUP 415 // Encounter! May
|
||||
#define MUS_HAGESHII 416 // Encounter! Biker
|
||||
#define MUS_KAKKOII 417 // Encounter! Electric Trainer
|
||||
#define MUS_KAZANBAI 418 // Route 113
|
||||
#define MUS_AQA_0 419 // Encounter! Team Aqua
|
||||
#define MUS_TSURETEK 420 // Follow Me!
|
||||
#define MUS_BOY_SUP 421 // Encounter! Brendan
|
||||
#define MUS_RAINBOW 422 // Ever Grande City
|
||||
#define MUS_AYASII 423 // Encounter! Psychic
|
||||
#define MUS_KACHI4 424 // Victory! Aqua/Magma Grunt
|
||||
#define MUS_ROPEWAY 425 // Cable Car
|
||||
#define MUS_CASINO 426 // Game Corner
|
||||
#define MUS_HIGHTOWN 427 // Dewford Town
|
||||
#define MUS_SAFARI 428 // Safari Zone
|
||||
#define MUS_C_ROAD 429 // Victory Road
|
||||
#define MUS_AJITO 430 // Aqua/Magma Hideout
|
||||
#define MUS_M_BOAT 431 // Sailing
|
||||
#define MUS_M_DUNGON 432 // Mt. Pyre (Inside)
|
||||
#define MUS_FINECITY 433 // Slateport City
|
||||
#define MUS_MACHUPI 434 // Mt. Pyre (Outside)
|
||||
#define MUS_P_SCHOOL 435 // Pokémon Trainer's School
|
||||
#define MUS_DENDOU 436 // You're the Champion!
|
||||
#define MUS_TONEKUSA 437 // Fallarbor Town
|
||||
#define MUS_MABOROSI 438 // Sealed Chamber
|
||||
#define MUS_CON_FAN 439 // Obtained a Contest Ribbon!
|
||||
#define MUS_CONTEST0 440 // Pokémon Contest
|
||||
#define MUS_MGM0 441 // Encounter! Team Magma
|
||||
#define MUS_T_BATTLE 442 // Opening Battle
|
||||
#define MUS_OOAME 443 // The Flood
|
||||
#define MUS_HIDERI 444 // The Drought
|
||||
#define MUS_RUNECITY 445 // Sootopolis City
|
||||
#define MUS_CON_K 446 // Contest/Berry Blending Results
|
||||
#define MUS_EIKOU_R 447 // Hall of Fame
|
||||
#define MUS_KARAKURI 448 // Trick House
|
||||
#define MUS_HUTAGO 449 // Encounter! Kid
|
||||
#define MUS_SITENNOU 450 // Encounter! Elite Four
|
||||
#define MUS_YAMA_EYE 451 // Encounter! Hiker
|
||||
#define MUS_CONLOBBY 452 // Contest Lobby
|
||||
#define MUS_INTER_V 453 // Encounter! Gabby and Ty
|
||||
#define MUS_DAIGO 454 // Encounter! Wallace
|
||||
#define MUS_THANKFOR 455 // Credits
|
||||
#define MUS_END 456 // The End
|
||||
#define MUS_B_FRONTIER 457 // Battle Frontier
|
||||
#define MUS_B_ARENA 458 // Battle Arena
|
||||
#define MUS_ME_POINTGET 459 // Obtained Battle Points!
|
||||
#define MUS_ME_TORE_EYE 460 // Registered Trainer!
|
||||
#define MUS_PYRAMID 461 // Battle Pyramid
|
||||
#define MUS_PYRAMID_TOP 462 // Top of the Battle Pyramid
|
||||
#define MUS_B_PALACE 463 // Battle Palace
|
||||
#define MUS_REKKUU_KOURIN 464 // Rayquaza Enters
|
||||
#define MUS_SATTOWER 465 // Battle Tower (Emerald)
|
||||
#define MUS_ME_SYMBOLGET 466 // Obtained a Frontier Symbol!
|
||||
#define MUS_B_DOME 467 // Battle Dome
|
||||
#define MUS_B_TUBE 468 // Battle Pike
|
||||
#define MUS_B_FACTORY 469 // Battle Factory
|
||||
#define MUS_VS_REKKU 470 // Battle! Legendary Pokémon
|
||||
#define MUS_VS_FRONT 471 // Battle! Frontier Brain
|
||||
#define MUS_VS_MEW 472 // Battle! Mew
|
||||
#define MUS_B_DOME1 473 // Battle Dome Lobby
|
||||
#define MUS_BATTLE27 474 // Battle! Wild Pokémon
|
||||
#define MUS_BATTLE31 475 // Battle! Team Aqua/Magma
|
||||
#define MUS_BATTLE20 476 // Battle! Trainer
|
||||
#define MUS_BATTLE32 477 // Battle! Gym Leader
|
||||
#define MUS_BATTLE33 478 // Battle! Champion
|
||||
#define MUS_BATTLE36 479 // Battle! Regi Trio
|
||||
#define MUS_BATTLE34 480 // Battle! Legendary Pokémon (dupe)
|
||||
#define MUS_BATTLE35 481 // Battle! Rival
|
||||
#define MUS_BATTLE38 482 // Battle! Elite Four
|
||||
#define MUS_BATTLE30 483 // Battle! Archie/Maxie
|
||||
// FRLG Music Below
|
||||
#define MUS_RG_ANNAI 484 // Follow Me!
|
||||
#define MUS_RG_SLOT 485 // Game Corner
|
||||
#define MUS_RG_AJITO 486 // Rocket Hideout
|
||||
#define MUS_RG_GYM 487 // Gym
|
||||
#define MUS_RG_PURIN 488 // Jigglypuff's Song
|
||||
#define MUS_RG_DEMO 489 // Opening Movie
|
||||
#define MUS_RG_TITLE 490 // Title Screen
|
||||
#define MUS_RG_GUREN 491 // Cinnabar Island
|
||||
#define MUS_RG_SHION 492 // Lavender Town
|
||||
#define MUS_RG_KAIHUKU 493 // RBY Pokémon Center Healing
|
||||
#define MUS_RG_CYCLING 494 // Cycling
|
||||
#define MUS_RG_ROCKET 495 // Encounter! Team Rocket
|
||||
#define MUS_RG_SHOUJO 496 // Encounter! Girl
|
||||
#define MUS_RG_SHOUNEN 497 // Encounter! Boy
|
||||
#define MUS_RG_DENDOU 498 // You're the Champion!
|
||||
#define MUS_RG_T_MORI 499 // Viridian Forest
|
||||
#define MUS_RG_OTSUKIMI 500 // Mt. Moon
|
||||
#define MUS_RG_POKEYASHI 501 // Pokémon Mansion
|
||||
#define MUS_RG_ENDING 502 // Credits
|
||||
#define MUS_RG_LOAD01 503 // Route 1
|
||||
#define MUS_RG_OPENING 504 // Route 24/Intro
|
||||
#define MUS_RG_LOAD02 505 // Route 3
|
||||
#define MUS_RG_LOAD03 506 // Route 11
|
||||
#define MUS_RG_CHAMP_R 507 // Victory Road/Indigo Plateau
|
||||
#define MUS_RG_VS_GYM 508 // Battle! Gym Leader/Elite Four
|
||||
#define MUS_RG_VS_TORE 509 // Battle! Trainer
|
||||
#define MUS_RG_VS_YASEI 510 // Battle! Wild Pokémon
|
||||
#define MUS_RG_VS_LAST 511 // Battle! Champion
|
||||
#define MUS_RG_MASARA 512 // Pallet Town
|
||||
#define MUS_RG_KENKYU 513 // Professor Oak's Lab
|
||||
#define MUS_RG_OHKIDO 514 // Professor Oak's Theme
|
||||
#define MUS_RG_POKECEN 515 // Pokémon Center
|
||||
#define MUS_RG_SANTOAN 516 // S.S. Anne
|
||||
#define MUS_RG_NAMINORI 517 // Surfing
|
||||
#define MUS_RG_P_TOWER 518 // Pokémon Tower
|
||||
#define MUS_RG_SHIRUHU 519 // Silph Co.
|
||||
#define MUS_RG_HANADA 520 // Cerulean/Fuschia City
|
||||
#define MUS_RG_TAMAMUSI 521 // Celadon City
|
||||
#define MUS_RG_WIN_TRE 522 // Victory! Trainer
|
||||
#define MUS_RG_WIN_YASEI 523 // Victory! Wild Pokémon
|
||||
#define MUS_RG_WIN_GYM 524 // Victory! Gym Leader
|
||||
#define MUS_RG_KUCHIBA 525 // Vermillion City
|
||||
#define MUS_RG_NIBI 526 // Viridian/Saffron/Pewter City
|
||||
#define MUS_RG_RIVAL1 527 // Encounter! Rival
|
||||
#define MUS_RG_RIVAL2 528 // Rival's Exit
|
||||
#define MUS_RG_FAN2 529 // Fanfare 2
|
||||
#define MUS_RG_FAN5 530 // Obtained a Starter!
|
||||
#define MUS_RG_FAN6 531 // Pokémon Caught! (Used in Emerald)
|
||||
#define MUS_ME_RG_PHOTO 532 // Trainer Photo
|
||||
#define MUS_RG_TITLEROG 533 // Game Freak
|
||||
#define MUS_RG_GET_YASEI 534 // Pokémon Caught Victory Theme
|
||||
#define MUS_RG_SOUSA 535 // Starting Tutorial
|
||||
#define MUS_RG_SEKAIKAN 536 // Starting Tutorial 2
|
||||
#define MUS_RG_SEIBETU 537 // Starting Tutorial 3
|
||||
#define MUS_RG_JUMP 538 // Jumping Minigame
|
||||
#define MUS_RG_UNION 539 // Union Room
|
||||
#define MUS_RG_NETWORK 540 // Network Center
|
||||
#define MUS_RG_OKURIMONO 541 // Mystery Gift
|
||||
#define MUS_RG_KINOMIKUI 542
|
||||
#define MUS_RG_NANADUNGEON 543 // Sevii Caves/Altering Cave (Mt. Moon)
|
||||
#define MUS_RG_OSHIE_TV 544 // Follow Me!
|
||||
#define MUS_RG_NANASHIMA 545 // Sevii Islands Routes (Lake of Rage)
|
||||
#define MUS_RG_NANAISEKI 546 // Sevii Forests (Viridian Forest)
|
||||
#define MUS_RG_NANA123 547 // Sevii Islands 1-3 (Viridian/Saffron/Pewter)
|
||||
#define MUS_RG_NANA45 548 // Sevii Islands 4-5 (Azalea Town)
|
||||
#define MUS_RG_NANA67 549 // Sevii Islands 6-7 (Violet City)
|
||||
#define MUS_RG_POKEFUE 550 // Poké Flute
|
||||
#define MUS_RG_VS_DEO 551 // Battle! Deoxys
|
||||
#define MUS_RG_VS_MYU2 552 // Battle! Mewtwo
|
||||
#define MUS_RG_VS_DEN 553 // Battle! Legendary Birds
|
||||
#define MUS_RG_EXEYE 554 // Encounter! Gym Leader
|
||||
#define MUS_RG_DEOEYE 555 // Encounter! Deoxys
|
||||
#define MUS_RG_T_TOWER 556 // Trainer Tower (Gym)
|
||||
#define MUS_RG_SLOWMASARA 557 // Pallet Town (Hall of Fame remix)
|
||||
#define MUS_RG_TVNOIZE 558 // Teachy TV
|
||||
#define PH_TRAP_BLEND 559
|
||||
#define PH_TRAP_HELD 560
|
||||
#define PH_TRAP_SOLO 561
|
||||
#define PH_FACE_BLEND 562
|
||||
#define PH_FACE_HELD 563
|
||||
#define PH_FACE_SOLO 564
|
||||
#define PH_CLOTH_BLEND 565
|
||||
#define PH_CLOTH_HELD 566
|
||||
#define PH_CLOTH_SOLO 567
|
||||
#define PH_DRESS_BLEND 568
|
||||
#define PH_DRESS_HELD 569
|
||||
#define PH_DRESS_SOLO 570
|
||||
#define PH_FLEECE_BLEND 571
|
||||
#define PH_FLEECE_HELD 572
|
||||
#define PH_FLEECE_SOLO 573
|
||||
#define PH_KIT_BLEND 574
|
||||
#define PH_KIT_HELD 575
|
||||
#define PH_KIT_SOLO 576
|
||||
#define PH_PRICE_BLEND 577
|
||||
#define PH_PRICE_HELD 578
|
||||
#define PH_PRICE_SOLO 579
|
||||
#define PH_LOT_BLEND 580
|
||||
#define PH_LOT_HELD 581
|
||||
#define PH_LOT_SOLO 582
|
||||
#define PH_GOAT_BLEND 583
|
||||
#define PH_GOAT_HELD 584
|
||||
#define PH_GOAT_SOLO 585
|
||||
#define PH_THOUGHT_BLEND 586
|
||||
#define PH_THOUGHT_HELD 587
|
||||
#define PH_THOUGHT_SOLO 588
|
||||
#define PH_CHOICE_BLEND 589
|
||||
#define PH_CHOICE_HELD 590
|
||||
#define PH_CHOICE_SOLO 591
|
||||
#define PH_MOUTH_BLEND 592
|
||||
#define PH_MOUTH_HELD 593
|
||||
#define PH_MOUTH_SOLO 594
|
||||
#define PH_FOOT_BLEND 595
|
||||
#define PH_FOOT_HELD 596
|
||||
#define PH_FOOT_SOLO 597
|
||||
#define PH_GOOSE_BLEND 598
|
||||
#define PH_GOOSE_HELD 599
|
||||
#define PH_GOOSE_SOLO 600
|
||||
#define PH_STRUT_BLEND 601
|
||||
#define PH_STRUT_HELD 602
|
||||
#define PH_STRUT_SOLO 603
|
||||
#define PH_CURE_BLEND 604
|
||||
#define PH_CURE_HELD 605
|
||||
#define PH_CURE_SOLO 606
|
||||
#define PH_NURSE_BLEND 607
|
||||
#define PH_NURSE_HELD 608
|
||||
#define PH_NURSE_SOLO 609
|
||||
|
||||
#define MUS_ROUTE_118 0x7FFF // What is this for?
|
||||
|
||||
#endif // GUARD_CONSTANTS_SONGS_H
|
||||
450
include/constants/species.h
Normal file
450
include/constants/species.h
Normal file
@@ -0,0 +1,450 @@
|
||||
#ifndef GUARD_CONSTANTS_SPECIES_H
|
||||
#define GUARD_CONSTANTS_SPECIES_H
|
||||
|
||||
#define SPECIES_NONE 0
|
||||
#define SPECIES_BULBASAUR 1
|
||||
#define SPECIES_IVYSAUR 2
|
||||
#define SPECIES_VENUSAUR 3
|
||||
#define SPECIES_CHARMANDER 4
|
||||
#define SPECIES_CHARMELEON 5
|
||||
#define SPECIES_CHARIZARD 6
|
||||
#define SPECIES_SQUIRTLE 7
|
||||
#define SPECIES_WARTORTLE 8
|
||||
#define SPECIES_BLASTOISE 9
|
||||
#define SPECIES_CATERPIE 10
|
||||
#define SPECIES_METAPOD 11
|
||||
#define SPECIES_BUTTERFREE 12
|
||||
#define SPECIES_WEEDLE 13
|
||||
#define SPECIES_KAKUNA 14
|
||||
#define SPECIES_BEEDRILL 15
|
||||
#define SPECIES_PIDGEY 16
|
||||
#define SPECIES_PIDGEOTTO 17
|
||||
#define SPECIES_PIDGEOT 18
|
||||
#define SPECIES_RATTATA 19
|
||||
#define SPECIES_RATICATE 20
|
||||
#define SPECIES_SPEAROW 21
|
||||
#define SPECIES_FEAROW 22
|
||||
#define SPECIES_EKANS 23
|
||||
#define SPECIES_ARBOK 24
|
||||
#define SPECIES_PIKACHU 25
|
||||
#define SPECIES_RAICHU 26
|
||||
#define SPECIES_SANDSHREW 27
|
||||
#define SPECIES_SANDSLASH 28
|
||||
#define SPECIES_NIDORAN_F 29
|
||||
#define SPECIES_NIDORINA 30
|
||||
#define SPECIES_NIDOQUEEN 31
|
||||
#define SPECIES_NIDORAN_M 32
|
||||
#define SPECIES_NIDORINO 33
|
||||
#define SPECIES_NIDOKING 34
|
||||
#define SPECIES_CLEFAIRY 35
|
||||
#define SPECIES_CLEFABLE 36
|
||||
#define SPECIES_VULPIX 37
|
||||
#define SPECIES_NINETALES 38
|
||||
#define SPECIES_JIGGLYPUFF 39
|
||||
#define SPECIES_WIGGLYTUFF 40
|
||||
#define SPECIES_ZUBAT 41
|
||||
#define SPECIES_GOLBAT 42
|
||||
#define SPECIES_ODDISH 43
|
||||
#define SPECIES_GLOOM 44
|
||||
#define SPECIES_VILEPLUME 45
|
||||
#define SPECIES_PARAS 46
|
||||
#define SPECIES_PARASECT 47
|
||||
#define SPECIES_VENONAT 48
|
||||
#define SPECIES_VENOMOTH 49
|
||||
#define SPECIES_DIGLETT 50
|
||||
#define SPECIES_DUGTRIO 51
|
||||
#define SPECIES_MEOWTH 52
|
||||
#define SPECIES_PERSIAN 53
|
||||
#define SPECIES_PSYDUCK 54
|
||||
#define SPECIES_GOLDUCK 55
|
||||
#define SPECIES_MANKEY 56
|
||||
#define SPECIES_PRIMEAPE 57
|
||||
#define SPECIES_GROWLITHE 58
|
||||
#define SPECIES_ARCANINE 59
|
||||
#define SPECIES_POLIWAG 60
|
||||
#define SPECIES_POLIWHIRL 61
|
||||
#define SPECIES_POLIWRATH 62
|
||||
#define SPECIES_ABRA 63
|
||||
#define SPECIES_KADABRA 64
|
||||
#define SPECIES_ALAKAZAM 65
|
||||
#define SPECIES_MACHOP 66
|
||||
#define SPECIES_MACHOKE 67
|
||||
#define SPECIES_MACHAMP 68
|
||||
#define SPECIES_BELLSPROUT 69
|
||||
#define SPECIES_WEEPINBELL 70
|
||||
#define SPECIES_VICTREEBEL 71
|
||||
#define SPECIES_TENTACOOL 72
|
||||
#define SPECIES_TENTACRUEL 73
|
||||
#define SPECIES_GEODUDE 74
|
||||
#define SPECIES_GRAVELER 75
|
||||
#define SPECIES_GOLEM 76
|
||||
#define SPECIES_PONYTA 77
|
||||
#define SPECIES_RAPIDASH 78
|
||||
#define SPECIES_SLOWPOKE 79
|
||||
#define SPECIES_SLOWBRO 80
|
||||
#define SPECIES_MAGNEMITE 81
|
||||
#define SPECIES_MAGNETON 82
|
||||
#define SPECIES_FARFETCHD 83
|
||||
#define SPECIES_DODUO 84
|
||||
#define SPECIES_DODRIO 85
|
||||
#define SPECIES_SEEL 86
|
||||
#define SPECIES_DEWGONG 87
|
||||
#define SPECIES_GRIMER 88
|
||||
#define SPECIES_MUK 89
|
||||
#define SPECIES_SHELLDER 90
|
||||
#define SPECIES_CLOYSTER 91
|
||||
#define SPECIES_GASTLY 92
|
||||
#define SPECIES_HAUNTER 93
|
||||
#define SPECIES_GENGAR 94
|
||||
#define SPECIES_ONIX 95
|
||||
#define SPECIES_DROWZEE 96
|
||||
#define SPECIES_HYPNO 97
|
||||
#define SPECIES_KRABBY 98
|
||||
#define SPECIES_KINGLER 99
|
||||
#define SPECIES_VOLTORB 100
|
||||
#define SPECIES_ELECTRODE 101
|
||||
#define SPECIES_EXEGGCUTE 102
|
||||
#define SPECIES_EXEGGUTOR 103
|
||||
#define SPECIES_CUBONE 104
|
||||
#define SPECIES_MAROWAK 105
|
||||
#define SPECIES_HITMONLEE 106
|
||||
#define SPECIES_HITMONCHAN 107
|
||||
#define SPECIES_LICKITUNG 108
|
||||
#define SPECIES_KOFFING 109
|
||||
#define SPECIES_WEEZING 110
|
||||
#define SPECIES_RHYHORN 111
|
||||
#define SPECIES_RHYDON 112
|
||||
#define SPECIES_CHANSEY 113
|
||||
#define SPECIES_TANGELA 114
|
||||
#define SPECIES_KANGASKHAN 115
|
||||
#define SPECIES_HORSEA 116
|
||||
#define SPECIES_SEADRA 117
|
||||
#define SPECIES_GOLDEEN 118
|
||||
#define SPECIES_SEAKING 119
|
||||
#define SPECIES_STARYU 120
|
||||
#define SPECIES_STARMIE 121
|
||||
#define SPECIES_MR_MIME 122
|
||||
#define SPECIES_SCYTHER 123
|
||||
#define SPECIES_JYNX 124
|
||||
#define SPECIES_ELECTABUZZ 125
|
||||
#define SPECIES_MAGMAR 126
|
||||
#define SPECIES_PINSIR 127
|
||||
#define SPECIES_TAUROS 128
|
||||
#define SPECIES_MAGIKARP 129
|
||||
#define SPECIES_GYARADOS 130
|
||||
#define SPECIES_LAPRAS 131
|
||||
#define SPECIES_DITTO 132
|
||||
#define SPECIES_EEVEE 133
|
||||
#define SPECIES_VAPOREON 134
|
||||
#define SPECIES_JOLTEON 135
|
||||
#define SPECIES_FLAREON 136
|
||||
#define SPECIES_PORYGON 137
|
||||
#define SPECIES_OMANYTE 138
|
||||
#define SPECIES_OMASTAR 139
|
||||
#define SPECIES_KABUTO 140
|
||||
#define SPECIES_KABUTOPS 141
|
||||
#define SPECIES_AERODACTYL 142
|
||||
#define SPECIES_SNORLAX 143
|
||||
#define SPECIES_ARTICUNO 144
|
||||
#define SPECIES_ZAPDOS 145
|
||||
#define SPECIES_MOLTRES 146
|
||||
#define SPECIES_DRATINI 147
|
||||
#define SPECIES_DRAGONAIR 148
|
||||
#define SPECIES_DRAGONITE 149
|
||||
#define SPECIES_MEWTWO 150
|
||||
#define SPECIES_MEW 151
|
||||
#define SPECIES_CHIKORITA 152
|
||||
#define SPECIES_BAYLEEF 153
|
||||
#define SPECIES_MEGANIUM 154
|
||||
#define SPECIES_CYNDAQUIL 155
|
||||
#define SPECIES_QUILAVA 156
|
||||
#define SPECIES_TYPHLOSION 157
|
||||
#define SPECIES_TOTODILE 158
|
||||
#define SPECIES_CROCONAW 159
|
||||
#define SPECIES_FERALIGATR 160
|
||||
#define SPECIES_SENTRET 161
|
||||
#define SPECIES_FURRET 162
|
||||
#define SPECIES_HOOTHOOT 163
|
||||
#define SPECIES_NOCTOWL 164
|
||||
#define SPECIES_LEDYBA 165
|
||||
#define SPECIES_LEDIAN 166
|
||||
#define SPECIES_SPINARAK 167
|
||||
#define SPECIES_ARIADOS 168
|
||||
#define SPECIES_CROBAT 169
|
||||
#define SPECIES_CHINCHOU 170
|
||||
#define SPECIES_LANTURN 171
|
||||
#define SPECIES_PICHU 172
|
||||
#define SPECIES_CLEFFA 173
|
||||
#define SPECIES_IGGLYBUFF 174
|
||||
#define SPECIES_TOGEPI 175
|
||||
#define SPECIES_TOGETIC 176
|
||||
#define SPECIES_NATU 177
|
||||
#define SPECIES_XATU 178
|
||||
#define SPECIES_MAREEP 179
|
||||
#define SPECIES_FLAAFFY 180
|
||||
#define SPECIES_AMPHAROS 181
|
||||
#define SPECIES_BELLOSSOM 182
|
||||
#define SPECIES_MARILL 183
|
||||
#define SPECIES_AZUMARILL 184
|
||||
#define SPECIES_SUDOWOODO 185
|
||||
#define SPECIES_POLITOED 186
|
||||
#define SPECIES_HOPPIP 187
|
||||
#define SPECIES_SKIPLOOM 188
|
||||
#define SPECIES_JUMPLUFF 189
|
||||
#define SPECIES_AIPOM 190
|
||||
#define SPECIES_SUNKERN 191
|
||||
#define SPECIES_SUNFLORA 192
|
||||
#define SPECIES_YANMA 193
|
||||
#define SPECIES_WOOPER 194
|
||||
#define SPECIES_QUAGSIRE 195
|
||||
#define SPECIES_ESPEON 196
|
||||
#define SPECIES_UMBREON 197
|
||||
#define SPECIES_MURKROW 198
|
||||
#define SPECIES_SLOWKING 199
|
||||
#define SPECIES_MISDREAVUS 200
|
||||
#define SPECIES_UNOWN 201
|
||||
#define SPECIES_WOBBUFFET 202
|
||||
#define SPECIES_GIRAFARIG 203
|
||||
#define SPECIES_PINECO 204
|
||||
#define SPECIES_FORRETRESS 205
|
||||
#define SPECIES_DUNSPARCE 206
|
||||
#define SPECIES_GLIGAR 207
|
||||
#define SPECIES_STEELIX 208
|
||||
#define SPECIES_SNUBBULL 209
|
||||
#define SPECIES_GRANBULL 210
|
||||
#define SPECIES_QWILFISH 211
|
||||
#define SPECIES_SCIZOR 212
|
||||
#define SPECIES_SHUCKLE 213
|
||||
#define SPECIES_HERACROSS 214
|
||||
#define SPECIES_SNEASEL 215
|
||||
#define SPECIES_TEDDIURSA 216
|
||||
#define SPECIES_URSARING 217
|
||||
#define SPECIES_SLUGMA 218
|
||||
#define SPECIES_MAGCARGO 219
|
||||
#define SPECIES_SWINUB 220
|
||||
#define SPECIES_PILOSWINE 221
|
||||
#define SPECIES_CORSOLA 222
|
||||
#define SPECIES_REMORAID 223
|
||||
#define SPECIES_OCTILLERY 224
|
||||
#define SPECIES_DELIBIRD 225
|
||||
#define SPECIES_MANTINE 226
|
||||
#define SPECIES_SKARMORY 227
|
||||
#define SPECIES_HOUNDOUR 228
|
||||
#define SPECIES_HOUNDOOM 229
|
||||
#define SPECIES_KINGDRA 230
|
||||
#define SPECIES_PHANPY 231
|
||||
#define SPECIES_DONPHAN 232
|
||||
#define SPECIES_PORYGON2 233
|
||||
#define SPECIES_STANTLER 234
|
||||
#define SPECIES_SMEARGLE 235
|
||||
#define SPECIES_TYROGUE 236
|
||||
#define SPECIES_HITMONTOP 237
|
||||
#define SPECIES_SMOOCHUM 238
|
||||
#define SPECIES_ELEKID 239
|
||||
#define SPECIES_MAGBY 240
|
||||
#define SPECIES_MILTANK 241
|
||||
#define SPECIES_BLISSEY 242
|
||||
#define SPECIES_RAIKOU 243
|
||||
#define SPECIES_ENTEI 244
|
||||
#define SPECIES_SUICUNE 245
|
||||
#define SPECIES_LARVITAR 246
|
||||
#define SPECIES_PUPITAR 247
|
||||
#define SPECIES_TYRANITAR 248
|
||||
#define SPECIES_LUGIA 249
|
||||
#define SPECIES_HO_OH 250
|
||||
#define SPECIES_CELEBI 251
|
||||
|
||||
#define SPECIES_OLD_UNOWN_B 252
|
||||
#define SPECIES_OLD_UNOWN_C 253
|
||||
#define SPECIES_OLD_UNOWN_D 254
|
||||
#define SPECIES_OLD_UNOWN_E 255
|
||||
#define SPECIES_OLD_UNOWN_F 256
|
||||
#define SPECIES_OLD_UNOWN_G 257
|
||||
#define SPECIES_OLD_UNOWN_H 258
|
||||
#define SPECIES_OLD_UNOWN_I 259
|
||||
#define SPECIES_OLD_UNOWN_J 260
|
||||
#define SPECIES_OLD_UNOWN_K 261
|
||||
#define SPECIES_OLD_UNOWN_L 262
|
||||
#define SPECIES_OLD_UNOWN_M 263
|
||||
#define SPECIES_OLD_UNOWN_N 264
|
||||
#define SPECIES_OLD_UNOWN_O 265
|
||||
#define SPECIES_OLD_UNOWN_P 266
|
||||
#define SPECIES_OLD_UNOWN_Q 267
|
||||
#define SPECIES_OLD_UNOWN_R 268
|
||||
#define SPECIES_OLD_UNOWN_S 269
|
||||
#define SPECIES_OLD_UNOWN_T 270
|
||||
#define SPECIES_OLD_UNOWN_U 271
|
||||
#define SPECIES_OLD_UNOWN_V 272
|
||||
#define SPECIES_OLD_UNOWN_W 273
|
||||
#define SPECIES_OLD_UNOWN_X 274
|
||||
#define SPECIES_OLD_UNOWN_Y 275
|
||||
#define SPECIES_OLD_UNOWN_Z 276
|
||||
|
||||
#define SPECIES_TREECKO 277
|
||||
#define SPECIES_GROVYLE 278
|
||||
#define SPECIES_SCEPTILE 279
|
||||
#define SPECIES_TORCHIC 280
|
||||
#define SPECIES_COMBUSKEN 281
|
||||
#define SPECIES_BLAZIKEN 282
|
||||
#define SPECIES_MUDKIP 283
|
||||
#define SPECIES_MARSHTOMP 284
|
||||
#define SPECIES_SWAMPERT 285
|
||||
#define SPECIES_POOCHYENA 286
|
||||
#define SPECIES_MIGHTYENA 287
|
||||
#define SPECIES_ZIGZAGOON 288
|
||||
#define SPECIES_LINOONE 289
|
||||
#define SPECIES_WURMPLE 290
|
||||
#define SPECIES_SILCOON 291
|
||||
#define SPECIES_BEAUTIFLY 292
|
||||
#define SPECIES_CASCOON 293
|
||||
#define SPECIES_DUSTOX 294
|
||||
#define SPECIES_LOTAD 295
|
||||
#define SPECIES_LOMBRE 296
|
||||
#define SPECIES_LUDICOLO 297
|
||||
#define SPECIES_SEEDOT 298
|
||||
#define SPECIES_NUZLEAF 299
|
||||
#define SPECIES_SHIFTRY 300
|
||||
#define SPECIES_NINCADA 301
|
||||
#define SPECIES_NINJASK 302
|
||||
#define SPECIES_SHEDINJA 303
|
||||
#define SPECIES_TAILLOW 304
|
||||
#define SPECIES_SWELLOW 305
|
||||
#define SPECIES_SHROOMISH 306
|
||||
#define SPECIES_BRELOOM 307
|
||||
#define SPECIES_SPINDA 308
|
||||
#define SPECIES_WINGULL 309
|
||||
#define SPECIES_PELIPPER 310
|
||||
#define SPECIES_SURSKIT 311
|
||||
#define SPECIES_MASQUERAIN 312
|
||||
#define SPECIES_WAILMER 313
|
||||
#define SPECIES_WAILORD 314
|
||||
#define SPECIES_SKITTY 315
|
||||
#define SPECIES_DELCATTY 316
|
||||
#define SPECIES_KECLEON 317
|
||||
#define SPECIES_BALTOY 318
|
||||
#define SPECIES_CLAYDOL 319
|
||||
#define SPECIES_NOSEPASS 320
|
||||
#define SPECIES_TORKOAL 321
|
||||
#define SPECIES_SABLEYE 322
|
||||
#define SPECIES_BARBOACH 323
|
||||
#define SPECIES_WHISCASH 324
|
||||
#define SPECIES_LUVDISC 325
|
||||
#define SPECIES_CORPHISH 326
|
||||
#define SPECIES_CRAWDAUNT 327
|
||||
#define SPECIES_FEEBAS 328
|
||||
#define SPECIES_MILOTIC 329
|
||||
#define SPECIES_CARVANHA 330
|
||||
#define SPECIES_SHARPEDO 331
|
||||
#define SPECIES_TRAPINCH 332
|
||||
#define SPECIES_VIBRAVA 333
|
||||
#define SPECIES_FLYGON 334
|
||||
#define SPECIES_MAKUHITA 335
|
||||
#define SPECIES_HARIYAMA 336
|
||||
#define SPECIES_ELECTRIKE 337
|
||||
#define SPECIES_MANECTRIC 338
|
||||
#define SPECIES_NUMEL 339
|
||||
#define SPECIES_CAMERUPT 340
|
||||
#define SPECIES_SPHEAL 341
|
||||
#define SPECIES_SEALEO 342
|
||||
#define SPECIES_WALREIN 343
|
||||
#define SPECIES_CACNEA 344
|
||||
#define SPECIES_CACTURNE 345
|
||||
#define SPECIES_SNORUNT 346
|
||||
#define SPECIES_GLALIE 347
|
||||
#define SPECIES_LUNATONE 348
|
||||
#define SPECIES_SOLROCK 349
|
||||
#define SPECIES_AZURILL 350
|
||||
#define SPECIES_SPOINK 351
|
||||
#define SPECIES_GRUMPIG 352
|
||||
#define SPECIES_PLUSLE 353
|
||||
#define SPECIES_MINUN 354
|
||||
#define SPECIES_MAWILE 355
|
||||
#define SPECIES_MEDITITE 356
|
||||
#define SPECIES_MEDICHAM 357
|
||||
#define SPECIES_SWABLU 358
|
||||
#define SPECIES_ALTARIA 359
|
||||
#define SPECIES_WYNAUT 360
|
||||
#define SPECIES_DUSKULL 361
|
||||
#define SPECIES_DUSCLOPS 362
|
||||
#define SPECIES_ROSELIA 363
|
||||
#define SPECIES_SLAKOTH 364
|
||||
#define SPECIES_VIGOROTH 365
|
||||
#define SPECIES_SLAKING 366
|
||||
#define SPECIES_GULPIN 367
|
||||
#define SPECIES_SWALOT 368
|
||||
#define SPECIES_TROPIUS 369
|
||||
#define SPECIES_WHISMUR 370
|
||||
#define SPECIES_LOUDRED 371
|
||||
#define SPECIES_EXPLOUD 372
|
||||
#define SPECIES_CLAMPERL 373
|
||||
#define SPECIES_HUNTAIL 374
|
||||
#define SPECIES_GOREBYSS 375
|
||||
#define SPECIES_ABSOL 376
|
||||
#define SPECIES_SHUPPET 377
|
||||
#define SPECIES_BANETTE 378
|
||||
#define SPECIES_SEVIPER 379
|
||||
#define SPECIES_ZANGOOSE 380
|
||||
#define SPECIES_RELICANTH 381
|
||||
#define SPECIES_ARON 382
|
||||
#define SPECIES_LAIRON 383
|
||||
#define SPECIES_AGGRON 384
|
||||
#define SPECIES_CASTFORM 385
|
||||
#define SPECIES_VOLBEAT 386
|
||||
#define SPECIES_ILLUMISE 387
|
||||
#define SPECIES_LILEEP 388
|
||||
#define SPECIES_CRADILY 389
|
||||
#define SPECIES_ANORITH 390
|
||||
#define SPECIES_ARMALDO 391
|
||||
#define SPECIES_RALTS 392
|
||||
#define SPECIES_KIRLIA 393
|
||||
#define SPECIES_GARDEVOIR 394
|
||||
#define SPECIES_BAGON 395
|
||||
#define SPECIES_SHELGON 396
|
||||
#define SPECIES_SALAMENCE 397
|
||||
#define SPECIES_BELDUM 398
|
||||
#define SPECIES_METANG 399
|
||||
#define SPECIES_METAGROSS 400
|
||||
#define SPECIES_REGIROCK 401
|
||||
#define SPECIES_REGICE 402
|
||||
#define SPECIES_REGISTEEL 403
|
||||
#define SPECIES_KYOGRE 404
|
||||
#define SPECIES_GROUDON 405
|
||||
#define SPECIES_RAYQUAZA 406
|
||||
#define SPECIES_LATIAS 407
|
||||
#define SPECIES_LATIOS 408
|
||||
#define SPECIES_JIRACHI 409
|
||||
#define SPECIES_DEOXYS 410
|
||||
#define SPECIES_CHIMECHO 411
|
||||
#define SPECIES_EGG 412
|
||||
|
||||
#define SPECIES_UNOWN_B 413
|
||||
#define SPECIES_UNOWN_C 414
|
||||
#define SPECIES_UNOWN_D 415
|
||||
#define SPECIES_UNOWN_E 416
|
||||
#define SPECIES_UNOWN_F 417
|
||||
#define SPECIES_UNOWN_G 418
|
||||
#define SPECIES_UNOWN_H 419
|
||||
#define SPECIES_UNOWN_I 420
|
||||
#define SPECIES_UNOWN_J 421
|
||||
#define SPECIES_UNOWN_K 422
|
||||
#define SPECIES_UNOWN_L 423
|
||||
#define SPECIES_UNOWN_M 424
|
||||
#define SPECIES_UNOWN_N 425
|
||||
#define SPECIES_UNOWN_O 426
|
||||
#define SPECIES_UNOWN_P 427
|
||||
#define SPECIES_UNOWN_Q 428
|
||||
#define SPECIES_UNOWN_R 429
|
||||
#define SPECIES_UNOWN_S 430
|
||||
#define SPECIES_UNOWN_T 431
|
||||
#define SPECIES_UNOWN_U 432
|
||||
#define SPECIES_UNOWN_V 433
|
||||
#define SPECIES_UNOWN_W 434
|
||||
#define SPECIES_UNOWN_X 435
|
||||
#define SPECIES_UNOWN_Y 436
|
||||
#define SPECIES_UNOWN_Z 437
|
||||
#define SPECIES_UNOWN_EMARK 438
|
||||
#define SPECIES_UNOWN_QMARK 439
|
||||
|
||||
#define NUM_SPECIES SPECIES_EGG
|
||||
|
||||
#endif // GUARD_CONSTANTS_SPECIES_H
|
||||
1129
include/constants/trainers.h
Normal file
1129
include/constants/trainers.h
Normal file
File diff suppressed because it is too large
Load Diff
287
include/constants/vars.h
Normal file
287
include/constants/vars.h
Normal file
@@ -0,0 +1,287 @@
|
||||
#ifndef GUARD_CONSTANTS_VARS_H
|
||||
#define GUARD_CONSTANTS_VARS_H
|
||||
|
||||
#define VAR_0x3F20 0x3F20
|
||||
|
||||
#define VAR_0x4000 0x4000
|
||||
#define VAR_0x4001 0x4001
|
||||
#define VAR_0x4002 0x4002
|
||||
#define VAR_0x4003 0x4003
|
||||
#define VAR_0x4004 0x4004
|
||||
#define VAR_0x4005 0x4005
|
||||
#define VAR_0x4006 0x4006
|
||||
#define VAR_0x4007 0x4007
|
||||
#define VAR_0x4008 0x4008
|
||||
#define VAR_0x4009 0x4009
|
||||
#define VAR_0x400A 0x400A
|
||||
#define VAR_0x400B 0x400B
|
||||
#define VAR_0x400C 0x400C
|
||||
#define VAR_0x400D 0x400D
|
||||
#define VAR_0x400E 0x400E
|
||||
#define VAR_0x400F 0x400F
|
||||
#define VAR_0x4010 0x4010
|
||||
#define VAR_0x4011 0x4011
|
||||
#define VAR_0x4012 0x4012
|
||||
#define VAR_0x4013 0x4013
|
||||
#define VAR_0x4014 0x4014
|
||||
#define VAR_0x4015 0x4015
|
||||
#define VAR_0x4016 0x4016
|
||||
#define VAR_0x4017 0x4017
|
||||
#define VAR_0x4018 0x4018
|
||||
#define VAR_0x4019 0x4019
|
||||
#define VAR_0x401A 0x401A
|
||||
#define VAR_0x401B 0x401B
|
||||
#define VAR_0x401C 0x401C
|
||||
#define VAR_0x401D 0x401D
|
||||
#define VAR_0x401E 0x401E
|
||||
#define VAR_0x401F 0x401F
|
||||
#define VAR_RECYCLE_GOODS 0x4020
|
||||
#define VAR_REPEL_STEP_COUNT 0x4021
|
||||
#define VAR_ICE_STEP_COUNT 0x4022
|
||||
#define VAR_FIRST_POKE 0x4023
|
||||
#define VAR_MIRAGE_RND_H 0x4024
|
||||
#define VAR_MIRAGE_RND_L 0x4025
|
||||
#define VAR_SECRET_BASE_MAP 0x4026
|
||||
#define VAR_0x4027 0x4027
|
||||
#define VAR_0x4028 0x4028
|
||||
#define VAR_0x4029 0x4029
|
||||
#define VAR_HAPPINESS_STEP_COUNTER 0x402A
|
||||
#define VAR_POISON_STEP_COUNTER 0x402B
|
||||
#define VAR_RESET_RTC_ENABLE 0x402C
|
||||
#define VAR_ENIGMA_BERRY_AVAILABLE 0x402D
|
||||
#define VAR_0x402E 0x402E
|
||||
|
||||
#define VAR_FRONTIER_MANIAC_FACILITY 0x402F
|
||||
#define VAR_FRONTIER_GAMBLER_FACILITY 0x4030
|
||||
#define VAR_FRONTIER_GAMBLER_SET_FACILITY_F 0x4031
|
||||
#define VAR_FRONTIER_GAMBLER_AMOUNT_BET 0x4032
|
||||
#define VAR_FRONTIER_GAMBLER_PLACED_BET_F 0x4033
|
||||
|
||||
#define VAR_0x4034 0x4034
|
||||
#define VAR_0x4035 0x4035
|
||||
#define VAR_STORAGE_UNKNOWN 0x4036
|
||||
#define VAR_0x4037 0x4037
|
||||
#define VAR_0x4038 0x4038
|
||||
#define VAR_0x4039 0x4039
|
||||
#define VAR_0x403A 0x403A
|
||||
#define VAR_0x403B 0x403B
|
||||
#define VAR_0x403C 0x403C
|
||||
#define VAR_0x403D 0x403D
|
||||
#define VAR_ALTERING_CAVE_WILD_SET 0x403E
|
||||
#define VAR_0x403F 0x403F
|
||||
#define VAR_DAYS 0x4040
|
||||
#define VAR_0x4041 0x4041
|
||||
#define VAR_0x4042 0x4042
|
||||
#define VAR_DEPT_STORE_FLOOR 0x4043
|
||||
#define VAR_0x4044 0x4044
|
||||
#define VAR_POKELOT_PRIZE 0x4045
|
||||
#define VAR_NATIONAL_DEX 0x4046
|
||||
#define VAR_SEEDOT_SIZE_RECORD 0x4047
|
||||
#define VAR_ASH_GATHER_COUNT 0x4048
|
||||
#define VAR_BIRCH_STATE 0x4049
|
||||
#define VAR_CRUISE_STEP_COUNT 0x404A
|
||||
#define VAR_POKELOT_RND1 0x404B
|
||||
#define VAR_POKELOT_RND2 0x404C
|
||||
#define VAR_0x404D 0x404D
|
||||
#define VAR_0x404E 0x404E
|
||||
#define VAR_LOTAD_SIZE_RECORD 0x404F
|
||||
#define VAR_0x4050 0x4050
|
||||
#define VAR_0x4051 0x4051
|
||||
#define VAR_0x4052 0x4052
|
||||
#define VAR_0x4053 0x4053
|
||||
#define VAR_0x4054 0x4054
|
||||
#define VAR_0x4055 0x4055
|
||||
#define VAR_0x4056 0x4056
|
||||
#define VAR_0x4057 0x4057
|
||||
#define VAR_0x4058 0x4058
|
||||
#define VAR_0x4059 0x4059
|
||||
#define VAR_0x405A 0x405A
|
||||
#define VAR_0x405B 0x405B
|
||||
#define VAR_0x405C 0x405C
|
||||
#define VAR_0x405D 0x405D
|
||||
#define VAR_0x405E 0x405E
|
||||
#define VAR_0x405F 0x405F
|
||||
#define VAR_0x4060 0x4060
|
||||
#define VAR_0x4061 0x4061
|
||||
#define VAR_0x4062 0x4062
|
||||
#define VAR_0x4063 0x4063
|
||||
#define VAR_0x4064 0x4064
|
||||
#define VAR_0x4065 0x4065
|
||||
#define VAR_0x4066 0x4066
|
||||
#define VAR_0x4067 0x4067
|
||||
#define VAR_0x4068 0x4068
|
||||
#define VAR_0x4069 0x4069
|
||||
#define VAR_0x406A 0x406A
|
||||
#define VAR_0x406B 0x406B
|
||||
#define VAR_0x406C 0x406C
|
||||
#define VAR_0x406D 0x406D
|
||||
#define VAR_0x406E 0x406E
|
||||
#define VAR_0x406F 0x406F
|
||||
#define VAR_0x4070 0x4070
|
||||
#define VAR_0x4071 0x4071
|
||||
#define VAR_0x4072 0x4072
|
||||
#define VAR_0x4073 0x4073
|
||||
#define VAR_0x4074 0x4074
|
||||
#define VAR_0x4075 0x4075
|
||||
#define VAR_0x4076 0x4076
|
||||
#define VAR_0x4077 0x4077
|
||||
#define VAR_0x4078 0x4078
|
||||
#define VAR_0x4079 0x4079
|
||||
#define VAR_0x407A 0x407A
|
||||
#define VAR_0x407B 0x407B
|
||||
#define VAR_0x407C 0x407C
|
||||
#define VAR_0x407D 0x407D
|
||||
#define VAR_0x407E 0x407E
|
||||
#define VAR_0x407F 0x407F
|
||||
#define VAR_0x4080 0x4080
|
||||
#define VAR_0x4081 0x4081
|
||||
#define VAR_0x4082 0x4082
|
||||
#define VAR_0x4083 0x4083
|
||||
#define VAR_0x4084 0x4084
|
||||
#define VAR_0x4085 0x4085
|
||||
#define VAR_0x4086 0x4086
|
||||
#define VAR_0x4087 0x4087
|
||||
#define VAR_0x4088 0x4088
|
||||
#define VAR_0x4089 0x4089
|
||||
#define VAR_0x408A 0x408A
|
||||
#define VAR_0x408B 0x408B
|
||||
#define VAR_0x408C 0x408C
|
||||
#define VAR_0x408D 0x408D
|
||||
#define VAR_0x408E 0x408E
|
||||
#define VAR_0x408F 0x408F
|
||||
#define VAR_0x4090 0x4090
|
||||
#define VAR_0x4091 0x4091
|
||||
#define VAR_0x4092 0x4092
|
||||
#define VAR_0x4093 0x4093
|
||||
#define VAR_0x4094 0x4094
|
||||
#define VAR_0x4095 0x4095
|
||||
#define VAR_0x4096 0x4096
|
||||
#define VAR_0x4097 0x4097
|
||||
#define VAR_0x4098 0x4098
|
||||
#define VAR_0x4099 0x4099
|
||||
#define VAR_0x409A 0x409A
|
||||
#define VAR_0x409B 0x409B
|
||||
#define VAR_0x409C 0x409C
|
||||
#define VAR_0x409D 0x409D
|
||||
#define VAR_0x409E 0x409E
|
||||
#define VAR_0x409F 0x409F
|
||||
#define VAR_0x40A0 0x40A0
|
||||
#define VAR_0x40A1 0x40A1
|
||||
#define VAR_0x40A2 0x40A2
|
||||
#define VAR_0x40A3 0x40A3
|
||||
#define VAR_0x40A4 0x40A4
|
||||
#define VAR_0x40A5 0x40A5
|
||||
#define VAR_0x40A6 0x40A6
|
||||
#define VAR_0x40A7 0x40A7
|
||||
#define VAR_0x40A8 0x40A8
|
||||
#define VAR_0x40A9 0x40A9
|
||||
#define VAR_0x40AA 0x40AA
|
||||
#define VAR_0x40AB 0x40AB
|
||||
#define VAR_0x40AC 0x40AC
|
||||
#define VAR_0x40AD 0x40AD
|
||||
#define VAR_0x40AE 0x40AE
|
||||
#define VAR_0x40AF 0x40AF
|
||||
#define VAR_0x40B0 0x40B0
|
||||
#define VAR_0x40B1 0x40B1
|
||||
#define VAR_0x40B2 0x40B2
|
||||
#define VAR_0x40B3 0x40B3
|
||||
#define VAR_PORTHOLE 0x40B4
|
||||
#define VAR_0x40B5 0x40B5
|
||||
#define VAR_0x40B6 0x40B6
|
||||
#define VAR_0x40B7 0x40B7
|
||||
#define VAR_0x40B8 0x40B8
|
||||
#define VAR_0x40B9 0x40B9
|
||||
#define VAR_0x40BA 0x40BA
|
||||
#define VAR_0x40BB 0x40BB
|
||||
#define VAR_0x40BC 0x40BC
|
||||
#define VAR_0x40BD 0x40BD
|
||||
#define VAR_0x40BE 0x40BE
|
||||
#define VAR_0x40BF 0x40BF
|
||||
#define VAR_0x40C0 0x40C0
|
||||
#define VAR_0x40C1 0x40C1
|
||||
#define VAR_0x40C2 0x40C2
|
||||
#define VAR_0x40C3 0x40C3
|
||||
#define VAR_0x40C4 0x40C4
|
||||
#define VAR_0x40C5 0x40C5
|
||||
#define VAR_0x40C6 0x40C6
|
||||
#define VAR_0x40C7 0x40C7
|
||||
#define VAR_0x40C8 0x40C8
|
||||
#define VAR_0x40C9 0x40C9
|
||||
#define VAR_0x40CA 0x40CA
|
||||
#define VAR_0x40CB 0x40CB
|
||||
#define VAR_0x40CC 0x40CC
|
||||
#define VAR_0x40CD 0x40CD
|
||||
#define VAR_0x40CE 0x40CE
|
||||
#define VAR_FRONTIER_FACILITY 0x40CF
|
||||
#define VAR_0x40D0 0x40D0
|
||||
#define VAR_0x40D1 0x40D1
|
||||
#define VAR_0x40D2 0x40D2
|
||||
#define VAR_0x40D3 0x40D3
|
||||
#define VAR_0x40D4 0x40D4
|
||||
#define VAR_0x40D5 0x40D5
|
||||
#define VAR_0x40D6 0x40D6
|
||||
#define VAR_0x40D7 0x40D7
|
||||
#define VAR_0x40D8 0x40D8
|
||||
#define VAR_0x40D9 0x40D9
|
||||
#define VAR_0x40DA 0x40DA
|
||||
#define VAR_0x40DB 0x40DB
|
||||
#define VAR_0x40DC 0x40DC
|
||||
#define VAR_EVENT_PICHU_SLOT 0x40DD
|
||||
#define VAR_0x40DE 0x40DE
|
||||
#define VAR_0x40DF 0x40DF
|
||||
#define VAR_0x40E0 0x40E0
|
||||
#define VAR_0x40E1 0x40E1
|
||||
#define VAR_0x40E2 0x40E2
|
||||
#define VAR_0x40E3 0x40E3
|
||||
#define VAR_0x40E4 0x40E4
|
||||
#define VAR_0x40E5 0x40E5
|
||||
#define VAR_DAILY_SLOTS 0x40E6
|
||||
#define VAR_DAILY_WILDS 0x40E7
|
||||
#define VAR_DAILY_BLENDER 0x40E8
|
||||
#define VAR_DAILY_PLANTED_BERRIES 0x40E9
|
||||
#define VAR_DAILY_PICKED_BERRIES 0x40EA
|
||||
#define VAR_DAILY_ROULETTE 0x40EB
|
||||
#define VAR_0x40EC 0x40EC
|
||||
#define VAR_0x40ED 0x40ED
|
||||
#define VAR_0x40EE 0x40EE
|
||||
#define VAR_0x40EF 0x40EF
|
||||
#define VAR_0x40F0 0x40F0
|
||||
#define VAR_DAILY_BP 0x40F1
|
||||
#define VAR_0x40F2 0x40F2
|
||||
#define VAR_0x40F3 0x40F3
|
||||
#define VAR_0x40F4 0x40F4
|
||||
#define VAR_0x40F5 0x40F5
|
||||
#define VAR_0x40F6 0x40F6
|
||||
#define VAR_0x40F7 0x40F7
|
||||
#define VAR_0x40F8 0x40F8
|
||||
#define VAR_0x40F9 0x40F9
|
||||
#define VAR_0x40FA 0x40FA
|
||||
#define VAR_0x40FB 0x40FB
|
||||
#define VAR_0x40FC 0x40FC
|
||||
#define VAR_0x40FD 0x40FD
|
||||
#define VAR_0x40FE 0x40FE
|
||||
#define VAR_0x40FF 0x40FF
|
||||
|
||||
#define VAR_0x8000 0x8000
|
||||
#define VAR_0x8001 0x8001
|
||||
#define VAR_0x8002 0x8002
|
||||
#define VAR_0x8003 0x8003
|
||||
#define VAR_0x8004 0x8004
|
||||
#define VAR_0x8005 0x8005
|
||||
#define VAR_0x8006 0x8006
|
||||
#define VAR_0x8007 0x8007
|
||||
#define VAR_0x8008 0x8008
|
||||
#define VAR_0x8009 0x8009
|
||||
#define VAR_0x800A 0x800A
|
||||
#define VAR_0x800B 0x800B
|
||||
#define VAR_FACING 0x800C
|
||||
#define VAR_RESULT 0x800D
|
||||
#define VAR_ITEM_ID 0x800E
|
||||
#define VAR_LAST_TALKED 0x800F
|
||||
#define VAR_CONTEST_RANK 0x8010
|
||||
#define VAR_CONTEST_CATEGORY 0x8011
|
||||
#define VAR_MON_BOX_ID 0x8012
|
||||
#define VAR_MON_BOX_POS 0x8013
|
||||
#define VAR_0x8014 0x8014
|
||||
|
||||
#endif // GUARD_CONSTANTS_VARS_H
|
||||
39
include/constants/weather.h
Normal file
39
include/constants/weather.h
Normal file
@@ -0,0 +1,39 @@
|
||||
#ifndef GUARD_CONSTANTS_WEATHER_H
|
||||
#define GUARD_CONSTANTS_WEATHER_H
|
||||
|
||||
#define WEATHER_NONE 0
|
||||
#define WEATHER_CLOUDS 1
|
||||
#define WEATHER_SUNNY 2
|
||||
#define WEATHER_RAIN_LIGHT 3
|
||||
#define WEATHER_SNOW 4
|
||||
#define WEATHER_RAIN_MED 5
|
||||
#define WEATHER_FOG_1 6
|
||||
#define WEATHER_ASH 7
|
||||
#define WEATHER_SANDSTORM 8
|
||||
#define WEATHER_FOG_2 9
|
||||
#define WEATHER_FOG_3 10
|
||||
#define WEATHER_SHADE 11
|
||||
#define WEATHER_DROUGHT 12
|
||||
#define WEATHER_RAIN_HEAVY 13
|
||||
#define WEATHER_BUBBLES 14
|
||||
#define WEATHER_ROUTE119_CYCLE 20
|
||||
#define WEATHER_ROUTE123_CYCLE 21
|
||||
|
||||
// These are used in maps' coord_weather_event entries.
|
||||
// They are not a one-to-one mapping with the engine's
|
||||
// internal weather constants above.
|
||||
#define COORD_EVENT_WEATHER_CLOUDS 1
|
||||
#define COORD_EVENT_WEATHER_SUNNY 2
|
||||
#define COORD_EVENT_WEATHER_RAIN_LIGHT 3
|
||||
#define COORD_EVENT_WEATHER_SNOW 4
|
||||
#define COORD_EVENT_WEATHER_RAIN_MED 5
|
||||
#define COORD_EVENT_WEATHER_FOG_1 6
|
||||
#define COORD_EVENT_WEATHER_FOG_2 7
|
||||
#define COORD_EVENT_WEATHER_ASH 8
|
||||
#define COORD_EVENT_WEATHER_SANDSTORM 9
|
||||
#define COORD_EVENT_WEATHER_SHADE 10
|
||||
#define COORD_EVENT_WEATHER_DROUGHT 11
|
||||
#define COORD_EVENT_WEATHER_ROUTE119_CYCLE 20
|
||||
#define COORD_EVENT_WEATHER_ROUTE123_CYCLE 21
|
||||
|
||||
#endif // GUARD_CONSTANTS_WEATHER_H
|
||||
@@ -12,14 +12,20 @@ struct ContestStruct_02039E00
|
||||
|
||||
extern struct ContestStruct_02039E00 gUnknown_02039E00[4];
|
||||
extern u8 gUnknown_02039F24;
|
||||
extern u16 gScriptContestCategory;
|
||||
extern u8 gUnknown_02039F2E;
|
||||
extern u16 gSpecialVar_ContestCategory;
|
||||
extern u8 gSpecialVar_ContestRank;
|
||||
extern u8 gUnknown_02039F30;
|
||||
|
||||
struct ContestStruct_field_18
|
||||
{
|
||||
// unknown size
|
||||
u16 field_0;
|
||||
u16 field_2;
|
||||
u16 field_4;
|
||||
u16 field_6;
|
||||
u32 field_8;
|
||||
u32 field_C;
|
||||
u32 field_10;
|
||||
};
|
||||
|
||||
struct ContestResources
|
||||
|
||||
6
include/coord_event_weather.h
Normal file
6
include/coord_event_weather.h
Normal file
@@ -0,0 +1,6 @@
|
||||
#ifndef GUARD_COORD_EVENT_WEATHER_H
|
||||
#define GUARD_COORD_EVENT_WEATHER_H
|
||||
|
||||
void DoCoordEventWeather(u8);
|
||||
|
||||
#endif // GUARD_COORD_EVENT_WEATHER_H
|
||||
@@ -1,6 +1,6 @@
|
||||
#ifndef GUARD_DATA_BARD_MUSIC_POKEMON_H
|
||||
#define GUARD_DATA_BARD_MUSIC_POKEMON_H
|
||||
#include "species.h"
|
||||
#include "constants/species.h"
|
||||
|
||||
const u16 gUnknown_085F5490 = NUM_SPECIES;
|
||||
|
||||
|
||||
1199
include/data/pokedex_orders.h
Normal file
1199
include/data/pokedex_orders.h
Normal file
File diff suppressed because it is too large
Load Diff
13576
include/data/pokemon/base_stats.h
Normal file
13576
include/data/pokemon/base_stats.h
Normal file
File diff suppressed because it is too large
Load Diff
143
include/data/pokemon/cry_ids.h
Normal file
143
include/data/pokemon/cry_ids.h
Normal file
@@ -0,0 +1,143 @@
|
||||
#ifndef POKEEMERALD_CRY_IDS_H
|
||||
#define POKEEMERALD_CRY_IDS_H
|
||||
|
||||
const u16 gSpeciesIdToCryId[] =
|
||||
{
|
||||
273, // TREECKO
|
||||
274, // GROVYLE
|
||||
275, // SCEPTILE
|
||||
270, // TORCHIC
|
||||
271, // COMBUSKEN
|
||||
272, // BLAZIKEN
|
||||
276, // MUDKIP
|
||||
277, // MARSHTOMP
|
||||
278, // SWAMPERT
|
||||
359, // POOCHYENA
|
||||
360, // MIGHTYENA
|
||||
378, // ZIGZAGOON
|
||||
375, // LINOONE
|
||||
290, // WURMPLE
|
||||
291, // SILCOON
|
||||
292, // BEAUTIFLY
|
||||
293, // CASCOON
|
||||
294, // DUSTOX
|
||||
283, // LOTAD
|
||||
284, // LOMBRE
|
||||
285, // LUDICOLO
|
||||
286, // SEEDOT
|
||||
287, // NUZLEAF
|
||||
288, // SHIFTRY
|
||||
301, // NINCADA
|
||||
302, // NINJASK
|
||||
303, // SHEDINJA
|
||||
266, // TAILLOW
|
||||
267, // SWELLOW
|
||||
374, // SHROOMISH
|
||||
373, // BRELOOM
|
||||
269, // SPINDA
|
||||
280, // WINGULL
|
||||
279, // PELIPPER
|
||||
310, // SURSKIT
|
||||
311, // MASQUERAIN
|
||||
377, // WAILMER
|
||||
381, // WAILORD
|
||||
312, // SKITTY
|
||||
313, // DELCATTY
|
||||
251, // KECLEON
|
||||
329, // BALTOY
|
||||
330, // CLAYDOL
|
||||
306, // NOSEPASS
|
||||
253, // TORKOAL
|
||||
362, // SABLEYE
|
||||
318, // BARBOACH
|
||||
319, // WHISCASH
|
||||
368, // LUVDISC
|
||||
320, // CORPHISH
|
||||
321, // CRAWDAUNT
|
||||
333, // FEEBAS
|
||||
334, // MILOTIC
|
||||
289, // CARVANHA
|
||||
260, // SHARPEDO
|
||||
324, // TRAPINCH
|
||||
325, // VIBRAVA
|
||||
326, // FLYGON
|
||||
304, // MAKUHITA
|
||||
305, // HARIYAMA
|
||||
254, // ELECTRIKE
|
||||
255, // MANECTRIC
|
||||
316, // NUMEL
|
||||
317, // CAMERUPT
|
||||
338, // SPHEAL
|
||||
339, // SEALEO
|
||||
340, // WALREIN
|
||||
327, // CACNEA
|
||||
328, // CACTURNE
|
||||
383, // SNORUNT
|
||||
307, // GLALIE
|
||||
331, // LUNATONE
|
||||
332, // SOLROCK
|
||||
262, // AZURILL
|
||||
322, // SPOINK
|
||||
323, // GRUMPIG
|
||||
308, // PLUSLE
|
||||
309, // MINUN
|
||||
363, // MAWILE
|
||||
336, // MEDITITE
|
||||
337, // MEDICHAM
|
||||
263, // SWABLU
|
||||
264, // ALTARIA
|
||||
258, // WYNAUT
|
||||
256, // DUSKULL
|
||||
361, // DUSCLOPS
|
||||
252, // ROSELIA
|
||||
298, // SLAKOTH
|
||||
299, // VIGOROTH
|
||||
300, // SLAKING
|
||||
314, // GULPIN
|
||||
315, // SWALOT
|
||||
376, // TROPIUS
|
||||
382, // WHISMUR
|
||||
380, // LOUDRED
|
||||
379, // EXPLOUD
|
||||
341, // CLAMPERL
|
||||
342, // HUNTAIL
|
||||
343, // GOREBYSS
|
||||
335, // ABSOL
|
||||
282, // SHUPPET
|
||||
281, // BANETTE
|
||||
259, // SEVIPER
|
||||
261, // ZANGOOSE
|
||||
367, // RELICANTH
|
||||
364, // ARON
|
||||
365, // LAIRON
|
||||
366, // AGGRON
|
||||
356, // CASTFORM
|
||||
357, // VOLBEAT
|
||||
358, // ILLUMISE
|
||||
344, // LILEEP
|
||||
345, // CRADILY
|
||||
346, // ANORITH
|
||||
347, // ARMALDO
|
||||
295, // RALTS
|
||||
296, // KIRLIA
|
||||
297, // GARDEVOIR
|
||||
351, // BAGON
|
||||
352, // SHELGON
|
||||
372, // SALAMENCE
|
||||
348, // BELDUM
|
||||
349, // METANG
|
||||
350, // METAGROSS
|
||||
353, // REGIROCK
|
||||
354, // REGICE
|
||||
355, // REGISTEEL
|
||||
370, // KYOGRE
|
||||
369, // GROUDON
|
||||
371, // RAYQUAZA
|
||||
257, // LATIAS
|
||||
384, // LATIOS
|
||||
385, // JIRACHI
|
||||
386, // DEOXYS
|
||||
387 // CHIMECHO
|
||||
};
|
||||
|
||||
#endif //POKEEMERALD_CRY_IDS_H
|
||||
1315
include/data/pokemon/egg_moves.h
Normal file
1315
include/data/pokemon/egg_moves.h
Normal file
File diff suppressed because it is too large
Load Diff
192
include/data/pokemon/evolution.h
Normal file
192
include/data/pokemon/evolution.h
Normal file
@@ -0,0 +1,192 @@
|
||||
#ifndef POKEEMERALD_EVOLUTION_H
|
||||
#define POKEEMERALD_EVOLUTION_H
|
||||
|
||||
const struct Evolution gEvolutionTable[NUM_SPECIES][EVOS_PER_MON] =
|
||||
{
|
||||
[SPECIES_BULBASAUR] = {{EVO_LEVEL, 16, SPECIES_IVYSAUR}},
|
||||
[SPECIES_IVYSAUR] = {{EVO_LEVEL, 32, SPECIES_VENUSAUR}},
|
||||
[SPECIES_CHARMANDER] = {{EVO_LEVEL, 16, SPECIES_CHARMELEON}},
|
||||
[SPECIES_CHARMELEON] = {{EVO_LEVEL, 36, SPECIES_CHARIZARD}},
|
||||
[SPECIES_SQUIRTLE] = {{EVO_LEVEL, 16, SPECIES_WARTORTLE}},
|
||||
[SPECIES_WARTORTLE] = {{EVO_LEVEL, 36, SPECIES_BLASTOISE}},
|
||||
[SPECIES_CATERPIE] = {{EVO_LEVEL, 7, SPECIES_METAPOD}},
|
||||
[SPECIES_METAPOD] = {{EVO_LEVEL, 10, SPECIES_BUTTERFREE}},
|
||||
[SPECIES_WEEDLE] = {{EVO_LEVEL, 7, SPECIES_KAKUNA}},
|
||||
[SPECIES_KAKUNA] = {{EVO_LEVEL, 10, SPECIES_BEEDRILL}},
|
||||
[SPECIES_PIDGEY] = {{EVO_LEVEL, 18, SPECIES_PIDGEOTTO}},
|
||||
[SPECIES_PIDGEOTTO] = {{EVO_LEVEL, 36, SPECIES_PIDGEOT}},
|
||||
[SPECIES_RATTATA] = {{EVO_LEVEL, 20, SPECIES_RATICATE}},
|
||||
[SPECIES_SPEAROW] = {{EVO_LEVEL, 20, SPECIES_FEAROW}},
|
||||
[SPECIES_EKANS] = {{EVO_LEVEL, 22, SPECIES_ARBOK}},
|
||||
[SPECIES_PIKACHU] = {{EVO_ITEM, ITEM_THUNDER_STONE, SPECIES_RAICHU}},
|
||||
[SPECIES_SANDSHREW] = {{EVO_LEVEL, 22, SPECIES_SANDSLASH}},
|
||||
[SPECIES_NIDORAN_F] = {{EVO_LEVEL, 16, SPECIES_NIDORINA}},
|
||||
[SPECIES_NIDORINA] = {{EVO_ITEM, ITEM_MOON_STONE, SPECIES_NIDOQUEEN}},
|
||||
[SPECIES_NIDORAN_M] = {{EVO_LEVEL, 16, SPECIES_NIDORINO}},
|
||||
[SPECIES_NIDORINO] = {{EVO_ITEM, ITEM_MOON_STONE, SPECIES_NIDOKING}},
|
||||
[SPECIES_CLEFAIRY] = {{EVO_ITEM, ITEM_MOON_STONE, SPECIES_CLEFABLE}},
|
||||
[SPECIES_VULPIX] = {{EVO_ITEM, ITEM_FIRE_STONE, SPECIES_NINETALES}},
|
||||
[SPECIES_JIGGLYPUFF] = {{EVO_ITEM, ITEM_MOON_STONE, SPECIES_WIGGLYTUFF}},
|
||||
[SPECIES_ZUBAT] = {{EVO_LEVEL, 22, SPECIES_GOLBAT}},
|
||||
[SPECIES_GOLBAT] = {{EVO_FRIENDSHIP, 0, SPECIES_CROBAT}},
|
||||
[SPECIES_ODDISH] = {{EVO_LEVEL, 21, SPECIES_GLOOM}},
|
||||
[SPECIES_GLOOM] = {{EVO_ITEM, ITEM_LEAF_STONE, SPECIES_VILEPLUME},
|
||||
{EVO_ITEM, ITEM_SUN_STONE, SPECIES_BELLOSSOM}},
|
||||
[SPECIES_PARAS] = {{EVO_LEVEL, 24, SPECIES_PARASECT}},
|
||||
[SPECIES_VENONAT] = {{EVO_LEVEL, 31, SPECIES_VENOMOTH}},
|
||||
[SPECIES_DIGLETT] = {{EVO_LEVEL, 26, SPECIES_DUGTRIO}},
|
||||
[SPECIES_MEOWTH] = {{EVO_LEVEL, 28, SPECIES_PERSIAN}},
|
||||
[SPECIES_PSYDUCK] = {{EVO_LEVEL, 33, SPECIES_GOLDUCK}},
|
||||
[SPECIES_MANKEY] = {{EVO_LEVEL, 28, SPECIES_PRIMEAPE}},
|
||||
[SPECIES_GROWLITHE] = {{EVO_ITEM, ITEM_FIRE_STONE, SPECIES_ARCANINE}},
|
||||
[SPECIES_POLIWAG] = {{EVO_LEVEL, 25, SPECIES_POLIWHIRL}},
|
||||
[SPECIES_POLIWHIRL] = {{EVO_ITEM, ITEM_WATER_STONE, SPECIES_POLIWRATH},
|
||||
{EVO_TRADE_ITEM, ITEM_KINGS_ROCK, SPECIES_POLITOED}},
|
||||
[SPECIES_ABRA] = {{EVO_LEVEL, 16, SPECIES_KADABRA}},
|
||||
[SPECIES_KADABRA] = {{EVO_TRADE, 0, SPECIES_ALAKAZAM}},
|
||||
[SPECIES_MACHOP] = {{EVO_LEVEL, 28, SPECIES_MACHOKE}},
|
||||
[SPECIES_MACHOKE] = {{EVO_TRADE, 0, SPECIES_MACHAMP}},
|
||||
[SPECIES_BELLSPROUT] = {{EVO_LEVEL, 21, SPECIES_WEEPINBELL}},
|
||||
[SPECIES_WEEPINBELL] = {{EVO_ITEM, ITEM_LEAF_STONE, SPECIES_VICTREEBEL}},
|
||||
[SPECIES_TENTACOOL] = {{EVO_LEVEL, 30, SPECIES_TENTACRUEL}},
|
||||
[SPECIES_GEODUDE] = {{EVO_LEVEL, 25, SPECIES_GRAVELER}},
|
||||
[SPECIES_GRAVELER] = {{EVO_TRADE, 0, SPECIES_GOLEM}},
|
||||
[SPECIES_PONYTA] = {{EVO_LEVEL, 40, SPECIES_RAPIDASH}},
|
||||
[SPECIES_SLOWPOKE] = {{EVO_LEVEL, 37, SPECIES_SLOWBRO},
|
||||
{EVO_TRADE_ITEM, ITEM_KINGS_ROCK, SPECIES_SLOWKING}},
|
||||
[SPECIES_MAGNEMITE] = {{EVO_LEVEL, 30, SPECIES_MAGNETON}},
|
||||
[SPECIES_DODUO] = {{EVO_LEVEL, 31, SPECIES_DODRIO}},
|
||||
[SPECIES_SEEL] = {{EVO_LEVEL, 34, SPECIES_DEWGONG}},
|
||||
[SPECIES_GRIMER] = {{EVO_LEVEL, 38, SPECIES_MUK}},
|
||||
[SPECIES_SHELLDER] = {{EVO_ITEM, ITEM_WATER_STONE, SPECIES_CLOYSTER}},
|
||||
[SPECIES_GASTLY] = {{EVO_LEVEL, 25, SPECIES_HAUNTER}},
|
||||
[SPECIES_HAUNTER] = {{EVO_TRADE, 0, SPECIES_GENGAR}},
|
||||
[SPECIES_ONIX] = {{EVO_TRADE_ITEM, ITEM_METAL_COAT, SPECIES_STEELIX}},
|
||||
[SPECIES_DROWZEE] = {{EVO_LEVEL, 26, SPECIES_HYPNO}},
|
||||
[SPECIES_KRABBY] = {{EVO_LEVEL, 28, SPECIES_KINGLER}},
|
||||
[SPECIES_VOLTORB] = {{EVO_LEVEL, 30, SPECIES_ELECTRODE}},
|
||||
[SPECIES_EXEGGCUTE] = {{EVO_ITEM, ITEM_LEAF_STONE, SPECIES_EXEGGUTOR}},
|
||||
[SPECIES_CUBONE] = {{EVO_LEVEL, 28, SPECIES_MAROWAK}},
|
||||
[SPECIES_KOFFING] = {{EVO_LEVEL, 35, SPECIES_WEEZING}},
|
||||
[SPECIES_RHYHORN] = {{EVO_LEVEL, 42, SPECIES_RHYDON}},
|
||||
[SPECIES_CHANSEY] = {{EVO_FRIENDSHIP, 0, SPECIES_BLISSEY}},
|
||||
[SPECIES_HORSEA] = {{EVO_LEVEL, 32, SPECIES_SEADRA}},
|
||||
[SPECIES_SEADRA] = {{EVO_TRADE_ITEM, ITEM_DRAGON_SCALE, SPECIES_KINGDRA}},
|
||||
[SPECIES_GOLDEEN] = {{EVO_LEVEL, 33, SPECIES_SEAKING}},
|
||||
[SPECIES_STARYU] = {{EVO_ITEM, ITEM_WATER_STONE, SPECIES_STARMIE}},
|
||||
[SPECIES_SCYTHER] = {{EVO_TRADE_ITEM, ITEM_METAL_COAT, SPECIES_SCIZOR}},
|
||||
[SPECIES_MAGIKARP] = {{EVO_LEVEL, 20, SPECIES_GYARADOS}},
|
||||
[SPECIES_EEVEE] = {{EVO_ITEM, ITEM_THUNDER_STONE, SPECIES_JOLTEON},
|
||||
{EVO_ITEM, ITEM_WATER_STONE, SPECIES_VAPOREON},
|
||||
{EVO_ITEM, ITEM_FIRE_STONE, SPECIES_FLAREON},
|
||||
{EVO_FRIENDSHIP_DAY, 0, SPECIES_ESPEON},
|
||||
{EVO_FRIENDSHIP_NIGHT, 0, SPECIES_UMBREON}},
|
||||
[SPECIES_PORYGON] = {{EVO_TRADE_ITEM, ITEM_UP_GRADE, SPECIES_PORYGON2}},
|
||||
[SPECIES_OMANYTE] = {{EVO_LEVEL, 40, SPECIES_OMASTAR}},
|
||||
[SPECIES_KABUTO] = {{EVO_LEVEL, 40, SPECIES_KABUTOPS}},
|
||||
[SPECIES_DRATINI] = {{EVO_LEVEL, 30, SPECIES_DRAGONAIR}},
|
||||
[SPECIES_DRAGONAIR] = {{EVO_LEVEL, 55, SPECIES_DRAGONITE}},
|
||||
[SPECIES_CHIKORITA] = {{EVO_LEVEL, 16, SPECIES_BAYLEEF}},
|
||||
[SPECIES_BAYLEEF] = {{EVO_LEVEL, 32, SPECIES_MEGANIUM}},
|
||||
[SPECIES_CYNDAQUIL] = {{EVO_LEVEL, 14, SPECIES_QUILAVA}},
|
||||
[SPECIES_QUILAVA] = {{EVO_LEVEL, 36, SPECIES_TYPHLOSION}},
|
||||
[SPECIES_TOTODILE] = {{EVO_LEVEL, 18, SPECIES_CROCONAW}},
|
||||
[SPECIES_CROCONAW] = {{EVO_LEVEL, 30, SPECIES_FERALIGATR}},
|
||||
[SPECIES_SENTRET] = {{EVO_LEVEL, 15, SPECIES_FURRET}},
|
||||
[SPECIES_HOOTHOOT] = {{EVO_LEVEL, 20, SPECIES_NOCTOWL}},
|
||||
[SPECIES_LEDYBA] = {{EVO_LEVEL, 18, SPECIES_LEDIAN}},
|
||||
[SPECIES_SPINARAK] = {{EVO_LEVEL, 22, SPECIES_ARIADOS}},
|
||||
[SPECIES_CHINCHOU] = {{EVO_LEVEL, 27, SPECIES_LANTURN}},
|
||||
[SPECIES_PICHU] = {{EVO_FRIENDSHIP, 0, SPECIES_PIKACHU}},
|
||||
[SPECIES_CLEFFA] = {{EVO_FRIENDSHIP, 0, SPECIES_CLEFAIRY}},
|
||||
[SPECIES_IGGLYBUFF] = {{EVO_FRIENDSHIP, 0, SPECIES_JIGGLYPUFF}},
|
||||
[SPECIES_TOGEPI] = {{EVO_FRIENDSHIP, 0, SPECIES_TOGETIC}},
|
||||
[SPECIES_NATU] = {{EVO_LEVEL, 25, SPECIES_XATU}},
|
||||
[SPECIES_MAREEP] = {{EVO_LEVEL, 15, SPECIES_FLAAFFY}},
|
||||
[SPECIES_FLAAFFY] = {{EVO_LEVEL, 30, SPECIES_AMPHAROS}},
|
||||
[SPECIES_MARILL] = {{EVO_LEVEL, 18, SPECIES_AZUMARILL}},
|
||||
[SPECIES_HOPPIP] = {{EVO_LEVEL, 18, SPECIES_SKIPLOOM}},
|
||||
[SPECIES_SKIPLOOM] = {{EVO_LEVEL, 27, SPECIES_JUMPLUFF}},
|
||||
[SPECIES_SUNKERN] = {{EVO_ITEM, ITEM_SUN_STONE, SPECIES_SUNFLORA}},
|
||||
[SPECIES_WOOPER] = {{EVO_LEVEL, 20, SPECIES_QUAGSIRE}},
|
||||
[SPECIES_PINECO] = {{EVO_LEVEL, 31, SPECIES_FORRETRESS}},
|
||||
[SPECIES_SNUBBULL] = {{EVO_LEVEL, 23, SPECIES_GRANBULL}},
|
||||
[SPECIES_TEDDIURSA] = {{EVO_LEVEL, 30, SPECIES_URSARING}},
|
||||
[SPECIES_SLUGMA] = {{EVO_LEVEL, 38, SPECIES_MAGCARGO}},
|
||||
[SPECIES_SWINUB] = {{EVO_LEVEL, 33, SPECIES_PILOSWINE}},
|
||||
[SPECIES_REMORAID] = {{EVO_LEVEL, 25, SPECIES_OCTILLERY}},
|
||||
[SPECIES_HOUNDOUR] = {{EVO_LEVEL, 24, SPECIES_HOUNDOOM}},
|
||||
[SPECIES_PHANPY] = {{EVO_LEVEL, 25, SPECIES_DONPHAN}},
|
||||
[SPECIES_TYROGUE] = {{EVO_LEVEL_ATK_LT_DEF, 20, SPECIES_HITMONCHAN},
|
||||
{EVO_LEVEL_ATK_GT_DEF, 20, SPECIES_HITMONLEE},
|
||||
{EVO_LEVEL_ATK_EQ_DEF, 20, SPECIES_HITMONTOP}},
|
||||
[SPECIES_SMOOCHUM] = {{EVO_LEVEL, 30, SPECIES_JYNX}},
|
||||
[SPECIES_ELEKID] = {{EVO_LEVEL, 30, SPECIES_ELECTABUZZ}},
|
||||
[SPECIES_MAGBY] = {{EVO_LEVEL, 30, SPECIES_MAGMAR}},
|
||||
[SPECIES_LARVITAR] = {{EVO_LEVEL, 30, SPECIES_PUPITAR}},
|
||||
[SPECIES_PUPITAR] = {{EVO_LEVEL, 55, SPECIES_TYRANITAR}},
|
||||
[SPECIES_TREECKO] = {{EVO_LEVEL, 16, SPECIES_GROVYLE}},
|
||||
[SPECIES_GROVYLE] = {{EVO_LEVEL, 36, SPECIES_SCEPTILE}},
|
||||
[SPECIES_TORCHIC] = {{EVO_LEVEL, 16, SPECIES_COMBUSKEN}},
|
||||
[SPECIES_COMBUSKEN] = {{EVO_LEVEL, 36, SPECIES_BLAZIKEN}},
|
||||
[SPECIES_MUDKIP] = {{EVO_LEVEL, 16, SPECIES_MARSHTOMP}},
|
||||
[SPECIES_MARSHTOMP] = {{EVO_LEVEL, 36, SPECIES_SWAMPERT}},
|
||||
[SPECIES_POOCHYENA] = {{EVO_LEVEL, 18, SPECIES_MIGHTYENA}},
|
||||
[SPECIES_ZIGZAGOON] = {{EVO_LEVEL, 20, SPECIES_LINOONE}},
|
||||
[SPECIES_WURMPLE] = {{EVO_LEVEL_SILCOON, 7, SPECIES_SILCOON},
|
||||
{EVO_LEVEL_CASCOON, 7, SPECIES_CASCOON}},
|
||||
[SPECIES_SILCOON] = {{EVO_LEVEL, 10, SPECIES_BEAUTIFLY}},
|
||||
[SPECIES_CASCOON] = {{EVO_LEVEL, 10, SPECIES_DUSTOX}},
|
||||
[SPECIES_LOTAD] = {{EVO_LEVEL, 14, SPECIES_LOMBRE}},
|
||||
[SPECIES_LOMBRE] = {{EVO_ITEM, ITEM_WATER_STONE, SPECIES_LUDICOLO}},
|
||||
[SPECIES_SEEDOT] = {{EVO_LEVEL, 14, SPECIES_NUZLEAF}},
|
||||
[SPECIES_NUZLEAF] = {{EVO_ITEM, ITEM_LEAF_STONE, SPECIES_SHIFTRY}},
|
||||
[SPECIES_NINCADA] = {{EVO_LEVEL_NINJASK, 20, SPECIES_NINJASK},
|
||||
{EVO_LEVEL_SHEDINJA, 20, SPECIES_SHEDINJA}},
|
||||
[SPECIES_TAILLOW] = {{EVO_LEVEL, 22, SPECIES_SWELLOW}},
|
||||
[SPECIES_SHROOMISH] = {{EVO_LEVEL, 23, SPECIES_BRELOOM}},
|
||||
[SPECIES_WINGULL] = {{EVO_LEVEL, 25, SPECIES_PELIPPER}},
|
||||
[SPECIES_SURSKIT] = {{EVO_LEVEL, 22, SPECIES_MASQUERAIN}},
|
||||
[SPECIES_WAILMER] = {{EVO_LEVEL, 40, SPECIES_WAILORD}},
|
||||
[SPECIES_SKITTY] = {{EVO_ITEM, ITEM_MOON_STONE, SPECIES_DELCATTY}},
|
||||
[SPECIES_BALTOY] = {{EVO_LEVEL, 36, SPECIES_CLAYDOL}},
|
||||
[SPECIES_BARBOACH] = {{EVO_LEVEL, 30, SPECIES_WHISCASH}},
|
||||
[SPECIES_CORPHISH] = {{EVO_LEVEL, 30, SPECIES_CRAWDAUNT}},
|
||||
[SPECIES_FEEBAS] = {{EVO_BEAUTY, 170, SPECIES_MILOTIC}},
|
||||
[SPECIES_CARVANHA] = {{EVO_LEVEL, 30, SPECIES_SHARPEDO}},
|
||||
[SPECIES_TRAPINCH] = {{EVO_LEVEL, 35, SPECIES_VIBRAVA}},
|
||||
[SPECIES_VIBRAVA] = {{EVO_LEVEL, 45, SPECIES_FLYGON}},
|
||||
[SPECIES_MAKUHITA] = {{EVO_LEVEL, 24, SPECIES_HARIYAMA}},
|
||||
[SPECIES_ELECTRIKE] = {{EVO_LEVEL, 26, SPECIES_MANECTRIC}},
|
||||
[SPECIES_NUMEL] = {{EVO_LEVEL, 33, SPECIES_CAMERUPT}},
|
||||
[SPECIES_SPHEAL] = {{EVO_LEVEL, 32, SPECIES_SEALEO}},
|
||||
[SPECIES_SEALEO] = {{EVO_LEVEL, 44, SPECIES_WALREIN}},
|
||||
[SPECIES_CACNEA] = {{EVO_LEVEL, 32, SPECIES_CACTURNE}},
|
||||
[SPECIES_SNORUNT] = {{EVO_LEVEL, 42, SPECIES_GLALIE}},
|
||||
[SPECIES_AZURILL] = {{EVO_FRIENDSHIP, 0, SPECIES_MARILL}},
|
||||
[SPECIES_SPOINK] = {{EVO_LEVEL, 32, SPECIES_GRUMPIG}},
|
||||
[SPECIES_MEDITITE] = {{EVO_LEVEL, 37, SPECIES_MEDICHAM}},
|
||||
[SPECIES_SWABLU] = {{EVO_LEVEL, 35, SPECIES_ALTARIA}},
|
||||
[SPECIES_WYNAUT] = {{EVO_LEVEL, 15, SPECIES_WOBBUFFET}},
|
||||
[SPECIES_DUSKULL] = {{EVO_LEVEL, 37, SPECIES_DUSCLOPS}},
|
||||
[SPECIES_SLAKOTH] = {{EVO_LEVEL, 18, SPECIES_VIGOROTH}},
|
||||
[SPECIES_VIGOROTH] = {{EVO_LEVEL, 36, SPECIES_SLAKING}},
|
||||
[SPECIES_GULPIN] = {{EVO_LEVEL, 26, SPECIES_SWALOT}},
|
||||
[SPECIES_WHISMUR] = {{EVO_LEVEL, 20, SPECIES_LOUDRED}},
|
||||
[SPECIES_LOUDRED] = {{EVO_LEVEL, 40, SPECIES_EXPLOUD}},
|
||||
[SPECIES_CLAMPERL] = {{EVO_TRADE_ITEM, ITEM_DEEP_SEA_TOOTH, SPECIES_HUNTAIL},
|
||||
{EVO_TRADE_ITEM, ITEM_DEEP_SEA_SCALE, SPECIES_GOREBYSS}},
|
||||
[SPECIES_SHUPPET] = {{EVO_LEVEL, 37, SPECIES_BANETTE}},
|
||||
[SPECIES_ARON] = {{EVO_LEVEL, 32, SPECIES_LAIRON}},
|
||||
[SPECIES_LAIRON] = {{EVO_LEVEL, 42, SPECIES_AGGRON}},
|
||||
[SPECIES_LILEEP] = {{EVO_LEVEL, 40, SPECIES_CRADILY}},
|
||||
[SPECIES_ANORITH] = {{EVO_LEVEL, 40, SPECIES_ARMALDO}},
|
||||
[SPECIES_RALTS] = {{EVO_LEVEL, 20, SPECIES_KIRLIA}},
|
||||
[SPECIES_KIRLIA] = {{EVO_LEVEL, 30, SPECIES_GARDEVOIR}},
|
||||
[SPECIES_BAGON] = {{EVO_LEVEL, 30, SPECIES_SHELGON}},
|
||||
[SPECIES_SHELGON] = {{EVO_LEVEL, 50, SPECIES_SALAMENCE}},
|
||||
[SPECIES_BELDUM] = {{EVO_LEVEL, 20, SPECIES_METANG}},
|
||||
[SPECIES_METANG] = {{EVO_LEVEL, 45, SPECIES_METAGROSS}},
|
||||
};
|
||||
|
||||
#endif //POKEEMERALD_EVOLUTION_H
|
||||
849
include/data/pokemon/experience_tables.h
Normal file
849
include/data/pokemon/experience_tables.h
Normal file
@@ -0,0 +1,849 @@
|
||||
#ifndef POKEEMERALD_EXPERIENCE_TABLES_H
|
||||
#define POKEEMERALD_EXPERIENCE_TABLES_H
|
||||
|
||||
#define SQUARE(n)(n * n)
|
||||
#define CUBE(n)(n * n * n)
|
||||
|
||||
#define EXP_SLOW(n)((5 * CUBE(n)) / 4) // (5 * (n)^3) / 4
|
||||
#define EXP_FAST(n)((4 * CUBE(n)) / 5) // (4 * (n)^3) / 5
|
||||
#define EXP_MEDIUM_FAST(n)(CUBE(n)) // (n)^3
|
||||
#define EXP_MEDIUM_SLOW(n)((6 * CUBE(n)) / 5 - (15 * SQUARE(n)) + (100 * n) - 140) // (6 * (n)^3) / 5 - (15 * (n)^2) + (100 * n) - 140
|
||||
#define EXP_ERRATIC(n) \
|
||||
(n <= 50) ? ((100 - n) * CUBE(n) / 50) \
|
||||
:(n <= 68) ? ((150 - n) * CUBE(n) / 100) \
|
||||
:(n <= 98) ? (((1911 - 10 * n) / 3) * CUBE(n) / 500) \
|
||||
: ((160 - n) * CUBE(n) / 100)
|
||||
#define EXP_FLUCTUATING(n) \
|
||||
(n <= 15) ? (((n + 1) / 3 + 24) * CUBE(n) / 50) \
|
||||
:(n <= 36) ? ((n + 14) * CUBE(n) / 50) \
|
||||
: (((n / 2) + 32) * CUBE(n) / 50)
|
||||
|
||||
const u32 gExperienceTables[][MAX_MON_LEVEL + 1] =
|
||||
{
|
||||
{ // Medium Fast
|
||||
0, // 0
|
||||
1, // 1
|
||||
EXP_MEDIUM_FAST(2),
|
||||
EXP_MEDIUM_FAST(3),
|
||||
EXP_MEDIUM_FAST(4),
|
||||
EXP_MEDIUM_FAST(5),
|
||||
EXP_MEDIUM_FAST(6),
|
||||
EXP_MEDIUM_FAST(7),
|
||||
EXP_MEDIUM_FAST(8),
|
||||
EXP_MEDIUM_FAST(9),
|
||||
EXP_MEDIUM_FAST(10),
|
||||
EXP_MEDIUM_FAST(11),
|
||||
EXP_MEDIUM_FAST(12),
|
||||
EXP_MEDIUM_FAST(13),
|
||||
EXP_MEDIUM_FAST(14),
|
||||
EXP_MEDIUM_FAST(15),
|
||||
EXP_MEDIUM_FAST(16),
|
||||
EXP_MEDIUM_FAST(17),
|
||||
EXP_MEDIUM_FAST(18),
|
||||
EXP_MEDIUM_FAST(19),
|
||||
EXP_MEDIUM_FAST(20),
|
||||
EXP_MEDIUM_FAST(21),
|
||||
EXP_MEDIUM_FAST(22),
|
||||
EXP_MEDIUM_FAST(23),
|
||||
EXP_MEDIUM_FAST(24),
|
||||
EXP_MEDIUM_FAST(25),
|
||||
EXP_MEDIUM_FAST(26),
|
||||
EXP_MEDIUM_FAST(27),
|
||||
EXP_MEDIUM_FAST(28),
|
||||
EXP_MEDIUM_FAST(29),
|
||||
EXP_MEDIUM_FAST(30),
|
||||
EXP_MEDIUM_FAST(31),
|
||||
EXP_MEDIUM_FAST(32),
|
||||
EXP_MEDIUM_FAST(33),
|
||||
EXP_MEDIUM_FAST(34),
|
||||
EXP_MEDIUM_FAST(35),
|
||||
EXP_MEDIUM_FAST(36),
|
||||
EXP_MEDIUM_FAST(37),
|
||||
EXP_MEDIUM_FAST(38),
|
||||
EXP_MEDIUM_FAST(39),
|
||||
EXP_MEDIUM_FAST(40),
|
||||
EXP_MEDIUM_FAST(41),
|
||||
EXP_MEDIUM_FAST(42),
|
||||
EXP_MEDIUM_FAST(43),
|
||||
EXP_MEDIUM_FAST(44),
|
||||
EXP_MEDIUM_FAST(45),
|
||||
EXP_MEDIUM_FAST(46),
|
||||
EXP_MEDIUM_FAST(47),
|
||||
EXP_MEDIUM_FAST(48),
|
||||
EXP_MEDIUM_FAST(49),
|
||||
EXP_MEDIUM_FAST(50),
|
||||
EXP_MEDIUM_FAST(51),
|
||||
EXP_MEDIUM_FAST(52),
|
||||
EXP_MEDIUM_FAST(53),
|
||||
EXP_MEDIUM_FAST(54),
|
||||
EXP_MEDIUM_FAST(55),
|
||||
EXP_MEDIUM_FAST(56),
|
||||
EXP_MEDIUM_FAST(57),
|
||||
EXP_MEDIUM_FAST(58),
|
||||
EXP_MEDIUM_FAST(59),
|
||||
EXP_MEDIUM_FAST(60),
|
||||
EXP_MEDIUM_FAST(61),
|
||||
EXP_MEDIUM_FAST(62),
|
||||
EXP_MEDIUM_FAST(63),
|
||||
EXP_MEDIUM_FAST(64),
|
||||
EXP_MEDIUM_FAST(65),
|
||||
EXP_MEDIUM_FAST(66),
|
||||
EXP_MEDIUM_FAST(67),
|
||||
EXP_MEDIUM_FAST(68),
|
||||
EXP_MEDIUM_FAST(69),
|
||||
EXP_MEDIUM_FAST(70),
|
||||
EXP_MEDIUM_FAST(71),
|
||||
EXP_MEDIUM_FAST(72),
|
||||
EXP_MEDIUM_FAST(73),
|
||||
EXP_MEDIUM_FAST(74),
|
||||
EXP_MEDIUM_FAST(75),
|
||||
EXP_MEDIUM_FAST(76),
|
||||
EXP_MEDIUM_FAST(77),
|
||||
EXP_MEDIUM_FAST(78),
|
||||
EXP_MEDIUM_FAST(79),
|
||||
EXP_MEDIUM_FAST(80),
|
||||
EXP_MEDIUM_FAST(81),
|
||||
EXP_MEDIUM_FAST(82),
|
||||
EXP_MEDIUM_FAST(83),
|
||||
EXP_MEDIUM_FAST(84),
|
||||
EXP_MEDIUM_FAST(85),
|
||||
EXP_MEDIUM_FAST(86),
|
||||
EXP_MEDIUM_FAST(87),
|
||||
EXP_MEDIUM_FAST(88),
|
||||
EXP_MEDIUM_FAST(89),
|
||||
EXP_MEDIUM_FAST(90),
|
||||
EXP_MEDIUM_FAST(91),
|
||||
EXP_MEDIUM_FAST(92),
|
||||
EXP_MEDIUM_FAST(93),
|
||||
EXP_MEDIUM_FAST(94),
|
||||
EXP_MEDIUM_FAST(95),
|
||||
EXP_MEDIUM_FAST(96),
|
||||
EXP_MEDIUM_FAST(97),
|
||||
EXP_MEDIUM_FAST(98),
|
||||
EXP_MEDIUM_FAST(99),
|
||||
EXP_MEDIUM_FAST(100),
|
||||
},
|
||||
{ // Erratic
|
||||
0, // 0
|
||||
1, // 1
|
||||
EXP_ERRATIC(2),
|
||||
EXP_ERRATIC(3),
|
||||
EXP_ERRATIC(4),
|
||||
EXP_ERRATIC(5),
|
||||
EXP_ERRATIC(6),
|
||||
EXP_ERRATIC(7),
|
||||
EXP_ERRATIC(8),
|
||||
EXP_ERRATIC(9),
|
||||
EXP_ERRATIC(10),
|
||||
EXP_ERRATIC(11),
|
||||
EXP_ERRATIC(12),
|
||||
EXP_ERRATIC(13),
|
||||
EXP_ERRATIC(14),
|
||||
EXP_ERRATIC(15),
|
||||
EXP_ERRATIC(16),
|
||||
EXP_ERRATIC(17),
|
||||
EXP_ERRATIC(18),
|
||||
EXP_ERRATIC(19),
|
||||
EXP_ERRATIC(20),
|
||||
EXP_ERRATIC(21),
|
||||
EXP_ERRATIC(22),
|
||||
EXP_ERRATIC(23),
|
||||
EXP_ERRATIC(24),
|
||||
EXP_ERRATIC(25),
|
||||
EXP_ERRATIC(26),
|
||||
EXP_ERRATIC(27),
|
||||
EXP_ERRATIC(28),
|
||||
EXP_ERRATIC(29),
|
||||
EXP_ERRATIC(30),
|
||||
EXP_ERRATIC(31),
|
||||
EXP_ERRATIC(32),
|
||||
EXP_ERRATIC(33),
|
||||
EXP_ERRATIC(34),
|
||||
EXP_ERRATIC(35),
|
||||
EXP_ERRATIC(36),
|
||||
EXP_ERRATIC(37),
|
||||
EXP_ERRATIC(38),
|
||||
EXP_ERRATIC(39),
|
||||
EXP_ERRATIC(40),
|
||||
EXP_ERRATIC(41),
|
||||
EXP_ERRATIC(42),
|
||||
EXP_ERRATIC(43),
|
||||
EXP_ERRATIC(44),
|
||||
EXP_ERRATIC(45),
|
||||
EXP_ERRATIC(46),
|
||||
EXP_ERRATIC(47),
|
||||
EXP_ERRATIC(48),
|
||||
EXP_ERRATIC(49),
|
||||
EXP_ERRATIC(50),
|
||||
EXP_ERRATIC(51),
|
||||
EXP_ERRATIC(52),
|
||||
EXP_ERRATIC(53),
|
||||
EXP_ERRATIC(54),
|
||||
EXP_ERRATIC(55),
|
||||
EXP_ERRATIC(56),
|
||||
EXP_ERRATIC(57),
|
||||
EXP_ERRATIC(58),
|
||||
EXP_ERRATIC(59),
|
||||
EXP_ERRATIC(60),
|
||||
EXP_ERRATIC(61),
|
||||
EXP_ERRATIC(62),
|
||||
EXP_ERRATIC(63),
|
||||
EXP_ERRATIC(64),
|
||||
EXP_ERRATIC(65),
|
||||
EXP_ERRATIC(66),
|
||||
EXP_ERRATIC(67),
|
||||
EXP_ERRATIC(68),
|
||||
EXP_ERRATIC(69),
|
||||
EXP_ERRATIC(70),
|
||||
EXP_ERRATIC(71),
|
||||
EXP_ERRATIC(72),
|
||||
EXP_ERRATIC(73),
|
||||
EXP_ERRATIC(74),
|
||||
EXP_ERRATIC(75),
|
||||
EXP_ERRATIC(76),
|
||||
EXP_ERRATIC(77),
|
||||
EXP_ERRATIC(78),
|
||||
EXP_ERRATIC(79),
|
||||
EXP_ERRATIC(80),
|
||||
EXP_ERRATIC(81),
|
||||
EXP_ERRATIC(82),
|
||||
EXP_ERRATIC(83),
|
||||
EXP_ERRATIC(84),
|
||||
EXP_ERRATIC(85),
|
||||
EXP_ERRATIC(86),
|
||||
EXP_ERRATIC(87),
|
||||
EXP_ERRATIC(88),
|
||||
EXP_ERRATIC(89),
|
||||
EXP_ERRATIC(90),
|
||||
EXP_ERRATIC(91),
|
||||
EXP_ERRATIC(92),
|
||||
EXP_ERRATIC(93),
|
||||
EXP_ERRATIC(94),
|
||||
EXP_ERRATIC(95),
|
||||
EXP_ERRATIC(96),
|
||||
EXP_ERRATIC(97),
|
||||
EXP_ERRATIC(98),
|
||||
EXP_ERRATIC(99),
|
||||
EXP_ERRATIC(100),
|
||||
},
|
||||
{ // Fluctuating
|
||||
0, // 0
|
||||
1, // 1
|
||||
EXP_FLUCTUATING(2),
|
||||
EXP_FLUCTUATING(3),
|
||||
EXP_FLUCTUATING(4),
|
||||
EXP_FLUCTUATING(5),
|
||||
EXP_FLUCTUATING(6),
|
||||
EXP_FLUCTUATING(7),
|
||||
EXP_FLUCTUATING(8),
|
||||
EXP_FLUCTUATING(9),
|
||||
EXP_FLUCTUATING(10),
|
||||
EXP_FLUCTUATING(11),
|
||||
EXP_FLUCTUATING(12),
|
||||
EXP_FLUCTUATING(13),
|
||||
EXP_FLUCTUATING(14),
|
||||
EXP_FLUCTUATING(15),
|
||||
EXP_FLUCTUATING(16),
|
||||
EXP_FLUCTUATING(17),
|
||||
EXP_FLUCTUATING(18),
|
||||
EXP_FLUCTUATING(19),
|
||||
EXP_FLUCTUATING(20),
|
||||
EXP_FLUCTUATING(21),
|
||||
EXP_FLUCTUATING(22),
|
||||
EXP_FLUCTUATING(23),
|
||||
EXP_FLUCTUATING(24),
|
||||
EXP_FLUCTUATING(25),
|
||||
EXP_FLUCTUATING(26),
|
||||
EXP_FLUCTUATING(27),
|
||||
EXP_FLUCTUATING(28),
|
||||
EXP_FLUCTUATING(29),
|
||||
EXP_FLUCTUATING(30),
|
||||
EXP_FLUCTUATING(31),
|
||||
EXP_FLUCTUATING(32),
|
||||
EXP_FLUCTUATING(33),
|
||||
EXP_FLUCTUATING(34),
|
||||
EXP_FLUCTUATING(35),
|
||||
EXP_FLUCTUATING(36),
|
||||
EXP_FLUCTUATING(37),
|
||||
EXP_FLUCTUATING(38),
|
||||
EXP_FLUCTUATING(39),
|
||||
EXP_FLUCTUATING(40),
|
||||
EXP_FLUCTUATING(41),
|
||||
EXP_FLUCTUATING(42),
|
||||
EXP_FLUCTUATING(43),
|
||||
EXP_FLUCTUATING(44),
|
||||
EXP_FLUCTUATING(45),
|
||||
EXP_FLUCTUATING(46),
|
||||
EXP_FLUCTUATING(47),
|
||||
EXP_FLUCTUATING(48),
|
||||
EXP_FLUCTUATING(49),
|
||||
EXP_FLUCTUATING(50),
|
||||
EXP_FLUCTUATING(51),
|
||||
EXP_FLUCTUATING(52),
|
||||
EXP_FLUCTUATING(53),
|
||||
EXP_FLUCTUATING(54),
|
||||
EXP_FLUCTUATING(55),
|
||||
EXP_FLUCTUATING(56),
|
||||
EXP_FLUCTUATING(57),
|
||||
EXP_FLUCTUATING(58),
|
||||
EXP_FLUCTUATING(59),
|
||||
EXP_FLUCTUATING(60),
|
||||
EXP_FLUCTUATING(61),
|
||||
EXP_FLUCTUATING(62),
|
||||
EXP_FLUCTUATING(63),
|
||||
EXP_FLUCTUATING(64),
|
||||
EXP_FLUCTUATING(65),
|
||||
EXP_FLUCTUATING(66),
|
||||
EXP_FLUCTUATING(67),
|
||||
EXP_FLUCTUATING(68),
|
||||
EXP_FLUCTUATING(69),
|
||||
EXP_FLUCTUATING(70),
|
||||
EXP_FLUCTUATING(71),
|
||||
EXP_FLUCTUATING(72),
|
||||
EXP_FLUCTUATING(73),
|
||||
EXP_FLUCTUATING(74),
|
||||
EXP_FLUCTUATING(75),
|
||||
EXP_FLUCTUATING(76),
|
||||
EXP_FLUCTUATING(77),
|
||||
EXP_FLUCTUATING(78),
|
||||
EXP_FLUCTUATING(79),
|
||||
EXP_FLUCTUATING(80),
|
||||
EXP_FLUCTUATING(81),
|
||||
EXP_FLUCTUATING(82),
|
||||
EXP_FLUCTUATING(83),
|
||||
EXP_FLUCTUATING(84),
|
||||
EXP_FLUCTUATING(85),
|
||||
EXP_FLUCTUATING(86),
|
||||
EXP_FLUCTUATING(87),
|
||||
EXP_FLUCTUATING(88),
|
||||
EXP_FLUCTUATING(89),
|
||||
EXP_FLUCTUATING(90),
|
||||
EXP_FLUCTUATING(91),
|
||||
EXP_FLUCTUATING(92),
|
||||
EXP_FLUCTUATING(93),
|
||||
EXP_FLUCTUATING(94),
|
||||
EXP_FLUCTUATING(95),
|
||||
EXP_FLUCTUATING(96),
|
||||
EXP_FLUCTUATING(97),
|
||||
EXP_FLUCTUATING(98),
|
||||
EXP_FLUCTUATING(99),
|
||||
EXP_FLUCTUATING(100),
|
||||
},
|
||||
{ // Medium Slow
|
||||
0, // 0
|
||||
1, // 1
|
||||
EXP_MEDIUM_SLOW(2),
|
||||
EXP_MEDIUM_SLOW(3),
|
||||
EXP_MEDIUM_SLOW(4),
|
||||
EXP_MEDIUM_SLOW(5),
|
||||
EXP_MEDIUM_SLOW(6),
|
||||
EXP_MEDIUM_SLOW(7),
|
||||
EXP_MEDIUM_SLOW(8),
|
||||
EXP_MEDIUM_SLOW(9),
|
||||
EXP_MEDIUM_SLOW(10),
|
||||
EXP_MEDIUM_SLOW(11),
|
||||
EXP_MEDIUM_SLOW(12),
|
||||
EXP_MEDIUM_SLOW(13),
|
||||
EXP_MEDIUM_SLOW(14),
|
||||
EXP_MEDIUM_SLOW(15),
|
||||
EXP_MEDIUM_SLOW(16),
|
||||
EXP_MEDIUM_SLOW(17),
|
||||
EXP_MEDIUM_SLOW(18),
|
||||
EXP_MEDIUM_SLOW(19),
|
||||
EXP_MEDIUM_SLOW(20),
|
||||
EXP_MEDIUM_SLOW(21),
|
||||
EXP_MEDIUM_SLOW(22),
|
||||
EXP_MEDIUM_SLOW(23),
|
||||
EXP_MEDIUM_SLOW(24),
|
||||
EXP_MEDIUM_SLOW(25),
|
||||
EXP_MEDIUM_SLOW(26),
|
||||
EXP_MEDIUM_SLOW(27),
|
||||
EXP_MEDIUM_SLOW(28),
|
||||
EXP_MEDIUM_SLOW(29),
|
||||
EXP_MEDIUM_SLOW(30),
|
||||
EXP_MEDIUM_SLOW(31),
|
||||
EXP_MEDIUM_SLOW(32),
|
||||
EXP_MEDIUM_SLOW(33),
|
||||
EXP_MEDIUM_SLOW(34),
|
||||
EXP_MEDIUM_SLOW(35),
|
||||
EXP_MEDIUM_SLOW(36),
|
||||
EXP_MEDIUM_SLOW(37),
|
||||
EXP_MEDIUM_SLOW(38),
|
||||
EXP_MEDIUM_SLOW(39),
|
||||
EXP_MEDIUM_SLOW(40),
|
||||
EXP_MEDIUM_SLOW(41),
|
||||
EXP_MEDIUM_SLOW(42),
|
||||
EXP_MEDIUM_SLOW(43),
|
||||
EXP_MEDIUM_SLOW(44),
|
||||
EXP_MEDIUM_SLOW(45),
|
||||
EXP_MEDIUM_SLOW(46),
|
||||
EXP_MEDIUM_SLOW(47),
|
||||
EXP_MEDIUM_SLOW(48),
|
||||
EXP_MEDIUM_SLOW(49),
|
||||
EXP_MEDIUM_SLOW(50),
|
||||
EXP_MEDIUM_SLOW(51),
|
||||
EXP_MEDIUM_SLOW(52),
|
||||
EXP_MEDIUM_SLOW(53),
|
||||
EXP_MEDIUM_SLOW(54),
|
||||
EXP_MEDIUM_SLOW(55),
|
||||
EXP_MEDIUM_SLOW(56),
|
||||
EXP_MEDIUM_SLOW(57),
|
||||
EXP_MEDIUM_SLOW(58),
|
||||
EXP_MEDIUM_SLOW(59),
|
||||
EXP_MEDIUM_SLOW(60),
|
||||
EXP_MEDIUM_SLOW(61),
|
||||
EXP_MEDIUM_SLOW(62),
|
||||
EXP_MEDIUM_SLOW(63),
|
||||
EXP_MEDIUM_SLOW(64),
|
||||
EXP_MEDIUM_SLOW(65),
|
||||
EXP_MEDIUM_SLOW(66),
|
||||
EXP_MEDIUM_SLOW(67),
|
||||
EXP_MEDIUM_SLOW(68),
|
||||
EXP_MEDIUM_SLOW(69),
|
||||
EXP_MEDIUM_SLOW(70),
|
||||
EXP_MEDIUM_SLOW(71),
|
||||
EXP_MEDIUM_SLOW(72),
|
||||
EXP_MEDIUM_SLOW(73),
|
||||
EXP_MEDIUM_SLOW(74),
|
||||
EXP_MEDIUM_SLOW(75),
|
||||
EXP_MEDIUM_SLOW(76),
|
||||
EXP_MEDIUM_SLOW(77),
|
||||
EXP_MEDIUM_SLOW(78),
|
||||
EXP_MEDIUM_SLOW(79),
|
||||
EXP_MEDIUM_SLOW(80),
|
||||
EXP_MEDIUM_SLOW(81),
|
||||
EXP_MEDIUM_SLOW(82),
|
||||
EXP_MEDIUM_SLOW(83),
|
||||
EXP_MEDIUM_SLOW(84),
|
||||
EXP_MEDIUM_SLOW(85),
|
||||
EXP_MEDIUM_SLOW(86),
|
||||
EXP_MEDIUM_SLOW(87),
|
||||
EXP_MEDIUM_SLOW(88),
|
||||
EXP_MEDIUM_SLOW(89),
|
||||
EXP_MEDIUM_SLOW(90),
|
||||
EXP_MEDIUM_SLOW(91),
|
||||
EXP_MEDIUM_SLOW(92),
|
||||
EXP_MEDIUM_SLOW(93),
|
||||
EXP_MEDIUM_SLOW(94),
|
||||
EXP_MEDIUM_SLOW(95),
|
||||
EXP_MEDIUM_SLOW(96),
|
||||
EXP_MEDIUM_SLOW(97),
|
||||
EXP_MEDIUM_SLOW(98),
|
||||
EXP_MEDIUM_SLOW(99),
|
||||
EXP_MEDIUM_SLOW(100),
|
||||
},
|
||||
{ // Fast
|
||||
0, // 0
|
||||
1, // 1
|
||||
EXP_FAST(2),
|
||||
EXP_FAST(3),
|
||||
EXP_FAST(4),
|
||||
EXP_FAST(5),
|
||||
EXP_FAST(6),
|
||||
EXP_FAST(7),
|
||||
EXP_FAST(8),
|
||||
EXP_FAST(9),
|
||||
EXP_FAST(10),
|
||||
EXP_FAST(11),
|
||||
EXP_FAST(12),
|
||||
EXP_FAST(13),
|
||||
EXP_FAST(14),
|
||||
EXP_FAST(15),
|
||||
EXP_FAST(16),
|
||||
EXP_FAST(17),
|
||||
EXP_FAST(18),
|
||||
EXP_FAST(19),
|
||||
EXP_FAST(20),
|
||||
EXP_FAST(21),
|
||||
EXP_FAST(22),
|
||||
EXP_FAST(23),
|
||||
EXP_FAST(24),
|
||||
EXP_FAST(25),
|
||||
EXP_FAST(26),
|
||||
EXP_FAST(27),
|
||||
EXP_FAST(28),
|
||||
EXP_FAST(29),
|
||||
EXP_FAST(30),
|
||||
EXP_FAST(31),
|
||||
EXP_FAST(32),
|
||||
EXP_FAST(33),
|
||||
EXP_FAST(34),
|
||||
EXP_FAST(35),
|
||||
EXP_FAST(36),
|
||||
EXP_FAST(37),
|
||||
EXP_FAST(38),
|
||||
EXP_FAST(39),
|
||||
EXP_FAST(40),
|
||||
EXP_FAST(41),
|
||||
EXP_FAST(42),
|
||||
EXP_FAST(43),
|
||||
EXP_FAST(44),
|
||||
EXP_FAST(45),
|
||||
EXP_FAST(46),
|
||||
EXP_FAST(47),
|
||||
EXP_FAST(48),
|
||||
EXP_FAST(49),
|
||||
EXP_FAST(50),
|
||||
EXP_FAST(51),
|
||||
EXP_FAST(52),
|
||||
EXP_FAST(53),
|
||||
EXP_FAST(54),
|
||||
EXP_FAST(55),
|
||||
EXP_FAST(56),
|
||||
EXP_FAST(57),
|
||||
EXP_FAST(58),
|
||||
EXP_FAST(59),
|
||||
EXP_FAST(60),
|
||||
EXP_FAST(61),
|
||||
EXP_FAST(62),
|
||||
EXP_FAST(63),
|
||||
EXP_FAST(64),
|
||||
EXP_FAST(65),
|
||||
EXP_FAST(66),
|
||||
EXP_FAST(67),
|
||||
EXP_FAST(68),
|
||||
EXP_FAST(69),
|
||||
EXP_FAST(70),
|
||||
EXP_FAST(71),
|
||||
EXP_FAST(72),
|
||||
EXP_FAST(73),
|
||||
EXP_FAST(74),
|
||||
EXP_FAST(75),
|
||||
EXP_FAST(76),
|
||||
EXP_FAST(77),
|
||||
EXP_FAST(78),
|
||||
EXP_FAST(79),
|
||||
EXP_FAST(80),
|
||||
EXP_FAST(81),
|
||||
EXP_FAST(82),
|
||||
EXP_FAST(83),
|
||||
EXP_FAST(84),
|
||||
EXP_FAST(85),
|
||||
EXP_FAST(86),
|
||||
EXP_FAST(87),
|
||||
EXP_FAST(88),
|
||||
EXP_FAST(89),
|
||||
EXP_FAST(90),
|
||||
EXP_FAST(91),
|
||||
EXP_FAST(92),
|
||||
EXP_FAST(93),
|
||||
EXP_FAST(94),
|
||||
EXP_FAST(95),
|
||||
EXP_FAST(96),
|
||||
EXP_FAST(97),
|
||||
EXP_FAST(98),
|
||||
EXP_FAST(99),
|
||||
EXP_FAST(100),
|
||||
},
|
||||
{ // Slow
|
||||
0, // 0
|
||||
1, // 1
|
||||
EXP_SLOW(2),
|
||||
EXP_SLOW(3),
|
||||
EXP_SLOW(4),
|
||||
EXP_SLOW(5),
|
||||
EXP_SLOW(6),
|
||||
EXP_SLOW(7),
|
||||
EXP_SLOW(8),
|
||||
EXP_SLOW(9),
|
||||
EXP_SLOW(10),
|
||||
EXP_SLOW(11),
|
||||
EXP_SLOW(12),
|
||||
EXP_SLOW(13),
|
||||
EXP_SLOW(14),
|
||||
EXP_SLOW(15),
|
||||
EXP_SLOW(16),
|
||||
EXP_SLOW(17),
|
||||
EXP_SLOW(18),
|
||||
EXP_SLOW(19),
|
||||
EXP_SLOW(20),
|
||||
EXP_SLOW(21),
|
||||
EXP_SLOW(22),
|
||||
EXP_SLOW(23),
|
||||
EXP_SLOW(24),
|
||||
EXP_SLOW(25),
|
||||
EXP_SLOW(26),
|
||||
EXP_SLOW(27),
|
||||
EXP_SLOW(28),
|
||||
EXP_SLOW(29),
|
||||
EXP_SLOW(30),
|
||||
EXP_SLOW(31),
|
||||
EXP_SLOW(32),
|
||||
EXP_SLOW(33),
|
||||
EXP_SLOW(34),
|
||||
EXP_SLOW(35),
|
||||
EXP_SLOW(36),
|
||||
EXP_SLOW(37),
|
||||
EXP_SLOW(38),
|
||||
EXP_SLOW(39),
|
||||
EXP_SLOW(40),
|
||||
EXP_SLOW(41),
|
||||
EXP_SLOW(42),
|
||||
EXP_SLOW(43),
|
||||
EXP_SLOW(44),
|
||||
EXP_SLOW(45),
|
||||
EXP_SLOW(46),
|
||||
EXP_SLOW(47),
|
||||
EXP_SLOW(48),
|
||||
EXP_SLOW(49),
|
||||
EXP_SLOW(50),
|
||||
EXP_SLOW(51),
|
||||
EXP_SLOW(52),
|
||||
EXP_SLOW(53),
|
||||
EXP_SLOW(54),
|
||||
EXP_SLOW(55),
|
||||
EXP_SLOW(56),
|
||||
EXP_SLOW(57),
|
||||
EXP_SLOW(58),
|
||||
EXP_SLOW(59),
|
||||
EXP_SLOW(60),
|
||||
EXP_SLOW(61),
|
||||
EXP_SLOW(62),
|
||||
EXP_SLOW(63),
|
||||
EXP_SLOW(64),
|
||||
EXP_SLOW(65),
|
||||
EXP_SLOW(66),
|
||||
EXP_SLOW(67),
|
||||
EXP_SLOW(68),
|
||||
EXP_SLOW(69),
|
||||
EXP_SLOW(70),
|
||||
EXP_SLOW(71),
|
||||
EXP_SLOW(72),
|
||||
EXP_SLOW(73),
|
||||
EXP_SLOW(74),
|
||||
EXP_SLOW(75),
|
||||
EXP_SLOW(76),
|
||||
EXP_SLOW(77),
|
||||
EXP_SLOW(78),
|
||||
EXP_SLOW(79),
|
||||
EXP_SLOW(80),
|
||||
EXP_SLOW(81),
|
||||
EXP_SLOW(82),
|
||||
EXP_SLOW(83),
|
||||
EXP_SLOW(84),
|
||||
EXP_SLOW(85),
|
||||
EXP_SLOW(86),
|
||||
EXP_SLOW(87),
|
||||
EXP_SLOW(88),
|
||||
EXP_SLOW(89),
|
||||
EXP_SLOW(90),
|
||||
EXP_SLOW(91),
|
||||
EXP_SLOW(92),
|
||||
EXP_SLOW(93),
|
||||
EXP_SLOW(94),
|
||||
EXP_SLOW(95),
|
||||
EXP_SLOW(96),
|
||||
EXP_SLOW(97),
|
||||
EXP_SLOW(98),
|
||||
EXP_SLOW(99),
|
||||
EXP_SLOW(100),
|
||||
},
|
||||
{ // Medium Fast copy 2 (unused? to-do: investigate)
|
||||
0, // 0
|
||||
1, // 1
|
||||
EXP_MEDIUM_FAST(2),
|
||||
EXP_MEDIUM_FAST(3),
|
||||
EXP_MEDIUM_FAST(4),
|
||||
EXP_MEDIUM_FAST(5),
|
||||
EXP_MEDIUM_FAST(6),
|
||||
EXP_MEDIUM_FAST(7),
|
||||
EXP_MEDIUM_FAST(8),
|
||||
EXP_MEDIUM_FAST(9),
|
||||
EXP_MEDIUM_FAST(10),
|
||||
EXP_MEDIUM_FAST(11),
|
||||
EXP_MEDIUM_FAST(12),
|
||||
EXP_MEDIUM_FAST(13),
|
||||
EXP_MEDIUM_FAST(14),
|
||||
EXP_MEDIUM_FAST(15),
|
||||
EXP_MEDIUM_FAST(16),
|
||||
EXP_MEDIUM_FAST(17),
|
||||
EXP_MEDIUM_FAST(18),
|
||||
EXP_MEDIUM_FAST(19),
|
||||
EXP_MEDIUM_FAST(20),
|
||||
EXP_MEDIUM_FAST(21),
|
||||
EXP_MEDIUM_FAST(22),
|
||||
EXP_MEDIUM_FAST(23),
|
||||
EXP_MEDIUM_FAST(24),
|
||||
EXP_MEDIUM_FAST(25),
|
||||
EXP_MEDIUM_FAST(26),
|
||||
EXP_MEDIUM_FAST(27),
|
||||
EXP_MEDIUM_FAST(28),
|
||||
EXP_MEDIUM_FAST(29),
|
||||
EXP_MEDIUM_FAST(30),
|
||||
EXP_MEDIUM_FAST(31),
|
||||
EXP_MEDIUM_FAST(32),
|
||||
EXP_MEDIUM_FAST(33),
|
||||
EXP_MEDIUM_FAST(34),
|
||||
EXP_MEDIUM_FAST(35),
|
||||
EXP_MEDIUM_FAST(36),
|
||||
EXP_MEDIUM_FAST(37),
|
||||
EXP_MEDIUM_FAST(38),
|
||||
EXP_MEDIUM_FAST(39),
|
||||
EXP_MEDIUM_FAST(40),
|
||||
EXP_MEDIUM_FAST(41),
|
||||
EXP_MEDIUM_FAST(42),
|
||||
EXP_MEDIUM_FAST(43),
|
||||
EXP_MEDIUM_FAST(44),
|
||||
EXP_MEDIUM_FAST(45),
|
||||
EXP_MEDIUM_FAST(46),
|
||||
EXP_MEDIUM_FAST(47),
|
||||
EXP_MEDIUM_FAST(48),
|
||||
EXP_MEDIUM_FAST(49),
|
||||
EXP_MEDIUM_FAST(50),
|
||||
EXP_MEDIUM_FAST(51),
|
||||
EXP_MEDIUM_FAST(52),
|
||||
EXP_MEDIUM_FAST(53),
|
||||
EXP_MEDIUM_FAST(54),
|
||||
EXP_MEDIUM_FAST(55),
|
||||
EXP_MEDIUM_FAST(56),
|
||||
EXP_MEDIUM_FAST(57),
|
||||
EXP_MEDIUM_FAST(58),
|
||||
EXP_MEDIUM_FAST(59),
|
||||
EXP_MEDIUM_FAST(60),
|
||||
EXP_MEDIUM_FAST(61),
|
||||
EXP_MEDIUM_FAST(62),
|
||||
EXP_MEDIUM_FAST(63),
|
||||
EXP_MEDIUM_FAST(64),
|
||||
EXP_MEDIUM_FAST(65),
|
||||
EXP_MEDIUM_FAST(66),
|
||||
EXP_MEDIUM_FAST(67),
|
||||
EXP_MEDIUM_FAST(68),
|
||||
EXP_MEDIUM_FAST(69),
|
||||
EXP_MEDIUM_FAST(70),
|
||||
EXP_MEDIUM_FAST(71),
|
||||
EXP_MEDIUM_FAST(72),
|
||||
EXP_MEDIUM_FAST(73),
|
||||
EXP_MEDIUM_FAST(74),
|
||||
EXP_MEDIUM_FAST(75),
|
||||
EXP_MEDIUM_FAST(76),
|
||||
EXP_MEDIUM_FAST(77),
|
||||
EXP_MEDIUM_FAST(78),
|
||||
EXP_MEDIUM_FAST(79),
|
||||
EXP_MEDIUM_FAST(80),
|
||||
EXP_MEDIUM_FAST(81),
|
||||
EXP_MEDIUM_FAST(82),
|
||||
EXP_MEDIUM_FAST(83),
|
||||
EXP_MEDIUM_FAST(84),
|
||||
EXP_MEDIUM_FAST(85),
|
||||
EXP_MEDIUM_FAST(86),
|
||||
EXP_MEDIUM_FAST(87),
|
||||
EXP_MEDIUM_FAST(88),
|
||||
EXP_MEDIUM_FAST(89),
|
||||
EXP_MEDIUM_FAST(90),
|
||||
EXP_MEDIUM_FAST(91),
|
||||
EXP_MEDIUM_FAST(92),
|
||||
EXP_MEDIUM_FAST(93),
|
||||
EXP_MEDIUM_FAST(94),
|
||||
EXP_MEDIUM_FAST(95),
|
||||
EXP_MEDIUM_FAST(96),
|
||||
EXP_MEDIUM_FAST(97),
|
||||
EXP_MEDIUM_FAST(98),
|
||||
EXP_MEDIUM_FAST(99),
|
||||
EXP_MEDIUM_FAST(100),
|
||||
},
|
||||
{ // Medium Fast copy 3 (unused? to-do: investigate)
|
||||
0, // 0
|
||||
1, // 1
|
||||
EXP_MEDIUM_FAST(2),
|
||||
EXP_MEDIUM_FAST(3),
|
||||
EXP_MEDIUM_FAST(4),
|
||||
EXP_MEDIUM_FAST(5),
|
||||
EXP_MEDIUM_FAST(6),
|
||||
EXP_MEDIUM_FAST(7),
|
||||
EXP_MEDIUM_FAST(8),
|
||||
EXP_MEDIUM_FAST(9),
|
||||
EXP_MEDIUM_FAST(10),
|
||||
EXP_MEDIUM_FAST(11),
|
||||
EXP_MEDIUM_FAST(12),
|
||||
EXP_MEDIUM_FAST(13),
|
||||
EXP_MEDIUM_FAST(14),
|
||||
EXP_MEDIUM_FAST(15),
|
||||
EXP_MEDIUM_FAST(16),
|
||||
EXP_MEDIUM_FAST(17),
|
||||
EXP_MEDIUM_FAST(18),
|
||||
EXP_MEDIUM_FAST(19),
|
||||
EXP_MEDIUM_FAST(20),
|
||||
EXP_MEDIUM_FAST(21),
|
||||
EXP_MEDIUM_FAST(22),
|
||||
EXP_MEDIUM_FAST(23),
|
||||
EXP_MEDIUM_FAST(24),
|
||||
EXP_MEDIUM_FAST(25),
|
||||
EXP_MEDIUM_FAST(26),
|
||||
EXP_MEDIUM_FAST(27),
|
||||
EXP_MEDIUM_FAST(28),
|
||||
EXP_MEDIUM_FAST(29),
|
||||
EXP_MEDIUM_FAST(30),
|
||||
EXP_MEDIUM_FAST(31),
|
||||
EXP_MEDIUM_FAST(32),
|
||||
EXP_MEDIUM_FAST(33),
|
||||
EXP_MEDIUM_FAST(34),
|
||||
EXP_MEDIUM_FAST(35),
|
||||
EXP_MEDIUM_FAST(36),
|
||||
EXP_MEDIUM_FAST(37),
|
||||
EXP_MEDIUM_FAST(38),
|
||||
EXP_MEDIUM_FAST(39),
|
||||
EXP_MEDIUM_FAST(40),
|
||||
EXP_MEDIUM_FAST(41),
|
||||
EXP_MEDIUM_FAST(42),
|
||||
EXP_MEDIUM_FAST(43),
|
||||
EXP_MEDIUM_FAST(44),
|
||||
EXP_MEDIUM_FAST(45),
|
||||
EXP_MEDIUM_FAST(46),
|
||||
EXP_MEDIUM_FAST(47),
|
||||
EXP_MEDIUM_FAST(48),
|
||||
EXP_MEDIUM_FAST(49),
|
||||
EXP_MEDIUM_FAST(50),
|
||||
EXP_MEDIUM_FAST(51),
|
||||
EXP_MEDIUM_FAST(52),
|
||||
EXP_MEDIUM_FAST(53),
|
||||
EXP_MEDIUM_FAST(54),
|
||||
EXP_MEDIUM_FAST(55),
|
||||
EXP_MEDIUM_FAST(56),
|
||||
EXP_MEDIUM_FAST(57),
|
||||
EXP_MEDIUM_FAST(58),
|
||||
EXP_MEDIUM_FAST(59),
|
||||
EXP_MEDIUM_FAST(60),
|
||||
EXP_MEDIUM_FAST(61),
|
||||
EXP_MEDIUM_FAST(62),
|
||||
EXP_MEDIUM_FAST(63),
|
||||
EXP_MEDIUM_FAST(64),
|
||||
EXP_MEDIUM_FAST(65),
|
||||
EXP_MEDIUM_FAST(66),
|
||||
EXP_MEDIUM_FAST(67),
|
||||
EXP_MEDIUM_FAST(68),
|
||||
EXP_MEDIUM_FAST(69),
|
||||
EXP_MEDIUM_FAST(70),
|
||||
EXP_MEDIUM_FAST(71),
|
||||
EXP_MEDIUM_FAST(72),
|
||||
EXP_MEDIUM_FAST(73),
|
||||
EXP_MEDIUM_FAST(74),
|
||||
EXP_MEDIUM_FAST(75),
|
||||
EXP_MEDIUM_FAST(76),
|
||||
EXP_MEDIUM_FAST(77),
|
||||
EXP_MEDIUM_FAST(78),
|
||||
EXP_MEDIUM_FAST(79),
|
||||
EXP_MEDIUM_FAST(80),
|
||||
EXP_MEDIUM_FAST(81),
|
||||
EXP_MEDIUM_FAST(82),
|
||||
EXP_MEDIUM_FAST(83),
|
||||
EXP_MEDIUM_FAST(84),
|
||||
EXP_MEDIUM_FAST(85),
|
||||
EXP_MEDIUM_FAST(86),
|
||||
EXP_MEDIUM_FAST(87),
|
||||
EXP_MEDIUM_FAST(88),
|
||||
EXP_MEDIUM_FAST(89),
|
||||
EXP_MEDIUM_FAST(90),
|
||||
EXP_MEDIUM_FAST(91),
|
||||
EXP_MEDIUM_FAST(92),
|
||||
EXP_MEDIUM_FAST(93),
|
||||
EXP_MEDIUM_FAST(94),
|
||||
EXP_MEDIUM_FAST(95),
|
||||
EXP_MEDIUM_FAST(96),
|
||||
EXP_MEDIUM_FAST(97),
|
||||
EXP_MEDIUM_FAST(98),
|
||||
EXP_MEDIUM_FAST(99),
|
||||
EXP_MEDIUM_FAST(100),
|
||||
}
|
||||
};
|
||||
|
||||
#endif //POKEEMERALD_EXPERIENCE_TABLES_H
|
||||
241
include/data/pokemon/item_effects.h
Normal file
241
include/data/pokemon/item_effects.h
Normal file
@@ -0,0 +1,241 @@
|
||||
#ifndef GUARD_ITEM_EFFECTS_H
|
||||
#define GUARD_ITEM_EFFECTS_H
|
||||
|
||||
const u8 gItemEffect_Potion[] = {0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 20};
|
||||
const u8 gItemEffect_Antidote[] = {0x00, 0x00, 0x00, 0x10, 0x00, 0x00};
|
||||
const u8 gItemEffect_BurnHeal[] = {0x00, 0x00, 0x00, 0x08, 0x00, 0x00};
|
||||
const u8 gItemEffect_IceHeal[] = {0x00, 0x00, 0x00, 0x04, 0x00, 0x00};
|
||||
const u8 gItemEffect_Awakening[] = {0x00, 0x00, 0x00, 0x20, 0x00, 0x00};
|
||||
const u8 gItemEffect_ParalyzeHeal[] = {0x00, 0x00, 0x00, 0x02, 0x00, 0x00};
|
||||
const u8 gItemEffect_FullRestore[] = {0x00, 0x00, 0x00, 0x3f, 0x04, 0x00, 0xff};
|
||||
const u8 gItemEffect_MaxPotion[] = {0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0xff};
|
||||
const u8 gItemEffect_HyperPotion[] = {0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 200};
|
||||
const u8 gItemEffect_SuperPotion[] = {0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 50};
|
||||
const u8 gItemEffect_FullHeal[] = {0x00, 0x00, 0x00, 0x3f, 0x00, 0x00};
|
||||
const u8 gItemEffect_Revive[] = {0x00, 0x00, 0x00, 0x00, 0x44, 0x00, 0xfe};
|
||||
const u8 gItemEffect_MaxRevive[] = {0x00, 0x00, 0x00, 0x00, 0x44, 0x00, 0xff};
|
||||
const u8 gItemEffect_FreshWater[] = {0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 50};
|
||||
const u8 gItemEffect_SodaPop[] = {0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 60};
|
||||
const u8 gItemEffect_Lemonade[] = {0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 80};
|
||||
const u8 gItemEffect_MoomooMilk[] = {0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 100};
|
||||
const u8 gItemEffect_EnergyPowder[] = {0x00, 0x00, 0x00, 0x00, 0x04, 0xe0, 50, 0xfb, 0xfb, 0xf6};
|
||||
const u8 gItemEffect_EnergyRoot[] = {0x00, 0x00, 0x00, 0x00, 0x04, 0xe0, 200, 0xf6, 0xf6, 0xf1};
|
||||
const u8 gItemEffect_HealPowder[] = {0x00, 0x00, 0x00, 0x3f, 0x00, 0xe0, 0xfb, 0xfb, 0xf6};
|
||||
const u8 gItemEffect_RevivalHerb[] = {0x00, 0x00, 0x00, 0x00, 0x44, 0xe0, 0xff, 0xf1, 0xf1, 0xec};
|
||||
const u8 gItemEffect_Ether[] = {0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x0a};
|
||||
const u8 gItemEffect_MaxEther[] = {0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x7f};
|
||||
const u8 gItemEffect_Elixir[] = {0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x0a};
|
||||
const u8 gItemEffect_MaxElixir[] = {0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x7f};
|
||||
const u8 gItemEffect_LavaCookie[] = {0x00, 0x00, 0x00, 0x3f, 0x00, 0x00};
|
||||
const u8 gItemEffect_BlueFlute[] = {0x00, 0x00, 0x00, 0x20, 0x00, 0x00};
|
||||
const u8 gItemEffect_YellowFlute[] = {0x00, 0x00, 0x00, 0x01, 0x00, 0x00};
|
||||
const u8 gItemEffect_RedFlute[] = {0x80, 0x00, 0x00, 0x00, 0x00, 0x00};
|
||||
const u8 gItemEffect_BerryJuice[] = {0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 20};
|
||||
const u8 gItemEffect_SacredAsh[] = {0x40, 0x00, 0x00, 0x00, 0x44, 0x00, 0xff};
|
||||
const u8 gItemEffect_HPUp[] = {0x00, 0x00, 0x00, 0x00, 0x01, 0xe0, 0x0a, 0x05, 0x03, 0x02};
|
||||
const u8 gItemEffect_Protein[] = {0x00, 0x00, 0x00, 0x00, 0x02, 0xe0, 0x0a, 0x05, 0x03, 0x02};
|
||||
const u8 gItemEffect_Iron[] = {0x00, 0x00, 0x00, 0x00, 0x00, 0xe1, 0x0a, 0x05, 0x03, 0x02};
|
||||
const u8 gItemEffect_Carbos[] = {0x00, 0x00, 0x00, 0x00, 0x00, 0xe2, 0x0a, 0x05, 0x03, 0x02};
|
||||
const u8 gItemEffect_Calcium[] = {0x00, 0x00, 0x00, 0x00, 0x00, 0xe8, 0x0a, 0x05, 0x03, 0x02};
|
||||
const u8 gItemEffect_RareCandy[] = {0x00, 0x00, 0x00, 0x40, 0x44, 0xe0, 253, 0x05, 0x03, 0x02};
|
||||
const u8 gItemEffect_PPUp[] = {0x00, 0x00, 0x00, 0x00, 0x20, 0xe0, 0x05, 0x03, 0x02};
|
||||
const u8 gItemEffect_Zinc[] = {0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x0a, 0x05, 0x03, 0x02};
|
||||
const u8 gItemEffect_PPMax[] = {0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x05, 0x03, 0x02};
|
||||
const u8 gItemEffect_GuardSpec[] = {0x00, 0x00, 0x00, 0x80, 0x00, 0x60, 0x01, 0x01};
|
||||
const u8 gItemEffect_DireHit[] = {0x20, 0x00, 0x00, 0x00, 0x00, 0x60, 0x01, 0x01};
|
||||
const u8 gItemEffect_XAttack[] = {0x01, 0x00, 0x00, 0x00, 0x00, 0x60, 0x01, 0x01};
|
||||
const u8 gItemEffect_XDefend[] = {0x00, 0x10, 0x00, 0x00, 0x00, 0x60, 0x01, 0x01};
|
||||
const u8 gItemEffect_XSpeed[] = {0x00, 0x01, 0x00, 0x00, 0x00, 0x60, 0x01, 0x01};
|
||||
const u8 gItemEffect_XAccuracy[] = {0x00, 0x00, 0x10, 0x00, 0x00, 0x60, 0x01, 0x01};
|
||||
const u8 gItemEffect_XSpecial[] = {0x00, 0x00, 0x01, 0x00, 0x00, 0x60, 0x01, 0x01};
|
||||
const u8 gItemEffect_SunStone[] = {0x00, 0x00, 0x00, 0x00, 0x80, 0x00};
|
||||
const u8 gItemEffect_MoonStone[] = {0x00, 0x00, 0x00, 0x00, 0x80, 0x00};
|
||||
const u8 gItemEffect_FireStone[] = {0x00, 0x00, 0x00, 0x00, 0x80, 0x00};
|
||||
const u8 gItemEffect_ThunderStone[] = {0x00, 0x00, 0x00, 0x00, 0x80, 0x00};
|
||||
const u8 gItemEffect_WaterStone[] = {0x00, 0x00, 0x00, 0x00, 0x80, 0x00};
|
||||
const u8 gItemEffect_LeafStone[] = {0x00, 0x00, 0x00, 0x00, 0x80, 0x00};
|
||||
const u8 gItemEffect_CheriBerry[] = {0x00, 0x00, 0x00, 0x02, 0x00, 0x00};
|
||||
const u8 gItemEffect_ChestoBerry[] = {0x00, 0x00, 0x00, 0x20, 0x00, 0x00};
|
||||
const u8 gItemEffect_PechaBerry[] = {0x00, 0x00, 0x00, 0x10, 0x00, 0x00};
|
||||
const u8 gItemEffect_RawstBerry[] = {0x00, 0x00, 0x00, 0x08, 0x00, 0x00};
|
||||
const u8 gItemEffect_AspearBerry[] = {0x00, 0x00, 0x00, 0x04, 0x00, 0x00};
|
||||
const u8 gItemEffect_LeppaBerry[] = {0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x0a};
|
||||
const u8 gItemEffect_OranBerry[] = {0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 10};
|
||||
const u8 gItemEffect_PersimBerry[] = {0x00, 0x00, 0x00, 0x01, 0x00, 0x00};
|
||||
const u8 gItemEffect_LumBerry[] = {0x00, 0x00, 0x00, 0x3f, 0x00, 0x00};
|
||||
const u8 gItemEffect_SitrusBerry[] = {0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 30};
|
||||
const u8 gItemEffect_PomegBerry[] = {0x00, 0x00, 0x00, 0x00, 0x01, 0xe0, 0xf6, 0x0a, 0x05, 0x02};
|
||||
const u8 gItemEffect_KelpsyBerry[] = {0x00, 0x00, 0x00, 0x00, 0x02, 0xe0, 0xf6, 0x0a, 0x05, 0x02};
|
||||
const u8 gItemEffect_QualotBerry[] = {0x00, 0x00, 0x00, 0x00, 0x00, 0xe1, 0xf6, 0x0a, 0x05, 0x02};
|
||||
const u8 gItemEffect_HondrewBerry[] = {0x00, 0x00, 0x00, 0x00, 0x00, 0xe8, 0xf6, 0x0a, 0x05, 0x02};
|
||||
const u8 gItemEffect_GrepaBerry[] = {0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0xf6, 0x0a, 0x05, 0x02};
|
||||
const u8 gItemEffect_TamatoBerry[] = {0x00, 0x00, 0x00, 0x00, 0x00, 0xe2, 0xf6, 0x0a, 0x05, 0x02};
|
||||
|
||||
const u8 *const gItemEffectTable[] =
|
||||
{
|
||||
gItemEffect_Potion,
|
||||
gItemEffect_Antidote,
|
||||
gItemEffect_BurnHeal,
|
||||
gItemEffect_IceHeal,
|
||||
gItemEffect_Awakening,
|
||||
gItemEffect_ParalyzeHeal,
|
||||
gItemEffect_FullRestore,
|
||||
gItemEffect_MaxPotion,
|
||||
gItemEffect_HyperPotion,
|
||||
gItemEffect_SuperPotion,
|
||||
gItemEffect_FullHeal,
|
||||
gItemEffect_Revive,
|
||||
gItemEffect_MaxRevive,
|
||||
gItemEffect_FreshWater,
|
||||
gItemEffect_SodaPop,
|
||||
gItemEffect_Lemonade,
|
||||
gItemEffect_MoomooMilk,
|
||||
gItemEffect_EnergyPowder,
|
||||
gItemEffect_EnergyRoot,
|
||||
gItemEffect_HealPowder,
|
||||
gItemEffect_RevivalHerb,
|
||||
gItemEffect_Ether,
|
||||
gItemEffect_MaxEther,
|
||||
gItemEffect_Elixir,
|
||||
gItemEffect_MaxElixir,
|
||||
gItemEffect_LavaCookie,
|
||||
gItemEffect_BlueFlute,
|
||||
gItemEffect_YellowFlute,
|
||||
gItemEffect_RedFlute,
|
||||
NULL,
|
||||
NULL,
|
||||
gItemEffect_BerryJuice,
|
||||
gItemEffect_SacredAsh,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
gItemEffect_HPUp,
|
||||
gItemEffect_Protein,
|
||||
gItemEffect_Iron,
|
||||
gItemEffect_Carbos,
|
||||
gItemEffect_Calcium,
|
||||
gItemEffect_RareCandy,
|
||||
gItemEffect_PPUp,
|
||||
gItemEffect_Zinc,
|
||||
gItemEffect_PPMax,
|
||||
NULL,
|
||||
gItemEffect_GuardSpec,
|
||||
gItemEffect_DireHit,
|
||||
gItemEffect_XAttack,
|
||||
gItemEffect_XDefend,
|
||||
gItemEffect_XSpeed,
|
||||
gItemEffect_XAccuracy,
|
||||
gItemEffect_XSpecial,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
gItemEffect_SunStone,
|
||||
gItemEffect_MoonStone,
|
||||
gItemEffect_FireStone,
|
||||
gItemEffect_ThunderStone,
|
||||
gItemEffect_WaterStone,
|
||||
gItemEffect_LeafStone,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
gItemEffect_CheriBerry,
|
||||
gItemEffect_ChestoBerry,
|
||||
gItemEffect_PechaBerry,
|
||||
gItemEffect_RawstBerry,
|
||||
gItemEffect_AspearBerry,
|
||||
gItemEffect_LeppaBerry,
|
||||
gItemEffect_OranBerry,
|
||||
gItemEffect_PersimBerry,
|
||||
gItemEffect_LumBerry,
|
||||
gItemEffect_SitrusBerry,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
gItemEffect_PomegBerry,
|
||||
gItemEffect_KelpsyBerry,
|
||||
gItemEffect_QualotBerry,
|
||||
gItemEffect_HondrewBerry,
|
||||
gItemEffect_GrepaBerry,
|
||||
gItemEffect_TamatoBerry,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL
|
||||
};
|
||||
|
||||
#endif //GUARD_ITEM_EFFECTS_H
|
||||
420
include/data/pokemon/level_up_learnset_pointers.h
Normal file
420
include/data/pokemon/level_up_learnset_pointers.h
Normal file
@@ -0,0 +1,420 @@
|
||||
#ifndef POKEEMERALD_LEVEL_UP_LEARNSET_POINTERS_H
|
||||
#define POKEEMERALD_LEVEL_UP_LEARNSET_POINTERS_H
|
||||
|
||||
const u16 *const gLevelUpLearnsets[] =
|
||||
{
|
||||
gBulbasaurLevelUpLearnset,
|
||||
gBulbasaurLevelUpLearnset,
|
||||
gIvysaurLevelUpLearnset,
|
||||
gVenusaurLevelUpLearnset,
|
||||
gCharmanderLevelUpLearnset,
|
||||
gCharmeleonLevelUpLearnset,
|
||||
gCharizardLevelUpLearnset,
|
||||
gSquirtleLevelUpLearnset,
|
||||
gWartortleLevelUpLearnset,
|
||||
gBlastoiseLevelUpLearnset,
|
||||
gCaterpieLevelUpLearnset,
|
||||
gMetapodLevelUpLearnset,
|
||||
gButterfreeLevelUpLearnset,
|
||||
gWeedleLevelUpLearnset,
|
||||
gKakunaLevelUpLearnset,
|
||||
gBeedrillLevelUpLearnset,
|
||||
gPidgeyLevelUpLearnset,
|
||||
gPidgeottoLevelUpLearnset,
|
||||
gPidgeotLevelUpLearnset,
|
||||
gRattataLevelUpLearnset,
|
||||
gRaticateLevelUpLearnset,
|
||||
gSpearowLevelUpLearnset,
|
||||
gFearowLevelUpLearnset,
|
||||
gEkansLevelUpLearnset,
|
||||
gArbokLevelUpLearnset,
|
||||
gPikachuLevelUpLearnset,
|
||||
gRaichuLevelUpLearnset,
|
||||
gSandshrewLevelUpLearnset,
|
||||
gSandslashLevelUpLearnset,
|
||||
gNidoranFLevelUpLearnset,
|
||||
gNidorinaLevelUpLearnset,
|
||||
gNidoqueenLevelUpLearnset,
|
||||
gNidoranMLevelUpLearnset,
|
||||
gNidorinoLevelUpLearnset,
|
||||
gNidokingLevelUpLearnset,
|
||||
gClefairyLevelUpLearnset,
|
||||
gClefableLevelUpLearnset,
|
||||
gVulpixLevelUpLearnset,
|
||||
gNinetalesLevelUpLearnset,
|
||||
gJigglypuffLevelUpLearnset,
|
||||
gWigglytuffLevelUpLearnset,
|
||||
gZubatLevelUpLearnset,
|
||||
gGolbatLevelUpLearnset,
|
||||
gOddishLevelUpLearnset,
|
||||
gGloomLevelUpLearnset,
|
||||
gVileplumeLevelUpLearnset,
|
||||
gParasLevelUpLearnset,
|
||||
gParasectLevelUpLearnset,
|
||||
gVenonatLevelUpLearnset,
|
||||
gVenomothLevelUpLearnset,
|
||||
gDiglettLevelUpLearnset,
|
||||
gDugtrioLevelUpLearnset,
|
||||
gMeowthLevelUpLearnset,
|
||||
gPersianLevelUpLearnset,
|
||||
gPsyduckLevelUpLearnset,
|
||||
gGolduckLevelUpLearnset,
|
||||
gMankeyLevelUpLearnset,
|
||||
gPrimeapeLevelUpLearnset,
|
||||
gGrowlitheLevelUpLearnset,
|
||||
gArcanineLevelUpLearnset,
|
||||
gPoliwagLevelUpLearnset,
|
||||
gPoliwhirlLevelUpLearnset,
|
||||
gPoliwrathLevelUpLearnset,
|
||||
gAbraLevelUpLearnset,
|
||||
gKadabraLevelUpLearnset,
|
||||
gAlakazamLevelUpLearnset,
|
||||
gMachopLevelUpLearnset,
|
||||
gMachokeLevelUpLearnset,
|
||||
gMachampLevelUpLearnset,
|
||||
gBellsproutLevelUpLearnset,
|
||||
gWeepinbellLevelUpLearnset,
|
||||
gVictreebelLevelUpLearnset,
|
||||
gTentacoolLevelUpLearnset,
|
||||
gTentacruelLevelUpLearnset,
|
||||
gGeodudeLevelUpLearnset,
|
||||
gGravelerLevelUpLearnset,
|
||||
gGolemLevelUpLearnset,
|
||||
gPonytaLevelUpLearnset,
|
||||
gRapidashLevelUpLearnset,
|
||||
gSlowpokeLevelUpLearnset,
|
||||
gSlowbroLevelUpLearnset,
|
||||
gMagnemiteLevelUpLearnset,
|
||||
gMagnetonLevelUpLearnset,
|
||||
gFarfetchdLevelUpLearnset,
|
||||
gDoduoLevelUpLearnset,
|
||||
gDodrioLevelUpLearnset,
|
||||
gSeelLevelUpLearnset,
|
||||
gDewgongLevelUpLearnset,
|
||||
gGrimerLevelUpLearnset,
|
||||
gMukLevelUpLearnset,
|
||||
gShellderLevelUpLearnset,
|
||||
gCloysterLevelUpLearnset,
|
||||
gGastlyLevelUpLearnset,
|
||||
gHaunterLevelUpLearnset,
|
||||
gGengarLevelUpLearnset,
|
||||
gOnixLevelUpLearnset,
|
||||
gDrowzeeLevelUpLearnset,
|
||||
gHypnoLevelUpLearnset,
|
||||
gKrabbyLevelUpLearnset,
|
||||
gKinglerLevelUpLearnset,
|
||||
gVoltorbLevelUpLearnset,
|
||||
gElectrodeLevelUpLearnset,
|
||||
gExeggcuteLevelUpLearnset,
|
||||
gExeggutorLevelUpLearnset,
|
||||
gCuboneLevelUpLearnset,
|
||||
gMarowakLevelUpLearnset,
|
||||
gHitmonleeLevelUpLearnset,
|
||||
gHitmonchanLevelUpLearnset,
|
||||
gLickitungLevelUpLearnset,
|
||||
gKoffingLevelUpLearnset,
|
||||
gWeezingLevelUpLearnset,
|
||||
gRhyhornLevelUpLearnset,
|
||||
gRhydonLevelUpLearnset,
|
||||
gChanseyLevelUpLearnset,
|
||||
gTangelaLevelUpLearnset,
|
||||
gKangaskhanLevelUpLearnset,
|
||||
gHorseaLevelUpLearnset,
|
||||
gSeadraLevelUpLearnset,
|
||||
gGoldeenLevelUpLearnset,
|
||||
gSeakingLevelUpLearnset,
|
||||
gStaryuLevelUpLearnset,
|
||||
gStarmieLevelUpLearnset,
|
||||
gMrmimeLevelUpLearnset,
|
||||
gScytherLevelUpLearnset,
|
||||
gJynxLevelUpLearnset,
|
||||
gElectabuzzLevelUpLearnset,
|
||||
gMagmarLevelUpLearnset,
|
||||
gPinsirLevelUpLearnset,
|
||||
gTaurosLevelUpLearnset,
|
||||
gMagikarpLevelUpLearnset,
|
||||
gGyaradosLevelUpLearnset,
|
||||
gLaprasLevelUpLearnset,
|
||||
gDittoLevelUpLearnset,
|
||||
gEeveeLevelUpLearnset,
|
||||
gVaporeonLevelUpLearnset,
|
||||
gJolteonLevelUpLearnset,
|
||||
gFlareonLevelUpLearnset,
|
||||
gPorygonLevelUpLearnset,
|
||||
gOmanyteLevelUpLearnset,
|
||||
gOmastarLevelUpLearnset,
|
||||
gKabutoLevelUpLearnset,
|
||||
gKabutopsLevelUpLearnset,
|
||||
gAerodactylLevelUpLearnset,
|
||||
gSnorlaxLevelUpLearnset,
|
||||
gArticunoLevelUpLearnset,
|
||||
gZapdosLevelUpLearnset,
|
||||
gMoltresLevelUpLearnset,
|
||||
gDratiniLevelUpLearnset,
|
||||
gDragonairLevelUpLearnset,
|
||||
gDragoniteLevelUpLearnset,
|
||||
gMewtwoLevelUpLearnset,
|
||||
gMewLevelUpLearnset,
|
||||
gChikoritaLevelUpLearnset,
|
||||
gBayleefLevelUpLearnset,
|
||||
gMeganiumLevelUpLearnset,
|
||||
gCyndaquilLevelUpLearnset,
|
||||
gQuilavaLevelUpLearnset,
|
||||
gTyphlosionLevelUpLearnset,
|
||||
gTotodileLevelUpLearnset,
|
||||
gCroconawLevelUpLearnset,
|
||||
gFeraligatrLevelUpLearnset,
|
||||
gSentretLevelUpLearnset,
|
||||
gFurretLevelUpLearnset,
|
||||
gHoothootLevelUpLearnset,
|
||||
gNoctowlLevelUpLearnset,
|
||||
gLedybaLevelUpLearnset,
|
||||
gLedianLevelUpLearnset,
|
||||
gSpinarakLevelUpLearnset,
|
||||
gAriadosLevelUpLearnset,
|
||||
gCrobatLevelUpLearnset,
|
||||
gChinchouLevelUpLearnset,
|
||||
gLanturnLevelUpLearnset,
|
||||
gPichuLevelUpLearnset,
|
||||
gCleffaLevelUpLearnset,
|
||||
gIgglybuffLevelUpLearnset,
|
||||
gTogepiLevelUpLearnset,
|
||||
gTogeticLevelUpLearnset,
|
||||
gNatuLevelUpLearnset,
|
||||
gXatuLevelUpLearnset,
|
||||
gMareepLevelUpLearnset,
|
||||
gFlaaffyLevelUpLearnset,
|
||||
gAmpharosLevelUpLearnset,
|
||||
gBellossomLevelUpLearnset,
|
||||
gMarillLevelUpLearnset,
|
||||
gAzumarillLevelUpLearnset,
|
||||
gSudowoodoLevelUpLearnset,
|
||||
gPolitoedLevelUpLearnset,
|
||||
gHoppipLevelUpLearnset,
|
||||
gSkiploomLevelUpLearnset,
|
||||
gJumpluffLevelUpLearnset,
|
||||
gAipomLevelUpLearnset,
|
||||
gSunkernLevelUpLearnset,
|
||||
gSunfloraLevelUpLearnset,
|
||||
gYanmaLevelUpLearnset,
|
||||
gWooperLevelUpLearnset,
|
||||
gQuagsireLevelUpLearnset,
|
||||
gEspeonLevelUpLearnset,
|
||||
gUmbreonLevelUpLearnset,
|
||||
gMurkrowLevelUpLearnset,
|
||||
gSlowkingLevelUpLearnset,
|
||||
gMisdreavusLevelUpLearnset,
|
||||
gUnownLevelUpLearnset,
|
||||
gWobbuffetLevelUpLearnset,
|
||||
gGirafarigLevelUpLearnset,
|
||||
gPinecoLevelUpLearnset,
|
||||
gForretressLevelUpLearnset,
|
||||
gDunsparceLevelUpLearnset,
|
||||
gGligarLevelUpLearnset,
|
||||
gSteelixLevelUpLearnset,
|
||||
gSnubbullLevelUpLearnset,
|
||||
gGranbullLevelUpLearnset,
|
||||
gQwilfishLevelUpLearnset,
|
||||
gScizorLevelUpLearnset,
|
||||
gShuckleLevelUpLearnset,
|
||||
gHeracrossLevelUpLearnset,
|
||||
gSneaselLevelUpLearnset,
|
||||
gTeddiursaLevelUpLearnset,
|
||||
gUrsaringLevelUpLearnset,
|
||||
gSlugmaLevelUpLearnset,
|
||||
gMagcargoLevelUpLearnset,
|
||||
gSwinubLevelUpLearnset,
|
||||
gPiloswineLevelUpLearnset,
|
||||
gCorsolaLevelUpLearnset,
|
||||
gRemoraidLevelUpLearnset,
|
||||
gOctilleryLevelUpLearnset,
|
||||
gDelibirdLevelUpLearnset,
|
||||
gMantineLevelUpLearnset,
|
||||
gSkarmoryLevelUpLearnset,
|
||||
gHoundourLevelUpLearnset,
|
||||
gHoundoomLevelUpLearnset,
|
||||
gKingdraLevelUpLearnset,
|
||||
gPhanpyLevelUpLearnset,
|
||||
gDonphanLevelUpLearnset,
|
||||
gPorygon2LevelUpLearnset,
|
||||
gStantlerLevelUpLearnset,
|
||||
gSmeargleLevelUpLearnset,
|
||||
gTyrogueLevelUpLearnset,
|
||||
gHitmontopLevelUpLearnset,
|
||||
gSmoochumLevelUpLearnset,
|
||||
gElekidLevelUpLearnset,
|
||||
gMagbyLevelUpLearnset,
|
||||
gMiltankLevelUpLearnset,
|
||||
gBlisseyLevelUpLearnset,
|
||||
gRaikouLevelUpLearnset,
|
||||
gEnteiLevelUpLearnset,
|
||||
gSuicuneLevelUpLearnset,
|
||||
gLarvitarLevelUpLearnset,
|
||||
gPupitarLevelUpLearnset,
|
||||
gTyranitarLevelUpLearnset,
|
||||
gLugiaLevelUpLearnset,
|
||||
gHoOhLevelUpLearnset,
|
||||
gCelebiLevelUpLearnset,
|
||||
gSpecies252LevelUpLearnset,
|
||||
gSpecies253LevelUpLearnset,
|
||||
gSpecies254LevelUpLearnset,
|
||||
gSpecies255LevelUpLearnset,
|
||||
gSpecies256LevelUpLearnset,
|
||||
gSpecies257LevelUpLearnset,
|
||||
gSpecies258LevelUpLearnset,
|
||||
gSpecies259LevelUpLearnset,
|
||||
gSpecies260LevelUpLearnset,
|
||||
gSpecies261LevelUpLearnset,
|
||||
gSpecies262LevelUpLearnset,
|
||||
gSpecies263LevelUpLearnset,
|
||||
gSpecies264LevelUpLearnset,
|
||||
gSpecies265LevelUpLearnset,
|
||||
gSpecies266LevelUpLearnset,
|
||||
gSpecies267LevelUpLearnset,
|
||||
gSpecies268LevelUpLearnset,
|
||||
gSpecies269LevelUpLearnset,
|
||||
gSpecies270LevelUpLearnset,
|
||||
gSpecies271LevelUpLearnset,
|
||||
gSpecies272LevelUpLearnset,
|
||||
gSpecies273LevelUpLearnset,
|
||||
gSpecies274LevelUpLearnset,
|
||||
gSpecies275LevelUpLearnset,
|
||||
gSpecies276LevelUpLearnset,
|
||||
gTreeckoLevelUpLearnset,
|
||||
gGrovyleLevelUpLearnset,
|
||||
gSceptileLevelUpLearnset,
|
||||
gTorchicLevelUpLearnset,
|
||||
gCombuskenLevelUpLearnset,
|
||||
gBlazikenLevelUpLearnset,
|
||||
gMudkipLevelUpLearnset,
|
||||
gMarshtompLevelUpLearnset,
|
||||
gSwampertLevelUpLearnset,
|
||||
gPoochyenaLevelUpLearnset,
|
||||
gMightyenaLevelUpLearnset,
|
||||
gZigzagoonLevelUpLearnset,
|
||||
gLinooneLevelUpLearnset,
|
||||
gWurmpleLevelUpLearnset,
|
||||
gSilcoonLevelUpLearnset,
|
||||
gBeautiflyLevelUpLearnset,
|
||||
gCascoonLevelUpLearnset,
|
||||
gDustoxLevelUpLearnset,
|
||||
gLotadLevelUpLearnset,
|
||||
gLombreLevelUpLearnset,
|
||||
gLudicoloLevelUpLearnset,
|
||||
gSeedotLevelUpLearnset,
|
||||
gNuzleafLevelUpLearnset,
|
||||
gShiftryLevelUpLearnset,
|
||||
gNincadaLevelUpLearnset,
|
||||
gNinjaskLevelUpLearnset,
|
||||
gShedinjaLevelUpLearnset,
|
||||
gTaillowLevelUpLearnset,
|
||||
gSwellowLevelUpLearnset,
|
||||
gShroomishLevelUpLearnset,
|
||||
gBreloomLevelUpLearnset,
|
||||
gSpindaLevelUpLearnset,
|
||||
gWingullLevelUpLearnset,
|
||||
gPelipperLevelUpLearnset,
|
||||
gSurskitLevelUpLearnset,
|
||||
gMasquerainLevelUpLearnset,
|
||||
gWailmerLevelUpLearnset,
|
||||
gWailordLevelUpLearnset,
|
||||
gSkittyLevelUpLearnset,
|
||||
gDelcattyLevelUpLearnset,
|
||||
gKecleonLevelUpLearnset,
|
||||
gBaltoyLevelUpLearnset,
|
||||
gClaydolLevelUpLearnset,
|
||||
gNosepassLevelUpLearnset,
|
||||
gTorkoalLevelUpLearnset,
|
||||
gSableyeLevelUpLearnset,
|
||||
gBarboachLevelUpLearnset,
|
||||
gWhiscashLevelUpLearnset,
|
||||
gLuvdiscLevelUpLearnset,
|
||||
gCorphishLevelUpLearnset,
|
||||
gCrawdauntLevelUpLearnset,
|
||||
gFeebasLevelUpLearnset,
|
||||
gMiloticLevelUpLearnset,
|
||||
gCarvanhaLevelUpLearnset,
|
||||
gSharpedoLevelUpLearnset,
|
||||
gTrapinchLevelUpLearnset,
|
||||
gVibravaLevelUpLearnset,
|
||||
gFlygonLevelUpLearnset,
|
||||
gMakuhitaLevelUpLearnset,
|
||||
gHariyamaLevelUpLearnset,
|
||||
gElectrikeLevelUpLearnset,
|
||||
gManectricLevelUpLearnset,
|
||||
gNumelLevelUpLearnset,
|
||||
gCameruptLevelUpLearnset,
|
||||
gSphealLevelUpLearnset,
|
||||
gSealeoLevelUpLearnset,
|
||||
gWalreinLevelUpLearnset,
|
||||
gCacneaLevelUpLearnset,
|
||||
gCacturneLevelUpLearnset,
|
||||
gSnoruntLevelUpLearnset,
|
||||
gGlalieLevelUpLearnset,
|
||||
gLunatoneLevelUpLearnset,
|
||||
gSolrockLevelUpLearnset,
|
||||
gAzurillLevelUpLearnset,
|
||||
gSpoinkLevelUpLearnset,
|
||||
gGrumpigLevelUpLearnset,
|
||||
gPlusleLevelUpLearnset,
|
||||
gMinunLevelUpLearnset,
|
||||
gMawileLevelUpLearnset,
|
||||
gMedititeLevelUpLearnset,
|
||||
gMedichamLevelUpLearnset,
|
||||
gSwabluLevelUpLearnset,
|
||||
gAltariaLevelUpLearnset,
|
||||
gWynautLevelUpLearnset,
|
||||
gDuskullLevelUpLearnset,
|
||||
gDusclopsLevelUpLearnset,
|
||||
gRoseliaLevelUpLearnset,
|
||||
gSlakothLevelUpLearnset,
|
||||
gVigorothLevelUpLearnset,
|
||||
gSlakingLevelUpLearnset,
|
||||
gGulpinLevelUpLearnset,
|
||||
gSwalotLevelUpLearnset,
|
||||
gTropiusLevelUpLearnset,
|
||||
gWhismurLevelUpLearnset,
|
||||
gLoudredLevelUpLearnset,
|
||||
gExploudLevelUpLearnset,
|
||||
gClamperlLevelUpLearnset,
|
||||
gHuntailLevelUpLearnset,
|
||||
gGorebyssLevelUpLearnset,
|
||||
gAbsolLevelUpLearnset,
|
||||
gShuppetLevelUpLearnset,
|
||||
gBanetteLevelUpLearnset,
|
||||
gSeviperLevelUpLearnset,
|
||||
gZangooseLevelUpLearnset,
|
||||
gRelicanthLevelUpLearnset,
|
||||
gAronLevelUpLearnset,
|
||||
gLaironLevelUpLearnset,
|
||||
gAggronLevelUpLearnset,
|
||||
gCastformLevelUpLearnset,
|
||||
gVolbeatLevelUpLearnset,
|
||||
gIllumiseLevelUpLearnset,
|
||||
gLileepLevelUpLearnset,
|
||||
gCradilyLevelUpLearnset,
|
||||
gAnorithLevelUpLearnset,
|
||||
gArmaldoLevelUpLearnset,
|
||||
gRaltsLevelUpLearnset,
|
||||
gKirliaLevelUpLearnset,
|
||||
gGardevoirLevelUpLearnset,
|
||||
gBagonLevelUpLearnset,
|
||||
gShelgonLevelUpLearnset,
|
||||
gSalamenceLevelUpLearnset,
|
||||
gBeldumLevelUpLearnset,
|
||||
gMetangLevelUpLearnset,
|
||||
gMetagrossLevelUpLearnset,
|
||||
gRegirockLevelUpLearnset,
|
||||
gRegiceLevelUpLearnset,
|
||||
gRegisteelLevelUpLearnset,
|
||||
gKyogreLevelUpLearnset,
|
||||
gGroudonLevelUpLearnset,
|
||||
gRayquazaLevelUpLearnset,
|
||||
gLatiasLevelUpLearnset,
|
||||
gLatiosLevelUpLearnset,
|
||||
gJirachiLevelUpLearnset,
|
||||
gDeoxysLevelUpLearnset,
|
||||
gChimechoLevelUpLearnset
|
||||
};
|
||||
|
||||
#endif //POKEEMERALD_LEVEL_UP_LEARNSET_POINTERS_H
|
||||
5623
include/data/pokemon/level_up_learnsets.h
Normal file
5623
include/data/pokemon/level_up_learnsets.h
Normal file
File diff suppressed because it is too large
Load Diff
9393
include/data/pokemon/tmhm_learnsets.h
Normal file
9393
include/data/pokemon/tmhm_learnsets.h
Normal file
File diff suppressed because it is too large
Load Diff
176
include/data/pokemon/trainer_class_lookups.h
Normal file
176
include/data/pokemon/trainer_class_lookups.h
Normal file
@@ -0,0 +1,176 @@
|
||||
#ifndef POKEEMERALD_TRAINER_CLASS_LOOKUPS_H
|
||||
#define POKEEMERALD_TRAINER_CLASS_LOOKUPS_H
|
||||
|
||||
const u8 gFacilityClassToPicIndex[] =
|
||||
{
|
||||
TRAINER_PIC_HIKER, // FACILITY_CLASS_HIKER
|
||||
TRAINER_PIC_AQUA_GRUNT_M, // FACILITY_CLASS_TEAM_AQUA_1
|
||||
TRAINER_PIC_POKEMON_BREEDER_F, // FACILITY_CLASS_PKMN_BREEDER_1
|
||||
TRAINER_PIC_COOL_TRAINER_M, // FACILITY_CLASS_COOLTRAINER_1
|
||||
TRAINER_PIC_BIRD_KEEPER, // FACILITY_CLASS_BIRD_KEEPER
|
||||
TRAINER_PIC_COLLECTOR, // FACILITY_CLASS_COLLECTOR
|
||||
TRAINER_PIC_AQUA_GRUNT_F, // FACILITY_CLASS_TEAM_AQUA_2
|
||||
TRAINER_PIC_SWIMMER_M, // FACILITY_CLASS_SWIMMER_M
|
||||
TRAINER_PIC_MAGMA_GRUNT_M, // FACILITY_CLASS_TEAM_MAGMA_1
|
||||
TRAINER_PIC_EXPERT_M, // FACILITY_CLASS_EXPERT_1
|
||||
TRAINER_PIC_BLACK_BELT, // FACILITY_CLASS_BLACK_BELT
|
||||
TRAINER_PIC_AQUA_LEADER_ARCHIE, // FACILITY_CLASS_AQUA_LEADER
|
||||
TRAINER_PIC_HEX_MANIAC, // FACILITY_CLASS_HEX_MANIAC
|
||||
TRAINER_PIC_AROMA_LADY, // FACILITY_CLASS_AROMA_LADY
|
||||
TRAINER_PIC_RUIN_MANIAC, // FACILITY_CLASS_RUIN_MANIAC
|
||||
TRAINER_PIC_INTERVIEWER, // FACILITY_CLASS_INTERVIEWER
|
||||
TRAINER_PIC_TUBER_F, // FACILITY_CLASS_TUBER_1
|
||||
TRAINER_PIC_TUBER_M, // FACILITY_CLASS_TUBER_2
|
||||
TRAINER_PIC_COOL_TRAINER_F, // FACILITY_CLASS_COOLTRAINER_2
|
||||
TRAINER_PIC_LADY, // FACILITY_CLASS_LADY
|
||||
TRAINER_PIC_BEAUTY, // FACILITY_CLASS_BEAUTY
|
||||
TRAINER_PIC_RICH_BOY, // FACILITY_CLASS_RICH_BOY
|
||||
TRAINER_PIC_EXPERT_F, // FACILITY_CLASS_EXPERT_2
|
||||
TRAINER_PIC_POKEMANIAC, // FACILITY_CLASS_POKEMANIAC
|
||||
TRAINER_PIC_MAGMA_GRUNT_F, // FACILITY_CLASS_TEAM_MAGMA_2
|
||||
TRAINER_PIC_GUITARIST, // FACILITY_CLASS_GUITARIST
|
||||
TRAINER_PIC_KINDLER, // FACILITY_CLASS_KINDLER
|
||||
TRAINER_PIC_CAMPER, // FACILITY_CLASS_CAMPER
|
||||
TRAINER_PIC_PICNICKER, // FACILITY_CLASS_PICNICKER
|
||||
TRAINER_PIC_BUG_MANIAC, // FACILITY_CLASS_BUG_MANIAC
|
||||
TRAINER_PIC_PSYCHIC_M, // FACILITY_CLASS_PSYCHIC_1
|
||||
TRAINER_PIC_PSYCHIC_F, // FACILITY_CLASS_PSYCHIC_2
|
||||
TRAINER_PIC_GENTLEMAN, // FACILITY_CLASS_GENTLEMAN
|
||||
TRAINER_PIC_ELITE_FOUR_SIDNEY, // FACILITY_CLASS_ELITE_FOUR_1
|
||||
TRAINER_PIC_ELITE_FOUR_PHOEBE, // FACILITY_CLASS_ELITE_FOUR_2
|
||||
TRAINER_PIC_LEADER_ROXANNE, // FACILITY_CLASS_LEADER_1
|
||||
TRAINER_PIC_LEADER_BRAWLY, // FACILITY_CLASS_LEADER_2
|
||||
TRAINER_PIC_LEADER_TATE_AND_LIZA, // FACILITY_CLASS_LEADER_3
|
||||
TRAINER_PIC_SCHOOL_KID_M, // FACILITY_CLASS_SCHOOL_KID_1
|
||||
TRAINER_PIC_SCHOOL_KID_F, // FACILITY_CLASS_SCHOOL_KID_2
|
||||
TRAINER_PIC_SR_AND_JR, // FACILITY_CLASS_SR_AND_JR
|
||||
TRAINER_PIC_WINSTRATE_M, // FACILITY_CLASS_POKEFAN_1
|
||||
TRAINER_PIC_WINSTRATE_F, // FACILITY_CLASS_POKEFAN_2
|
||||
TRAINER_PIC_YOUNGSTER, // FACILITY_CLASS_YOUNGSTER
|
||||
TRAINER_PIC_CHAMPION_WALLACE, // FACILITY_CLASS_CHAMPION
|
||||
TRAINER_PIC_FISHERMAN, // FACILITY_CLASS_FISHERMAN
|
||||
TRAINER_PIC_CYCLING_TRIATHLETE_M, // FACILITY_CLASS_TRIATHLETE_1
|
||||
TRAINER_PIC_CYCLING_TRIATHLETE_F, // FACILITY_CLASS_TRIATHLETE_2
|
||||
TRAINER_PIC_RUNNING_TRIATHLETE_M, // FACILITY_CLASS_TRIATHLETE_3
|
||||
TRAINER_PIC_RUNNING_TRIATHLETE_F, // FACILITY_CLASS_TRIATHLETE_4
|
||||
TRAINER_PIC_SWIMMING_TRIATHLETE_M, // FACILITY_CLASS_TRIATHLETE_5
|
||||
TRAINER_PIC_SWIMMING_TRIATHLETE_F, // FACILITY_CLASS_TRIATHLETE_6
|
||||
TRAINER_PIC_DRAGON_TAMER, // FACILITY_CLASS_DRAGON_TAMER
|
||||
TRAINER_PIC_NINJA_BOY, // FACILITY_CLASS_NINJA_BOY
|
||||
TRAINER_PIC_BATTLE_GIRL, // FACILITY_CLASS_BATTLE_GIRL
|
||||
TRAINER_PIC_PARASOL_LADY, // FACILITY_CLASS_PARASOL_LADY
|
||||
TRAINER_PIC_SWIMMER_F, // FACILITY_CLASS_SWIMMER_F
|
||||
TRAINER_PIC_TWINS, // FACILITY_CLASS_TWINS
|
||||
TRAINER_PIC_SAILOR, // FACILITY_CLASS_SAILOR
|
||||
TRAINER_PIC_WALLY, // FACILITY_CLASS_PKMN_TRAINER_1
|
||||
TRAINER_PIC_BRENDAN, // FACILITY_CLASS_PKMN_TRAINER_2
|
||||
TRAINER_PIC_BRENDAN, // FACILITY_CLASS_PKMN_TRAINER_3
|
||||
TRAINER_PIC_BRENDAN, // FACILITY_CLASS_PKMN_TRAINER_4
|
||||
TRAINER_PIC_MAY, // FACILITY_CLASS_PKMN_TRAINER_5
|
||||
TRAINER_PIC_MAY, // FACILITY_CLASS_PKMN_TRAINER_6
|
||||
TRAINER_PIC_MAY, // FACILITY_CLASS_PKMN_TRAINER_7
|
||||
TRAINER_PIC_POKEMON_BREEDER_M, // FACILITY_CLASS_PKMN_BREEDER_2
|
||||
TRAINER_PIC_BUG_CATCHER, // FACILITY_CLASS_BUG_CATCHER
|
||||
TRAINER_PIC_POKEMON_RANGER_M, // FACILITY_CLASS_PKMN_RANGER_1
|
||||
TRAINER_PIC_POKEMON_RANGER_F, // FACILITY_CLASS_PKMN_RANGER_2
|
||||
TRAINER_PIC_MAGMA_LEADER_MAXIE, // FACILITY_CLASS_MAGMA_LEADER
|
||||
TRAINER_PIC_LASS, // FACILITY_CLASS_LASS
|
||||
TRAINER_PIC_YOUNG_COUPLE, // FACILITY_CLASS_YOUNG_COUPLE
|
||||
TRAINER_PIC_OLD_COUPLE, // FACILITY_CLASS_OLD_COUPLE
|
||||
TRAINER_PIC_SIS_AND_BRO, // FACILITY_CLASS_SIS_AND_BRO
|
||||
TRAINER_PIC_STEVEN, // FACILITY_CLASS_PKMN_TRAINER_8
|
||||
TRAINER_PIC_SALON_MAIDEN_ANABEL, // FACILITY_CLASS_SALON_MAIDEN
|
||||
TRAINER_PIC_DOME_ACE_TUCKER, // FACILITY_CLASS_DOME_ACE
|
||||
TRAINER_PIC_RED, // FACILITY_CLASS_PKMN_TRAINER_9
|
||||
TRAINER_PIC_LEAF, // FACILITY_CLASS_PKMN_TRAINER_10
|
||||
TRAINER_PIC_RUBY_SAPPHIRE_BRENDAN, // FACILITY_CLASS_PKMN_TRAINER_11
|
||||
TRAINER_PIC_RUBY_SAPPHIRE_MAY, // FACILITY_CLASS_PKMN_TRAINER_12
|
||||
};
|
||||
|
||||
const u8 gFacilityClassToTrainerClass[] =
|
||||
{
|
||||
TRAINER_CLASS_HIKER, // FACILITY_CLASS_HIKER
|
||||
TRAINER_CLASS_TEAM_AQUA, // FACILITY_CLASS_TEAM_AQUA_1
|
||||
TRAINER_CLASS_PKMN_BREEDER, // FACILITY_CLASS_PKMN_BREEDER_1
|
||||
TRAINER_CLASS_COOLTRAINER_1, // FACILITY_CLASS_COOLTRAINER_1
|
||||
TRAINER_CLASS_BIRD_KEEPER, // FACILITY_CLASS_BIRD_KEEPER
|
||||
TRAINER_CLASS_COLLECTOR, // FACILITY_CLASS_COLLECTOR
|
||||
TRAINER_CLASS_TEAM_AQUA, // FACILITY_CLASS_TEAM_AQUA_2
|
||||
TRAINER_CLASS_SWIMMER_M, // FACILITY_CLASS_SWIMMER_M
|
||||
TRAINER_CLASS_TEAM_MAGMA, // FACILITY_CLASS_TEAM_MAGMA_1
|
||||
TRAINER_CLASS_EXPERT, // FACILITY_CLASS_EXPERT_1
|
||||
TRAINER_CLASS_BLACK_BELT, // FACILITY_CLASS_BLACK_BELT
|
||||
TRAINER_CLASS_AQUA_LEADER, // FACILITY_CLASS_AQUA_LEADER
|
||||
TRAINER_CLASS_HEX_MANIAC, // FACILITY_CLASS_HEX_MANIAC
|
||||
TRAINER_CLASS_AROMA_LADY, // FACILITY_CLASS_AROMA_LADY
|
||||
TRAINER_CLASS_RUIN_MANIAC, // FACILITY_CLASS_RUIN_MANIAC
|
||||
TRAINER_CLASS_INTERVIEWER, // FACILITY_CLASS_INTERVIEWER
|
||||
TRAINER_CLASS_TUBER_1, // FACILITY_CLASS_TUBER_1
|
||||
TRAINER_CLASS_TUBER_2, // FACILITY_CLASS_TUBER_2
|
||||
TRAINER_CLASS_COOLTRAINER_1, // FACILITY_CLASS_COOLTRAINER_2
|
||||
TRAINER_CLASS_LADY, // FACILITY_CLASS_LADY
|
||||
TRAINER_CLASS_BEAUTY, // FACILITY_CLASS_BEAUTY
|
||||
TRAINER_CLASS_RICH_BOY, // FACILITY_CLASS_RICH_BOY
|
||||
TRAINER_CLASS_EXPERT, // FACILITY_CLASS_EXPERT_2
|
||||
TRAINER_CLASS_POKEMANIAC, // FACILITY_CLASS_POKEMANIAC
|
||||
TRAINER_CLASS_TEAM_MAGMA, // FACILITY_CLASS_TEAM_MAGMA_2
|
||||
TRAINER_CLASS_GUITARIST, // FACILITY_CLASS_GUITARIST
|
||||
TRAINER_CLASS_KINDLER, // FACILITY_CLASS_KINDLER
|
||||
TRAINER_CLASS_CAMPER, // FACILITY_CLASS_CAMPER
|
||||
TRAINER_CLASS_PICNICKER, // FACILITY_CLASS_PICNICKER
|
||||
TRAINER_CLASS_BUG_MANIAC, // FACILITY_CLASS_BUG_MANIAC
|
||||
TRAINER_CLASS_PSYCHIC, // FACILITY_CLASS_PSYCHIC_1
|
||||
TRAINER_CLASS_PSYCHIC, // FACILITY_CLASS_PSYCHIC_2
|
||||
TRAINER_CLASS_GENTLEMAN, // FACILITY_CLASS_GENTLEMAN
|
||||
TRAINER_CLASS_ELITE_FOUR, // FACILITY_CLASS_ELITE_FOUR_1
|
||||
TRAINER_CLASS_ELITE_FOUR, // FACILITY_CLASS_ELITE_FOUR_2
|
||||
TRAINER_CLASS_LEADER, // FACILITY_CLASS_LEADER_1
|
||||
TRAINER_CLASS_LEADER, // FACILITY_CLASS_LEADER_2
|
||||
TRAINER_CLASS_LEADER, // FACILITY_CLASS_LEADER_3
|
||||
TRAINER_CLASS_SCHOOL_KID, // FACILITY_CLASS_SCHOOL_KID_1
|
||||
TRAINER_CLASS_SCHOOL_KID, // FACILITY_CLASS_SCHOOL_KID_2
|
||||
TRAINER_CLASS_SR_AND_JR, // FACILITY_CLASS_SR_AND_JR
|
||||
TRAINER_CLASS_POKEFAN, // FACILITY_CLASS_POKEFAN_1
|
||||
TRAINER_CLASS_POKEFAN, // FACILITY_CLASS_POKEFAN_2
|
||||
TRAINER_CLASS_YOUNGSTER, // FACILITY_CLASS_YOUNGSTER
|
||||
TRAINER_CLASS_CHAMPION, // FACILITY_CLASS_CHAMPION
|
||||
TRAINER_CLASS_FISHERMAN, // FACILITY_CLASS_FISHERMAN
|
||||
TRAINER_CLASS_TRIATHLETE, // FACILITY_CLASS_TRIATHLETE_1
|
||||
TRAINER_CLASS_TRIATHLETE, // FACILITY_CLASS_TRIATHLETE_2
|
||||
TRAINER_CLASS_TRIATHLETE, // FACILITY_CLASS_TRIATHLETE_3
|
||||
TRAINER_CLASS_TRIATHLETE, // FACILITY_CLASS_TRIATHLETE_4
|
||||
TRAINER_CLASS_TRIATHLETE, // FACILITY_CLASS_TRIATHLETE_5
|
||||
TRAINER_CLASS_TRIATHLETE, // FACILITY_CLASS_TRIATHLETE_6
|
||||
TRAINER_CLASS_DRAGON_TAMER, // FACILITY_CLASS_DRAGON_TAMER
|
||||
TRAINER_CLASS_NINJA_BOY, // FACILITY_CLASS_NINJA_BOY
|
||||
TRAINER_CLASS_BATTLE_GIRL, // FACILITY_CLASS_BATTLE_GIRL
|
||||
TRAINER_CLASS_PARASOL_LADY, // FACILITY_CLASS_PARASOL_LADY
|
||||
TRAINER_CLASS_SWIMMER_F, // FACILITY_CLASS_SWIMMER_F
|
||||
TRAINER_CLASS_TWINS, // FACILITY_CLASS_TWINS
|
||||
TRAINER_CLASS_SAILOR, // FACILITY_CLASS_SAILOR
|
||||
TRAINER_CLASS_PKMN_TRAINER_3, // FACILITY_CLASS_PKMN_TRAINER_1
|
||||
TRAINER_CLASS_PKMN_TRAINER_3, // FACILITY_CLASS_PKMN_TRAINER_2
|
||||
TRAINER_CLASS_PKMN_TRAINER_3, // FACILITY_CLASS_PKMN_TRAINER_3
|
||||
TRAINER_CLASS_PKMN_TRAINER_3, // FACILITY_CLASS_PKMN_TRAINER_4
|
||||
TRAINER_CLASS_PKMN_TRAINER_3, // FACILITY_CLASS_PKMN_TRAINER_5
|
||||
TRAINER_CLASS_PKMN_TRAINER_3, // FACILITY_CLASS_PKMN_TRAINER_6
|
||||
TRAINER_CLASS_PKMN_TRAINER_3, // FACILITY_CLASS_PKMN_TRAINER_7
|
||||
TRAINER_CLASS_PKMN_BREEDER, // FACILITY_CLASS_PKMN_BREEDER_2
|
||||
TRAINER_CLASS_BUG_CATCHER, // FACILITY_CLASS_BUG_CATCHER
|
||||
TRAINER_CLASS_PKMN_RANGER, // FACILITY_CLASS_PKMN_RANGER_1
|
||||
TRAINER_CLASS_PKMN_RANGER, // FACILITY_CLASS_PKMN_RANGER_2
|
||||
TRAINER_CLASS_MAGMA_LEADER, // FACILITY_CLASS_MAGMA_LEADER
|
||||
TRAINER_CLASS_LASS, // FACILITY_CLASS_LASS
|
||||
TRAINER_CLASS_YOUNG_COUPLE, // FACILITY_CLASS_YOUNG_COUPLE
|
||||
TRAINER_CLASS_OLD_COUPLE, // FACILITY_CLASS_OLD_COUPLE
|
||||
TRAINER_CLASS_SIS_AND_BRO, // FACILITY_CLASS_SIS_AND_BRO
|
||||
TRAINER_CLASS_PKMN_TRAINER_3, // FACILITY_CLASS_PKMN_TRAINER_8
|
||||
TRAINER_CLASS_SALON_MAIDEN, // FACILITY_CLASS_SALON_MAIDEN
|
||||
TRAINER_CLASS_DOME_ACE, // FACILITY_CLASS_DOME_ACE
|
||||
TRAINER_CLASS_PKMN_TRAINER_3, // FACILITY_CLASS_PKMN_TRAINER_9
|
||||
TRAINER_CLASS_PKMN_TRAINER_3, // FACILITY_CLASS_PKMN_TRAINER_10
|
||||
TRAINER_CLASS_PKMN_TRAINER_4, // FACILITY_CLASS_PKMN_TRAINER_11
|
||||
TRAINER_CLASS_PKMN_TRAINER_4, // FACILITY_CLASS_PKMN_TRAINER_12
|
||||
};
|
||||
|
||||
#endif //POKEEMERALD_TRAINER_CLASS_LOOKUPS_H
|
||||
421
include/data/region_map/region_map_entries.h
Normal file
421
include/data/region_map/region_map_entries.h
Normal file
@@ -0,0 +1,421 @@
|
||||
#ifndef GUARD_DATA_REGION_MAP_REGION_MAP_ENTRIES_H
|
||||
#define GUARD_DATA_REGION_MAP_REGION_MAP_ENTRIES_H
|
||||
|
||||
static const u8 sMapName_LittlerootTown[] = _("LITTLEROOT TOWN");
|
||||
static const u8 sMapName_OldaleTown[] = _("OLDALE TOWN");
|
||||
static const u8 sMapName_DewfordTown[] = _("DEWFORD TOWN");
|
||||
static const u8 sMapName_LavaridgeTown[] = _("LAVARIDGE TOWN");
|
||||
static const u8 sMapName_FallarborTown[] = _("FALLARBOR TOWN");
|
||||
static const u8 sMapName_VerdanturfTown[] = _("VERDANTURF TOWN");
|
||||
static const u8 sMapName_PacifidlogTown[] = _("PACIFIDLOG TOWN");
|
||||
static const u8 sMapName_PetalburgCity[] = _("PETALBURG CITY");
|
||||
static const u8 sMapName_SlateportCity[] = _("SLATEPORT CITY");
|
||||
static const u8 sMapName_MauvilleCity[] = _("MAUVILLE CITY");
|
||||
static const u8 sMapName_RustboroCity[] = _("RUSTBORO CITY");
|
||||
static const u8 sMapName_FortreeCity[] = _("FORTREE CITY");
|
||||
static const u8 sMapName_LilycoveCity[] = _("LILYCOVE CITY");
|
||||
static const u8 sMapName_MossdeepCity[] = _("MOSSDEEP CITY");
|
||||
static const u8 sMapName_SootopolisCity[] = _("SOOTOPOLIS CITY");
|
||||
static const u8 sMapName_EverGrandeCity[] = _("EVER GRANDE CITY");
|
||||
static const u8 sMapName_Route101[] = _("ROUTE 101");
|
||||
static const u8 sMapName_Route102[] = _("ROUTE 102");
|
||||
static const u8 sMapName_Route103[] = _("ROUTE 103");
|
||||
static const u8 sMapName_Route104[] = _("ROUTE 104");
|
||||
static const u8 sMapName_Route105[] = _("ROUTE 105");
|
||||
static const u8 sMapName_Route106[] = _("ROUTE 106");
|
||||
static const u8 sMapName_Route107[] = _("ROUTE 107");
|
||||
static const u8 sMapName_Route108[] = _("ROUTE 108");
|
||||
static const u8 sMapName_Route109[] = _("ROUTE 109");
|
||||
static const u8 sMapName_Route110[] = _("ROUTE 110");
|
||||
static const u8 sMapName_Route111[] = _("ROUTE 111");
|
||||
static const u8 sMapName_Route112[] = _("ROUTE 112");
|
||||
static const u8 sMapName_Route113[] = _("ROUTE 113");
|
||||
static const u8 sMapName_Route114[] = _("ROUTE 114");
|
||||
static const u8 sMapName_Route115[] = _("ROUTE 115");
|
||||
static const u8 sMapName_Route116[] = _("ROUTE 116");
|
||||
static const u8 sMapName_Route117[] = _("ROUTE 117");
|
||||
static const u8 sMapName_Route118[] = _("ROUTE 118");
|
||||
static const u8 sMapName_Route119[] = _("ROUTE 119");
|
||||
static const u8 sMapName_Route120[] = _("ROUTE 120");
|
||||
static const u8 sMapName_Route121[] = _("ROUTE 121");
|
||||
static const u8 sMapName_Route122[] = _("ROUTE 122");
|
||||
static const u8 sMapName_Route123[] = _("ROUTE 123");
|
||||
static const u8 sMapName_Route124[] = _("ROUTE 124");
|
||||
static const u8 sMapName_Route125[] = _("ROUTE 125");
|
||||
static const u8 sMapName_Route126[] = _("ROUTE 126");
|
||||
static const u8 sMapName_Route127[] = _("ROUTE 127");
|
||||
static const u8 sMapName_Route128[] = _("ROUTE 128");
|
||||
static const u8 sMapName_Route129[] = _("ROUTE 129");
|
||||
static const u8 sMapName_Route130[] = _("ROUTE 130");
|
||||
static const u8 sMapName_Route131[] = _("ROUTE 131");
|
||||
static const u8 sMapName_Route132[] = _("ROUTE 132");
|
||||
static const u8 sMapName_Route133[] = _("ROUTE 133");
|
||||
static const u8 sMapName_Route134[] = _("ROUTE 134");
|
||||
static const u8 sMapName_Underwater[] = _("UNDERWATER");
|
||||
static const u8 sMapName_GraniteCave[] = _("GRANITE CAVE");
|
||||
static const u8 sMapName_MtChimney[] = _("MT. CHIMNEY");
|
||||
static const u8 sMapName_SafariZone[] = _("SAFARI ZONE");
|
||||
static const u8 sMapName_BattleFrontier[] = _("BATTLE FRONTIER");
|
||||
static const u8 sMapName_PetalburgWoods[] = _("PETALBURG WOODS");
|
||||
static const u8 sMapName_RusturfTunnel[] = _("RUSTURF TUNNEL");
|
||||
static const u8 sMapName_AbandonedShip[] = _("ABANDONED SHIP");
|
||||
static const u8 sMapName_NewMauville[] = _("NEW MAUVILLE");
|
||||
static const u8 sMapName_MeteorFalls[] = _("METEOR FALLS");
|
||||
static const u8 sMapName_MtPyre[] = _("MT. PYRE");
|
||||
// This was the Aqua or Magma hideout in Ruby/Sapphire, but each team has a
|
||||
// hideout in Emerald with their own new region map entries, and this name
|
||||
// doesn't seem to be used anymore.
|
||||
static const u8 sMapName_AquaHideoutOld[] = _("{AQUA} HIDEOUT");
|
||||
static const u8 sMapName_ShoalCave[] = _("SHOAL CAVE");
|
||||
static const u8 sMapName_SeafloorCavern[] = _("SEAFLOOR CAVERN");
|
||||
static const u8 sMapName_VictoryRoad[] = _("VICTORY ROAD");
|
||||
static const u8 sMapName_MirageIsland[] = _("MIRAGE ISLAND");
|
||||
static const u8 sMapName_CaveOfOrigin[] = _("CAVE OF ORIGIN");
|
||||
static const u8 sMapName_SouthernIsland[] = _("SOUTHERN ISLAND");
|
||||
static const u8 sMapName_FieryPath[] = _("FIERY PATH");
|
||||
static const u8 sMapName_JaggedPass[] = _("JAGGED PASS");
|
||||
static const u8 sMapName_SealedChamber[] = _("SEALED CHAMBER");
|
||||
static const u8 sMapName_ScorchedSlab[] = _("SCORCHED SLAB");
|
||||
static const u8 sMapName_IslandCave[] = _("ISLAND CAVE");
|
||||
static const u8 sMapName_DesertRuins[] = _("DESERT RUINS");
|
||||
static const u8 sMapName_AncientTomb[] = _("ANCIENT TOMB");
|
||||
static const u8 sMapName_InsideOfTruck[] = _("INSIDE OF TRUCK");
|
||||
static const u8 sMapName_SkyPillar[] = _("SKY PILLAR");
|
||||
static const u8 sMapName_SecretBase[] = _("SECRET BASE");
|
||||
static const u8 sMapName_None[] = _("");
|
||||
static const u8 sMapName_PalletTown[] = _("PALLET TOWN");
|
||||
static const u8 sMapName_ViridianCity[] = _("VIRIDIAN CITY");
|
||||
static const u8 sMapName_PewterCity[] = _("PEWTER CITY");
|
||||
static const u8 sMapName_CeruleanCity[] = _("CERULEAN CITY");
|
||||
static const u8 sMapName_LavenderTown[] = _("LAVENDER TOWN");
|
||||
static const u8 sMapName_VermilionCity[] = _("VERMILION CITY");
|
||||
static const u8 sMapName_CeladonCity[] = _("CELADON CITY");
|
||||
static const u8 sMapName_FuchsiaCity[] = _("FUCHSIA CITY");
|
||||
static const u8 sMapName_CinnabarIsland[] = _("CINNABAR ISLAND");
|
||||
static const u8 sMapName_IndigoPlateau[] = _("INDIGO PLATEAU");
|
||||
static const u8 sMapName_SaffronCity[] = _("SAFFRON CITY");
|
||||
static const u8 sMapName_Route4[] = _("ROUTE 4");
|
||||
static const u8 sMapName_Route10[] = _("ROUTE 10");
|
||||
static const u8 sMapName_Route1[] = _("ROUTE 1");
|
||||
static const u8 sMapName_Route2[] = _("ROUTE 2");
|
||||
static const u8 sMapName_Route3[] = _("ROUTE 3");
|
||||
static const u8 sMapName_Route4_2[] = _("ROUTE 4");
|
||||
static const u8 sMapName_Route5[] = _("ROUTE 5");
|
||||
static const u8 sMapName_Route6[] = _("ROUTE 6");
|
||||
static const u8 sMapName_Route7[] = _("ROUTE 7");
|
||||
static const u8 sMapName_Route8[] = _("ROUTE 8");
|
||||
static const u8 sMapName_Route9[] = _("ROUTE 9");
|
||||
static const u8 sMapName_Route10_2[] = _("ROUTE 10");
|
||||
static const u8 sMapName_Route11[] = _("ROUTE 11");
|
||||
static const u8 sMapName_Route12[] = _("ROUTE 12");
|
||||
static const u8 sMapName_Route13[] = _("ROUTE 13");
|
||||
static const u8 sMapName_Route14[] = _("ROUTE 14");
|
||||
static const u8 sMapName_Route15[] = _("ROUTE 15");
|
||||
static const u8 sMapName_Route16[] = _("ROUTE 16");
|
||||
static const u8 sMapName_Route17[] = _("ROUTE 17");
|
||||
static const u8 sMapName_Route18[] = _("ROUTE 18");
|
||||
static const u8 sMapName_Route19[] = _("ROUTE 19");
|
||||
static const u8 sMapName_Route20[] = _("ROUTE 20");
|
||||
static const u8 sMapName_Route21[] = _("ROUTE 21");
|
||||
static const u8 sMapName_Route22[] = _("ROUTE 22");
|
||||
static const u8 sMapName_Route23[] = _("ROUTE 23");
|
||||
static const u8 sMapName_Route24[] = _("ROUTE 24");
|
||||
static const u8 sMapName_Route25[] = _("ROUTE 25");
|
||||
static const u8 sMapName_ViridianForest[] = _("VIRIDIAN FOREST");
|
||||
static const u8 sMapName_MtMoon[] = _("MT. MOON");
|
||||
static const u8 sMapName_SSAnne[] = _("S.S. ANNE");
|
||||
static const u8 sMapName_UndergroundPath[] = _("UNDERGROUND PATH");
|
||||
static const u8 sMapName_UndergroundPath2[] = _("UNDERGROUND PATH");
|
||||
static const u8 sMapName_DiglettsCave[] = _("DIGLETT’S CAVE");
|
||||
static const u8 sMapName_KantoVictoryRoad[] = _("VICTORY ROAD");
|
||||
static const u8 sMapName_RocketHideout[] = _("ROCKET HIDEOUT");
|
||||
static const u8 sMapName_SilphCo[] = _("SILPH CO.");
|
||||
static const u8 sMapName_PokemonMansion[] = _("POKéMON MANSION");
|
||||
static const u8 sMapName_KantoSafariZone[] = _("SAFARI ZONE");
|
||||
static const u8 sMapName_PokemonLeague[] = _("POKéMON LEAGUE");
|
||||
static const u8 sMapName_RockTunnel[] = _("ROCK TUNNEL");
|
||||
static const u8 sMapName_SeafoamIslands[] = _("SEAFOAM ISLANDS");
|
||||
static const u8 sMapName_PokemonTower[] = _("POKéMON TOWER");
|
||||
static const u8 sMapName_CeruleanCave[] = _("CERULEAN CAVE");
|
||||
static const u8 sMapName_PowerPlant[] = _("POWER PLANT");
|
||||
static const u8 sMapName_OneIsland[] = _("ONE ISLAND");
|
||||
static const u8 sMapName_TwoIsland[] = _("TWO ISLAND");
|
||||
static const u8 sMapName_ThreeIsland[] = _("THREE ISLAND");
|
||||
static const u8 sMapName_FourIsland[] = _("FOUR ISLAND");
|
||||
static const u8 sMapName_FiveIsland[] = _("FIVE ISLAND");
|
||||
static const u8 sMapName_SevenIsland[] = _("SEVEN ISLAND");
|
||||
static const u8 sMapName_SixIsland[] = _("SIX ISLAND");
|
||||
static const u8 sMapName_KindleRoad[] = _("KINDLE ROAD");
|
||||
static const u8 sMapName_TreasureBeach[] = _("TREASURE BEACH");
|
||||
static const u8 sMapName_CapeBrink[] = _("CAPE BRINK");
|
||||
static const u8 sMapName_BondBridge[] = _("BOND BRIDGE");
|
||||
static const u8 sMapName_ThreeIslePort[] = _("THREE ISLE PORT");
|
||||
static const u8 sMapName_SeviiIsle6[] = _("SEVII ISLE 6");
|
||||
static const u8 sMapName_SeviiIsle7[] = _("SEVII ISLE 7");
|
||||
static const u8 sMapName_SeviiIsle8[] = _("SEVII ISLE 8");
|
||||
static const u8 sMapName_SeviiIsle9[] = _("SEVII ISLE 9");
|
||||
static const u8 sMapName_ResortGorgeous[] = _("RESORT GORGEOUS");
|
||||
static const u8 sMapName_WaterLabyrinth[] = _("WATER LABYRINTH");
|
||||
static const u8 sMapName_FiveIsleMeadow[] = _("FIVE ISLE MEADOW");
|
||||
static const u8 sMapName_MemorialPillar[] = _("MEMORIAL PILLAR");
|
||||
static const u8 sMapName_OutcastIsland[] = _("OUTCAST ISLAND");
|
||||
static const u8 sMapName_GreenPath[] = _("GREEN PATH");
|
||||
static const u8 sMapName_WaterPath[] = _("WATER PATH");
|
||||
static const u8 sMapName_RuinValley[] = _("RUIN VALLEY");
|
||||
static const u8 sMapName_TrainerTower[] = _("TRAINER TOWER");
|
||||
static const u8 sMapName_CanyonEntrance[] = _("CANYON ENTRANCE");
|
||||
static const u8 sMapName_SevaultCanyon[] = _("SEVAULT CANYON");
|
||||
static const u8 sMapName_TanobyRuins[] = _("TANOBY RUINS");
|
||||
static const u8 sMapName_SeviiIsle22[] = _("SEVII ISLE 22");
|
||||
static const u8 sMapName_SeviiIsle23[] = _("SEVII ISLE 23");
|
||||
static const u8 sMapName_SeviiIsle24[] = _("SEVII ISLE 24");
|
||||
static const u8 sMapName_NavelRock[] = _("NAVEL ROCK");
|
||||
static const u8 sMapName_MtEmber[] = _("MT. EMBER");
|
||||
static const u8 sMapName_BerryForest[] = _("BERRY FOREST");
|
||||
static const u8 sMapName_IcefallCave[] = _("ICEFALL CAVE");
|
||||
static const u8 sMapName_RocketWarehouse[] = _("ROCKET WAREHOUSE");
|
||||
static const u8 sMapName_TrainerTower2[] = _("TRAINER TOWER");
|
||||
static const u8 sMapName_DottedHole[] = _("DOTTED HOLE");
|
||||
static const u8 sMapName_LostCave[] = _("LOST CAVE");
|
||||
static const u8 sMapName_PatternBush[] = _("PATTERN BUSH");
|
||||
static const u8 sMapName_AlteringCave[] = _("ALTERING CAVE");
|
||||
static const u8 sMapName_TanobyChambers[] = _("TANOBY CHAMBERS");
|
||||
static const u8 sMapName_ThreeIslePath[] = _("THREE ISLE PATH");
|
||||
static const u8 sMapName_TanobyKey[] = _("TANOBY KEY");
|
||||
static const u8 sMapName_BirthIsland[] = _("BIRTH ISLAND");
|
||||
static const u8 sMapName_MoneanChamber[] = _("MONEAN CHAMBER");
|
||||
static const u8 sMapName_LiptooChamber[] = _("LIPTOO CHAMBER");
|
||||
static const u8 sMapName_WeepthChamber[] = _("WEEPTH CHAMBER");
|
||||
static const u8 sMapName_DilfordChamber[] = _("DILFORD CHAMBER");
|
||||
static const u8 sMapName_ScufibChamber[] = _("SCUFIB CHAMBER");
|
||||
static const u8 sMapName_RixyChamber[] = _("RIXY CHAMBER");
|
||||
static const u8 sMapName_ViapoisChamber[] = _("VIAPOIS CHAMBER");
|
||||
static const u8 sMapName_EmberSpa[] = _("EMBER SPA");
|
||||
static const u8 sMapName_SpecialArea[] = _("SPECIAL AREA");
|
||||
static const u8 sMapName_AquaHideout[] = _("AQUA HIDEOUT");
|
||||
static const u8 sMapName_MagmaHideout[] = _("MAGMA HIDEOUT");
|
||||
static const u8 sMapName_MirageTower[] = _("MIRAGE TOWER");
|
||||
static const u8 sMapName_FarawayIsland[] = _("FARAWAY ISLAND");
|
||||
static const u8 sMapName_ArtisanCave[] = _("ARTISAN CAVE");
|
||||
static const u8 sMapName_MarineCave[] = _("MARINE CAVE");
|
||||
static const u8 sMapName_TerraCave[] = _("TERRA CAVE");
|
||||
static const u8 sMapName_DesertUnderpass[] = _("DESERT UNDERPASS");
|
||||
static const u8 sMapName_TrainerHill[] = _("TRAINER HILL");
|
||||
|
||||
const struct RegionMapLocation gRegionMapEntries[] = {
|
||||
{ 4, 11, 1, 1, sMapName_LittlerootTown},
|
||||
{ 4, 9, 1, 1, sMapName_OldaleTown},
|
||||
{ 2, 14, 1, 1, sMapName_DewfordTown},
|
||||
{ 5, 3, 1, 1, sMapName_LavaridgeTown},
|
||||
{ 3, 0, 1, 1, sMapName_FallarborTown},
|
||||
{ 4, 6, 1, 1, sMapName_VerdanturfTown},
|
||||
{17, 10, 1, 1, sMapName_PacifidlogTown},
|
||||
{ 1, 9, 1, 1, sMapName_PetalburgCity},
|
||||
{ 8, 10, 1, 2, sMapName_SlateportCity},
|
||||
{ 8, 6, 2, 1, sMapName_MauvilleCity},
|
||||
{ 0, 5, 1, 2, sMapName_RustboroCity},
|
||||
{12, 0, 1, 1, sMapName_FortreeCity},
|
||||
{18, 3, 2, 1, sMapName_LilycoveCity},
|
||||
{24, 5, 2, 1, sMapName_MossdeepCity},
|
||||
{21, 7, 1, 1, sMapName_SootopolisCity},
|
||||
{27, 8, 1, 2, sMapName_EverGrandeCity},
|
||||
{ 4, 10, 1, 1, sMapName_Route101},
|
||||
{ 2, 9, 2, 1, sMapName_Route102},
|
||||
{ 4, 8, 4, 1, sMapName_Route103},
|
||||
{ 0, 7, 1, 3, sMapName_Route104},
|
||||
{ 0, 10, 1, 3, sMapName_Route105},
|
||||
{ 0, 13, 2, 1, sMapName_Route106},
|
||||
{ 3, 14, 3, 1, sMapName_Route107},
|
||||
{ 6, 14, 2, 1, sMapName_Route108},
|
||||
{ 8, 12, 1, 3, sMapName_Route109},
|
||||
{ 8, 7, 1, 3, sMapName_Route110},
|
||||
{ 8, 0, 1, 6, sMapName_Route111},
|
||||
{ 6, 3, 2, 1, sMapName_Route112},
|
||||
{ 4, 0, 4, 1, sMapName_Route113},
|
||||
{ 1, 0, 2, 3, sMapName_Route114},
|
||||
{ 0, 2, 1, 3, sMapName_Route115},
|
||||
{ 1, 5, 4, 1, sMapName_Route116},
|
||||
{ 5, 6, 3, 1, sMapName_Route117},
|
||||
{10, 6, 2, 1, sMapName_Route118},
|
||||
{11, 0, 1, 6, sMapName_Route119},
|
||||
{13, 0, 1, 4, sMapName_Route120},
|
||||
{14, 3, 4, 1, sMapName_Route121},
|
||||
{16, 4, 1, 2, sMapName_Route122},
|
||||
{12, 6, 5, 1, sMapName_Route123},
|
||||
{20, 3, 4, 3, sMapName_Route124},
|
||||
{24, 3, 2, 2, sMapName_Route125},
|
||||
{20, 6, 3, 3, sMapName_Route126},
|
||||
{23, 6, 3, 3, sMapName_Route127},
|
||||
{23, 9, 4, 1, sMapName_Route128},
|
||||
{24, 10, 2, 1, sMapName_Route129},
|
||||
{21, 10, 3, 1, sMapName_Route130},
|
||||
{18, 10, 3, 1, sMapName_Route131},
|
||||
{15, 10, 2, 1, sMapName_Route132},
|
||||
{12, 10, 3, 1, sMapName_Route133},
|
||||
{ 9, 10, 3, 1, sMapName_Route134},
|
||||
{20, 3, 4, 3, sMapName_Underwater},
|
||||
{20, 6, 3, 3, sMapName_Underwater},
|
||||
{23, 6, 3, 3, sMapName_Underwater},
|
||||
{23, 9, 4, 1, sMapName_Underwater},
|
||||
{21, 7, 1, 1, sMapName_Underwater},
|
||||
{ 1, 13, 1, 1, sMapName_GraniteCave},
|
||||
{ 6, 2, 1, 1, sMapName_MtChimney},
|
||||
{16, 2, 1, 1, sMapName_SafariZone},
|
||||
{22, 12, 1, 1, sMapName_BattleFrontier},
|
||||
{ 0, 8, 1, 1, sMapName_PetalburgWoods},
|
||||
{ 2, 5, 1, 1, sMapName_RusturfTunnel},
|
||||
{ 6, 14, 1, 1, sMapName_AbandonedShip},
|
||||
{ 8, 7, 1, 1, sMapName_NewMauville},
|
||||
{ 0, 3, 1, 1, sMapName_MeteorFalls},
|
||||
{ 1, 2, 1, 1, sMapName_MeteorFalls},
|
||||
{16, 4, 1, 1, sMapName_MtPyre},
|
||||
{19, 3, 1, 1, sMapName_AquaHideoutOld},
|
||||
{24, 4, 1, 1, sMapName_ShoalCave},
|
||||
{24, 9, 1, 1, sMapName_SeafloorCavern},
|
||||
{24, 9, 1, 1, sMapName_Underwater},
|
||||
{27, 9, 1, 1, sMapName_VictoryRoad},
|
||||
{17, 10, 1, 1, sMapName_MirageIsland},
|
||||
{21, 7, 1, 1, sMapName_CaveOfOrigin},
|
||||
{12, 14, 1, 1, sMapName_SouthernIsland},
|
||||
{ 6, 3, 1, 1, sMapName_FieryPath},
|
||||
{ 7, 3, 1, 1, sMapName_FieryPath},
|
||||
{ 6, 3, 1, 1, sMapName_JaggedPass},
|
||||
{ 7, 2, 1, 1, sMapName_JaggedPass},
|
||||
{11, 10, 1, 1, sMapName_SealedChamber},
|
||||
{11, 10, 1, 1, sMapName_Underwater},
|
||||
{13, 0, 1, 1, sMapName_ScorchedSlab},
|
||||
{ 0, 10, 1, 1, sMapName_IslandCave},
|
||||
{ 8, 3, 1, 1, sMapName_DesertRuins},
|
||||
{13, 2, 1, 1, sMapName_AncientTomb},
|
||||
{ 0, 0, 1, 1, sMapName_InsideOfTruck},
|
||||
{19, 10, 1, 1, sMapName_SkyPillar},
|
||||
{ 0, 0, 1, 1, sMapName_SecretBase},
|
||||
{ 0, 0, 1, 1, sMapName_None},
|
||||
{ 0, 0, 1, 1, sMapName_PalletTown},
|
||||
{ 0, 0, 1, 1, sMapName_ViridianCity},
|
||||
{ 0, 0, 1, 1, sMapName_PewterCity},
|
||||
{ 0, 0, 1, 1, sMapName_CeruleanCity},
|
||||
{ 0, 0, 1, 1, sMapName_LavenderTown},
|
||||
{ 0, 0, 1, 1, sMapName_VermilionCity},
|
||||
{ 0, 0, 1, 1, sMapName_CeladonCity},
|
||||
{ 0, 0, 1, 1, sMapName_FuchsiaCity},
|
||||
{ 0, 0, 1, 1, sMapName_CinnabarIsland},
|
||||
{ 0, 0, 1, 1, sMapName_IndigoPlateau},
|
||||
{ 0, 0, 1, 1, sMapName_SaffronCity},
|
||||
{ 0, 0, 1, 1, sMapName_Route4},
|
||||
{ 0, 0, 1, 1, sMapName_Route10},
|
||||
{ 0, 0, 1, 1, sMapName_Route1},
|
||||
{ 0, 0, 1, 1, sMapName_Route2},
|
||||
{ 0, 0, 1, 1, sMapName_Route3},
|
||||
{ 0, 0, 1, 1, sMapName_Route4_2},
|
||||
{ 0, 0, 1, 1, sMapName_Route5},
|
||||
{ 0, 0, 1, 1, sMapName_Route6},
|
||||
{ 0, 0, 1, 1, sMapName_Route7},
|
||||
{ 0, 0, 1, 1, sMapName_Route8},
|
||||
{ 0, 0, 1, 1, sMapName_Route9},
|
||||
{ 0, 0, 1, 1, sMapName_Route10_2},
|
||||
{ 0, 0, 1, 1, sMapName_Route11},
|
||||
{ 0, 0, 1, 1, sMapName_Route12},
|
||||
{ 0, 0, 1, 1, sMapName_Route13},
|
||||
{ 0, 0, 1, 1, sMapName_Route14},
|
||||
{ 0, 0, 1, 1, sMapName_Route15},
|
||||
{ 0, 0, 1, 1, sMapName_Route16},
|
||||
{ 0, 0, 1, 1, sMapName_Route17},
|
||||
{ 0, 0, 1, 1, sMapName_Route18},
|
||||
{ 0, 0, 1, 1, sMapName_Route19},
|
||||
{ 0, 0, 1, 1, sMapName_Route20},
|
||||
{ 0, 0, 1, 1, sMapName_Route21},
|
||||
{ 0, 0, 1, 1, sMapName_Route22},
|
||||
{ 0, 0, 1, 1, sMapName_Route23},
|
||||
{ 0, 0, 1, 1, sMapName_Route24},
|
||||
{ 0, 0, 1, 1, sMapName_Route25},
|
||||
{ 0, 0, 1, 1, sMapName_ViridianForest},
|
||||
{ 0, 0, 1, 1, sMapName_MtMoon},
|
||||
{ 0, 0, 1, 1, sMapName_SSAnne},
|
||||
{ 0, 0, 1, 1, sMapName_UndergroundPath},
|
||||
{ 0, 0, 1, 1, sMapName_UndergroundPath2},
|
||||
{ 0, 0, 1, 1, sMapName_DiglettsCave},
|
||||
{ 0, 0, 1, 1, sMapName_KantoVictoryRoad},
|
||||
{ 0, 0, 1, 1, sMapName_RocketHideout},
|
||||
{ 0, 0, 1, 1, sMapName_SilphCo},
|
||||
{ 0, 0, 1, 1, sMapName_PokemonMansion},
|
||||
{ 0, 0, 1, 1, sMapName_KantoSafariZone},
|
||||
{ 0, 0, 1, 1, sMapName_PokemonLeague},
|
||||
{ 0, 0, 1, 1, sMapName_RockTunnel},
|
||||
{ 0, 0, 1, 1, sMapName_SeafoamIslands},
|
||||
{ 0, 0, 1, 1, sMapName_PokemonTower},
|
||||
{ 0, 0, 1, 1, sMapName_CeruleanCave},
|
||||
{ 0, 0, 1, 1, sMapName_PowerPlant},
|
||||
{ 0, 0, 1, 1, sMapName_OneIsland},
|
||||
{ 0, 0, 1, 1, sMapName_TwoIsland},
|
||||
{ 0, 0, 1, 1, sMapName_ThreeIsland},
|
||||
{ 0, 0, 1, 1, sMapName_FourIsland},
|
||||
{ 0, 0, 1, 1, sMapName_FiveIsland},
|
||||
{ 0, 0, 1, 1, sMapName_SevenIsland},
|
||||
{ 0, 0, 1, 1, sMapName_SixIsland},
|
||||
{ 0, 0, 1, 1, sMapName_KindleRoad},
|
||||
{ 0, 0, 1, 1, sMapName_TreasureBeach},
|
||||
{ 0, 0, 1, 1, sMapName_CapeBrink},
|
||||
{ 0, 0, 1, 1, sMapName_BondBridge},
|
||||
{ 0, 0, 1, 1, sMapName_ThreeIslePort},
|
||||
{ 0, 0, 1, 1, sMapName_SeviiIsle6},
|
||||
{ 0, 0, 1, 1, sMapName_SeviiIsle7},
|
||||
{ 0, 0, 1, 1, sMapName_SeviiIsle8},
|
||||
{ 0, 0, 1, 1, sMapName_SeviiIsle9},
|
||||
{ 0, 0, 1, 1, sMapName_ResortGorgeous},
|
||||
{ 0, 0, 1, 1, sMapName_WaterLabyrinth},
|
||||
{ 0, 0, 1, 1, sMapName_FiveIsleMeadow},
|
||||
{ 0, 0, 1, 1, sMapName_MemorialPillar},
|
||||
{ 0, 0, 1, 1, sMapName_OutcastIsland},
|
||||
{ 0, 0, 1, 1, sMapName_GreenPath},
|
||||
{ 0, 0, 1, 1, sMapName_WaterPath},
|
||||
{ 0, 0, 1, 1, sMapName_RuinValley},
|
||||
{ 0, 0, 1, 1, sMapName_TrainerTower},
|
||||
{ 0, 0, 1, 1, sMapName_CanyonEntrance},
|
||||
{ 0, 0, 1, 1, sMapName_SevaultCanyon},
|
||||
{ 0, 0, 1, 1, sMapName_TanobyRuins},
|
||||
{ 0, 0, 1, 1, sMapName_SeviiIsle22},
|
||||
{ 0, 0, 1, 1, sMapName_SeviiIsle23},
|
||||
{ 0, 0, 1, 1, sMapName_SeviiIsle24},
|
||||
{ 0, 0, 1, 1, sMapName_NavelRock},
|
||||
{ 0, 0, 1, 1, sMapName_MtEmber},
|
||||
{ 0, 0, 1, 1, sMapName_BerryForest},
|
||||
{ 0, 0, 1, 1, sMapName_IcefallCave},
|
||||
{ 0, 0, 1, 1, sMapName_RocketWarehouse},
|
||||
{ 0, 0, 1, 1, sMapName_TrainerTower2},
|
||||
{ 0, 0, 1, 1, sMapName_DottedHole},
|
||||
{ 0, 0, 1, 1, sMapName_LostCave},
|
||||
{ 0, 0, 1, 1, sMapName_PatternBush},
|
||||
{ 0, 0, 1, 1, sMapName_AlteringCave},
|
||||
{ 0, 0, 1, 1, sMapName_TanobyChambers},
|
||||
{ 0, 0, 1, 1, sMapName_ThreeIslePath},
|
||||
{ 0, 0, 1, 1, sMapName_TanobyKey},
|
||||
{ 0, 0, 1, 1, sMapName_BirthIsland},
|
||||
{ 0, 0, 1, 1, sMapName_MoneanChamber},
|
||||
{ 0, 0, 1, 1, sMapName_LiptooChamber},
|
||||
{ 0, 0, 1, 1, sMapName_WeepthChamber},
|
||||
{ 0, 0, 1, 1, sMapName_DilfordChamber},
|
||||
{ 0, 0, 1, 1, sMapName_ScufibChamber},
|
||||
{ 0, 0, 1, 1, sMapName_RixyChamber},
|
||||
{ 0, 0, 1, 1, sMapName_ViapoisChamber},
|
||||
{ 0, 0, 1, 1, sMapName_EmberSpa},
|
||||
{ 0, 0, 1, 1, sMapName_SpecialArea},
|
||||
{19, 3, 1, 1, sMapName_AquaHideout},
|
||||
{ 6, 3, 1, 1, sMapName_MagmaHideout},
|
||||
{ 8, 2, 1, 1, sMapName_MirageTower},
|
||||
{ 0, 0, 1, 1, sMapName_BirthIsland},
|
||||
{ 0, 0, 1, 1, sMapName_FarawayIsland},
|
||||
{22, 12, 1, 1, sMapName_ArtisanCave},
|
||||
{ 0, 0, 1, 1, sMapName_MarineCave},
|
||||
{ 0, 0, 1, 1, sMapName_Underwater},
|
||||
{ 0, 0, 1, 1, sMapName_TerraCave},
|
||||
{ 0, 10, 1, 3, sMapName_Underwater},
|
||||
{24, 3, 2, 2, sMapName_Underwater},
|
||||
{24, 10, 2, 1, sMapName_Underwater},
|
||||
{ 2, 0, 1, 1, sMapName_DesertUnderpass},
|
||||
{ 6, 8, 1, 1, sMapName_AlteringCave},
|
||||
{ 0, 0, 1, 1, sMapName_NavelRock},
|
||||
{ 8, 4, 1, 1, sMapName_TrainerHill}
|
||||
};
|
||||
|
||||
#endif //GUARD_DATA_REGION_MAP_REGION_MAP_ENTRIES_H
|
||||
27
include/daycare.h
Normal file
27
include/daycare.h
Normal file
@@ -0,0 +1,27 @@
|
||||
#ifndef GUARD_DAYCARE_H
|
||||
#define GUARD_DAYCARE_H
|
||||
|
||||
#define EGG_HATCH_LEVEL 5
|
||||
|
||||
u8 *GetMonNick(struct Pokemon *mon, u8 *dest);
|
||||
u8 *GetBoxMonNick(struct BoxPokemon *mon, u8 *dest);
|
||||
u8 CountPokemonInDaycare(struct DayCare *daycare);
|
||||
void InitDaycareMailRecordMixing(struct DayCare *daycare, struct RecordMixingDayCareMail *daycareMail);
|
||||
void StoreSelectedPokemonInDaycare(void);
|
||||
u16 TakePokemonFromDaycare(void);
|
||||
void GetDaycareCost(void);
|
||||
u8 GetNumLevelsGainedFromDaycare(void);
|
||||
void TriggerPendingDaycareEgg(void);
|
||||
void RejectEggFromDayCare(void);
|
||||
void CreateEgg(struct Pokemon *mon, u16 species, bool8 setHotSpringsLocation);
|
||||
void GiveEggFromDaycare(void);
|
||||
bool8 DoEggActions_CheckHatch(void);
|
||||
u16 GetSelectedMonNickAndSpecies(void);
|
||||
void GetDaycareMonNicknames(void);
|
||||
u8 GetDaycareState(void);
|
||||
void SetDaycareCompatibilityString(void);
|
||||
bool8 NameHasGenderSymbol(const u8 *name, u8 genderRatio);
|
||||
void ShowDaycareLevelMenu(void);
|
||||
void ChooseSendDaycareMon(void);
|
||||
|
||||
#endif // GUARD_DAYCARE_H
|
||||
@@ -3,6 +3,8 @@
|
||||
|
||||
#include "sprite.h"
|
||||
|
||||
extern u8 gDecompressionBuffer[0x4000];
|
||||
|
||||
void LZDecompressWram(const void *src, void *dest);
|
||||
void LZDecompressVram(const void *src, void *dest);
|
||||
|
||||
@@ -26,4 +28,6 @@ void LoadSpecialPokePic(const struct CompressedSpriteSheet *src, void *dest, s32
|
||||
void LoadSpecialPokePic_2(const struct CompressedSpriteSheet *src, void *dest, s32 species, u32 personality, bool8 isFrontPic);
|
||||
void LoadSpecialPokePic_DontHandleDeoxys(const struct CompressedSpriteSheet *src, void *dest, s32 species, u32 personality, bool8 isFrontPic);
|
||||
|
||||
u32 sub_8034974(const u8 *ptr);
|
||||
|
||||
#endif // GUARD_DECOMPRESS_H
|
||||
|
||||
@@ -1,130 +1,6 @@
|
||||
#ifndef GUARD_DECORATION_H
|
||||
#define GUARD_DECORATION_H
|
||||
|
||||
enum DecoId {
|
||||
/*000*/ DECOR_NONE,
|
||||
/*001*/ DECOR_SMALL_DESK,
|
||||
/*002*/ DECOR_POKEMON_DESK,
|
||||
/*003*/ DECOR_HEAVY_DESK,
|
||||
/*004*/ DECOR_RAGGED_DESK,
|
||||
/*005*/ DECOR_COMFORT_DESK,
|
||||
/*006*/ DECOR_PRETTY_DESK,
|
||||
/*007*/ DECOR_BRICK_DESK,
|
||||
/*008*/ DECOR_CAMP_DESK,
|
||||
/*009*/ DECOR_HARD_DESK,
|
||||
/*010*/ DECOR_SMALL_CHAIR,
|
||||
/*011*/ DECOR_POKEMON_CHAIR,
|
||||
/*012*/ DECOR_HEAVY_CHAIR,
|
||||
/*013*/ DECOR_PRETTY_CHAIR,
|
||||
/*014*/ DECOR_COMFORT_CHAIR,
|
||||
/*015*/ DECOR_RAGGED_CHAIR,
|
||||
/*016*/ DECOR_BRICK_CHAIR,
|
||||
/*017*/ DECOR_CAMP_CHAIR,
|
||||
/*018*/ DECOR_HARD_CHAIR,
|
||||
/*019*/ DECOR_RED_PLANT,
|
||||
/*020*/ DECOR_TROPICAL_PLANT,
|
||||
/*021*/ DECOR_PRETTY_FLOWERS,
|
||||
/*022*/ DECOR_COLORFUL_PLANT,
|
||||
/*023*/ DECOR_BIG_PLANT,
|
||||
/*024*/ DECOR_GORGEOUS_PLANT,
|
||||
/*025*/ DECOR_RED_BRICK,
|
||||
/*026*/ DECOR_YELLOW_BRICK,
|
||||
/*027*/ DECOR_BLUE_BRICK,
|
||||
/*028*/ DECOR_RED_BALLOON,
|
||||
/*029*/ DECOR_BLUE_BALLOON,
|
||||
/*030*/ DECOR_YELLOW_BALLOON,
|
||||
/*031*/ DECOR_RED_TENT,
|
||||
/*032*/ DECOR_BLUE_TENT,
|
||||
/*033*/ DECOR_SOLID_BOARD,
|
||||
/*034*/ DECOR_SLIDE,
|
||||
/*035*/ DECOR_FENCE_LENGTH,
|
||||
/*036*/ DECOR_FENCE_WIDTH,
|
||||
/*037*/ DECOR_TIRE,
|
||||
/*038*/ DECOR_STAND,
|
||||
/*039*/ DECOR_MUD_BALL,
|
||||
/*040*/ DECOR_BREAKABLE_DOOR,
|
||||
/*041*/ DECOR_SAND_ORNAMENT,
|
||||
/*042*/ DECOR_SILVER_SHIELD,
|
||||
/*043*/ DECOR_GOLD_SHIELD,
|
||||
/*044*/ DECOR_GLASS_ORNAMENT,
|
||||
/*045*/ DECOR_TV,
|
||||
/*046*/ DECOR_ROUND_TV,
|
||||
/*047*/ DECOR_CUTE_TV,
|
||||
/*048*/ DECOR_GLITTER_MAT,
|
||||
/*049*/ DECOR_JUMP_MAT,
|
||||
/*050*/ DECOR_SPIN_MAT,
|
||||
/*051*/ DECOR_C_LOW_NOTE_MAT,
|
||||
/*052*/ DECOR_D_NOTE_MAT,
|
||||
/*053*/ DECOR_E_NOTE_MAT,
|
||||
/*054*/ DECOR_F_NOTE_MAT,
|
||||
/*055*/ DECOR_G_NOTE_MAT,
|
||||
/*056*/ DECOR_A_NOTE_MAT,
|
||||
/*057*/ DECOR_B_NOTE_MAT,
|
||||
/*058*/ DECOR_C_HIGH_NOTE_MAT,
|
||||
/*059*/ DECOR_SURF_MAT,
|
||||
/*060*/ DECOR_THUNDER_MAT,
|
||||
/*061*/ DECOR_FIRE_BLAST_MAT,
|
||||
/*062*/ DECOR_POWDER_SNOW_MAT,
|
||||
/*063*/ DECOR_ATTRACT_MAT,
|
||||
/*064*/ DECOR_FISSURE_MAT,
|
||||
/*065*/ DECOR_SPIKES_MAT,
|
||||
/*066*/ DECOR_BALL_POSTER,
|
||||
/*067*/ DECOR_GREEN_POSTER,
|
||||
/*068*/ DECOR_RED_POSTER,
|
||||
/*069*/ DECOR_BLUE_POSTER,
|
||||
/*070*/ DECOR_CUTE_POSTER,
|
||||
/*071*/ DECOR_PIKA_POSTER,
|
||||
/*072*/ DECOR_LONG_POSTER,
|
||||
/*073*/ DECOR_SEA_POSTER,
|
||||
/*074*/ DECOR_SKY_POSTER,
|
||||
/*075*/ DECOR_KISS_POSTER,
|
||||
/*076*/ DECOR_PICHU_DOLL,
|
||||
/*077*/ DECOR_PIKACHU_DOLL,
|
||||
/*078*/ DECOR_MARILL_DOLL,
|
||||
/*079*/ DECOR_TOGEPI_DOLL,
|
||||
/*080*/ DECOR_CYNDAQUIL_DOLL,
|
||||
/*081*/ DECOR_CHIKORITA_DOLL,
|
||||
/*082*/ DECOR_TOTODILE_DOLL,
|
||||
/*083*/ DECOR_JIGGLYPUFF_DOLL,
|
||||
/*084*/ DECOR_MEOWTH_DOLL,
|
||||
/*085*/ DECOR_CLEFAIRY_DOLL,
|
||||
/*086*/ DECOR_DITTO_DOLL,
|
||||
/*087*/ DECOR_SMOOCHUM_DOLL,
|
||||
/*088*/ DECOR_TREECKO_DOLL,
|
||||
/*089*/ DECOR_TORCHIC_DOLL,
|
||||
/*090*/ DECOR_MUDKIP_DOLL,
|
||||
/*091*/ DECOR_DUSKULL_DOLL,
|
||||
/*092*/ DECOR_WYNAUT_DOLL,
|
||||
/*093*/ DECOR_BALTOY_DOLL,
|
||||
/*094*/ DECOR_KECLEON_DOLL,
|
||||
/*095*/ DECOR_AZURILL_DOLL,
|
||||
/*096*/ DECOR_SKITTY_DOLL,
|
||||
/*097*/ DECOR_SWABLU_DOLL,
|
||||
/*098*/ DECOR_GULPIN_DOLL,
|
||||
/*099*/ DECOR_LOTAD_DOLL,
|
||||
/*100*/ DECOR_SEEDOT_DOLL,
|
||||
/*101*/ DECOR_PIKA_CUSHION,
|
||||
/*102*/ DECOR_ROUND_CUSHION,
|
||||
/*103*/ DECOR_KISS_CUSHION,
|
||||
/*104*/ DECOR_ZIGZAG_CUSHION,
|
||||
/*105*/ DECOR_SPIN_CUSHION,
|
||||
/*106*/ DECOR_DIAMOND_CUSHION,
|
||||
/*107*/ DECOR_BALL_CUSHION,
|
||||
/*108*/ DECOR_GRASS_CUSHION,
|
||||
/*109*/ DECOR_FIRE_CUSHION,
|
||||
/*110*/ DECOR_WATER_CUSHION,
|
||||
/*111*/ DECOR_SNORLAX_DOLL,
|
||||
/*112*/ DECOR_RHYDON_DOLL,
|
||||
/*113*/ DECOR_LAPRAS_DOLL,
|
||||
/*114*/ DECOR_VENUSAUR_DOLL,
|
||||
/*115*/ DECOR_CHARIZARD_DOLL,
|
||||
/*116*/ DECOR_BLASTOISE_DOLL,
|
||||
/*117*/ DECOR_WAILMER_DOLL,
|
||||
/*118*/ DECOR_REGIROCK_DOLL,
|
||||
/*119*/ DECOR_REGICE_DOLL,
|
||||
/*120*/ DECOR_REGISTEEL_DOLL
|
||||
};
|
||||
|
||||
enum DecorPerm {
|
||||
/*
|
||||
* The nomenclature here describes collision and placement permissions, in that order.
|
||||
|
||||
@@ -3,5 +3,6 @@
|
||||
|
||||
void InitDewfordTrend(void);
|
||||
void UpdateDewfordTrendPerDay(u16);
|
||||
void UpdateDewfordTrendPerDay(u16 days);
|
||||
|
||||
#endif // GUARD_DEWFORDTREND_H
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
|
||||
void ClearDma3Requests(void);
|
||||
void ProcessDma3Requests(void);
|
||||
int RequestDma3Copy(const void *src, void *dest, u16 size, u8 mode);
|
||||
int RequestDma3Fill(s32 value, void *dest, u16 size, u8 mode);
|
||||
int CheckForSpaceForDma3Request(s16 index);
|
||||
s16 RequestDma3Copy(const void *src, void *dest, u16 size, u8 mode);
|
||||
s16 RequestDma3Fill(s32 value, void *dest, u16 size, u8 mode);
|
||||
s16 CheckForSpaceForDma3Request(s16 index);
|
||||
|
||||
#endif // GUARD_DMA3_H
|
||||
|
||||
10
include/egg_hatch.h
Normal file
10
include/egg_hatch.h
Normal file
@@ -0,0 +1,10 @@
|
||||
#ifndef GUARD_EGG_HATCH_H
|
||||
#define GUARD_EGG_HATCH_H
|
||||
|
||||
void ScriptHatchMon(void);
|
||||
bool8 sub_8071614(void);
|
||||
void EggHatch(void);
|
||||
u8 GetEggStepsToSubtract(void);
|
||||
u16 sub_80722E0(void);
|
||||
|
||||
#endif // GUARD_EGG_HATCH_H
|
||||
@@ -1,8 +1,8 @@
|
||||
#ifndef GUARD_EVENT_DATA_H
|
||||
#define GUARD_EVENT_DATA_H
|
||||
|
||||
#include "flags.h"
|
||||
#include "vars.h"
|
||||
#include "constants/flags.h"
|
||||
#include "constants/vars.h"
|
||||
|
||||
void InitEventData(void);
|
||||
void ClearTempFieldEventData(void);
|
||||
@@ -42,11 +42,11 @@ extern u16 gSpecialVar_0x8008;
|
||||
extern u16 gSpecialVar_0x8009;
|
||||
extern u16 gSpecialVar_0x800A;
|
||||
extern u16 gSpecialVar_0x800B;
|
||||
extern u16 gScriptResult;
|
||||
extern u16 gScriptLastTalked;
|
||||
extern u16 gScriptFacing;
|
||||
extern u16 gSpecialVar_0x8012;
|
||||
extern u16 gSpecialVar_0x8013;
|
||||
extern u16 gSpecialVar_Result;
|
||||
extern u16 gSpecialVar_LastTalked;
|
||||
extern u16 gSpecialVar_Facing;
|
||||
extern u16 gSpecialVar_MonBoxId;
|
||||
extern u16 gSpecialVar_MonBoxPos;
|
||||
extern u16 gSpecialVar_0x8014;
|
||||
|
||||
#endif // GUARD_EVENT_DATA_H
|
||||
|
||||
40
include/event_scripts.h
Executable file → Normal file
40
include/event_scripts.h
Executable file → Normal file
@@ -7,12 +7,20 @@
|
||||
|
||||
extern const u8 gUnknown_0823B4E8[];
|
||||
extern const u8 gUnknown_0823B5E9[];
|
||||
extern const u8 gUnknown_08275BB7[];
|
||||
extern const u8 gUnknown_08275D0C[];
|
||||
extern const u8 gUnknown_08275D1F[];
|
||||
extern const u8 gUnknown_08275D2E[];
|
||||
extern const u8 gUnknown_082766A2[];
|
||||
extern const u8 gUnknown_082766A6[];
|
||||
extern const u8 EventScript_TestSignpostMsg[];
|
||||
extern const u8 EventScript_TryGetTrainerScript[];
|
||||
extern const u8 EventScript_275BB7[];
|
||||
extern const u8 EventScript_275D0C[];
|
||||
extern const u8 EventScript_275D1F[];
|
||||
extern const u8 EventScript_275D2E[];
|
||||
extern const u8 EventScript_271354[];
|
||||
extern const u8 EventScript_2713C2[];
|
||||
extern const u8 EventScript_TryDoDoubleTrainerBattle[];
|
||||
extern const u8 EventScript_271362[];
|
||||
extern const u8 EventScript_TryDoDoubleRematchBattle[];
|
||||
extern const u8 EventScript_2713D1[];
|
||||
extern const u8 EventScript_2766A2[];
|
||||
extern const u8 EventScript_2766A6[];
|
||||
|
||||
extern const u8 gTVBravoTrainerText00[];
|
||||
extern const u8 gTVBravoTrainerText01[];
|
||||
@@ -362,14 +370,14 @@ extern const u8 gPokeNewsTextLilycove_Ending[];
|
||||
extern const u8 gPokeNewsTextBlendMaster_Upcoming[];
|
||||
extern const u8 gPokeNewsTextBlendMaster_Ongoing[];
|
||||
extern const u8 gPokeNewsTextBlendMaster_Ending[];
|
||||
extern const u8 gUnknown_08274966[];
|
||||
extern const u8 gUnknown_08274D13[];
|
||||
extern const u8 gUnknown_08274FFE[];
|
||||
extern const u8 gUnknown_08275367[];
|
||||
extern const u8 gUnknown_082756C7[];
|
||||
extern const u8 gUnknown_08274B24[];
|
||||
extern const u8 gUnknown_08274E75[];
|
||||
extern const u8 gUnknown_082751E1[];
|
||||
extern const u8 gUnknown_082754F6[];
|
||||
extern const u8 gUnknown_082758CC[];
|
||||
extern const u8 SecretBase_RedCave1_Text_274966[];
|
||||
extern const u8 SecretBase_RedCave1_Text_274D13[];
|
||||
extern const u8 SecretBase_RedCave1_Text_274FFE[];
|
||||
extern const u8 SecretBase_RedCave1_Text_275367[];
|
||||
extern const u8 SecretBase_RedCave1_Text_2756C7[];
|
||||
extern const u8 SecretBase_RedCave1_Text_274B24[];
|
||||
extern const u8 SecretBase_RedCave1_Text_274E75[];
|
||||
extern const u8 SecretBase_RedCave1_Text_2751E1[];
|
||||
extern const u8 SecretBase_RedCave1_Text_2754F6[];
|
||||
extern const u8 SecretBase_RedCave1_Text_2758CC[];
|
||||
#endif //GUARD_EVENT_SCRIPTS_H
|
||||
|
||||
@@ -24,5 +24,7 @@ extern u16 gUnknown_03005DE8;
|
||||
|
||||
void DrawWholeMapView(void);
|
||||
void CurrentMapDrawMetatileAt(int x, int y);
|
||||
void sub_8089C08(s16 *a0, s16 *a1);
|
||||
void DrawDoorMetatileAt(int x, int y, u16 *arr);
|
||||
|
||||
#endif //GUARD_FIELD_CAMERA_H
|
||||
|
||||
@@ -1,6 +1,21 @@
|
||||
#ifndef GUARD_FIELDDOOR_H
|
||||
#define GUARD_FIELDDOOR_H
|
||||
|
||||
struct DoorGraphics
|
||||
{
|
||||
u16 metatileNum;
|
||||
u8 sound;
|
||||
u8 size;
|
||||
const void *tiles;
|
||||
const void *palette;
|
||||
};
|
||||
|
||||
struct DoorAnimFrame
|
||||
{
|
||||
u8 time;
|
||||
u16 offset;
|
||||
};
|
||||
|
||||
void FieldSetDoorOpened(u32, u32);
|
||||
void FieldSetDoorClosed(u32, u32);
|
||||
s8 FieldAnimateDoorClose(u32, u32);
|
||||
|
||||
@@ -69,9 +69,15 @@ enum FieldEffectScriptIdx
|
||||
FLDEFF_USE_TELEPORT
|
||||
};
|
||||
|
||||
u8 FieldEffectStart(u8);
|
||||
bool8 FieldEffectActiveListContains(u8 id);
|
||||
|
||||
extern u32 gFieldEffectArguments[8];
|
||||
|
||||
u32 FieldEffectStart(u8);
|
||||
bool8 FieldEffectActiveListContains(u8 id);
|
||||
void sub_80B69DC(void);
|
||||
void FieldEffectStop(struct Sprite *sprite, u8 id);
|
||||
u8 CreateTrainerSprite(u8 trainerSpriteID, s16 x, s16 y, u8 subpriority, u8 *buffer);
|
||||
void sub_80B7FC8(void);
|
||||
void FieldEffectActiveListRemove(u8 id);
|
||||
void MultiplyInvertedPaletteRGBComponents(u16, u8, u8, u8);
|
||||
|
||||
#endif //GUARD_FIELD_EFFECTS_H
|
||||
|
||||
@@ -12,5 +12,6 @@
|
||||
// Exported ROM declarations
|
||||
u8 sub_8154228(void);
|
||||
bool8 sub_8155DA0(struct MapObject *);
|
||||
void sub_8155D78(struct MapObject *);
|
||||
|
||||
#endif //GUARD_FIELD_EFFECT_HELPERS_H
|
||||
|
||||
14
include/field_map_obj.h
Executable file → Normal file
14
include/field_map_obj.h
Executable file → Normal file
@@ -60,7 +60,7 @@ void sub_808E82C(u8, u8, u8, s16, s16);
|
||||
void sub_808E7E4(u8, u8, u8);
|
||||
void sub_808E78C(u8, u8, u8, u8);
|
||||
void sub_808E75C(s16, s16);
|
||||
void FieldObjectGetLocalIdAndMap(struct MapObject *, u8 *, u8 *, u8 *);
|
||||
void FieldObjectGetLocalIdAndMap(struct MapObject *mapObject, void *localId, void *mapNum, void *mapGroup);
|
||||
void npc_coords_shift(struct MapObject *, s16, s16);
|
||||
void sub_808EB08(struct MapObject *, s16, s16);
|
||||
void sub_808F254(u8, u8, u8);
|
||||
@@ -76,6 +76,18 @@ void MoveCoords(u8, s16 *, s16 *);
|
||||
bool8 FieldObjectIsSpecialAnimActive(struct MapObject *);
|
||||
u8 FieldObjectClearAnimIfSpecialAnimFinished(struct MapObject *);
|
||||
u8 GetFieldObjectIdByXYZ(u16 x, u16 y, u8 z);
|
||||
void npc_set_running_behaviour_etc(struct MapObject *mapObject, u8 animPattern);
|
||||
u8 npc_running_behaviour_by_direction(u8 direction);
|
||||
const u8 *GetFieldObjectScriptPointerByFieldObjectId(u8 mapObjectId);
|
||||
u8 sub_8092C8C(struct MapObject *mapObject, s16 x, s16 y, u8 direction);
|
||||
u8 GetFaceDirectionAnimId(u32);
|
||||
u8 GetGoSpeed0AnimId(u32);
|
||||
u8 sub_80934BC(u32);
|
||||
bool8 FieldObjectSetSpecialAnim(struct MapObject *mapObject, u8 specialAnimId);
|
||||
bool8 FieldObjectIsSpecialAnimOrDirectionSequenceAnimActive(struct MapObject *mapObject);
|
||||
u8 FieldObjectCheckIfSpecialAnimFinishedOrInactive(struct MapObject *mapObject);
|
||||
void sub_808F23C(const struct MapObject *mapObject, u8 movementType);
|
||||
void sub_808F208(const struct MapObject *mapObject);
|
||||
|
||||
// Exported data declarations
|
||||
|
||||
|
||||
@@ -1,7 +1,31 @@
|
||||
#ifndef GUARD_FIELDMAPOBJHELP_H
|
||||
#define GUARD_FIELDMAPOBJHELP_H
|
||||
#ifndef GUARD_FIELD_MAP_OBJ_HELPERS_H
|
||||
#define GUARD_FIELD_MAP_OBJ_HELPERS_H
|
||||
|
||||
// Exported type declarations
|
||||
|
||||
// Exported RAM declarations
|
||||
extern u8 *gUnknown_020375B8;
|
||||
|
||||
// Exported ROM declarations
|
||||
void sub_8097AC8(struct Sprite *);
|
||||
void npc_sync_anim_pause_bits(struct MapObject *);
|
||||
void oamt_npc_ministep_reset(struct Sprite *, u8, u8);
|
||||
u8 sub_8097F78(struct MapObject *);
|
||||
bool8 obj_npc_ministep(struct Sprite *sprite);
|
||||
bool8 sub_80976EC(struct Sprite *sprite);
|
||||
void sub_80976DC(struct Sprite *, u8);
|
||||
void sub_809783C(struct Sprite *, u8, u8, u8);
|
||||
void DoShadowFieldEffect(struct MapObject *);
|
||||
u8 sub_809785C(struct Sprite *);
|
||||
u8 sub_80978E4(struct Sprite *);
|
||||
void obj_anim_image_set_and_seek(struct Sprite *, u8, u8);
|
||||
bool8 sub_80979BC(struct Sprite *);
|
||||
void sub_8097750(struct Sprite *);
|
||||
bool8 sub_8097758(struct Sprite *);
|
||||
void sub_8097FA4(struct MapObject *);
|
||||
void sub_8098044(u8);
|
||||
void UnfreezeMapObjects(void);
|
||||
void FreezeMapObjectsExceptOne(u8 mapObjectId);
|
||||
void sub_8097B78(u8, u8);
|
||||
|
||||
#endif
|
||||
#endif //GUARD_FIELD_MAP_OBJ_HELPERS_H
|
||||
|
||||
@@ -9,8 +9,31 @@ void PlayerGetDestCoords(s16 *, s16 *);
|
||||
u8 player_get_direction_lower_nybble(void);
|
||||
u8 player_get_direction_upper_nybble(void);
|
||||
u8 player_get_x22(void);
|
||||
void PlayerGoSpeed1(u8);
|
||||
void PlayerGoSpeed2(u8);
|
||||
void PlayerGoSpeed3(u8);
|
||||
void PlayerGoSpeed4(u8);
|
||||
void PlayerOnBikeCollide(u8);
|
||||
void PlayerFaceDirection(u8 a);
|
||||
void PlayerTurnInPlace(u8 a);
|
||||
void PlayerJumpLedge(u8 a);
|
||||
void PlayerIdleWheelie(u8 a);
|
||||
void PlayerStartWheelie(u8 a);
|
||||
void PlayerEndWheelie(u8 a);
|
||||
void PlayerStandingHoppingWheelie(u8 a);
|
||||
void PlayerMovingHoppingWheelie(u8 a);
|
||||
void PlayerLedgeHoppingWheelie(u8 a);
|
||||
void PlayerAcroTurnJump(u8 a);
|
||||
void PlayerSetAnimId(u8 a, u8 b);
|
||||
bool8 IsPlayerCollidingWithFarawayIslandMew(u8 direction);
|
||||
void PlayerOnBikeCollideWithFarawayIslandMew(u8 direction);
|
||||
u8 CheckForFieldObjectCollision(struct MapObject *a, s16 b, s16 c, u8 d, u8 e);
|
||||
u8 PlayerGetZCoord(void);
|
||||
void SetPlayerAvatarTransitionFlags(u16 a);
|
||||
void sub_808BCE8(void);
|
||||
|
||||
void sub_808D074(u8);
|
||||
void GetXYCoordsOneStepInFrontOfPlayer(s16 *xPtr, s16 *yPtr);
|
||||
u8 GetRivalAvatarGraphicsIdByStateIdAndGender(u8, u8);
|
||||
|
||||
#endif //GUARD_FIELD_PLAYER_AVATAR_H
|
||||
|
||||
19
include/field_poison.h
Normal file
19
include/field_poison.h
Normal file
@@ -0,0 +1,19 @@
|
||||
#ifndef GUARD_FIELD_POISON_H
|
||||
#define GUARD_FIELD_POISON_H
|
||||
|
||||
// Exported type declarations
|
||||
|
||||
// Exported RAM declarations
|
||||
|
||||
// Exported ROM declarations
|
||||
|
||||
enum {
|
||||
FLDPSN_NONE,
|
||||
FLDPSN_PSN,
|
||||
FLDPSN_FNT
|
||||
};
|
||||
|
||||
void sub_80F972C(void);
|
||||
unsigned int overworld_poison(void);
|
||||
|
||||
#endif //GUARD_FIELD_POISON_H
|
||||
@@ -10,5 +10,6 @@ void pal_fill_black(void);
|
||||
bool8 sub_80ABDFC(void);
|
||||
void sub_80AF168(void);
|
||||
void sub_80AF2B4(u8 taskId);
|
||||
void UpdateWeatherPerDay(u16 days);
|
||||
|
||||
#endif //GUARD_FIELD_SCREEN_H
|
||||
|
||||
@@ -2,5 +2,7 @@
|
||||
#define GUARD_FIELD_SPECIALS_H
|
||||
|
||||
u8 GetLeadMonIndex(void);
|
||||
u8 sub_813B260(void);
|
||||
u16 get_unknown_box_id(void);
|
||||
|
||||
#endif // GUARD_FIELD_SPECIALS_H
|
||||
|
||||
@@ -1,12 +1,177 @@
|
||||
#ifndef GUARD_WEATHER_H
|
||||
#define GUARD_WEATHER_H
|
||||
|
||||
void fade_screen(u8, s8);
|
||||
#include "sprite.h"
|
||||
|
||||
// Controls how the weather should be changing the screen palettes.
|
||||
enum {
|
||||
WEATHER_PAL_STATE_CHANGING_WEATHER,
|
||||
WEATHER_PAL_STATE_SCREEN_FADING_IN,
|
||||
WEATHER_PAL_STATE_SCREEN_FADING_OUT,
|
||||
WEATHER_PAL_STATE_IDLE,
|
||||
};
|
||||
|
||||
struct Weather
|
||||
{
|
||||
union
|
||||
{
|
||||
struct
|
||||
{
|
||||
struct Sprite *rainSprites[24];
|
||||
struct Sprite *snowflakeSprites[101];
|
||||
struct Sprite *cloudSprites[3];
|
||||
} s1;
|
||||
struct
|
||||
{
|
||||
u8 filler0[0xA0];
|
||||
struct Sprite *fog1Sprites[20];
|
||||
struct Sprite *ashSprites[20];
|
||||
struct Sprite *fog2Sprites[20];
|
||||
struct Sprite *sandstormSprites1[20];
|
||||
struct Sprite *sandstormSprites2[5];
|
||||
} s2;
|
||||
} sprites;
|
||||
u8 gammaShifts[19][32];
|
||||
u8 altGammaShifts[19][32];
|
||||
s8 gammaIndex;
|
||||
s8 gammaTargetIndex;
|
||||
u8 gammaStepDelay;
|
||||
u8 gammaStepFrameCounter;
|
||||
u16 fadeDestColor;
|
||||
u8 palProcessingState;
|
||||
u8 fadeScreenCounter;
|
||||
bool8 readyForInit;
|
||||
u8 taskId;
|
||||
u8 unknown_6CA;
|
||||
u8 unknown_6CB;
|
||||
u16 initStep;
|
||||
u16 finishStep;
|
||||
u8 currWeather;
|
||||
u8 nextWeather;
|
||||
u8 weatherGfxLoaded;
|
||||
bool8 weatherChangeComplete;
|
||||
u8 weatherPicSpritePalIndex;
|
||||
u8 altGammaSpritePalIndex;
|
||||
u16 unknown_6D6;
|
||||
u8 unknown_6D8;
|
||||
u8 unknown_6D9;
|
||||
u8 rainSpriteCount;
|
||||
u8 unknown_6DB;
|
||||
u8 unknown_6DC;
|
||||
u8 rainStrength;
|
||||
/*0x6DE*/ u8 cloudSpritesCreated;
|
||||
u8 filler_6DF[1];
|
||||
u16 unknown_6E0;
|
||||
u16 unknown_6E2;
|
||||
u8 snowflakeSpriteCount;
|
||||
u8 unknown_6E5;
|
||||
u16 unknown_6E6;
|
||||
u16 thunderCounter;
|
||||
u8 unknown_6EA;
|
||||
u8 unknown_6EB;
|
||||
u8 unknown_6EC;
|
||||
u8 unknown_6ED;
|
||||
u16 fog1ScrollPosX;
|
||||
u16 unknown_6F0;
|
||||
u16 unknown_6F2;
|
||||
u8 lightenedFogSpritePals[6];
|
||||
u8 lightenedFogSpritePalsCount;
|
||||
u8 fog1SpritesCreated;
|
||||
u16 unknown_6FC;
|
||||
u16 unknown_6FE;
|
||||
u8 ashSpritesCreated;
|
||||
u8 filler_701[3];
|
||||
u32 unknown_704;
|
||||
u32 unknown_708;
|
||||
u8 filler_70C[2];
|
||||
u16 unknown_70E;
|
||||
u16 unknown_710;
|
||||
u16 unknown_712;
|
||||
u16 unknown_714;
|
||||
u8 sandstormSprites1Created;
|
||||
u8 sandstormSprites2Created;
|
||||
u16 unknown_718;
|
||||
u16 unknown_71A;
|
||||
u16 unknown_71C;
|
||||
u16 unknown_71E;
|
||||
u16 unknown_720;
|
||||
u16 unknown_722;
|
||||
u8 fog2SpritesCreated;
|
||||
u8 filler_725[1];
|
||||
u16 unknown_726;
|
||||
u16 unknown_728;
|
||||
u16 unknown_72A;
|
||||
u16 unknown_72C;
|
||||
u8 unknown_72E;
|
||||
u8 filler_72F;
|
||||
u16 currBlendEVA;
|
||||
u16 currBlendEVB;
|
||||
u16 targetBlendEVA;
|
||||
u16 targetBlendEVB;
|
||||
u8 blendUpdateCounter;
|
||||
u8 blendFrameCounter;
|
||||
u8 blendDelay;
|
||||
u8 filler_73B[0x3C-0x3B];
|
||||
s16 unknown_73C;
|
||||
s16 unknown_73E;
|
||||
s16 unknown_740;
|
||||
s16 unknown_742;
|
||||
u8 filler_744[0xD-4];
|
||||
s8 loadDroughtPalsIndex;
|
||||
u8 loadDroughtPalsOffset;
|
||||
};
|
||||
|
||||
void StartWeather(void);
|
||||
void ChangeWeather(u8 weather);
|
||||
void sub_807C988(u8 effect);
|
||||
void sub_807C9B4(u8 effect);
|
||||
void Task_WeatherInit(u8);
|
||||
void Task_WeatherMain(u8);
|
||||
void sub_807CAE8(void);
|
||||
void nullsub_38(void);
|
||||
void SetWeatherScreenFadeOut(void);
|
||||
|
||||
enum
|
||||
{
|
||||
FADE_FROM_BLACK,
|
||||
FADE_TO_BLACK,
|
||||
FADE_FROM_WHITE,
|
||||
FADE_TO_WHITE,
|
||||
};
|
||||
|
||||
void FadeScreen(u8, s8);
|
||||
// ...
|
||||
void UpdateSpritePaletteWithWeather(u8 tag);
|
||||
void ApplyWeatherGammaShiftToPal(u8);
|
||||
// ...
|
||||
void Weather_SetBlendCoeffs(u8, u8);
|
||||
// ...
|
||||
void PlayRainSoundEffect(void);
|
||||
// ...
|
||||
void SetSav1Weather(u32);
|
||||
u8 GetSav1Weather(void);
|
||||
void sub_80AEDBC(void);
|
||||
|
||||
void SetSav1WeatherFromCurrMapHeader(void);
|
||||
// ...
|
||||
void DoCurrentWeather(void);
|
||||
void sub_8080750();
|
||||
|
||||
bool8 IsWeatherNotFadingIn(void);
|
||||
bool8 IsWeatherChangeComplete(void);
|
||||
void SetWeather(u32);
|
||||
void UpdateWeatherPerDay(u16);
|
||||
void PreservePaletteInWeather(u8 index);
|
||||
void ResetPreservedPalettesInWeather(void);
|
||||
extern void ResetDroughtWeatherPaletteLoading(void);
|
||||
void ResetDroughtWeatherPaletteLoading(void);
|
||||
bool8 LoadDroughtWeatherPalettes(void);
|
||||
u8 GetCurrentWeather(void);
|
||||
void LoadCustomWeatherSpritePalette(const u16 *palette);
|
||||
|
||||
|
||||
extern struct Weather gWeather;
|
||||
|
||||
extern struct Weather *const gWeatherPtr;
|
||||
|
||||
#endif // GUARD_WEATHER_H
|
||||
|
||||
111
include/flags.h
111
include/flags.h
@@ -1,111 +0,0 @@
|
||||
#ifndef GUARD_FLAGS_H
|
||||
#define GUARD_FLAGS_H
|
||||
|
||||
#define TRAINER_FLAG_START 0x500
|
||||
#define TRAINERS_FLAG_NO 0x356
|
||||
#define CODE_FLAGS (TRAINER_FLAG_START + TRAINERS_FLAG_NO + 0xA) // 0x860
|
||||
|
||||
// SYSTEM FLAGS
|
||||
|
||||
#define SYS_POKEMON_GET CODE_FLAGS + 0
|
||||
#define SYS_POKEDEX_GET CODE_FLAGS + 1
|
||||
#define SYS_POKENAV_GET CODE_FLAGS + 2
|
||||
// third one appears unused
|
||||
#define SYS_GAME_CLEAR CODE_FLAGS + 4
|
||||
#define SYS_CHAT_USED CODE_FLAGS + 5
|
||||
#define SYS_HIPSTER_MEET CODE_FLAGS + 6
|
||||
|
||||
// badges
|
||||
#define BADGE01_GET CODE_FLAGS + 7
|
||||
#define BADGE02_GET CODE_FLAGS + 8
|
||||
#define BADGE03_GET CODE_FLAGS + 9
|
||||
#define BADGE04_GET CODE_FLAGS + 0xA
|
||||
#define BADGE05_GET CODE_FLAGS + 0xB
|
||||
#define BADGE06_GET CODE_FLAGS + 0xC
|
||||
#define BADGE07_GET CODE_FLAGS + 0xD
|
||||
#define BADGE08_GET CODE_FLAGS + 0xE
|
||||
|
||||
// cities and towns
|
||||
#define FLAG_VISITED_LITTLEROOT_TOWN CODE_FLAGS + 0xF
|
||||
#define FLAG_VISITED_OLDALE_TOWN CODE_FLAGS + 0x10
|
||||
#define FLAG_VISITED_DEWFORD_TOWN CODE_FLAGS + 0x11
|
||||
#define FLAG_VISITED_LAVARIDGE_TOWN CODE_FLAGS + 0x12
|
||||
#define FLAG_VISITED_FALLARBOR_TOWN CODE_FLAGS + 0x13
|
||||
#define FLAG_VISITED_VERDANTURF_TOWN CODE_FLAGS + 0x14
|
||||
#define FLAG_VISITED_PACIFIDLOG_TOWN CODE_FLAGS + 0x15
|
||||
#define FLAG_VISITED_PETALBURG_CITY CODE_FLAGS + 0x16
|
||||
#define FLAG_VISITED_SLATEPORT_CITY CODE_FLAGS + 0x17
|
||||
#define FLAG_VISITED_MAUVILLE_CITY CODE_FLAGS + 0x18
|
||||
#define FLAG_VISITED_RUSTBORO_CITY CODE_FLAGS + 0x19
|
||||
#define FLAG_VISITED_FORTREE_CITY CODE_FLAGS + 0x1A
|
||||
#define FLAG_VISITED_LILYCOVE_CITY CODE_FLAGS + 0x1B
|
||||
#define FLAG_VISITED_MOSSDEEP_CITY CODE_FLAGS + 0x1C
|
||||
#define FLAG_VISITED_SOOTOPOLIS_CITY CODE_FLAGS + 0x1D
|
||||
#define FLAG_VISITED_EVER_GRANDE_CITY CODE_FLAGS + 0x1E
|
||||
|
||||
#define SYS_UNKNOWN_880 CODE_FLAGS + 0x20
|
||||
|
||||
#define SYS_USE_FLASH CODE_FLAGS + 0x28
|
||||
#define SYS_USE_STRENGTH CODE_FLAGS + 0x29
|
||||
#define SYS_WEATHER_CTRL CODE_FLAGS + 0x2A
|
||||
#define SYS_CYCLING_ROAD CODE_FLAGS + 0x2B
|
||||
#define SYS_SAFARI_MODE CODE_FLAGS + 0x2C
|
||||
#define SYS_CRUISE_MODE CODE_FLAGS + 0x2D
|
||||
|
||||
#define SYS_TV_HOME CODE_FLAGS + 0x30
|
||||
#define SYS_TV_WATCH CODE_FLAGS + 0x31
|
||||
#define SYS_TV_START CODE_FLAGS + 0x32
|
||||
#define SYS_POPWORD_INPUT CODE_FLAGS + 0x33
|
||||
#define SYS_MIX_RECORD CODE_FLAGS + 0x34
|
||||
#define SYS_CLOCK_SET CODE_FLAGS + 0x35
|
||||
#define SYS_NATIONAL_DEX CODE_FLAGS + 0x36
|
||||
#define SYS_CAVE_SHIP CODE_FLAGS + 0x37
|
||||
#define SYS_CAVE_WONDER CODE_FLAGS + 0x38
|
||||
#define SYS_CAVE_BATTLE CODE_FLAGS + 0x39
|
||||
#define SYS_SHOAL_TIDE CODE_FLAGS + 0x3A
|
||||
#define SYS_RIBBON_GET CODE_FLAGS + 0x3B
|
||||
|
||||
#define SYS_PC_LANETTE CODE_FLAGS + 0x4B
|
||||
#define SYS_MYSTERY_EVENT_ENABLE CODE_FLAGS + 0x4C
|
||||
#define SYS_ENC_UP_ITEM CODE_FLAGS + 0x4D
|
||||
#define SYS_ENC_DOWN_ITEM CODE_FLAGS + 0x4E
|
||||
#define SYS_BRAILLE_DIG CODE_FLAGS + 0x4F
|
||||
#define SYS_BRAILLE_STRENGTH CODE_FLAGS + 0x50
|
||||
#define SYS_BRAILLE_WAIT CODE_FLAGS + 0x51
|
||||
#define SYS_BRAILLE_FLY CODE_FLAGS + 0x52
|
||||
#define SYS_HAS_EON_TICKET CODE_FLAGS + 0x53
|
||||
|
||||
#define SYS_POKEMON_LEAGUE_FLY CODE_FLAGS + 0x54
|
||||
|
||||
#define SYS_TV_LATI CODE_FLAGS + 0x5D
|
||||
|
||||
#define SYS_SHOAL_ITEM CODE_FLAGS + 0x5F
|
||||
#define SYS_B_DASH CODE_FLAGS + 0x60 // got Running Shoes
|
||||
#define SYS_CTRL_OBJ_DELETE CODE_FLAGS + 0x61
|
||||
#define SYS_RESET_RTC_ENABLE CODE_FLAGS + 0x62
|
||||
|
||||
#define SYS_TOWER_SILVER CODE_FLAGS + 0x64
|
||||
#define SYS_TOWER_GOLD CODE_FLAGS + 0x65
|
||||
#define SYS_DOME_SILVER CODE_FLAGS + 0x66
|
||||
#define SYS_DOME_GOLD CODE_FLAGS + 0x67
|
||||
#define SYS_PALACE_SILVER CODE_FLAGS + 0x68
|
||||
#define SYS_PALACE_GOLD CODE_FLAGS + 0x69
|
||||
#define SYS_ARENA_SILVER CODE_FLAGS + 0x6A
|
||||
#define SYS_ARENA_GOLD CODE_FLAGS + 0x6B
|
||||
#define SYS_FACTORY_SILVER CODE_FLAGS + 0x6C
|
||||
#define SYS_FACTORY_GOLD CODE_FLAGS + 0x6D
|
||||
#define SYS_PIKE_SILVER CODE_FLAGS + 0x6E
|
||||
#define SYS_PIKE_GOLD CODE_FLAGS + 0x6F
|
||||
#define SYS_PYRAMID_SILVER CODE_FLAGS + 0x70
|
||||
#define SYS_PYRAMID_GOLD CODE_FLAGS + 0x71
|
||||
#define SYS_FRONTIER_PASS CODE_FLAGS + 0x72
|
||||
|
||||
#define SYS_STORAGE_UNKNOWN_FLAG CODE_FLAGS + 0x77
|
||||
|
||||
#define SYS_MYSTERY_GIFT_ENABLE CODE_FLAGS + 0x7B
|
||||
|
||||
// SPECIAL FLAGS (unknown purpose)
|
||||
|
||||
#define SPECIAL_FLAG_1 0x4001
|
||||
|
||||
#endif // GUARD_FLAGS_H
|
||||
@@ -11,5 +11,6 @@ void sub_80FA5E4(s16 id, s16 x, s16 y);
|
||||
void sub_80FA794(s16 x, s16 y);
|
||||
void sub_80FB00C(void);
|
||||
void sub_80FB074(void);
|
||||
void overworld_poison_effect(void);
|
||||
|
||||
#endif //GUARD_FLDEFF_80F9BCC_H
|
||||
|
||||
7
include/fldeff_teleport.h
Normal file
7
include/fldeff_teleport.h
Normal file
@@ -0,0 +1,7 @@
|
||||
#ifndef GUARD_FLDEFF_TELEPORT_H
|
||||
#define GUARD_FLDEFF_TELEPORT_H
|
||||
|
||||
void hm_teleport_run_dp02scr(void);
|
||||
void sub_817C94C(void);
|
||||
|
||||
#endif // GUARD_FLDEFF_TELEPORT_H
|
||||
@@ -39,6 +39,9 @@
|
||||
#define BG_CHAR_ADDR(n) (BG_VRAM + (BG_CHAR_SIZE * (n)))
|
||||
#define BG_SCREEN_ADDR(n) (BG_VRAM + (BG_SCREEN_SIZE * (n)))
|
||||
|
||||
#define BG_TILE_H_FLIP(n) (0x400 + (n))
|
||||
#define BG_TILE_V_FLIP(n) (0x800 + (n))
|
||||
|
||||
// text-mode BG
|
||||
#define OBJ_VRAM0 (VRAM + 0x10000)
|
||||
#define OBJ_VRAM0_SIZE 0x8000
|
||||
@@ -60,11 +63,6 @@
|
||||
|
||||
#define TOTAL_OBJ_TILE_COUNT 1024
|
||||
|
||||
#define RGB(r, g, b) ((r) | ((g) << 5) | ((b) << 10))
|
||||
|
||||
#define RGB_BLACK RGB(0, 0, 0)
|
||||
#define RGB_WHITE RGB(31, 31, 31)
|
||||
|
||||
#define WIN_RANGE(a, b) (((a) << 8) | (b))
|
||||
|
||||
#endif // GUARD_GBA_DEFINES
|
||||
|
||||
@@ -7,6 +7,6 @@
|
||||
#include "gba/multiboot.h"
|
||||
#include "gba/syscall.h"
|
||||
#include "gba/macro.h"
|
||||
#include "gba/libc.h"
|
||||
#include "gba/isagbprint.h"
|
||||
|
||||
#endif // GUARD_GBA_GBA_H
|
||||
|
||||
@@ -501,12 +501,12 @@
|
||||
// I/O register fields
|
||||
|
||||
// DISPCNT
|
||||
#define DISPCNT_MODE_0 0x0000
|
||||
#define DISPCNT_MODE_1 0x0001
|
||||
#define DISPCNT_MODE_2 0x0002
|
||||
#define DISPCNT_MODE_3 0x0003
|
||||
#define DISPCNT_MODE_4 0x0004
|
||||
#define DISPCNT_MODE_5 0x0005
|
||||
#define DISPCNT_MODE_0 0x0000 // BG0: text, BG1: text, BG2: text, BG3: text
|
||||
#define DISPCNT_MODE_1 0x0001 // BG0: text, BG1: text, BG2: affine, BG3: off
|
||||
#define DISPCNT_MODE_2 0x0002 // BG0: off, BG1: off, BG2: affine, BG3: affine
|
||||
#define DISPCNT_MODE_3 0x0003 // Bitmap mode, 240x160, BGR555 color
|
||||
#define DISPCNT_MODE_4 0x0004 // Bitmap mode, 240x160, 256 color palette
|
||||
#define DISPCNT_MODE_5 0x0005 // Bitmap mode, 160x128, BGR555 color
|
||||
#define DISPCNT_OBJ_1D_MAP 0x0040
|
||||
#define DISPCNT_FORCED_BLANK 0x0080
|
||||
#define DISPCNT_BG0_ON 0x0100
|
||||
@@ -527,7 +527,46 @@
|
||||
#define DISPSTAT_HBLANK_INTR 0x0010 // H-Blank interrupt enabled
|
||||
#define DISPSTAT_VCOUNT_INTR 0x0020 // V-Count interrupt enabled
|
||||
|
||||
// BGCNT
|
||||
#define BGCNT_PRIORITY(n) (n) // Values 0 - 3. Lower priority BGs will be drawn on top of higher priority BGs.
|
||||
#define BGCNT_CHARBASE(n) ((n) << 2) // Values 0 - 3. Base block for tile pixel data.
|
||||
#define BGCNT_MOSAIC 0x0040
|
||||
#define BGCNT_16COLOR 0x0000 // 4 bits per pixel
|
||||
#define BGCNT_256COLOR 0x0080 // 8 bits per pixel
|
||||
#define BGCNT_SCREENBASE(n) ((n) << 8) // Values 0 - 31. Base block for tile map.
|
||||
#define BGCNT_WRAP 0x2000 // Only affects affine BGs. Text BGs wrap by default.
|
||||
#define BGCNT_TXT256x256 0x0000 // Internal screen size size of text mode BG in pixels.
|
||||
#define BGCNT_TXT512x256 0x4000
|
||||
#define BGCNT_TXT256x512 0x8000
|
||||
#define BGCNT_TXT512x512 0xC000
|
||||
#define BGCNT_AFF128x128 0x0000 // Internal screen size size of affine mode BG in pixels.
|
||||
#define BGCNT_AFF256x256 0x4000
|
||||
#define BGCNT_AFF512x512 0x8000
|
||||
#define BGCNT_AFF1024x1024 0xC000
|
||||
|
||||
// BLDCNT
|
||||
// Bits 0-5 select layers for the 1st target
|
||||
#define BLDCNT_TGT1_BG0 (1 << 0)
|
||||
#define BLDCNT_TGT1_BG1 (1 << 1)
|
||||
#define BLDCNT_TGT1_BG2 (1 << 2)
|
||||
#define BLDCNT_TGT1_BG3 (1 << 3)
|
||||
#define BLDCNT_TGT1_OBJ (1 << 4)
|
||||
#define BLDCNT_TGT1_BD (1 << 5)
|
||||
// Bits 6-7 select the special effect
|
||||
#define BLDCNT_EFFECT_NONE (0 << 6) // no special effect
|
||||
#define BLDCNT_EFFECT_BLEND (1 << 6) // 1st+2nd targets mixed (controlled by BLDALPHA)
|
||||
#define BLDCNT_EFFECT_LIGHTEN (2 << 6) // 1st target becomes whiter (controlled by BLDY)
|
||||
#define BLDCNT_EFFECT_DARKEN (3 << 6) // 1st target becomes blacker (controlled by BLDY)
|
||||
// Bits 8-13 select layers for the 2nd target
|
||||
#define BLDCNT_TGT2_BG0 (1 << 8)
|
||||
#define BLDCNT_TGT2_BG1 (1 << 9)
|
||||
#define BLDCNT_TGT2_BG2 (1 << 10)
|
||||
#define BLDCNT_TGT2_BG3 (1 << 11)
|
||||
#define BLDCNT_TGT2_OBJ (1 << 12)
|
||||
#define BLDCNT_TGT2_BD (1 << 13)
|
||||
|
||||
// BLDALPHA
|
||||
#define BLDALPHA_BLEND(target1, target2) (((target2) << 8) | (target1))
|
||||
|
||||
// SOUNDCNT_H
|
||||
#define SOUND_CGB_MIX_QUARTER 0x0000
|
||||
@@ -627,8 +666,8 @@
|
||||
#define KEY_INTR_ENABLE 0x0400
|
||||
#define KEY_OR_INTR 0x0000
|
||||
#define KEY_AND_INTR 0x8000
|
||||
|
||||
#define DPAD_ANY ((DPAD_RIGHT | DPAD_LEFT | DPAD_UP | DPAD_DOWN))
|
||||
#define DPAD_ANY ((DPAD_RIGHT | DPAD_LEFT | DPAD_UP | DPAD_DOWN))
|
||||
#define JOY_EXCL_DPAD 0x030F
|
||||
|
||||
// interrupt flags
|
||||
#define INTR_FLAG_VBLANK (1 << 0)
|
||||
|
||||
50
include/gba/isagbprint.h
Normal file
50
include/gba/isagbprint.h
Normal file
@@ -0,0 +1,50 @@
|
||||
#ifndef GUARD_GBA_ISAGBPRINT_H
|
||||
#define GUARD_GBA_ISAGBPRINT_H
|
||||
|
||||
#ifdef NDEBUG
|
||||
#define AGBPrintInit()
|
||||
#define AGBPutc(cChr)
|
||||
#define AGBPrint(pBuf)
|
||||
#define AGBPrintf(pBuf, ...)
|
||||
#define AGBPrintFlush1Block()
|
||||
#define AGBPrintFlush()
|
||||
#define AGBAssert(pFile, nLine, pExpression, nStopProgram)
|
||||
#else
|
||||
void AGBPrintInit(void);
|
||||
void AGBPutc(const char cChr);
|
||||
void AGBPrint(const char *pBuf);
|
||||
void AGBPrintf(const char *pBuf, ...);
|
||||
void AGBPrintFlush1Block(void);
|
||||
void AGBPrintFlush(void);
|
||||
void AGBAssert(const char *pFile, int nLine, const char *pExpression, int nStopProgram);
|
||||
#endif
|
||||
|
||||
#undef AGB_ASSERT
|
||||
#ifdef NDEBUG
|
||||
#define AGB_ASSERT(exp)
|
||||
#else
|
||||
#define AGB_ASSERT(exp) (exp) ? ((void*)0) : AGBAssert(__FILE__, __LINE__, #exp, 1);
|
||||
#endif
|
||||
|
||||
#undef AGB_WARNING
|
||||
#ifdef NDEBUG
|
||||
#define AGB_WARNING(exp)
|
||||
#else
|
||||
#define AGB_WARNING(exp) (exp) ? ((void*)0) : AGBAssert(__FILE__, __LINE__, #exp, 0);
|
||||
#endif
|
||||
|
||||
// for matching purposes
|
||||
|
||||
#ifdef NDEBUG
|
||||
#define AGB_ASSERT_EX(exp, file, line)
|
||||
#else
|
||||
#define AGB_ASSERT_EX(exp, file, line) (exp) ? ((void*)0) : AGBAssert(file, line, #exp, 1);
|
||||
#endif
|
||||
|
||||
#ifdef NDEBUG
|
||||
#define AGB_WARNING_EX(exp, file, line)
|
||||
#else
|
||||
#define AGB_WARNING_EX(exp, file, line) (exp) ? ((void*)0) : AGBAssert(file, line, #exp, 0);
|
||||
#endif
|
||||
|
||||
#endif // GUARD_GBA_ISAGBPRINT_H
|
||||
@@ -1,10 +0,0 @@
|
||||
#ifndef GUARD_LIBC_H
|
||||
#define GUARD_LIBC_H
|
||||
|
||||
void *memset(void *dst, int val, size_t size);
|
||||
void *memcpy(void *dst, const void *src, size_t size);
|
||||
int strcmp(const char *s1, const char *s2);
|
||||
char *strcpy(char *dst0, const char *src0);
|
||||
#define abs(x) ((x) >= 0 ? (x) : -(x))
|
||||
|
||||
#endif //GUARD_LIBC_H
|
||||
@@ -406,7 +406,7 @@ void m4aSoundVSyncOff(void);
|
||||
|
||||
void m4aMPlayTempoControl(struct MusicPlayerInfo *mplayInfo, u16 tempo);
|
||||
void m4aMPlayVolumeControl(struct MusicPlayerInfo *mplayInfo, u16 trackBits, u16 volume);
|
||||
void m4aMPlayPitchControl(struct MusicPlayerInfo *mplayInfo, u16 trackBits, u16 pitch);
|
||||
void m4aMPlayPitchControl(struct MusicPlayerInfo *mplayInfo, u16 trackBits, s16 pitch);
|
||||
void m4aMPlayPanpotControl(struct MusicPlayerInfo *mplayInfo, u16 trackBits, s8 pan);
|
||||
void ClearModM(struct MusicPlayerTrack *track);
|
||||
void m4aMPlayModDepthSet(struct MusicPlayerInfo *mplayInfo, u16 trackBits, u8 modDepth);
|
||||
|
||||
@@ -78,6 +78,102 @@
|
||||
#define DmaCopy16(dmaNum, src, dest, size) DMA_COPY(dmaNum, src, dest, size, 16)
|
||||
#define DmaCopy32(dmaNum, src, dest, size) DMA_COPY(dmaNum, src, dest, size, 32)
|
||||
|
||||
#define DmaCopyLarge(dmaNum, src, dest, size, block, bit) \
|
||||
{ \
|
||||
const void *_src = src; \
|
||||
void *_dest = dest; \
|
||||
u32 _size = size; \
|
||||
while (1) \
|
||||
{ \
|
||||
DmaCopy##bit(dmaNum, _src, _dest, (block)); \
|
||||
_src += (block); \
|
||||
_dest += (block); \
|
||||
_size -= (block); \
|
||||
if (_size <= (block)) \
|
||||
{ \
|
||||
DmaCopy##bit(dmaNum, _src, _dest, _size); \
|
||||
break; \
|
||||
} \
|
||||
} \
|
||||
}
|
||||
|
||||
#define DmaCopyLarge16(dmaNum, src, dest, size, block) DmaCopyLarge(dmaNum, src, dest, size, block, 16)
|
||||
|
||||
#define DmaCopyLarge32(dmaNum, src, dest, size, block) DmaCopyLarge(dmaNum, src, dest, size, block, 32)
|
||||
|
||||
#define DmaFillLarge(dmaNum, value, dest, size, block, bit) \
|
||||
{ \
|
||||
void *_dest = dest; \
|
||||
u32 _size = size; \
|
||||
while (1) \
|
||||
{ \
|
||||
DmaFill##bit(dmaNum, value, _dest, (block)); \
|
||||
_dest += (block); \
|
||||
_size -= (block); \
|
||||
if (_size <= (block)) \
|
||||
{ \
|
||||
DmaFill##bit(dmaNum, value, _dest, _size); \
|
||||
break; \
|
||||
} \
|
||||
} \
|
||||
}
|
||||
|
||||
#define DmaFillLarge16(dmaNum, value, dest, size, block) DmaFillLarge(dmaNum, value, dest, size, block, 16)
|
||||
|
||||
#define DmaFillLarge32(dmaNum, value, dest, size, block) DmaFillLarge(dmaNum, value, dest, size, block, 32)
|
||||
|
||||
#define DmaClearLarge(dmaNum, dest, size, block, bit) \
|
||||
{ \
|
||||
void *_dest = dest; \
|
||||
u32 _size = size; \
|
||||
while (1) \
|
||||
{ \
|
||||
DmaFill##bit(dmaNum, 0, _dest, (block)); \
|
||||
_dest += (block); \
|
||||
_size -= (block); \
|
||||
if (_size <= (block)) \
|
||||
{ \
|
||||
DmaFill##bit(dmaNum, 0, _dest, _size); \
|
||||
break; \
|
||||
} \
|
||||
} \
|
||||
}
|
||||
|
||||
#define DmaClearLarge16(dmaNum, dest, size, block) DmaClearLarge(dmaNum, dest, size, block, 16)
|
||||
|
||||
#define DmaClearLarge32(dmaNum, dest, size, block) DmaClearLarge(dmaNum, dest, size, block, 32)
|
||||
|
||||
#define DmaCopyDefvars(dmaNum, src, dest, size, bit) \
|
||||
{ \
|
||||
const void *_src = src; \
|
||||
void *_dest = dest; \
|
||||
u32 _size = size; \
|
||||
DmaCopy##bit(dmaNum, _src, _dest, _size); \
|
||||
}
|
||||
|
||||
#define DmaCopy16Defvars(dmaNum, src, dest, size) DmaCopyDefvars(dmaNum, src, dest, size, 16)
|
||||
#define DmaCopy32Defvars(dmaNum, src, dest, size) DmaCopyDefvars(dmaNum, src, dest, size, 32)
|
||||
|
||||
#define DmaFillDefvars(dmaNum, value, dest, size, bit) \
|
||||
{ \
|
||||
void *_dest = dest; \
|
||||
u32 _size = size; \
|
||||
DmaFill##bit(dmaNum, value, _dest, _size); \
|
||||
}
|
||||
|
||||
#define DmaFill16Defvars(dmaNum, value, dest, size) DmaFillDefvars(dmaNum, value, dest, size, 16)
|
||||
#define DmaFill32Defvars(dmaNum, value, dest, size) DmaFillDefvars(dmaNum, value, dest, size, 32)
|
||||
|
||||
#define DmaClearDefvars(dmaNum, dest, size, bit) \
|
||||
{ \
|
||||
void *_dest = dest; \
|
||||
u32 _size = size; \
|
||||
DmaClear##bit(dmaNum, _dest, _size); \
|
||||
}
|
||||
|
||||
#define DmaClear16Defvars(dmaNum, dest, size) DmaClearDefvars(dmaNum, dest, size, 16)
|
||||
#define DmaClear32Defvars(dmaNum, dest, size) DmaClearDefvars(dmaNum, dest, size, 32)
|
||||
|
||||
#define DmaStop(dmaNum) \
|
||||
{ \
|
||||
vu16 *dmaRegs = (vu16 *)REG_ADDR_DMA##dmaNum; \
|
||||
|
||||
@@ -49,7 +49,7 @@ struct OamData
|
||||
u32 matrixNum:5; // bits 3/4 are h-flip/v-flip if not in affine mode
|
||||
u32 size:2;
|
||||
|
||||
/*0x04*/ u16 tileNum:10; // 0x33F
|
||||
/*0x04*/ u16 tileNum:10; // 0x3FF
|
||||
u16 priority:2; // 0x400, 0x800 -> 0xC00
|
||||
u16 paletteNum:4;
|
||||
/*0x06*/ u16 affineParam;
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user