public void UndoStackPush(model.BoardCoordinate boardCoordinate, int previusNumber, int currentNumber, bool isPreviusMemo, bool isCurrentMemo, int[] previusMemo, int[] currentMemo)
        {
            model.Do previus = new model.Do(previusNumber, isPreviusMemo, previusMemo);
            model.Do current = new model.Do(currentNumber, isCurrentMemo, currentMemo);

            model.DoAction undo = new model.DoAction(boardCoordinate, previus, current);
            _doCtrl.UndoPush(undo);
        }
Beispiel #2
0
        public DoAction SwapDoAction()
        {
            int[] previusMemoArr = new int[this.previus.memoArray.Length];
            int[] currentMemoArr = new int[this.current.memoArray.Length];
            System.Array.Copy(this.previus.memoArray, previusMemoArr, this.previus.memoArray.Length);
            System.Array.Copy(this.current.memoArray, currentMemoArr, this.current.memoArray.Length);

            model.Do previus = new model.Do(this.previus.number, this.previus.isMemoMode, previusMemoArr);
            model.Do current = new model.Do(this.current.number, this.current.isMemoMode, currentMemoArr);

            model.DoAction doAction = new model.DoAction(this.boardCoordinate, current, previus);

            return(doAction);
        }