コード例 #1
0
 static bool ShowGrid(SimpleGrid <T> grid, System.Action <T, Rect> drawCall)
 {
     return(ShowGrid(grid.FieldInfoStr, drawCall, grid.elementList.GetEnumerator(),
                     grid.BtnName, grid.BtnCallbackF,
                     ref grid.fCellSize, ref grid.bFoldOUt, ref grid.vScrollPos,
                     grid.selection, grid.bObjectField, grid.bMultiSelectable, grid.cSelectedColor));
 }
コード例 #2
0
    void Start()
    {
        gridy       = gridSize[0];
        gridx       = gridSize[1];
        pathfinding = new Pathfinding(gridx, gridy, cellSize);
        grid        = pathfinding.GetGrid();

        map         = new MapData();
        map.grid    = new List <GridEntry>();
        squareArray = new GameObject[gridx, gridy];

        player.transform.position = grid.GetWorldPosition(0, 0) + Vector3.one * cellSize * 0.5f;

        for (int x = 0; x < squareArray.GetLength(0); x++)
        {
            for (int y = 0; y < squareArray.GetLength(1); y++)
            {
                //create a matrix of squares the size of the grid.
                Vector3    squarePosition = grid.GetWorldPosition(x, y) + Vector3.one * cellSize * 0.5f;
                GameObject square         = Instantiate(squarePrefab, squarePosition, Quaternion.identity);
                square.transform.localScale = new Vector3(cellSize - borderSize[0], cellSize - borderSize[1]);
                square.name       = "square " + x + "-" + y;
                squareArray[x, y] = square;
            }
        }
        LoadFromMap();
    }
コード例 #3
0
 public PathNode(SimpleGrid <PathNode> grid, int x, int y)
 {
     this.grid       = grid;
     this.x          = x;
     this.y          = y;
     this.isWalkable = true;
 }
コード例 #4
0
        public void Columns()
        {
            var grid = new SimpleGrid {
                Columns = "1*, 20"
            };

            Assert.AreEqual(2, grid.ColumnDefinitions.Count);
            Assert.AreEqual(new GridLength(1, GridUnitType.Star), grid.ColumnDefinitions[0].Width);
            Assert.AreEqual(new GridLength(20, GridUnitType.Pixel), grid.ColumnDefinitions[1].Width);
        }
コード例 #5
0
        public void Rows()
        {
            var grid = new SimpleGrid {
                Rows = "1*, 20"
            };

            Assert.AreEqual(2, grid.RowDefinitions.Count);
            Assert.AreEqual(new GridLength(1, GridUnitType.Star), grid.RowDefinitions[0].Height);
            Assert.AreEqual(new GridLength(20, GridUnitType.Pixel), grid.RowDefinitions[1].Height);
        }
コード例 #6
0
        public void ChildMargin()
        {
            var margin = new Thickness(10);
            var grid   = new SimpleGrid {
                ChildMargin = margin
            };
            var tb = new TextBlock();

            grid.Children.Add(tb);

            Assert.AreEqual(margin, tb.Margin);
        }
コード例 #7
0
 public Level(int SizeX, int SizeY, String name)
 {
     simpleLevelGrid = new SimpleGrid(SizeX, SizeY);
     for (int x = 0; x < SizeX; ++x)
     {
         for (int y = 0; y < SizeY; ++y)
         {
             simpleLevelGrid.GridSpaces[x, y] = new SimpleGridSpace(0, x, y, 0, simpleLevelGrid);
         }
     }
     enemies    = new List <Person>();
     playerTeam = new List <Hero>();
     LevelName  = name;
 }
コード例 #8
0
    public override void OnInspectorGUI()
    {
        DrawDefaultInspector();

        SimpleGrid simpleGrid = (SimpleGrid)target;

        if (GUILayout.Button("Reposition"))
        {
            simpleGrid.Reposition();
        }

        if (GUILayout.Button("Rename"))
        {
            simpleGrid.Rename();
        }
    }
コード例 #9
0
    public void DrawFCost()
    {
        SimpleGrid <PathNode> grid = Pathfinding.Instance.GetGrid();

        for (int x = 0; x < grid.GetGridWidth(); x++)
        {
            for (int y = 0; y < grid.GetGridHeight(); y++)
            {
                squareArray[x, y].GetComponent <SpriteRenderer>().color = Color.white;
                GameObject TextF  = squareArray[x, y].transform.GetChild(0).gameObject;
                GameObject TextGH = squareArray[x, y].transform.GetChild(1).gameObject;
                TextMesh   meshF  = TextF.GetComponent <TextMesh>();
                TextMesh   meshGH = TextGH.GetComponent <TextMesh>();
                meshF.color     = calcColor;
                meshF.fontStyle = FontStyle.Normal;
                TextF.SetActive(false);
                TextGH.SetActive(false);
                if (true)
                {
                    int fCost = grid.GetGridObject(x, y).fCost;
                    int hCost = grid.GetGridObject(x, y).hCost;
                    int gCost = grid.GetGridObject(x, y).gCost;

                    if (fCost > 1000 || fCost < 0)
                    {
                        meshF.text  = "";
                        meshGH.text = "";
                    }
                    else
                    {
                        meshF.text  = (fCost / 10f).ToString();
                        meshGH.text = "g(" + (gCost / 10f).ToString() + ") h(" + (hCost / 10f).ToString() + ")";
                    }
                }
            }
        }
    }