protected void WrapClientPeer(IClientPeer clientPeer, IPeerLogicBase peerLogic)
        {
            var idGenerator = ServerComponents.GetComponent <IIdGenerator>().AssertNotNull();
            var peerId      = idGenerator.GenerateId();

            var clientPeerWrapper = new ClientPeerWrapper(clientPeer, peerId);

            clientPeerWrapper.SetPeerLogic(peerLogic);

            peerContainer.AddPeerLogic(clientPeerWrapper);
        }
        private void OnCharacterSelected(CharacterParameters?character)
        {
            if (character.HasValue)
            {
                ClientPeerWrapper.SetPeerLogic(new GameScenePeerLogic(userId, character.Value));
            }
            else
            {
                var ip     = ClientPeerWrapper.Peer.ConnectionInformation.Ip;
                var peerId = ClientPeerWrapper.PeerId;

                LogUtils.Log(MessageBuilder.Trace($"A peer {ip} with id #{peerId} does not have character but trying to enter with character."));

                ClientPeerWrapper.Peer.Disconnect();
            }
        }
        private void OnAuthorized(int userId)
        {
            var newPeerLogic = Activator.CreateInstance(typeof(TNewPeerLogic), userId) as TNewPeerLogic;

            ClientPeerWrapper.SetPeerLogic(newPeerLogic);
        }
Beispiel #4
0
 private void OnAuthorized()
 {
     ClientPeerWrapper.SetPeerLogic(new TNewPeerLogic());
 }