mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-24 14:49:42 -06:00
@ -617,17 +617,15 @@ void NetPlayClient::GetPlayerList(std::string& list, std::vector<int>& pid_list)
|
||||
}
|
||||
|
||||
// called from ---GUI--- thread
|
||||
void NetPlayClient::GetPlayers(std::vector<const Player *> &player_list)
|
||||
std::vector<const Player*> NetPlayClient::GetPlayers()
|
||||
{
|
||||
std::lock_guard<std::recursive_mutex> lkp(m_crit.players);
|
||||
std::map<PlayerId, Player>::const_iterator
|
||||
i = m_players.begin(),
|
||||
e = m_players.end();
|
||||
for (; i != e; ++i)
|
||||
{
|
||||
const Player *player = &(i->second);
|
||||
player_list.push_back(player);
|
||||
}
|
||||
std::vector<const Player*> players;
|
||||
|
||||
for (const auto& pair : m_players)
|
||||
players.push_back(&pair.second);
|
||||
|
||||
return players;
|
||||
}
|
||||
|
||||
|
||||
|
@ -54,7 +54,7 @@ public:
|
||||
~NetPlayClient();
|
||||
|
||||
void GetPlayerList(std::string& list, std::vector<int>& pid_list);
|
||||
void GetPlayers(std::vector<const Player *>& player_list);
|
||||
std::vector<const Player*> GetPlayers();
|
||||
|
||||
bool is_connected;
|
||||
|
||||
@ -121,8 +121,8 @@ protected:
|
||||
|
||||
u32 m_current_game;
|
||||
|
||||
PadMapping m_pad_map[4];
|
||||
PadMapping m_wiimote_map[4];
|
||||
PadMappingArray m_pad_map;
|
||||
PadMappingArray m_wiimote_map;
|
||||
|
||||
bool m_is_recording;
|
||||
|
||||
|
@ -4,10 +4,13 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <array>
|
||||
#include <vector>
|
||||
#include "Common/CommonTypes.h"
|
||||
#include "Core/HW/EXI_Device.h"
|
||||
|
||||
#define NETPLAY_VERSION "Dolphin NetPlay 2015-06-24"
|
||||
|
||||
struct NetSettings
|
||||
{
|
||||
bool m_CPUthread;
|
||||
@ -25,18 +28,13 @@ struct NetSettings
|
||||
};
|
||||
|
||||
extern NetSettings g_NetPlaySettings;
|
||||
extern u64 g_netplay_initial_gctime;
|
||||
|
||||
struct Rpt : public std::vector<u8>
|
||||
{
|
||||
u16 channel;
|
||||
};
|
||||
|
||||
typedef std::vector<u8> NetWiimote;
|
||||
|
||||
#define NETPLAY_VERSION "Dolphin NetPlay 2015-06-24"
|
||||
|
||||
extern u64 g_netplay_initial_gctime;
|
||||
|
||||
// messages
|
||||
enum
|
||||
{
|
||||
@ -70,11 +68,6 @@ enum
|
||||
NP_MSG_SYNC_GC_SRAM = 0xF0,
|
||||
};
|
||||
|
||||
typedef u8 MessageId;
|
||||
typedef u8 PlayerId;
|
||||
typedef s8 PadMapping;
|
||||
typedef u32 FrameNum;
|
||||
|
||||
enum
|
||||
{
|
||||
CON_ERR_SERVER_FULL = 1,
|
||||
@ -82,6 +75,13 @@ enum
|
||||
CON_ERR_VERSION_MISMATCH = 3
|
||||
};
|
||||
|
||||
using NetWiimote = std::vector<u8>;
|
||||
using MessageId = u8;
|
||||
using PlayerId = u8;
|
||||
using FrameNum = u32;
|
||||
using PadMapping = s8;
|
||||
using PadMappingArray = std::array<PadMapping, 4>;
|
||||
|
||||
namespace NetPlay
|
||||
{
|
||||
bool IsNetPlayRunning();
|
||||
|
@ -74,8 +74,9 @@ NetPlayServer::NetPlayServer(const u16 port, bool traversal, const std::string&
|
||||
PanicAlertT("Enet Didn't Initialize");
|
||||
}
|
||||
|
||||
memset(m_pad_map, -1, sizeof(m_pad_map));
|
||||
memset(m_wiimote_map, -1, sizeof(m_wiimote_map));
|
||||
m_pad_map.fill(-1);
|
||||
m_wiimote_map.fill(-1);
|
||||
|
||||
if (traversal)
|
||||
{
|
||||
if (!EnsureTraversalClient(centralServer, centralPort))
|
||||
@ -402,31 +403,27 @@ unsigned int NetPlayServer::OnDisconnect(Client& player)
|
||||
}
|
||||
|
||||
// called from ---GUI--- thread
|
||||
void NetPlayServer::GetPadMapping(PadMapping map[4])
|
||||
PadMappingArray NetPlayServer::GetPadMapping() const
|
||||
{
|
||||
for (int i = 0; i < 4; i++)
|
||||
map[i] = m_pad_map[i];
|
||||
return m_pad_map;
|
||||
}
|
||||
|
||||
void NetPlayServer::GetWiimoteMapping(PadMapping map[4])
|
||||
PadMappingArray NetPlayServer::GetWiimoteMapping() const
|
||||
{
|
||||
for (int i = 0; i < 4; i++)
|
||||
map[i] = m_wiimote_map[i];
|
||||
return m_wiimote_map;
|
||||
}
|
||||
|
||||
// called from ---GUI--- thread
|
||||
void NetPlayServer::SetPadMapping(const PadMapping map[4])
|
||||
void NetPlayServer::SetPadMapping(const PadMappingArray& mappings)
|
||||
{
|
||||
for (int i = 0; i < 4; i++)
|
||||
m_pad_map[i] = map[i];
|
||||
m_pad_map = mappings;
|
||||
UpdatePadMapping();
|
||||
}
|
||||
|
||||
// called from ---GUI--- thread
|
||||
void NetPlayServer::SetWiimoteMapping(const PadMapping map[4])
|
||||
void NetPlayServer::SetWiimoteMapping(const PadMappingArray& mappings)
|
||||
{
|
||||
for (int i = 0; i < 4; i++)
|
||||
m_wiimote_map[i] = map[i];
|
||||
m_wiimote_map = mappings;
|
||||
UpdateWiimoteMapping();
|
||||
}
|
||||
|
||||
|
@ -34,11 +34,11 @@ public:
|
||||
|
||||
bool StartGame();
|
||||
|
||||
void GetPadMapping(PadMapping map[]);
|
||||
void SetPadMapping(const PadMapping map[]);
|
||||
PadMappingArray GetPadMapping() const;
|
||||
void SetPadMapping(const PadMappingArray& mappings);
|
||||
|
||||
void GetWiimoteMapping(PadMapping map[]);
|
||||
void SetWiimoteMapping(const PadMapping map[]);
|
||||
PadMappingArray GetWiimoteMapping() const;
|
||||
void SetWiimoteMapping(const PadMappingArray& mappings);
|
||||
|
||||
void AdjustPadBufferSize(unsigned int size);
|
||||
|
||||
@ -95,8 +95,8 @@ private:
|
||||
bool m_update_pings;
|
||||
u32 m_current_game;
|
||||
unsigned int m_target_buffer_size;
|
||||
PadMapping m_pad_map[4];
|
||||
PadMapping m_wiimote_map[4];
|
||||
PadMappingArray m_pad_map;
|
||||
PadMappingArray m_wiimote_map;
|
||||
|
||||
std::map<PlayerId, Client> m_players;
|
||||
|
||||
|
Reference in New Issue
Block a user