예제 #1
0
 public override void DrawGizmo(MatrixManager source, Vector3Int position)
 {
     if (MatrixManager.IsSpaceAt(position))
     {
         GizmoUtils.DrawCube(position, Color.red, false);
     }
 }
예제 #2
0
 public override void DrawGizmo(MetaTileMap source, Vector3Int position)
 {
     if (source.HasTile(position, LayerType.Objects, false))
     {
         GizmoUtils.DrawCube(position, Color.magenta);
     }
 }
예제 #3
0
 public override void DrawGizmo(MetaDataLayer source, Vector3Int position)
 {
     if (source.ExistsAt(position) && source.IsSpaceAt(position))
     {
         GizmoUtils.DrawCube(position, Color.red);
     }
 }
예제 #4
0
        public override void DrawGizmo(MetaDataLayer source, Vector3Int position)
        {
            if (Application.isPlaying == false)
            {
                MetaDataNode node = source.Get(position, false);

                if (node.Exists)
                {
                    if (node.IsSpace || node.Neighbors.Any(n => n != null && n.IsSpace))
                    {
                        GizmoUtils.DrawCube(position, Color.red);
                    }
                }
            }
            else
            {
                var INWorld = MatrixManager.LocalToWorld(position, source.Matrix.MatrixInfo);
                if (MatrixManager.AtPoint(INWorld.RoundToInt(), true).Matrix == source.Matrix)
                {
                    MetaDataNode node = source.Get(position, false);
                    if (node.Exists)
                    {
                        if (node.IsSpace || node.Neighbors.Any(n => n != null && n.IsSpace))
                        {
                            GizmoUtils.DrawCube(position, Color.red);
                        }
                    }
                }
            }
        }
예제 #5
0
 public override void DrawGizmo(MetaDataLayer source, Vector3Int position)
 {
     if (source.IsRoomAt(position))
     {
         GizmoUtils.DrawCube(position, Color.green);
     }
 }
예제 #6
0
        public override void DrawGizmo(MetaDataLayer source, Vector3Int position)
        {
            MetaDataNode node = source.Get(position, false);

            if (node.Exists)
            {
                if (node.ElectricalData.Count > 0)
                {
                    var IntrinsicData = node.ElectricalData[0];
                    switch (IntrinsicData.InData.Categorytype)
                    {
                    case PowerTypeCategory.StandardCable:
                        GizmoUtils.DrawCube(position, Color.red);
                        break;

                    case PowerTypeCategory.LowVoltageCable:
                        GizmoUtils.DrawCube(position, Color.blue);
                        break;

                    case PowerTypeCategory.HighVoltageCable:
                        GizmoUtils.DrawCube(position, Color.yellow);
                        break;
                    }
                }
            }
        }
예제 #7
0
 public override void DrawGizmo(MetaTileMap source, Vector3Int position)
 {
     if (source.HasObject(position, CustomNetworkManager.Instance._isServer))
     {
         GizmoUtils.DrawCube(position, Color.magenta);
     }
 }
예제 #8
0
 public override void DrawGizmo(MetaDataLayer source, Vector3Int position)
 {
     if (source.IsOccupiedAt(position))
     {
         GizmoUtils.DrawCube(position, Color.blue);
     }
 }
예제 #9
0
 public override void DrawGizmo(MatrixManager source, Vector3Int position)
 {
     if (!MatrixManager.IsNonStickyAt(position, false))
     {
         GizmoUtils.DrawCube(position, Color.yellow, false);
     }
 }
예제 #10
0
 public override void DrawGizmo(MetaTileMap source, Vector3Int position)
 {
     if (source.IsPassableAtOneTileMap(position, position, false) == false)
     {
         GizmoUtils.DrawCube(position, Color.blue);
     }
 }
예제 #11
0
 public override void DrawGizmo(MetaTileMap source, Vector3Int position)
 {
     if (!source.IsPassableAt(position))
     {
         GizmoUtils.DrawCube(position, Color.blue);
     }
 }
예제 #12
0
 public override void DrawGizmo(MetaTileMap source, Vector3Int position)
 {
     if (!source.IsEmptyAt(position))
     {
         GizmoUtils.DrawCube(position, Color.green);
     }
 }
예제 #13
0
        public override void DrawGizmo(MetaDataLayer source, Vector3Int position)
        {
            MetaDataNode node = source.Get(position, false);

            if (node.IsSlippery)
            {
                GizmoUtils.DrawCube(position, Color.cyan, true);
            }
        }
예제 #14
0
        public override void DrawGizmo(MetaDataLayer source, Vector3Int position)
        {
            MetaDataNode node = source.Get(position, false);

            if (node.IsIsolatedNode)
            {
                GizmoUtils.DrawCube(position, Color.blue, true);
            }
        }
예제 #15
0
        public override void DrawGizmo(MetaDataLayer source, Vector3Int position)
        {
            MetaDataNode node = source.Get(position, false);

            if (AtmosThread.IsInUpdateList(node))
            {
                GizmoUtils.DrawCube(position, Color.blue, true);
            }
        }
예제 #16
0
        public override void DrawGizmo(MetaDataLayer source, Vector3Int position)
        {
            MetaDataNode node = source.Get(position, false);

            if (node.Exists)
            {
                GizmoUtils.DrawCube(position, Color.green, alpha: node.RadiationNode.RadiationLevel / 1000);
            }
        }
예제 #17
0
        public override void DrawGizmo(MetaDataLayer source, Vector3Int position)
        {
            MetaDataNode node = source.Get(position, false);

            if (node.Exists)
            {
                if (node.IsSpace || node.Neighbors.Any(n => n != null && n.IsSpace))
                {
                    GizmoUtils.DrawCube(position, Color.red);
                }
            }
        }
예제 #18
0
        public override void DrawGizmo(MetaDataLayer source, Vector3Int position)
        {
            MetaDataNode node = source.Get(position, false);

            if (node.HasWind)
            {
                var alpha = Mathf.Clamp(node.WindForce / 20, 0.1f, 0.8f);
                GizmoUtils.DrawCube(position, Color.blue, true, alpha);

                Gizmos.color = Color.white;
                GizmoUtils.DrawText($"{node.WindForce:0.#}", LocalToWorld(source, position) + (Vector3)Vector2.down / 4, false);

                GizmoUtils.DrawArrow(position, (Vector2)node.WindDirection / 2);
            }
        }
예제 #19
0
        public override void DrawGizmo(MetaDataLayer source, Vector3Int position)
        {
            if (Application.isPlaying == false)
            {
                if (source.ExistsAt(position) && source.IsSpaceAt(position))
                {
                    GizmoUtils.DrawCube(position, Color.red);
                }
                return;
            }

            var INWorld = MatrixManager.LocalToWorld(position, source.Matrix.MatrixInfo);

            if (MatrixManager.AtPoint(INWorld.RoundToInt(), true).Matrix == source.Matrix)
            {
                if (source.ExistsAt(position) && source.IsSpaceAt(position))
                {
                    GizmoUtils.DrawCube(position, Color.red);
                }
            }
        }