コード例 #1
0
ファイル: StarBaseView.cs プロジェクト: Maxii/CodeEnv.Master
 private void InitializeTrackingLabel() {
     if (enableTrackingLabel) {
         float minShowDistance = TempGameValues.MinTrackingLabelShowDistance;
         _trackingLabel = TrackingWidgetFactory.Instance.CreateGuiTrackingLabel(_transform, TrackingWidgetFactory.LabelPlacement.AboveTarget, minShowDistance);
     }
 }
コード例 #2
0
ファイル: StarBaseView.cs プロジェクト: Maxii/CodeEnv.Master
 protected override void Cleanup() {
     base.Cleanup();
     if (_trackingLabel != null) {
         Destroy(_trackingLabel.gameObject);
         _trackingLabel = null;
     }
 }
コード例 #3
0
ファイル: FleetView.cs プロジェクト: Maxii/CodeEnv.Master
 protected override void Cleanup() {
     base.Cleanup();
     if (_velocityRay != null) {
         _velocityRay.Dispose();
         _velocityRay = null;
     }
     if (_trackingLabel != null) {
         Destroy(_trackingLabel.gameObject);
         _trackingLabel = null;
     }
 }
コード例 #4
0
ファイル: FleetView.cs プロジェクト: Maxii/CodeEnv.Master
 private void InitializeTrackingLabel() {
     if (enableTrackingLabel) {
         if (_trackingLabel != null) {
             // there is an old tracking label for a previous tracking target, so remove it from components to disable before adding a new one
             disableComponentOnNotDiscernible = disableComponentOnNotDiscernible.Except(_trackingLabel);
         }
         float minShowDistance = TempGameValues.MinTrackingLabelShowDistance;
         string fleetName = Presenter.Model.Data.Name;
         _trackingLabel = TrackingWidgetFactory.Instance.CreateGuiTrackingLabel(TrackingTarget, TrackingWidgetFactory.LabelPlacement.AboveTarget, minShowDistance, Mathf.Infinity, fleetName);
         disableComponentOnNotDiscernible = disableComponentOnNotDiscernible.Union(new Component[] { _trackingLabel });
     }
 }
コード例 #5
0
ファイル: FleetGraphics.cs プロジェクト: Maxii/CodeEnv.Master
 protected override int EnableBasedOnDistanceToCamera(params bool[] conditions) {
     bool condition = conditions.All<bool>(c => c == true);
     int distanceToCamera = base.EnableBasedOnDistanceToCamera(condition);
     if (enableTrackingLabel) {  // allows tester to enable while editor is playing
         _trackingLabel = _trackingLabel ?? InitializeTrackingLabel();
         bool toShowTrackingLabel = false;
         if (condition) {
             distanceToCamera = distanceToCamera == Constants.Zero ? Target.DistanceToCameraInt() : distanceToCamera;    // not really needed
             if (Utility.IsInRange(distanceToCamera, minTrackingLabelShowDistance, maxTrackingLabelShowDistance)) {
                 toShowTrackingLabel = true;
             }
         }
         //D.Log("FleetTrackingLabel.IsShowing = {0}.", toShowTrackingLabel);
         _trackingLabel.IsShowing = toShowTrackingLabel;
     }
     return distanceToCamera;
 }
コード例 #6
0
ファイル: FleetGraphics.cs プロジェクト: Maxii/CodeEnv.Master
 private void Cleanup() {
     if (_velocityRay != null) {
         _velocityRay.Dispose();
         _velocityRay = null;
     }
     if (_circles != null) {
         _circles.Dispose();
         _circles = null;
     }
     if (_trackingLabel != null) {
         Destroy(_trackingLabel.gameObject);
         _trackingLabel = null;
     }
 }
コード例 #7
0
ファイル: StarBaseView.cs プロジェクト: Maxii/UnityEntry
    //protected override void Update() {
    //    base.Update();
    //    KeepViewOverTarget();
    //}

    //protected override void OccasionalUpdate() {
    //    base.OccasionalUpdate();
    //    KeepColliderOverFleetIcon();
    //}

    //private void KeepViewOverTarget() {
    //    if (TrackingTarget != null) {
    //        _transform.position = TrackingTarget.position;
    //        _transform.rotation = TrackingTarget.rotation;

    //        // Notes: _fleetIconPivotOffset is a worldspace offset to the top of the leadship collider and doesn't change with scale, position or rotation
    //        // The approach below will also work if we want a viewport offset that is a constant percentage of the viewport
    //        //Vector3 viewportOffsetLocation = Camera.main.WorldToViewportPoint(_leadShipTransform.position + _fleetIconPivotOffset);
    //        //Vector3 worldOffsetLocation = Camera.main.ViewportToWorldPoint(viewportOffsetLocation + _fleetIconViewportOffset);
    //        //_fleetIconTransform.localPosition = worldOffsetLocation - _leadShipTransform.position;
    //        _fleetIconTransform.localPosition = _fleetIconPivotOffset;
    //    }
    //}

    //private void KeepColliderOverFleetIcon() {
    //    (_collider as BoxCollider).size = Vector3.Scale(_iconSize, _fleetIconScaler.Scale);
    //    //D.Log("Fleet collider size now = {0}.", _collider.size);

    //    Vector3[] iconWorldCorners = _fleetIconSprite.worldCorners;
    //    Vector3 iconWorldCenter = iconWorldCorners[0] + (iconWorldCorners[2] - iconWorldCorners[0]) * 0.5F;
    //    // convert icon's world position to the equivalent local position on the fleetCmd transform
    //    (_collider as BoxCollider).center = _transform.InverseTransformPoint(iconWorldCenter);
    //}

    //private void InitializeTrackingLabel() {
    //    if (enableTrackingLabel) {
    //        float minShowDistance = TempGameValues.MinTrackingLabelShowDistance;
    //        string fleetName = Presenter.Item.FleetName;
    //        _trackingLabel = GuiTrackingLabelFactory.Instance.CreateGuiTrackingLabel(TrackingTarget, GuiTrackingLabelFactory.LabelPlacement.AboveTarget, minShowDistance, Mathf.Infinity, fleetName);
    //    }
    //}

    private void InitializeTrackingLabel() {
        if (enableTrackingLabel) {
            float minShowDistance = TempGameValues.MinTrackingLabelShowDistance;
            string fleetName = Presenter.Item.PieceName;
            _trackingLabel = GuiTrackingLabelFactory.Instance.CreateGuiTrackingLabel(TrackingTarget, GuiTrackingLabelFactory.LabelPlacement.AboveTarget, minShowDistance, Mathf.Infinity, fleetName);
        }
    }