Esempio n. 1
0
        // Use this for initialization
        public void Init()
        {
            int width  = LevelEditorInfo.Instance.BoardWidth;
            int height = LevelEditorInfo.Instance.BoardHeight;

            switch (boardType)
            {
            case BoardType.Hex:
                _coord = new CoordinationHex(width, height);
                break;

            default:
                break;
            }


            _board = new EditorBoard(width, height, LevelListScrollerController.instance.CurrentLevel);
            _board.onDataChanged += RefreshSingleCell;



            InitCellViews(_board);
            InitBoardCellColliders();


            _comList          = new UndoRedoList();
            _comList.OnClean += _comList_OnClean;
            _comList.OnDirty += _comList_OnDirty;
        }
Esempio n. 2
0
 public ComBrushAt(EditorBoard board, BrushData brushData, int gridX, int gridY)
 {
     _board     = board;
     _gridX     = gridX;
     _gridY     = gridY;
     _brushData = brushData;
 }
Esempio n. 3
0
        void InitCellViews(EditorBoard board)
        {
            //destroy old layers
            foreach (var layer in _viewLayers)
            {
                DestroyImmediate(layer.gameObject);
            }
            _viewLayers.Clear();

            foreach (var item in board.Layers.Keys)
            {
                GameObject layer = Instantiate(prefabLayerContainer);
                _viewLayers.Add(layer);

                layer.name = item;
                layer.transform.SetParent(transform);

                RectTransform trans = layer.transform as RectTransform;
                trans.anchoredPosition = Vector2.zero;
                trans.localScale       = new Vector3(1, 1, 1);

                _layers[item] = new List <BoardCellView>();
                for (int i = 0; i < board.CellNum; i++)
                {
                    if (LevelEditorInfo.Instance.InvisibleBoardIndex.Contains(i))
                    {
                        _layers[item].Add(null);
                        continue;
                    }
                    BoardCellView cell = Instantiate(prefabCellView);
                    cell.name = item + "CellView" + i;
                    cell.transform.SetParent(layer.transform);
                    cell.transform.localPosition = _coord.PosFromIndex(i) * cellCoordScale;
                    cell.transform.localScale    = new Vector3(1, 1, 1);
                    _layers[item].Add(cell);
                }
            }
            RefreshBoardView();
        }