Merge pull request #7249 from yourWaifu/discord-rpc-join

Add Discord Join Net Play functionally
This commit is contained in:
Pierre Bourdon
2018-08-19 13:43:33 +02:00
committed by GitHub
17 changed files with 574 additions and 6 deletions

View File

@ -1330,6 +1330,7 @@ void NetPlayClient::OnTraversalStateChanged()
Disconnect();
m_dialog->OnTraversalError(m_traversal_client->GetFailureReason());
}
m_dialog->OnTraversalStateChanged(state);
}
// called from ---NETPLAY--- thread

View File

@ -47,6 +47,7 @@ public:
virtual void OnConnectionLost() = 0;
virtual void OnConnectionError(const std::string& message) = 0;
virtual void OnTraversalError(TraversalClient::FailureReason error) = 0;
virtual void OnTraversalStateChanged(TraversalClient::State state) = 0;
virtual void OnSaveDataSyncFailure() = 0;
virtual bool IsRecording() = 0;

View File

@ -807,8 +807,15 @@ unsigned int NetPlayServer::OnData(sf::Packet& packet, Client& player)
void NetPlayServer::OnTraversalStateChanged()
{
if (m_dialog && m_traversal_client->GetState() == TraversalClient::Failure)
if (!m_dialog)
return;
const TraversalClient::State state = m_traversal_client->GetState();
if (state == TraversalClient::Failure)
m_dialog->OnTraversalError(m_traversal_client->GetFailureReason());
m_dialog->OnTraversalStateChanged(state);
}
// called from ---GUI--- thread