aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Maps/Map.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/game/Maps/Map.cpp')
-rw-r--r--src/server/game/Maps/Map.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/server/game/Maps/Map.cpp b/src/server/game/Maps/Map.cpp
index 1bb697bc5a8..085c9957c66 100644
--- a/src/server/game/Maps/Map.cpp
+++ b/src/server/game/Maps/Map.cpp
@@ -3030,7 +3030,7 @@ void Map::ScriptsProcess()
switch (step.script->command)
{
case SCRIPT_COMMAND_TALK:
- if (step.script->datalong > CHAT_TYPE_WHISPER)
+ if (step.script->datalong > CHAT_TYPE_WHISPER && step.script->datalong != CHAT_MSG_RAID_BOSS_WHISPER)
{
sLog.outError("%s invalid chat type (%u) specified, skipping.", step.script->GetDebugInfo().c_str(), step.script->datalong);
break;
@@ -3096,6 +3096,14 @@ void Map::ScriptsProcess()
}
cSource->Whisper(step.script->dataint, targetGUID);
break;
+ case CHAT_MSG_RAID_BOSS_WHISPER: //42
+ if (!targetGUID || !IS_PLAYER_GUID(targetGUID))
+ {
+ sLog.outError("%s attempt to raidbosswhisper to non-player unit, skipping.", step.script->GetDebugInfo().c_str());
+ break;
+ }
+ cSource->MonsterWhisper(step.script->dataint, targetGUID, true);
+ break;
default:
break; // must be already checked at load
}