diff --git a/common/emu_constants.cpp b/common/emu_constants.cpp index 4f7355d8d..b7bc01fc3 100644 --- a/common/emu_constants.cpp +++ b/common/emu_constants.cpp @@ -206,46 +206,6 @@ std::string EQ::constants::GetFlyModeName(int8 flymode_id) return EQ::constants::GetFlyModeMap().find(flymode_id)->second; } -const std::map& EQ::constants::GetAccountStatusMap() -{ - static const std::map account_status_map = { - { AccountStatus::Player, "Player" }, - { AccountStatus::Steward, "Steward" }, - { AccountStatus::ApprenticeGuide, "Apprentice Guide" }, - { AccountStatus::Guide, "Guide" }, - { AccountStatus::QuestTroupe, "Quest Troupe" }, - { AccountStatus::SeniorGuide, "Senior Guide" }, - { AccountStatus::GMTester, "GM Tester" }, - { AccountStatus::EQSupport, "EQ Support" }, - { AccountStatus::GMStaff, "GM Staff" }, - { AccountStatus::GMAdmin, "GM Admin" }, - { AccountStatus::GMLeadAdmin, "GM Lead Admin" }, - { AccountStatus::QuestMaster, "Quest Master" }, - { AccountStatus::GMAreas, "GM Areas" }, - { AccountStatus::GMCoder, "GM Coder" }, - { AccountStatus::GMMgmt, "GM Mgmt" }, - { AccountStatus::GMImpossible, "GM Impossible" }, - { AccountStatus::Max, "GM Max" } - }; - - return account_status_map; -} - -std::string EQ::constants::GetAccountStatusName(uint8 account_status) -{ - for ( - auto status_level = EQ::constants::GetAccountStatusMap().rbegin(); - status_level != EQ::constants::GetAccountStatusMap().rend(); - ++status_level - ) { - if (account_status >= status_level->first) { - return status_level->second; - } - } - - return std::string(); -} - const std::map& EQ::constants::GetConsiderLevelMap() { static const std::map consider_level_map = { @@ -573,6 +533,21 @@ std::string EQ::constants::GetConsiderColorName(uint32 consider_color) return c != EQ::constants::GetConsiderColorMap().end() ? c->second : std::string(); } +std::string AccountStatus::GetName(uint8 account_status) +{ + for ( + auto e = account_status_names.rbegin(); + e != account_status_names.rend(); + ++e + ) { + if (account_status >= e->first) { + return e->second; + } + } + + return "UNKNOWN ACCOUNT STATUS"; +} + std::string ComparisonType::GetName(uint8 type) { return IsValid(type) ? comparison_types[type] : "UNKNOWN COMPARISON TYPE"; diff --git a/common/emu_constants.h b/common/emu_constants.h index cd0e1d4a6..af33b56e3 100644 --- a/common/emu_constants.h +++ b/common/emu_constants.h @@ -26,6 +26,48 @@ #include +namespace AccountStatus { + constexpr uint8 Player = 0; + constexpr uint8 Steward = 10; + constexpr uint8 ApprenticeGuide = 20; + constexpr uint8 Guide = 50; + constexpr uint8 QuestTroupe = 80; + constexpr uint8 SeniorGuide = 81; + constexpr uint8 GMTester = 85; + constexpr uint8 EQSupport = 90; + constexpr uint8 GMStaff = 95; + constexpr uint8 GMAdmin = 100; + constexpr uint8 GMLeadAdmin = 150; + constexpr uint8 QuestMaster = 160; + constexpr uint8 GMAreas = 170; + constexpr uint8 GMCoder = 180; + constexpr uint8 GMMgmt = 200; + constexpr uint8 GMImpossible = 250; + constexpr uint8 Max = 255; + + std::string GetName(uint8 account_status); +} + +static std::map account_status_names = { + { AccountStatus::Player, "Player" }, + { AccountStatus::Steward, "Steward" }, + { AccountStatus::ApprenticeGuide, "Apprentice Guide" }, + { AccountStatus::Guide, "Guide" }, + { AccountStatus::QuestTroupe, "Quest Troupe" }, + { AccountStatus::SeniorGuide, "Senior Guide" }, + { AccountStatus::GMTester, "GM Tester" }, + { AccountStatus::EQSupport, "EQ Support" }, + { AccountStatus::GMStaff, "GM Staff" }, + { AccountStatus::GMAdmin, "GM Admin" }, + { AccountStatus::GMLeadAdmin, "GM Lead Admin" }, + { AccountStatus::QuestMaster, "Quest Master" }, + { AccountStatus::GMAreas, "GM Areas" }, + { AccountStatus::GMCoder, "GM Coder" }, + { AccountStatus::GMMgmt, "GM Mgmt" }, + { AccountStatus::GMImpossible, "GM Impossible" }, + { AccountStatus::Max, "GM Max" } +}; + namespace ComparisonType { constexpr uint8 Equal = 0; constexpr uint8 NotEqual = 1; @@ -55,7 +97,6 @@ static std::map comparison_types = { { ComparisonType::NotBetween, "Not Between" }, }; - // local definitions are the result of using hybrid-client or server-only values and methods namespace EQ { @@ -509,26 +550,6 @@ enum ServerLockType : int { Unlock }; -enum AccountStatus : uint8 { - Player = 0, - Steward = 10, - ApprenticeGuide = 20, - Guide = 50, - QuestTroupe = 80, - SeniorGuide = 81, - GMTester = 85, - EQSupport = 90, - GMStaff = 95, - GMAdmin = 100, - GMLeadAdmin = 150, - QuestMaster = 160, - GMAreas = 170, - GMCoder = 180, - GMMgmt = 200, - GMImpossible = 250, - Max = 255 -}; - enum Invisibility : uint8 { Visible, Invisible, diff --git a/zone/gm_commands/show/who.cpp b/zone/gm_commands/show/who.cpp index 003a2af70..6ffccdddf 100755 --- a/zone/gm_commands/show/who.cpp +++ b/zone/gm_commands/show/who.cpp @@ -174,7 +174,7 @@ void ShowWho(Client *c, const Seperator *sep) account_status ? fmt::format( "* {} * ", - EQ::constants::GetAccountStatusName(account_status) + AccountStatus::GetName(account_status) ) : "" );