Разработка программы игры в "Кости"
Курсовой проект - Компьютеры, программирование
Другие курсовые по предмету Компьютеры, программирование
разработки, в которой в качестве языка программирования используется строго типизированный объектно-ориентированный язык Delphi, в основе которого лежит Object Pascal.
Система Delphi позволяет писать как крохотные программы и утилиты для персонального использования, так и корпоративные системы, работающие с базами данных на разных платформах, Интернет-решения и коммерческие игры, распределенный COM/CORBA/SOAP-приложения и всевозможные Web-службы. При этом обеспечивается совместимость приложений при выходе новых версий Delphi - как друг с другом на уровне исходных текстов, так и с модифицированными версиями стандартных протоколов и технологий благодаря библиотеке независимых и легко настраиваемых компонентов.
1. Разработка эскизного и технического проектов программы
В данной курсовой работе необходимо разработать развлекательную программу, представляющую собой игру. Область применения: досуг программиста. Поскольку ставится задача разработать приложение для Windows, то использоваться программа может только под управлением Windows 9х и выше.
Технические характеристики
Постановка задачи
Заданием на программу является разработка Windows - приложения, представляющего собой компьютерную игру Кости.
Правила игры: играющий называет любое число в диапазоне от 2 до 12 и ставку, которую он делает в этот ход. Программа с помощью датчика случайных чисел дважды выбирает числа от 1 до 6 (бросает кубик, на гранях которого цифры от 1 до 6).
Если сумма выпавших цифр меньше 7 и играющий задумал число меньшее 7, он выигрывает сделанную ставку.
Если сумма выпавших цифр больше 7 и играющий задумал число большее 7, он также выигрывает сделанную ставку.
Если играющий угадал сумму цифр, он получает в четыре раза больше очков, чем сделанная ставка.
Ставка проиграна, если не имеет место ни одна из описанных ситуаций.
В начальный момент у играющего 100 очков.
Дополнительным требованием к данной программе является необходимость вывода граней кубиков на экран.
Описание алгоритма
Для реализации игры необходимо разработать алгоритм работы программы. В данной работе алгоритм заключается в организации пользовательского интерфейса, позволяющего вводить ставку и число на которое ставится. Затем пользователь нажимает кнопку "Бросить". Здесь необходимо имитировать вращение кубиков с их последующей остановкой. После чего необходимо подсчитать количество очков.
Для вывода граней кубиков их сначала необходимо нарисовать в графическом редакторе. На рисунке 1 представлены нарисованные грани.
Рисунок 1 - грани кубиков.
Следует обратить внимание на то что объемность граней достигается двумя путями:
) нарисованные изображения имеют сложную цветовую насыщенность, за счет чего создается впечатление объемности;
) углы каждой грани закрашены цветом (черным), который в программе будет интерпретироваться как прозрачный.
Организация входных и выходных данных.
Входных данных у программы нет.
Выходными данными является совокупность отображаемой информации на экране персонального компьютера.
Выбор состава технических и программных средств.
Программа занимает 1 мб. жесткого диска. Программа функционирует под ОС Win95 и выше. Разрешение экрана не менее 800*600@256. Обязателен манипулятор типа Мышь.
Источники, использованные при разработке
При разработке использовалась литература по программированию, а также анализ характеристик программ - аналогов.
Разработка программы
Для разработки приложения игры Кости используется среда визуального программирования Delphi. Проект программы содержит три окна:
. Form1 - главное окно программы.
. FrmRules- окно, содержащее правила игры.
. AboutBox- окно, содержащее информацию о программе.
Окно Form1.
Для организации меню используется компонент tMainMenu. Текущий счет игры выводится в компонент tLabel. На панели (tPanel) находятся два поля ввода tSpinEdit, позволяющие вводить целые числа в нужном диапазоне. Кнопка "Бросить" (tBitBtn) запускает процесс игровой сессии.
Компонент tImageList представляет собой хранилище графических изображений одного размера. Кроме того, данный компонент инкапсулирует в себе набор методов по обработке графической информации. Например, в нем можно указать цвет, который будет считаться прозрачным при отображении.
Окно FrmRules
В данном окне находятся два компонента: tBitBtn и tRichEdit. TRichEdit позволяет хранить в себе текстовую информацию с форматированием.
Окно AboutBox
Данное окно является стандартным для Delphi и взято из депозитария.
В программе кроме сервисных функций только одна процедура. Она вызывается по нажатию кнопки "Бросить"
В начале процедуры проверяется допустимость введенных значений ставки и числа на которое пользователь поставил. Если хотя бы одно из чисел имеет недопустимое значение, то пользователю выдается соответствующее сообщение и процедура заканчивает свою работу.
Далее происходит цикл вращения кубиков. В этом цикле случайным образом выбираются два числа в диапазоне от 0 до 5, соответствующих индексам картинок граней. Затем вызывается процедура перерисовки экрана, в которой на форму выводится соответствующие грани. После окончания цикла вращения происходит суммирование очков на обоих кубиках. После чего это число сравнивается со ставкой пользователя. В конце процедуры в зависимости от того выиграл он или нет и