Справочник Жаркова по проектированию и программированию искусственного интеллекта. Том 8: Программирование на Visual C# искусственного интеллекта. Издание 2. Продолжение 1 - страница 30

Шрифт
Интервал


{

mode = GameMode.Push;

pot.DoPushBet();

showPot();

return;

}

}

void doLeftMenuKey()

{

switch (mode)

{

case GameMode.LoadingDisplay:

break;

case GameMode.PlacingBets:

startPlay();

break;

case GameMode.PlayerActive:

playerStays();

break;

case GameMode.PocketJack:

case GameMode.PlayerWon:

case GameMode.PlayerBust:

case GameMode.DealerActive:

case GameMode.DealerWon:

case GameMode.DealerBust:

case GameMode.Push:

startHand();

break;

}

}

void doEnter()

{

switch (mode)

{

case GameMode.LoadingDisplay:

break;

case GameMode.PlacingBets:

startPlay();

break;

case GameMode.PlayerActive:

playerHits();

break;

case GameMode.PocketJack:

case GameMode.PlayerWon:

case GameMode.PlayerBust:

case GameMode.DealerActive:

case GameMode.DealerWon:

case GameMode.DealerBust:

case GameMode.Push:

startHand();

break;

}

}

void doUp()

{

switch (mode)

{

case GameMode.PlacingBets:

pot.DoIncreaseBet();

showPot();

this.Invalidate();

break;

}

}


void doDown()

{

switch (mode)

{

case GameMode.PlacingBets:

pot.DoDecreaseBet();

showPot();

this.Invalidate();

break;

}

}

void showHelp()

{

helpForm.ShowDialog();

}

В панели Properties (для Form1) на вкладке Events дважды щёлкаем по имени события Load. Появившийся шаблон метода Form1_Load после записи нашего кода принимает следующий вид.

Листинг 1.2. Метод для загрузки файлов объектов.


private void Form1_Load(object sender, EventArgs e)

{

//We load the game objects:

init();

startGame();

}

В панели Properties (для Form1) на вкладке Events дважды щёлкаем по имени события Paint. Появившийся шаблон метода Form1_Paint после записи нашего кода принимает следующий вид. Напомним, что другие варианты вывода изображения, например, на элемент управления PictureBox и после щелчка по какому-либо элементу управления уже приводились ранее.

Листинг 1.3. Метод для рисования изображений.

private void Form1_Paint(object sender, PaintEventArgs e)

{

paintForm(e.Graphics);

}

Для задания режимов и управления игрой воспользуемся каким-либо элементом управления или компонентом. Как и выше, с панели инструментов Toolbox переносим на форму компонент MenuStrip и щёлкаем по нему (ниже формы в режиме проектирования). На форме Form1 появляются окна с надписью Type Here, в которые записываем команды (по второму варианту, можно записывать в панели Properties в свойстве Text): Stay, Menu, Exit, HitMe, BetPlus, BetMinus, Sound, Help, рис. 1.30. Для команды, слева от которой поставлен флажок, в панели Properties для этой команды значение Checked следует задать как True.