diff --git a/src/server/game/Scripting/ScriptDefines/CreatureScript.cpp b/src/server/game/Scripting/ScriptDefines/CreatureScript.cpp index e4e54c7dc..94106e706 100644 --- a/src/server/game/Scripting/ScriptDefines/CreatureScript.cpp +++ b/src/server/game/Scripting/ScriptDefines/CreatureScript.cpp @@ -31,12 +31,16 @@ bool ScriptMgr::OnGossipHello(Player* player, Creature* creature) if (ret && *ret) { + if (auto tempScript = ScriptRegistry::GetScriptById(creature->GetScriptId())) + { + ClearGossipMenuFor(player); + return tempScript->OnGossipHello(player, creature); + } + return true; } - auto tempScript = ScriptRegistry::GetScriptById(creature->GetScriptId()); - ClearGossipMenuFor(player); - return tempScript ? tempScript->OnGossipHello(player, creature) : false; + return false; } bool ScriptMgr::OnGossipSelect(Player* player, Creature* creature, uint32 sender, uint32 action) @@ -51,11 +55,15 @@ bool ScriptMgr::OnGossipSelect(Player* player, Creature* creature, uint32 sender if (ret && *ret) { + if (auto tempScript = ScriptRegistry::GetScriptById(creature->GetScriptId())) + { + return tempScript->OnGossipSelect(player, creature, sender, action); + } + return true; } - auto tempScript = ScriptRegistry::GetScriptById(creature->GetScriptId()); - return tempScript ? tempScript->OnGossipSelect(player, creature, sender, action) : false; + return false; } bool ScriptMgr::OnGossipSelectCode(Player* player, Creature* creature, uint32 sender, uint32 action, const char* code) @@ -71,11 +79,15 @@ bool ScriptMgr::OnGossipSelectCode(Player* player, Creature* creature, uint32 se if (ret && *ret) { + if (auto tempScript = ScriptRegistry::GetScriptById(creature->GetScriptId())) + { + return tempScript->OnGossipSelectCode(player, creature, sender, action, code); + } + return true; } - auto tempScript = ScriptRegistry::GetScriptById(creature->GetScriptId()); - return tempScript ? tempScript->OnGossipSelectCode(player, creature, sender, action, code) : false; + return false; } bool ScriptMgr::OnQuestAccept(Player* player, Creature* creature, Quest const* quest) @@ -91,12 +103,16 @@ bool ScriptMgr::OnQuestAccept(Player* player, Creature* creature, Quest const* q if (ret && *ret) { + if (auto tempScript = ScriptRegistry::GetScriptById(creature->GetScriptId())) + { + ClearGossipMenuFor(player); + return tempScript->OnQuestAccept(player, creature, quest); + } + return true; } - auto tempScript = ScriptRegistry::GetScriptById(creature->GetScriptId()); - ClearGossipMenuFor(player); - return tempScript ? tempScript->OnQuestAccept(player, creature, quest) : false; + return false; } bool ScriptMgr::OnQuestSelect(Player* player, Creature* creature, Quest const* quest) @@ -134,12 +150,16 @@ bool ScriptMgr::OnQuestReward(Player* player, Creature* creature, Quest const* q if (ret && *ret) { + if (auto tempScript = ScriptRegistry::GetScriptById(creature->GetScriptId())) + { + ClearGossipMenuFor(player); + return tempScript->OnQuestReward(player, creature, quest, opt); + } + return true; } - auto tempScript = ScriptRegistry::GetScriptById(creature->GetScriptId()); - ClearGossipMenuFor(player); - return tempScript ? tempScript->OnQuestReward(player, creature, quest, opt) : false; + return false; } uint32 ScriptMgr::GetDialogStatus(Player* player, Creature* creature) diff --git a/src/server/game/Scripting/ScriptDefines/GameObjectScript.cpp b/src/server/game/Scripting/ScriptDefines/GameObjectScript.cpp index abf62eb58..952e159a2 100644 --- a/src/server/game/Scripting/ScriptDefines/GameObjectScript.cpp +++ b/src/server/game/Scripting/ScriptDefines/GameObjectScript.cpp @@ -31,12 +31,16 @@ bool ScriptMgr::OnGossipHello(Player* player, GameObject* go) if (ret && *ret) { + if (auto tempScript = ScriptRegistry::GetScriptById(go->GetScriptId())) + { + ClearGossipMenuFor(player); + return tempScript->OnGossipHello(player, go); + } + return true; } - auto tempScript = ScriptRegistry::GetScriptById(go->GetScriptId()); - ClearGossipMenuFor(player); - return tempScript ? tempScript->OnGossipHello(player, go) : false; + return false; } bool ScriptMgr::OnGossipSelect(Player* player, GameObject* go, uint32 sender, uint32 action) @@ -51,11 +55,15 @@ bool ScriptMgr::OnGossipSelect(Player* player, GameObject* go, uint32 sender, ui if (ret && *ret) { + if (auto tempScript = ScriptRegistry::GetScriptById(go->GetScriptId())) + { + return tempScript->OnGossipSelect(player, go, sender, action); + } + return true; } - auto tempScript = ScriptRegistry::GetScriptById(go->GetScriptId()); - return tempScript ? tempScript->OnGossipSelect(player, go, sender, action) : false; + return false; } bool ScriptMgr::OnGossipSelectCode(Player* player, GameObject* go, uint32 sender, uint32 action, const char* code) @@ -71,11 +79,15 @@ bool ScriptMgr::OnGossipSelectCode(Player* player, GameObject* go, uint32 sender if (ret && *ret) { + if (auto tempScript = ScriptRegistry::GetScriptById(go->GetScriptId())) + { + return tempScript->OnGossipSelectCode(player, go, sender, action, code); + } + return true; } - auto tempScript = ScriptRegistry::GetScriptById(go->GetScriptId()); - return tempScript ? tempScript->OnGossipSelectCode(player, go, sender, action, code) : false; + return false; } bool ScriptMgr::OnQuestAccept(Player* player, GameObject* go, Quest const* quest) @@ -91,12 +103,16 @@ bool ScriptMgr::OnQuestAccept(Player* player, GameObject* go, Quest const* quest if (ret && *ret) { + if (auto tempScript = ScriptRegistry::GetScriptById(go->GetScriptId())) + { + ClearGossipMenuFor(player); + return tempScript->OnQuestAccept(player, go, quest); + } + return true; } - auto tempScript = ScriptRegistry::GetScriptById(go->GetScriptId()); - ClearGossipMenuFor(player); - return tempScript ? tempScript->OnQuestAccept(player, go, quest) : false; + return false; } bool ScriptMgr::OnQuestReward(Player* player, GameObject* go, Quest const* quest, uint32 opt) @@ -112,12 +128,17 @@ bool ScriptMgr::OnQuestReward(Player* player, GameObject* go, Quest const* quest if (ret && *ret) { + ClearGossipMenuFor(player); + + if (auto tempScript = ScriptRegistry::GetScriptById(go->GetScriptId())) + { + return tempScript->OnQuestReward(player, go, quest, opt); + } + return true; } - auto tempScript = ScriptRegistry::GetScriptById(go->GetScriptId()); - ClearGossipMenuFor(player); - return tempScript ? tempScript->OnQuestReward(player, go, quest, opt) : false; + return false; } uint32 ScriptMgr::GetDialogStatus(Player* player, GameObject* go)