diff options
| author | Ovahlord <dreadkiller@gmx.de> | 2024-06-25 20:20:09 +0200 |
|---|---|---|
| committer | Ovahlord <dreadkiller@gmx.de> | 2024-06-25 20:20:09 +0200 |
| commit | 166aec66ba80e01a9a861727e69d2dda73779262 (patch) | |
| tree | 4d5d0a881a3854c74fe5a34658db743a3f487042 /src/server/game/Chat | |
| parent | dc67de6b1b921856e30c53d368a584438d99f677 (diff) | |
Core/Misc: dropped several db2 storages which are empty/unused in classic and removed many unused opcode handlers and packet classes
Diffstat (limited to 'src/server/game/Chat')
| -rw-r--r-- | src/server/game/Chat/ChatCommands/ChatCommandArgs.cpp | 3 | ||||
| -rw-r--r-- | src/server/game/Chat/HyperlinkTags.cpp | 70 | ||||
| -rw-r--r-- | src/server/game/Chat/Hyperlinks.cpp | 87 | ||||
| -rw-r--r-- | src/server/game/Chat/Hyperlinks.h | 70 |
4 files changed, 1 insertions, 229 deletions
diff --git a/src/server/game/Chat/ChatCommands/ChatCommandArgs.cpp b/src/server/game/Chat/ChatCommands/ChatCommandArgs.cpp index 69283d82e5e..c0cc5abd121 100644 --- a/src/server/game/Chat/ChatCommands/ChatCommandArgs.cpp +++ b/src/server/game/Chat/ChatCommands/ChatCommandArgs.cpp @@ -114,7 +114,6 @@ struct SpellInfoVisitor { using value_type = SpellInfo const*; - value_type operator()(Hyperlink<apower> artifactPower) const { return operator()(artifactPower->ArtifactPower->SpellID); } value_type operator()(Hyperlink<enchant> enchant) const { return enchant; } value_type operator()(Hyperlink<mount> const& mount) const { return mount->Spell; } value_type operator()(Hyperlink<spell> spell) const { return spell->Spell; } @@ -125,7 +124,7 @@ struct SpellInfoVisitor }; ChatCommandResult Trinity::Impl::ChatCommands::ArgInfo<SpellInfo const*>::TryConsume(SpellInfo const*& data, ChatHandler const* handler, std::string_view args) { - Variant<Hyperlink<apower>, Hyperlink<enchant>, Hyperlink<mount>, Hyperlink<spell>, Hyperlink<talent>, Hyperlink<trade>, uint32> val; + Variant<Hyperlink<enchant>, Hyperlink<mount>, Hyperlink<spell>, Hyperlink<talent>, Hyperlink<trade>, uint32> val; ChatCommandResult result = ArgInfo<decltype(val)>::TryConsume(val, handler, args); if (!result || (data = val.visit(SpellInfoVisitor()))) return result; diff --git a/src/server/game/Chat/HyperlinkTags.cpp b/src/server/game/Chat/HyperlinkTags.cpp index 91f35b95314..43727f98d61 100644 --- a/src/server/game/Chat/HyperlinkTags.cpp +++ b/src/server/game/Chat/HyperlinkTags.cpp @@ -106,30 +106,6 @@ bool Trinity::Hyperlinks::LinkTags::api::StoreTo(ApiLinkData& val, std::string_v return true; } -bool Trinity::Hyperlinks::LinkTags::apower::StoreTo(ArtifactPowerLinkData& val, std::string_view text) -{ - HyperlinkDataTokenizer t(text); - uint32 artifactPowerId; - if (!(t.TryConsumeTo(artifactPowerId) && t.TryConsumeTo(val.PurchasedRank) && t.TryConsumeTo(val.CurrentRankWithBonus) && t.IsEmpty())) - return false; - if (!sArtifactPowerStore.LookupEntry(artifactPowerId)) - return false; - val.ArtifactPower = sDB2Manager.GetArtifactPowerRank(artifactPowerId, std::max<uint8>(val.CurrentRankWithBonus, 1)); - if (val.ArtifactPower) - return false; - return true; -} - -bool Trinity::Hyperlinks::LinkTags::azessence::StoreTo(AzeriteEssenceLinkData& val, std::string_view text) -{ - HyperlinkDataTokenizer t(text); - uint32 azeriteEssenceId; - if (!t.TryConsumeTo(azeriteEssenceId)) - return false; - return (val.Essence = sAzeriteEssenceStore.LookupEntry(azeriteEssenceId)) && t.TryConsumeTo(val.Rank) - && sDB2Manager.GetAzeriteEssencePower(azeriteEssenceId, val.Rank) && t.IsEmpty(); -} - bool Trinity::Hyperlinks::LinkTags::battlepet::StoreTo(BattlePetLinkData& val, std::string_view text) { HyperlinkDataTokenizer t(text); @@ -202,52 +178,6 @@ bool Trinity::Hyperlinks::LinkTags::enchant::StoreTo(SpellInfo const*& val, std: return !!(val = sSpellMgr->GetSpellInfo(spellId, DIFFICULTY_NONE)) && val->HasAttribute(SPELL_ATTR0_IS_TRADESKILL); } -bool Trinity::Hyperlinks::LinkTags::garrfollower::StoreTo(GarrisonFollowerLinkData& val, std::string_view text) -{ - HyperlinkDataTokenizer t(text); - uint32 garrFollowerId; - if (!t.TryConsumeTo(garrFollowerId)) - return false; - - val.Follower = sGarrFollowerStore.LookupEntry(garrFollowerId); - if (!val.Follower || !t.TryConsumeTo(val.Quality) || val.Quality >= MAX_ITEM_QUALITY || !t.TryConsumeTo(val.Level) || !t.TryConsumeTo(val.ItemLevel) - || !t.TryConsumeTo(val.Abilities[0]) || !t.TryConsumeTo(val.Abilities[1]) || !t.TryConsumeTo(val.Abilities[2]) || !t.TryConsumeTo(val.Abilities[3]) - || !t.TryConsumeTo(val.Traits[0]) || !t.TryConsumeTo(val.Traits[1]) || !t.TryConsumeTo(val.Traits[2]) || !t.TryConsumeTo(val.Traits[3]) - || !t.TryConsumeTo(val.Specialization) || !t.IsEmpty()) - return false; - - for (uint32 ability : val.Abilities) - if (ability && !sGarrAbilityStore.LookupEntry(ability)) - return false; - - for (uint32 trait : val.Traits) - if (trait && !sGarrAbilityStore.LookupEntry(trait)) - return false; - - if (val.Specialization && !sGarrAbilityStore.LookupEntry(val.Specialization)) - return false; - - return true; -} - -bool Trinity::Hyperlinks::LinkTags::garrfollowerability::StoreTo(GarrAbilityEntry const*& val, std::string_view text) -{ - HyperlinkDataTokenizer t(text); - uint32 garrAbilityId; - if (!t.TryConsumeTo(garrAbilityId)) - return false; - return !!(val = sGarrAbilityStore.LookupEntry(garrAbilityId)) && t.IsEmpty(); -} - -bool Trinity::Hyperlinks::LinkTags::garrmission::StoreTo(GarrisonMissionLinkData& val, std::string_view text) -{ - HyperlinkDataTokenizer t(text); - uint32 garrMissionId; - if (!t.TryConsumeTo(garrMissionId)) - return false; - return !!(val.Mission = sGarrMissionStore.LookupEntry(garrMissionId)) && t.TryConsumeTo(val.DbID) && t.IsEmpty(); -} - bool Trinity::Hyperlinks::LinkTags::instancelock::StoreTo(InstanceLockLinkData& val, std::string_view text) { HyperlinkDataTokenizer t(text); diff --git a/src/server/game/Chat/Hyperlinks.cpp b/src/server/game/Chat/Hyperlinks.cpp index 771c1fe59e4..88a2374740e 100644 --- a/src/server/game/Chat/Hyperlinks.cpp +++ b/src/server/game/Chat/Hyperlinks.cpp @@ -170,39 +170,6 @@ struct LinkValidator<LinkTags::achievement> }; template <> -struct LinkValidator<LinkTags::apower> -{ - static bool IsTextValid(ArtifactPowerLinkData const& data, std::string_view text) - { - if (SpellInfo const* info = sSpellMgr->GetSpellInfo(data.ArtifactPower->SpellID, DIFFICULTY_NONE)) - return LinkValidator<LinkTags::spell>::IsTextValid(info, text); - return false; - } - - static bool IsColorValid(ArtifactPowerLinkData const&, HyperlinkColor c) - { - return c == CHAT_LINK_COLOR_ARTIFACT_POWER; - } -}; - -template <> -struct LinkValidator<LinkTags::azessence> -{ - static bool IsTextValid(AzeriteEssenceLinkData const& data, std::string_view text) - { - for (LocaleConstant i = LOCALE_enUS; i < TOTAL_LOCALES; i = LocaleConstant(i + 1)) - if (data.Essence->Name[i] == text) - return true; - return false; - } - - static bool IsColorValid(AzeriteEssenceLinkData const& data, HyperlinkColor c) - { - return c == ItemQualityColors[data.Rank + 1]; - } -}; - -template <> struct LinkValidator<LinkTags::battlepet> { static bool IsTextValid(BattlePetLinkData const& data, std::string_view text) @@ -291,55 +258,6 @@ struct LinkValidator<LinkTags::enchant> }; template <> -struct LinkValidator<LinkTags::garrfollower> -{ - static bool IsTextValid(GarrisonFollowerLinkData const& data, std::string_view text) - { - return IsCreatureNameValid(data.Follower->HordeCreatureID, text) - || IsCreatureNameValid(data.Follower->AllianceCreatureID, text); - } - - static bool IsColorValid(GarrisonFollowerLinkData const& data, HyperlinkColor c) - { - return c == ItemQualityColors[data.Quality]; - } -}; - -template <> -struct LinkValidator<LinkTags::garrfollowerability> -{ - static bool IsTextValid(GarrAbilityEntry const* ability, std::string_view text) - { - for (LocaleConstant i = LOCALE_enUS; i < TOTAL_LOCALES; i = LocaleConstant(i + 1)) - if (ability->Name[i] == text) - return true; - return false; - } - - static bool IsColorValid(GarrAbilityEntry const*, HyperlinkColor c) - { - return c == CHAT_LINK_COLOR_GARR_ABILITY; - } -}; - -template <> -struct LinkValidator<LinkTags::garrmission> -{ - static bool IsTextValid(GarrisonMissionLinkData const& data, std::string_view text) - { - for (LocaleConstant i = LOCALE_enUS; i < TOTAL_LOCALES; i = LocaleConstant(i + 1)) - if (data.Mission->Name[i] == text) - return true; - return false; - } - - static bool IsColorValid(GarrisonMissionLinkData const&, HyperlinkColor c) - { - return c == QuestDifficultyColors[2]; - } -}; - -template <> struct LinkValidator<LinkTags::instancelock> { static bool IsTextValid(InstanceLockLinkData const& data, std::string_view text) @@ -622,8 +540,6 @@ static bool ValidateLinkInfo(HyperlinkInfo const& info) using namespace LinkTags; TryValidateAs(achievement); TryValidateAs(api); - TryValidateAs(apower); - TryValidateAs(azessence); TryValidateAs(area); TryValidateAs(areatrigger); TryValidateAs(battlepet); @@ -638,9 +554,6 @@ static bool ValidateLinkInfo(HyperlinkInfo const& info) TryValidateAs(gameevent); TryValidateAs(gameobject); TryValidateAs(gameobject_entry); - TryValidateAs(garrfollower); - TryValidateAs(garrfollowerability); - TryValidateAs(garrmission); TryValidateAs(instancelock); TryValidateAs(item); TryValidateAs(itemset); diff --git a/src/server/game/Chat/Hyperlinks.h b/src/server/game/Chat/Hyperlinks.h index db9e63063b4..e66211ced1f 100644 --- a/src/server/game/Chat/Hyperlinks.h +++ b/src/server/game/Chat/Hyperlinks.h @@ -25,16 +25,11 @@ #include <string_view> struct AchievementEntry; -struct ArtifactPowerRankEntry; -struct AzeriteEssenceEntry; struct BattlePetAbilityEntry; struct BattlePetSpeciesEntry; struct ChrSpecializationEntry; struct CurrencyContainerEntry; struct CurrencyTypesEntry; -struct GarrAbilityEntry; -struct GarrFollowerEntry; -struct GarrMissionEntry; struct GlyphPropertiesEntry; struct ItemModifiedAppearanceEntry; struct ItemNameDescriptionEntry; @@ -71,19 +66,6 @@ namespace Trinity::Hyperlinks std::string_view Parent; }; - struct ArtifactPowerLinkData - { - ArtifactPowerRankEntry const* ArtifactPower = nullptr; - uint8 PurchasedRank = 0; - uint8 CurrentRankWithBonus = 0; - }; - - struct AzeriteEssenceLinkData - { - AzeriteEssenceEntry const* Essence = nullptr; - uint8 Rank = 0; - }; - struct BattlePetLinkData { BattlePetSpeciesEntry const* Species = nullptr; @@ -134,23 +116,6 @@ namespace Trinity::Hyperlinks std::vector<Dungeon> Dungeons; }; - struct GarrisonFollowerLinkData - { - GarrFollowerEntry const* Follower = nullptr; - uint32 Quality = 0; - uint32 Level = 0; - uint32 ItemLevel = 0; - std::array<uint32, 4> Abilities = { }; - uint32 Traits[4] = { }; - uint32 Specialization = 0; - }; - - struct GarrisonMissionLinkData - { - GarrMissionEntry const* Mission = nullptr; - uint64 DbID = 0; - }; - struct InstanceLockLinkData { ObjectGuid Owner; @@ -337,20 +302,6 @@ namespace Trinity::Hyperlinks static bool StoreTo(ApiLinkData& val, std::string_view text); }; - struct TC_GAME_API apower - { - using value_type = ArtifactPowerLinkData const&; - static constexpr std::string_view tag() { return "apower"; } - static bool StoreTo(ArtifactPowerLinkData& val, std::string_view text); - }; - - struct TC_GAME_API azessence - { - using value_type = AzeriteEssenceLinkData const&; - static constexpr std::string_view tag() { return "azessence"; } - static bool StoreTo(AzeriteEssenceLinkData& val, std::string_view text); - }; - struct TC_GAME_API battlepet { using value_type = BattlePetLinkData const&; @@ -386,27 +337,6 @@ namespace Trinity::Hyperlinks static bool StoreTo(SpellInfo const*& val, std::string_view text); }; - struct TC_GAME_API garrfollower - { - using value_type = GarrisonFollowerLinkData const&; - static constexpr std::string_view tag() { return "garrfollower"; } - static bool StoreTo(GarrisonFollowerLinkData& val, std::string_view text); - }; - - struct TC_GAME_API garrfollowerability - { - using value_type = GarrAbilityEntry const*; - static constexpr std::string_view tag() { return "garrfollowerability"; } - static bool StoreTo(GarrAbilityEntry const*& val, std::string_view text); - }; - - struct TC_GAME_API garrmission - { - using value_type = GarrisonMissionLinkData const&; - static constexpr std::string_view tag() { return "garrmission"; } - static bool StoreTo(GarrisonMissionLinkData& val, std::string_view text); - }; - struct TC_GAME_API instancelock { using value_type = InstanceLockLinkData const&; |
