Esempio n. 1
0
 public void OnClickInitMaze()
 {
     _end = Vector2Int.one * (MAZE_SIZE - 1);
     DestroyBlocks();
     for (int i = 0; i < MAZE_SIZE * MAZE_SIZE; i++)
     {
         int       posX = i / MAZE_SIZE;
         int       posY = i % MAZE_SIZE;
         BlockData data = new BlockData(posX, posY, BlockType.CanPass);
         _blocks.Add(data);
         _blockElements.Add(MazeBlockCtrl.Show(transform, Vector2.one * 50, new Vector3(posY * 52, -posX * 52, 0), data));
     }
 }
Esempio n. 2
0
    public static MazeBlockCtrl Show(Transform parent, Vector2 size, Vector3 position, MazeSolving.BlockData data)
    {
        GameObject blockGO = Instantiate(Resources.Load <GameObject>("MazeBlock"));

        blockGO.name             = "[" + data.x + "," + data.y + "]";
        blockGO.transform.parent = parent;
        blockGO.GetComponent <RectTransform>().sizeDelta     = size;
        blockGO.GetComponent <RectTransform>().localPosition = position;
        MazeBlockCtrl ctrl = blockGO.GetComponent <MazeBlockCtrl>();

        ctrl.Init(data);

        return(ctrl);
    }