コード例 #1
0
 public override void InstallBindings()
 {
     // These two classes need a non lazy initialization since they are listening to events.
     Container.BindInterfacesTo <NetworkCommandReceiver>().AsSingle().NonLazy();
     Container.BindInterfacesTo <NetworkCommandBroadcaster>().AsSingle().NonLazy();
     Container.Bind <SequenceIndex>().FromInstance(SequenceIndex.Of(0)).AsSingle();
 }
コード例 #2
0
 public NetworkCommandReceiver(SequenceIndex sequenceIndex,
                               INetworkManager networkManager,
                               INetworkMessageHandler networkMessageHandler,
                               INetworkMessageSerializer messageSerializer, ICommandQueue commandQueue)
 {
     _sequenceIndex         = sequenceIndex;
     _networkManager        = networkManager;
     _networkMessageHandler = networkMessageHandler;
     _messageSerializer     = messageSerializer;
     _commandQueue          = commandQueue;
 }
コード例 #3
0
        public NetworkCommandBroadcaster(SequenceIndex sequenceIndex,
                                         ICommandQueue commandQueue,
                                         INetworkManager networkManager,
                                         INetworkMessageHandler networkMessageHandler,
                                         INetworkMessageSerializer networkMessageSerializer)
        {
            _sequenceIndex            = sequenceIndex;
            _networkManager           = networkManager;
            _networkMessageHandler    = networkMessageHandler;
            _networkMessageSerializer = networkMessageSerializer;

            _disposable = networkManager.ClientConnected.Subscribe(Observer.Create <int>(HandleClientConnected));
            commandQueue.AddListener(this);
        }