int numTurns; // номер текущего хода
int Table[Width][Width]; // массив игрового поля с положением шариков
void SetColor(cTurn thisTurn); // функция замены цвета шариков для текущего хода
//thisTurn
int CanMoveTo(int x,int y,int player); // функция проверки возможности хода на клетку с
//координатами x,y текущим игроком player
public:
cReversi(); //конструктор
void NewGame(); //функция создания новой игры
int SaveGame(char *FileName); //функция сохранения игры
int LoadGame(char *FileName); //функция загрузки игры
int getPlayer(int x,int y); //функция определения владельца шарика, стоящего на
// координатах x,y
bool isGameOver(); //функция окончания игры при невозможности совершения
//хода ни одним из игроков
void Move(int x,int y,int player); //запись хода
int GetMoveTable(int player,int xs[Width][Width]); //создания массива возможных ходов
//xs, игрока player, возвращает количество возможных ходов
int GetNum(int player); // функция подсчета шариков игрока player
cTurn GetTurn(int index); // функция получения информации о ходе № index
void SetTurn(int index); // функция установки хода № index
int GetNumTurns(); // функция, возвращающая номер текущего хода
};
class TForm1 : public TForm //класс главного окна
{
__published: // IDE-managed Components
TMainMenu *MainMenu1;
TMenuItem *Game1;
TMenuItem *N1;
TMenuItem *N2;
TMenuItem *N3;
TMenuItem *N4;
TMenuItem *N7;
TMenuItem *N8;
TMenuItem *N9;
TGroupBox *GroupBox1;
TGroupBox *GroupBox2;
TLabel *Label1;
TLabel *Label2;
TListBox *ListBox1;
TPaintBox *PaintBox1;
TImage *RedC;
TImage *BlueC;
TOpenDialog *OpenDialog1;
TSaveDialog *SaveDialog1;
TImage *ImageFrame;
TImage *ImageFon;
TMenuItem *N5;
TOpenDialog *OpenDialog2;
void __fastcall FormClose(TObject *Sender, TCloseAction &Action);
void __fastcall N4Click(TObject *Sender);
void __fastcall N1Click(TObject *Sender);
void __fastcall PaintBox1Click(TObject *Sender);
void __fastcall PaintBox1Paint(TObject *Sender);
void __fastcall PaintBox1MouseMove(TObject *Sender,
TShiftState Shift, int X, int Y);
void __fastcall ListBox1DblClick(TObject *Sender);
void __fastcall N2Click(TObject *Sender);
void __fastcall N3Click(TObject *Sender);
void __fastcall FormCreate(TObject *Sender);
void __fastcall N8Click(TObject *Sender);
void __fastcall N9Click(TObject *Sender);
void __fastcall N5Click(TObject *Sender);
private: // User declarations
void __fastcall ReBuildList();
void __fastcall CheckGame();
public: // User declarations
__fastcall TForm1(TComponent* Owner);
};
Основные фрагменты кода программы:
// функция начала новой игры
void __fastcall TForm1::N1Click(TObject *Sender)
{
Game.NewGame();
player=0;
Game.GetMoveTable(player,movs);
Label2->Caption="Красный";
PaintBox1->Repaint();
ReBuildList();
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.