aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Chat
diff options
context:
space:
mode:
authorOvahlord <dreadkiller@gmx.de>2024-06-25 20:20:09 +0200
committerOvahlord <dreadkiller@gmx.de>2024-06-25 20:20:09 +0200
commit166aec66ba80e01a9a861727e69d2dda73779262 (patch)
tree4d5d0a881a3854c74fe5a34658db743a3f487042 /src/server/game/Chat
parentdc67de6b1b921856e30c53d368a584438d99f677 (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.cpp3
-rw-r--r--src/server/game/Chat/HyperlinkTags.cpp70
-rw-r--r--src/server/game/Chat/Hyperlinks.cpp87
-rw-r--r--src/server/game/Chat/Hyperlinks.h70
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&;