sovereignx/include/constants/hold_effects.h
Bassoonian d0379b9b55
Turn item hold effects into an enum (#5498)
* Turn item hold effects into an enum

* Rename to ItemHoldEffect
2024-10-10 14:23:59 +02:00

172 lines
4.8 KiB
C

#ifndef GUARD_HOLD_EFFECTS_H
#define GUARD_HOLD_EFFECTS_H
enum ItemHoldEffect
{
HOLD_EFFECT_NONE,
HOLD_EFFECT_RESTORE_HP,
HOLD_EFFECT_CURE_PAR,
HOLD_EFFECT_CURE_SLP,
HOLD_EFFECT_CURE_PSN,
HOLD_EFFECT_CURE_BRN,
HOLD_EFFECT_CURE_FRZ,
HOLD_EFFECT_RESTORE_PP,
HOLD_EFFECT_CURE_CONFUSION,
HOLD_EFFECT_CURE_STATUS,
HOLD_EFFECT_CONFUSE_SPICY,
HOLD_EFFECT_CONFUSE_DRY,
HOLD_EFFECT_CONFUSE_SWEET,
HOLD_EFFECT_CONFUSE_BITTER,
HOLD_EFFECT_CONFUSE_SOUR,
HOLD_EFFECT_ATTACK_UP,
HOLD_EFFECT_DEFENSE_UP,
HOLD_EFFECT_SPEED_UP,
HOLD_EFFECT_SP_ATTACK_UP,
HOLD_EFFECT_SP_DEFENSE_UP,
HOLD_EFFECT_CRITICAL_UP,
HOLD_EFFECT_RANDOM_STAT_UP,
HOLD_EFFECT_EVASION_UP,
HOLD_EFFECT_RESTORE_STATS,
HOLD_EFFECT_MACHO_BRACE,
HOLD_EFFECT_EXP_SHARE,
HOLD_EFFECT_QUICK_CLAW,
HOLD_EFFECT_FRIENDSHIP_UP,
HOLD_EFFECT_MENTAL_HERB,
HOLD_EFFECT_CHOICE_BAND,
HOLD_EFFECT_FLINCH,
HOLD_EFFECT_BUG_POWER,
HOLD_EFFECT_DOUBLE_PRIZE,
HOLD_EFFECT_REPEL,
HOLD_EFFECT_SOUL_DEW,
HOLD_EFFECT_DEEP_SEA_TOOTH,
HOLD_EFFECT_DEEP_SEA_SCALE,
HOLD_EFFECT_CAN_ALWAYS_RUN,
HOLD_EFFECT_PREVENT_EVOLVE,
HOLD_EFFECT_FOCUS_BAND,
HOLD_EFFECT_LUCKY_EGG,
HOLD_EFFECT_SCOPE_LENS,
HOLD_EFFECT_STEEL_POWER,
HOLD_EFFECT_LEFTOVERS,
HOLD_EFFECT_DRAGON_SCALE,
HOLD_EFFECT_LIGHT_BALL,
HOLD_EFFECT_GROUND_POWER,
HOLD_EFFECT_ROCK_POWER,
HOLD_EFFECT_GRASS_POWER,
HOLD_EFFECT_DARK_POWER,
HOLD_EFFECT_FIGHTING_POWER,
HOLD_EFFECT_ELECTRIC_POWER,
HOLD_EFFECT_WATER_POWER,
HOLD_EFFECT_FLYING_POWER,
HOLD_EFFECT_POISON_POWER,
HOLD_EFFECT_ICE_POWER,
HOLD_EFFECT_GHOST_POWER,
HOLD_EFFECT_PSYCHIC_POWER,
HOLD_EFFECT_FIRE_POWER,
HOLD_EFFECT_DRAGON_POWER,
HOLD_EFFECT_NORMAL_POWER,
HOLD_EFFECT_UPGRADE,
HOLD_EFFECT_SHELL_BELL,
HOLD_EFFECT_LUCKY_PUNCH,
HOLD_EFFECT_METAL_POWDER,
HOLD_EFFECT_THICK_CLUB,
HOLD_EFFECT_LEEK,
// Gen4 hold effects.
HOLD_EFFECT_CHOICE_SCARF,
HOLD_EFFECT_CHOICE_SPECS,
HOLD_EFFECT_DAMP_ROCK,
HOLD_EFFECT_GRIP_CLAW,
HOLD_EFFECT_HEAT_ROCK,
HOLD_EFFECT_ICY_ROCK,
HOLD_EFFECT_LIGHT_CLAY,
HOLD_EFFECT_SMOOTH_ROCK,
HOLD_EFFECT_POWER_HERB,
HOLD_EFFECT_BIG_ROOT,
HOLD_EFFECT_EXPERT_BELT,
HOLD_EFFECT_LIFE_ORB,
HOLD_EFFECT_METRONOME,
HOLD_EFFECT_MUSCLE_BAND,
HOLD_EFFECT_WIDE_LENS,
HOLD_EFFECT_WISE_GLASSES,
HOLD_EFFECT_ZOOM_LENS,
HOLD_EFFECT_LAGGING_TAIL,
HOLD_EFFECT_FOCUS_SASH,
HOLD_EFFECT_FLAME_ORB,
HOLD_EFFECT_TOXIC_ORB,
HOLD_EFFECT_STICKY_BARB,
HOLD_EFFECT_IRON_BALL,
HOLD_EFFECT_BLACK_SLUDGE,
HOLD_EFFECT_DESTINY_KNOT,
HOLD_EFFECT_SHED_SHELL,
HOLD_EFFECT_QUICK_POWDER,
HOLD_EFFECT_ADAMANT_ORB,
HOLD_EFFECT_LUSTROUS_ORB,
HOLD_EFFECT_GRISEOUS_ORB,
HOLD_EFFECT_ENIGMA_BERRY,
HOLD_EFFECT_RESIST_BERRY,
HOLD_EFFECT_POWER_ITEM,
HOLD_EFFECT_RESTORE_PCT_HP,
HOLD_EFFECT_MICLE_BERRY,
HOLD_EFFECT_CUSTAP_BERRY,
HOLD_EFFECT_JABOCA_BERRY,
HOLD_EFFECT_ROWAP_BERRY,
HOLD_EFFECT_KEE_BERRY,
HOLD_EFFECT_MARANGA_BERRY,
HOLD_EFFECT_PLATE,
// Gen5 hold effects
HOLD_EFFECT_FLOAT_STONE,
HOLD_EFFECT_EVIOLITE,
HOLD_EFFECT_ASSAULT_VEST,
HOLD_EFFECT_DRIVE,
HOLD_EFFECT_GEMS,
HOLD_EFFECT_ROCKY_HELMET,
HOLD_EFFECT_AIR_BALLOON,
HOLD_EFFECT_RED_CARD,
HOLD_EFFECT_RING_TARGET,
HOLD_EFFECT_BINDING_BAND,
HOLD_EFFECT_EJECT_BUTTON,
HOLD_EFFECT_ABSORB_BULB,
HOLD_EFFECT_CELL_BATTERY,
// Gen6 hold effects
HOLD_EFFECT_FAIRY_POWER,
HOLD_EFFECT_MEGA_STONE,
HOLD_EFFECT_SAFETY_GOGGLES,
HOLD_EFFECT_LUMINOUS_MOSS,
HOLD_EFFECT_SNOWBALL,
HOLD_EFFECT_WEAKNESS_POLICY,
HOLD_EFFECT_PRIMAL_ORB,
// Gen7 hold effects
HOLD_EFFECT_PROTECTIVE_PADS,
HOLD_EFFECT_TERRAIN_EXTENDER,
HOLD_EFFECT_SEEDS,
HOLD_EFFECT_ADRENALINE_ORB,
HOLD_EFFECT_MEMORY,
HOLD_EFFECT_Z_CRYSTAL,
// Gen8 hold effects
HOLD_EFFECT_UTILITY_UMBRELLA,
HOLD_EFFECT_EJECT_PACK,
HOLD_EFFECT_ROOM_SERVICE,
HOLD_EFFECT_BLUNDER_POLICY,
HOLD_EFFECT_HEAVY_DUTY_BOOTS,
HOLD_EFFECT_THROAT_SPRAY,
// Gen9 hold effects
HOLD_EFFECT_ABILITY_SHIELD,
HOLD_EFFECT_CLEAR_AMULET,
HOLD_EFFECT_MIRROR_HERB,
HOLD_EFFECT_PUNCHING_GLOVE,
HOLD_EFFECT_COVERT_CLOAK,
HOLD_EFFECT_LOADED_DICE,
HOLD_EFFECT_BOOSTER_ENERGY,
HOLD_EFFECT_OGERPON_MASK,
// Gen2 hold effect
HOLD_EFFECT_BERSERK_GENE,
};
#define HOLD_EFFECT_CHOICE(holdEffect) ((holdEffect == HOLD_EFFECT_CHOICE_BAND || holdEffect == HOLD_EFFECT_CHOICE_SCARF || holdEffect == HOLD_EFFECT_CHOICE_SPECS))
// Terrain seed params
#define HOLD_EFFECT_PARAM_ELECTRIC_TERRAIN 0
#define HOLD_EFFECT_PARAM_GRASSY_TERRAIN 1
#define HOLD_EFFECT_PARAM_MISTY_TERRAIN 2
#define HOLD_EFFECT_PARAM_PSYCHIC_TERRAIN 3
#endif // GUARD_HOLD_EFFECTS_H