public void Awake() { _doCtrl = new controller.DoController(); _modelBoard = new model.SquareBoard(); _viewBoard = CreateSquareBoard(); _inputPad = CreateInputPad(); _situationBoard = CreateSituationBoard(); }
public void UpdateBoardValue(model.SquareBoard modelSquareBoard) { view.SquarePack targetPack = null; view.SquareCell targetCell = null; model.SquarePack modelPack = null; model.SquareCell modelCell = null; for (int i = 0; i < _squarePacks.Length; i++) { targetPack = _squarePacks[i]; modelPack = modelSquareBoard.SquarePack[i]; for (int j = 0; j < targetPack.SquareCells.Length; j++) { targetCell = targetPack.SquareCells[j]; modelCell = modelPack.SquareCells[j]; targetCell.UpdateCell(modelCell); } } }
public void MapSave(model.SquareBoard board) { model.StageData stageData = new model.StageData(); model.SquarePack targetPack = null; model.SquareCell targetCell = null; int column, row; for (int i = 0; i < board.SquarePack.Length; i++) { targetPack = board.SquarePack[i]; for (int j = 0; j < targetPack.SquareCells.Length; j++) { targetCell = targetPack.SquareCells[j]; column = targetCell.BoardCoorinate.column; row = targetCell.BoardCoorinate.row; stageData.cellDataList.Add(new model.CellData(column, row, targetCell.NumberValue)); } } string str = JsonUtility.ToJson(stageData, prettyPrint: true); Debug.Log(str); using (FileStream fs = new FileStream("Assets/Resources/stage1.json", FileMode.Create)) { using (StreamWriter writer = new StreamWriter(fs)) { writer.Write(str); writer.Close(); writer.Dispose(); } fs.Close(); fs.Dispose(); } }
public void UpdateBoardAim(model.SquareBoard modelSquareBoard) { view.SquarePack viewTargetPack = null; view.SquareCell viewTargetCell = null; model.SquarePack modelTargetPack = null; model.SquareCell modelTargetCell = null; bool isEqualValue; bool isEqualColumn; bool isEqualRow; bool isSelectCell; for (int i = 0; i < _squarePacks.Length; i++) { viewTargetPack = _squarePacks[i]; modelTargetPack = modelSquareBoard.SquarePack[i]; for (int j = 0; j < viewTargetPack.SquareCells.Length; j++) { viewTargetCell = viewTargetPack.SquareCells[j]; modelTargetCell = modelTargetPack.SquareCells[j]; isEqualValue = false; isEqualColumn = false; isEqualRow = false; isSelectCell = false; if (!modelTargetCell.IsOpenValue && (modelTargetCell.IsDuplicatePack || modelTargetCell.IsDuplicateColumn || modelTargetCell.IsDuplicateRow)) { viewTargetCell.UpdateTrim(Color.black, false, modelTargetCell.GetTextColor()); continue; } if (modelSquareBoard.SelectCell.BoardCoorinate.column == viewTargetCell.BoardCoorinate.column && modelSquareBoard.SelectCell.BoardCoorinate.row == viewTargetCell.BoardCoorinate.row) { viewTargetCell.UpdateTrim(Color.magenta, false, modelSquareBoard.SelectCell.GetTextColor()); isSelectCell = true; } if (isSelectCell) { continue; } for (int k = 0; k < modelSquareBoard.EqaulValueCells.Count; k++) { if (modelSquareBoard.EqaulValueCells[k].BoardCoorinate.column == viewTargetCell.BoardCoorinate.column && modelSquareBoard.EqaulValueCells[k].BoardCoorinate.row == viewTargetCell.BoardCoorinate.row) { viewTargetCell.UpdateTrim(Color.yellow, true, modelSquareBoard.EqaulValueCells[k].GetTextColor()); isEqualValue = true; break; } } if (isEqualValue) { continue; } for (int k = 0; k < modelSquareBoard.EqualColumnCells.Length; k++) { if (modelSquareBoard.EqualColumnCells[k].BoardCoorinate.column == viewTargetCell.BoardCoorinate.column && modelSquareBoard.EqualColumnCells[k].BoardCoorinate.row == viewTargetCell.BoardCoorinate.row) { viewTargetCell.UpdateTrim(Color.magenta, true, modelSquareBoard.EqualColumnCells[k].GetTextColor()); isEqualColumn = true; break; } } if (isEqualColumn) { continue; } for (int k = 0; k < modelSquareBoard.EqaulRowCells.Length; k++) { if (modelSquareBoard.EqaulRowCells[k].BoardCoorinate.column == viewTargetCell.BoardCoorinate.column && modelSquareBoard.EqaulRowCells[k].BoardCoorinate.row == viewTargetCell.BoardCoorinate.row) { viewTargetCell.UpdateTrim(Color.magenta, true, modelSquareBoard.EqaulRowCells[k].GetTextColor()); isEqualRow = true; break; } } if (isEqualRow) { continue; } viewTargetCell.UpdateTrim(Color.grey, false, modelTargetCell.GetTextColor()); } } }