Lobby chat works now, but player list ist not yet shown.
This commit is contained in:
@@ -42,20 +42,16 @@ LobbyChat::~LobbyChat()
|
|||||||
|
|
||||||
void LobbyChat::sendMessage() {
|
void LobbyChat::sendMessage() {
|
||||||
|
|
||||||
|
// TODO nick needs to be set earlier.
|
||||||
if (myNick.isEmpty())
|
if (myNick.isEmpty())
|
||||||
myNick = QString::fromUtf8(myConfig->readConfigString("MyName").c_str());
|
myNick = QString::fromUtf8(myConfig->readConfigString("MyName").c_str());
|
||||||
|
|
||||||
if (!myNick.isEmpty())
|
|
||||||
{
|
|
||||||
fillChatLinesHistory(myLobby->lineEdit_ChatInput->text());
|
fillChatLinesHistory(myLobby->lineEdit_ChatInput->text());
|
||||||
QString tmpMsg(myLobby->lineEdit_ChatInput->text());
|
QString tmpMsg(myLobby->lineEdit_ChatInput->text());
|
||||||
if (tmpMsg.size())
|
if (tmpMsg.size())
|
||||||
{
|
{
|
||||||
myLobby->getSession()->sendLobbyChatMessage(tmpMsg.toUtf8().constData());
|
myLobby->getSession()->sendLobbyChatMessage(tmpMsg.toUtf8().constData());
|
||||||
myLobby->lineEdit_ChatInput->setText("");
|
myLobby->lineEdit_ChatInput->setText("");
|
||||||
|
|
||||||
displayMessage(myNick, tmpMsg);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -826,11 +826,9 @@ AbstractClientStateReceiving::HandlePacket(boost::shared_ptr<ClientThread> clien
|
|||||||
else if (netMessage->chatType.present == chatType_PR_chatTypeLobby)
|
else if (netMessage->chatType.present == chatType_PR_chatTypeLobby)
|
||||||
{
|
{
|
||||||
unsigned playerId = netMessage->chatType.choice.chatTypeLobby.playerId;
|
unsigned playerId = netMessage->chatType.choice.chatTypeLobby.playerId;
|
||||||
boost::shared_ptr<PlayerData> tmpPlayer = client->GetPlayerDataByUniqueId(playerId);
|
PlayerInfo info;
|
||||||
if (tmpPlayer.get())
|
if (client->GetCachedPlayerInfo(playerId, info))
|
||||||
playerName = tmpPlayer->GetName();
|
client->GetCallback().SignalNetClientLobbyChatMsg(info.playerName, STL_STRING_FROM_OCTET_STRING(netMessage->chatText));
|
||||||
if (!playerName.empty())
|
|
||||||
client->GetCallback().SignalNetClientLobbyChatMsg(playerName, STL_STRING_FROM_OCTET_STRING(netMessage->chatText));
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (tmpPacket->GetMsg()->present == PokerTHMessage_PR_dialogMessage)
|
else if (tmpPacket->GetMsg()->present == PokerTHMessage_PR_dialogMessage)
|
||||||
|
|||||||
@@ -237,6 +237,13 @@ AbstractServerGameStateReceiving::ProcessPacket(boost::shared_ptr<ServerGame> se
|
|||||||
// Forward chat text to all players.
|
// Forward chat text to all players.
|
||||||
// TODO: Some limitation needed.
|
// TODO: Some limitation needed.
|
||||||
ChatRequestMessage_t *netChatRequest = &packet->GetMsg()->choice.chatRequestMessage;
|
ChatRequestMessage_t *netChatRequest = &packet->GetMsg()->choice.chatRequestMessage;
|
||||||
|
if (netChatRequest->chatRequestType.present == chatRequestType_PR_chatRequestTypeLobby)
|
||||||
|
{
|
||||||
|
if (!server->IsRunning())
|
||||||
|
server->GetLobbyThread().HandleChatRequest(session, *netChatRequest);
|
||||||
|
}
|
||||||
|
else if (netChatRequest->chatRequestType.present == chatRequestType_PR_chatRequestTypeGame)
|
||||||
|
{
|
||||||
boost::shared_ptr<NetPacket> packet(new NetPacket(NetPacket::Alloc));
|
boost::shared_ptr<NetPacket> packet(new NetPacket(NetPacket::Alloc));
|
||||||
packet->GetMsg()->present = PokerTHMessage_PR_chatMessage;
|
packet->GetMsg()->present = PokerTHMessage_PR_chatMessage;
|
||||||
ChatMessage_t *netChat = &packet->GetMsg()->choice.chatMessage;
|
ChatMessage_t *netChat = &packet->GetMsg()->choice.chatMessage;
|
||||||
@@ -251,6 +258,7 @@ AbstractServerGameStateReceiving::ProcessPacket(boost::shared_ptr<ServerGame> se
|
|||||||
server->SendToAllPlayers(packet, SessionData::Game);
|
server->SendToAllPlayers(packet, SessionData::Game);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
else if (packet->GetMsg()->present == PokerTHMessage_PR_subscriptionRequestMessage)
|
else if (packet->GetMsg()->present == PokerTHMessage_PR_subscriptionRequestMessage)
|
||||||
{
|
{
|
||||||
SubscriptionRequestMessage_t *netSubscription = &packet->GetMsg()->choice.subscriptionRequestMessage;
|
SubscriptionRequestMessage_t *netSubscription = &packet->GetMsg()->choice.subscriptionRequestMessage;
|
||||||
|
|||||||
@@ -355,6 +355,13 @@ ServerLobbyThread::HandleGameRetrieveAvatar(SessionWrapper session, const Avatar
|
|||||||
HandleNetPacketRetrieveAvatar(session, retrieveAvatar);
|
HandleNetPacketRetrieveAvatar(session, retrieveAvatar);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
ServerLobbyThread::HandleChatRequest(SessionWrapper session, const ChatRequestMessage_t &chatRequest)
|
||||||
|
{
|
||||||
|
// Someone within a game sent a lobby message.
|
||||||
|
HandleNetPacketChatRequest(session, chatRequest);
|
||||||
|
}
|
||||||
|
|
||||||
bool
|
bool
|
||||||
ServerLobbyThread::KickPlayerByName(const std::string &playerName)
|
ServerLobbyThread::KickPlayerByName(const std::string &playerName)
|
||||||
{
|
{
|
||||||
@@ -1087,7 +1094,8 @@ ServerLobbyThread::HandleNetPacketChatRequest(SessionWrapper session, const Chat
|
|||||||
(char *)chatRequest.chatText.buf,
|
(char *)chatRequest.chatText.buf,
|
||||||
chatRequest.chatText.size);
|
chatRequest.chatText.size);
|
||||||
|
|
||||||
m_sessionManager.SendToAllSessions(GetSender(), packet, SessionData::Established);
|
m_sessionManager.SendLobbyMsgToAllSessions(GetSender(), packet, SessionData::Established);
|
||||||
|
m_gameSessionManager.SendLobbyMsgToAllSessions(GetSender(), packet, SessionData::Game);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -70,6 +70,7 @@ public:
|
|||||||
|
|
||||||
void HandleGameRetrievePlayerInfo(SessionWrapper session, const PlayerInfoRequestMessage_t &playerInfoRequest);
|
void HandleGameRetrievePlayerInfo(SessionWrapper session, const PlayerInfoRequestMessage_t &playerInfoRequest);
|
||||||
void HandleGameRetrieveAvatar(SessionWrapper session, const AvatarRequestMessage_t &retrieveAvatar);
|
void HandleGameRetrieveAvatar(SessionWrapper session, const AvatarRequestMessage_t &retrieveAvatar);
|
||||||
|
void HandleChatRequest(SessionWrapper session, const ChatRequestMessage_t &chatRequest);
|
||||||
|
|
||||||
bool KickPlayerByName(const std::string &playerName);
|
bool KickPlayerByName(const std::string &playerName);
|
||||||
std::string GetPlayerIPAddress(const std::string &playerName) const;
|
std::string GetPlayerIPAddress(const std::string &playerName) const;
|
||||||
|
|||||||
Reference in New Issue
Block a user