Beispiel #1
0
        private void Refresh(bool ignoreCheck = false)
        {
            // Race Condition - Cursor moves before Update() above is hit - need to prevent this until after Update is run
            if (!ignoreCheck && InputDevice_.Action3.WasReleased)
            {
                return;
            }

            if (placingWall_)
            {
                Vector3 vertexLocalPosition = CursorSnappedPosition_ - this.transform.position;
                PreviewWall_.SetVertexLocalPositions(new Vector3[] { Vector3.zero, vertexLocalPosition });
            }
            else
            {
                if (this.transform.position == CursorSnappedPosition_)
                {
                    return;
                }

                this.transform.position = CursorSnappedPosition_;
            }
        }
Beispiel #2
0
        private void Update()
        {
            if (PlacablePrefab_ == null)
            {
                return;
            }

            if (InputDevice_.Action3.WasReleased)
            {
                if (placingWall_)
                {
                    Place();
                    placingWall_ = false;

                    PreviewWall_.SetVertexLocalPositions(new Vector3[] { Vector3.zero, Vector3.zero });
                }
                else
                {
                    placingWall_ = true;
                }

                Refresh(ignoreCheck: true);
            }
        }
Beispiel #3
0
 protected override void Initialize()
 {
     placingWall_ = false;
     PreviewWall_.SetVertexLocalPositions(new Vector3[] { Vector3.zero, Vector3.zero });
 }