Esempio n. 1
0
 protected void UCBoard_Click(object sender, BoardEventArgs e)
 {
     if (this.BoardClick != null)
     {
         this.BoardClick(this, new BoardEventArgs(e.board));
     }
 }
Esempio n. 2
0
 protected virtual void OnBoardUpdated(BoardEventArgs e)
 {
     if (BoardUpdated != null)
     {
         BoardUpdated(this, e);
     }
 }
        void HandleSolutionComplete(object sender, EventArgs args)
        {
            BoardEventArgs boardArgs = (BoardEventArgs)args;

            Solutions = boardArgs.Boards;
            SetUpBoardForSolutions();
        }
Esempio n. 4
0
 private void model_BoardUpdated(object sender, BoardEventArgs e)
 {
     foreach (ICubeView view in cubeViews)
     {
         view.UpdateField(e.Board.GetField(view.GetField().x, view.GetField().y));
     }
 }
Esempio n. 5
0
        protected void BoardClick(object sender, BoardEventArgs e)
        {
            CardForm cf = new CardForm(e.board);

            cf.BtnBackClick += new EventHandler(ListForm_btnBackClick);
            cf.CardClick    += new EventHandler <CardEventArgs>(CardFrom_CardClick);
            OpenChildForm(cf);
        }
Esempio n. 6
0
    void GameEndedHandler(object sender, BoardEventArgs args)
    {
        //TODO: wait for move-animations to complete
        string message = (args.Won ? "Congratulations! " : "") + "Press SPACE to continue.";

        GV.SetCenterText(message);
        StartCoroutine(WaitForRestart());
    }
Esempio n. 7
0
        static void Game_Changed(object sender, BoardEventArgs e)
        {
            PrintBoard(e.CurrentBoard);

            if (!string.IsNullOrEmpty(e.Message))
            {
                System.Console.WriteLine(e.Message);
            }
        }
Esempio n. 8
0
    protected virtual void DebugMessage(string message)
    {
        var handler = DebugMessageEvent;

        if (handler != null)
        {
            var args = new BoardEventArgs
            {
                Message = message
            };
            handler(null, args);
        }
    }
Esempio n. 9
0
    protected virtual void OnGameEnded()
    {
        var handler = GameEnded;

        if (handler != null)
        {
            var args = new BoardEventArgs
            {
                Won = this.Won
            };
            handler(null, args);
        }
    }
Esempio n. 10
0
    protected virtual void OnRoundCompleted()
    {
        var handler = RoundCompleted;

        if (handler != null)
        {
            var args = new BoardEventArgs
            {
                RoundsCompleted = this.CompletedRounds
            };
            handler(null, args);
        }
    }
Esempio n. 11
0
        protected void game_BoardUpdated(object sender, BoardEventArgs args)
        {
            var latestMove = args.LatestDiscPosition;

            var discColor = _discColorManager.GetDiscColor(args.LatestDiscPosition.PlayerInitialLetter);

            var message = string.IsNullOrEmpty(args.Message)
                              ? string.Empty
                              : string.Concat(DateTime.Now.ToShortTimeString(),
                                              ": ",
                                              args.Message);

            Clients.All.addDisc(
                Context.ConnectionId,
                latestMove.X,
                latestMove.Y,
                latestMove.PlayerInitialLetter,
                discColor,
                message);
        }
Esempio n. 12
0
        private void BoardChangeOnBoardChanged(object sender, BoardEventArgs boardEventArgs)
        {
            var pages = boardEventArgs.Pages.ToList();

            _visiblePageCount = pages.Count;
            var pageIndex = 0;

            while (pageIndex < _visiblePageCount) //visible page control
            {
                var pageControl = _pages[pageIndex];
                var page        = pages[pageIndex];
                pageControl.Visibility = Visibility.Visible;
                pageControl.PageModel  = page;
                pageIndex++;
            }
            while (pageIndex < _pages.Count) //collapsed page control
            {
                var pageControl = _pages[pageIndex];
                pageControl.Visibility = Visibility.Collapsed;
                pageIndex++;
            }
        }
Esempio n. 13
0
        private void boardControl_ClickingField(object sender, BoardEventArgs e)
        {
            int clickedHorizontal = e.FieldCoordinates.Horizontal;
            int clickedVertical   = e.FieldCoordinates.Vertical;

            //doing movement
            int rememberedPlayerNumber = engine.PlayerNumberMakingNextMove;

            if (engine.PutStone(clickedHorizontal, clickedVertical))
            {
                AgreeBoardContent();

                //list of moves
                switch (rememberedPlayerNumber)
                {
                case 1: listOfMoveGreen.Items.Add(FieldBadge(clickedHorizontal, clickedVertical));
                    break;

                case 2: listOfMoveBrown.Items.Add(FieldBadge(clickedHorizontal, clickedVertical));
                    break;
                }
                listOfMoveGreen.SelectedIndex = listOfMoveGreen.Items.Count - 1;
                listOfMoveBrown.SelectedIndex = listOfMoveBrown.Items.Count - 1;
            }

            //special situation
            SituationOnBoard situationOnBoard = engine.InspectSituationOnBoard();
            bool             gameOver         = false;

            switch (situationOnBoard)
            {
            case SituationOnBoard.BieżącyGraczNieMożeWykonaćRuchu:
                MessageBox.Show("Gracz " + playersNames[engine.PlayerNumberMakingNextMove] + " zmuszony jest do oddania ruchu");
                engine.Pass();
                AgreeBoardContent();
                break;

            case SituationOnBoard.ObajGraczeNieMogąWykonaćRuchu:
                MessageBox.Show("Obaj gracze nie mogą wykonać ruchu");
                gameOver = true;
                break;

            case SituationOnBoard.WszystkiePolaPlanszyZajęte:
                gameOver = true;
                break;
            }

            if (gameOver)
            {
                int winnerNumber = engine.PlayerNumberWithAdvantage;
                if (winnerNumber != 0)
                {
                    MessageBox.Show("Wygrał gracz " + playersNames[winnerNumber], Title, MessageBoxButton.OK, MessageBoxImage.Information);
                }
                else
                {
                    MessageBox.Show("Remis", Title, MessageBoxButton.OK, MessageBoxImage.Information);
                }
                if (MessageBox.Show("Czy rozpocząć grę od nowa?", "Reversi", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
                {
                    PrepareBoardToNewGame(1, engine.BoardWidth, engine.BoardHeight);
                }
                else
                {
                    boardControl.IsEnabled      = false;
                    buttonPlayerColor.IsEnabled = false;
                }
            }
            else
            {
                if (_gameAgainstComputer && engine.PlayerNumberMakingNextMove == 2)
                {
                    if (timer == null)
                    {
                        timer          = new DispatcherTimer();
                        timer.Interval = new TimeSpan(0, 0, 0, 0, 300);
                        timer.Tick    += (_sender, _e) => { timer.IsEnabled = false; MakeTheBestMove(); };
                    }
                    timer.Start();
                }
            }
        }
Esempio n. 14
0
 void RoundCompletedHandler(object sender, BoardEventArgs args)
 {
     GV.SetRoundsCompleted(args.RoundsCompleted);
 }
Esempio n. 15
0
    // --- Event Handlers ---

    void ThingMovedHandler(object sender, BoardEventArgs args)
    {
        GV.UpdateThing(args.ThingId, args.NewPosFace);
    }
Esempio n. 16
0
 void DebugMessageHandler(object sender, BoardEventArgs args)
 {
     Debug.Log(args.Message);
 }
Esempio n. 17
0
        /**
         * Jede Änderungen auf dem Board wird durch diese Methode verarbeitet
         */
        public void OnBoardChanged(object sender, BoardEventArgs bea)
        {
            Dispatcher.BeginInvoke(delegate
            {
                if (iv.rootContainer.Child == this)
                {
                    Color[,] data = bea.boardData;
                    if (bea.removedLines.Count > 0)
                    {
                        if (mod == 3)
                        {
                            animBoardRotate.To = animBoardRotate.To + 180;
                            boardRotateSB.Begin();
                        }
                        if (hardFall)
                        {
                            animateRemovedLinesHard(bea.removedLines);
                        }
                        else
                        {
                            animateRemovedLinesSoft(bea.removedLines);
                        }
                    }
                    foreach (FrameworkElement frameWorkElement in boardGrid.Children)
                    {
                        Rectangle rect         = (Rectangle)frameWorkElement;
                        int x                  = Grid.GetColumn(frameWorkElement);
                        int y                  = Grid.GetRow(frameWorkElement);
                        Color currentCellColor = data[x, y];

                        if (currentCellColor == boardModel.getBoardColor())
                        {
                            rect.Fill = new SolidColorBrush(Colors.Transparent);
                        }
                        else if (currentCellColor == boardModel.getFallenPreviewColor())
                        {
                            rect.Fill = getBrushByColor(boardModel.getFallenPreviewColor());
                        }
                        else
                        {
                            rect.Fill = getBrushByColor(currentCellColor);
                        }
                    }
                    Util.Point[] previewPoints = boardModel.getPreviewFigure().getPoints();

                    List <Rectangle> previewRectangles = getPreOrMemBoardRectangles(previewPoints, previewGrid);

                    foreach (FrameworkElement frameWorkElement in previewGrid.Children)
                    {
                        Rectangle rect = (Rectangle)frameWorkElement;
                        rect.Fill      = new SolidColorBrush(Colors.Transparent);
                    }

                    Color currentPreviewFigureColor = boardModel.getPreviewFigure().getColor();
                    foreach (Rectangle rect in previewRectangles)
                    {
                        rect.Fill = getBrushByColor(currentPreviewFigureColor);
                    }

                    if (boardModel.getMemoryFigure() != null)
                    {
                        clearMemoryBoard();
                        Util.Point[] memoryPoints         = boardModel.getMemoryFigure().getPoints();
                        List <Rectangle> memoryRectangles = getPreOrMemBoardRectangles(memoryPoints, memoryGrid);
                        Color currentMemoryFigureColor    = boardModel.getMemoryFigure().getColor();
                        foreach (Rectangle rect in memoryRectangles)
                        {
                            rect.Fill = getBrushByColor(currentMemoryFigureColor);
                        }
                    }
                }
            });
        }
Esempio n. 18
0
 protected virtual void OnRepaintRequired(BoardEventArgs e)
 {
     if (RepaintRequiredEvent != null)
         RepaintRequiredEvent(this, e);
 }
        private void ChessService_MoveCompleted(object sender, BoardEventArgs e)
        {
            if (e.Error == null)
            {
                this.View.DrawBoard(e.Board);

                if (this.lastMoveWasMadeByHuman)
                {
                    this.lastMoveWasMadeByHuman = false;
                    this.chessService.MoveAsync(null, null);
                }
            }
        }