aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/game/ChatHandler.cpp8
-rw-r--r--src/game/World.cpp5
-rw-r--r--src/game/World.h1
-rw-r--r--src/shared/Log.cpp9
-rw-r--r--src/shared/Log.h24
-rw-r--r--src/trinitycore/trinitycore.conf.dist22
6 files changed, 44 insertions, 25 deletions
diff --git a/src/game/ChatHandler.cpp b/src/game/ChatHandler.cpp
index d8c831448f5..12456472505 100644
--- a/src/game/ChatHandler.cpp
+++ b/src/game/ChatHandler.cpp
@@ -436,6 +436,10 @@ void WorldSession::HandleMessagechatOpcode( WorldPacket & recv_data )
WorldPacket data;
ChatHandler::FillMessageData(&data, this, CHAT_MSG_BATTLEGROUND, lang, "", 0, msg.c_str(),NULL);
group->BroadcastPacket(&data, false);
+
+ if(sWorld.getConfig(CONFIG_CHATLOG_BGROUND))
+ sLog.outChat("[BATTLEGROUND] Player %s tells battleground with leader %s: %s",
+ GetPlayer()->GetName(), group->GetLeaderName(), msg.c_str());
} break;
case CHAT_MSG_BATTLEGROUND_LEADER:
@@ -458,6 +462,10 @@ void WorldSession::HandleMessagechatOpcode( WorldPacket & recv_data )
WorldPacket data;
ChatHandler::FillMessageData(&data, this, CHAT_MSG_BATTLEGROUND_LEADER, lang, "", 0, msg.c_str(),NULL);
group->BroadcastPacket(&data, false);
+
+ if(sWorld.getConfig(CONFIG_CHATLOG_BGROUND))
+ sLog.outChat("[RAID] Leader player %s tells battleground: %s",
+ GetPlayer()->GetName(), msg.c_str());
} break;
case CHAT_MSG_CHANNEL:
diff --git a/src/game/World.cpp b/src/game/World.cpp
index 79f3c15201d..e84a6cbaddc 100644
--- a/src/game/World.cpp
+++ b/src/game/World.cpp
@@ -835,7 +835,7 @@ void World::LoadConfigSettings(bool reload)
m_configs[CONFIG_LOGDB_CLEARINTERVAL] = sConfig.GetIntDefault("LogDB.Opt.ClearInterval", 10);
if(int32(m_configs[CONFIG_LOGDB_CLEARINTERVAL]) <= 0)
{
- sLog.outError("LogDB.Opt.ClearInternval (%i) must be > 0, set to default 10.", m_configs[CONFIG_LOGDB_CLEARINTERVAL]);
+ sLog.outError("LogDB.Opt.ClearInterval (%i) must be > 0, set to default 10.", m_configs[CONFIG_LOGDB_CLEARINTERVAL]);
m_configs[CONFIG_LOGDB_CLEARINTERVAL] = 10;
}
if(reload)
@@ -1111,6 +1111,7 @@ void World::LoadConfigSettings(bool reload)
m_configs[CONFIG_CHATLOG_GUILD] = sConfig.GetBoolDefault("ChatLogs.Guild", false);
m_configs[CONFIG_CHATLOG_PUBLIC] = sConfig.GetBoolDefault("ChatLogs.Public", false);
m_configs[CONFIG_CHATLOG_ADDON] = sConfig.GetBoolDefault("ChatLogs.Addon", false);
+ m_configs[CONFIG_CHATLOG_BGROUND] = sConfig.GetBoolDefault("ChatLogs.BattleGround", false);
}
/// Initialize the World
@@ -1721,7 +1722,7 @@ void World::Update(uint32 diff)
uint32 maxClientsNum = sWorld.GetMaxActiveSessionCount();
m_timers[WUPDATE_CLEANDB].Reset();
- LoginDatabase.PExecute("DELETE FROM logs WHERE (time + %u) < %u;",
+ LoginDatabase.PExecute("DELETE FROM logs WHERE (time + %u) < "I64FMTD";",
sWorld.getConfig(CONFIG_LOGDB_CLEARTIME), uint64(time(0)));
}
}
diff --git a/src/game/World.h b/src/game/World.h
index c6ec223ba54..7ab378b8927 100644
--- a/src/game/World.h
+++ b/src/game/World.h
@@ -225,6 +225,7 @@ enum WorldConfigs
CONFIG_CHATLOG_GUILD,
CONFIG_CHATLOG_PUBLIC,
CONFIG_CHATLOG_ADDON,
+ CONFIG_CHATLOG_BGROUND,
CONFIG_LOGDB_CLEARINTERVAL,
CONFIG_LOGDB_CLEARTIME,
CONFIG_VALUE_COUNT
diff --git a/src/shared/Log.cpp b/src/shared/Log.cpp
index e79ea12933d..2603069a461 100644
--- a/src/shared/Log.cpp
+++ b/src/shared/Log.cpp
@@ -91,12 +91,15 @@ void Log::SetDBLogLevel(char *Level)
void Log::Initialize()
{
- /// Check whether we'll log GM commands/RA events/character outputs
+ /// Check whether we'll log GM commands/RA events/character outputs/chat stuffs
m_dbChar = sConfig.GetBoolDefault("LogDB.Char", false);
m_dbRA = sConfig.GetBoolDefault("LogDB.RA", false);
m_dbGM = sConfig.GetBoolDefault("LogDB.GM", false);
m_dbChat = sConfig.GetBoolDefault("LogDB.Chat", false);
+ /// Realm must be 0 by default
+ SetRealmID(0);
+
/// Common log files data
m_logsDir = sConfig.GetStringDefault("LogsDir","");
if(!m_logsDir.empty())
@@ -337,9 +340,9 @@ std::string Log::GetTimestampStr()
return std::string(buf);
}
-void Log::outDB( uint8 type, const char * str, ... )
+void Log::outDB( uint32 type, const char * str, ... )
{
- if(!type)
+ if(type >= MAX_LOG_TYPES)
return;
if(!str)
diff --git a/src/shared/Log.h b/src/shared/Log.h
index 78261470174..6ef7f64289e 100644
--- a/src/shared/Log.h
+++ b/src/shared/Log.h
@@ -95,20 +95,20 @@ class Log : public Trinity::Singleton<Log, Trinity::ClassLevelLockable<Log, ZThr
void SetColor(bool stdout_stream, ColorTypes color);
void ResetColor(bool stdout_stream);
- void outDB( uint8 type, const char * str, ... ) ATTR_PRINTF(3,4);
- void outString( const char * str, ... ) ATTR_PRINTF(2,3);
+ void outDB( uint32 type, const char * str, ... ) ATTR_PRINTF(3,4);
+ void outString( const char * str, ... ) ATTR_PRINTF(2,3);
void outString( );
- void outError( const char * err, ... ) ATTR_PRINTF(2,3);
- void outCrash( const char * err, ... ) ATTR_PRINTF(2,3);
- void outBasic( const char * str, ... ) ATTR_PRINTF(2,3);
- void outDetail( const char * str, ... ) ATTR_PRINTF(2,3);
- void outDebug( const char * str, ... ) ATTR_PRINTF(2,3);
- void outDebugInLine( const char * str, ... ) ATTR_PRINTF(2,3);
- void outErrorDb( const char * str, ... ) ATTR_PRINTF(2,3);
- void outChar( const char * str, ... ) ATTR_PRINTF(2,3);
+ void outError( const char * err, ... ) ATTR_PRINTF(2,3);
+ void outCrash( const char * err, ... ) ATTR_PRINTF(2,3);
+ void outBasic( const char * str, ... ) ATTR_PRINTF(2,3);
+ void outDetail( const char * str, ... ) ATTR_PRINTF(2,3);
+ void outDebug( const char * str, ... ) ATTR_PRINTF(2,3);
+ void outDebugInLine( const char * str, ... ) ATTR_PRINTF(2,3);
+ void outErrorDb( const char * str, ... ) ATTR_PRINTF(2,3);
+ void outChar( const char * str, ... ) ATTR_PRINTF(2,3);
void outCommand( uint32 account, const char * str, ...) ATTR_PRINTF(3,4);
- void outRemote( const char * str, ... ) ATTR_PRINTF(2,3);
- void outChat( const char * str, ... ) ATTR_PRINTF(2,3);
+ void outRemote( const char * str, ... ) ATTR_PRINTF(2,3);
+ void outChat( const char * str, ... ) ATTR_PRINTF(2,3);
void outCharDump( const char * str, uint32 account_id, uint32 guid, const char * name );
static void outTimestamp(FILE* file);
diff --git a/src/trinitycore/trinitycore.conf.dist b/src/trinitycore/trinitycore.conf.dist
index dd09409d7a6..6a80ca9075f 100644
--- a/src/trinitycore/trinitycore.conf.dist
+++ b/src/trinitycore/trinitycore.conf.dist
@@ -381,6 +381,11 @@ AddonChannel = 1
# Default: 0 - off
# 1 - on
#
+# ChatLogs.BattleGround
+# Enable logging battleground chats.
+# Default: 0 - off
+# 1 - on
+#
###################################################################################################################
LogSQL = 1
@@ -411,14 +416,15 @@ LogDB.GM = 0
LogDB.RA = 0
LogDB.World = 0
LogDB.Chat = 0
-ChatLogs.Channel = 0
-ChatLogs.SysChan = 0
-ChatLogs.Whisper = 0
-ChatLogs.Party = 0
-ChatLogs.Raid = 0
-ChatLogs.Guild = 0
-ChatLogs.Public = 0
-ChatLogs.Addon = 0
+ChatLogs.Channel = 0
+ChatLogs.SysChan = 0
+ChatLogs.Whisper = 0
+ChatLogs.Party = 0
+ChatLogs.Raid = 0
+ChatLogs.Guild = 0
+ChatLogs.Public = 0
+ChatLogs.Addon = 0
+ChatLogs.BattleGround = 0
###################################################################################################################
# SERVER SETTINGS