Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые обзорные » Розробка програми-ігри "Шашки"

Реферат Розробка програми-ігри "Шашки"





: Boolean; vcbChessMouseMove (Sender: TObject; Shift: TShiftState; X, Y: Integer); vcbChessMouseDown (Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); vcbChessMouseUp (Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); TrySelectNewDraught (x , y: Integer); TryMakeStrike (x, y: Integer); SwitchCurrentPlayer; CheckForWin: Integer;;: TfmCheckers; About;

{$ R *. dfm} TfmCheckers.miExitClick (Sender: TObject);;; TfmCheckers. FormCreate (Sender: TObject);: = TVisualChessBoard. Create (pnChessBoard);. Parent: = pnChessBoard;. Left: = 8;. Top: = 8;. Width: = 1200;. Height: = 1200;. OnMouseMove: = vcbChessMouseMove;. OnMouseDown: = vcbChessMouseDown;. OnMouseUp: = vcbChessMouseUp;. Refresh;; TfmCheckers. FormResize (Sender: TObject);: Integer; pnChessBoard. Width nil ThenvcbChess. Board. GetDraught (xP, yP). Side = PlayerSide Then. Cursor: = crHandPoint;; TfmCheckers.vcbChessMouseDown (Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);, yP: Integer; StrikeMode Then Exit;. GetCellNumberByCoord (X, Y, xP, yP); Not (IsDraughtChosen) Then// Якщо ще ні вибраної шашки

Begin (xP, yP); Begin// Якщо вже є обрана шашкаvcbChess. Board. GetDraught (xP, yP) = nil Then// Якщо клітка порожня, то опрацюємо як відпускання миші

vcbChessMouseUp (Sender, Button, Shift, X, Y);

Else Begin// Якщо там стоїть наша шашка, то скинемо вибір та рекурсіруем

If vcbChess. Board. GetDraught (xP, yP). Side = PlayerSide Then. Refresh;: = False; (Sender, Button, Shift, X, Y);;;;; TfmCheckers.vcbChessMouseUp (Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);, yP: Integer; , Strikes, Strickens: TList;. GetCellNumberByCoord (X, Y, xP, yP); IsDraughtChosen Then// Якщо є обрана шашка

Begin

// Перевіримо: чи можна в принципі зробити крок сюди

If vcbChess. Board. GetDraught (xP, yP) <> nil Then Exit;

// Клітка порожня

// Перевіримо правильність ходу в цю клітку

vcbChess. Board. FindMoves (DraughtPosition.X, DraughtPosition.Y, Moves, Strikes, Strickens); Strikes. Count = 0 Then// Ні рубки - намагаємося просто ходити

BeginCheckPosition (xP, yP, Moves)> = 0 Then// Хід вірний!. Board. MoveDraught (DraughtPosition.X, DraughtPosition.Y, xP, yP)...


Назад | сторінка 9 з 15 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Розробка технічної пропозиції на модернізацію конусної дробарки ККД-1200
  • Реферат на тему: Розробка цифрового тахометра, що вимірює в діапазоні від 1200 до 6000 об / ...
  • Реферат на тему: Розробка технологічного процесса прокатки на товстолістовому стані +1200 шо ...
  • Реферат на тему: Розробка дизельного двигуна потужністю 1200 кВт при номінальній частоті обе ...
  • Реферат на тему: Розробка програми гри в шашки