mirror of
https://github.com/pret/pokeplatinum.git
synced 2026-04-25 15:49:02 -05:00
Rename BATTLE_SUBSEQ consts to BATTLE_SUBSCRIPT + move to constgen manifest
This commit is contained in:
parent
ba60196b55
commit
f46a747f0e
|
|
@ -21,6 +21,9 @@
|
|||
"battle_lib_params": [
|
||||
"@BattleContextParam",
|
||||
"@BattleMonParam"
|
||||
],
|
||||
"battle_controller_params": [
|
||||
"@AfterMoveMessageType"
|
||||
]
|
||||
},
|
||||
"definitions": {
|
||||
|
|
@ -915,6 +918,13 @@
|
|||
"BATTLEMON_UNUSED_99",
|
||||
"BATTLEMON_TEMP"
|
||||
]
|
||||
},
|
||||
"@AfterMoveMessageType": {
|
||||
"type": "enum",
|
||||
"values": [
|
||||
"AFTER_MOVE_MESSAGE_ONE_HIT",
|
||||
"AFTER_MOVE_MESSAGE_MULTI_HIT"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,15 +1,17 @@
|
|||
consts_manifests = files(
|
||||
'battle.json',
|
||||
'global.json',
|
||||
'narc_files.json',
|
||||
)
|
||||
|
||||
gen_consts_root = meson.current_build_dir() / 'generated'
|
||||
gen_c_consts_root = gen_consts_root / 'c'
|
||||
gen_asm_consts_root = gen_consts_root / 'asm'
|
||||
|
||||
generated_c_consts = custom_target('gen_c_consts',
|
||||
custom_target('generated_consts_c',
|
||||
build_by_default: true,
|
||||
capture: true,
|
||||
output: 'gen_c_consts',
|
||||
output: 'generated_consts_c',
|
||||
input: consts_manifests,
|
||||
command: [
|
||||
constgen_py,
|
||||
|
|
@ -18,3 +20,16 @@ generated_c_consts = custom_target('gen_c_consts',
|
|||
'-l', 'c'
|
||||
]
|
||||
)
|
||||
|
||||
generated_consts_asm = custom_target('generated_consts_asm',
|
||||
build_by_default: true,
|
||||
capture: true,
|
||||
output: 'generated_consts_asm',
|
||||
input: consts_manifests,
|
||||
command: [
|
||||
constgen_py,
|
||||
'-f', '@INPUT@',
|
||||
'-r', gen_asm_consts_root,
|
||||
'-l', 'asm'
|
||||
]
|
||||
)
|
||||
|
|
|
|||
311
consts/narc_files.json
Normal file
311
consts/narc_files.json
Normal file
|
|
@ -0,0 +1,311 @@
|
|||
{
|
||||
"targets": {
|
||||
"battle_subscripts": [
|
||||
"@BattleSubscriptNARC"
|
||||
]
|
||||
},
|
||||
"definitions": {
|
||||
"@BattleSubscriptNARC": {
|
||||
"type": "enum",
|
||||
"values": [
|
||||
"BATTLE_SUBSCRIPT_START_ENCOUNTER",
|
||||
"BATTLE_SUBSCRIPT_USE_MOVE",
|
||||
"BATTLE_SUBSCRIPT_UPDATE_HP",
|
||||
"BATTLE_SUBSCRIPT_ESCAPE",
|
||||
"BATTLE_SUBSCRIPT_BATTLE_WON",
|
||||
"BATTLE_SUBSCRIPT_BATTLE_LOST",
|
||||
"BATTLE_SUBSCRIPT_FAINT_MON",
|
||||
"BATTLE_SUBSCRIPT_MISSED",
|
||||
"BATTLE_SUBSCRIPT_ESCAPE_FAILED",
|
||||
"BATTLE_SUBSCRIPT_SWITCH_POKEMON",
|
||||
"BATTLE_SUBSCRIPT_SHOW_PARTY_LIST",
|
||||
"BATTLE_SUBSCRIPT_THROW_POKEBALL",
|
||||
"BATTLE_SUBSCRIPT_UPDATE_STAT_STAGE",
|
||||
"BATTLE_SUBSCRIPT_VANISH_ON_CHARGE_TURN",
|
||||
"BATTLE_SUBSCRIPT_FLINCH_MON",
|
||||
"BATTLE_SUBSCRIPT_FLINCHED",
|
||||
"BATTLE_SUBSCRIPT_CRITICAL_HIT",
|
||||
"BATTLE_SUBSCRIPT_HIT_X_TIMES",
|
||||
"BATTLE_SUBSCRIPT_FALL_ASLEEP",
|
||||
"BATTLE_SUBSCRIPT_WAKE_UP",
|
||||
"BATTLE_SUBSCRIPT_SLEEPING",
|
||||
"BATTLE_SUBSCRIPT_MOVE_FOLLOWUP_MESSAGE",
|
||||
"BATTLE_SUBSCRIPT_POISON",
|
||||
"BATTLE_SUBSCRIPT_POISON_DAMAGE",
|
||||
"BATTLE_SUBSCRIPT_DRAIN_HALF_DAMAGE_DEALT",
|
||||
"BATTLE_SUBSCRIPT_BURN",
|
||||
"BATTLE_SUBSCRIPT_BURN_DAMAGE",
|
||||
"BATTLE_SUBSCRIPT_FREEZE",
|
||||
"BATTLE_SUBSCRIPT_FROZEN",
|
||||
"BATTLE_SUBSCRIPT_THAW_OUT",
|
||||
"BATTLE_SUBSCRIPT_DEFROSTED_BY_MOVE",
|
||||
"BATTLE_SUBSCRIPT_PARALYZE",
|
||||
"BATTLE_SUBSCRIPT_FULLY_PARALYZED",
|
||||
"BATTLE_SUBSCRIPT_DREAM_EATER",
|
||||
"BATTLE_SUBSCRIPT_RESET_ALL_STAT_STAGES",
|
||||
"BATTLE_SUBSCRIPT_BIDE_START",
|
||||
"BATTLE_SUBSCRIPT_BIDE_END",
|
||||
"BATTLE_SUBSCRIPT_CONFUSE",
|
||||
"BATTLE_SUBSCRIPT_CONFUSED",
|
||||
"BATTLE_SUBSCRIPT_HURT_SELF_IN_CONFUSION",
|
||||
"BATTLE_SUBSCRIPT_SNAP_OUT_OF_CONFUSION",
|
||||
"BATTLE_SUBSCRIPT_TRAINER_MESSAGE",
|
||||
"BATTLE_SUBSCRIPT_NO_PP",
|
||||
"BATTLE_SUBSCRIPT_STRUGGLE",
|
||||
"BATTLE_SUBSCRIPT_THRASH",
|
||||
"BATTLE_SUBSCRIPT_CONVERSION",
|
||||
"BATTLE_SUBSCRIPT_RECOVER_HALF_MAX_HP",
|
||||
"BATTLE_SUBSCRIPT_BADLY_POISON",
|
||||
"BATTLE_SUBSCRIPT_PAY_DAY",
|
||||
"BATTLE_SUBSCRIPT_LIGHT_SCREEN",
|
||||
"BATTLE_SUBSCRIPT_MOVE_EFFECT_END",
|
||||
"BATTLE_SUBSCRIPT_THRASH_END",
|
||||
"BATTLE_SUBSCRIPT_REFLECT",
|
||||
"BATTLE_SUBSCRIPT_ANIMATION_PREPARED_MESSAGE",
|
||||
"BATTLE_SUBSCRIPT_MIST",
|
||||
"BATTLE_SUBSCRIPT_REST",
|
||||
"BATTLE_SUBSCRIPT_UPROAR",
|
||||
"BATTLE_SUBSCRIPT_SHOW_PREPARED_MESSAGE",
|
||||
"BATTLE_SUBSCRIPT_BIND_START",
|
||||
"BATTLE_SUBSCRIPT_BIND_EFFECT",
|
||||
"BATTLE_SUBSCRIPT_BIND_END",
|
||||
"BATTLE_SUBSCRIPT_CRASH_ON_MISS",
|
||||
"BATTLE_SUBSCRIPT_FOCUS_ENERGY",
|
||||
"BATTLE_SUBSCRIPT_RECOIL_1_4",
|
||||
"BATTLE_SUBSCRIPT_RECHARGE_TURN",
|
||||
"BATTLE_SUBSCRIPT_RECHARGING",
|
||||
"BATTLE_SUBSCRIPT_SET_RAGE_FLAG",
|
||||
"BATTLE_SUBSCRIPT_MIMIC",
|
||||
"BATTLE_SUBSCRIPT_LEECH_SEED_START",
|
||||
"BATTLE_SUBSCRIPT_LEECH_SEED_EFFECT",
|
||||
"BATTLE_SUBSCRIPT_DISABLE_START",
|
||||
"BATTLE_SUBSCRIPT_MOVE_IS_DISABLED",
|
||||
"BATTLE_SUBSCRIPT_DISABLE_END",
|
||||
"BATTLE_SUBSCRIPT_ENCORE_START",
|
||||
"BATTLE_SUBSCRIPT_ENCORE_END",
|
||||
"BATTLE_SUBSCRIPT_BUT_IT_FAILED",
|
||||
"BATTLE_SUBSCRIPT_ATTACK_MESSAGE_AND_ANIMATION",
|
||||
"BATTLE_SUBSCRIPT_PAIN_SPLIT",
|
||||
"BATTLE_SUBSCRIPT_CONVERSION_2",
|
||||
"BATTLE_SUBSCRIPT_LOCK_ON",
|
||||
"BATTLE_SUBSCRIPT_SKETCH",
|
||||
"BATTLE_SUBSCRIPT_FEINT",
|
||||
"BATTLE_SUBSCRIPT_DESTINY_BOND",
|
||||
"BATTLE_SUBSCRIPT_FAINT_CHECK_DESTINY_BOND",
|
||||
"BATTLE_SUBSCRIPT_REDUCE_TARGET_PP",
|
||||
"BATTLE_SUBSCRIPT_STEAL_ITEM",
|
||||
"BATTLE_SUBSCRIPT_MEAN_LOOK",
|
||||
"BATTLE_SUBSCRIPT_PROTECT",
|
||||
"BATTLE_SUBSCRIPT_HEAL_BELL",
|
||||
"BATTLE_SUBSCRIPT_TRY_SUBSTITUTE",
|
||||
"BATTLE_SUBSCRIPT_HIT_SUBSTITUTE",
|
||||
"BATTLE_SUBSCRIPT_FORCE_TARGET_TO_SWITCH_OR_FLEE",
|
||||
"BATTLE_SUBSCRIPT_TRANSFORM_INTO_TARGET",
|
||||
"BATTLE_SUBSCRIPT_NIGHTMARE_START",
|
||||
"BATTLE_SUBSCRIPT_NIGHTMARE_EFFECT",
|
||||
"BATTLE_SUBSCRIPT_MINIMIZE",
|
||||
"BATTLE_SUBSCRIPT_CURSE_NORMAL",
|
||||
"BATTLE_SUBSCRIPT_CURSE_GHOST",
|
||||
"BATTLE_SUBSCRIPT_CURSE_DAMAGE",
|
||||
"BATTLE_SUBSCRIPT_HAZARDS_CHECK",
|
||||
"BATTLE_SUBSCRIPT_FORESIGHT",
|
||||
"BATTLE_SUBSCRIPT_PERISH_SONG_START",
|
||||
"BATTLE_SUBSCRIPT_CONTINUE_PERISH_SONG",
|
||||
"BATTLE_SUBSCRIPT_WEATHER_START",
|
||||
"BATTLE_SUBSCRIPT_WEATHER_CONTINUES",
|
||||
"BATTLE_SUBSCRIPT_SWAGGER",
|
||||
"BATTLE_SUBSCRIPT_INFATUATE",
|
||||
"BATTLE_SUBSCRIPT_INFATUATED",
|
||||
"BATTLE_SUBSCRIPT_IMMOBILIZED_BY_LOVE",
|
||||
"BATTLE_SUBSCRIPT_SAFEGUARD_START",
|
||||
"BATTLE_SUBSCRIPT_SAFEGUARD_END",
|
||||
"BATTLE_SUBSCRIPT_RECOVER_HP",
|
||||
"BATTLE_SUBSCRIPT_PRESENT_HEAL",
|
||||
"BATTLE_SUBSCRIPT_MAGNITUDE",
|
||||
"BATTLE_SUBSCRIPT_BATON_PASS",
|
||||
"BATTLE_SUBSCRIPT_RAPID_SPIN",
|
||||
"BATTLE_SUBSCRIPT_BREAK_BIND_EFFECT",
|
||||
"BATTLE_SUBSCRIPT_BLOW_AWAY_HAZARDS",
|
||||
"BATTLE_SUBSCRIPT_GIVE_TARGET_OWN_STATUS",
|
||||
"BATTLE_SUBSCRIPT_BOOST_ALL_STATS",
|
||||
"BATTLE_SUBSCRIPT_BELLY_DRUM",
|
||||
"BATTLE_SUBSCRIPT_FUTURE_SIGHT_DAMAGE",
|
||||
"BATTLE_SUBSCRIPT_TELEPORT",
|
||||
"BATTLE_SUBSCRIPT_FUTURE_SIGHT_START",
|
||||
"BATTLE_SUBSCRIPT_STOCKPILE",
|
||||
"BATTLE_SUBSCRIPT_SWALLOW",
|
||||
"BATTLE_SUBSCRIPT_PRINT_MESSAGE_AND_PLAY_ANIMATION",
|
||||
"BATTLE_SUBSCRIPT_TORMENT_START",
|
||||
"BATTLE_SUBSCRIPT_FLATTER",
|
||||
"BATTLE_SUBSCRIPT_MEMENTO",
|
||||
"BATTLE_SUBSCRIPT_HEAL_TARGET_PARALYSIS",
|
||||
"BATTLE_SUBSCRIPT_CHARGE",
|
||||
"BATTLE_SUBSCRIPT_TAUNT_START",
|
||||
"BATTLE_SUBSCRIPT_MOVE_FAIL_TAUNTED",
|
||||
"BATTLE_SUBSCRIPT_EXCHANGE_ITEMS",
|
||||
"BATTLE_SUBSCRIPT_COPY_ABILITY",
|
||||
"BATTLE_SUBSCRIPT_WISH_HEAL",
|
||||
"BATTLE_SUBSCRIPT_INGRAIN_HEAL",
|
||||
"BATTLE_SUBSCRIPT_USER_ATK_AND_DEF_DOWN_1_STAGE",
|
||||
"BATTLE_SUBSCRIPT_MAGIC_COAT",
|
||||
"BATTLE_SUBSCRIPT_BREAK_SCREENS",
|
||||
"BATTLE_SUBSCRIPT_YAWN",
|
||||
"BATTLE_SUBSCRIPT_KNOCK_OFF",
|
||||
"BATTLE_SUBSCRIPT_EXCHANGE_ABILITIES",
|
||||
"BATTLE_SUBSCRIPT_MOVE_IS_IMPRISONED",
|
||||
"BATTLE_SUBSCRIPT_RECOVER_PSN_PRZ_BRN",
|
||||
"BATTLE_SUBSCRIPT_SNATCH",
|
||||
"BATTLE_SUBSCRIPT_RECOIL_1_3",
|
||||
"BATTLE_SUBSCRIPT_TARGET_ATK_AND_DEF_DOWN_1_STAGE",
|
||||
"BATTLE_SUBSCRIPT_USER_DEF_AND_SPDEF_UP_1_STAGE",
|
||||
"BATTLE_SUBSCRIPT_USER_ATK_AND_DEF_UP_1_STAGE",
|
||||
"BATTLE_SUBSCRIPT_USER_SPATK_AND_SPDEF_UP_1_STAGE",
|
||||
"BATTLE_SUBSCRIPT_USER_ATK_AND_SPEED_UP_1_STAGE",
|
||||
"BATTLE_SUBSCRIPT_PURSUIT",
|
||||
"BATTLE_SUBSCRIPT_ROOST",
|
||||
"BATTLE_SUBSCRIPT_HEAL_TARGET_SLEEP",
|
||||
"BATTLE_SUBSCRIPT_GRAVITY_START",
|
||||
"BATTLE_SUBSCRIPT_MOVE_FAIL_GRAVITY",
|
||||
"BATTLE_SUBSCRIPT_MIRACLE_EYE",
|
||||
"BATTLE_SUBSCRIPT_HEALING_WISH",
|
||||
"BATTLE_SUBSCRIPT_TAILWIND_START",
|
||||
"BATTLE_SUBSCRIPT_USER_DEF_AND_SPDEF_DOWN_1_STAGE",
|
||||
"BATTLE_SUBSCRIPT_USER_SWAP_ATK_AND_DEF",
|
||||
"BATTLE_SUBSCRIPT_SUPPRESS_TARGET_ABILITY",
|
||||
"BATTLE_SUBSCRIPT_LUCKY_CHANT_START",
|
||||
"BATTLE_SUBSCRIPT_EXCHANGE_ATK_AND_SPATK_STAGES",
|
||||
"BATTLE_SUBSCRIPT_EXCHANGE_DEF_AND_SPDEF_STAGES",
|
||||
"BATTLE_SUBSCRIPT_GIVE_TARGET_INSOMNIA",
|
||||
"BATTLE_SUBSCRIPT_EXCHANGE_ALL_STAT_STAGES",
|
||||
"BATTLE_SUBSCRIPT_AQUA_RING_HEAL",
|
||||
"BATTLE_SUBSCRIPT_RECOIL_1_3_CHANCE_TO_BURN",
|
||||
"BATTLE_SUBSCRIPT_DEFOG",
|
||||
"BATTLE_SUBSCRIPT_DEFOG_MESSAGE",
|
||||
"BATTLE_SUBSCRIPT_HEAL_BLOCK_START",
|
||||
"BATTLE_SUBSCRIPT_MOVE_IS_HEAL_BLOCKED",
|
||||
"BATTLE_SUBSCRIPT_ATTACK_THEN_SWITCH_OUT",
|
||||
"BATTLE_SUBSCRIPT_MOVE_FAIL_MISSED",
|
||||
"BATTLE_SUBSCRIPT_MOLD_BREAKER",
|
||||
"BATTLE_SUBSCRIPT_ABILITY_RESTORES_HP",
|
||||
"BATTLE_SUBSCRIPT_ABSORB_AND_BOOST_FIRE_TYPE_MOVES",
|
||||
"BATTLE_SUBSCRIPT_LIGHTNING_ROD_REDIRECTED",
|
||||
"BATTLE_SUBSCRIPT_BLOCKED_BY_SOUNDPROOF",
|
||||
"BATTLE_SUBSCRIPT_ABSORB_AND_SPEED_UP_1_STAGE",
|
||||
"BATTLE_SUBSCRIPT_DRIZZLE",
|
||||
"BATTLE_SUBSCRIPT_SAND_STREAM",
|
||||
"BATTLE_SUBSCRIPT_DROUGHT",
|
||||
"BATTLE_SUBSCRIPT_INTIMIDATE",
|
||||
"BATTLE_SUBSCRIPT_TRACE",
|
||||
"BATTLE_SUBSCRIPT_COLOR_CHANGE",
|
||||
"BATTLE_SUBSCRIPT_ROUGH_SKIN",
|
||||
"BATTLE_SUBSCRIPT_ABILITY_RESTORE_STATUS",
|
||||
"BATTLE_SUBSCRIPT_LOAFING_AROUND",
|
||||
"BATTLE_SUBSCRIPT_ABILITY_HP_RESTORE_GRADUAL",
|
||||
"BATTLE_SUBSCRIPT_AFTERMATH",
|
||||
"BATTLE_SUBSCRIPT_ANTICIPATION",
|
||||
"BATTLE_SUBSCRIPT_FOREWARN",
|
||||
"BATTLE_SUBSCRIPT_SLOW_START",
|
||||
"BATTLE_SUBSCRIPT_SLOW_START_END",
|
||||
"BATTLE_SUBSCRIPT_HELD_ITEM_HP_RESTORE",
|
||||
"BATTLE_SUBSCRIPT_HELD_ITEM_PRZ_RESTORE",
|
||||
"BATTLE_SUBSCRIPT_HELD_ITEM_SLP_RESTORE",
|
||||
"BATTLE_SUBSCRIPT_HELD_ITEM_PSN_RESTORE",
|
||||
"BATTLE_SUBSCRIPT_HELD_ITEM_BRN_RESTORE",
|
||||
"BATTLE_SUBSCRIPT_HELD_ITEM_FRZ_RESTORE",
|
||||
"BATTLE_SUBSCRIPT_HELD_ITEM_PP_RESTORE",
|
||||
"BATTLE_SUBSCRIPT_HELD_ITEM_CNF_RESTORE",
|
||||
"BATTLE_SUBSCRIPT_HELD_ITEM_MULTI_RESTORE",
|
||||
"BATTLE_SUBSCRIPT_HELD_ITEM_DISLIKE_FLAVOR",
|
||||
"BATTLE_SUBSCRIPT_HELD_ITEM_RAISE_STAT",
|
||||
"BATTLE_SUBSCRIPT_HELD_ITEM_RAISE_CRIT",
|
||||
"BATTLE_SUBSCRIPT_HELD_ITEM_SHARPLY_RAISE_STAT",
|
||||
"BATTLE_SUBSCRIPT_HELD_ITEM_STATDOWN_RESTORE",
|
||||
"BATTLE_SUBSCRIPT_HELD_ITEM_HEAL_INFATUATION",
|
||||
"BATTLE_SUBSCRIPT_RESTORE_A_LITTLE_HP",
|
||||
"BATTLE_SUBSCRIPT_LOSE_HP_FROM_ITEM",
|
||||
"BATTLE_SUBSCRIPT_LOSE_HP_FROM_ITEM_WITH_MESSAGE",
|
||||
"BATTLE_SUBSCRIPT_TRANSFER_STICKY_BARB",
|
||||
"BATTLE_SUBSCRIPT_ITEM_SKIP_CHARGE_TURN",
|
||||
"BATTLE_SUBSCRIPT_EMBARGO_START",
|
||||
"BATTLE_SUBSCRIPT_PLUCK",
|
||||
"BATTLE_SUBSCRIPT_FLING",
|
||||
"BATTLE_SUBSCRIPT_ABILITY_FORBIDS_STATUS",
|
||||
"BATTLE_SUBSCRIPT_ESCAPE_ITEM",
|
||||
"BATTLE_SUBSCRIPT_BATTLE_ITEM",
|
||||
"BATTLE_SUBSCRIPT_BAG_ITEM_HP_RESTORE",
|
||||
"BATTLE_SUBSCRIPT_BAG_ITEM_PP_RESTORE",
|
||||
"BATTLE_SUBSCRIPT_RECOIL_1_3_CHANCE_TO_PARALYZE",
|
||||
"BATTLE_SUBSCRIPT_SAFARI_THROW_BAIT",
|
||||
"BATTLE_SUBSCRIPT_SAFARI_THROW_ROCK",
|
||||
"BATTLE_SUBSCRIPT_SAFARI_ESCAPE",
|
||||
"BATTLE_SUBSCRIPT_ENEMY_ESCAPE",
|
||||
"BATTLE_SUBSCRIPT_REPLACE_FAINTED",
|
||||
"BATTLE_SUBSCRIPT_TIGHTEN_FOCUS",
|
||||
"BATTLE_SUBSCRIPT_TAILWIND_END",
|
||||
"BATTLE_SUBSCRIPT_RAINING_END",
|
||||
"BATTLE_SUBSCRIPT_SANDSTORM_END",
|
||||
"BATTLE_SUBSCRIPT_SUNNY_END",
|
||||
"BATTLE_SUBSCRIPT_HAILING_END",
|
||||
"BATTLE_SUBSCRIPT_GRAVITY_END",
|
||||
"BATTLE_SUBSCRIPT_CANNOT_HEAL",
|
||||
"BATTLE_SUBSCRIPT_UPROAR_CONTINUES",
|
||||
"BATTLE_SUBSCRIPT_UPROAR_END",
|
||||
"BATTLE_SUBSCRIPT_MAGNET_RISE_END",
|
||||
"BATTLE_SUBSCRIPT_HEAL_BLOCK_END",
|
||||
"BATTLE_SUBSCRIPT_EMBARGO_END",
|
||||
"BATTLE_SUBSCRIPT_RAGE_IS_BUILDING",
|
||||
"BATTLE_SUBSCRIPT_RECOIL_1_2",
|
||||
"BATTLE_SUBSCRIPT_BURN_OR_FLINCH",
|
||||
"BATTLE_SUBSCRIPT_FREEZE_OR_FLINCH",
|
||||
"BATTLE_SUBSCRIPT_PARALYZE_OR_FLINCH",
|
||||
"BATTLE_SUBSCRIPT_LUCKY_CHANT_END",
|
||||
"BATTLE_SUBSCRIPT_TRICK_ROOM_END",
|
||||
"BATTLE_SUBSCRIPT_SNOW_WARNING",
|
||||
"BATTLE_SUBSCRIPT_FRISK",
|
||||
"BATTLE_SUBSCRIPT_DISOBEY_WHILE_ASLEEP",
|
||||
"BATTLE_SUBSCRIPT_DISOBEY_DO_NOTHING",
|
||||
"BATTLE_SUBSCRIPT_DISOBEY_ORDERS",
|
||||
"BATTLE_SUBSCRIPT_DISOBEY_SLEEP",
|
||||
"BATTLE_SUBSCRIPT_DISOBEY_HIT_SELF",
|
||||
"BATTLE_SUBSCRIPT_CHARGE_MOVE_CLEANUP",
|
||||
"BATTLE_SUBSCRIPT_CHATTER",
|
||||
"BATTLE_SUBSCRIPT_LUNAR_DANCE",
|
||||
"BATTLE_SUBSCRIPT_FORM_CHANGE",
|
||||
"BATTLE_SUBSCRIPT_BAD_DREAMS",
|
||||
"BATTLE_SUBSCRIPT_TYPE_RESIST_BERRY",
|
||||
"BATTLE_SUBSCRIPT_HELD_ITEM_TEMP_ACC_UP",
|
||||
"BATTLE_SUBSCRIPT_HELD_ITEM_RECOIL_WHEN_HIT",
|
||||
"BATTLE_SUBSCRIPT_USE_POTION",
|
||||
"BATTLE_SUBSCRIPT_USE_STATUS_RECOVERY",
|
||||
"BATTLE_SUBSCRIPT_USE_STAT_BOOSTER",
|
||||
"BATTLE_SUBSCRIPT_USE_GUARD_SPEC",
|
||||
"BATTLE_SUBSCRIPT_OVERWORLD_RAIN",
|
||||
"BATTLE_SUBSCRIPT_OVERWORLD_HAIL",
|
||||
"BATTLE_SUBSCRIPT_OVERWORLD_SAND",
|
||||
"BATTLE_SUBSCRIPT_OVERWORLD_FOG",
|
||||
"BATTLE_SUBSCRIPT_THROW_SAFARI_BALL",
|
||||
"BATTLE_SUBSCRIPT_GRANT_EXP",
|
||||
"BATTLE_SUBSCRIPT_AFTER_SELFDESTRUCT",
|
||||
"BATTLE_SUBSCRIPT_CHECK_QUICK_CLAW",
|
||||
"BATTLE_SUBSCRIPT_PUSH_ATTACKER_AND_DEFENDER",
|
||||
"BATTLE_SUBSCRIPT_POP_ATTACKER_AND_DEFENDER",
|
||||
"BATTLE_SUBSCRIPT_NO_TARGET",
|
||||
"BATTLE_SUBSCRIPT_BIDE_NO_TARGET",
|
||||
"BATTLE_SUBSCRIPT_LINK_WIN_LOSE",
|
||||
"BATTLE_SUBSCRIPT_ESCAPE_SUCCESS",
|
||||
"BATTLE_SUBSCRIPT_PRESSURE",
|
||||
"BATTLE_SUBSCRIPT_ENEMY_ESCAPE_FAILED",
|
||||
"BATTLE_SUBSCRIPT_VANISH_OFF",
|
||||
"BATTLE_SUBSCRIPT_TAUNT_END",
|
||||
"BATTLE_SUBSCRIPT_USE_FULL_RESTORE",
|
||||
"BATTLE_SUBSCRIPT_PLUCK_CHECK",
|
||||
"BATTLE_SUBSCRIPT_WAIT_MOVE_ANIMATION",
|
||||
"BATTLE_SUBSCRIPT_POWER_HERB_SKULL_BASH",
|
||||
"BATTLE_SUBSCRIPT_CHECK_SHAYMIN_FORM",
|
||||
"BATTLE_SUBSCRIPT_OVERWORLD_SUN",
|
||||
"BATTLE_SUBSCRIPT_OVERWORLD_TRICK_ROOM",
|
||||
"BATTLE_SUBSCRIPT_GIRATINA_FORM_CHANGE"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -75,6 +75,12 @@
|
|||
|
||||
#define SYSCTL_HIT_MULTIPLE_TARGETS (SYSCTL_SKIP_OBEDIENCE_CHECK | SYSCTL_SKIP_STATUS_CHECK | SYSCTL_SKIP_PP_DECREMENT)
|
||||
#define SYSCTL_TWO_HITS (SYSCTL_SKIP_OBEDIENCE_CHECK | SYSCTL_SKIP_STATUS_CHECK | SYSCTL_SKIP_PP_DECREMENT)
|
||||
#define SYSCTL_TRIPLE_KICK (SYSCTL_SKIP_OBEDIENCE_CHECK \
|
||||
| SYSCTL_SKIP_STATUS_CHECK \
|
||||
| SYSCTL_SKIP_PP_DECREMENT \
|
||||
| SYSCTL_SKIP_IMMUNITY_TRIGGERS \
|
||||
| SYSCTL_SKIP_ACCURACY_OVERRIDES \
|
||||
| SYSCTL_SKIP_STOLEN_CHECK)
|
||||
#define SYSCTL_MULTI_HIT_MOVE (SYSCTL_SKIP_OBEDIENCE_CHECK \
|
||||
| SYSCTL_SKIP_STATUS_CHECK \
|
||||
| SYSCTL_SKIP_PP_DECREMENT \
|
||||
|
|
|
|||
|
|
@ -1,303 +0,0 @@
|
|||
#ifndef POKEPLATINUM_NARC_FILES_BATTLE_SKILL_SUBSEQ_H
|
||||
#define POKEPLATINUM_NARC_FILES_BATTLE_SKILL_SUBSEQ_H
|
||||
|
||||
enum NARCFilesBattleSubSeq {
|
||||
BATTLE_SUBSEQ_START_ENCOUNTER = 0,
|
||||
BATTLE_SUBSEQ_USE_MOVE,
|
||||
BATTLE_SUBSEQ_UPDATE_HP,
|
||||
BATTLE_SUBSEQ_ESCAPE,
|
||||
BATTLE_SUBSEQ_BATTLE_WON,
|
||||
BATTLE_SUBSEQ_BATTLE_LOST,
|
||||
BATTLE_SUBSEQ_FAINT_MON,
|
||||
BATTLE_SUBSEQ_MISSED,
|
||||
BATTLE_SUBSEQ_ESCAPE_FAILED,
|
||||
BATTLE_SUBSEQ_SWITCH_POKEMON,
|
||||
BATTLE_SUBSEQ_SHOW_PARTY_LIST,
|
||||
BATTLE_SUBSEQ_THROW_POKEBALL,
|
||||
BATTLE_SUBSEQ_UPDATE_STAT_STAGE,
|
||||
BATTLE_SUBSEQ_VANISH_ON_CHARGE_TURN,
|
||||
BATTLE_SUBSEQ_FLINCH_MON,
|
||||
BATTLE_SUBSEQ_FLINCHED,
|
||||
BATTLE_SUBSEQ_CRITICAL_HIT,
|
||||
BATTLE_SUBSEQ_HIT_X_TIMES,
|
||||
BATTLE_SUBSEQ_FALL_ASLEEP,
|
||||
BATTLE_SUBSEQ_WAKE_UP,
|
||||
BATTLE_SUBSEQ_SLEEPING,
|
||||
BATTLE_SUBSEQ_MOVE_FOLLOWUP_MESSAGE,
|
||||
BATTLE_SUBSEQ_POISON,
|
||||
BATTLE_SUBSEQ_POISON_DAMAGE,
|
||||
BATTLE_SUBSEQ_DRAIN_HALF_DAMAGE_DEALT,
|
||||
BATTLE_SUBSEQ_BURN,
|
||||
BATTLE_SUBSEQ_BURN_DAMAGE,
|
||||
BATTLE_SUBSEQ_FREEZE,
|
||||
BATTLE_SUBSEQ_FROZEN,
|
||||
BATTLE_SUBSEQ_THAW_OUT,
|
||||
BATTLE_SUBSEQ_DEFROSTED_BY_MOVE,
|
||||
BATTLE_SUBSEQ_PARALYZE,
|
||||
BATTLE_SUBSEQ_FULLY_PARALYZED,
|
||||
BATTLE_SUBSEQ_DREAM_EATER,
|
||||
BATTLE_SUBSEQ_RESET_ALL_STAT_STAGES,
|
||||
BATTLE_SUBSEQ_BIDE_START,
|
||||
BATTLE_SUBSEQ_BIDE_END,
|
||||
BATTLE_SUBSEQ_CONFUSE,
|
||||
BATTLE_SUBSEQ_CONFUSED,
|
||||
BATTLE_SUBSEQ_HURT_SELF_IN_CONFUSION,
|
||||
BATTLE_SUBSEQ_SNAP_OUT_OF_CONFUSION,
|
||||
BATTLE_SUBSEQ_TRAINER_MESSAGE,
|
||||
BATTLE_SUBSEQ_NO_PP,
|
||||
BATTLE_SUBSEQ_STRUGGLE,
|
||||
BATTLE_SUBSEQ_THRASH,
|
||||
BATTLE_SUBSEQ_CONVERSION,
|
||||
BATTLE_SUBSEQ_RECOVER_HALF_MAX_HP,
|
||||
BATTLE_SUBSEQ_BADLY_POISON,
|
||||
BATTLE_SUBSEQ_PAY_DAY,
|
||||
BATTLE_SUBSEQ_LIGHT_SCREEN,
|
||||
BATTLE_SUBSEQ_MOVE_EFFECT_END,
|
||||
BATTLE_SUBSEQ_THRASH_END,
|
||||
BATTLE_SUBSEQ_REFLECT,
|
||||
|
||||
BATTLE_SUBSEQ_MIST = 54,
|
||||
BATTLE_SUBSEQ_REST,
|
||||
BATTLE_SUBSEQ_UPROAR,
|
||||
|
||||
BATTLE_SUBSEQ_BIND_START = 58,
|
||||
BATTLE_SUBSEQ_BIND_EFFECT,
|
||||
BATTLE_SUBSEQ_BIND_END,
|
||||
|
||||
BATTLE_SUBSEQ_FOCUS_ENERGY = 62,
|
||||
BATTLE_SUBSEQ_RECOIL_1_4,
|
||||
BATTLE_SUBSEQ_RECHARGE_TURN,
|
||||
BATTLE_SUBSEQ_RECHARGING,
|
||||
BATTLE_SUBSEQ_SET_RAGE_FLAG,
|
||||
BATTLE_SUSBEQ_MIMIC,
|
||||
BATTLE_SUBSEQ_LEECH_SEED_START,
|
||||
BATTLE_SUBSEQ_LEECH_SEED_EFFECT,
|
||||
BATTLE_SUBSEQ_DISABLE_START,
|
||||
BATTLE_SUBSEQ_MOVE_IS_DISABLED,
|
||||
BATTLE_SUBSEQ_DISABLE_END,
|
||||
BATTLE_SUBSEQ_ENCORE_START,
|
||||
BATTLE_SUBSEQ_ENCORE_END,
|
||||
|
||||
BATTLE_SUBSEQ_PAIN_SPLIT = 77,
|
||||
BATTLE_SUBSEQ_CONVERSION_2,
|
||||
BATTLE_SUBSEQ_LOCK_ON,
|
||||
BATTLE_SUBSEQ_SKETCH,
|
||||
BATTLE_SUBSEQ_FEINT,
|
||||
BATTLE_SUBSEQ_DESTINY_BOND,
|
||||
BATTLE_SUBSEQ_FAINT_CHECK_DESTINY_BOND,
|
||||
BATTLE_SUBSEQ_REDUCE_TARGET_PP,
|
||||
BATTLE_SUBSEQ_STEAL_ITEM,
|
||||
BATTLE_SUBSEQ_MEAN_LOOK,
|
||||
BATTLE_SUBSEQ_PROTECT,
|
||||
BATTLE_SUBSEQ_HEAL_BELL,
|
||||
BATTLE_SUBSEQ_TRY_SUBSTITUTE,
|
||||
BATTLE_SUBSEQ_HIT_SUBSTITUTE,
|
||||
BATTLE_SUBSEQ_FORCE_TARGET_TO_SWITCH_OR_FLEE,
|
||||
BATTLE_SUSBEQ_TRANSFORM_INTO_TARGET,
|
||||
BATTLE_SUBSEQ_NIGHTMARE_START,
|
||||
BATTLE_SUBSEQ_NIGHTMARE_EFFECT,
|
||||
BATTLE_SUBSEQ_MINIMIZE,
|
||||
BATTLE_SUBSEQ_CURSE_NORMAL,
|
||||
BATTLE_SUBSEQ_CURSE_GHOST,
|
||||
BATTLE_SUBSEQ_CURSE_DAMAGE,
|
||||
BATTLE_SUBSEQ_HAZARDS_CHECK,
|
||||
BATTLE_SUBSEQ_FORESIGHT,
|
||||
BATTLE_SUBSEQ_PERISH_SONG_START,
|
||||
BATTLE_SUBSEQ_CONTINUE_PERISH_SONG,
|
||||
BATTLE_SUBSEQ_WEATHER_START,
|
||||
BATTLE_SUBSEQ_WEATHER_CONTINUES,
|
||||
BATTLE_SUBSEQ_SWAGGER,
|
||||
BATTLE_SUBSEQ_INFATUATE,
|
||||
BATTLE_SUBSEQ_INFATUATED,
|
||||
BATTLE_SUBSEQ_IMMOBILIZED_BY_LOVE,
|
||||
BATTLE_SUBSEQ_SAFEGUARD_START,
|
||||
BATTLE_SUBSEQ_SAFEGUARD_END,
|
||||
|
||||
BATTLE_SUBSEQ_PRESENT_HEAL = 112,
|
||||
BATTLE_SUBSEQ_MAGNITUDE,
|
||||
BATTLE_SUBSEQ_BATON_PASS,
|
||||
BATTLE_SUBSEQ_RAPID_SPIN,
|
||||
BATTLE_SUBSEQ_BREAK_BIND_EFFECT,
|
||||
BATTLE_SUBSEQ_BLOW_AWAY_HAZARDS,
|
||||
BATTLE_SUBSEQ_GIVE_TARGET_OWN_STATUS,
|
||||
BATTLE_SUBSEQ_BOOST_ALL_STATS,
|
||||
BATTLE_SUBSEQ_BELLY_DRUM,
|
||||
BATTLE_SUBSEQ_FUTURE_SIGHT_DAMAGE,
|
||||
BATTLE_SUBSEQ_TELEPORT,
|
||||
BATTLE_SUBSEQ_FUTURE_SIGHT_START,
|
||||
BATTLE_SUBSEQ_STOCKPILE,
|
||||
BATTLE_SUBSEQ_SWALLOW,
|
||||
BATTLE_SUBSEQ_PRINT_MESSAGE_AND_PLAY_ANIMATION,
|
||||
BATTLE_SUBSEQ_TORMENT_START,
|
||||
BATTLE_SUBSEQ_FLATTER,
|
||||
BATTLE_SUBSEQ_MEMENTO,
|
||||
BATTLE_SUBSEQ_HEAL_TARGET_PARALYSIS,
|
||||
BATTLE_SUBSEQ_CHARGE,
|
||||
BATTLE_SUBSEQ_TAUNT_START,
|
||||
BATTLE_SUBSEQ_MOVE_FAIL_TAUNTED,
|
||||
BATTLE_SUBSEQ_EXCHANGE_ITEMS,
|
||||
BATTLE_SUBSEQ_COPY_ABILITY,
|
||||
BATTLE_SUBSEQ_WISH_HEAL,
|
||||
BATTLE_SUBSEQ_INGRAIN_HEAL,
|
||||
BATTLE_SUBSEQ_USER_ATK_AND_DEF_DOWN_1_STAGE,
|
||||
BATTLE_SUBSEQ_MAGIC_COAT,
|
||||
BATTLE_SUBSEQ_BREAK_SCREENS,
|
||||
BATTLE_SUBSEQ_YAWN,
|
||||
BATTLE_SUBSEQ_KNOCK_OFF,
|
||||
BATTLE_SUBSEQ_EXCHANGE_ABILITIES,
|
||||
BATTLE_SUBSEQ_MOVE_IS_IMPRISONED,
|
||||
BATTLE_SUBSEQ_RECOVER_PSN_PRZ_BRN,
|
||||
BATTLE_SUBSEQ_SNATCH,
|
||||
BATTLE_SUBSEQ_RECOIL_1_3,
|
||||
BATTLE_SUBSEQ_TARGET_ATK_AND_DEF_DOWN_1_STAGE,
|
||||
|
||||
BATTLE_SUBSEQ_USER_DEF_AND_SPDEF_UP_1_STAGE = 149,
|
||||
BATTLE_SUBSEQ_USER_ATK_AND_DEF_UP_1_STAGE,
|
||||
BATTLE_SUBSEQ_USER_SPATK_AND_SPDEF_UP_1_STAGE,
|
||||
BATTLE_SUBSEQ_USER_ATK_AND_SPEED_UP_1_STAGE,
|
||||
BATTLE_SUBSEQ_PURSUIT,
|
||||
BATTLE_SUBSEQ_ROOST,
|
||||
BATTLE_SUBSEQ_HEAL_TARGET_SLEEP,
|
||||
BATTLE_SUBSEQ_GRAVITY_START,
|
||||
BATTLE_SUBSEQ_MOVE_FAIL_GRAVITY,
|
||||
BATTLE_SUBSEQ_MIRACLE_EYE,
|
||||
BATTLE_SUBSEQ_HEALING_WISH,
|
||||
BATTLE_SUBSEQ_TAILWIND_START,
|
||||
BATTLE_SUBSEQ_USER_DEF_AND_SPDEF_DOWN_1_STAGE,
|
||||
BATTLE_SUBSEQ_USER_SWAP_ATK_AND_DEF,
|
||||
BATTLE_SUBSEQ_SUPPRESS_TARGET_ABILITY,
|
||||
BATTLE_SUBSEQ_LUCKY_CHANT_START,
|
||||
BATTLE_SUBSEQ_EXCHANGE_ATK_AND_SPATK_STAGES,
|
||||
BATTLE_SUBSEQ_EXCHANGE_DEF_AND_SPDEF_STAGES,
|
||||
BATTLE_SUBSEQ_GIVE_TARGET_INSOMNIA,
|
||||
BATTLE_SUBSEQ_EXCHANGE_ALL_STAT_STAGES,
|
||||
BATTLE_SUBSEQ_AQUA_RING_HEAL,
|
||||
BATTLE_SUBSEQ_RECOIL_1_3_CHANCE_TO_BURN,
|
||||
BATTLE_SUBSEQ_DEFOG,
|
||||
|
||||
BATTLE_SUBSEQ_HEAL_BLOCK_START = 173,
|
||||
BATTLE_SUBSEQ_MOVE_IS_HEAL_BLOCKED,
|
||||
BATTLE_SUBSEQ_ATTACK_THEN_SWITCH_OUT,
|
||||
|
||||
BATTLE_SUBSEQ_MOLD_BREAKER = 177,
|
||||
BATTLE_SUBSEQ_ABILITY_RESTORES_HP,
|
||||
BATTLE_SUBSEQ_ABSORB_AND_BOOST_FIRE_TYPE_MOVES,
|
||||
BATTLE_SUBSEQ_LIGHTNING_ROD_REDIRECTED,
|
||||
BATTLE_SUBSEQ_BLOCKED_BY_SOUNDPROOF,
|
||||
BATTLE_SUBSEQ_ABSORB_AND_SPEED_UP_1_STAGE,
|
||||
BATTLE_SUBSEQ_DRIZZLE,
|
||||
BATTLE_SUBSEQ_SAND_STREAM,
|
||||
BATTLE_SUBSEQ_DROUGHT,
|
||||
BATTLE_SUBSEQ_INTIMIDATE,
|
||||
BATTLE_SUBSEQ_TRACE,
|
||||
BATTLE_SUBSEQ_COLOR_CHANGE,
|
||||
BATTLE_SUBSEQ_ROUGH_SKIN,
|
||||
BATTLE_SUBSEQ_ABILITY_RESTORE_STATUS,
|
||||
BATTLE_SUBSEQ_LOAFING_AROUND,
|
||||
|
||||
BATTLE_SUBSEQ_AFTERMATH = 193,
|
||||
BATTLE_SUBSEQ_ANTICIPATION,
|
||||
BATTLE_SUBSEQ_FOREWARN,
|
||||
BATTLE_SUBSEQ_SLOW_START,
|
||||
BATTLE_SUBSEQ_SLOW_START_END,
|
||||
BATTLE_SUBSEQ_HELD_ITEM_HP_RESTORE,
|
||||
BATTLE_SUBSEQ_HELD_ITEM_PRZ_RESTORE,
|
||||
BATTLE_SUBSEQ_HELD_ITEM_SLP_RESTORE,
|
||||
BATTLE_SUBSEQ_HELD_ITEM_PSN_RESTORE,
|
||||
BATTLE_SUBSEQ_HELD_ITEM_BRN_RESTORE,
|
||||
BATTLE_SUBSEQ_HELD_ITEM_FRZ_RESTORE,
|
||||
BATTLE_SUBSEQ_HELD_ITEM_PP_RESTORE,
|
||||
BATTLE_SUBSEQ_HELD_ITEM_CNF_RESTORE,
|
||||
BATTLE_SUBSEQ_HELD_ITEM_MULTI_RESTORE,
|
||||
BATTLE_SUBSEQ_HELD_ITEM_DISLIKE_FLAVOR,
|
||||
BATTLE_SUBSEQ_HELD_ITEM_RAISE_STAT,
|
||||
BATTLE_SUBSEQ_HELD_ITEM_RAISE_CRIT,
|
||||
BATTLE_SUBSEQ_HELD_ITEM_SHARPLY_RAISE_STAT,
|
||||
BATTLE_SUBSEQ_HELD_ITEM_STATDOWN_RESTORE,
|
||||
BATTLE_SUBSEQ_HELD_ITEM_HEAL_INFATUATION,
|
||||
BATTLE_SUBSEQ_RESTORE_A_LITTLE_HP,
|
||||
BATTLE_SUBSEQ_LOSE_HP_FROM_ITEM,
|
||||
BATTLE_SUBSEQ_LOSE_HP_FROM_ITEM_WITH_MESSAGE,
|
||||
BATTLE_SUBSEQ_TRANSFER_STICKY_BARB = 216,
|
||||
|
||||
BATTLE_SUBSEQ_EMBARGO_START = 218,
|
||||
BATTLE_SUBSEQ_PLUCK,
|
||||
BATTLE_SUBSEQ_FLING,
|
||||
BATTLE_SUBSEQ_ABILITY_FORBIDS_STATUS,
|
||||
BATTLE_SUBSEQ_ESCAPE_ITEM,
|
||||
BATTLE_SUBSEQ_BATTLE_ITEM,
|
||||
|
||||
BATTLE_SUBSEQ_RECOIL_1_3_CHANCE_TO_PARALYZE = 226,
|
||||
BATTLE_SUBSEQ_SAFARI_THROW_BAIT,
|
||||
BATTLE_SUBSEQ_SAFARI_THROW_ROCK,
|
||||
BATTLE_SUBSEQ_SAFARI_ESCAPE,
|
||||
BATTLE_SUBSEQ_ENEMY_ESCAPE,
|
||||
BATTLE_SUBSEQ_REPLACE_FAINTED,
|
||||
BATTLE_SUBSEQ_TIGHTEN_FOCUS,
|
||||
BATTLE_SUBSEQ_TAILWIND_END,
|
||||
BATTLE_SUBSEQ_RAINING_END,
|
||||
BATTLE_SUBSEQ_SANDSTORM_END,
|
||||
BATTLE_SUBSEQ_SUNNY_END,
|
||||
BATTLE_SUBSEQ_HAILING_END,
|
||||
BATTLE_SUBSEQ_GRAVITY_END,
|
||||
BATTLE_SUBSEQ_CANNOT_HEAL,
|
||||
BATTLE_SUBSEQ_UPROAR_CONTINUES,
|
||||
BATTLE_SUBSEQ_UPROAR_END,
|
||||
BATTLE_SUBSEQ_MAGNET_RISE_END,
|
||||
BATTLE_SUBSEQ_HEAL_BLOCK_END,
|
||||
BATTLE_SUBSEQ_EMBARGO_END,
|
||||
BATTLE_SUBSEQ_RAGE_IS_BUILDING,
|
||||
BATTLE_SUBSEQ_RECOIL_1_2,
|
||||
BATTLE_SUBSEQ_BURN_OR_FLINCH,
|
||||
BATTLE_SUBSEQ_FREEZE_OR_FLINCH,
|
||||
BATTLE_SUBSEQ_PARALYZE_OR_FLINCH,
|
||||
|
||||
BATTLE_SUBSEQ_LUCKY_CHANT_END = 250,
|
||||
BATTLE_SUBSEQ_TRICK_ROOM_END,
|
||||
BATTLE_SUBSEQ_SNOW_WARNING,
|
||||
BATTLE_SUBSEQ_FRISK,
|
||||
BATTLE_SUBSEQ_DISOBEY_WHILE_ASLEEP,
|
||||
BATTLE_SUBSEQ_DISOBEY_DO_NOTHING,
|
||||
BATTLE_SUBSEQ_DISOBEY_ORDERS,
|
||||
BATTLE_SUBSEQ_DISOBEY_SLEEP,
|
||||
BATTLE_SUBSEQ_DISOBEY_HIT_SELF,
|
||||
|
||||
BATTLE_SUBSEQ_CHATTER = 260,
|
||||
BATTLE_SUBSEQ_LUNAR_DANCE,
|
||||
BATTLE_SUBSEQ_FORM_CHANGE,
|
||||
BATTLE_SUBSEQ_BAD_DREAMS,
|
||||
|
||||
BATTLE_SUBSEQ_HELD_ITEM_TEMP_ACC_UP = 265,
|
||||
BATTLE_SUBSEQ_HELD_ITEM_RECOIL_WHEN_HIT,
|
||||
BATTLE_SUBSEQ_USE_POTION,
|
||||
BATTLE_SUBSEQ_USE_STATUS_RECOVERY,
|
||||
BATTLE_SUBSEQ_USE_STAT_BOOSTER,
|
||||
BATTLE_SUBSEQ_USE_GUARD_SPEC,
|
||||
BATTLE_SUBSEQ_OVERWORLD_RAIN,
|
||||
BATTLE_SUBSEQ_OVERWORLD_HAIL,
|
||||
BATTLE_SUBSEQ_OVERWORLD_SAND,
|
||||
BATTLE_SUBSEQ_OVERWORLD_FOG,
|
||||
BATTLE_SUBSEQ_THROW_SAFARI_BALL,
|
||||
BATTLE_SUBSEQ_GRANT_EXP,
|
||||
BATTLE_SUBSEQ_AFTER_SELFDESTRUCT,
|
||||
BATTLE_SUBSEQ_CHECK_QUICK_CLAW,
|
||||
|
||||
BATTLE_SUBSEQ_NO_TARGET = 281,
|
||||
BATTLE_SUBSEQ_BIDE_NO_TARGET,
|
||||
|
||||
BATTLE_SUBSEQ_PRESSURE = 285,
|
||||
BATTLE_SUBSEQ_ENEMY_ESCAPE_FAILED,
|
||||
BATTLE_SUBSEQ_VANISH_OFF,
|
||||
|
||||
BATTLE_SUBSEQ_TAUNT_END = 288,
|
||||
BATTLE_SUBSEQ_USE_FULL_RESTORE,
|
||||
|
||||
BATTLE_SUBSEQ_WAIT_MOVE_ANIMATION = 291,
|
||||
|
||||
BATTLE_SUBSEQ_CHECK_SHAYMIN_FORM = 293,
|
||||
BATTLE_SUBSEQ_OVERWORLD_SUN,
|
||||
BATTLE_SUBSEQ_OVERWORLD_TRICK_ROOM,
|
||||
BATTLE_SUBSEQ_GIRATINA_FORM_CHANGE,
|
||||
};
|
||||
|
||||
#endif // POKEPLATINUM_NARC_FILES_BATTLE_SKILL_SUBSEQ_H
|
||||
|
|
@ -1,150 +1,152 @@
|
|||
#include "constants/battle/side_effects.h"
|
||||
#include "constants/narc_files/battle_skill_subseq.h"
|
||||
|
||||
#include "consts/generated/c/battle.h"
|
||||
#include "consts/generated/c/battle_subscripts.h"
|
||||
|
||||
static const int sSideEffectSubscripts[] = {
|
||||
[MOVE_SUBSCRIPT_PTR_NONE] = NULL,
|
||||
[MOVE_SUBSCRIPT_PTR_SLEEP] = BATTLE_SUBSEQ_FALL_ASLEEP,
|
||||
[MOVE_SUBSCRIPT_PTR_POISON] = BATTLE_SUBSEQ_POISON,
|
||||
[MOVE_SUBSCRIPT_PTR_BURN] = BATTLE_SUBSEQ_BURN,
|
||||
[MOVE_SUBSCRIPT_PTR_FREEZE] = BATTLE_SUBSEQ_FREEZE,
|
||||
[MOVE_SUBSCRIPT_PTR_PARALYZE] = BATTLE_SUBSEQ_PARALYZE,
|
||||
[MOVE_SUBSCRIPT_PTR_BADLY_POISON] = BATTLE_SUBSEQ_BADLY_POISON,
|
||||
[MOVE_SUBSCRIPT_PTR_CONFUSE] = BATTLE_SUBSEQ_CONFUSE,
|
||||
[MOVE_SUBSCRIPT_PTR_FLINCH] = BATTLE_SUBSEQ_FLINCH_MON,
|
||||
[MOVE_SUBSCRIPT_PTR_REST] = BATTLE_SUBSEQ_REST,
|
||||
[MOVE_SUBSCRIPT_PTR_UPROAR] = BATTLE_SUBSEQ_UPROAR,
|
||||
[MOVE_SUBSCRIPT_PTR_PAY_DAY] = BATTLE_SUBSEQ_PAY_DAY,
|
||||
[MOVE_SUBSCRIPT_PTR_VANISH_CHARGE_TURN] = BATTLE_SUBSEQ_VANISH_ON_CHARGE_TURN,
|
||||
[MOVE_SUBSCRIPT_PTR_BIND_TARGET] = BATTLE_SUBSEQ_BIND_START,
|
||||
[MOVE_SUBSCRIPT_PTR_QUARTER_RECOIL] = BATTLE_SUBSEQ_RECOIL_1_4,
|
||||
[MOVE_SUBSCRIPT_PTR_ATTACK_UP_1_STAGE] = BATTLE_SUBSEQ_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_DEFENSE_UP_1_STAGE] = BATTLE_SUBSEQ_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_SPEED_UP_1_STAGE] = BATTLE_SUBSEQ_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_SP_ATTACK_UP_1_STAGE] = BATTLE_SUBSEQ_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_SP_DEFENSE_UP_1_STAGE] = BATTLE_SUBSEQ_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_ACCURACY_UP_1_STAGE] = BATTLE_SUBSEQ_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_EVASION_UP_1_STAGE] = BATTLE_SUBSEQ_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_ATTACK_DOWN_1_STAGE] = BATTLE_SUBSEQ_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_DEFENSE_DOWN_1_STAGE] = BATTLE_SUBSEQ_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_SPEED_DOWN_1_STAGE] = BATTLE_SUBSEQ_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_SP_ATTACK_DOWN_1_STAGE] = BATTLE_SUBSEQ_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_SP_DEFENSE_DOWN_1_STAGE] = BATTLE_SUBSEQ_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_ACCURACY_DOWN_1_STAGE] = BATTLE_SUBSEQ_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_EVASION_DOWN_1_STAGE] = BATTLE_SUBSEQ_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_RECHARGE_TURN] = BATTLE_SUBSEQ_RECHARGE_TURN,
|
||||
[MOVE_SUBSCRIPT_PTR_SET_RAGE_FLAG] = BATTLE_SUBSEQ_SET_RAGE_FLAG,
|
||||
[MOVE_SUBSCRIPT_PTR_STEAL_ITEM] = BATTLE_SUBSEQ_STEAL_ITEM,
|
||||
[MOVE_SUBSCRIPT_PTR_MEAN_LOOK] = BATTLE_SUBSEQ_MEAN_LOOK,
|
||||
[MOVE_SUBSCRIPT_PTR_NIGHTMARE_START] = BATTLE_SUBSEQ_NIGHTMARE_START,
|
||||
[MOVE_SUBSCRIPT_PTR_BOOST_ALL_STATS] = BATTLE_SUBSEQ_BOOST_ALL_STATS,
|
||||
[MOVE_SUBSCRIPT_PTR_RAPID_SPIN] = BATTLE_SUBSEQ_RAPID_SPIN,
|
||||
[MOVE_SUBSCRIPT_PTR_HEAL_TARGET_PARALYSIS] = BATTLE_SUBSEQ_HEAL_TARGET_PARALYSIS,
|
||||
[MOVE_SUBSCRIPT_PTR_USER_ATK_AND_DEF_DOWN_1_STAGE] = BATTLE_SUBSEQ_USER_ATK_AND_DEF_DOWN_1_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_RECOIL_1_3] = BATTLE_SUBSEQ_RECOIL_1_3,
|
||||
[MOVE_SUBSCRIPT_PTR_ATTACK_UP_2_STAGES] = BATTLE_SUBSEQ_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_DEFENSE_UP_2_STAGES] = BATTLE_SUBSEQ_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_SPEED_UP_2_STAGES] = BATTLE_SUBSEQ_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_SP_ATTACK_UP_2_STAGES] = BATTLE_SUBSEQ_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_SP_DEFENSE_UP_2_STAGES] = BATTLE_SUBSEQ_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_ACCURACY_UP_2_STAGES] = BATTLE_SUBSEQ_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_EVASION_UP_2_STAGES] = BATTLE_SUBSEQ_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_ATTACK_DOWN_2_STAGES] = BATTLE_SUBSEQ_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_DEFENSE_DOWN_2_STAGES] = BATTLE_SUBSEQ_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_SPEED_DOWN_2_STAGES] = BATTLE_SUBSEQ_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_SP_ATTACK_DOWN_2_STAGES] = BATTLE_SUBSEQ_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_SP_DEFENSE_DOWN_2_STAGES] = BATTLE_SUBSEQ_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_ACCURACY_DOWN_2_STAGES] = BATTLE_SUBSEQ_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_EVASION_DOWN_2_STAGES] = BATTLE_SUBSEQ_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_THRASH] = BATTLE_SUBSEQ_THRASH,
|
||||
[MOVE_SUBSCRIPT_PTR_KNOCK_OFF] = BATTLE_SUBSEQ_KNOCK_OFF,
|
||||
[MOVE_SUBSCRIPT_PTR_USER_DEF_AND_SPDEF_UP_1_STAGE] = BATTLE_SUBSEQ_USER_DEF_AND_SPDEF_UP_1_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_USER_ATK_AND_DEF_UP_1_STAGE] = BATTLE_SUBSEQ_USER_ATK_AND_DEF_UP_1_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_TARGET_ATK_AND_DEF_DOWN_1_STAGE] = BATTLE_SUBSEQ_TARGET_ATK_AND_DEF_DOWN_1_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_USER_SPATK_AND_SPDEF_UP_1_STAGE] = BATTLE_SUBSEQ_USER_SPATK_AND_SPDEF_UP_1_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_USER_ATK_AND_SPEED_UP_1_STAGE] = BATTLE_SUBSEQ_USER_ATK_AND_SPEED_UP_1_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_DRAIN_HALF_DAMAGE_DEALT] = BATTLE_SUBSEQ_DRAIN_HALF_DAMAGE_DEALT,
|
||||
[MOVE_SUBSCRIPT_PTR_DREAM_EATER] = BATTLE_SUBSEQ_DREAM_EATER,
|
||||
[MOVE_SUBSCRIPT_PTR_RESET_ALL_STAT_STAGES] = BATTLE_SUBSEQ_RESET_ALL_STAT_STAGES,
|
||||
[MOVE_SUBSCRIPT_PTR_BIDE_START] = BATTLE_SUBSEQ_BIDE_START,
|
||||
[MOVE_SUBSCRIPT_PTR_STRUGGLE] = BATTLE_SUBSEQ_STRUGGLE,
|
||||
[MOVE_SUBSCRIPT_PTR_CONVERSION] = BATTLE_SUBSEQ_CONVERSION,
|
||||
[MOVE_SUBSCRIPT_PTR_RECOVER_HALF_MAX_HP] = BATTLE_SUBSEQ_RECOVER_HALF_MAX_HP,
|
||||
[MOVE_SUBSCRIPT_PTR_LIGHT_SCREEN] = BATTLE_SUBSEQ_LIGHT_SCREEN,
|
||||
[MOVE_SUBSCRIPT_PTR_REFLECT] = BATTLE_SUBSEQ_REFLECT,
|
||||
[MOVE_SUBSCRIPT_PTR_MIST] = BATTLE_SUBSEQ_MIST,
|
||||
[MOVE_SUBSCRIPT_PTR_FOCUS_ENERGY] = BATTLE_SUBSEQ_FOCUS_ENERGY,
|
||||
[MOVE_SUBSCRIPT_PTR_MIMIC] = BATTLE_SUSBEQ_MIMIC,
|
||||
[MOVE_SUBSCRIPT_PTR_LEECH_SEED_START] = BATTLE_SUBSEQ_LEECH_SEED_START,
|
||||
[MOVE_SUBSCRIPT_PTR_DISABLE_START] = BATTLE_SUBSEQ_DISABLE_START,
|
||||
[MOVE_SUBSCRIPT_PTR_ENCORE_START] = BATTLE_SUBSEQ_ENCORE_START,
|
||||
[MOVE_SUBSCRIPT_PTR_PAIN_SPLIT] = BATTLE_SUBSEQ_PAIN_SPLIT,
|
||||
[MOVE_SUBSCRIPT_PTR_CONVERSION_2] = BATTLE_SUBSEQ_CONVERSION_2,
|
||||
[MOVE_SUBSCRIPT_PTR_LOCK_ON] = BATTLE_SUBSEQ_LOCK_ON,
|
||||
[MOVE_SUBSCRIPT_PTR_SKETCH] = BATTLE_SUBSEQ_SKETCH,
|
||||
[MOVE_SUBSCRIPT_PTR_FEINT] = BATTLE_SUBSEQ_FEINT,
|
||||
[MOVE_SUBSCRIPT_PTR_DESTINY_BOND] = BATTLE_SUBSEQ_DESTINY_BOND,
|
||||
[MOVE_SUBSCRIPT_PTR_REDUCE_TARGET_PP] = BATTLE_SUBSEQ_REDUCE_TARGET_PP,
|
||||
[MOVE_SUBSCRIPT_PTR_PROTECT] = BATTLE_SUBSEQ_PROTECT,
|
||||
[MOVE_SUBSCRIPT_PTR_HEAL_BELL] = BATTLE_SUBSEQ_HEAL_BELL,
|
||||
[MOVE_SUBSCRIPT_PTR_TRY_SUBSTITUTE] = BATTLE_SUBSEQ_TRY_SUBSTITUTE,
|
||||
[MOVE_SUBSCRIPT_PTR_FORCE_TARGET_TO_SWITCH_OR_FLEE] = BATTLE_SUBSEQ_FORCE_TARGET_TO_SWITCH_OR_FLEE,
|
||||
[MOVE_SUBSCRIPT_PTR_TRANSFORM_INTO_TARGET] = BATTLE_SUSBEQ_TRANSFORM_INTO_TARGET,
|
||||
[MOVE_SUBSCRIPT_PTR_MINIMIZE] = BATTLE_SUBSEQ_MINIMIZE,
|
||||
[MOVE_SUBSCRIPT_PTR_CURSE_NORMAL] = BATTLE_SUBSEQ_CURSE_NORMAL,
|
||||
[MOVE_SUBSCRIPT_PTR_CURSE_GHOST] = BATTLE_SUBSEQ_CURSE_GHOST,
|
||||
[MOVE_SUBSCRIPT_PTR_PRINT_MESSAGE_AND_PLAY_ANIMATION] = BATTLE_SUBSEQ_PRINT_MESSAGE_AND_PLAY_ANIMATION,
|
||||
[MOVE_SUBSCRIPT_PTR_FORESIGHT] = BATTLE_SUBSEQ_FORESIGHT,
|
||||
[MOVE_SUBSCRIPT_PTR_PERISH_SONG_START] = BATTLE_SUBSEQ_PERISH_SONG_START,
|
||||
[MOVE_SUBSCRIPT_PTR_WEATHER_START] = BATTLE_SUBSEQ_WEATHER_START,
|
||||
[MOVE_SUBSCRIPT_PTR_SWAGGER] = BATTLE_SUBSEQ_SWAGGER,
|
||||
[MOVE_SUBSCRIPT_PTR_INFATUATE] = BATTLE_SUBSEQ_INFATUATE,
|
||||
[MOVE_SUBSCRIPT_PTR_SAFEGUARD_START] = BATTLE_SUBSEQ_SAFEGUARD_START,
|
||||
[MOVE_SUBSCRIPT_PTR_PRESENT_HEAL] = BATTLE_SUBSEQ_PRESENT_HEAL,
|
||||
[MOVE_SUBSCRIPT_PTR_MAGNITUDE] = BATTLE_SUBSEQ_MAGNITUDE,
|
||||
[MOVE_SUBSCRIPT_PTR_BATON_PASS] = BATTLE_SUBSEQ_BATON_PASS,
|
||||
[MOVE_SUBSCRIPT_PTR_BELLY_DRUM] = BATTLE_SUBSEQ_BELLY_DRUM,
|
||||
[MOVE_SUBSCRIPT_PTR_TELEPORT] = BATTLE_SUBSEQ_TELEPORT,
|
||||
[MOVE_SUBSCRIPT_PTR_FUTURE_SIGHT_START] = BATTLE_SUBSEQ_FUTURE_SIGHT_START,
|
||||
[MOVE_SUBSCRIPT_PTR_STOCKPILE] = BATTLE_SUBSEQ_STOCKPILE,
|
||||
[MOVE_SUBSCRIPT_PTR_SWALLOW] = BATTLE_SUBSEQ_SWALLOW,
|
||||
[MOVE_SUBSCRIPT_PTR_TORMENT_START] = BATTLE_SUBSEQ_TORMENT_START,
|
||||
[MOVE_SUBSCRIPT_PTR_FLATTER] = BATTLE_SUBSEQ_FLATTER,
|
||||
[MOVE_SUBSCRIPT_PTR_MEMENTO] = BATTLE_SUBSEQ_MEMENTO,
|
||||
[MOVE_SUBSCRIPT_PTR_CHARGE] = BATTLE_SUBSEQ_CHARGE,
|
||||
[MOVE_SUBSCRIPT_PTR_TAUNT_START] = BATTLE_SUBSEQ_TAUNT_START,
|
||||
[MOVE_SUBSCRIPT_PTR_EXCHANGE_ITEMS] = BATTLE_SUBSEQ_EXCHANGE_ITEMS,
|
||||
[MOVE_SUBSCRIPT_PTR_COPY_ABILITY] = BATTLE_SUBSEQ_COPY_ABILITY,
|
||||
[MOVE_SUBSCRIPT_PTR_BREAK_SCREENS] = BATTLE_SUBSEQ_BREAK_SCREENS,
|
||||
[MOVE_SUBSCRIPT_PTR_YAWN] = BATTLE_SUBSEQ_YAWN,
|
||||
[MOVE_SUBSCRIPT_PTR_EXCHANGE_ABILITIES] = BATTLE_SUBSEQ_EXCHANGE_ABILITIES,
|
||||
[MOVE_SUBSCRIPT_PTR_RECOVER_PSN_PRZ_BRN] = BATTLE_SUBSEQ_RECOVER_PSN_PRZ_BRN,
|
||||
[MOVE_SUBSCRIPT_PTR_ROOST] = BATTLE_SUBSEQ_ROOST,
|
||||
[MOVE_SUBSCRIPT_PTR_HEAL_TARGET_SLEEP] = BATTLE_SUBSEQ_HEAL_TARGET_SLEEP,
|
||||
[MOVE_SUBSCRIPT_PTR_GRAVITY_START] = BATTLE_SUBSEQ_GRAVITY_START,
|
||||
[MOVE_SUBSCRIPT_PTR_MIRACLE_EYE] = BATTLE_SUBSEQ_MIRACLE_EYE,
|
||||
[MOVE_SUBSCRIPT_PTR_HEALING_WISH] = BATTLE_SUBSEQ_HEALING_WISH,
|
||||
[MOVE_SUBSCRIPT_PTR_TAILWIND_START] = BATTLE_SUBSEQ_TAILWIND_START,
|
||||
[MOVE_SUBSCRIPT_PTR_USER_DEF_AND_SPDEF_DOWN_1_STAGE] = BATTLE_SUBSEQ_USER_DEF_AND_SPDEF_DOWN_1_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_USER_SWAP_ATK_AND_DEF] = BATTLE_SUBSEQ_USER_SWAP_ATK_AND_DEF,
|
||||
[MOVE_SUBSCRIPT_PTR_SUPPRESS_TARGET_ABILITY] = BATTLE_SUBSEQ_SUPPRESS_TARGET_ABILITY,
|
||||
[MOVE_SUBSCRIPT_PTR_LUCKY_CHANT_START] = BATTLE_SUBSEQ_LUCKY_CHANT_START,
|
||||
[MOVE_SUBSCRIPT_PTR_EXCHANGE_ATK_AND_SPATK_STAGES] = BATTLE_SUBSEQ_EXCHANGE_ATK_AND_SPATK_STAGES,
|
||||
[MOVE_SUBSCRIPT_PTR_EXCHANGE_DEF_AND_SPDEF_STAGES] = BATTLE_SUBSEQ_EXCHANGE_DEF_AND_SPDEF_STAGES,
|
||||
[MOVE_SUBSCRIPT_PTR_GIVE_TARGET_INSOMNIA] = BATTLE_SUBSEQ_GIVE_TARGET_INSOMNIA,
|
||||
[MOVE_SUBSCRIPT_PTR_EXCHANGE_ALL_STAT_STAGES] = BATTLE_SUBSEQ_EXCHANGE_ALL_STAT_STAGES,
|
||||
[MOVE_SUBSCRIPT_PTR_RECOIL_1_3_CHANCE_TO_BURN] = BATTLE_SUBSEQ_RECOIL_1_3_CHANCE_TO_BURN,
|
||||
[MOVE_SUBSCRIPT_PTR_DEFOG] = BATTLE_SUBSEQ_DEFOG,
|
||||
[MOVE_SUBSCRIPT_PTR_HEAL_BLOCK_START] = BATTLE_SUBSEQ_HEAL_BLOCK_START,
|
||||
[MOVE_SUBSCRIPT_PTR_ATTACK_THEN_SWITCH_OUT] = BATTLE_SUBSEQ_ATTACK_THEN_SWITCH_OUT,
|
||||
[MOVE_SUBSCRIPT_PTR_EMBARGO_START] = BATTLE_SUBSEQ_EMBARGO_START,
|
||||
[MOVE_SUBSCRIPT_PTR_PLUCK] = BATTLE_SUBSEQ_PLUCK,
|
||||
[MOVE_SUBSCRIPT_PTR_FLING] = BATTLE_SUBSEQ_FLING,
|
||||
[MOVE_SUBSCRIPT_PTR_RECOIL_1_3_CHANCE_TO_PARALYZE] = BATTLE_SUBSEQ_RECOIL_1_3_CHANCE_TO_PARALYZE,
|
||||
[MOVE_SUBSCRIPT_PTR_RECOIL_1_2] = BATTLE_SUBSEQ_RECOIL_1_2,
|
||||
[MOVE_SUBSCRIPT_PTR_BURN_OR_FLINCH] = BATTLE_SUBSEQ_BURN_OR_FLINCH,
|
||||
[MOVE_SUBSCRIPT_PTR_FREEZE_OR_FLINCH] = BATTLE_SUBSEQ_FREEZE_OR_FLINCH,
|
||||
[MOVE_SUBSCRIPT_PTR_PARALYZE_OR_FLINCH] = BATTLE_SUBSEQ_PARALYZE_OR_FLINCH,
|
||||
[MOVE_SUBSCRIPT_PTR_CHATTER] = BATTLE_SUBSEQ_CHATTER,
|
||||
[MOVE_SUBSCRIPT_PTR_LUNAR_DANCE] = BATTLE_SUBSEQ_LUNAR_DANCE,
|
||||
[MOVE_SUBSCRIPT_PTR_GIVE_TARGET_OWN_STATUS] = BATTLE_SUBSEQ_GIVE_TARGET_OWN_STATUS,
|
||||
[MOVE_SUBSCRIPT_PTR_SLEEP] = BATTLE_SUBSCRIPT_FALL_ASLEEP,
|
||||
[MOVE_SUBSCRIPT_PTR_POISON] = BATTLE_SUBSCRIPT_POISON,
|
||||
[MOVE_SUBSCRIPT_PTR_BURN] = BATTLE_SUBSCRIPT_BURN,
|
||||
[MOVE_SUBSCRIPT_PTR_FREEZE] = BATTLE_SUBSCRIPT_FREEZE,
|
||||
[MOVE_SUBSCRIPT_PTR_PARALYZE] = BATTLE_SUBSCRIPT_PARALYZE,
|
||||
[MOVE_SUBSCRIPT_PTR_BADLY_POISON] = BATTLE_SUBSCRIPT_BADLY_POISON,
|
||||
[MOVE_SUBSCRIPT_PTR_CONFUSE] = BATTLE_SUBSCRIPT_CONFUSE,
|
||||
[MOVE_SUBSCRIPT_PTR_FLINCH] = BATTLE_SUBSCRIPT_FLINCH_MON,
|
||||
[MOVE_SUBSCRIPT_PTR_REST] = BATTLE_SUBSCRIPT_REST,
|
||||
[MOVE_SUBSCRIPT_PTR_UPROAR] = BATTLE_SUBSCRIPT_UPROAR,
|
||||
[MOVE_SUBSCRIPT_PTR_PAY_DAY] = BATTLE_SUBSCRIPT_PAY_DAY,
|
||||
[MOVE_SUBSCRIPT_PTR_VANISH_CHARGE_TURN] = BATTLE_SUBSCRIPT_VANISH_ON_CHARGE_TURN,
|
||||
[MOVE_SUBSCRIPT_PTR_BIND_TARGET] = BATTLE_SUBSCRIPT_BIND_START,
|
||||
[MOVE_SUBSCRIPT_PTR_QUARTER_RECOIL] = BATTLE_SUBSCRIPT_RECOIL_1_4,
|
||||
[MOVE_SUBSCRIPT_PTR_ATTACK_UP_1_STAGE] = BATTLE_SUBSCRIPT_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_DEFENSE_UP_1_STAGE] = BATTLE_SUBSCRIPT_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_SPEED_UP_1_STAGE] = BATTLE_SUBSCRIPT_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_SP_ATTACK_UP_1_STAGE] = BATTLE_SUBSCRIPT_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_SP_DEFENSE_UP_1_STAGE] = BATTLE_SUBSCRIPT_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_ACCURACY_UP_1_STAGE] = BATTLE_SUBSCRIPT_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_EVASION_UP_1_STAGE] = BATTLE_SUBSCRIPT_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_ATTACK_DOWN_1_STAGE] = BATTLE_SUBSCRIPT_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_DEFENSE_DOWN_1_STAGE] = BATTLE_SUBSCRIPT_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_SPEED_DOWN_1_STAGE] = BATTLE_SUBSCRIPT_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_SP_ATTACK_DOWN_1_STAGE] = BATTLE_SUBSCRIPT_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_SP_DEFENSE_DOWN_1_STAGE] = BATTLE_SUBSCRIPT_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_ACCURACY_DOWN_1_STAGE] = BATTLE_SUBSCRIPT_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_EVASION_DOWN_1_STAGE] = BATTLE_SUBSCRIPT_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_RECHARGE_TURN] = BATTLE_SUBSCRIPT_RECHARGE_TURN,
|
||||
[MOVE_SUBSCRIPT_PTR_SET_RAGE_FLAG] = BATTLE_SUBSCRIPT_SET_RAGE_FLAG,
|
||||
[MOVE_SUBSCRIPT_PTR_STEAL_ITEM] = BATTLE_SUBSCRIPT_STEAL_ITEM,
|
||||
[MOVE_SUBSCRIPT_PTR_MEAN_LOOK] = BATTLE_SUBSCRIPT_MEAN_LOOK,
|
||||
[MOVE_SUBSCRIPT_PTR_NIGHTMARE_START] = BATTLE_SUBSCRIPT_NIGHTMARE_START,
|
||||
[MOVE_SUBSCRIPT_PTR_BOOST_ALL_STATS] = BATTLE_SUBSCRIPT_BOOST_ALL_STATS,
|
||||
[MOVE_SUBSCRIPT_PTR_RAPID_SPIN] = BATTLE_SUBSCRIPT_RAPID_SPIN,
|
||||
[MOVE_SUBSCRIPT_PTR_HEAL_TARGET_PARALYSIS] = BATTLE_SUBSCRIPT_HEAL_TARGET_PARALYSIS,
|
||||
[MOVE_SUBSCRIPT_PTR_USER_ATK_AND_DEF_DOWN_1_STAGE] = BATTLE_SUBSCRIPT_USER_ATK_AND_DEF_DOWN_1_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_RECOIL_1_3] = BATTLE_SUBSCRIPT_RECOIL_1_3,
|
||||
[MOVE_SUBSCRIPT_PTR_ATTACK_UP_2_STAGES] = BATTLE_SUBSCRIPT_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_DEFENSE_UP_2_STAGES] = BATTLE_SUBSCRIPT_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_SPEED_UP_2_STAGES] = BATTLE_SUBSCRIPT_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_SP_ATTACK_UP_2_STAGES] = BATTLE_SUBSCRIPT_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_SP_DEFENSE_UP_2_STAGES] = BATTLE_SUBSCRIPT_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_ACCURACY_UP_2_STAGES] = BATTLE_SUBSCRIPT_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_EVASION_UP_2_STAGES] = BATTLE_SUBSCRIPT_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_ATTACK_DOWN_2_STAGES] = BATTLE_SUBSCRIPT_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_DEFENSE_DOWN_2_STAGES] = BATTLE_SUBSCRIPT_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_SPEED_DOWN_2_STAGES] = BATTLE_SUBSCRIPT_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_SP_ATTACK_DOWN_2_STAGES] = BATTLE_SUBSCRIPT_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_SP_DEFENSE_DOWN_2_STAGES] = BATTLE_SUBSCRIPT_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_ACCURACY_DOWN_2_STAGES] = BATTLE_SUBSCRIPT_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_EVASION_DOWN_2_STAGES] = BATTLE_SUBSCRIPT_UPDATE_STAT_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_THRASH] = BATTLE_SUBSCRIPT_THRASH,
|
||||
[MOVE_SUBSCRIPT_PTR_KNOCK_OFF] = BATTLE_SUBSCRIPT_KNOCK_OFF,
|
||||
[MOVE_SUBSCRIPT_PTR_USER_DEF_AND_SPDEF_UP_1_STAGE] = BATTLE_SUBSCRIPT_USER_DEF_AND_SPDEF_UP_1_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_USER_ATK_AND_DEF_UP_1_STAGE] = BATTLE_SUBSCRIPT_USER_ATK_AND_DEF_UP_1_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_TARGET_ATK_AND_DEF_DOWN_1_STAGE] = BATTLE_SUBSCRIPT_TARGET_ATK_AND_DEF_DOWN_1_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_USER_SPATK_AND_SPDEF_UP_1_STAGE] = BATTLE_SUBSCRIPT_USER_SPATK_AND_SPDEF_UP_1_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_USER_ATK_AND_SPEED_UP_1_STAGE] = BATTLE_SUBSCRIPT_USER_ATK_AND_SPEED_UP_1_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_DRAIN_HALF_DAMAGE_DEALT] = BATTLE_SUBSCRIPT_DRAIN_HALF_DAMAGE_DEALT,
|
||||
[MOVE_SUBSCRIPT_PTR_DREAM_EATER] = BATTLE_SUBSCRIPT_DREAM_EATER,
|
||||
[MOVE_SUBSCRIPT_PTR_RESET_ALL_STAT_STAGES] = BATTLE_SUBSCRIPT_RESET_ALL_STAT_STAGES,
|
||||
[MOVE_SUBSCRIPT_PTR_BIDE_START] = BATTLE_SUBSCRIPT_BIDE_START,
|
||||
[MOVE_SUBSCRIPT_PTR_STRUGGLE] = BATTLE_SUBSCRIPT_STRUGGLE,
|
||||
[MOVE_SUBSCRIPT_PTR_CONVERSION] = BATTLE_SUBSCRIPT_CONVERSION,
|
||||
[MOVE_SUBSCRIPT_PTR_RECOVER_HALF_MAX_HP] = BATTLE_SUBSCRIPT_RECOVER_HALF_MAX_HP,
|
||||
[MOVE_SUBSCRIPT_PTR_LIGHT_SCREEN] = BATTLE_SUBSCRIPT_LIGHT_SCREEN,
|
||||
[MOVE_SUBSCRIPT_PTR_REFLECT] = BATTLE_SUBSCRIPT_REFLECT,
|
||||
[MOVE_SUBSCRIPT_PTR_MIST] = BATTLE_SUBSCRIPT_MIST,
|
||||
[MOVE_SUBSCRIPT_PTR_FOCUS_ENERGY] = BATTLE_SUBSCRIPT_FOCUS_ENERGY,
|
||||
[MOVE_SUBSCRIPT_PTR_MIMIC] = BATTLE_SUBSCRIPT_MIMIC,
|
||||
[MOVE_SUBSCRIPT_PTR_LEECH_SEED_START] = BATTLE_SUBSCRIPT_LEECH_SEED_START,
|
||||
[MOVE_SUBSCRIPT_PTR_DISABLE_START] = BATTLE_SUBSCRIPT_DISABLE_START,
|
||||
[MOVE_SUBSCRIPT_PTR_ENCORE_START] = BATTLE_SUBSCRIPT_ENCORE_START,
|
||||
[MOVE_SUBSCRIPT_PTR_PAIN_SPLIT] = BATTLE_SUBSCRIPT_PAIN_SPLIT,
|
||||
[MOVE_SUBSCRIPT_PTR_CONVERSION_2] = BATTLE_SUBSCRIPT_CONVERSION_2,
|
||||
[MOVE_SUBSCRIPT_PTR_LOCK_ON] = BATTLE_SUBSCRIPT_LOCK_ON,
|
||||
[MOVE_SUBSCRIPT_PTR_SKETCH] = BATTLE_SUBSCRIPT_SKETCH,
|
||||
[MOVE_SUBSCRIPT_PTR_FEINT] = BATTLE_SUBSCRIPT_FEINT,
|
||||
[MOVE_SUBSCRIPT_PTR_DESTINY_BOND] = BATTLE_SUBSCRIPT_DESTINY_BOND,
|
||||
[MOVE_SUBSCRIPT_PTR_REDUCE_TARGET_PP] = BATTLE_SUBSCRIPT_REDUCE_TARGET_PP,
|
||||
[MOVE_SUBSCRIPT_PTR_PROTECT] = BATTLE_SUBSCRIPT_PROTECT,
|
||||
[MOVE_SUBSCRIPT_PTR_HEAL_BELL] = BATTLE_SUBSCRIPT_HEAL_BELL,
|
||||
[MOVE_SUBSCRIPT_PTR_TRY_SUBSTITUTE] = BATTLE_SUBSCRIPT_TRY_SUBSTITUTE,
|
||||
[MOVE_SUBSCRIPT_PTR_FORCE_TARGET_TO_SWITCH_OR_FLEE] = BATTLE_SUBSCRIPT_FORCE_TARGET_TO_SWITCH_OR_FLEE,
|
||||
[MOVE_SUBSCRIPT_PTR_TRANSFORM_INTO_TARGET] = BATTLE_SUBSCRIPT_TRANSFORM_INTO_TARGET,
|
||||
[MOVE_SUBSCRIPT_PTR_MINIMIZE] = BATTLE_SUBSCRIPT_MINIMIZE,
|
||||
[MOVE_SUBSCRIPT_PTR_CURSE_NORMAL] = BATTLE_SUBSCRIPT_CURSE_NORMAL,
|
||||
[MOVE_SUBSCRIPT_PTR_CURSE_GHOST] = BATTLE_SUBSCRIPT_CURSE_GHOST,
|
||||
[MOVE_SUBSCRIPT_PTR_PRINT_MESSAGE_AND_PLAY_ANIMATION] = BATTLE_SUBSCRIPT_PRINT_MESSAGE_AND_PLAY_ANIMATION,
|
||||
[MOVE_SUBSCRIPT_PTR_FORESIGHT] = BATTLE_SUBSCRIPT_FORESIGHT,
|
||||
[MOVE_SUBSCRIPT_PTR_PERISH_SONG_START] = BATTLE_SUBSCRIPT_PERISH_SONG_START,
|
||||
[MOVE_SUBSCRIPT_PTR_WEATHER_START] = BATTLE_SUBSCRIPT_WEATHER_START,
|
||||
[MOVE_SUBSCRIPT_PTR_SWAGGER] = BATTLE_SUBSCRIPT_SWAGGER,
|
||||
[MOVE_SUBSCRIPT_PTR_INFATUATE] = BATTLE_SUBSCRIPT_INFATUATE,
|
||||
[MOVE_SUBSCRIPT_PTR_SAFEGUARD_START] = BATTLE_SUBSCRIPT_SAFEGUARD_START,
|
||||
[MOVE_SUBSCRIPT_PTR_PRESENT_HEAL] = BATTLE_SUBSCRIPT_PRESENT_HEAL,
|
||||
[MOVE_SUBSCRIPT_PTR_MAGNITUDE] = BATTLE_SUBSCRIPT_MAGNITUDE,
|
||||
[MOVE_SUBSCRIPT_PTR_BATON_PASS] = BATTLE_SUBSCRIPT_BATON_PASS,
|
||||
[MOVE_SUBSCRIPT_PTR_BELLY_DRUM] = BATTLE_SUBSCRIPT_BELLY_DRUM,
|
||||
[MOVE_SUBSCRIPT_PTR_TELEPORT] = BATTLE_SUBSCRIPT_TELEPORT,
|
||||
[MOVE_SUBSCRIPT_PTR_FUTURE_SIGHT_START] = BATTLE_SUBSCRIPT_FUTURE_SIGHT_START,
|
||||
[MOVE_SUBSCRIPT_PTR_STOCKPILE] = BATTLE_SUBSCRIPT_STOCKPILE,
|
||||
[MOVE_SUBSCRIPT_PTR_SWALLOW] = BATTLE_SUBSCRIPT_SWALLOW,
|
||||
[MOVE_SUBSCRIPT_PTR_TORMENT_START] = BATTLE_SUBSCRIPT_TORMENT_START,
|
||||
[MOVE_SUBSCRIPT_PTR_FLATTER] = BATTLE_SUBSCRIPT_FLATTER,
|
||||
[MOVE_SUBSCRIPT_PTR_MEMENTO] = BATTLE_SUBSCRIPT_MEMENTO,
|
||||
[MOVE_SUBSCRIPT_PTR_CHARGE] = BATTLE_SUBSCRIPT_CHARGE,
|
||||
[MOVE_SUBSCRIPT_PTR_TAUNT_START] = BATTLE_SUBSCRIPT_TAUNT_START,
|
||||
[MOVE_SUBSCRIPT_PTR_EXCHANGE_ITEMS] = BATTLE_SUBSCRIPT_EXCHANGE_ITEMS,
|
||||
[MOVE_SUBSCRIPT_PTR_COPY_ABILITY] = BATTLE_SUBSCRIPT_COPY_ABILITY,
|
||||
[MOVE_SUBSCRIPT_PTR_BREAK_SCREENS] = BATTLE_SUBSCRIPT_BREAK_SCREENS,
|
||||
[MOVE_SUBSCRIPT_PTR_YAWN] = BATTLE_SUBSCRIPT_YAWN,
|
||||
[MOVE_SUBSCRIPT_PTR_EXCHANGE_ABILITIES] = BATTLE_SUBSCRIPT_EXCHANGE_ABILITIES,
|
||||
[MOVE_SUBSCRIPT_PTR_RECOVER_PSN_PRZ_BRN] = BATTLE_SUBSCRIPT_RECOVER_PSN_PRZ_BRN,
|
||||
[MOVE_SUBSCRIPT_PTR_ROOST] = BATTLE_SUBSCRIPT_ROOST,
|
||||
[MOVE_SUBSCRIPT_PTR_HEAL_TARGET_SLEEP] = BATTLE_SUBSCRIPT_HEAL_TARGET_SLEEP,
|
||||
[MOVE_SUBSCRIPT_PTR_GRAVITY_START] = BATTLE_SUBSCRIPT_GRAVITY_START,
|
||||
[MOVE_SUBSCRIPT_PTR_MIRACLE_EYE] = BATTLE_SUBSCRIPT_MIRACLE_EYE,
|
||||
[MOVE_SUBSCRIPT_PTR_HEALING_WISH] = BATTLE_SUBSCRIPT_HEALING_WISH,
|
||||
[MOVE_SUBSCRIPT_PTR_TAILWIND_START] = BATTLE_SUBSCRIPT_TAILWIND_START,
|
||||
[MOVE_SUBSCRIPT_PTR_USER_DEF_AND_SPDEF_DOWN_1_STAGE] = BATTLE_SUBSCRIPT_USER_DEF_AND_SPDEF_DOWN_1_STAGE,
|
||||
[MOVE_SUBSCRIPT_PTR_USER_SWAP_ATK_AND_DEF] = BATTLE_SUBSCRIPT_USER_SWAP_ATK_AND_DEF,
|
||||
[MOVE_SUBSCRIPT_PTR_SUPPRESS_TARGET_ABILITY] = BATTLE_SUBSCRIPT_SUPPRESS_TARGET_ABILITY,
|
||||
[MOVE_SUBSCRIPT_PTR_LUCKY_CHANT_START] = BATTLE_SUBSCRIPT_LUCKY_CHANT_START,
|
||||
[MOVE_SUBSCRIPT_PTR_EXCHANGE_ATK_AND_SPATK_STAGES] = BATTLE_SUBSCRIPT_EXCHANGE_ATK_AND_SPATK_STAGES,
|
||||
[MOVE_SUBSCRIPT_PTR_EXCHANGE_DEF_AND_SPDEF_STAGES] = BATTLE_SUBSCRIPT_EXCHANGE_DEF_AND_SPDEF_STAGES,
|
||||
[MOVE_SUBSCRIPT_PTR_GIVE_TARGET_INSOMNIA] = BATTLE_SUBSCRIPT_GIVE_TARGET_INSOMNIA,
|
||||
[MOVE_SUBSCRIPT_PTR_EXCHANGE_ALL_STAT_STAGES] = BATTLE_SUBSCRIPT_EXCHANGE_ALL_STAT_STAGES,
|
||||
[MOVE_SUBSCRIPT_PTR_RECOIL_1_3_CHANCE_TO_BURN] = BATTLE_SUBSCRIPT_RECOIL_1_3_CHANCE_TO_BURN,
|
||||
[MOVE_SUBSCRIPT_PTR_DEFOG] = BATTLE_SUBSCRIPT_DEFOG,
|
||||
[MOVE_SUBSCRIPT_PTR_HEAL_BLOCK_START] = BATTLE_SUBSCRIPT_HEAL_BLOCK_START,
|
||||
[MOVE_SUBSCRIPT_PTR_ATTACK_THEN_SWITCH_OUT] = BATTLE_SUBSCRIPT_ATTACK_THEN_SWITCH_OUT,
|
||||
[MOVE_SUBSCRIPT_PTR_EMBARGO_START] = BATTLE_SUBSCRIPT_EMBARGO_START,
|
||||
[MOVE_SUBSCRIPT_PTR_PLUCK] = BATTLE_SUBSCRIPT_PLUCK,
|
||||
[MOVE_SUBSCRIPT_PTR_FLING] = BATTLE_SUBSCRIPT_FLING,
|
||||
[MOVE_SUBSCRIPT_PTR_RECOIL_1_3_CHANCE_TO_PARALYZE] = BATTLE_SUBSCRIPT_RECOIL_1_3_CHANCE_TO_PARALYZE,
|
||||
[MOVE_SUBSCRIPT_PTR_RECOIL_1_2] = BATTLE_SUBSCRIPT_RECOIL_1_2,
|
||||
[MOVE_SUBSCRIPT_PTR_BURN_OR_FLINCH] = BATTLE_SUBSCRIPT_BURN_OR_FLINCH,
|
||||
[MOVE_SUBSCRIPT_PTR_FREEZE_OR_FLINCH] = BATTLE_SUBSCRIPT_FREEZE_OR_FLINCH,
|
||||
[MOVE_SUBSCRIPT_PTR_PARALYZE_OR_FLINCH] = BATTLE_SUBSCRIPT_PARALYZE_OR_FLINCH,
|
||||
[MOVE_SUBSCRIPT_PTR_CHATTER] = BATTLE_SUBSCRIPT_CHATTER,
|
||||
[MOVE_SUBSCRIPT_PTR_LUNAR_DANCE] = BATTLE_SUBSCRIPT_LUNAR_DANCE,
|
||||
[MOVE_SUBSCRIPT_PTR_GIVE_TARGET_OWN_STATUS] = BATTLE_SUBSCRIPT_GIVE_TARGET_OWN_STATUS,
|
||||
};
|
||||
|
|
|
|||
|
|
@ -2,6 +2,9 @@
|
|||
#include <string.h>
|
||||
|
||||
#include "consts/generated/c/abilities.h"
|
||||
#include "consts/generated/c/battle_controller_params.h"
|
||||
#include "consts/generated/c/battle_subscripts.h"
|
||||
|
||||
#include "constants/battle.h"
|
||||
#include "constants/heap.h"
|
||||
#include "constants/items.h"
|
||||
|
|
@ -11,7 +14,6 @@
|
|||
#include "constants/sdat.h"
|
||||
#include "constants/species.h"
|
||||
#include "constants/trainer.h"
|
||||
#include "constants/narc_files/battle_skill_subseq.h"
|
||||
#include "constants/savedata/record.h"
|
||||
|
||||
#include "nitro/types.h"
|
||||
|
|
@ -233,7 +235,7 @@ static void BattleController_InitBattleMons(BattleSystem *battleSys, BattleConte
|
|||
|
||||
static void BattleController_StartEncounter(BattleSystem *battleSys, BattleContext *battleCtx)
|
||||
{
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_START_ENCOUNTER);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_START_ENCOUNTER);
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
battleCtx->commandNext = BATTLE_CONTROL_TRAINER_MESSAGE;
|
||||
}
|
||||
|
|
@ -241,7 +243,7 @@ static void BattleController_StartEncounter(BattleSystem *battleSys, BattleConte
|
|||
static void BattleController_TrainerMessage(BattleSystem *battleSys, BattleContext *battleCtx)
|
||||
{
|
||||
if (BattleSystem_CheckTrainerMessage(battleSys, battleCtx)) {
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_TRAINER_MESSAGE);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_TRAINER_MESSAGE);
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
battleCtx->commandNext = BATTLE_CONTROL_SHOW_BATTLE_MON;
|
||||
} else {
|
||||
|
|
@ -826,7 +828,7 @@ static void BattleController_CheckPreMoveActions(BattleSystem *battleSys, Battle
|
|||
BattleIO_ClearMessageBox(battleSys);
|
||||
battleCtx->msgBattlerTemp = battler;
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_TIGHTEN_FOCUS);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_TIGHTEN_FOCUS);
|
||||
battleCtx->commandNext = battleCtx->command;
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
|
||||
|
|
@ -952,7 +954,7 @@ static void BattleController_CheckFieldConditions(BattleSystem *battleSys, Battl
|
|||
battleCtx->sideConditionsMask[side] &= ~SIDE_CONDITION_REFLECT;
|
||||
battleCtx->msgMoveTemp = MOVE_REFLECT;
|
||||
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_MOVE_EFFECT_END);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_MOVE_EFFECT_END);
|
||||
battleCtx->msgBattlerTemp = BattleSystem_SideToBattler(battleSys, battleCtx, side);
|
||||
state = STATE_BREAK_OUT;
|
||||
}
|
||||
|
|
@ -975,7 +977,7 @@ static void BattleController_CheckFieldConditions(BattleSystem *battleSys, Battl
|
|||
battleCtx->sideConditionsMask[side] &= ~SIDE_CONDITION_LIGHT_SCREEN;
|
||||
battleCtx->msgMoveTemp = MOVE_LIGHT_SCREEN;
|
||||
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_MOVE_EFFECT_END);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_MOVE_EFFECT_END);
|
||||
battleCtx->msgBattlerTemp = BattleSystem_SideToBattler(battleSys, battleCtx, side);
|
||||
state = STATE_BREAK_OUT;
|
||||
}
|
||||
|
|
@ -998,7 +1000,7 @@ static void BattleController_CheckFieldConditions(BattleSystem *battleSys, Battl
|
|||
battleCtx->sideConditionsMask[side] &= ~SIDE_CONDITION_MIST;
|
||||
battleCtx->msgMoveTemp = MOVE_MIST;
|
||||
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_MOVE_EFFECT_END);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_MOVE_EFFECT_END);
|
||||
battleCtx->msgBattlerTemp = BattleSystem_SideToBattler(battleSys, battleCtx, side);
|
||||
state = STATE_BREAK_OUT;
|
||||
}
|
||||
|
|
@ -1021,7 +1023,7 @@ static void BattleController_CheckFieldConditions(BattleSystem *battleSys, Battl
|
|||
battleCtx->sideConditionsMask[side] &= ~SIDE_CONDITION_SAFEGUARD;
|
||||
battleCtx->msgBattlerTemp = battleCtx->sideConditions[side].safeguardUser;
|
||||
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_SAFEGUARD_END);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_SAFEGUARD_END);
|
||||
battleCtx->msgBattlerTemp = BattleSystem_SideToBattler(battleSys, battleCtx, side);
|
||||
state = STATE_BREAK_OUT;
|
||||
}
|
||||
|
|
@ -1043,7 +1045,7 @@ static void BattleController_CheckFieldConditions(BattleSystem *battleSys, Battl
|
|||
battleCtx->sideConditionsMask[side] -= SIDE_CONDITION_TAILWIND_SHIFT;
|
||||
|
||||
if ((battleCtx->sideConditionsMask[side] & SIDE_CONDITION_TAILWIND) == FALSE) {
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_TAILWIND_END);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_TAILWIND_END);
|
||||
battleCtx->msgBattlerTemp = BattleSystem_SideToBattler(battleSys, battleCtx, side);
|
||||
state = STATE_BREAK_OUT;
|
||||
}
|
||||
|
|
@ -1066,7 +1068,7 @@ static void BattleController_CheckFieldConditions(BattleSystem *battleSys, Battl
|
|||
battleCtx->sideConditionsMask[side] -= SIDE_CONDITION_LUCKY_CHANT_SHIFT;
|
||||
|
||||
if ((battleCtx->sideConditionsMask[side] & SIDE_CONDITION_LUCKY_CHANT) == FALSE) {
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_LUCKY_CHANT_END);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_LUCKY_CHANT_END);
|
||||
battleCtx->msgBattlerTemp = BattleSystem_SideToBattler(battleSys, battleCtx, side);
|
||||
state = STATE_BREAK_OUT;
|
||||
}
|
||||
|
|
@ -1096,7 +1098,7 @@ static void BattleController_CheckFieldConditions(BattleSystem *battleSys, Battl
|
|||
|
||||
battleCtx->hpCalcTemp = BattleSystem_Divide(battleCtx->battleMons[side].maxHP, 2);
|
||||
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_WISH_HEAL);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_WISH_HEAL);
|
||||
state = STATE_BREAK_OUT;
|
||||
}
|
||||
|
||||
|
|
@ -1115,15 +1117,15 @@ static void BattleController_CheckFieldConditions(BattleSystem *battleSys, Battl
|
|||
battleCtx->msgBuffer.id = 801; // "Rain continues to fall."
|
||||
battleCtx->msgBuffer.tags = TAG_NONE;
|
||||
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_WEATHER_CONTINUES);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_WEATHER_CONTINUES);
|
||||
} else {
|
||||
if (--battleCtx->fieldConditions.weatherTurns == 0) {
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_RAINING_END);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_RAINING_END);
|
||||
} else {
|
||||
battleCtx->msgBuffer.id = 801; // "Rain continues to fall."
|
||||
battleCtx->msgBuffer.tags = TAG_NONE;
|
||||
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_WEATHER_CONTINUES);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_WEATHER_CONTINUES);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1140,15 +1142,15 @@ static void BattleController_CheckFieldConditions(BattleSystem *battleSys, Battl
|
|||
battleCtx->msgBuffer.id = 805; // "The sandstorm rages."
|
||||
battleCtx->msgBuffer.tags = TAG_NONE;
|
||||
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_WEATHER_CONTINUES);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_WEATHER_CONTINUES);
|
||||
} else {
|
||||
if (--battleCtx->fieldConditions.weatherTurns == 0) {
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_SANDSTORM_END);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_SANDSTORM_END);
|
||||
} else {
|
||||
battleCtx->msgBuffer.id = 805; // "The sandstorm rages."
|
||||
battleCtx->msgBuffer.tags = TAG_NONE;
|
||||
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_WEATHER_CONTINUES);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_WEATHER_CONTINUES);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1165,15 +1167,15 @@ static void BattleController_CheckFieldConditions(BattleSystem *battleSys, Battl
|
|||
battleCtx->msgBuffer.id = 808; // "The sunlight is strong."
|
||||
battleCtx->msgBuffer.tags = TAG_NONE;
|
||||
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_WEATHER_CONTINUES);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_WEATHER_CONTINUES);
|
||||
} else {
|
||||
if (--battleCtx->fieldConditions.weatherTurns == 0) {
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_SUNNY_END);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_SUNNY_END);
|
||||
} else {
|
||||
battleCtx->msgBuffer.id = 808; // "The sunlight is strong."
|
||||
battleCtx->msgBuffer.tags = TAG_NONE;
|
||||
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_WEATHER_CONTINUES);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_WEATHER_CONTINUES);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1190,15 +1192,15 @@ static void BattleController_CheckFieldConditions(BattleSystem *battleSys, Battl
|
|||
battleCtx->msgBuffer.id = 811; // "Hail continues to fall."
|
||||
battleCtx->msgBuffer.tags = TAG_NONE;
|
||||
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_WEATHER_CONTINUES);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_WEATHER_CONTINUES);
|
||||
} else {
|
||||
if (--battleCtx->fieldConditions.weatherTurns == 0) {
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_HAILING_END);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_HAILING_END);
|
||||
} else {
|
||||
battleCtx->msgBuffer.id = 811; // "Hail continues to fall."
|
||||
battleCtx->msgBuffer.tags = TAG_NONE;
|
||||
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_WEATHER_CONTINUES);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_WEATHER_CONTINUES);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1214,7 +1216,7 @@ static void BattleController_CheckFieldConditions(BattleSystem *battleSys, Battl
|
|||
battleCtx->msgBuffer.id = 813; // "The fog is deep..."
|
||||
battleCtx->msgBuffer.tags = TAG_NONE;
|
||||
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_WEATHER_CONTINUES);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_WEATHER_CONTINUES);
|
||||
|
||||
battleCtx->scriptTemp = BATTLE_ANIMATION_WEATHER_FOG;
|
||||
state = STATE_BREAK_OUT;
|
||||
|
|
@ -1228,7 +1230,7 @@ static void BattleController_CheckFieldConditions(BattleSystem *battleSys, Battl
|
|||
battleCtx->fieldConditionsMask -= (1 << FIELD_CONDITION_GRAVITY_SHIFT);
|
||||
|
||||
if ((battleCtx->fieldConditionsMask & FIELD_CONDITION_GRAVITY) == 0) {
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_GRAVITY_END);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_GRAVITY_END);
|
||||
state = STATE_BREAK_OUT;
|
||||
}
|
||||
}
|
||||
|
|
@ -1313,10 +1315,10 @@ static void BattleController_CheckMonConditions(BattleSystem *battleSys, BattleC
|
|||
&& battleCtx->battleMons[battler].curHP) {
|
||||
if (battleCtx->battleMons[battler].moveEffectsData.healBlockTurns) {
|
||||
battleCtx->msgBattlerTemp = battler;
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_CANNOT_HEAL);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_CANNOT_HEAL);
|
||||
} else {
|
||||
battleCtx->msgBattlerTemp = battler;
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_INGRAIN_HEAL);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_INGRAIN_HEAL);
|
||||
}
|
||||
|
||||
battleCtx->commandNext = battleCtx->command;
|
||||
|
|
@ -1334,12 +1336,12 @@ static void BattleController_CheckMonConditions(BattleSystem *battleSys, BattleC
|
|||
&& battleCtx->battleMons[battler].curHP) {
|
||||
if (battleCtx->battleMons[battler].moveEffectsData.healBlockTurns) {
|
||||
battleCtx->msgBattlerTemp = battler;
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_CANNOT_HEAL);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_CANNOT_HEAL);
|
||||
} else {
|
||||
battleCtx->msgBattlerTemp = battler;
|
||||
battleCtx->msgMoveTemp = MOVE_AQUA_RING;
|
||||
battleCtx->hpCalcTemp = BattleSystem_Divide(battleCtx->battleMons[battler].maxHP, 16);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_AQUA_RING_HEAL);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_AQUA_RING_HEAL);
|
||||
}
|
||||
|
||||
battleCtx->commandNext = battleCtx->command;
|
||||
|
|
@ -1382,7 +1384,7 @@ static void BattleController_CheckMonConditions(BattleSystem *battleSys, BattleC
|
|||
battleCtx->msgAttacker = battleCtx->battleMons[battler].moveEffectsMask & MOVE_EFFECT_LEECH_SEED_RECIPIENT;
|
||||
battleCtx->msgDefender = battler;
|
||||
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_LEECH_SEED_EFFECT);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_LEECH_SEED_EFFECT);
|
||||
state = STATE_BREAK_OUT;
|
||||
}
|
||||
|
||||
|
|
@ -1394,7 +1396,7 @@ static void BattleController_CheckMonConditions(BattleSystem *battleSys, BattleC
|
|||
battleCtx->msgBattlerTemp = battler;
|
||||
battleCtx->hpCalcTemp = BattleSystem_Divide(battleCtx->battleMons[battler].maxHP * -1, 8);
|
||||
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_POISON_DAMAGE);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_POISON_DAMAGE);
|
||||
state = STATE_BREAK_OUT;
|
||||
}
|
||||
|
||||
|
|
@ -1414,7 +1416,7 @@ static void BattleController_CheckMonConditions(BattleSystem *battleSys, BattleC
|
|||
battleCtx->hpCalcTemp *= ((battleCtx->battleMons[battler].status & MON_CONDITION_TOXIC_COUNTER) >> 8);
|
||||
battleCtx->hpCalcTemp *= -1;
|
||||
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_POISON_DAMAGE);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_POISON_DAMAGE);
|
||||
state = STATE_BREAK_OUT;
|
||||
}
|
||||
|
||||
|
|
@ -1425,7 +1427,7 @@ static void BattleController_CheckMonConditions(BattleSystem *battleSys, BattleC
|
|||
if ((battleCtx->battleMons[battler].status & MON_CONDITION_BURN) && battleCtx->battleMons[battler].curHP) {
|
||||
battleCtx->msgBattlerTemp = battler;
|
||||
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_BURN_DAMAGE);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_BURN_DAMAGE);
|
||||
state = STATE_BREAK_OUT;
|
||||
}
|
||||
|
||||
|
|
@ -1437,7 +1439,7 @@ static void BattleController_CheckMonConditions(BattleSystem *battleSys, BattleC
|
|||
if (battleCtx->battleMons[battler].status & MON_CONDITION_SLEEP) {
|
||||
battleCtx->msgBattlerTemp = battler;
|
||||
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_NIGHTMARE_EFFECT);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_NIGHTMARE_EFFECT);
|
||||
state = STATE_BREAK_OUT;
|
||||
} else {
|
||||
battleCtx->battleMons[battler].statusVolatile &= ~VOLATILE_CONDITION_NIGHTMARE;
|
||||
|
|
@ -1451,7 +1453,7 @@ static void BattleController_CheckMonConditions(BattleSystem *battleSys, BattleC
|
|||
if ((battleCtx->battleMons[battler].statusVolatile & VOLATILE_CONDITION_CURSE) && battleCtx->battleMons[battler].curHP) {
|
||||
battleCtx->msgBattlerTemp = battler;
|
||||
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_CURSE_DAMAGE);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_CURSE_DAMAGE);
|
||||
state = STATE_BREAK_OUT;
|
||||
}
|
||||
|
||||
|
|
@ -1464,9 +1466,9 @@ static void BattleController_CheckMonConditions(BattleSystem *battleSys, BattleC
|
|||
|
||||
if (battleCtx->battleMons[battler].statusVolatile & VOLATILE_CONDITION_BIND) {
|
||||
battleCtx->hpCalcTemp = BattleSystem_Divide(battleCtx->battleMons[battler].maxHP * -1, 16);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_BIND_EFFECT);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_BIND_EFFECT);
|
||||
} else {
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_BIND_END);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_BIND_END);
|
||||
}
|
||||
|
||||
battleCtx->msgMoveTemp = battleCtx->battleMons[battler].moveEffectsData.bindingMove;
|
||||
|
|
@ -1489,7 +1491,7 @@ static void BattleController_CheckMonConditions(BattleSystem *battleSys, BattleC
|
|||
&& battleCtx->scriptTemp) {
|
||||
battleCtx->hpCalcTemp = BattleSystem_Divide(battleCtx->battleMons[battler].maxHP * -1, 8);
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_BAD_DREAMS);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_BAD_DREAMS);
|
||||
battleCtx->battleStatusMask |= SYSCTL_SKIP_SPRITE_BLINK;
|
||||
battleCtx->msgBattlerTemp = battler;
|
||||
battleCtx->commandNext = battleCtx->command;
|
||||
|
|
@ -1509,7 +1511,7 @@ static void BattleController_CheckMonConditions(BattleSystem *battleSys, BattleC
|
|||
&& battleCtx->battleMons[j].curHP
|
||||
&& Battler_Ability(battleCtx, j) != ABILITY_SOUNDPROOF) {
|
||||
battleCtx->msgBattlerTemp = j;
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_WAKE_UP);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_WAKE_UP);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
@ -1522,13 +1524,13 @@ static void BattleController_CheckMonConditions(BattleSystem *battleSys, BattleC
|
|||
battleCtx->battleMons[battler].statusVolatile -= (1 << VOLATILE_CONDITION_UPROAR_SHIFT);
|
||||
|
||||
if (BattleContext_MoveFailed(battleCtx, battler)) {
|
||||
i = BATTLE_SUBSEQ_UPROAR_END;
|
||||
i = BATTLE_SUBSCRIPT_UPROAR_END;
|
||||
battleCtx->battleMons[battler].statusVolatile &= ~VOLATILE_CONDITION_UPROAR;
|
||||
battleCtx->fieldConditionsMask &= ((FlagIndex(battler) << FIELD_CONDITION_UPROAR_SHIFT) ^ 0xFFFFFFFF);
|
||||
} else if (battleCtx->battleMons[battler].statusVolatile & VOLATILE_CONDITION_UPROAR) {
|
||||
i = BATTLE_SUBSEQ_UPROAR_CONTINUES;
|
||||
i = BATTLE_SUBSCRIPT_UPROAR_CONTINUES;
|
||||
} else {
|
||||
i = BATTLE_SUBSEQ_UPROAR_END;
|
||||
i = BATTLE_SUBSCRIPT_UPROAR_END;
|
||||
battleCtx->battleMons[battler].statusVolatile &= ~VOLATILE_CONDITION_UPROAR;
|
||||
battleCtx->fieldConditionsMask &= ((FlagIndex(battler) << FIELD_CONDITION_UPROAR_SHIFT) ^ 0xFFFFFFFF);
|
||||
}
|
||||
|
|
@ -1553,7 +1555,7 @@ static void BattleController_CheckMonConditions(BattleSystem *battleSys, BattleC
|
|||
&& (battleCtx->battleMons[battler].statusVolatile & VOLATILE_CONDITION_CONFUSION) == FALSE) {
|
||||
battleCtx->sideEffectMon = battler;
|
||||
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_THRASH_END);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_THRASH_END);
|
||||
state = STATE_BREAK_OUT;
|
||||
}
|
||||
}
|
||||
|
|
@ -1579,7 +1581,7 @@ static void BattleController_CheckMonConditions(BattleSystem *battleSys, BattleC
|
|||
battleCtx->battleMons[battler].moveEffectsData.disabledMove = 0;
|
||||
battleCtx->msgBattlerTemp = battler;
|
||||
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_DISABLE_END);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_DISABLE_END);
|
||||
state = STATE_BREAK_OUT;
|
||||
}
|
||||
}
|
||||
|
|
@ -1606,7 +1608,7 @@ static void BattleController_CheckMonConditions(BattleSystem *battleSys, BattleC
|
|||
battleCtx->battleMons[battler].moveEffectsData.encoredMove = 0;
|
||||
battleCtx->msgBattlerTemp = battler;
|
||||
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_ENCORE_END);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_ENCORE_END);
|
||||
state = STATE_BREAK_OUT;
|
||||
}
|
||||
}
|
||||
|
|
@ -1636,7 +1638,7 @@ static void BattleController_CheckMonConditions(BattleSystem *battleSys, BattleC
|
|||
&& --battleCtx->battleMons[battler].moveEffectsData.tauntedTurns == 0) {
|
||||
battleCtx->msgBattlerTemp = battler;
|
||||
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_TAUNT_END);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_TAUNT_END);
|
||||
state = STATE_BREAK_OUT;
|
||||
}
|
||||
|
||||
|
|
@ -1648,7 +1650,7 @@ static void BattleController_CheckMonConditions(BattleSystem *battleSys, BattleC
|
|||
&& --battleCtx->battleMons[battler].moveEffectsData.magnetRiseTurns == 0) {
|
||||
battleCtx->msgBattlerTemp = battler;
|
||||
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_MAGNET_RISE_END);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_MAGNET_RISE_END);
|
||||
state = STATE_BREAK_OUT;
|
||||
}
|
||||
|
||||
|
|
@ -1660,7 +1662,7 @@ static void BattleController_CheckMonConditions(BattleSystem *battleSys, BattleC
|
|||
&& --battleCtx->battleMons[battler].moveEffectsData.healBlockTurns == 0) {
|
||||
battleCtx->msgBattlerTemp = battler;
|
||||
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_HEAL_BLOCK_END);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_HEAL_BLOCK_END);
|
||||
state = STATE_BREAK_OUT;
|
||||
}
|
||||
|
||||
|
|
@ -1672,7 +1674,7 @@ static void BattleController_CheckMonConditions(BattleSystem *battleSys, BattleC
|
|||
&& --battleCtx->battleMons[battler].moveEffectsData.embargoTurns == 0) {
|
||||
battleCtx->msgBattlerTemp = battler;
|
||||
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_EMBARGO_END);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_EMBARGO_END);
|
||||
state = STATE_BREAK_OUT;
|
||||
}
|
||||
|
||||
|
|
@ -1687,7 +1689,7 @@ static void BattleController_CheckMonConditions(BattleSystem *battleSys, BattleC
|
|||
battleCtx->sideEffectMon = battler;
|
||||
battleCtx->sideEffectType = SIDE_EFFECT_TYPE_MOVE_EFFECT;
|
||||
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_FALL_ASLEEP);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_FALL_ASLEEP);
|
||||
state = STATE_BREAK_OUT;
|
||||
}
|
||||
}
|
||||
|
|
@ -1778,7 +1780,7 @@ static void BattleController_CheckSideConditions(BattleSystem *battleSys, Battle
|
|||
battleCtx->msgMoveTemp = battleCtx->fieldConditions.futureSightMove[battler];
|
||||
battleCtx->hpCalcTemp = battleCtx->fieldConditions.futureSightDamage[battler];
|
||||
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_FUTURE_SIGHT_DAMAGE);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_FUTURE_SIGHT_DAMAGE);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
|
@ -1809,7 +1811,7 @@ static void BattleController_CheckSideConditions(BattleSystem *battleSys, Battle
|
|||
}
|
||||
|
||||
battleCtx->msgBattlerTemp = battler;
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_CONTINUE_PERISH_SONG);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_CONTINUE_PERISH_SONG);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
|
@ -1822,7 +1824,7 @@ static void BattleController_CheckSideConditions(BattleSystem *battleSys, Battle
|
|||
if (battleCtx->fieldConditionsMask & FIELD_CONDITION_TRICK_ROOM) {
|
||||
battleCtx->fieldConditionsMask -= (1 << FIELD_CONDITION_TRICK_ROOM_SHIFT);
|
||||
if ((battleCtx->fieldConditionsMask & FIELD_CONDITION_TRICK_ROOM) == FALSE) {
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSEQ_TRICK_ROOM_END);
|
||||
PrepareSubroutineSequence(battleCtx, BATTLE_SUBSCRIPT_TRICK_ROOM_END);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
|
@ -1911,11 +1913,11 @@ static void BattleController_ItemCommand(BattleSystem *battleSys, BattleContext
|
|||
if (Battler_Side(battleSys, battleCtx->attacker)) {
|
||||
switch (battleCtx->aiContext.usedItemType[battleCtx->attacker >> 1]) {
|
||||
case ITEM_TYPE_FULL_RESTORE:
|
||||
nextSeq = BATTLE_SUBSEQ_USE_FULL_RESTORE;
|
||||
nextSeq = BATTLE_SUBSCRIPT_USE_FULL_RESTORE;
|
||||
break;
|
||||
|
||||
case ITEM_TYPE_RECOVER_HP:
|
||||
nextSeq = BATTLE_SUBSEQ_USE_POTION;
|
||||
nextSeq = BATTLE_SUBSCRIPT_USE_POTION;
|
||||
break;
|
||||
|
||||
case ITEM_TYPE_RECOVER_STATUS:
|
||||
|
|
@ -1926,16 +1928,16 @@ static void BattleController_ItemCommand(BattleSystem *battleSys, BattleContext
|
|||
battleCtx->msgTemp = LowestBit(battleCtx->aiContext.usedItemCondition[battleCtx->attacker >> 1]);
|
||||
}
|
||||
|
||||
nextSeq = BATTLE_SUBSEQ_USE_STATUS_RECOVERY;
|
||||
nextSeq = BATTLE_SUBSCRIPT_USE_STATUS_RECOVERY;
|
||||
break;
|
||||
|
||||
case ITEM_TYPE_STAT_BOOSTER:
|
||||
battleCtx->msgTemp = battleCtx->aiContext.usedItemCondition[battleCtx->attacker >> 1];
|
||||
nextSeq = BATTLE_SUBSEQ_USE_STAT_BOOSTER;
|
||||
nextSeq = BATTLE_SUBSCRIPT_USE_STAT_BOOSTER;
|
||||
break;
|
||||
|
||||
case ITEM_TYPE_GUARD_SPEC:
|
||||
nextSeq = BATTLE_SUBSEQ_USE_GUARD_SPEC;
|
||||
nextSeq = BATTLE_SUBSCRIPT_USE_GUARD_SPEC;
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
@ -1946,15 +1948,15 @@ static void BattleController_ItemCommand(BattleSystem *battleSys, BattleContext
|
|||
case BATTLE_POCKET_RECOVER_HP:
|
||||
case BATTLE_POCKET_BATTLE_ITEMS:
|
||||
if (used->item == ITEM_POKE_DOLL || used->item == ITEM_FLUFFY_TAIL) {
|
||||
nextSeq = BATTLE_SUBSEQ_ESCAPE_ITEM;
|
||||
nextSeq = BATTLE_SUBSCRIPT_ESCAPE_ITEM;
|
||||
} else {
|
||||
nextSeq = BATTLE_SUBSEQ_BATTLE_ITEM;
|
||||
nextSeq = BATTLE_SUBSCRIPT_BATTLE_ITEM;
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case BATTLE_POCKET_POKE_BALLS:
|
||||
nextSeq = BATTLE_SUBSEQ_THROW_POKEBALL;
|
||||
nextSeq = BATTLE_SUBSCRIPT_THROW_POKEBALL;
|
||||
if ((BattleSystem_BattleType(battleSys) & BATTLE_TYPE_TRAINER) == FALSE
|
||||
&& (BattleSystem_BattleType(battleSys) & BATTLE_TYPE_CATCH_TUTORIAL) == FALSE) {
|
||||
Bag_SubtractItem(BattleSystem_Bag(battleSys), used->item, 1, HEAP_ID_BATTLE);
|
||||
|
|
@ -1975,7 +1977,7 @@ static void BattleController_ItemCommand(BattleSystem *battleSys, BattleContext
|
|||
|
||||
static void BattleController_SwitchCommand(BattleSystem *battleSys, BattleContext *battleCtx)
|
||||
{
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_SWITCH_POKEMON);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_SWITCH_POKEMON);
|
||||
|
||||
battleCtx->attacker = battleCtx->battlerActionOrder[battleCtx->turnOrderCounter];
|
||||
battleCtx->switchedMon = battleCtx->attacker;
|
||||
|
|
@ -1992,24 +1994,24 @@ static void BattleController_FleeCommand(BattleSystem *battleSys, BattleContext
|
|||
if (Battler_Side(battleSys, battleCtx->attacker)
|
||||
&& (BattleSystem_BattleType(battleSys) & BATTLE_TYPE_LINK) == FALSE) {
|
||||
if (ATTACKING_MON.statusVolatile & (VOLATILE_CONDITION_BIND | VOLATILE_CONDITION_MEAN_LOOK)) {
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_ENEMY_ESCAPE_FAILED);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_ENEMY_ESCAPE_FAILED);
|
||||
battleCtx->scriptCursor = 0;
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
battleCtx->commandNext = BATTLE_CONTROL_MOVE_END;
|
||||
} else {
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_ENEMY_ESCAPE);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_ENEMY_ESCAPE);
|
||||
battleCtx->scriptCursor = 0;
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
battleCtx->commandNext = BATTLE_CONTROL_FIGHT_END;
|
||||
}
|
||||
} else {
|
||||
if (Battler_CanEscape(battleSys, battleCtx, battleCtx->attacker)) {
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_ESCAPE);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_ESCAPE);
|
||||
battleCtx->scriptCursor = 0;
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
battleCtx->commandNext = BATTLE_CONTROL_FIGHT_END;
|
||||
} else {
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_ESCAPE_FAILED);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_ESCAPE_FAILED);
|
||||
battleCtx->scriptCursor = 0;
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
battleCtx->commandNext = BATTLE_CONTROL_MOVE_END;
|
||||
|
|
@ -2019,7 +2021,7 @@ static void BattleController_FleeCommand(BattleSystem *battleSys, BattleContext
|
|||
|
||||
static void BattleController_SafariBallCommand(BattleSystem *battleSys, BattleContext *battleCtx)
|
||||
{
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_THROW_SAFARI_BALL);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_THROW_SAFARI_BALL);
|
||||
|
||||
battleCtx->attacker = BATTLER_US;
|
||||
battleCtx->defender = BATTLER_THEM;
|
||||
|
|
@ -2034,7 +2036,7 @@ static void BattleController_SafariBallCommand(BattleSystem *battleSys, BattleCo
|
|||
|
||||
static void BattleController_SafariBaitCommand(BattleSystem *battleSys, BattleContext *battleCtx)
|
||||
{
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_SAFARI_THROW_BAIT);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_SAFARI_THROW_BAIT);
|
||||
|
||||
battleCtx->attacker = BATTLER_US;
|
||||
battleCtx->defender = BATTLER_THEM;
|
||||
|
|
@ -2056,7 +2058,7 @@ static void BattleController_SafariBaitCommand(BattleSystem *battleSys, BattleCo
|
|||
|
||||
static void BattleController_SafariRockCommand(BattleSystem *battleSys, BattleContext *battleCtx)
|
||||
{
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_SAFARI_THROW_ROCK);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_SAFARI_THROW_ROCK);
|
||||
|
||||
battleCtx->attacker = BATTLER_US;
|
||||
battleCtx->defender = BATTLER_THEM;
|
||||
|
|
@ -2079,7 +2081,7 @@ static void BattleController_SafariRockCommand(BattleSystem *battleSys, BattleCo
|
|||
|
||||
static void BattleController_SafariFleeCommand(BattleSystem *battleSys, BattleContext *battleCtx)
|
||||
{
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_SAFARI_ESCAPE);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_SAFARI_ESCAPE);
|
||||
|
||||
battleCtx->attacker = BATTLER_US;
|
||||
battleCtx->defender = BATTLER_THEM;
|
||||
|
|
@ -2163,7 +2165,7 @@ static int BattleController_CheckObedience(BattleSystem *battleSys, BattleContex
|
|||
|
||||
if ((ATTACKING_MON.status & MON_CONDITION_SLEEP)
|
||||
&& (battleCtx->moveCur == MOVE_SNORE || battleCtx->moveCur == MOVE_SLEEP_TALK)) {
|
||||
*nextSeq = BATTLE_SUBSEQ_DISOBEY_WHILE_ASLEEP;
|
||||
*nextSeq = BATTLE_SUBSCRIPT_DISOBEY_WHILE_ASLEEP;
|
||||
return OBEY_CHECK_DO_NOTHING;
|
||||
}
|
||||
|
||||
|
|
@ -2172,7 +2174,7 @@ static int BattleController_CheckObedience(BattleSystem *battleSys, BattleContex
|
|||
rand1 = BattleSystem_CheckInvalidMoves(battleSys, battleCtx, battleCtx->attacker, FlagIndex(ATTACKER_MOVE_SLOT), CHECK_INVALID_ALL);
|
||||
|
||||
if (rand1 == STRUGGLING_ALL) {
|
||||
*nextSeq = BATTLE_SUBSEQ_DISOBEY_DO_NOTHING;
|
||||
*nextSeq = BATTLE_SUBSCRIPT_DISOBEY_DO_NOTHING;
|
||||
return OBEY_CHECK_DO_NOTHING;
|
||||
}
|
||||
|
||||
|
|
@ -2191,7 +2193,7 @@ static int BattleController_CheckObedience(BattleSystem *battleSys, BattleContex
|
|||
ATTACKER_ACTION[BATTLE_ACTION_CHOOSE_TARGET] = battleCtx->defender;
|
||||
}
|
||||
|
||||
*nextSeq = BATTLE_SUBSEQ_DISOBEY_ORDERS;
|
||||
*nextSeq = BATTLE_SUBSCRIPT_DISOBEY_ORDERS;
|
||||
battleCtx->multiHitCheckFlags |= SYSCTL_SKIP_OBEDIENCE_CHECK;
|
||||
return OBEY_CHECK_DIFFERENT_MOVE;
|
||||
}
|
||||
|
|
@ -2202,7 +2204,7 @@ static int BattleController_CheckObedience(BattleSystem *battleSys, BattleContex
|
|||
&& Battler_Ability(battleCtx, battleCtx->attacker) != ABILITY_VITAL_SPIRIT
|
||||
&& Battler_Ability(battleCtx, battleCtx->attacker) != ABILITY_INSOMNIA
|
||||
&& (battleCtx->fieldConditionsMask & FIELD_CONDITION_UPROAR) == FALSE) {
|
||||
*nextSeq = BATTLE_SUBSEQ_DISOBEY_SLEEP;
|
||||
*nextSeq = BATTLE_SUBSCRIPT_DISOBEY_SLEEP;
|
||||
return OBEY_CHECK_DO_NOTHING;
|
||||
}
|
||||
|
||||
|
|
@ -2215,12 +2217,12 @@ static int BattleController_CheckObedience(BattleSystem *battleSys, BattleContex
|
|||
battleCtx->hpCalcTemp = BattleSystem_CalcDamageVariance(battleSys, battleCtx, battleCtx->hpCalcTemp);
|
||||
battleCtx->hpCalcTemp *= -1;
|
||||
|
||||
*nextSeq = BATTLE_SUBSEQ_DISOBEY_HIT_SELF;
|
||||
*nextSeq = BATTLE_SUBSCRIPT_DISOBEY_HIT_SELF;
|
||||
battleCtx->battleStatusMask |= SYSCTL_CHECK_LOOP_ONLY_ONCE;
|
||||
return OBEY_CHECK_HIT_SELF;
|
||||
}
|
||||
|
||||
*nextSeq = BATTLE_SUBSEQ_DISOBEY_DO_NOTHING;
|
||||
*nextSeq = BATTLE_SUBSCRIPT_DISOBEY_DO_NOTHING;
|
||||
return OBEY_CHECK_DO_NOTHING;
|
||||
}
|
||||
|
||||
|
|
@ -2309,7 +2311,7 @@ static BOOL BattleController_HasNoTarget(BattleSystem *battleSys, BattleContext
|
|||
BOOL solarMove = FALSE;
|
||||
|
||||
if (NO_TARGET) {
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_NO_TARGET);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_NO_TARGET);
|
||||
battleCtx->commandNext = BATTLE_CONTROL_UPDATE_MOVE_BUFFERS;
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
|
||||
|
|
@ -2433,7 +2435,7 @@ static BOOL BattleController_CheckStatusDisruption(BattleSystem *battleSys, Batt
|
|||
&& Battler_Ability(battleCtx, battleCtx->attacker) != ABILITY_SOUNDPROOF) {
|
||||
battleCtx->msgBattlerTemp = battleCtx->attacker;
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_WAKE_UP);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_WAKE_UP);
|
||||
battleCtx->commandNext = battleCtx->command;
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
result = CHECK_STATUS_GO_TO_SCRIPT;
|
||||
|
|
@ -2453,7 +2455,7 @@ static BOOL BattleController_CheckStatusDisruption(BattleSystem *battleSys, Batt
|
|||
|
||||
if (ATTACKING_MON.status & MON_CONDITION_SLEEP) {
|
||||
if (battleCtx->moveCur != MOVE_SNORE && battleCtx->moveTemp != MOVE_SLEEP_TALK) {
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_SLEEPING);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_SLEEPING);
|
||||
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
battleCtx->commandNext = BATTLE_CONTROL_UPDATE_MOVE_BUFFERS;
|
||||
|
|
@ -2463,7 +2465,7 @@ static BOOL BattleController_CheckStatusDisruption(BattleSystem *battleSys, Batt
|
|||
} else {
|
||||
battleCtx->msgBattlerTemp = battleCtx->attacker;
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_WAKE_UP);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_WAKE_UP);
|
||||
battleCtx->commandNext = battleCtx->command;
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
|
||||
|
|
@ -2480,7 +2482,7 @@ static BOOL BattleController_CheckStatusDisruption(BattleSystem *battleSys, Batt
|
|||
if (BattleSystem_RandNext(battleSys) % 5 != 0) {
|
||||
if (moveEffect != BATTLE_EFFECT_THAW_AND_BURN_HIT
|
||||
&& moveEffect != BATTLE_EFFECT_RECOIL_BURN_HIT) {
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_FROZEN);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_FROZEN);
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
battleCtx->commandNext = BATTLE_CONTROL_UPDATE_MOVE_BUFFERS;
|
||||
|
||||
|
|
@ -2489,7 +2491,7 @@ static BOOL BattleController_CheckStatusDisruption(BattleSystem *battleSys, Batt
|
|||
} else {
|
||||
battleCtx->msgBattlerTemp = battleCtx->attacker;
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_THAW_OUT);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_THAW_OUT);
|
||||
battleCtx->commandNext = battleCtx->command;
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
result = CHECK_STATUS_GO_TO_SCRIPT;
|
||||
|
|
@ -2501,7 +2503,7 @@ static BOOL BattleController_CheckStatusDisruption(BattleSystem *battleSys, Batt
|
|||
|
||||
case CHECK_STATUS_STATE_TRUANT:
|
||||
if (Battler_CheckTruant(battleCtx, battleCtx->attacker) == TRUE) {
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_LOAFING_AROUND);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_LOAFING_AROUND);
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
battleCtx->commandNext = BATTLE_CONTROL_UPDATE_MOVE_BUFFERS;
|
||||
|
||||
|
|
@ -2515,7 +2517,7 @@ static BOOL BattleController_CheckStatusDisruption(BattleSystem *battleSys, Batt
|
|||
if (ATTACKING_MON.statusVolatile & VOLATILE_CONDITION_RECHARGING) {
|
||||
ATTACKING_MON.statusVolatile &= ~VOLATILE_CONDITION_RECHARGING;
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_RECHARGING);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_RECHARGING);
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
battleCtx->commandNext = BATTLE_CONTROL_UPDATE_MOVE_BUFFERS;
|
||||
|
||||
|
|
@ -2530,7 +2532,7 @@ static BOOL BattleController_CheckStatusDisruption(BattleSystem *battleSys, Batt
|
|||
ATTACKING_MON.statusVolatile &= ~VOLATILE_CONDITION_FLINCH;
|
||||
battleCtx->moveFailFlags[battleCtx->attacker].flinched = TRUE;
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_FLINCHED);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_FLINCHED);
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
battleCtx->commandNext = BATTLE_CONTROL_UPDATE_MOVE_BUFFERS;
|
||||
|
||||
|
|
@ -2544,7 +2546,7 @@ static BOOL BattleController_CheckStatusDisruption(BattleSystem *battleSys, Batt
|
|||
if (ATTACKING_MON.moveEffectsData.disabledMove == battleCtx->moveTemp) {
|
||||
battleCtx->moveFailFlags[battleCtx->attacker].disabled = TRUE;
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_MOVE_IS_DISABLED);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_MOVE_IS_DISABLED);
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
battleCtx->commandNext = BATTLE_CONTROL_UPDATE_MOVE_BUFFERS;
|
||||
|
||||
|
|
@ -2559,7 +2561,7 @@ static BOOL BattleController_CheckStatusDisruption(BattleSystem *battleSys, Batt
|
|||
&& battleCtx->aiContext.moveTable[battleCtx->moveCur].power == 0) {
|
||||
battleCtx->moveFailFlags[battleCtx->attacker].taunted = TRUE;
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_MOVE_FAIL_TAUNTED);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_MOVE_FAIL_TAUNTED);
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
battleCtx->commandNext = BATTLE_CONTROL_UPDATE_MOVE_BUFFERS;
|
||||
|
||||
|
|
@ -2573,7 +2575,7 @@ static BOOL BattleController_CheckStatusDisruption(BattleSystem *battleSys, Batt
|
|||
if (Move_Imprisoned(battleSys, battleCtx, battleCtx->attacker, battleCtx->moveCur)) {
|
||||
battleCtx->moveFailFlags[battleCtx->attacker].imprisoned = TRUE;
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_MOVE_IS_IMPRISONED);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_MOVE_IS_IMPRISONED);
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
battleCtx->commandNext = BATTLE_CONTROL_UPDATE_MOVE_BUFFERS;
|
||||
|
||||
|
|
@ -2587,7 +2589,7 @@ static BOOL BattleController_CheckStatusDisruption(BattleSystem *battleSys, Batt
|
|||
if (Move_FailsInHighGravity(battleSys, battleCtx, battleCtx->attacker, battleCtx->moveCur)) {
|
||||
battleCtx->moveFailFlags[battleCtx->attacker].gravity = TRUE;
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_MOVE_FAIL_GRAVITY);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_MOVE_FAIL_GRAVITY);
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
battleCtx->commandNext = BATTLE_CONTROL_UPDATE_MOVE_BUFFERS;
|
||||
|
||||
|
|
@ -2601,7 +2603,7 @@ static BOOL BattleController_CheckStatusDisruption(BattleSystem *battleSys, Batt
|
|||
if (Move_HealBlocked(battleSys, battleCtx, battleCtx->attacker, battleCtx->moveCur)) {
|
||||
battleCtx->moveFailFlags[battleCtx->attacker].healBlocked = TRUE;
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_MOVE_IS_HEAL_BLOCKED);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_MOVE_IS_HEAL_BLOCKED);
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
battleCtx->commandNext = BATTLE_CONTROL_UPDATE_MOVE_BUFFERS;
|
||||
|
||||
|
|
@ -2619,7 +2621,7 @@ static BOOL BattleController_CheckStatusDisruption(BattleSystem *battleSys, Batt
|
|||
|
||||
if (ATTACKING_MON.statusVolatile & VOLATILE_CONDITION_CONFUSION) {
|
||||
if (BattleSystem_RandNext(battleSys) & 1) {
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_CONFUSED);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_CONFUSED);
|
||||
battleCtx->commandNext = battleCtx->command;
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
|
||||
|
|
@ -2633,14 +2635,14 @@ static BOOL BattleController_CheckStatusDisruption(BattleSystem *battleSys, Batt
|
|||
battleCtx->hpCalcTemp = BattleSystem_CalcDamageVariance(battleSys, battleCtx, battleCtx->hpCalcTemp);
|
||||
battleCtx->hpCalcTemp *= -1;
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_HURT_SELF_IN_CONFUSION);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_HURT_SELF_IN_CONFUSION);
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
battleCtx->commandNext = BATTLE_CONTROL_LOOP_FAINTED;
|
||||
|
||||
result = CHECK_STATUS_DISRUPT_MOVE;
|
||||
}
|
||||
} else {
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_SNAP_OUT_OF_CONFUSION);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_SNAP_OUT_OF_CONFUSION);
|
||||
battleCtx->commandNext = battleCtx->command;
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
|
||||
|
|
@ -2655,7 +2657,7 @@ static BOOL BattleController_CheckStatusDisruption(BattleSystem *battleSys, Batt
|
|||
if (BattleSystem_RandNext(battleSys) % 4 == 0) {
|
||||
battleCtx->moveFailFlags[battleCtx->attacker].paralyzed = TRUE;
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_FULLY_PARALYZED);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_FULLY_PARALYZED);
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
battleCtx->commandNext = BATTLE_CONTROL_UPDATE_MOVE_BUFFERS;
|
||||
|
||||
|
|
@ -2673,7 +2675,7 @@ static BOOL BattleController_CheckStatusDisruption(BattleSystem *battleSys, Batt
|
|||
);
|
||||
|
||||
if (BattleSystem_RandNext(battleSys) & 1) {
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_INFATUATED);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_INFATUATED);
|
||||
battleCtx->commandNext = battleCtx->command;
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
|
||||
|
|
@ -2681,7 +2683,7 @@ static BOOL BattleController_CheckStatusDisruption(BattleSystem *battleSys, Batt
|
|||
} else {
|
||||
battleCtx->moveFailFlags[battleCtx->attacker].infatuated = TRUE;
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_IMMOBILIZED_BY_LOVE);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_IMMOBILIZED_BY_LOVE);
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
battleCtx->commandNext = BATTLE_CONTROL_UPDATE_MOVE_BUFFERS;
|
||||
|
||||
|
|
@ -2708,7 +2710,7 @@ static BOOL BattleController_CheckStatusDisruption(BattleSystem *battleSys, Batt
|
|||
battleCtx->defender = BattleSystem_RandomOpponent(battleSys, battleCtx, battleCtx->attacker);
|
||||
|
||||
if (DEFENDING_MON.curHP == 0) {
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_BIDE_NO_TARGET);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_BIDE_NO_TARGET);
|
||||
battleCtx->commandNext = BATTLE_CONTROL_UPDATE_MOVE_BUFFERS;
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
|
||||
|
|
@ -2718,7 +2720,7 @@ static BOOL BattleController_CheckStatusDisruption(BattleSystem *battleSys, Batt
|
|||
}
|
||||
}
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_BIDE_END);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_BIDE_END);
|
||||
battleCtx->commandNext = battleCtx->command;
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
|
||||
|
|
@ -2729,7 +2731,7 @@ static BOOL BattleController_CheckStatusDisruption(BattleSystem *battleSys, Batt
|
|||
case CHECK_STATUS_STATE_SELF_THAW:
|
||||
if ((ATTACKING_MON.status & MON_CONDITION_FREEZE)
|
||||
&& (moveEffect == BATTLE_EFFECT_THAW_AND_BURN_HIT || moveEffect == BATTLE_EFFECT_RECOIL_BURN_HIT)) {
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_DEFROSTED_BY_MOVE);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_DEFROSTED_BY_MOVE);
|
||||
battleCtx->commandNext = battleCtx->command;
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
|
||||
|
|
@ -2790,7 +2792,7 @@ static BOOL BattleController_TriggerImmunityAbilities(BattleSystem *battleSys, B
|
|||
int nextSeq = BattleSystem_TriggerImmunityAbility(battleCtx, battleCtx->attacker, battleCtx->defender);
|
||||
|
||||
if ((nextSeq && (battleCtx->moveStatusFlags & MOVE_STATUS_DID_NOT_HIT) == FALSE)
|
||||
|| nextSeq == BATTLE_SUBSEQ_BLOCKED_BY_SOUNDPROOF) {
|
||||
|| nextSeq == BATTLE_SUBSCRIPT_BLOCKED_BY_SOUNDPROOF) {
|
||||
LOAD_SUBSEQ(nextSeq);
|
||||
battleCtx->commandNext = battleCtx->command;
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
|
|
@ -2823,7 +2825,7 @@ static BOOL BattleController_TriggerImmunityAbilities(BattleSystem *battleSys, B
|
|||
*/
|
||||
static BOOL BattleController_LoadQuickClawCheck(BattleSystem *battleSys, BattleContext *battleCtx)
|
||||
{
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_CHECK_QUICK_CLAW);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_CHECK_QUICK_CLAW);
|
||||
|
||||
battleCtx->commandNext = battleCtx->command;
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
|
|
@ -3077,7 +3079,7 @@ static BOOL BattleController_MoveStolen(BattleSystem *battleSys, BattleContext *
|
|||
|
||||
battleCtx->battleStatusMask |= SYSCTL_REUSE_LAST_MOVE;
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_MAGIC_COAT);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_MAGIC_COAT);
|
||||
battleCtx->commandNext = battleCtx->command;
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
|
||||
|
|
@ -3101,7 +3103,7 @@ static BOOL BattleController_MoveStolen(BattleSystem *battleSys, BattleContext *
|
|||
battleCtx->battleStatusMask |= SYSCTL_REUSE_LAST_MOVE;
|
||||
}
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_SNATCH);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_SNATCH);
|
||||
battleCtx->commandNext = battleCtx->command;
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
|
||||
|
|
@ -3315,7 +3317,7 @@ static void BattleController_CheckMoveFailure(BattleSystem *battleSys, BattleCon
|
|||
if (battleCtx->moveStatusFlags & MOVE_STATUS_NO_MORE_WORK) {
|
||||
battleCtx->command = BATTLE_CONTROL_LOOP_SPREAD_MOVES;
|
||||
} else if (battleCtx->moveStatusFlags & MOVE_STATUS_NO_PP) {
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_NO_PP);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_NO_PP);
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
battleCtx->commandNext = BATTLE_CONTROL_UPDATE_MOVE_BUFFERS;
|
||||
} else if (battleCtx->multiHitLoop && (battleCtx->moveStatusFlags & MOVE_STATUS_MISSED)) {
|
||||
|
|
@ -3324,7 +3326,7 @@ static void BattleController_CheckMoveFailure(BattleSystem *battleSys, BattleCon
|
|||
battleCtx->moveStatusFlags |= MOVE_STATUS_MULTI_HIT_DISRUPTED;
|
||||
battleCtx->command = BATTLE_CONTROL_AFTER_MOVE_MESSAGE;
|
||||
} else if (battleCtx->moveStatusFlags & MOVE_STATUS_DID_NOT_HIT) {
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_MISSED);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_MISSED);
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
battleCtx->commandNext = BATTLE_CONTROL_LOOP_FAINTED; // crash damage can kill
|
||||
} else {
|
||||
|
|
@ -3334,7 +3336,7 @@ static void BattleController_CheckMoveFailure(BattleSystem *battleSys, BattleCon
|
|||
|
||||
static void BattleController_UseMove(BattleSystem *battleSys, BattleContext *battleCtx)
|
||||
{
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_USE_MOVE);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_USE_MOVE);
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
battleCtx->commandNext = BATTLE_CONTROL_UPDATE_HP;
|
||||
}
|
||||
|
|
@ -3372,7 +3374,7 @@ static void BattleController_UpdateHP(BattleSystem *battleSys, BattleContext *ba
|
|||
DEFENDER_SELF_TURN_FLAGS.statusFlags |= SELF_TURN_FLAG_SUBSTITUTE_HIT;
|
||||
battleCtx->msgBattlerTemp = battleCtx->defender;
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_HIT_SUBSTITUTE);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_HIT_SUBSTITUTE);
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
battleCtx->commandNext = BATTLE_CONTROL_AFTER_MOVE_MESSAGE;
|
||||
|
||||
|
|
@ -3436,7 +3438,7 @@ static void BattleController_UpdateHP(BattleSystem *battleSys, BattleContext *ba
|
|||
battleCtx->msgBattlerTemp = battleCtx->defender;
|
||||
battleCtx->hpCalcTemp = battleCtx->damage;
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_UPDATE_HP);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_UPDATE_HP);
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
battleCtx->commandNext = BATTLE_CONTROL_AFTER_MOVE_MESSAGE;
|
||||
battleCtx->battleStatusMask |= SYSCTL_MOVE_HIT;
|
||||
|
|
@ -3445,11 +3447,6 @@ static void BattleController_UpdateHP(BattleSystem *battleSys, BattleContext *ba
|
|||
}
|
||||
}
|
||||
|
||||
enum {
|
||||
AFTER_MOVE_MESSAGE_ONE_HIT = 0,
|
||||
AFTER_MOVE_MESSAGE_MULTI_HIT
|
||||
};
|
||||
|
||||
enum {
|
||||
AFTER_MOVE_MESSAGE_START = 0,
|
||||
|
||||
|
|
@ -3504,7 +3501,7 @@ static void BattleController_AfterMoveMessage(BattleSystem *battleSys, BattleCon
|
|||
battleCtx->afterMoveMessageState++;
|
||||
|
||||
// Shaymin changes forms from Sky to Land whenever it is Frozen.
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_CHECK_SHAYMIN_FORM);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_CHECK_SHAYMIN_FORM);
|
||||
battleCtx->commandNext = battleCtx->command;
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
|
||||
|
|
@ -3564,7 +3561,7 @@ static void BattleController_AfterMoveMessage(BattleSystem *battleSys, BattleCon
|
|||
battleCtx->afterMoveMessageState++;
|
||||
|
||||
// Shaymin changes forms from Sky to Land whenever it is Frozen.
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_CHECK_SHAYMIN_FORM);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_CHECK_SHAYMIN_FORM);
|
||||
battleCtx->commandNext = battleCtx->command;
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
|
||||
|
|
@ -3651,7 +3648,7 @@ static void BattleController_AfterMoveEffects(BattleSystem *battleSys, BattleCon
|
|||
&& (battleCtx->battleMons[battleCtx->afterMoveEffectTemp].moveEffectsTemp & MOVE_EFFECT_SEMI_INVULNERABLE)) {
|
||||
battleCtx->battleMons[battleCtx->afterMoveEffectTemp].moveEffectsTemp &= ~MOVE_EFFECT_SEMI_INVULNERABLE;
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_VANISH_OFF);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_VANISH_OFF);
|
||||
battleCtx->msgBattlerTemp = battleCtx->afterMoveEffectTemp;
|
||||
battleCtx->commandNext = battleCtx->command;
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
|
|
@ -3726,7 +3723,7 @@ static void BattleController_AfterMoveEffects(BattleSystem *battleSys, BattleCon
|
|||
&& moveType == TYPE_FIRE) {
|
||||
battleCtx->msgBattlerTemp = battleCtx->defender;
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_THAW_OUT);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_THAW_OUT);
|
||||
battleCtx->commandNext = battleCtx->command;
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
|
||||
|
|
@ -3799,7 +3796,7 @@ static void BattleController_LoopMultiHit(BattleSystem *battleSys, BattleContext
|
|||
} else {
|
||||
battleCtx->msgTemp = battleCtx->multiHitNumHits;
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_HIT_X_TIMES);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_HIT_X_TIMES);
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
battleCtx->commandNext = BATTLE_CONTROL_LOOP_FAINTED;
|
||||
}
|
||||
|
|
@ -3812,7 +3809,7 @@ static void BattleController_LoopMultiHit(BattleSystem *battleSys, BattleContext
|
|||
battleCtx->msgTemp = battleCtx->multiHitNumHits - battleCtx->multiHitCounter;
|
||||
}
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_HIT_X_TIMES);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_HIT_X_TIMES);
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
battleCtx->commandNext = BATTLE_CONTROL_LOOP_FAINTED;
|
||||
}
|
||||
|
|
@ -3898,7 +3895,7 @@ static void BattleController_FaintAfterSelfdestruct(BattleSystem *battleSys, Bat
|
|||
battleCtx->faintedMon = LowestBit((battleCtx->battleStatusMask & SYSCTL_MON_SELFDESTRUCTED) >> SYSCTL_MON_SELFDESTRUCTED_SHIFT);
|
||||
battleCtx->battleStatusMask &= ~SYSCTL_MON_SELFDESTRUCTED;
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_AFTER_SELFDESTRUCT);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_AFTER_SELFDESTRUCT);
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
battleCtx->commandNext = BATTLE_CONTROL_TRIGGER_AFTER_HIT_EFFECTS;
|
||||
} else {
|
||||
|
|
@ -4020,11 +4017,11 @@ static void BattleController_HandleResult(BattleSystem *battleSys, BattleContext
|
|||
battleCtx->command = BATTLE_CONTROL_FIGHT_END;
|
||||
} else if (BattleSystem_ResultMask(battleSys) == BATTLE_RESULT_LOSE
|
||||
|| BattleSystem_ResultMask(battleSys) == BATTLE_RESULT_DRAW) {
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_BATTLE_LOST);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_BATTLE_LOST);
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
battleCtx->commandNext = BATTLE_CONTROL_FIGHT_END;
|
||||
} else if (BattleSystem_ResultMask(battleSys) == BATTLE_RESULT_WIN) {
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_BATTLE_WON);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_BATTLE_WON);
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
battleCtx->commandNext = BATTLE_CONTROL_FIGHT_END;
|
||||
} else if (BattleSystem_ResultMask(battleSys) == BATTLE_RESULT_CAPTURED_MON) {
|
||||
|
|
@ -4161,9 +4158,9 @@ static BOOL BattleController_ReplaceFainted(BattleSystem *battleSys, BattleConte
|
|||
battleCtx->scriptTemp = TRUE;
|
||||
}
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_REPLACE_FAINTED);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_REPLACE_FAINTED);
|
||||
} else {
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_SHOW_PARTY_LIST);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_SHOW_PARTY_LIST);
|
||||
}
|
||||
|
||||
result = TRUE;
|
||||
|
|
@ -4427,9 +4424,9 @@ static BOOL BattleController_AnyFainted(BattleContext *battleCtx, int nextCmd, i
|
|||
battleCtx->faintedMon = LowestBit(battlerBit >> SYSCTL_MON_FAINTED_SHIFT);
|
||||
|
||||
if (onlyFaint == TRUE) {
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_FAINT_MON);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_FAINT_MON);
|
||||
} else {
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_FAINT_CHECK_DESTINY_BOND);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_FAINT_CHECK_DESTINY_BOND);
|
||||
}
|
||||
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
|
|
@ -4463,7 +4460,7 @@ static BOOL BattleController_AnyExpPayout(BattleContext *battleCtx, int nextCmd,
|
|||
battleCtx->battleStatusMask2 &= (battler ^ 0xFFFFFFFF);
|
||||
battleCtx->faintedMon = LowestBit(battler >> SYSCTL_PAYOUT_EXP_SHIFT);
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_GRANT_EXP);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_GRANT_EXP);
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
battleCtx->commandNext = nextCmd;
|
||||
|
||||
|
|
@ -4552,7 +4549,7 @@ static void BattleController_UpdateFlagsWhenHit(BattleSystem *battleSys, BattleC
|
|||
*/
|
||||
static BOOL BattleController_CriticalMessage(BattleSystem *battleSys, BattleContext *battleCtx)
|
||||
{
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_CRITICAL_HIT);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_CRITICAL_HIT);
|
||||
battleCtx->commandNext = battleCtx->command;
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
|
||||
|
|
@ -4586,7 +4583,7 @@ static BOOL BattleController_FollowupMessage(BattleSystem *battleSys, BattleCont
|
|||
}
|
||||
|
||||
if (result == TRUE) {
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_MOVE_FOLLOWUP_MESSAGE);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_MOVE_FOLLOWUP_MESSAGE);
|
||||
battleCtx->commandNext = battleCtx->command;
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
}
|
||||
|
|
@ -4616,7 +4613,7 @@ static BOOL BattleController_RageBuilding(BattleSystem *battleSys, BattleContext
|
|||
&& DEFENDING_MON.statBoosts[BATTLE_STAT_ATTACK] < 12) {
|
||||
DEFENDING_MON.statBoosts[BATTLE_STAT_ATTACK]++;
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_RAGE_IS_BUILDING);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_RAGE_IS_BUILDING);
|
||||
battleCtx->commandNext = battleCtx->command;
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
result = TRUE;
|
||||
|
|
@ -4649,7 +4646,7 @@ static BOOL BattleController_CheckExtraFlinch(BattleSystem *battleSys, BattleCon
|
|||
battleCtx->sideEffectMon = battleCtx->defender;
|
||||
battleCtx->sideEffectType = SIDE_EFFECT_TYPE_INDIRECT;
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_FLINCH_MON);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_FLINCH_MON);
|
||||
battleCtx->commandNext = battleCtx->command;
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
|
||||
|
|
@ -4675,7 +4672,7 @@ static BOOL BattleController_ToggleSemiInvulnMons(BattleSystem *battleSys, Battl
|
|||
&& (battleCtx->battleMons[battleCtx->vanishedCheckTemp].moveEffectsTemp & MOVE_EFFECT_SEMI_INVULNERABLE)) {
|
||||
battleCtx->battleMons[battleCtx->vanishedCheckTemp].moveEffectsTemp &= ~MOVE_EFFECT_SEMI_INVULNERABLE;
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_VANISH_OFF);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_VANISH_OFF);
|
||||
battleCtx->msgBattlerTemp = battleCtx->vanishedCheckTemp;
|
||||
battleCtx->commandNext = battleCtx->command;
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
|
|
@ -4751,7 +4748,7 @@ static BOOL BattleController_TriggerAfterMoveHitEffects(BattleSystem *battleSys,
|
|||
battleCtx->hpCalcTemp = BattleSystem_Divide(ATTACKER_SELF_TURN_FLAGS.shellBellDamageDealt * -1, itemPower);
|
||||
battleCtx->msgBattlerTemp = battleCtx->attacker;
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_RESTORE_A_LITTLE_HP);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_RESTORE_A_LITTLE_HP);
|
||||
battleCtx->commandNext = battleCtx->command;
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
|
||||
|
|
@ -4771,7 +4768,7 @@ static BOOL BattleController_TriggerAfterMoveHitEffects(BattleSystem *battleSys,
|
|||
battleCtx->hpCalcTemp = BattleSystem_Divide(battleCtx->battleMons[battleCtx->attacker].maxHP * -1, 10);
|
||||
battleCtx->msgBattlerTemp = battleCtx->attacker;
|
||||
|
||||
LOAD_SUBSEQ(BATTLE_SUBSEQ_LOSE_HP_FROM_ITEM);
|
||||
LOAD_SUBSEQ(BATTLE_SUBSCRIPT_LOSE_HP_FROM_ITEM);
|
||||
battleCtx->commandNext = battleCtx->command;
|
||||
battleCtx->command = BATTLE_CONTROL_EXEC_SCRIPT;
|
||||
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -2,6 +2,7 @@
|
|||
#include <string.h>
|
||||
|
||||
#include "consts/generated/c/abilities.h"
|
||||
#include "consts/generated/c/battle_subscripts.h"
|
||||
#include "consts/generated/c/gender.h"
|
||||
|
||||
#include "constants/battle.h"
|
||||
|
|
@ -12,7 +13,6 @@
|
|||
#include "constants/sdat.h"
|
||||
#include "constants/species.h"
|
||||
#include "constants/trainer.h"
|
||||
#include "constants/narc_files/battle_skill_subseq.h"
|
||||
|
||||
#include "struct_decls/struct_02002F38_decl.h"
|
||||
#include "struct_decls/struct_02007768_decl.h"
|
||||
|
|
@ -1838,7 +1838,7 @@ static BOOL BtlCmd_PlayMoveAnimation(BattleSystem *battleSys, BattleContext *bat
|
|||
}
|
||||
|
||||
if (BattleSystem_AnimationsOn(battleSys) == FALSE) {
|
||||
BattleScript_Call(battleCtx, NARC_INDEX_BATTLE__SKILL__SUB_SEQ, BATTLE_SUBSEQ_WAIT_MOVE_ANIMATION);
|
||||
BattleScript_Call(battleCtx, NARC_INDEX_BATTLE__SKILL__SUB_SEQ, BATTLE_SUBSCRIPT_WAIT_MOVE_ANIMATION);
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
|
|
@ -1883,7 +1883,7 @@ static BOOL BtlCmd_PlayMoveAnimationA2D(BattleSystem *battleSys, BattleContext *
|
|||
}
|
||||
|
||||
if (BattleSystem_AnimationsOn(battleSys) == FALSE) {
|
||||
BattleScript_Call(battleCtx, NARC_INDEX_BATTLE__SKILL__SUB_SEQ, BATTLE_SUBSEQ_WAIT_MOVE_ANIMATION);
|
||||
BattleScript_Call(battleCtx, NARC_INDEX_BATTLE__SKILL__SUB_SEQ, BATTLE_SUBSCRIPT_WAIT_MOVE_ANIMATION);
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
|
|
@ -2364,7 +2364,7 @@ static BOOL BtlCmd_JumpToMove(BattleSystem *battleSys, BattleContext *battleCtx)
|
|||
|
||||
if (battleCtx->defender == BATTLER_NONE) {
|
||||
battleCtx->commandNext = BATTLE_CONTROL_UPDATE_MOVE_BUFFERS;
|
||||
BattleScript_Jump(battleCtx, NARC_INDEX_BATTLE__SKILL__SUB_SEQ, BATTLE_SUBSEQ_NO_TARGET);
|
||||
BattleScript_Jump(battleCtx, NARC_INDEX_BATTLE__SKILL__SUB_SEQ, BATTLE_SUBSCRIPT_NO_TARGET);
|
||||
} else {
|
||||
BattleScript_Jump(battleCtx, NARC_INDEX_BATTLE__SKILL__WAZA_SEQ, battleCtx->moveCur);
|
||||
}
|
||||
|
|
@ -3748,7 +3748,7 @@ static BOOL BtlCmd_SetMirrorMove(BattleSystem *battleSys, BattleContext *battleC
|
|||
|
||||
if (battleCtx->defender == BATTLER_NONE) {
|
||||
battleCtx->commandNext = BATTLE_CONTROL_UPDATE_MOVE_BUFFERS;
|
||||
BattleScript_Jump(battleCtx, NARC_INDEX_BATTLE__SKILL__SUB_SEQ, BATTLE_SUBSEQ_NO_TARGET);
|
||||
BattleScript_Jump(battleCtx, NARC_INDEX_BATTLE__SKILL__SUB_SEQ, BATTLE_SUBSCRIPT_NO_TARGET);
|
||||
} else {
|
||||
ATTACKER_ACTION[BATTLE_ACTION_CHOOSE_TARGET] = battleCtx->defender;
|
||||
BattleScript_Jump(battleCtx, NARC_INDEX_BATTLE__SKILL__WAZA_SEQ, move);
|
||||
|
|
@ -4876,7 +4876,7 @@ static BOOL BtlCmd_Counter(BattleSystem *battleSys, BattleContext *battleCtx)
|
|||
// If there are no possible targets, fail
|
||||
if (DEFENDING_MON.curHP == 0) {
|
||||
battleCtx->commandNext = BATTLE_CONTROL_UPDATE_MOVE_BUFFERS;
|
||||
BattleScript_Jump(battleCtx, NARC_INDEX_BATTLE__SKILL__SUB_SEQ, BATTLE_SUBSEQ_NO_TARGET);
|
||||
BattleScript_Jump(battleCtx, NARC_INDEX_BATTLE__SKILL__SUB_SEQ, BATTLE_SUBSCRIPT_NO_TARGET);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -4929,7 +4929,7 @@ static BOOL BtlCmd_MirrorCoat(BattleSystem *battleSys, BattleContext *battleCtx)
|
|||
// If there are no possible targets, fail
|
||||
if (DEFENDING_MON.curHP == 0) {
|
||||
battleCtx->commandNext = BATTLE_CONTROL_UPDATE_MOVE_BUFFERS;
|
||||
BattleScript_Jump(battleCtx, NARC_INDEX_BATTLE__SKILL__SUB_SEQ, BATTLE_SUBSEQ_NO_TARGET);
|
||||
BattleScript_Jump(battleCtx, NARC_INDEX_BATTLE__SKILL__SUB_SEQ, BATTLE_SUBSCRIPT_NO_TARGET);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -6144,7 +6144,7 @@ static BOOL BtlCmd_RapidSpin(BattleSystem *battleSys, BattleContext *battleCtx)
|
|||
ATTACKING_MON.statusVolatile &= ~VOLATILE_CONDITION_BIND;
|
||||
battleCtx->msgBattlerTemp = ATTACKING_MON.moveEffectsData.bindTarget;
|
||||
battleCtx->msgMoveTemp = ATTACKING_MON.moveEffectsData.bindingMove;
|
||||
BattleScript_Call(battleCtx, NARC_INDEX_BATTLE__SKILL__SUB_SEQ, BATTLE_SUBSEQ_BREAK_BIND_EFFECT);
|
||||
BattleScript_Call(battleCtx, NARC_INDEX_BATTLE__SKILL__SUB_SEQ, BATTLE_SUBSCRIPT_BREAK_BIND_EFFECT);
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
|
@ -6153,7 +6153,7 @@ static BOOL BtlCmd_RapidSpin(BattleSystem *battleSys, BattleContext *battleCtx)
|
|||
ATTACKING_MON.moveEffectsMask &= ~MOVE_EFFECT_LEECH_SEED;
|
||||
ATTACKING_MON.moveEffectsMask &= ~MOVE_EFFECT_LEECH_SEED_RECIPIENT;
|
||||
battleCtx->msgMoveTemp = MOVE_LEECH_SEED;
|
||||
BattleScript_Call(battleCtx, NARC_INDEX_BATTLE__SKILL__SUB_SEQ, BATTLE_SUBSEQ_BLOW_AWAY_HAZARDS);
|
||||
BattleScript_Call(battleCtx, NARC_INDEX_BATTLE__SKILL__SUB_SEQ, BATTLE_SUBSCRIPT_BLOW_AWAY_HAZARDS);
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
|
@ -6162,7 +6162,7 @@ static BOOL BtlCmd_RapidSpin(BattleSystem *battleSys, BattleContext *battleCtx)
|
|||
battleCtx->sideConditionsMask[side] &= ~SIDE_CONDITION_SPIKES;
|
||||
battleCtx->sideConditions[side].spikesLayers = 0;
|
||||
battleCtx->msgMoveTemp = MOVE_SPIKES;
|
||||
BattleScript_Call(battleCtx, NARC_INDEX_BATTLE__SKILL__SUB_SEQ, BATTLE_SUBSEQ_BLOW_AWAY_HAZARDS);
|
||||
BattleScript_Call(battleCtx, NARC_INDEX_BATTLE__SKILL__SUB_SEQ, BATTLE_SUBSCRIPT_BLOW_AWAY_HAZARDS);
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
|
@ -6172,7 +6172,7 @@ static BOOL BtlCmd_RapidSpin(BattleSystem *battleSys, BattleContext *battleCtx)
|
|||
battleCtx->sideConditions[side].toxicSpikesLayers = 0;
|
||||
battleCtx->msgMoveTemp = MOVE_TOXIC_SPIKES;
|
||||
|
||||
BattleScript_Call(battleCtx, NARC_INDEX_BATTLE__SKILL__SUB_SEQ, BATTLE_SUBSEQ_BLOW_AWAY_HAZARDS);
|
||||
BattleScript_Call(battleCtx, NARC_INDEX_BATTLE__SKILL__SUB_SEQ, BATTLE_SUBSCRIPT_BLOW_AWAY_HAZARDS);
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
|
@ -6180,7 +6180,7 @@ static BOOL BtlCmd_RapidSpin(BattleSystem *battleSys, BattleContext *battleCtx)
|
|||
if (battleCtx->sideConditionsMask[side] & SIDE_CONDITION_STEALTH_ROCK) {
|
||||
battleCtx->sideConditionsMask[side] &= ~SIDE_CONDITION_STEALTH_ROCK;
|
||||
battleCtx->msgMoveTemp = MOVE_STEALTH_ROCK;
|
||||
BattleScript_Call(battleCtx, NARC_INDEX_BATTLE__SKILL__SUB_SEQ, BATTLE_SUBSEQ_BLOW_AWAY_HAZARDS);
|
||||
BattleScript_Call(battleCtx, NARC_INDEX_BATTLE__SKILL__SUB_SEQ, BATTLE_SUBSCRIPT_BLOW_AWAY_HAZARDS);
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
|
@ -7416,7 +7416,7 @@ static BOOL BtlCmd_TryMetalBurst(BattleSystem *battleSys, BattleContext *battleC
|
|||
|
||||
if (DEFENDING_MON.curHP == 0) {
|
||||
battleCtx->commandNext = BATTLE_CONTROL_UPDATE_MOVE_BUFFERS;
|
||||
BattleScript_Jump(battleCtx, NARC_INDEX_BATTLE__SKILL__SUB_SEQ, BATTLE_SUBSEQ_NO_TARGET);
|
||||
BattleScript_Jump(battleCtx, NARC_INDEX_BATTLE__SKILL__SUB_SEQ, BATTLE_SUBSCRIPT_NO_TARGET);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user