Network/ENet: Separate Connect event into OutgoingConnect and IncomingConnect
This commit is contained in:
@@ -352,10 +352,17 @@ namespace Nz
|
||||
switch (peer.GetState())
|
||||
{
|
||||
case ENetPeerState::ConnectionPending:
|
||||
peer.ChangeState(ENetPeerState::Connected);
|
||||
|
||||
event->type = ENetEventType::IncomingConnect;
|
||||
event->peer = &peer;
|
||||
event->data = peer.m_eventData;
|
||||
return true;
|
||||
|
||||
case ENetPeerState::ConnectionSucceeded:
|
||||
peer.ChangeState(ENetPeerState::Connected);
|
||||
|
||||
event->type = ENetEventType::Connect;
|
||||
event->type = ENetEventType::OutgoingConnect;
|
||||
event->peer = &peer;
|
||||
event->data = peer.m_eventData;
|
||||
return true;
|
||||
@@ -728,7 +735,7 @@ namespace Nz
|
||||
return -1;
|
||||
}
|
||||
|
||||
void ENetHost::NotifyConnect(ENetPeer* peer, ENetEvent* event)
|
||||
void ENetHost::NotifyConnect(ENetPeer* peer, ENetEvent* event, bool incoming)
|
||||
{
|
||||
m_recalculateBandwidthLimits = true;
|
||||
|
||||
@@ -736,12 +743,12 @@ namespace Nz
|
||||
{
|
||||
peer->ChangeState(ENetPeerState::Connected);
|
||||
|
||||
event->type = ENetEventType::Connect;
|
||||
event->type = (incoming) ? ENetEventType::IncomingConnect : ENetEventType::OutgoingConnect;
|
||||
event->peer = peer;
|
||||
event->data = peer->m_eventData;
|
||||
}
|
||||
else
|
||||
peer->DispatchState(peer->GetState() == ENetPeerState::Connecting ? ENetPeerState::ConnectionSucceeded : ENetPeerState::ConnectionPending);
|
||||
peer->DispatchState((peer->GetState() == ENetPeerState::Connecting) ? ENetPeerState::ConnectionSucceeded : ENetPeerState::ConnectionPending);
|
||||
}
|
||||
|
||||
void ENetHost::NotifyDisconnect(ENetPeer* peer, ENetEvent* event)
|
||||
|
||||
@@ -501,7 +501,7 @@ namespace Nz
|
||||
if (commandNumber != ENetProtocolCommand_VerifyConnect)
|
||||
return false;
|
||||
|
||||
m_host->NotifyConnect(this, event);
|
||||
m_host->NotifyConnect(this, event, true);
|
||||
break;
|
||||
|
||||
case ENetPeerState::Disconnecting:
|
||||
@@ -864,7 +864,7 @@ namespace Nz
|
||||
NetToHost(command->verifyConnect.packetThrottleInterval) != m_packetThrottleInterval ||
|
||||
NetToHost(command->verifyConnect.packetThrottleAcceleration) != m_packetThrottleAcceleration ||
|
||||
NetToHost(command->verifyConnect.packetThrottleDeceleration) != m_packetThrottleDeceleration ||
|
||||
command->verifyConnect.connectID != m_connectID)
|
||||
command->verifyConnect.connectID != m_connectID)
|
||||
{
|
||||
m_eventData = 0;
|
||||
|
||||
@@ -891,7 +891,7 @@ namespace Nz
|
||||
m_incomingBandwidth = NetToHost(command->verifyConnect.incomingBandwidth);
|
||||
m_outgoingBandwidth = NetToHost(command->verifyConnect.outgoingBandwidth);
|
||||
|
||||
m_host->NotifyConnect(this, event);
|
||||
m_host->NotifyConnect(this, event, false);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user