protected PBSEffectNode() { _standingController = new PBSStandingController <PBSEffectNode>(this) { AlwaysEnabled = true }; _coreUseHandler = new CoreUseHandler <PBSEffectNode>(this, new EnergyStateFactory(this)); _currentEffect = DynamicProperties.GetProperty <int>(k.currentEffect); _currentEffect.PropertyChanging += (property, value) => { var effectType = (EffectType)value; if (effectType == EffectType.undefined) { effectType = AvailableEffects.FirstOrDefault(); } if (!AvailableEffects.Contains(effectType)) { Logger.Error("PBSEffectNode: invalid effect type! type:" + effectType); } RemoveCurrentEffect(); return((int)effectType); }; _currentEffect.PropertyChanged += property => { OnEffectChanged(); }; }
public PBSTurret(IStandingHandler standingHandler, PBSObjectHelper <PBSTurret> .Factory pbsObjectHelperFactory) { _standingHandler = standingHandler; _pbsObjectHelper = pbsObjectHelperFactory(this); _standingController = new PBSStandingController <PBSTurret>(this) { AlwaysEnabled = true }; _blobHandler = new BlobHandler <PBSTurret>(this); _blobEmitter = new BlobEmitter(this); _reinforceHandler = new PBSReinforceHandler <PBSTurret>(this); _coreUseHandler = new CoreUseHandler <PBSTurret>(this, new EnergyStateFactory(this)); }
public PBSArmorRepairerNode() { _coreUseHandler = new CoreUseHandler <PBSArmorRepairerNode>(this, new EnergyStateFactory(this)); }
protected PBSProductionFacilityNode() { _coreUseHandler = new CoreUseHandler <PBSProductionFacilityNode>(this, new EnergyStateFactory(this)); }
public PBSHighwayNode() { _coreUseHandler = new CoreUseHandler <PBSHighwayNode>(this, new EnergyStateFactory(this)); _corePumpHandler = new CorePumpHandler <PBSHighwayNode>(this); }
public PBSFacilityUpgradeNode() { _coreUseHandler = new CoreUseHandler <PBSFacilityUpgradeNode>(this, new EnergyStateFactory(this)); }