예제 #1
0
 public void Constructor_MouseMove(object sender, MouseEventArgs e)
 {
     try
     {
         Point p = paper.ConvertToBitmapCoordinate(e);
         if (Lock == true)
         {
             MouseEventArgs newE = new MouseEventArgs(e.Button, e.Clicks, p.X, p.Y, e.Delta);
             if (group_selector.active == true)
             {
                 group_selector.MouseMove(sender, newE);
                 return;
             }
             foreach (Schematix.FSM.My_Figure figure in SelectedFigureList)
             {
                 figure.mouse_move(sender, newE);
             }
         }
         else
         {
             Schematix.FSM.My_Figure fig = bitmap.SelectElem(p);
             if (fig != null)
             {
                 if (SelectedFigure != null)
                 {
                     SelectedFigure.Selected = false;
                     fig.Selected            = true;
                     SelectedFigure.Select(bitmap.SelectedColor);
                     SelectedFigure = fig;
                     form.Invalidate();
                 }
                 else
                 {
                     SelectedFigure          = fig;
                     SelectedFigure.Selected = true;
                     SelectedFigure.Select(bitmap.SelectedColor);
                     form.Invalidate();
                 }
             }
             else
             {
                 if (SelectedFigure != null)
                 {
                     SelectedFigure.Selected = false;
                     SelectedFigure          = null;
                     form.Invalidate();
                 }
             }
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message, "Fatal Error :) (MouseMove)", MessageBoxButtons.OK, MessageBoxIcon.Information);
         return;
     }
 }
예제 #2
0
 public int SelectFigure(Position position)
 {
     if (MainController.Turn != Color)
     {
         return(MOVEMENT_DURING_OPPONENT_TURN_ERROR);
     }
     SelectedFigure = MainController.Board.GetFigure(position);
     if (SelectedFigure == null || SelectedFigure.Color != Color)
     {
         return(EMPTY_FIELD_ERROR);
     }
     SelectedFigure.SavePossibleMoves();
     return(TASK_COMPLETED);
 }