More fixes concerning lobby chat.
This commit is contained in:
@@ -281,7 +281,7 @@ ServerGame::InternalAskVoteKick(SessionWrapper byWhom, unsigned playerIdWho, uns
|
|||||||
if (IsRunning() && byWhom.playerData)
|
if (IsRunning() && byWhom.playerData)
|
||||||
{
|
{
|
||||||
// Retrieve only the number of human players.
|
// Retrieve only the number of human players.
|
||||||
size_t numPlayers = GetSessionManager().GetPlayerIdList().size();
|
size_t numPlayers = GetSessionManager().GetPlayerIdList(SessionData::Game).size();
|
||||||
if (numPlayers > 2)
|
if (numPlayers > 2)
|
||||||
{
|
{
|
||||||
// Check whether the player to be kicked exists.
|
// Check whether the player to be kicked exists.
|
||||||
@@ -430,7 +430,7 @@ ServerGame::GetPlayerDataByUniqueId(unsigned playerId) const
|
|||||||
PlayerIdList
|
PlayerIdList
|
||||||
ServerGame::GetPlayerIdList() const
|
ServerGame::GetPlayerIdList() const
|
||||||
{
|
{
|
||||||
PlayerIdList idList(GetSessionManager().GetPlayerIdList());
|
PlayerIdList idList(GetSessionManager().GetPlayerIdList(SessionData::Game));
|
||||||
boost::mutex::scoped_lock lock(m_computerPlayerListMutex);
|
boost::mutex::scoped_lock lock(m_computerPlayerListMutex);
|
||||||
PlayerDataList::const_iterator i = m_computerPlayerList.begin();
|
PlayerDataList::const_iterator i = m_computerPlayerList.begin();
|
||||||
PlayerDataList::const_iterator end = m_computerPlayerList.end();
|
PlayerDataList::const_iterator end = m_computerPlayerList.end();
|
||||||
|
|||||||
@@ -1487,8 +1487,8 @@ void
|
|||||||
ServerLobbyThread::SendPlayerList(boost::shared_ptr<SessionData> s)
|
ServerLobbyThread::SendPlayerList(boost::shared_ptr<SessionData> s)
|
||||||
{
|
{
|
||||||
// Retrieve all player ids.
|
// Retrieve all player ids.
|
||||||
PlayerIdList idList(m_sessionManager.GetPlayerIdList());
|
PlayerIdList idList(m_sessionManager.GetPlayerIdList(SessionData::Established));
|
||||||
PlayerIdList gameIdList(m_gameSessionManager.GetPlayerIdList());
|
PlayerIdList gameIdList(m_gameSessionManager.GetPlayerIdList(SessionData::Game));
|
||||||
idList.splice(idList.begin(), gameIdList);
|
idList.splice(idList.begin(), gameIdList);
|
||||||
// Send all player ids to client.
|
// Send all player ids to client.
|
||||||
PlayerIdList::const_iterator i = idList.begin();
|
PlayerIdList::const_iterator i = idList.begin();
|
||||||
|
|||||||
@@ -174,7 +174,7 @@ SessionManager::GetPlayerDataList() const
|
|||||||
}
|
}
|
||||||
|
|
||||||
PlayerIdList
|
PlayerIdList
|
||||||
SessionManager::GetPlayerIdList() const
|
SessionManager::GetPlayerIdList(SessionData::State state) const
|
||||||
{
|
{
|
||||||
PlayerIdList playerList;
|
PlayerIdList playerList;
|
||||||
boost::recursive_mutex::scoped_lock lock(m_sessionMapMutex);
|
boost::recursive_mutex::scoped_lock lock(m_sessionMapMutex);
|
||||||
@@ -185,7 +185,7 @@ SessionManager::GetPlayerIdList() const
|
|||||||
while (session_i != session_end)
|
while (session_i != session_end)
|
||||||
{
|
{
|
||||||
// Get all players in the game.
|
// Get all players in the game.
|
||||||
if (session_i->second.sessionData->GetState() == SessionData::Game)
|
if (session_i->second.sessionData->GetState() == state)
|
||||||
{
|
{
|
||||||
playerList.push_back(session_i->second.playerData->GetUniqueId());
|
playerList.push_back(session_i->second.playerData->GetUniqueId());
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -58,7 +58,7 @@ public:
|
|||||||
SessionWrapper GetSessionByUniquePlayerId(unsigned uniqueId) const;
|
SessionWrapper GetSessionByUniquePlayerId(unsigned uniqueId) const;
|
||||||
|
|
||||||
PlayerDataList GetPlayerDataList() const;
|
PlayerDataList GetPlayerDataList() const;
|
||||||
PlayerIdList GetPlayerIdList() const;
|
PlayerIdList GetPlayerIdList(SessionData::State state) const;
|
||||||
bool IsPlayerConnected(const std::string &playerName) const;
|
bool IsPlayerConnected(const std::string &playerName) const;
|
||||||
bool IsPlayerConnected(unsigned uniqueId) const;
|
bool IsPlayerConnected(unsigned uniqueId) const;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user