unsigned int CNetServer::RPC(RPCIdentifier rpcId, CBitStream * pBitStream, ePacketPriority priority, ePacketReliability reliability, EntityId playerId, bool bBroadcast, char cOrderingChannel) { if(playerId != INVALID_ENTITY_ID && !IsPlayerConnected(playerId)) return 0; CBitStream bitStream; bitStream.Write((PacketId)PACKET_RPC); bitStream.Write(rpcId); if(pBitStream) bitStream.Write((char *)pBitStream->GetData(), pBitStream->GetNumberOfBytesUsed()); return m_pRakPeer->Send((char *)bitStream.GetData(), bitStream.GetNumberOfBytesUsed(), (PacketPriority)priority, (PacketReliability)reliability, cOrderingChannel, (playerId == INVALID_ENTITY_ID) ? RakNet::UNASSIGNED_SYSTEM_ADDRESS : m_pRakPeer->GetSystemAddressFromIndex(playerId), bBroadcast); }
unsigned int CNetClient::RPC(RPCIdentifier rpcId, CBitStream * pBitStream, ePacketPriority priority, ePacketReliability reliability, char cOrderingChannel) { if(IsConnected()) { CBitStream bitStream; bitStream.Write((PacketId)PACKET_RPC); bitStream.Write(rpcId); if(pBitStream) bitStream.Write((char *)pBitStream->GetData(), pBitStream->GetNumberOfBytesUsed()); return m_pRakPeer->Send((char *)bitStream.GetData(), bitStream.GetNumberOfBytesUsed(), (PacketPriority)priority, (PacketReliability)reliability, cOrderingChannel, m_serverAddress, false); } return 0; }