コード例 #1
0
ファイル: GlobalModel.cs プロジェクト: Kreyl/nute
        public GlobalModel(IArmletDeliveryServece armletService, IGateDeliveryService gateService, ShipDamageServiceObj shipDamageService)
        {
            _armletService       = armletService;
            _gateDeliveryService = gateService;
            _shipDamageService   = shipDamageService;

            _gates = new Lazy <GateModel> [Byte.MaxValue + 1];
            for (var gateIndex = 0; gateIndex <= Byte.MaxValue; gateIndex++)
            {
                var index = (byte)gateIndex;  //To prevent closure problems. C# 5.0 will fix it
                _gates[gateIndex] = new Lazy <GateModel>(() => new GateModel(gateService, index));
            }

            for (var armletIndex = 1; armletIndex <= 120; armletIndex++)
            {
                _armletList.CreateIfNeeded((byte)armletIndex, armletId => _armletStorage.CreateObject(armletId, this));
            }

            foreach (var shipIdx in _shipStorage.Keys)
            {
                _shipList.CreateIfNeeded(shipIdx, id => _shipStorage.CreateObject(id, this));
            }

            _armletService.ArmletsStatusUpdate           += ArmletServiceArmletsStatusUpdate;
            gateService.GateConnected                    += OnNewGateOnline;
            _armletService.ArmletSuccess                 += OnArmletListSuccess;
            _armletService.ArmletSendsData               += _armletService_ArmletSendsData;
            shipDamageService.ShipDamaged                += ShipDamageServiceOnShipDamaged;
            shipDamageService.ShipDestroyed              += ShipDamageServiceOnShipDestroyed;
            shipDamageService.SimulatorDisconnectedEvent += ShipDamageServiceOnSimulatorDisconnectedEvent;


// ReSharper disable once ObjectCreationAsStatement
            heartBeat_timer = new Timer(SendHeartBeat, 0, 0, 1 * 1000);
            // ReSharper disable once ObjectCreationAsStatement
            effectTimer = new Timer(ApplyShipEffects, 0, 0, 60 * 1000);
        }
コード例 #2
0
ファイル: GlobalModel.cs プロジェクト: Kreyl/nute
        public GlobalModel(IArmletDeliveryServece armletService, IGateDeliveryService gateService, ShipDamageServiceObj shipDamageService)
        {
            _armletService = armletService;
            _gateDeliveryService = gateService;
            _shipDamageService = shipDamageService;

            _gates = new Lazy<GateModel>[Byte.MaxValue + 1];
            for (var gateIndex = 0; gateIndex <= Byte.MaxValue; gateIndex++)
            {
                var index = (byte) gateIndex; //To prevent closure problems. C# 5.0 will fix it
                _gates[gateIndex] = new Lazy<GateModel>(() => new GateModel(gateService, index));
            }

            for (var armletIndex = 1; armletIndex <= 120; armletIndex++)
            {
                _armletList.CreateIfNeeded((byte)armletIndex, armletId => _armletStorage.CreateObject(armletId, this));
            }

            foreach (var shipIdx in _shipStorage.Keys)
            {
                _shipList.CreateIfNeeded(shipIdx, id => _shipStorage.CreateObject(id, this));
            }

            _armletService.ArmletsStatusUpdate +=ArmletServiceArmletsStatusUpdate;
            gateService.GateConnected += OnNewGateOnline;
            _armletService.ArmletSuccess += OnArmletListSuccess;
            _armletService.ArmletSendsData += _armletService_ArmletSendsData;
            shipDamageService.ShipDamaged += ShipDamageServiceOnShipDamaged;
            shipDamageService.ShipDestroyed += ShipDamageServiceOnShipDestroyed;
            shipDamageService.SimulatorDisconnectedEvent  += ShipDamageServiceOnSimulatorDisconnectedEvent;

            // ReSharper disable once ObjectCreationAsStatement
            heartBeat_timer = new Timer(SendHeartBeat, 0, 0, 1 * 1000);
            // ReSharper disable once ObjectCreationAsStatement
            effectTimer = new Timer(ApplyShipEffects, 0, 0, 60*1000);
        }
コード例 #3
0
 public ShipDamageServiceCallback(ShipDamageServiceObj serviceObj)
 {
     _serviceObj = serviceObj;
 }
コード例 #4
0
 public ShipDamageServiceCallback(ShipDamageServiceObj serviceObj)
 {
     _serviceObj = serviceObj;
 }