public FacilityDisplayManager(IWidgetTrackable trackedFacility, Layers meshLayer)
     : base(trackedFacility, meshLayer) { }
        private IRevolver[] _revolvers; // star mesh and 2 glows

        public StarDisplayManager(IWidgetTrackable trackedStar, Layers meshLayer)
            : base(trackedStar, meshLayer) {
        }
 public HoverHighlightManager(IWidgetTrackable trackedClientItem, float highlightRadius) : base(trackedClientItem.transform) {
     _trackedClientItem = trackedClientItem;
     _highlightRadius = highlightRadius;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="UnitCmdDisplayManager"/> class.
 /// </summary>
 /// <param name="trackedCmd">The tracked command.</param>
 /// <param name="iconInfo">The icon information.</param>
 /// <param name="color">The color of the owner.</param>
 public UnitCmdDisplayManager(IWidgetTrackable trackedCmd, Layers meshLayer)
     : base(trackedCmd, meshLayer) {
 }
 public PlanetDisplayManager(IWidgetTrackable trackedPlanet, Layers meshLayer)
     : base(trackedPlanet, meshLayer) {
 }
Exemple #6
0
 protected override void Awake() {
     base.Awake();
     _operatingEffectRenderer = UnityUtility.ValidateComponentPresence<LineRenderer>(gameObject);
     // No effects should initially show
     _operatingEffectRenderer.enabled = false;
     _initialBeamAnimationOffset = UnityEngine.Random.Range(0F, 5F);
     ValidateEffects();
     _beamEnd = TrackingWidgetFactory.Instance.MakeTrackableLocation(parent: gameObject);
     _beamEndListener = TrackingWidgetFactory.Instance.MakeInvisibleCameraLosChangedListener(_beamEnd, Layers.Cull_15);
 }
 public MissileDisplayManager(IWidgetTrackable trackedMissile, Layers meshLayer, ParticleSystem operatingEffect)
     : base(trackedMissile, meshLayer, operatingEffect) {
 }
 public AElementDisplayManager(IWidgetTrackable trackedElement, Layers meshLayer)
     : base(trackedElement, meshLayer) {
 }
    public void Launch(IElementAttackable target, AWeapon weapon) {
        PrepareForLaunch(target, weapon);
        D.Assert((Layers)gameObject.layer == Layers.TransparentFX, "{0} is not on Layer {1}.".Inject(Name, Layers.TransparentFX.GetValueName()));
        weapon.isOperationalChanged += WeaponIsOperationalChangedEventHandler;
        _operatingEffectRenderer.SetPosition(index: 0, position: Vector3.zero);  // start beam where ordnance located

        _beamEnd = TrackingWidgetFactory.Instance.MakeTrackableLocation(parent: gameObject);
        _beamEndListener = TrackingWidgetFactory.Instance.MakeInvisibleCameraLosChangedListener(_beamEnd, Layers.Cull_15);
        _beamEndListener.inCameraLosChanged += BeamEndInCameraLosChangedEventHandler;

        AssessShowMuzzleEffects();
        AssessShowOperatingEffects();
        enabled = true;
    }
    public void SetTarget(IWidgetTrackable target, WidgetPlacement labelPlacement = WidgetPlacement.Below) {
        _target = target;

        if (_enableTrackingLabel && _trackingLabel == null) {
            _trackingLabel = InitializeTrackingLabel();
        }

        if (_trackingLabel != null) {
            if (_trackingLabel.Target != target) {    // eliminates PropertyChanged not changed warning
                _trackingLabel.Target = target;
            }
            _trackingLabel.Placement = labelPlacement;
        }
        UpdatePosition();
    }
 protected void ResetForReuse() {
     //D.Log("{0}.ResetForReuse called.", GetType().Name);
     _target = null;
     _color = GameColor.None;
     _alpha = Constants.ZeroF;
 }
 public AProjectileDisplayManager(IWidgetTrackable trackedProjectile, Layers meshLayer, ParticleSystem operatingEffect = null)
     : base(trackedProjectile.transform.gameObject, meshLayer) {
     _trackedProjectile = trackedProjectile;
     _operatingEffect = operatingEffect;
 }
 public ShipDisplayManager(IWidgetTrackable trackedShip, Layers meshLayer)
     : base(trackedShip, meshLayer) { }
 public AIconDisplayManager(IWidgetTrackable trackedItem, Layers meshLayer)
     : base(trackedItem.transform.gameObject, meshLayer) {
     _trackedItem = trackedItem;
 }