diff options
Diffstat (limited to 'src/map/mob.t.hpp')
-rw-r--r-- | src/map/mob.t.hpp | 79 |
1 files changed, 19 insertions, 60 deletions
diff --git a/src/map/mob.t.hpp b/src/map/mob.t.hpp index 3c20e07..0fcd7f5 100644 --- a/src/map/mob.t.hpp +++ b/src/map/mob.t.hpp @@ -3,93 +3,52 @@ #include <cstdint> -enum class MST +enum class MobSkillTarget { MST_TARGET = 0, -#define MST_TARGET MST::MST_TARGET +#define MST_TARGET MobSkillTarget::MST_TARGET MST_SELF, -#define MST_SELF MST::MST_SELF - MST_FRIEND, -#define MST_FRIEND MST::MST_FRIEND - MST_MASTER, -#define MST_MASTER MST::MST_MASTER - MST_AROUND5, -#define MST_AROUND5 MST::MST_AROUND5 - MST_AROUND6, -#define MST_AROUND6 MST::MST_AROUND6 - MST_AROUND7, -#define MST_AROUND7 MST::MST_AROUND7 - MST_AROUND8, -#define MST_AROUND8 MST::MST_AROUND8 - MST_AROUND1, -#define MST_AROUND1 MST::MST_AROUND1 - MST_AROUND2, -#define MST_AROUND2 MST::MST_AROUND2 - MST_AROUND3, -#define MST_AROUND3 MST::MST_AROUND3 - MST_AROUND4, -#define MST_AROUND4 MST::MST_AROUND4 - MST_AROUND = MST_AROUND4, -#define MST_AROUND MST::MST_AROUND +#define MST_SELF MobSkillTarget::MST_SELF }; -enum class MSC : uint16_t +/// Used as a condition when trying to apply the chosen mob skill. +enum class MobSkillCondition : uint16_t { // used as something that never compares true NEVER_EQUAL = 0xfffe, ANY = 0xffff, MSC_ALWAYS = 0x0000, -#define MSC_ALWAYS MSC::MSC_ALWAYS +#define MSC_ALWAYS MobSkillCondition::MSC_ALWAYS MSC_MYHPLTMAXRATE = 0x0001, -#define MSC_MYHPLTMAXRATE MSC::MSC_MYHPLTMAXRATE - MSC_FRIENDHPLTMAXRATE = 0x0010, -#define MSC_FRIENDHPLTMAXRATE MSC::MSC_FRIENDHPLTMAXRATE - MSC_MYSTATUSON = 0x0020, -#define MSC_MYSTATUSON MSC::MSC_MYSTATUSON - MSC_MYSTATUSOFF = 0x0021, -#define MSC_MYSTATUSOFF MSC::MSC_MYSTATUSOFF - MSC_FRIENDSTATUSON = 0x0030, -#define MSC_FRIENDSTATUSON MSC::MSC_FRIENDSTATUSON - MSC_FRIENDSTATUSOFF = 0x0031, -#define MSC_FRIENDSTATUSOFF MSC::MSC_FRIENDSTATUSOFF +#define MSC_MYHPLTMAXRATE MobSkillCondition::MSC_MYHPLTMAXRATE + MSC_NOTINTOWN = 0x0032, -#define MSC_NOTINTOWN MSC::MSC_NOTINTOWN +#define MSC_NOTINTOWN MobSkillCondition::MSC_NOTINTOWN - MSC_ATTACKPCGT = 0x0100, -#define MSC_ATTACKPCGT MSC::MSC_ATTACKPCGT - MSC_ATTACKPCGE = 0x0101, -#define MSC_ATTACKPCGE MSC::MSC_ATTACKPCGE MSC_SLAVELT = 0x0110, -#define MSC_SLAVELT MSC::MSC_SLAVELT +#define MSC_SLAVELT MobSkillCondition::MSC_SLAVELT MSC_SLAVELE = 0x0111, -#define MSC_SLAVELE MSC::MSC_SLAVELE - MSC_CLOSEDATTACKED = 0x1000, -#define MSC_CLOSEDATTACKED MSC::MSC_CLOSEDATTACKED - MSC_LONGRANGEATTACKED = 0x1001, -#define MSC_LONGRANGEATTACKED MSC::MSC_LONGRANGEATTACKED - MSC_SKILLUSED = 0x1010, -#define MSC_SKILLUSED MSC::MSC_SKILLUSED - MSC_CASTTARGETED = 0x1011, -#define MSC_CASTTARGETED MSC::MSC_CASTTARGETED +#define MSC_SLAVELE MobSkillCondition::MSC_SLAVELE }; -enum class MSS : uint8_t +/// Used as a filter when trying to choose a mob skill to use. +enum class MobSkillState : uint8_t { ANY = 0xff, MSS_IDLE = 0, -#define MSS_IDLE MSS::MSS_IDLE +#define MSS_IDLE MobSkillState::MSS_IDLE MSS_WALK, -#define MSS_WALK MSS::MSS_WALK +#define MSS_WALK MobSkillState::MSS_WALK MSS_ATTACK, -#define MSS_ATTACK MSS::MSS_ATTACK +#define MSS_ATTACK MobSkillState::MSS_ATTACK MSS_DEAD, -#define MSS_DEAD MSS::MSS_DEAD +#define MSS_DEAD MobSkillState::MSS_DEAD MSS_LOOT, -#define MSS_LOOT MSS::MSS_LOOT +#define MSS_LOOT MobSkillState::MSS_LOOT MSS_CHASE, -#define MSS_CHASE MSS::MSS_CHASE +#define MSS_CHASE MobSkillState::MSS_CHASE }; #endif // MOB_T_HPP |