Moved sendPacket from NetworkManager to STKHost.
This commit is contained in:
parent
51d39879b4
commit
334780b5d7
@ -175,13 +175,6 @@ void ClientNetworkManager::reset()
|
||||
|
||||
}
|
||||
|
||||
void ClientNetworkManager::sendPacket(const NetworkString& data, bool reliable)
|
||||
{
|
||||
if (STKHost::get()->getPeerCount() > 1)
|
||||
Log::warn("ClientNetworkManager", "Ambiguous send of data.\n");
|
||||
STKHost::get()->getPeers()[0]->sendPacket(data, reliable);
|
||||
}
|
||||
|
||||
STKPeer* ClientNetworkManager::getPeer()
|
||||
{
|
||||
return STKHost::get()->getPeers()[0];
|
||||
|
@ -47,11 +47,6 @@ class ClientNetworkManager : public NetworkManager
|
||||
virtual void run();
|
||||
/*! \brief Resets the network socket. */
|
||||
virtual void reset();
|
||||
/*! \brief Sends a packet to the server.
|
||||
* \param data : The network 8-bit string to send.
|
||||
* \param reliable : If set to true, ENet will ensure that the packet is received.
|
||||
*/
|
||||
virtual void sendPacket(const NetworkString& data, bool reliable = true);
|
||||
|
||||
/*! \brief Get the peer (the server)
|
||||
* \return The peer with whom we're connected (if it exists). NULL elseway.
|
||||
|
@ -60,8 +60,6 @@ private:
|
||||
friend class AbstractSingleton<NetworkManager>;
|
||||
public:
|
||||
virtual void run();
|
||||
virtual void sendPacket(const NetworkString& data,
|
||||
bool reliable = true) = 0;
|
||||
// Game related functions
|
||||
virtual bool isServer() = 0;
|
||||
|
||||
|
@ -176,7 +176,7 @@ void ProtocolManager::sendMessage(Protocol* sender, const NetworkString& message
|
||||
NetworkString new_message(1+message.size());
|
||||
new_message.ai8(sender->getProtocolType()); // add one byte to add protocol type
|
||||
new_message += message;
|
||||
NetworkManager::getInstance()->sendPacket(new_message, reliable);
|
||||
STKHost::get()->sendMessage(new_message, reliable);
|
||||
} // sendMessage
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
|
@ -179,6 +179,24 @@ bool STKHost::connect(const TransportAddress& address)
|
||||
return true;
|
||||
} // connect
|
||||
|
||||
// --------------------------------------------------------------------
|
||||
/** Sends a message to the server if this is a client, or to all
|
||||
* clients if this is the server.
|
||||
* \param data Message to sent.
|
||||
* \param reliable If the message is to be sent reliable.
|
||||
*/
|
||||
void STKHost::sendMessage(const NetworkString& data, bool reliable)
|
||||
{
|
||||
if (m_is_server)
|
||||
broadcastPacket(data, reliable);
|
||||
else
|
||||
{
|
||||
if (m_peers.size() > 1)
|
||||
Log::warn("ClientNetworkManager", "Ambiguous send of data.");
|
||||
m_peers[0]->sendPacket(data, reliable);
|
||||
}
|
||||
} // sendMessage
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
/** \brief Starts the listening of events from ENet.
|
||||
* Starts a thread for receiveData that updates it as often as possible.
|
||||
|
@ -129,6 +129,7 @@ public:
|
||||
void reset();
|
||||
bool connect(const TransportAddress& peer);
|
||||
|
||||
void sendMessage(const NetworkString& data, bool reliable = true);
|
||||
void sendPacketExcept(STKPeer* peer,
|
||||
const NetworkString& data,
|
||||
bool reliable = true);
|
||||
|
Loading…
x
Reference in New Issue
Block a user