Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions src/aoclient.h
Original file line number Diff line number Diff line change
Expand Up @@ -2157,6 +2157,11 @@ class AOClient : public QObject
*/
void logIC(const QString &f_charName, const QString &f_oocName, const QString &f_ipid,
const QString &f_areaName, const QString &f_message);
/**
* @brief Signal connected to universal logger. Sends music usage to the logger.
*/
void logMusic(const QString &f_charName, const QString &f_oocName, const QString &f_ipid,
const QString &f_areaName, const QString &f_track);

/**
* @brief Signal connected to universal logger. Sends OOC chat usage to the logger.
Expand Down
8 changes: 8 additions & 0 deletions src/logger/u_logger.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,14 @@ void ULogger::logIC(const QString &f_char_name, const QString &f_ooc_name, const
updateAreaBuffer(f_area_name, l_logEntry);
}

void ULogger::logMusic(const QString &f_char_name, const QString &f_ooc_name, const QString &f_ipid,
const QString &f_area_name, const QString &f_track)
{
QString l_time = QDateTime::currentDateTime().toString("ddd MMMM d yyyy | hh:mm:ss");
QString l_logEntry = QString(m_logtext.value("music") + "\n").arg(l_time, f_char_name, f_ooc_name, f_ipid, f_area_name, f_track);
updateAreaBuffer(f_area_name, l_logEntry);
}

void ULogger::logOOC(const QString &f_char_name, const QString &f_ooc_name, const QString &f_ipid,
const QString &f_area_name, const QString &f_message)
{
Expand Down
7 changes: 7 additions & 0 deletions src/logger/u_logger.h
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,12 @@ class ULogger : public QObject
void logIC(const QString &f_char_name, const QString &f_ooc_name, const QString &f_ipid,
const QString &f_area_name, const QString &f_message);

/**
* @brief Adds a music log entry to the area buffer and writes it to the respective log format.
*/
void logMusic(const QString &f_char_name, const QString &f_ooc_name, const QString &f_ipid,
const QString &f_area_name, const QString &f_track);

/**
* @brief Adds an OOC log entry to the area buffer and writes it to the respective log format.
*/
Expand Down Expand Up @@ -135,6 +141,7 @@ class ULogger : public QObject
*/
QHash<QString, QString> m_logtext{
{"ic", "[%1][%5][IC][%2(%3)][%4]%6"},
{"music", "[%1][%5][MUSIC][%2(%3)][%4]%6"},
{"ooc", "[%1][%5][OOC][%2(%3)][%4]%6"},
{"login", "[%1][LOGIN][%2][%3][%4(%5)]"},
{"cmdlogin", "[%1][%2][LOGIN][%5][%3(%4)]"},
Expand Down
2 changes: 2 additions & 0 deletions src/packet/packet_mc.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,8 @@ void PacketMC::handlePacket(AreaData *area, AOClient &client) const
AOPacket *l_music_change = PacketFactory::createPacket("MC", {l_final_song, m_content[1], client.characterName(), "1", "0", l_effects});
client.getServer()->broadcast(l_music_change, client.areaId());

emit client.logMusic((client.character() + " " + client.characterName()), client.name(), client.m_ipid, client.getServer()->getAreaById(client.areaId())->name(), l_final_song);

// Since we can't ensure a user has their showname set, we check if its empty to prevent
//"played by ." in /currentmusic.
if (client.characterName().isEmpty()) {
Expand Down
1 change: 1 addition & 0 deletions src/server.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -516,6 +516,7 @@ void Server::hookupAOClient(AOClient *client)
{
connect(client, &AOClient::joined, this, &Server::increasePlayerCount);
connect(client, &AOClient::logIC, logger, &ULogger::logIC);
connect(client, &AOClient::logMusic, logger, &ULogger::logMusic);
connect(client, &AOClient::logOOC, logger, &ULogger::logOOC);
connect(client, &AOClient::logLogin, logger, &ULogger::logLogin);
connect(client, &AOClient::logCMD, logger, &ULogger::logCMD);
Expand Down
Loading