From 2e3c612c808bca7601b32ce5dca28b204e652773 Mon Sep 17 00:00:00 2001 From: Peter Keresztes Schmidt Date: Sat, 15 Aug 2020 15:29:43 +0200 Subject: Core/Unit: Make HandleEmoteCommand typesafe (#25249) * Scripts/ScarletMonastery: Fix wrong emote during Headless Horseman encounter * Scripts/HoR: Fix wrong emote during escape event * Core/Unit: Make improve type safety of HandleEmoteCommand Change argument type to the expected enum type Emote * Scripts/CoS: Use SetUInt32Value to set UNIT_NPC_EMOTESTATE UNIT_NPC_EMOTESTATE is no flag field (cherry picked from commit 6c7837f947ff4eb5110a116a371daa6f9e2b3bbe) --- src/server/game/AI/SmartScripts/SmartScript.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/server/game/AI/SmartScripts') diff --git a/src/server/game/AI/SmartScripts/SmartScript.cpp b/src/server/game/AI/SmartScripts/SmartScript.cpp index 3a6b8c93661..dfee4bf1e2e 100644 --- a/src/server/game/AI/SmartScripts/SmartScript.cpp +++ b/src/server/game/AI/SmartScripts/SmartScript.cpp @@ -321,7 +321,7 @@ void SmartScript::ProcessAction(SmartScriptHolder& e, Unit* unit, uint32 var0, u { if (IsUnit(target)) { - target->ToUnit()->HandleEmoteCommand(e.action.emote.emote); + target->ToUnit()->HandleEmoteCommand(static_cast(e.action.emote.emote)); TC_LOG_DEBUG("scripts.ai", "SmartScript::ProcessAction:: SMART_ACTION_PLAY_EMOTE: target: %s %s, emote: %u", target->GetName().c_str(), target->GetGUID().ToString().c_str(), e.action.emote.emote); } @@ -475,7 +475,7 @@ void SmartScript::ProcessAction(SmartScriptHolder& e, Unit* unit, uint32 var0, u { if (IsUnit(target)) { - uint32 emote = Trinity::Containers::SelectRandomContainerElement(emotes); + Emote emote = static_cast(Trinity::Containers::SelectRandomContainerElement(emotes)); target->ToUnit()->HandleEmoteCommand(emote); TC_LOG_DEBUG("scripts.ai", "SmartScript::ProcessAction:: SMART_ACTION_RANDOM_EMOTE: Creature %s handle random emote %u", target->GetGUID().ToString().c_str(), emote); -- cgit v1.2.3