Example #1
0
 public DummyHallRoom(RoomEventDispatcher dispatcher, Contexts contexts) : base(dispatcher, contexts)
 {
     _dispatcher              = dispatcher;
     _contexts                = contexts;
     _dispatcher.OnRoomEvent += OnRoomEvent;
     AllowReConnect           = false;
 }
Example #2
0
 public LoginServer(RoomEventDispatcher dispatcher, IRoomManager roomManager)
 {
     _dispatcher              = dispatcher;
     _roomManager             = roomManager;
     _networkMonitor          = new PlayerNetworkMonitor(_dispatcher, _roomManager);
     _dispatcher.OnRoomEvent += OnRoomEvent;
 }
Example #3
0
        private void init()
        {
            _dispatcher  = new RoomEventDispatcher();
            _roomFactory = new ServerRoomFactory(_dispatcher, _coRoutineManager, _assetManager);
            _roomManager = new SingleRoomManager(_roomFactory, _dispatcher, false, _roomListener);


            _loginServer = new LoginServer(_dispatcher, _roomManager);
            _loginServer.Start(new NetworkPortInfo(
                                   SingletonManager.Get <ServerFileSystemConfigManager>().BootConfig.BattleServer.TcpPort,
                                   SingletonManager.Get <ServerFileSystemConfigManager>().BootConfig.BattleServer.UdpPort));

            _hallServerNetwork = new HallServerNetwork(_dispatcher);
            _hallServerNetwork.StartServer(new NetworkPortInfo(
                                               SingletonManager.Get <ServerFileSystemConfigManager>().BootConfig.HallRoomServer.ListenPort, 0));

            MyHttpServer.Start(SingletonManager.Get <ServerFileSystemConfigManager>().BootConfig.HttpPort);
            if (SingletonManager.Get <ServerFileSystemConfigManager>().BootConfig.AllocationServer.Open == 1)
            {
                _hallServerNetwork.ClientConnect(new NetworkPortInfo(
                                                     SingletonManager.Get <ServerFileSystemConfigManager>().BootConfig.AllocationServer.ConnectPort, 0));
            }
            else
            {
                _logger.InfoFormat("Server Configuration: Do Not connect to Allocation Server!");
            }
        }
Example #4
0
 public void Broadcast(string type, Object obj)
 {
     if (this.IsRobot == false)
     {
         RoomEventDispatcher.DispatchEvent(type, obj);
     }
 }
Example #5
0
 public ServerRoomFactory(RoomEventDispatcher dispatcher, ICoRoutineManager coRoutineManager, IUnityAssetManager assetMananger)
 {
     _dispatcher       = dispatcher;
     _coRouitneManager = coRoutineManager;
     _assetMananger    = assetMananger;
     _contexts         = new Contexts();
 }
Example #6
0
 public HallRoom(RoomEventDispatcher dispatcher, Contexts contexts)
 {
     _dispatcher              = dispatcher;
     _contexts                = contexts;
     _dispatcher.OnRoomEvent += OnRoomEvent;
     _isCreateComplete        = false;
     _createTime              = DateTime.Now.Ticks;
 }
Example #7
0
 public HallServerNetwork(RoomEventDispatcher dispatcher)
 {
     _stopwatch               = Stopwatch.StartNew();
     _dispatcher              = dispatcher;
     _dispatcher.Intercept   += InterceptRoomEvent;
     _dispatcher.OnRoomEvent += OnRoomEvent;
     _client = _clientFactory.CreateTcpNetworkClient(SharedConfig.IsLittleEndian, SharedConfig.MutilThread, "Allocation");
     _client.ChannelConnected    += ClientOnChannelConnected;
     _client.ChannelDisconnected += ClientOnChannelDisConnected;
     RegisterCommand();
 }
Example #8
0
        public SingleRoomManager(ServerRoomFactory roomFactory, RoomEventDispatcher dispatcher, bool tokenOnce, IRoomListener roomListener)
        {
            _dispatcher              = dispatcher;
            _dispatcher.OnRoomEvent += OnRoomEvent;
            _playerInfoManager       = new PlayerInfoManager(tokenOnce);

            _roomFactory = roomFactory;
            roomFactory.TokenGenerator = _playerInfoManager;

            _roomListener = roomListener;

            _debugSystem = new ServerDebugInfoSystem(this);
        }
Example #9
0
        public ServerRoom(RoomId id, ContextsServerWrapper contextsServerWrapper, RoomEventDispatcher dispatcher,
                          IPlayerTokenGenerator playerTokenGenerator)
        {
            state               = RoomState.Initialized;
            isDisposed          = false;
            RoomId              = id;
            ContextsWrapper     = contextsServerWrapper;
            MessageDispatcher   = CreateNetworMessageHandlers();
            tokenGenerator      = playerTokenGenerator;
            eventDispatcher     = dispatcher;
            snapshotFactory     = new SnapshotFactory(ContextsWrapper.GameContexts);
            sessionStateMachine = new ServerSessionStateMachine(ContextsWrapper.contexts, this);
            damager             = new SimplePlayerDamager(this);
            compensationManager = new CompensationManager();

            VehicleDamageUtility._damager = damager;
            sendSnapshotManager           = new SendSnapshotManager(ContextsWrapper.contexts);
        }
Example #10
0
        //private Stopwatch _stopwatch;

        public SingleRoomManager(ServerRoomFactory roomFactory, RoomEventDispatcher dispatcher, IRoomListener roomListener) : this(roomFactory, dispatcher, false, roomListener)
        {
        }
Example #11
0
 public ResponseRegisterBattleServerMessageHandler(RoomEventDispatcher dispatcher)
 {
     _dispatcher = dispatcher;
 }
Example #12
0
 public RequestJoinRoomListMessageHandler(RoomEventDispatcher dispatcher)
 {
     _dispatcher = dispatcher;
 }
Example #13
0
 public PlayerNetworkMonitor(RoomEventDispatcher dispatcher, IRoomManager roomManager)
 {
     _dispatcher             = dispatcher;
     _roomManager            = roomManager;
     dispatcher.OnRoomEvent += OnRoomEvent;
 }
 public RequestCreateRoomMessageHandler(RoomEventDispatcher dispatcher)
 {
     _dispatcher = dispatcher;
 }
Example #15
0
 public void Broadcast(string type, BattlePlayer player, Object obj)
 {
     RoomEventDispatcher.DispatchEvent(type, obj);
 }