aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Handlers/TraitHandler.cpp
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2024-08-10 12:01:47 +0200
committerShauren <shauren.trinity@gmail.com>2024-08-10 12:01:47 +0200
commitd1ffe61727f53505a3e2b94cae32f2ce3d28b07b (patch)
tree73077cb334bf8d67324ca8eca4e1bee9690a5bb1 /src/server/game/Handlers/TraitHandler.cpp
parent5912f4dd7ae311a0e8315f4d75b63c465ad9a472 (diff)
Core/Players: Implemented hero talents
Diffstat (limited to 'src/server/game/Handlers/TraitHandler.cpp')
-rw-r--r--src/server/game/Handlers/TraitHandler.cpp31
1 files changed, 17 insertions, 14 deletions
diff --git a/src/server/game/Handlers/TraitHandler.cpp b/src/server/game/Handlers/TraitHandler.cpp
index 1392ecf8ba9..1e1de92a139 100644
--- a/src/server/game/Handlers/TraitHandler.cpp
+++ b/src/server/game/Handlers/TraitHandler.cpp
@@ -88,23 +88,26 @@ void WorldSession::HandleTraitsCommitConfig(WorldPackets::Traits::TraitsCommitCo
return;
}
- TraitDefinitionEntry const* traitDefinition = sTraitDefinitionStore.LookupEntry(traitNodeEntry->TraitDefinitionID);
- if (!traitDefinition)
+ if (traitNodeEntry->TraitDefinitionID)
{
- SendPacket(WorldPackets::Traits::TraitConfigCommitFailed(configId, 0, TALENT_FAILED_UNKNOWN).Write());
- return;
- }
+ TraitDefinitionEntry const* traitDefinition = sTraitDefinitionStore.LookupEntry(traitNodeEntry->TraitDefinitionID);
+ if (!traitDefinition)
+ {
+ SendPacket(WorldPackets::Traits::TraitConfigCommitFailed(configId, 0, TALENT_FAILED_UNKNOWN).Write());
+ return;
+ }
- if (traitDefinition->SpellID && _player->GetSpellHistory()->HasCooldown(traitDefinition->SpellID))
- {
- SendPacket(WorldPackets::Traits::TraitConfigCommitFailed(configId, traitDefinition->SpellID, TALENT_FAILED_CANT_REMOVE_TALENT).Write());
- return;
- }
+ if (traitDefinition->SpellID && _player->GetSpellHistory()->HasCooldown(traitDefinition->SpellID))
+ {
+ SendPacket(WorldPackets::Traits::TraitConfigCommitFailed(configId, traitDefinition->SpellID, TALENT_FAILED_CANT_REMOVE_TALENT).Write());
+ return;
+ }
- if (traitDefinition->VisibleSpellID && _player->GetSpellHistory()->HasCooldown(traitDefinition->VisibleSpellID))
- {
- SendPacket(WorldPackets::Traits::TraitConfigCommitFailed(configId, traitDefinition->VisibleSpellID, TALENT_FAILED_CANT_REMOVE_TALENT).Write());
- return;
+ if (traitDefinition->VisibleSpellID && _player->GetSpellHistory()->HasCooldown(traitDefinition->VisibleSpellID))
+ {
+ SendPacket(WorldPackets::Traits::TraitConfigCommitFailed(configId, traitDefinition->VisibleSpellID, TALENT_FAILED_CANT_REMOVE_TALENT).Write());
+ return;
+ }
}
hasRemovedEntries = true;