36 bool anythingLearned =
false;
40 anythingLearned =
true;
56 TC_LOG_DEBUG(
"network",
"WORLD: HandleTalentWipeConfirmOpcode - {} not found or you can't interact with him.", confirmRespecWipe.
RespecMaster);
SkillRaceClassInfoEntry const * GetSkillRaceClassInfo(uint32 skill, uint8 race, uint8 class_)
#define TC_LOG_DEBUG(filterType__,...)
bool CanResetTalents(Player *player, bool pet) const
static ObjectGuid const Empty
void SendTalentsInfoData(bool pet)
uint32 GetNextResetTalentsCost() const
bool LearnTalent(uint32 talentId, uint32 talentRank)
bool ModifyMoney(int32 amount, bool sendError=true)
void SetSkill(uint32 id, uint16 step, uint16 newVal, uint16 maxVal)
bool HasEnoughMoney(uint32 amount) const
Creature * GetNPCIfCanInteractWith(ObjectGuid const &guid, NPCFlags npcFlags) const
bool ResetTalents(bool involuntarily=false)
void IncreaseResetTalentsCostAndCounters(uint32 lastResetTalentsCost)
void SendRespecWipeConfirm(ObjectGuid const &guid, uint32 cost) const
void RemoveAurasByType(AuraType auraType, std::function< bool(AuraApplication const *)> const &check, AuraRemoveMode removeMode=AURA_REMOVE_BY_DEFAULT)
SpellCastResult CastSpell(CastSpellTargetArg const &targets, uint32 spellId, CastSpellExtraArgs const &args={ })
Array< LearnTalentEntry, 150 > Talents
void HandleLearnPreviewTalents(WorldPackets::Talent::LearnPreviewTalents &learnPreviewTalents)
Player * GetPlayer() const
void HandleLearnTalentOpcode(WorldPackets::Talent::LearnTalent &packet)
void HandleTalentWipeConfirmOpcode(WorldPackets::Talent::ConfirmRespecWipe &confirmRespecWipe)
void HandleUnlearnSkillOpcode(WorldPacket &recvPacket)