Core/Chat: Split ChatLevelReq.Say into 3

ChatLevelReq.Say
ChatLevelReq.Emote
ChatLevelReq.Yell

(cherry picked from commit cf8276845d9a26542fb18ca2e56b4957b61e4c73)

# Conflicts:
#	src/server/game/Handlers/ChatHandler.cpp
This commit is contained in:
Aokromes
2017-02-11 21:11:37 +01:00
committed by joschiwald
parent 41fad95ad8
commit 6326bf20f5
4 changed files with 42 additions and 21 deletions
+31 -8
View File
@@ -205,8 +205,6 @@ void WorldSession::HandleChatMessage(ChatMsg type, uint32 lang, std::string msg,
switch (type)
{
case CHAT_MSG_SAY:
case CHAT_MSG_EMOTE:
case CHAT_MSG_YELL:
{
// Prevent cheating
if (!sender->IsAlive())
@@ -218,12 +216,37 @@ void WorldSession::HandleChatMessage(ChatMsg type, uint32 lang, std::string msg,
return;
}
if (type == CHAT_MSG_SAY)
sender->Say(msg, Language(lang));
else if (type == CHAT_MSG_EMOTE)
sender->TextEmote(msg);
else if (type == CHAT_MSG_YELL)
sender->Yell(msg, Language(lang));
sender->Say(msg, Language(lang));
break;
}
case CHAT_MSG_EMOTE:
{
// Prevent cheating
if (!sender->IsAlive())
return;
if (sender->getLevel() < sWorld->getIntConfig(CONFIG_CHAT_EMOTE_LEVEL_REQ))
{
SendNotification(GetTrinityString(LANG_SAY_REQ), sWorld->getIntConfig(CONFIG_CHAT_EMOTE_LEVEL_REQ));
return;
}
sender->TextEmote(msg);
break;
}
case CHAT_MSG_YELL:
{
// Prevent cheating
if (!sender->IsAlive())
return;
if (sender->getLevel() < sWorld->getIntConfig(CONFIG_CHAT_YELL_LEVEL_REQ))
{
SendNotification(GetTrinityString(LANG_SAY_REQ), sWorld->getIntConfig(CONFIG_CHAT_YELL_LEVEL_REQ));
return;
}
sender->Yell(msg, Language(lang));
break;
}
case CHAT_MSG_WHISPER:
+2
View File
@@ -661,7 +661,9 @@ void World::LoadConfigSettings(bool reload)
}
m_int_configs[CONFIG_CHAT_CHANNEL_LEVEL_REQ] = sConfigMgr->GetIntDefault("ChatLevelReq.Channel", 1);
m_int_configs[CONFIG_CHAT_WHISPER_LEVEL_REQ] = sConfigMgr->GetIntDefault("ChatLevelReq.Whisper", 1);
m_int_configs[CONFIG_CHAT_EMOTE_LEVEL_REQ] = sConfigMgr->GetIntDefault("ChatLevelReq.Emote", 1);
m_int_configs[CONFIG_CHAT_SAY_LEVEL_REQ] = sConfigMgr->GetIntDefault("ChatLevelReq.Say", 1);
m_int_configs[CONFIG_CHAT_YELL_LEVEL_REQ] = sConfigMgr->GetIntDefault("ChatLevelReq.Yell", 1);
m_int_configs[CONFIG_PARTY_LEVEL_REQ] = sConfigMgr->GetIntDefault("PartyLevelReq", 1);
m_int_configs[CONFIG_TRADE_LEVEL_REQ] = sConfigMgr->GetIntDefault("LevelReq.Trade", 1);
m_int_configs[CONFIG_AUCTION_LEVEL_REQ] = sConfigMgr->GetIntDefault("LevelReq.Auction", 1);
+2
View File
@@ -301,7 +301,9 @@ enum WorldIntConfigs
CONFIG_CHAT_STRICT_LINK_CHECKING_KICK,
CONFIG_CHAT_CHANNEL_LEVEL_REQ,
CONFIG_CHAT_WHISPER_LEVEL_REQ,
CONFIG_CHAT_EMOTE_LEVEL_REQ,
CONFIG_CHAT_SAY_LEVEL_REQ,
CONFIG_CHAT_YELL_LEVEL_REQ,
CONFIG_PARTY_LEVEL_REQ,
CONFIG_TRADE_LEVEL_REQ,
CONFIG_AUCTION_LEVEL_REQ,
+7 -13
View File
@@ -1784,24 +1784,18 @@ Channel.RestrictedLfg = 1
#
# ChatLevelReq.Channel
# Description: Level requirement for characters to be able to write in chat channels.
# ChatLevelReq.Whisper
# ChatLevelReq.Emote
# ChatLevelReq.Say
# ChatLevelReq.Yell
# Description: Level requirement for characters to be able to use chats.
# Default: 1
ChatLevelReq.Channel = 1
#
# ChatLevelReq.Whisper
# Description: Level requirement for characters to be able to whisper other characters.
# Default: 1
ChatLevelReq.Whisper = 1
#
# ChatLevelReq.Say
# Description: Level requirement for characters to be able to use say/yell/emote.
# Default: 1
ChatLevelReq.Emote = 1
ChatLevelReq.Say = 1
ChatLevelReq.Yell = 1
#
# PartyLevelReq