Core/Items: Disable legion artifacts except fishing artifact
Port From (https://github.com/TrinityCore/TrinityCore/commit/e718440599b2ce69a45bfdf0af0aee7d37621072)
This commit is contained in:
@@ -2152,6 +2152,15 @@ namespace Game.Entities
|
|||||||
SetUpdateFieldValue(m_values.ModifyValue(m_itemData).ModifyValue(m_itemData.ItemAppearanceModID), (byte)_bonusData.AppearanceModID);
|
SetUpdateFieldValue(m_values.ModifyValue(m_itemData).ModifyValue(m_itemData.ItemAppearanceModID), (byte)_bonusData.AppearanceModID);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public bool IsArtifactDisabled()
|
||||||
|
{
|
||||||
|
ArtifactRecord artifact = CliDB.ArtifactStorage.LookupByKey(GetTemplate().GetArtifactID());
|
||||||
|
if (artifact != null)
|
||||||
|
return artifact.ArtifactCategoryID != 2; // fishing artifact
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
public ArtifactPower GetArtifactPower(uint artifactPowerId)
|
public ArtifactPower GetArtifactPower(uint artifactPowerId)
|
||||||
{
|
{
|
||||||
var index = m_artifactPowerIdToIndex.LookupByKey(artifactPowerId);
|
var index = m_artifactPowerIdToIndex.LookupByKey(artifactPowerId);
|
||||||
|
|||||||
@@ -5385,6 +5385,9 @@ namespace Game.Entities
|
|||||||
//Artifact
|
//Artifact
|
||||||
void ApplyArtifactPowers(Item item, bool apply)
|
void ApplyArtifactPowers(Item item, bool apply)
|
||||||
{
|
{
|
||||||
|
if (item.IsArtifactDisabled())
|
||||||
|
return;
|
||||||
|
|
||||||
foreach (ArtifactPower artifactPower in item.m_itemData.ArtifactPowers)
|
foreach (ArtifactPower artifactPower in item.m_itemData.ArtifactPowers)
|
||||||
{
|
{
|
||||||
byte rank = artifactPower.CurrentRankWithBonus;
|
byte rank = artifactPower.CurrentRankWithBonus;
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ namespace Game
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
Item artifact = _player.GetItemByGuid(artifactAddPower.ArtifactGUID);
|
Item artifact = _player.GetItemByGuid(artifactAddPower.ArtifactGUID);
|
||||||
if (!artifact)
|
if (!artifact || artifact.IsArtifactDisabled())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
uint currentArtifactTier = artifact.GetModifier(ItemModifier.ArtifactTier);
|
uint currentArtifactTier = artifact.GetModifier(ItemModifier.ArtifactTier);
|
||||||
@@ -210,7 +210,7 @@ namespace Game
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
Item artifact = _player.GetItemByGuid(confirmArtifactRespec.ArtifactGUID);
|
Item artifact = _player.GetItemByGuid(confirmArtifactRespec.ArtifactGUID);
|
||||||
if (!artifact)
|
if (!artifact || artifact.IsArtifactDisabled())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
ulong xpCost = 0;
|
ulong xpCost = 0;
|
||||||
|
|||||||
Reference in New Issue
Block a user