mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-03-10 19:47:40 +01:00
Merge pull request #8275 from bdr99/netplay-player-log
NetPlay: Show a message in chat when a player joins or leaves
This commit is contained in:
commit
181d79228a
@ -305,6 +305,8 @@ unsigned int NetPlayClient::OnData(sf::Packet& packet)
|
|||||||
m_players[player.pid] = player;
|
m_players[player.pid] = player;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
m_dialog->OnPlayerConnect(player.name);
|
||||||
|
|
||||||
m_dialog->Update();
|
m_dialog->Update();
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -314,10 +316,15 @@ unsigned int NetPlayClient::OnData(sf::Packet& packet)
|
|||||||
PlayerId pid;
|
PlayerId pid;
|
||||||
packet >> pid;
|
packet >> pid;
|
||||||
|
|
||||||
INFO_LOG(NETPLAY, "Player %s (%d) left", m_players.find(pid)->second.name.c_str(), pid);
|
|
||||||
|
|
||||||
{
|
{
|
||||||
std::lock_guard<std::recursive_mutex> lkp(m_crit.players);
|
std::lock_guard<std::recursive_mutex> lkp(m_crit.players);
|
||||||
|
const auto it = m_players.find(pid);
|
||||||
|
if (it == m_players.end())
|
||||||
|
break;
|
||||||
|
|
||||||
|
const auto& player = it->second;
|
||||||
|
INFO_LOG(NETPLAY, "Player %s (%d) left", player.name.c_str(), pid);
|
||||||
|
m_dialog->OnPlayerDisconnect(player.name);
|
||||||
m_players.erase(m_players.find(pid));
|
m_players.erase(m_players.find(pid));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -46,6 +46,8 @@ public:
|
|||||||
virtual void OnMsgStartGame() = 0;
|
virtual void OnMsgStartGame() = 0;
|
||||||
virtual void OnMsgStopGame() = 0;
|
virtual void OnMsgStopGame() = 0;
|
||||||
virtual void OnMsgPowerButton() = 0;
|
virtual void OnMsgPowerButton() = 0;
|
||||||
|
virtual void OnPlayerConnect(const std::string& player) = 0;
|
||||||
|
virtual void OnPlayerDisconnect(const std::string& player) = 0;
|
||||||
virtual void OnPadBufferChanged(u32 buffer) = 0;
|
virtual void OnPadBufferChanged(u32 buffer) = 0;
|
||||||
virtual void OnHostInputAuthorityChanged(bool enabled) = 0;
|
virtual void OnHostInputAuthorityChanged(bool enabled) = 0;
|
||||||
virtual void OnDesync(u32 frame, const std::string& player) = 0;
|
virtual void OnDesync(u32 frame, const std::string& player) = 0;
|
||||||
|
@ -887,6 +887,16 @@ void NetPlayDialog::OnMsgPowerButton()
|
|||||||
QueueOnObject(this, [] { UICommon::TriggerSTMPowerEvent(); });
|
QueueOnObject(this, [] { UICommon::TriggerSTMPowerEvent(); });
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void NetPlayDialog::OnPlayerConnect(const std::string& player)
|
||||||
|
{
|
||||||
|
DisplayMessage(tr("%1 has joined").arg(QString::fromStdString(player)), "darkcyan");
|
||||||
|
}
|
||||||
|
|
||||||
|
void NetPlayDialog::OnPlayerDisconnect(const std::string& player)
|
||||||
|
{
|
||||||
|
DisplayMessage(tr("%1 has left").arg(QString::fromStdString(player)), "darkcyan");
|
||||||
|
}
|
||||||
|
|
||||||
void NetPlayDialog::OnPadBufferChanged(u32 buffer)
|
void NetPlayDialog::OnPadBufferChanged(u32 buffer)
|
||||||
{
|
{
|
||||||
QueueOnObject(this, [this, buffer] {
|
QueueOnObject(this, [this, buffer] {
|
||||||
|
@ -49,6 +49,8 @@ public:
|
|||||||
void OnMsgStartGame() override;
|
void OnMsgStartGame() override;
|
||||||
void OnMsgStopGame() override;
|
void OnMsgStopGame() override;
|
||||||
void OnMsgPowerButton() override;
|
void OnMsgPowerButton() override;
|
||||||
|
void OnPlayerConnect(const std::string& player) override;
|
||||||
|
void OnPlayerDisconnect(const std::string& player) override;
|
||||||
void OnPadBufferChanged(u32 buffer) override;
|
void OnPadBufferChanged(u32 buffer) override;
|
||||||
void OnHostInputAuthorityChanged(bool enabled) override;
|
void OnHostInputAuthorityChanged(bool enabled) override;
|
||||||
void OnDesync(u32 frame, const std::string& player) override;
|
void OnDesync(u32 frame, const std::string& player) override;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user