public void SpawnFigure(GameObject BoardFigure, FigureStructure figureStructure) { GameObject figureGameObject = Instantiate(BoardFigure, transform.position, Quaternion.identity); Figure figure = figureGameObject.GetComponent <Figure>(); figureOnCell = figure.GetInitFigure(figureStructure.FirureId, figureStructure.InitialType, figureStructure.CurrentType, figureStructure.TeamType); }
// #nullable disable public void InitBoard() { // board initializatin // go thrue config and spawn figure set defaul values foreach (var cell in BoardCellsList) { int couresponeCellIndex = defaultBoardStructure.FindIndex(e => e.CellId == cell.CellId); if (couresponeCellIndex == -1) { continue; } BoardCellStruct couresponeCell = defaultBoardStructure[couresponeCellIndex]; FigureStructure?cellFigure = couresponeCell.Figure; if (cellFigure != null) { FigureStructure existCellFigure = (FigureStructure)cellFigure; GameObject spawnFigure = GetFigureByType(existCellFigure.CurrentType); if (spawnFigure != null) { cell.SpawnFigure(spawnFigure, existCellFigure); } } } }
public BoardCellStruct(BoardCellId cellId, BoardCellType cellType, FigureStructure figure) { CellId = cellId; CellType = cellType; Figure = figure; }