74 lines
1.7 KiB
C++
74 lines
1.7 KiB
C++
#ifndef CONFIG_H
|
|
#define CONFIG_H
|
|
|
|
#include <cstdint>
|
|
|
|
namespace PokEng {
|
|
|
|
// Generation support
|
|
enum class Generation : uint8_t {
|
|
I = 1,
|
|
II = 2,
|
|
III = 3,
|
|
IV = 4,
|
|
V = 5,
|
|
VI = 6,
|
|
VII = 7,
|
|
VIII = 8,
|
|
IX = 9
|
|
};
|
|
|
|
// Pokemon Nature enumeration
|
|
enum class Nature : uint8_t {
|
|
// Neutral natures (no stat changes)
|
|
HARDY = 0, // +Attack, -Attack
|
|
DOCILE, // +Defense, -Defense
|
|
BASHFUL, // +Sp. Atk, -Sp. Atk
|
|
QUIRKY, // +Sp. Def, -Sp. Def
|
|
SERIOUS, // +Speed, -Speed
|
|
|
|
// Attack boosting natures
|
|
LONELY, // +Attack, -Defense
|
|
ADAMANT, // +Attack, -Sp. Atk
|
|
NAUGHTY, // +Attack, -Sp. Def
|
|
BRAVE, // +Attack, -Speed
|
|
|
|
// Defense boosting natures
|
|
BOLD, // +Defense, -Attack
|
|
IMPISH, // +Defense, -Sp. Atk
|
|
LAX, // +Defense, -Sp. Def
|
|
RELAXED, // +Defense, -Speed
|
|
|
|
// Sp. Atk boosting natures
|
|
MODEST, // +Sp. Atk, -Attack
|
|
MILD, // +Sp. Atk, -Defense
|
|
RASH, // +Sp. Atk, -Sp. Def
|
|
QUIET, // +Sp. Atk, -Speed
|
|
|
|
// Sp. Def boosting natures
|
|
CALM, // +Sp. Def, -Attack
|
|
GENTLE, // +Sp. Def, -Defense
|
|
CAREFUL, // +Sp. Def, -Sp. Atk
|
|
SASSY, // +Sp. Def, -Speed
|
|
|
|
// Speed boosting natures
|
|
TIMID, // +Speed, -Attack
|
|
HASTY, // +Speed, -Defense
|
|
JOLLY, // +Speed, -Sp. Atk
|
|
NAIVE // +Speed, -Sp. Def
|
|
};
|
|
|
|
// Stat indices for nature calculations
|
|
enum class StatIndex : uint8_t {
|
|
HP = 0,
|
|
ATTACK = 1,
|
|
DEFENSE = 2,
|
|
SP_ATTACK = 3,
|
|
SP_DEFENSE = 4,
|
|
SPEED = 5
|
|
};
|
|
|
|
} // namespace PokEng
|
|
|
|
|
|
#endif |