[10541] Allow set afk/dnd message in afk/dnd state

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
This commit is contained in:
stfxpi 2010-09-26 17:26:09 +04:00 committed by VladimirMangos
parent 0ec380e380
commit 3bc4f053cc
2 changed files with 21 additions and 16 deletions

View file

@ -453,17 +453,21 @@ void WorldSession::HandleMessagechatOpcode( WorldPacket & recv_data )
std::string msg; std::string msg;
recv_data >> msg; recv_data >> msg;
if((msg.empty() || !_player->isAFK()) && !_player->isInCombat() ) if (!_player->isInCombat())
{ {
if(!_player->isAFK()) if (!msg.empty() || !_player->isAFK())
{ {
if(msg.empty()) if (msg.empty())
msg = GetMangosString(LANG_PLAYER_AFK_DEFAULT); _player->afkMsg = GetMangosString(LANG_PLAYER_AFK_DEFAULT);
_player->afkMsg = msg; else
_player->afkMsg = msg;
}
if (msg.empty() || !_player->isAFK())
{
_player->ToggleAFK();
if (_player->isAFK() && _player->isDND())
_player->ToggleDND();
} }
_player->ToggleAFK();
if(_player->isAFK() && _player->isDND())
_player->ToggleDND();
} }
} break; } break;
@ -472,16 +476,17 @@ void WorldSession::HandleMessagechatOpcode( WorldPacket & recv_data )
std::string msg; std::string msg;
recv_data >> msg; recv_data >> msg;
if(msg.empty() || !_player->isDND()) if (!msg.empty() || !_player->isDND())
{ {
if(!_player->isDND()) if (msg.empty())
{ _player->dndMsg = GetMangosString(LANG_PLAYER_DND_DEFAULT);
if(msg.empty()) else
msg = GetMangosString(LANG_PLAYER_DND_DEFAULT);
_player->dndMsg = msg; _player->dndMsg = msg;
} }
if (msg.empty() || !_player->isDND())
{
_player->ToggleDND(); _player->ToggleDND();
if(_player->isDND() && _player->isAFK()) if (_player->isDND() && _player->isAFK())
_player->ToggleAFK(); _player->ToggleAFK();
} }
} break; } break;

View file

@ -1,4 +1,4 @@
#ifndef __REVISION_NR_H__ #ifndef __REVISION_NR_H__
#define __REVISION_NR_H__ #define __REVISION_NR_H__
#define REVISION_NR "10540" #define REVISION_NR "10541"
#endif // __REVISION_NR_H__ #endif // __REVISION_NR_H__