Exemple #1
0
void ChatLog::OnChat(Player* player, uint32 type, uint32 /*lang*/, std::string& msg, Group* group)
{
    std::string origMsg(msg);
    std::ostringstream ss;
    _AppendPlayerName(player, ss);

    switch (type)
    {
    case CHAT_MSG_PARTY:
    case CHAT_MSG_PARTY_LEADER:
        if (_ChatCommon(CHAT_LOG_PARTY, player, msg))
        {
            switch (type)
            {
                case CHAT_MSG_PARTY:        ss << "->PARTY";        break;
                case CHAT_MSG_PARTY_LEADER: ss << "->PARTY_LEADER"; break;
            }
            _AppendGroupMembers(group, ss);
            _WriteLog(_logs[CHAT_LOG_PARTY], ss.str(), origMsg);
        }
        break;
    case CHAT_MSG_RAID_LEADER:
    case CHAT_MSG_RAID_WARNING:
    case CHAT_MSG_RAID:
        if (_ChatCommon(CHAT_LOG_RAID, player, msg))
        {
            switch (type)
            {
                case CHAT_MSG_RAID_LEADER:  ss << "->RAID_LEADER";  break;
                case CHAT_MSG_RAID_WARNING: ss << "->RAID_WARN";    break;
                case CHAT_MSG_RAID:         ss << "->RAID";         break;
            }
            _AppendGroupMembers(group, ss);
            _WriteLog(_logs[CHAT_LOG_RAID], ss.str(), origMsg);
        }
        break;
    case CHAT_MSG_BATTLEGROUND:
    case CHAT_MSG_BATTLEGROUND_LEADER:
        if (_ChatCommon(CHAT_LOG_BATTLEGROUND, player, msg))
        {
            switch (type)
            {
                case CHAT_MSG_BATTLEGROUND:         ss << "->BG";           break;
                case CHAT_MSG_BATTLEGROUND_LEADER:  ss << "->BG_LEADER";    break;
            }
            _AppendGroupMembers(group, ss);
            _WriteLog(_logs[CHAT_LOG_BATTLEGROUND], ss.str(), origMsg);
        }
        break;
    }
}
Exemple #2
0
void ChatLog::OnChat(Player* player, uint32 type, uint32 /*lang*/, std::string& msg, Group* group)
{
    std::string origMsg(msg);
    std::string logStr;
    _AppendPlayerName(player, logStr);

    switch (type)
    {
    case CHAT_MSG_PARTY:
    case CHAT_MSG_PARTY_LEADER:
        if (_ChatCommon(CHAT_LOG_PARTY, player, msg))
        {
            switch (type)
            {
                case CHAT_MSG_PARTY:        logStr.append("->PARTY");         break;
                case CHAT_MSG_PARTY_LEADER: logStr.append("->PARTY_LEADER");  break;
            }
            _AppendGroupMembers(group, logStr);
            _WriteLog(_logs[CHAT_LOG_PARTY], logStr, msg, origMsg);
        }
        break;
    case CHAT_MSG_RAID_LEADER:
    case CHAT_MSG_RAID_WARNING:
    case CHAT_MSG_RAID:
        if (_ChatCommon(CHAT_LOG_RAID, player, msg))
        {
            switch (type)
            {
                case CHAT_MSG_RAID_LEADER:  logStr.append("->RAID_LEADER");
                case CHAT_MSG_RAID_WARNING: logStr.append("->RAID_WARN");
                case CHAT_MSG_RAID:         logStr.append("->RAID");
            }
            _AppendGroupMembers(group, logStr);
            _WriteLog(_logs[CHAT_LOG_RAID], logStr, msg, origMsg);
        }
        break;
    case CHAT_MSG_BATTLEGROUND:
    case CHAT_MSG_BATTLEGROUND_LEADER:
        if (_ChatCommon(CHAT_LOG_BATTLEGROUND, player, msg))
        {
            switch (type)
            {
                case CHAT_MSG_BATTLEGROUND:         logStr.append("->BG");         break;
                case CHAT_MSG_BATTLEGROUND_LEADER:  logStr.append("->BG_LEADER");  break;
            }
            _AppendGroupMembers(group, logStr);
            _WriteLog(_logs[CHAT_LOG_BATTLEGROUND], logStr, msg, origMsg);
        }
        break;
    }
}
Exemple #3
0
void ChatLog::ChannelMsg(Player *player, std::string &channel, std::string &msg)
{
    if (!_ChatCommon(CHAT_LOG_CHANNEL, player, msg)) return;

    CheckDateSwitch();

    std::string log_str = "";

    log_str.append("[");
    log_str.append(player->GetName());
    log_str.append("]->CHANNEL:");

    if (channel.size() == 0)
    {
        log_str.append("[unknown channel] ");
    }
    else
    {
        log_str.append("[");
        log_str.append(channel);
        log_str.append("] ");
    }

    log_str.append(msg);

    log_str.append("\n");

    if (screenflag[CHAT_LOG_CHANNEL]) printf("%s", log_str.c_str());
    if (files[CHAT_LOG_CHANNEL])
    {
        OutTimestamp(files[CHAT_LOG_CHANNEL]);
        fprintf(files[CHAT_LOG_CHANNEL], "%s", log_str.c_str());
        fflush(files[CHAT_LOG_CHANNEL]);
    }
}
Exemple #4
0
void ChatLog::ChatMsg(Player *player, std::string &msg, uint32 type)
{
    if (!_ChatCommon(CHAT_LOG_CHAT, player, msg)) return;

    CheckDateSwitch();

    std::string log_str = "";

    switch (type)
    {
        case CHAT_MSG_EMOTE:
        log_str.append("{EMOTE} ");
        break;

        case CHAT_MSG_YELL:
        log_str.append("{YELL} ");
        break;
    }

    log_str.append("[");
    log_str.append(player->GetName());
    log_str.append("] ");

    log_str.append(msg);

    log_str.append("\n");

    if (screenflag[CHAT_LOG_CHAT]) printf("%s", log_str.c_str());
    if (files[CHAT_LOG_CHAT])
    {
        OutTimestamp(files[CHAT_LOG_CHAT]);
        fprintf(files[CHAT_LOG_CHAT], "%s", log_str.c_str());
        fflush(files[CHAT_LOG_CHAT]);
    }
}
Exemple #5
0
void ChatLog::OnChat(Player* player, uint32 /*type*/, uint32 /*lang*/, std::string& msg, Channel* channel)
{
    std::string origMsg(msg);
    if (!_ChatCommon(CHAT_LOG_CHANNEL, player, msg))
        return;

    std::ostringstream ss;
    _AppendPlayerName(player, ss);
    ss << " {" << (channel ? channel->GetName() : "Unknown channel") << "}";

    _WriteLog(_logs[CHAT_LOG_CHANNEL], ss.str(), origMsg);
}
Exemple #6
0
void ChatLog::OnChat(Player* player, uint32 /*type*/, uint32 /*lang*/, std::string& msg, Channel* channel)
{
    std::string origMsg(msg);
    if (!_ChatCommon(CHAT_LOG_CHANNEL, player, msg))
        return;

    std::string logStr;
    _AppendPlayerName(player, logStr);
    logStr.append(" {").append(channel ? channel->GetName() : "Unknown channel").append("}");

    _WriteLog(_logs[CHAT_LOG_CHANNEL], logStr, msg, origMsg);
}
Exemple #7
0
void ChatLog::OnChat(Player* player, uint32 /*type*/, uint32 /*lang*/, std::string& msg, Player* receiver)
{
    std::string origMsg(msg);
    if (!_ChatCommon(CHAT_LOG_WHISPER, player, msg))
        return;

    std::ostringstream ss;
    _AppendPlayerName(player, ss);
    ss << "->";
    _AppendPlayerName(receiver, ss);

    _WriteLog(_logs[CHAT_LOG_WHISPER], ss.str(), origMsg);
}
Exemple #8
0
void ChatLog::OnChat(Player* player, uint32 /*type*/, uint32 /*lang*/, std::string& msg, Player* receiver)
{
    std::string origMsg(msg);
    if (!_ChatCommon(CHAT_LOG_WHISPER, player, msg))
        return;

    std::string logStr;
    _AppendPlayerName(player, logStr);
    logStr.append("->");
    _AppendPlayerName(receiver, logStr);

    _WriteLog(_logs[CHAT_LOG_WHISPER], logStr, msg, origMsg);
}
Exemple #9
0
void ChatLog::OnChat(Player* player, uint32 type, uint32 /*lang*/, std::string& msg)
{
    std::string origMsg(msg);
    if (!_ChatCommon(CHAT_LOG_CHAT, player, msg))
        return;

    std::ostringstream ss;
    switch (type)
    {
        case CHAT_MSG_SAY:      ss << "{SAY}";      break;
        case CHAT_MSG_EMOTE:    ss << "{EMOTE}";    break;
        case CHAT_MSG_YELL:     ss << "{YELL}";     break;
    }
    _AppendPlayerName(player, ss);
    _WriteLog(_logs[CHAT_LOG_CHAT], ss.str(), origMsg);
}
Exemple #10
0
void ChatLog::OnChat(Player* player, uint32 type, uint32 /*lang*/, std::string& msg)
{
    std::string origMsg(msg);
    if (!_ChatCommon(CHAT_LOG_CHAT, player, msg))
        return;

    std::string logStr;
    switch (type)
    {
        case CHAT_MSG_SAY: logStr.append("{SAY}"); break;
        case CHAT_MSG_EMOTE: logStr.append("{EMOTE}"); break;
        case CHAT_MSG_YELL: logStr.append("{YELL}"); break;
    }
    _AppendPlayerName(player, logStr);
    _WriteLog(_logs[CHAT_LOG_CHAT], logStr, msg, origMsg);
}
Exemple #11
0
void ChatLog::OnChat(Player* player, uint32 type, uint32 lang, std::string& msg, Guild* guild)
{
    std::string origMsg(msg);
    if (!_ChatCommon(CHAT_LOG_GUILD, player, msg))
        return;

    std::ostringstream ss;
    _AppendPlayerName(player, ss);
    switch (type)
    {
        case CHAT_MSG_GUILD:    ss << "->GUILD";      break;
        case CHAT_MSG_OFFICER:  ss << "->GUILD_OFF";  break;
    }
    ss << " {" << (guild ? guild->GetName() : "unknowng guild") << "}:";

    _WriteLog(_logs[CHAT_LOG_GUILD], ss.str(), origMsg);
}
Exemple #12
0
void ChatLog::OnChat(Player* player, uint32 type, uint32 lang, std::string& msg, Guild* guild)
{
    std::string origMsg(msg);
    if (!_ChatCommon(CHAT_LOG_GUILD, player, msg))
        return;

    std::string logStr;
    _AppendPlayerName(player, logStr);
    switch (type)
    {
        case CHAT_MSG_GUILD:    logStr.append("->GUILD");      break;
        case CHAT_MSG_OFFICER:  logStr.append("->GUILD_OFF");  break;
    }
    logStr.append(" {").append(guild ? guild->GetName() : "unknowng guild").append("}:");

    _WriteLog(_logs[CHAT_LOG_GUILD], logStr, msg, origMsg);
}
Exemple #13
0
void ChatLog::GuildMsg(Player *player, std::string &msg, bool officer)
{
    if (!_ChatCommon(CHAT_LOG_GUILD, player, msg)) return;

    CheckDateSwitch();

    std::string log_str = "";

    log_str.append("[");
    log_str.append(player->GetName());
    log_str.append((officer ? "]->GUILD_OFF:" : "]->GUILD:"));

    if (!player->GetGuildId())
    {
        log_str.append("[unknown guild] ");
    }
    else
    {
        Guild *guild = sGuildMgr.GetGuildById(player->GetGuildId());
        if (!guild)
        {
            log_str.append("[unknown guild] ");
        }
        else
        {
            // obtain guild information
            log_str.append("(");
            log_str.append(guild->GetName());
            log_str.append(") ");
        }
    }

    log_str.append(msg);

    log_str.append("\n");

    if (screenflag[CHAT_LOG_GUILD]) printf("%s", log_str.c_str());
    if (files[CHAT_LOG_GUILD])
    {
        OutTimestamp(files[CHAT_LOG_GUILD]);
        fprintf(files[CHAT_LOG_GUILD], "%s", log_str.c_str());
        fflush(files[CHAT_LOG_GUILD]);
    }
}
Exemple #14
0
void ChatLog::WhisperMsg(Player *player, std::string &to, std::string &msg)
{
    if (!_ChatCommon(CHAT_LOG_WHISPER, player, msg)) return;

    CheckDateSwitch();

    std::string log_str = "";

    log_str.append("[");
    log_str.append(player->GetName());
    log_str.append("]->");

    if (to.size() == 0)
    {
        log_str.append("[???] ");
    }
    else
    {
        normalizePlayerName(to);
        log_str.append("[");
        log_str.append(to);
        log_str.append("] ");
    }

    log_str.append(msg);

    log_str.append("\n");

    if (screenflag[CHAT_LOG_WHISPER]) printf("%s", log_str.c_str());
    if (files[CHAT_LOG_WHISPER])
    {
        OutTimestamp(files[CHAT_LOG_WHISPER]);
        fprintf(files[CHAT_LOG_WHISPER], "%s", log_str.c_str());
        fflush(files[CHAT_LOG_WHISPER]);
    }
}
Exemple #15
0
void ChatLog::BattleGroundMsg(Player *player, std::string &msg, uint32 type)
{
    if (!_ChatCommon(CHAT_LOG_BATTLEGROUND, player, msg)) return;

    CheckDateSwitch();

    std::string log_str = "";

    log_str.append("[");
    log_str.append(player->GetName());

    switch (type)
    {
        case CHAT_MSG_BATTLEGROUND:
        log_str.append("]->BG:");
        break;

        case CHAT_MSG_BATTLEGROUND_LEADER:
        log_str.append("]->BG_LEADER:");
        break;

        default:
        log_str.append("]->BG_UNKNOWN:");
        break;
    }

    Group *group = player->GetGroup();
    if (!group)
    {
        log_str.append("[unknown group] ");
    }
    else
    {
        // obtain group information
        log_str.append("[");

        ObjectGuid gm_leader_GUID = group->GetLeaderGuid();
        Player *gm_member;

        gm_member = sObjectMgr.GetPlayer(gm_leader_GUID);
        if (gm_member)
        {
            log_str.append(gm_member->GetName());
            log_str.append(",");
        }

        Group::MemberSlotList g_members = group->GetMemberSlots();

        for (Group::member_citerator itr = g_members.begin(); itr != g_members.end(); itr++)
        {
            if (itr->guid == gm_leader_GUID) continue;

            gm_member = sObjectMgr.GetPlayer(itr->guid);
            if (gm_member)
            {
                log_str.append(itr->name);
                log_str.append(",");
            }
        }

        log_str.erase(log_str.length() - 1);
        log_str.append("] ");
    }

    log_str.append(msg);

    log_str.append("\n");

    if (screenflag[CHAT_LOG_BATTLEGROUND]) printf("%s", log_str.c_str());
    if (files[CHAT_LOG_BATTLEGROUND])
    {
        OutTimestamp(files[CHAT_LOG_BATTLEGROUND]);
        fprintf(files[CHAT_LOG_BATTLEGROUND], "%s", log_str.c_str());
        fflush(files[CHAT_LOG_BATTLEGROUND]);
    }
}
Exemple #16
0
void ChatLog::PartyMsg(Player *player, std::string &msg)
{
    if (!_ChatCommon(CHAT_LOG_PARTY, player, msg)) return;

    CheckDateSwitch();

    std::string log_str = "";

    log_str.append("[");
    log_str.append(player->GetName());
    log_str.append("]->GROUP:");

    Group *group = player->GetGroup();
    if (!group)
    {
        log_str.append("[unknown group] ");
    }
    else
    {
        // obtain group information
        log_str.append("[");

        ObjectGuid gm_leader_GUID = group->GetLeaderGuid();
        Player *gm_member;

        gm_member = sObjectMgr.GetPlayer(gm_leader_GUID);
        if (gm_member)
        {
            log_str.append(gm_member->GetName());
            log_str.append(",");
        }

        Group::MemberSlotList g_members = group->GetMemberSlots();

        for (Group::member_citerator itr = g_members.begin(); itr != g_members.end(); itr++)
        {
            if (itr->guid == gm_leader_GUID) continue;

            gm_member = sObjectMgr.GetPlayer(itr->guid);
            if (gm_member)
            {
                log_str.append(itr->name);
                log_str.append(",");
            }
        }

        log_str.erase(log_str.length() - 1);
        log_str.append("] ");
    }

    log_str.append(msg);

    log_str.append("\n");

    if (screenflag[CHAT_LOG_PARTY]) printf("%s", log_str.c_str());
    if (files[CHAT_LOG_PARTY])
    {
        OutTimestamp(files[CHAT_LOG_PARTY]);
        fprintf(files[CHAT_LOG_PARTY], "%s", log_str.c_str());
        fflush(files[CHAT_LOG_PARTY]);
    }
}