mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2024-11-14 13:27:45 -07:00
Netplay compiles on linux, please test
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3229 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
parent
d0653aa53a
commit
6f9a49b930
@ -253,7 +253,7 @@ else:
|
||||
|
||||
# sfml
|
||||
env['HAVE_SFML'] = 0
|
||||
if conf.CheckPKG('sfml') and conf.CheckCHeader("SFML/Audio.hpp"):
|
||||
if conf.CheckPKG('sfml-network') and conf.CheckCXXHeader("SFML/Network/Ftp.hpp"):
|
||||
env['HAVE_SFML'] = 1;
|
||||
|
||||
#osx 64 specifics
|
||||
|
@ -29,6 +29,11 @@ Core::GetWindowHandle().
|
||||
*/
|
||||
|
||||
|
||||
// FIXME: why doesn't it work on windows???
|
||||
#ifndef _WIN32
|
||||
#include "Common.h"
|
||||
#endif
|
||||
|
||||
#if defined(HAVE_SFML) && HAVE_SFML || defined(_WIN32)
|
||||
#include "NetWindow.h"
|
||||
#endif
|
||||
|
@ -62,7 +62,7 @@ ServerSide::ServerSide(NetPlay* netptr, sf::SocketTCP socket, int netmodel, std:
|
||||
|
||||
char ServerSide::GetSocket(sf::SocketTCP Socket)
|
||||
{
|
||||
for (char i=0; i < m_numplayers; i++)
|
||||
for (int i=0; i < m_numplayers; i++)
|
||||
{
|
||||
if(m_client[i].socket == Socket)
|
||||
return i;
|
||||
@ -119,7 +119,7 @@ void *ServerSide::Entry()
|
||||
else
|
||||
{
|
||||
unsigned char recv;
|
||||
char socket_nb;
|
||||
int socket_nb;
|
||||
size_t recv_size;
|
||||
sf::Socket::Status recv_status;
|
||||
|
||||
@ -147,22 +147,22 @@ void *ServerSide::Entry()
|
||||
player_left.c_str()) );
|
||||
|
||||
// We need to adjust the struct...
|
||||
for (char i = socket_nb; i < m_numplayers; i++)
|
||||
for (int j = socket_nb; j < m_numplayers; j++)
|
||||
{
|
||||
m_client[i].socket = m_client[i+1].socket;
|
||||
m_client[i].nick = m_client[i+1].nick;
|
||||
m_client[i].ready = m_client[i+1].ready;
|
||||
m_client[j].socket = m_client[j+1].socket;
|
||||
m_client[j].nick = m_client[j+1].nick;
|
||||
m_client[j].ready = m_client[j+1].ready;
|
||||
}
|
||||
|
||||
// Send disconnected message to all
|
||||
unsigned char send = 0x11;
|
||||
unsigned int str_size = (int)player_left.size();
|
||||
|
||||
for (int i=0; i < m_numplayers ; i++)
|
||||
for (int j=0; j < m_numplayers ; j++)
|
||||
{
|
||||
m_client[i].socket.Send((const char*)&send, 1);
|
||||
m_client[i].socket.Send((const char*)&str_size, 4);
|
||||
m_client[i].socket.Send(player_left.c_str(), (int)str_size + 1);
|
||||
m_client[j].socket.Send((const char*)&send, 1);
|
||||
m_client[j].socket.Send((const char*)&str_size, 4);
|
||||
m_client[j].socket.Send(player_left.c_str(), (int)str_size + 1);
|
||||
}
|
||||
}
|
||||
else
|
||||
|
@ -62,7 +62,7 @@ void NetPlay::OnJoin(wxCommandEvent& WXUNUSED(event))
|
||||
// Create the client socket
|
||||
sf::SocketTCP sock_client;
|
||||
|
||||
if (sock_client.Connect(port, host.mb_str(), 1.5) == sf::Socket::Done)
|
||||
if (sock_client.Connect(port, (const char *)host.mb_str(), 1.5) == sf::Socket::Done)
|
||||
{
|
||||
m_sock_client = new ClientSide(this, sock_client, std::string(addr.mb_str()), m_nick);
|
||||
m_sock_client->Create();
|
||||
@ -303,14 +303,15 @@ void NetPlay::UpdateNetWindow(bool update_infos, wxString infos/*int fps, float
|
||||
// String of the type : FPSxPINGxFRAME_DELAY
|
||||
SplitString(std::string(infos.mb_str()), "x", str_arr);
|
||||
|
||||
m_ConInfo_text->SetLabel(
|
||||
wxString::Format( " Fps : %s | Ping : %s | Frame Delay : %s",
|
||||
str_arr[0].c_str(), str_arr[1].c_str(), str_arr[2].c_str() ));
|
||||
m_ConInfo_text->SetLabel
|
||||
(wxString::Format(wxT(" Fps : %s | Ping : %s | Frame Delay : %s"),
|
||||
str_arr[0].c_str(), str_arr[1].c_str(),
|
||||
str_arr[2].c_str()) );
|
||||
}
|
||||
else
|
||||
{
|
||||
m_critical.Enter();
|
||||
m_Game_str->SetLabel(wxString::Format(" Game : %s", m_selectedGame.c_str()));
|
||||
m_Game_str->SetLabel(wxString::Format(wxT(" Game : %s"), m_selectedGame.c_str()));
|
||||
m_critical.Leave();
|
||||
}
|
||||
}
|
||||
@ -430,13 +431,13 @@ void NetPlay::OnGUIEvent(wxCommandEvent& event)
|
||||
|
||||
// Send Chat string
|
||||
m_sock_server->Write(i, (const char*)&chat_size, 4);
|
||||
m_sock_server->Write(i, chat_str.c_str(), chat_size + 1);
|
||||
m_sock_server->Write(i, chat_str.mb_str(), chat_size + 1);
|
||||
}
|
||||
}
|
||||
else {
|
||||
m_sock_client->Write((const char*)&value, 1);
|
||||
m_sock_client->Write((const char*)&chat_size, 4);
|
||||
m_sock_client->Write(chat_str.c_str(), chat_size + 1);
|
||||
m_sock_client->Write(chat_str.mb_str(), chat_size + 1);
|
||||
}
|
||||
|
||||
m_Chat->Clear();
|
||||
|
@ -144,7 +144,7 @@ class NetPlay : public wxDialog
|
||||
NetPlay(wxWindow* parent, std::string GamePath = "", std::string GameName = "");
|
||||
~NetPlay() {}
|
||||
|
||||
void UpdateNetWindow(bool update_infos, wxString="NULL");
|
||||
void UpdateNetWindow(bool update_infos, wxString=wxT("NULL"));
|
||||
void AppendText(const wxString text) { m_Logging->AppendText(text); }
|
||||
|
||||
// Send and receive pads values
|
||||
|
Loading…
Reference in New Issue
Block a user