Move spelltype names, spell subtypes, category names and setting names to maps.

This commit is contained in:
nytmyr
2024-12-30 22:58:37 -06:00
parent 61a3987d25
commit e994d14418
4 changed files with 228 additions and 557 deletions
+20 -555
View File
@@ -8764,43 +8764,12 @@ uint16 Mob::GetSpellTypeIDByShortName(std::string spellTypeString) {
return UINT16_MAX;
}
std::string Mob::GetBotSpellCategoryName(uint8 setting_type) {
switch (setting_type) {
case BotSettingCategories::BaseSetting:
return "BaseSetting";
case BotSettingCategories::SpellHold:
return "SpellHolds";
case BotSettingCategories::SpellDelay:
return "SpellDelays";
case BotSettingCategories::SpellMinThreshold:
return "SpellMinThresholds";
case BotSettingCategories::SpellMaxThreshold:
return "SpellMaxThresholds";
case BotSettingCategories::SpellTypeAggroCheck:
return "SpellAggroChecks";
case BotSettingCategories::SpellTypeMinManaPct:
return "SpellMinManaPct";
case BotSettingCategories::SpellTypeMaxManaPct:
return "SpellMaxManaPct";
case BotSettingCategories::SpellTypeMinHPPct:
return "SpellMinHPPct";
case BotSettingCategories::SpellTypeMaxHPPct:
return "SpellMaxHPPct";
case BotSettingCategories::SpellTypeIdlePriority:
return "SpellIdlePriority";
case BotSettingCategories::SpellTypeEngagedPriority:
return "SpellEngagedPriority";
case BotSettingCategories::SpellTypePursuePriority:
return "SpellPursuePriority";
case BotSettingCategories::SpellTypeAEOrGroupTargetCount:
return "SpellTargetCounts";
case BotSettingCategories::SpellTypeRecastDelay:
return "SpellRecastDelay";
default:
return "Null";
}
bool Mob::IsValidBotSpellCategory(uint8 setting_type) {
return (setting_type >= BotSettingCategories::START && setting_type <= BotSettingCategories::END_FULL);
}
return "Null";
std::string Mob::GetBotSpellCategoryName(uint8 setting_type) {
return IsValidBotBaseSetting(setting_type) ? botSpellCategory_names[setting_type] : "UNKNOWN CATEGORY";
}
uint16 Mob::GetBotSpellCategoryIDByShortName(std::string settingString) {
@@ -8813,41 +8782,12 @@ uint16 Mob::GetBotSpellCategoryIDByShortName(std::string settingString) {
return UINT16_MAX;
}
std::string Mob::GetBotSettingCategoryName(uint8 setting_type) {
switch (setting_type) {
case BotBaseSettings::ExpansionBitmask:
return "ExpansionBitmask";
case BotBaseSettings::ShowHelm:
return "ShowHelm";
case BotBaseSettings::FollowDistance:
return "FollowDistance";
case BotBaseSettings::StopMeleeLevel:
return "StopMeleeLevel";
case BotBaseSettings::EnforceSpellSettings:
return "EnforceSpellSettings";
case BotBaseSettings::RangedSetting:
return "RangedSetting";
case BotBaseSettings::PetSetTypeSetting:
return "PetSetTypeSetting";
case BotBaseSettings::BehindMob:
return "BehindMob";
case BotBaseSettings::DistanceRanged:
return "DistanceRanged";
case BotBaseSettings::IllusionBlock:
return "IllusionBlock";
case BotBaseSettings::MaxMeleeRange:
return "MaxMeleeRange";
case BotBaseSettings::MedInCombat:
return "MedInCombat";
case BotBaseSettings::SitHPPct:
return "SitHPPct";
case BotBaseSettings::SitManaPct:
return "SitManaPct";
default:
return "Null";
}
bool Mob::IsValidBotBaseSetting(uint16 setting_type) {
return (setting_type >= BotBaseSettings::START_ALL && setting_type <= BotBaseSettings::END);
}
return "Null";
std::string Mob::GetBotSettingCategoryName(uint16 setting_type) {
return IsValidBotBaseSetting(setting_type) ? botBaseSettings_names[setting_type] : "UNKNOWN SETTING";
}
uint16 Mob::GetBaseSettingIDByShortName(std::string settingString) {
@@ -8860,499 +8800,24 @@ uint16 Mob::GetBaseSettingIDByShortName(std::string settingString) {
return UINT16_MAX;
}
std::string Mob::GetSpellTypeNameByID(uint16 spellType) {
std::string spellTypeName = "null";
switch (spellType) {
case BotSpellTypes::Nuke:
spellTypeName = "Nuke";
break;
case BotSpellTypes::RegularHeal:
spellTypeName = "Regular Heal";
break;
case BotSpellTypes::Root:
spellTypeName = "Root";
break;
case BotSpellTypes::Buff:
spellTypeName = "Buff";
break;
case BotSpellTypes::Escape:
spellTypeName = "Escape";
break;
case BotSpellTypes::Pet:
spellTypeName = "Pet";
break;
case BotSpellTypes::Lifetap:
spellTypeName = "Lifetap";
break;
case BotSpellTypes::Snare:
spellTypeName = "Snare";
break;
case BotSpellTypes::DOT:
spellTypeName = "DoT";
break;
case BotSpellTypes::Dispel:
spellTypeName = "Dispel";
break;
case BotSpellTypes::InCombatBuff:
spellTypeName = "In-Combat Buff";
break;
case BotSpellTypes::Mez:
spellTypeName = "Mez";
break;
case BotSpellTypes::Charm:
spellTypeName = "Charm";
break;
case BotSpellTypes::Slow:
spellTypeName = "Slow";
break;
case BotSpellTypes::Debuff:
spellTypeName = "Debuff";
break;
case BotSpellTypes::Cure:
spellTypeName = "Cure";
break;
case BotSpellTypes::GroupCures:
spellTypeName = "Group Cure";
break;
case BotSpellTypes::PetCures:
spellTypeName = "Pet Cure";
break;
case BotSpellTypes::Resurrect:
spellTypeName = "Resurrect";
break;
case BotSpellTypes::HateRedux:
spellTypeName = "Hate Reduction";
break;
case BotSpellTypes::InCombatBuffSong:
spellTypeName = "In-Combat Buff Song";
break;
case BotSpellTypes::OutOfCombatBuffSong:
spellTypeName = "Out-of-Combat Buff Song";
break;
case BotSpellTypes::PreCombatBuff:
spellTypeName = "Pre-Combat Buff";
break;
case BotSpellTypes::PreCombatBuffSong:
spellTypeName = "Pre-Combat Buff Song";
break;
case BotSpellTypes::Fear:
spellTypeName = "Fear";
break;
case BotSpellTypes::Stun:
spellTypeName = "Stun";
break;
case BotSpellTypes::CompleteHeal:
spellTypeName = "Complete Heal";
break;
case BotSpellTypes::FastHeals:
spellTypeName = "Fast Heal";
break;
case BotSpellTypes::VeryFastHeals:
spellTypeName = "Very Fast Heal";
break;
case BotSpellTypes::GroupHeals:
spellTypeName = "Group Heal";
break;
case BotSpellTypes::GroupCompleteHeals:
spellTypeName = "Group Complete Heal";
break;
case BotSpellTypes::GroupHoTHeals:
spellTypeName = "Group HoT Heal";
break;
case BotSpellTypes::HoTHeals:
spellTypeName = "HoT Heal";
break;
case BotSpellTypes::AENukes:
spellTypeName = "AE Nuke";
break;
case BotSpellTypes::AERains:
spellTypeName = "AE Rain";
break;
case BotSpellTypes::AEMez:
spellTypeName = "AE Mez";
break;
case BotSpellTypes::AEStun:
spellTypeName = "AE Stun";
break;
case BotSpellTypes::AEDebuff:
spellTypeName = "AE Debuff";
break;
case BotSpellTypes::AESlow:
spellTypeName = "AE Slow";
break;
case BotSpellTypes::AESnare:
spellTypeName = "AE Snare";
break;
case BotSpellTypes::AEFear:
spellTypeName = "AE Fear";
break;
case BotSpellTypes::AEDispel:
spellTypeName = "AE Dispel";
break;
case BotSpellTypes::AERoot:
spellTypeName = "AE Root";
break;
case BotSpellTypes::AEDoT:
spellTypeName = "AE DoT";
break;
case BotSpellTypes::AELifetap:
spellTypeName = "AE Lifetap";
break;
case BotSpellTypes::PBAENuke:
spellTypeName = "PBAE Nuke";
break;
case BotSpellTypes::PetBuffs:
spellTypeName = "Pet Buff";
break;
case BotSpellTypes::PetRegularHeals:
spellTypeName = "Pet Regular Heal";
break;
case BotSpellTypes::PetCompleteHeals:
spellTypeName = "Pet Complete Heal";
break;
case BotSpellTypes::PetFastHeals:
spellTypeName = "Pet Fast Heal";
break;
case BotSpellTypes::PetVeryFastHeals:
spellTypeName = "Pet Very Fast Heal";
break;
case BotSpellTypes::PetHoTHeals:
spellTypeName = "Pet HoT Heal";
break;
case BotSpellTypes::DamageShields:
spellTypeName = "Damage Shield";
break;
case BotSpellTypes::ResistBuffs:
spellTypeName = "Resist Buff";
break;
case BotSpellTypes::PetDamageShields:
spellTypeName = "Pet Damage Shield";
break;
case BotSpellTypes::PetResistBuffs:
spellTypeName = "Pet Resist Buff";
break;
case BotSpellTypes::HateLine:
spellTypeName = "Hate Line";
break;
case BotSpellTypes::AEHateLine:
spellTypeName = "AE Hate Line";
break;
case BotSpellTypes::Lull:
spellTypeName = "Lull";
break;
case BotSpellTypes::Teleport:
spellTypeName = "Teleport";
break;
case BotSpellTypes::Succor:
spellTypeName = "Succor";
break;
case BotSpellTypes::BindAffinity:
spellTypeName = "Bind Affinity";
break;
case BotSpellTypes::Identify:
spellTypeName = "Identify";
break;
case BotSpellTypes::Levitate:
spellTypeName = "Levitate";
break;
case BotSpellTypes::Rune:
spellTypeName = "Rune";
break;
case BotSpellTypes::WaterBreathing:
spellTypeName = "Water Breathing";
break;
case BotSpellTypes::Size:
spellTypeName = "Size";
break;
case BotSpellTypes::Invisibility:
spellTypeName = "Invisibility";
break;
case BotSpellTypes::MovementSpeed:
spellTypeName = "Movement Speed";
break;
case BotSpellTypes::SendHome:
spellTypeName = "Send Home";
break;
case BotSpellTypes::SummonCorpse:
spellTypeName = "Summon Corpse";
break;
case BotSpellTypes::AELull:
spellTypeName = "AE Lull";
break;
default:
break;
}
return spellTypeName;
bool Mob::IsValidSpellType(uint16 spellType) {
return (spellType >= BotSpellTypes::START && spellType <= BotSpellTypes::END) || (spellType >= BotSpellTypes::COMMANDED_START && spellType <= BotSpellTypes::COMMANDED_END);
}
std::string Mob::GetSpellTypeShortNameByID(uint16 spellType) {
std::string spellTypeName = "null";
return IsValidSpellType(spellType) ? spellType_shortNames[spellType] : "UNKNOWN SPELLTYPE";
}
switch (spellType) {
case BotSpellTypes::Nuke:
spellTypeName = "nukes";
break;
case BotSpellTypes::RegularHeal:
spellTypeName = "regularheals";
break;
case BotSpellTypes::Root:
spellTypeName = "roots";
break;
case BotSpellTypes::Buff:
spellTypeName = "buffs";
break;
case BotSpellTypes::Escape:
spellTypeName = "escapes";
break;
case BotSpellTypes::Pet:
spellTypeName = "pets";
break;
case BotSpellTypes::Lifetap:
spellTypeName = "lifetaps";
break;
case BotSpellTypes::Snare:
spellTypeName = "snares";
break;
case BotSpellTypes::DOT:
spellTypeName = "dots";
break;
case BotSpellTypes::Dispel:
spellTypeName = "dispels";
break;
case BotSpellTypes::InCombatBuff:
spellTypeName = "incombatbuffs";
break;
case BotSpellTypes::Mez:
spellTypeName = "mez";
break;
case BotSpellTypes::Charm:
spellTypeName = "charms";
break;
case BotSpellTypes::Slow:
spellTypeName = "slows";
break;
case BotSpellTypes::Debuff:
spellTypeName = "debuffs";
break;
case BotSpellTypes::Cure:
spellTypeName = "cures";
break;
case BotSpellTypes::GroupCures:
spellTypeName = "groupcures";
break;
case BotSpellTypes::PetCures:
spellTypeName = "petcure";
break;
case BotSpellTypes::Resurrect:
spellTypeName = "resurrect";
break;
case BotSpellTypes::HateRedux:
spellTypeName = "hateredux";
break;
case BotSpellTypes::InCombatBuffSong:
spellTypeName = "incombatbuffsongs";
break;
case BotSpellTypes::OutOfCombatBuffSong:
spellTypeName = "outofcombatbuffsongs";
break;
case BotSpellTypes::PreCombatBuff:
spellTypeName = "precombatbuffs";
break;
case BotSpellTypes::PreCombatBuffSong:
spellTypeName = "precombatbuffsongs";
break;
case BotSpellTypes::Fear:
spellTypeName = "fears";
break;
case BotSpellTypes::Stun:
spellTypeName = "stuns";
break;
case BotSpellTypes::CompleteHeal:
spellTypeName = "completeheals";
break;
case BotSpellTypes::FastHeals:
spellTypeName = "fastheals";
break;
case BotSpellTypes::VeryFastHeals:
spellTypeName = "veryfastheals";
break;
case BotSpellTypes::GroupHeals:
spellTypeName = "groupheals";
break;
case BotSpellTypes::GroupCompleteHeals:
spellTypeName = "groupcompleteheals";
break;
case BotSpellTypes::GroupHoTHeals:
spellTypeName = "grouphotheals";
break;
case BotSpellTypes::HoTHeals:
spellTypeName = "hotheals";
break;
case BotSpellTypes::AENukes:
spellTypeName = "aenukes";
break;
case BotSpellTypes::AERains:
spellTypeName = "aerains";
break;
case BotSpellTypes::AEMez:
spellTypeName = "aemez";
break;
case BotSpellTypes::AEStun:
spellTypeName = "aestuns";
break;
case BotSpellTypes::AEDebuff:
spellTypeName = "aedebuffs";
break;
case BotSpellTypes::AESlow:
spellTypeName = "aeslows";
break;
case BotSpellTypes::AESnare:
spellTypeName = "aesnares";
break;
case BotSpellTypes::AEFear:
spellTypeName = "aefears";
break;
case BotSpellTypes::AEDispel:
spellTypeName = "aedispels";
break;
case BotSpellTypes::AERoot:
spellTypeName = "aeroots";
break;
case BotSpellTypes::AEDoT:
spellTypeName = "aedots";
break;
case BotSpellTypes::AELifetap:
spellTypeName = "aelifetaps";
break;
case BotSpellTypes::PBAENuke:
spellTypeName = "pbaenukes";
break;
case BotSpellTypes::PetBuffs:
spellTypeName = "petbuffs";
break;
case BotSpellTypes::PetRegularHeals:
spellTypeName = "petregularheals";
break;
case BotSpellTypes::PetCompleteHeals:
spellTypeName = "petcompleteheals";
break;
case BotSpellTypes::PetFastHeals:
spellTypeName = "petfastheals";
break;
case BotSpellTypes::PetVeryFastHeals:
spellTypeName = "petveryfastheals";
break;
case BotSpellTypes::PetHoTHeals:
spellTypeName = "pethotheals";
break;
case BotSpellTypes::DamageShields:
spellTypeName = "damageshields";
break;
case BotSpellTypes::ResistBuffs:
spellTypeName = "resistbuffs";
break;
case BotSpellTypes::PetDamageShields:
spellTypeName = "petdamageshields";
break;
case BotSpellTypes::PetResistBuffs:
spellTypeName = "petresistbuffs";
break;
case BotSpellTypes::HateLine:
spellTypeName = "hateline";
break;
case BotSpellTypes::AEHateLine:
spellTypeName = "aehateline";
break;
case BotSpellTypes::Lull:
spellTypeName = "lull";
break;
case BotSpellTypes::Teleport:
spellTypeName = "teleport";
break;
case BotSpellTypes::Succor:
spellTypeName = "succor";
break;
case BotSpellTypes::BindAffinity:
spellTypeName = "bindaffinity";
break;
case BotSpellTypes::Identify:
spellTypeName = "identify";
break;
case BotSpellTypes::Levitate:
spellTypeName = "levitate";
break;
case BotSpellTypes::Rune:
spellTypeName = "rune";
break;
case BotSpellTypes::WaterBreathing:
spellTypeName = "waterbreathing";
break;
case BotSpellTypes::Size:
spellTypeName = "size";
break;
case BotSpellTypes::Invisibility:
spellTypeName = "invisibility";
break;
case BotSpellTypes::MovementSpeed:
spellTypeName = "movementspeed";
break;
case BotSpellTypes::SendHome:
spellTypeName = "sendhome";
break;
case BotSpellTypes::SummonCorpse:
spellTypeName = "summoncorpse";
break;
case BotSpellTypes::AELull:
spellTypeName = "aelull";
break;
default:
break;
}
std::string Mob::GetSpellTypeNameByID(uint16 spellType) {
return IsValidSpellType(spellType) ? spellType_names[spellType] : "UNKNOWN SPELLTYPE";
}
return spellTypeName;
bool Mob::IsValidSubType(uint16 subType) {
return (subType >= CommandedSubTypes::START && subType <= CommandedSubTypes::END);
}
std::string Mob::GetSubTypeNameByID(uint16 subType) {
std::string subTypeName = "null";
switch (subType) {
case CommandedSubTypes::SingleTarget:
subTypeName = "SingleTarget";
break;
case CommandedSubTypes::GroupTarget:
subTypeName = "GroupTarget";
break;
case CommandedSubTypes::AETarget:
subTypeName = "AETarget";
break;
case CommandedSubTypes::SeeInvis:
subTypeName = "SeeInvis";
break;
case CommandedSubTypes::Invis:
subTypeName = "Invis";
break;
case CommandedSubTypes::InvisUndead:
subTypeName = "InvisUndead";
break;
case CommandedSubTypes::InvisAnimals:
subTypeName = "InvisAnimals";
break;
case CommandedSubTypes::Shrink:
subTypeName = "Shrink";
break;
case CommandedSubTypes::Grow:
subTypeName = "Grow";
break;
case CommandedSubTypes::Selo:
subTypeName = "Selo";
break;
default:
break;
}
return subTypeName;
return IsValidSpellType(subType) ? botSubType_names[subType] : "UNKNOWN SUBTYPE";
}
bool Mob::GetDefaultSpellHold(uint16 spellType, uint8 stance) {