diff --git a/conf/transmog.conf.dist b/conf/transmog.conf.dist index af64e81..dc6c9c3 100644 --- a/conf/transmog.conf.dist +++ b/conf/transmog.conf.dist @@ -278,11 +278,17 @@ Transmogrification.SetCopperCost = 0 # Example: Transmogrification.MembershipLevelsPet = "1,2,3" # Default: "" # +# Transmogrification.PetSpellId +# Description: The ID used by the transmog pet in the spell_dbc table +# Example: Transmogrification.PetSpellId = 2000100 +# Default: 2000100 +# Transmogrification.EnablePlus = 0 Transmogrification.MembershipLevels = "" Transmogrification.MembershipLevelsLegendary = "" Transmogrification.MembershipLevelsPet = "" +Transmogrification.PetSpellId = 2000100 # ################################################################################################### diff --git a/src/Transmogrification.cpp b/src/Transmogrification.cpp index 6556578..ba10098 100644 --- a/src/Transmogrification.cpp +++ b/src/Transmogrification.cpp @@ -1058,6 +1058,8 @@ void Transmogrification::LoadConfig(bool reload) for (auto& itr : Acore::Tokenize(stringMembershipIds, ',', false)) { MembershipIdsPet.push_back(Acore::StringTo(itr).value()); } + + PetSpellId = sConfigMgr->GetOption("Transmogrification.PetSpellId", 2000100); } void Transmogrification::DeleteFakeFromDB(ObjectGuid::LowType itemLowGuid, CharacterDatabaseTransaction* trans /*= nullptr*/) diff --git a/src/Transmogrification.h b/src/Transmogrification.h index 883151e..47cd760 100644 --- a/src/Transmogrification.h +++ b/src/Transmogrification.h @@ -63,11 +63,6 @@ enum TransmogAcoreStrings // Language.h might have same entries, appears when ex LANG_CMD_TRANSMOG_COMPLETE_SYNC = 11116, }; -enum TransmogSpells -{ - SPELL_SUMMON_ETHEREAL_WARPWEAVER = 2000100 -}; - class Transmogrification { public: @@ -102,6 +97,8 @@ public: float SetCostModifier; int32 SetCopperCost; + uint32 PetSpellId; + bool GetEnableSets() const; uint8 GetMaxSets() const; float GetSetCostModifier() const; diff --git a/src/cs_transmog.cpp b/src/cs_transmog.cpp index bb8d8fa..02871ca 100644 --- a/src/cs_transmog.cpp +++ b/src/cs_transmog.cpp @@ -307,7 +307,7 @@ public: if (sTransmogrification->IsTransmogPlusEnabled) { if (sTransmogrification->isTransmogPlusPetEligible(player->GetGUID())) { - player->CastSpell((Unit*)nullptr, SPELL_SUMMON_ETHEREAL_WARPWEAVER, true); + player->CastSpell((Unit*)nullptr, sTransmogrification->PetSpellId, true); return true; } } @@ -316,7 +316,7 @@ public: return true; } - player->CastSpell((Unit*)nullptr, SPELL_SUMMON_ETHEREAL_WARPWEAVER, true); + player->CastSpell((Unit*)nullptr, sTransmogrification->PetSpellId, true); } return true;