Разработка компьютерной игры

Разработка программы "Быки и коровы", предназначенной для развития логики и смекалки. Требования к программным, техническим параметрам персональных компьютеров. Требования техники безопасности и охраны труда при эксплуатации программы, методика испытаний.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 06.01.2017
Размер файла 1,8 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://allbest.ru

ВВЕДЕНИЕ

программа компьютер логика

В настоящее время игры являются неотъемлемой частью жизни подростков, в том числе и логические. Логические игры используются для развития и развлечения детей. Игры набирают все большую популярность. Соревнования по киберспорту (компьютерным играм) собирают зрителей по количеству равных футбольным матчам. Постоянно проходят выставки игр. Самой популярной из них является Electronic Entertainment Expo (E3). В частности, логические игры имеют большую популярность и существуют целые компании, основной целью которых является разработка логических игр.

Поэтому актуально разработка компьютерной игры «Быки и коровы», которая развивает логику, работу с числами и смекалку.

Данную игру необходимо автоматизировать, так как вручную реализация игры довольно трудоемкая и получать удовольствие и развивать логику проблематично и неудобно.

Пояснительная записка к курсовому проекту состоит из следующих разделов:

- введение;

- постановка задачи;

- описание программы;

- описание применения;

- руководство программиста;

- руководство пользователя;

- программа и методика испытаний;

- заключение.

Во введении содержится оценка актуальности разработки программы и область ее применения.

В разделе «Постановка задачи» определены требования к программе.

В разделе «Описании программы» содержатся общие сведения о программе, входные и выходные данные и структура программы.

В разделе «Описания применения» содержатся сведения о рабочем месте, где будет эксплуатироваться разработанная программа, а также правила техники безопасности при работе с программой.

В разделе «Руководство программиста» определены характеристики программы, дополнительные возможности и сообщение программисту.

В разделе «Руководство пользователя» описаны условия для выполнения данной программы, само выполнения программы.

В разделе «Программы и методики испытаний» содержаться данные о тестирования программы.

В заключении описаны выводы по результатам курсового проекта.

1. ПОСТАНОВКА ЗАДАЧИ

В процессе курсового проектирования необходимо разработать программу «Быки и коровы», которая будет предназначена для развития логики и смекалки.

Заказчиком данной программы является сотрудник развивающего центра.

Входными данными для разрабатываемой программы должны являться:

- имя игрока;

- целочисленные значения.

Выходными данными программы должен являться результат игры, в котором должны отображаться заработанные игроком очки и потраченное время на партию.

Постановщик задачи поставил следующие требования программисту, которые необходимо реализовать в программе:

- ввод имени пользователя;

- выбор режима игры;

- вывод результата на экран;

- вывод на экран предупреждающих сообщений об ошибках;

- вывод на экран таблицы рекордов.

Основное назначение программы:

- развитие логики и смекалки;

- развитие работы с числами;

- получение удовольствия.

Для работы данной программы необходимы следующие требования к программным и техническим параметрам персональных компьютеров:

- центральный процессор Intel Core 2 Duo c тактовой частотой 2.30 МГц или более;

- цветной видеоадаптер SVGA, поддерживающий разрешение 1024х768;

- цветной 15-ти дюймовый монитор SVGA, поддерживающий разрешение 1024x768;

- 124 Мб оперативной памяти;

- 100 Мб свободного места на жестком диске;

- клавиатура, манипулятор типа «мышь»;

- операционная система Windows 7 и выше.

2. ОПИСАНИЕ ПРОГРАММЫ

2.1 Общие сведения

Наименование программы: «Быки и коровы».

Автором программы является Гресько Л.Л., учащийся группы Пк-32.

Для написания программы был выбран язык программирования С#. Главной особенностью языка С# является его ориентированность на платформу Microsoft.NET - создатели С# ставили своей целью предоставление разработчикам естественных средств доступа ко всем возможностям платформы .NET. Данный язык программирования имеет в своем составе группу уже готовых компонентов, предъявляемых для использования их при разработке программы. Также, при разработке программы следует опираться на следующие параметры: необходимый объем жесткого диска, рекомендуемое разрешение экрана и объема оперативной памяти. Выбор обосновался еще тем, что разработка курсового проекта по дисциплине «Конструирование программ и языки программирования» должна быть выполнена на языке программирования С#.

Постановщиком задачи является сотрудник центра развития.

Постановщик задачи поставил следующие требования программисту, которые необходимо реализовать в программе:

- ввод имени пользователя;

- выбор режима игры;

- вывод результата на экран;

- вывод на экран предупреждающих сообщений об ошибках;

- вывод на экран таблицы рекордов.

Главной задачей данной программы является развитие логики и смекалки.

Эта программа должна корректно работать с данными в соответствии с алгоритмом, выдавать сообщения об ошибках, в удобном для пользователя диалоговом режиме принимать исходные данные. Программа «Быки и коровы» должна упростить методику развития смекалки и логики. Данная программа предназначена для сотрудника развивающего центра. Текст программы представлен в приложении А. Укрупненный алгоритм функционирования программы представлен в виде диаграммы вариантов использования в приложении Б. Для успешного функционирования и работы данной программы необходимы следующие аппаратные и программные средства:

- центральный процессор Intel Core 2 Duo c тактовой частотой 2.30 МГц или более;

- цветной видеоадаптер SVGA, поддерживающий разрешение 1024х768;

- цветной 15-ти дюймовый монитор SVGA, поддерживающий разрешение 1024x768;

- 124 Мб оперативной памяти;

- 100 Мб свободного места на жестком диске;

- клавиатура, манипулятор типа «мышь»;

- операционная система Windows 7 и выше;

- распространяемый пакет обновления C/С++.

Периодичность использования программы определяется ее функциональностью и необходимостью использования.

2.2 Структура программы

Результаты игр хранятся в таблице базы данных, структура которой представлена в таблице 2.1.

В ходе разработки программы были реализованы следующие процедуры:

- public void changelabel(bool change) - изменение уведомления об активном пользователе (PvP-режим);

- public int calculate_points(int points) - изменение количества очков;

Таблица 2.1 - Структура таблицы «result»

Наименование

Тип

Описание

Id_game

Счетчик

Номер игры

Player_name

Текстовый

Имя игрока

Points

Числовой

Количество очков

Time

Числовой

Потраченное время, с

- public void check_win(int countbulls,bool numplayer) - проверка на победу;

- public void NewGame() - создание новой игры;

- public bool CheckSymbols(string textbox,int text_length) - проверка введенной строки на правильность;

- public void SecretNumber() - создание секретного числа компьютером;

- public void IsMatch(string susernumber, bool numberplayer,string Ssecretnum) - нахождение совпадений;

- private void выйтиToolStripMenuItem_Click(object sender, EventArgs e) - выход из программы;

- private void button1_Click(object sender, EventArgs e) - проверка результат «PvE» режим;

- private void новаяИграToolStripMenuItem_Click(object sender, EventArgs e) - событие на создание новой игры;

- private void timer1_Tick(object sender, EventArgs e) - счетчик времени 1 игрока;

- private void timer2_Tick(object sender, EventArgs e) - счетчик времени 2 игрока;

- private void button2_Click(object sender, EventArgs e) - ввод имени 1 игрока;

- private void таблицаРезультатовToolStripMenuItem_Click(object sender, EventArgs e) - вывод таблицы результатов;

- private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) - выбор режима;

- private void button4_Click(object sender, EventArgs e) - ввод имени 2 игрока;

- private void button3_Click(object sender, EventArgs e) - ввод секретного числа пользователем.

- private void button5_Click(object sender, EventArgs e) - проверка на совпадения;

- private void button1_Click(object sender, EventArgs e) - закрытие таблицы результатов.

2.3 Входные и выходные данные

Входными данными программы являются:

- целое четырехзначное число;

- имя пользователя;

В результате работы программы выводится результат партии.

2.4 Вызов и загрузка

Для запуска программы необходимо в папке с программой выделить файл приложения «bullsandcaws.exe» и запустить его нажатием клавиши <Enter> на клавиатуре или двойным щелчком левой кнопки мыши.

Для работы в диалоговом режиме используется экран дисплея, клавиатура и манипулятор типа «мышь». Занесенные данные хранятся на жестком диске в базе данных.

3. ОПИСАНИЕ ПРИМЕНЕНИЯ

Программа «Быки и коровы» предназначена для развития логики и смекалки, развития работы с числами.

Данная программа реализуется как самостоятельное приложение, но не исключена возможность дальнейшего расширения ее модулей.

3.1 Требования техники безопасности и охраны труда при эксплуатации программы

При эксплуатации программы необходимо соблюдать правила техники безопасности и охраны труда при работе на ПК:

- продолжительность непрерывной работы на ПК не должна превышать:

- для несовершеннолетних - 25 минут с 10 - минутным перерывом, для

взрослых - 30 минут с 10 - минутным перерывом;

- общая продолжительность работы за компьютером не должна превышать в день: для несовершеннолетних - не более 3-х часов, для взрослых - не более 4-х часов;

- не допускать попадания внутрь компьютера металлических предметов, воды;

- не допускать чрезмерного накопления пыли внутри компьютера, своевременно проводя работы по техническому обслуживанию;

- не подключать и не отключать интерфейсные кабели при включенном электропитании;

- не ставить на компьютер тяжелые предметы.

Основной опасностью при работе на ПК является поражение электрическим током, которое может произойти при неисправности ПК или не соблюдении требований техники безопасности. Во избежание опасности поражения электрическим током, обязательными для выполнения являются следующие правила техники безопасности:

- работать с компьютером, если поврежден сетевой кабель;

- не касаться частями тела экрана или тыльной стороны монитора, а также питающих проводов;

- пользоваться открытым огнем при работе на ПК;

- вынимая вилку, держаться за вилку, а не за кабель. Не касаться вилки влажными руками;

- полное обесточивание компьютера возможно только при отключении шнура питания от электрической розетки. Поэтому доступ к ней должен быть всегда открыт.

Немедленно отключите компьютер от электрической сети, если:

- появился огонь, дым, необычный звук или запах;

- поврежден сетевой кабель, разъем или розетка;

- внутрь компьютера попала вода или металлический предмет.

Жизненно важным для повышения работоспособности пользователя и сохранения его здоровья, является правильная организация рабочего места пользователя. Кроме того, выбор места важен для надежной работы компьютера и сопряженного с ним оборудования. Требования, предъявляемые к организации и оборудованию автоматизированных рабочих мест:

- компьютер предназначен для эксплуатации в закрытых отапливаемых помещениях с низкой запыленностью, в которых не должно возникать условий для конденсации влаги;

- размеры (площадь, объем) помещения должны соответствовать количеству работающих и размещаемому в них комплексу технических средств;

- планировка рабочего места должна удовлетворять требованиям удобства выполнения работ, экономии энергии и времени, рационального

- использования производственных площадей и удобства обслуживания устройств ПК, соблюдения охраны труда;

- при небольшом количестве рабочих предпочтение следует отдавать расстановке ПК у стены, противоположной оконным проемам;

- конструкция рабочей мебели (столы, кресла и стулья) должна обеспечивать возможность индивидуальной регулировки соответственно росту работающего и создать условия для удобства при работе. Рабочий стол должен регулироваться по высоте в пределах 0.68 - 0.76 м. Наиболее оптимальным размером рабочей поверхности стола является - 1.6х0.9 м. Под ней должно быть свободное пространство для ног с размерами по высоте - не менее 0.6 м от пола, по ширине - 0.5 м, по глубине - 0.65 м;

- в помещении температура воздуха должна составлять 19-21 0С, относительная влажность воздуха 55-56%, скорость движения воздуха не более 0.2 м/с;

- уровни звука не должны превышать 50 ДБ. Учитывая, что основным источником шума является принтер и принимая во внимание повсеместное использование практически бесшумных струйных принтеров, этого требования достичь не трудно.

3.2 Энерго- и ресурсосбережение

Отдельное внимание необходимо уделить энерго- и ресурсосбережению. Снизить уровень энерго- и ресурсопотребления возможно за счет наукоемкостных энерго- и ресурсосберегающих технологий.

Одним из направлений снижения энергопотребления является использование жидкокристаллических мониторов.

Также по окончанию работы на ПК необходимо полностью выключать и отключать от сети компьютер, монитор, оргтехнику, такую как принтеры, сканеры, ксероксы. В режиме ожидания, по мнению специалистов, компьютер оставлять не следует, так как он потребляет электроэнергию.

Есть ещё много путей, с помощью которых можно снизить энергопотребление. К ним можно отнести такие пути как использование последних моделей процессоров, чипов и т.д.

Энергосбережение (экономия энергии) - реализация правовых, организационных, научных, производственных, технических и экономических мер, направленных на эффективное (рациональное) использование (и экономное расходование) топливно-энергетических ресурсов и на вовлечение в хозяйственный оборот возобновляемых источников энергии. Энергосбережение -- важная задача по сохранению природных ресурсов.

По статистике, при работе в типичных офисных приложениях процессор современного компьютера использует всего лишь 5% своей мощности. Остальные 95% требуются только для "тяжелых" задач - сложных математических вычислений, работы с видеоматериалами или современных трехмерных игр. И если потребление энергии процессором постоянно остается максимальным - это означает, что большая часть ее расходуется впустую, и впустую же выделяется большая часть тепла, образующегося при работе процессора.

Компьютер потребляет до 400-500 Вт мощности, выключение монитора позволяет экономить до 100-200 Вт. Не стоит оставлять его включенным на длительное время, если вы за ним не работаете. Неиспользуемый 2 часа компьютер даже в «спящем режиме» потребляет 200-300 Вт, за месяц это порядка 12 кВт·ч.

Периферийные устройства (принтеры и сканеры) рекомендуется всегда выключать, если они не используются. Это позволит сэкономить еще порядка 2-3 кВт·ч за месяц.

Чтобы работа была комфортной и безопасной необходимо позаботиться об аппаратном оборудовании компьютера. Как правило, наибольший вред здоровью пользователя компьютера наносят устройства ввода-вывода: монитор, клавиатура, мышь.

Таким образом, использование энергосберегающих технологий приводит к снижению влияния вредных факторов на человека и стоимости программных продуктов, что в свою очередь повышает их конкурентоспособность.

4. РУКОВОДСТВО ПРОГРАММИСТА

4.1 Характеристика программы

В течение курсового проекта была разработана программа «Быки и коровы».

Данная программа предназначена для развития смекалки и логики.

Данная программа выполняет следующие функции:

- развитие логики и смекалки;

- развитие работы с числами;

- получение удовольствия.

Для работы программы, не требуется какой - либо особенной конфигурации компьютера. Для корректной работы программы и выполнения всех ее функций необходима следующая конфигурация технических средств аппаратного обеспечения:

- центральный процессор Intel Core 2 Duo c тактовой частотой 2.30 МГц или более;

- цветной видеоадаптер SVGA, поддерживающий разрешение 1024х768;

- цветной 15-ти дюймовый монитор SVGA, поддерживающий разрешение 1024x768;

- 124 Мб оперативной памяти;

- 100 Мб свободного места на жестком диске;

- клавиатура, манипулятор типа «мышь»;

- операционная система Windows 7 и выше;

- распространяемый пакет обновления C/С++.

4.2 Обращение к программе

Работа программы начинается с запуска файла «bullsandcaws.exe», который находится в папке с программой.

Никаких ограничений и требований на режим работы и запуска программы не налагается.

Для решения задачи предлагаются следующие входные данные:

- имя игрока;

- целое четырехзначное число.

4.3 Сообщение программисту

Визуально работоспособность программы программист может проверить следующим способом:

- при запуске программы на экране монитора появляется главное окно программы;

- при щелчке по пунктам меню происходят соответствующие действия;

- выдаются все предупреждения и сообщения об ошибках.

Для начала работы с программой, необходимо запустить файл приложения «bullsandcaws.exe», после чего откроется диалоговое окно, представленное на рисунке 4.1.

Рисунок 4.1 - Основное окно программы

При отсутствии распространяемого пакета обновления VS2010 на экране появится сообщение об ошибке, представленное на рисунке 4.2

Рисунок 4.2- Сообщение об ошибке

Для устранения данной ошибки необходимо установить пакет обновлений VS2010.

5. РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ

В процессе курсового проектирования была разработана программа «Быки и коровы».

Данная программа предназначена для развития логики и смекалки.

Программа имеет удобный интерфейс, что позволяет без подготовки использовать программу.

Основанием для разработки программы является задание курсовой проект по дисциплине «Конструирование программ и языки программирования».

Входные данные:

- имя пользователя;

- четырехзначное целочисленное значение.

Выходные данные:

- имя победителя;

- результат игры.

Программа разрабатывалась с учетом всех особенностей современных ПК, поэтому для её работы не требуется какой-либо особенной конфигурации компьютера. Для корректной работы программы и выполнения всех ее функций необходимо отметить ряд следующих требований, предъявляемых к конфигурации аппаратного обеспечения, и установленному на нём программному обеспечению:

- центральный процессор Intel Core 2 Duo c тактовой частотой 2.30 МГц или более;

- цветной видеоадаптер SVGA, поддерживающий разрешение 1024х768;

- цветной 15-ти дюймовый монитор SVGA, поддерживающий разрешение 1024x768;

- 124 Мб оперативной памяти;

- 100 Мб свободного места на жестком диске;

- клавиатура, манипулятор типа «мышь»;

- операционная система Windows 7 и выше.

Для начала работы с программой, необходимо запустить файл приложения bullsandcaws.exe, после чего откроется основное окно программы, в котором нужно ввести имя 1 игрока на форме, которая представлена на рисунке 5.1.

Рисунок 5.1 - Основное окно программы

Для игры в режиме PvE нужно ввести имя 1 игрока, форма режима PvE, после ввода имени, представлена на рисунке 5.2.

Рисунок 5.2 - Форма режима PvE

Для игры в режиме PvP режиме нужно выбрать параметр «PvP» в выпадающем списке, после чего откроется форма ввода имени 2 игрока, которая представлена на рисунке 5.3.

Рисунок 5.3 - Форма ввода имени 2 игрока

После ввода имени 2 игрока, открывается форма с вводом секретных чисел, сначала 1 игрока, затем 2, данная форма представлена на рисунке 5.4

Рисунок 5.4 - Форма ввода секретного числа

После ввода секретных чисел, оба игрока по очереди разгадывают числа друг друга, при этом каждый игрок имеет свои очки и время потраченное на разгадывание числа, форма с разгадыванием чисел представлена на рисунке 5.5

Рисунок 5.5 - Форма разгадывания чисел

На рисунке 5.6 представлена форма вывода результатов игры.

Рисунок 5.6 - Форма вывода результата

Все победители добавляются в таблицу рекордов, которую можно просмотреть, нажав кнопку «Таблица результатов», форма таблицы результатов представлена на рисунке 5.7

Рисунок 5.7 - Таблица результатов

Начать новую игру, независимо от режима можно нажав кнопку «Новая игра», результат работы этой кнопки представлен на рисунке 5.8.

Рисунок 5.8 - Результат работы кнопки «Новая игра»

Для выхода из программы необходимо нажать кнопку «Выйти».

6. ПРОГРАММА И МЕТОДИКА ИСПЫТАНИЙ

Объектом испытания является программа «Быки и коровы». Данная программа предназначена для развития логики и смекалки.

Тестирование программы осуществлялось на компьютере со следующими параметрами:

- процессор Intel(R) Core 2 Quad(R) CPU B950 @ 2.32 GHz 2.32 GHz;

- цветной видеоадаптер SVGA, поддерживающий разрешение 1366x768;

- цветной монитор SVGA, поддерживающий разрешение 1366x768;

- установленная память (ОЗУ) 4,00 ГБ;

- тип системы: 64-разрядная операционная система;

- манипулятор типа «мышь» клавиатура.

- операционная система Windows 10.

6.1 Средства и порядок испытаний

Чтобы запустить программу, выделяем в папке с программой, файл приложения «bullsandcaws.exe» и нажимаем кнопку «Enter». После нажатия этой кнопки на экране появляется главное окно программы. Для начала работы с программой нужно зарегистрировать имя игрока на форме, представленной на рисунке 6.1

Рисунок 6.1 - Основное окно программы

Для проверки ввода введем вместо целого четырехзначного числа слово «мясо», мы получим сообщение об ошибке ввода, которое представлено на рисунке 6.2

Рисунок 6.2 - Сообщение об ошибке ввода

Теперь будем вводить числа до тех пор, пока не разгадаем загаданное число, результат игры представлен на рисунке 6.3

Рисунок 6.3 - Результат игры

После игры результат заносится в таблицу рекордов, в которой можно найти результат игры, представленной на рисунке 6.3, позиция нашего результата представлена на рисунке 6.4.

Рисунок 6.4 - Таблица результатов

Для того чтобы поменять режим игры, необходимы выбрать один из пунктов в выпадающем списке, который представлен на рисунке 6.5

Рисунок 6.5 - Выпадающий список

Для игры в режиме «PvP» необходимо ввести имя 2 игрока, форма ввода представлена на рисунке 6.6.

Рисунок 6.6 - Форма ввода имени 2 игрока

После ввода обоими игроками секретных чисел идет процесс разгадывания, идентичный режиму «PvE», представленному на рисунках 6.1-6.3.

В процессе тестирования программы никаких ошибок при действиях пользователя не возникало. Таким образом можно сделать вывод о ее полной работоспособности.

ЗАКЛЮЧЕНИЕ

В ходе курсового проектирования была разработана программа «Быки и коровы».

В программе реализовано выполнение следующих функций: ввод имени пользователя, выбор режима игры, вывод результата на экран, вывод на экран предупреждающих сообщений об ошибках, вывод на экран таблицы.

При разработке программы учитывались все требования, которыми должна обладать программа, разработанная для использования непрофессиональными пользователями ПЭВМ, поэтому ставилась задача максимально упростить интерфейс, сделать его интуитивно-понятным. Программа имеет интуитивно понятный интерфейс, что позволяет быстро разобраться в эксплуатации данной программы. Управление осуществляется как с помощью клавиатуры, так и с помощью манипулятора типа «мышь».

Все вышеперечисленные качества программы характеризуют ее как программу, точно соответствующую техническому заданию.

Таким образом, благодаря вышеуказанным свойствам и достоинствам данной программы, она является отличным помощником сотруднику развивающего центра.

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

1 ГОСТ 19.101-77 ЕСПД. Виды программ и программных документов

2 ГОСТ 19.105-78 ЕСПД. Общие требования к программным документам

3 ГОСТ 19.106-78 ЕСПД. Требования к документам, выполненным печатным способом

4 ГОСТ 7.32-2001 Система стандартов по информации, библиотечному и издательскому делу. Отчет о научно-исследовательской работе. Структура и правила оформления;

5 ГОСТ 2.105-95 Единая система конструкторской документации. Общие требования к текстовым документам;

6 ГОСТ 7.11-2004 Система стандартов по информации, библиотечному и издательскому делу. Библиографическое описание документа

7 ГОСТ 19.301-2000 ЕСПД. Программа и методика испытаний. Требования к содержанию, оформлению и контролю качества

8 ГОСТ 19.402-2000 ЕСПД. Описание программы. Требования к содержанию, оформлению и контролю качества

9 ГОСТ 19.502-78 ЕСПД. Описание применения. Требования к содержанию и оформлению

10 ГОСТ 19.504-79 ЕСПД. Руководство программиста. Требования к содержанию и оформлению

11 ГОСТ 19.505-79 ЕСПД. Руководство оператора. Требования к содержанию и оформлению

12 ГОСТ 19.701-90 ЕСПД. Схемы алгоритмов, программ, данных и систем. Условные обозначения и правила выполнения

15 Павловская, Т. А. С#. Программирование на языке высокого уровня [Текст]: учебник для вузов, перераб. и доп. / Т.А. Павловская. - СПб.: ООО «Питер Пресс», 2014. - 427 с.

ПРИЛОЖЕНИЕ

Текст программы

Form1

using System;

using System.Collections.Generic;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Collections;

using System.Windows.Forms;

using System.Data.OleDb;

namespace Kursach

{

public partial class Form1 : Form

{

public string Ssecretnum=null;

public string Ssecretnum_player_2=null;

public int points= 1500;

public int points_player_2 = 1500;

public int timer = 0;

public int timer_2 = 0;

public string player_name = null;

public string player_name_2 = null;

public bool player = true;

public void changelabel(bool change) //Вывод активного игрока

{

if (change) label11.Text = player_name;

else label11.Text = player_name_2;

}

public int calculate_points(int points) //Cнятие очков

{

return points -= 25;

}

public void check_win(int countbulls,bool numplayer) //проверка победы

{

if (countbulls==4)

{

timer1.Stop();

if (numplayer) MessageBox.Show(this,player_name+" Количество очков: "+points+ " Время: "+timer," Поздравляем ");

else

MessageBox.Show(this, player_name_2 + " Количество очков: " + points_player_2 + " Время: " + timer_2, " Поздравляем ");

string myConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=table.mdb";

OleDbConnection myConnection=new OleDbConnection(myConnectionString);

OleDbCommand InsertCom = new OleDbCommand();

InsertCom.CommandType = CommandType.Text;

InsertCom.CommandText = "INSERT INTO [result] ([player_name], [points], [time]) VALUES (@name, @points, @time)";

InsertCom.Connection = myConnection;

if (numplayer)

{

InsertCom.Parameters.AddWithValue("@name", player_name);

InsertCom.Parameters.AddWithValue("@points", points);

InsertCom.Parameters.AddWithValue("@time", timer);

}

else

{

InsertCom.Parameters.AddWithValue("@name", player_name_2);

InsertCom.Parameters.AddWithValue("@points", points_player_2);

InsertCom.Parameters.AddWithValue("@time", timer_2);

}

myConnection.Open();

InsertCom.ExecuteNonQuery();

myConnection.Close();

NewGame();

}

}

public void NewGame() //Создание новой игры, обнуление счетчиков и очистка полей

{

Ssecretnum = null;

SecretNumber();

textBox1.Clear();

listBox1.Items.Clear();

textBox3.Clear();

points=1500;

points_player_2 = 1500;

timer = 0;

timer_2 = 0;

timer1.Stop();

timer2.Stop();

statusStrip1.Items[2].Text = "Очки : " + points;

statusStrip1.Items[1].Text = "Время : " + timer;

toolStripStatusLabel1.Text = player_name;

if (comboBox1.SelectedIndex != 0)

{

statusStrip1.Items[3].Text = " " + player_name_2 + " ";

statusStrip1.Items[4].Text = "Время : " + timer_2;

statusStrip1.Items[5].Text = "Очки : " + points_player_2;

if (player_name_2 != null)

{

button3.Visible = true;

player = true;

changelabel(true);

}

}

else

{

if ((comboBox1.SelectedIndex == 0) && (player_name != null)) timer1.Start();

statusStrip1.Items[3].Text = "";

statusStrip1.Items[4].Text = "";

statusStrip1.Items[5].Text = "";

}

}

public bool CheckSymbols(string textbox,int text_length) //проверка ввода

{

List<char> CheckSymbol = new List<char> { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' };

char[] MasChar = textbox.ToCharArray();

foreach (char t in MasChar) if ((!CheckSymbol.Contains(t)) || (text_length != 4) || (textbox==textBox2.Text))

{

MessageBox.Show(this, "Введите целое четырехзначное число", " Ошибка ввода "); return false;

}

return true;

}

public void SecretNumber() //Создание рандомного четырехзначного числа компьютером

{

ArrayList Secret = new ArrayList();

Random SecretNumber = new Random();

int iSecretnum=1;

for (int i = 0; i < 4; i++)

{

iSecretnum=SecretNumber.Next(9);

if (i == 0)

{

iSecretnum=SecretNumber.Next(1, 9);

Ssecretnum += iSecretnum;

Secret.Add(iSecretnum);

}

else

{

if (Secret.Contains(iSecretnum))

{

while (Secret.Contains(iSecretnum))

{

iSecretnum = SecretNumber.Next(9);

}

Ssecretnum += iSecretnum;

Secret.Add(iSecretnum);

}

else

{

Ssecretnum += iSecretnum;

Secret.Add(iSecretnum);

}

}

}

label3.Text = Ssecretnum;

}

public void IsMatch(string susernumber, bool numberplayer,string Ssecretnum) //нахождение совпадений

{

ArrayList IsMatch = new ArrayList();

int countbulls = 0, countcaws = 0;

for (int i = 0; i < Ssecretnum.Length; i++)

{

for (int g = 0; g < susernumber.Length; g++)

{

if ((Ssecretnum[i] == susernumber[g]) && (i == g) && (!IsMatch.Contains(Ssecretnum[i])))

{

countbulls++; IsMatch.Add(Ssecretnum[i]);

}

if ((Ssecretnum[i] == susernumber[g]) && (i != g) && (!IsMatch.Contains(Ssecretnum[i])))

{

countcaws++; IsMatch.Add(Ssecretnum[i]);

}

}

}

if (comboBox1.SelectedIndex == 0) listBox1.Items.Add(textBox1.Text + " Быки: " + countbulls + " Коровы: " + countcaws);

if ((numberplayer) && (comboBox1.SelectedIndex == 1)) listBox1.Items.Add(player_name + " " + textBox3.Text + " Быки: " + countbulls + " Коровы: " + countcaws);

else

if ((!numberplayer) && (comboBox1.SelectedIndex == 1)) listBox1.Items.Add(player_name_2 + " " + textBox3.Text + " Быки: " + countbulls + " Коровы: " + countcaws);

check_win(countbulls,numberplayer);

countbulls = countcaws = 0;

}

public Form1()

{

InitializeComponent();

}

private void выйтиToolStripMenuItem_Click(object sender, EventArgs e)

{

Close();

}

private void button1_Click(object sender, EventArgs e) //кнопка проверки результатов для режима PvE(Environment)

{

if (CheckSymbols(textBox1.Text, textBox1.TextLength))

{ points = calculate_points(points);

IsMatch(textBox1.Text, true, Ssecretnum);

}

textBox1.Clear();

}

private void Form1_Load(object sender, EventArgs e)

{

comboBox1.Text = Convert.ToString(comboBox1.Items[0]);

textBox3.MaxLength = 10;

textBox1.MaxLength = 4;

}

private void новаяИграToolStripMenuItem_Click(object sender, EventArgs e)

{

NewGame();

}

private void timer1_Tick(object sender, EventArgs e) //Счетчик времени 1 игрока

{

points--;timer++;

statusStrip1.Items[2].Text = "Очки : " + points;

statusStrip1.Items[1].Text = "Время : " + timer;

toolStripStatusLabel1.Text = player_name;

}

private void timer2_Tick(object sender, EventArgs e) //Счетчик времени 2 игрока

{

points_player_2--; timer_2++;

statusStrip1.Items[4].Text= "Время : "+timer_2;

statusStrip1.Items[5].Text = "Очки : " + points_player_2;

}

private void button2_Click(object sender, EventArgs e) //Ввод имени 1 игрока

{

if (textBox2.TextLength < 3) MessageBox.Show(this, "Введите не менее 3 символов", "Ошибка ввода");

else

{

player_name=label7.Text = textBox2.Text;

label6.Visible = false;

textBox2.Visible = false;

button2.Visible = false;

button1.Visible = true;

textBox1.Visible = true;

timer1.Start();

comboBox1.Visible = true;

}

}

private void таблицаРезультатовToolStripMenuItem_Click(object sender, EventArgs e) //открытие таблицы результатов

{

FormResult objectForm = new FormResult();

objectForm.Show();

OleDbDataAdapter dataAdapter = new OleDbDataAdapter("SELECT player_name, points, time FROM result ORDER BY points DESC", "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=table.mdb");

DataSet ds = new DataSet();

dataAdapter.Fill(ds, "result");

objectForm.dataGridView1.DataSource = ds.Tables["result"].DefaultView;

}

private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) //выбор режима

{

NewGame();

if (comboBox1.SelectedIndex == 0)

{

panel1.Visible = false;

label7.Text = player_name;

}

else

{

panel1.Visible = true;

}

}

private void button4_Click(object sender, EventArgs e) //ввод имени 2 игрока PvP режим

{

if (textBox3.TextLength < 3) MessageBox.Show(this, "Введите не менее 3 символов", "Ошибка ввода");

else

{

label10.Text = player_name_2 = textBox3.Text;

label11.Text = player_name;

label11.Visible = true;

label8.Text = player_name;

button3.Visible = true;

button4.Visible = false;

textBox3.MaxLength = 4;

textBox3.PasswordChar ='*';

label2.Visible = false;

textBox3.Clear();

label8.Visible = true;

label9.Visible = true;

label10.Visible = true;

toolStripStatusLabel1.Text = player_name;

toolStripStatusLabel2.Text = "Время : 0 ";

toolStripStatusLabel3.Text = "Очки : 1500";

toolStripStatusLabel4.Text = player_name_2;

toolStripStatusLabel5.Text = "Время : 0 ";

toolStripStatusLabel6.Text = "Очки : 1500";

}

}

private void button3_Click(object sender, EventArgs e) // ввод секретного числа PvP режим

{

if ((textBox3.Text.Length != 4) || (!CheckSymbols(textBox3.Text,textBox3.TextLength))) throw new NormSymbol(" Введите четырехзначное, целое число ");

else

{

if (player)

{

changelabel(false);

player = false;

Ssecretnum = textBox3.Text;

}

else

{

changelabel(true);

player = true;

Ssecretnum_player_2 = textBox3.Text;

button5.Visible = true; button3.Visible = false;timer1.Start();

textBox3.PasswordChar = '\0';

}

textBox3.Clear();

}

}

private void button5_Click(object sender, EventArgs e) //проверка на совпадения

{

if (CheckSymbols(textBox3.Text, textBox3.TextLength))

{

if (player)

{

IsMatch(textBox3.Text, true, Ssecretnum_player_2);

changelabel(false);

player = false;

timer1.Stop();

timer2.Start();

points=calculate_points(points);

}

else

{

IsMatch(textBox3.Text, false, Ssecretnum);

changelabel(true);

player = true;

timer2.Stop();

timer1.Start();

points_player_2=calculate_points(points_player_2);

}

textBox3.Clear();

}

}

}

public class NormSymbol : Exception //исключение на ввод символов

{

public NormSymbol(string message) : base(message) { }

}

}

FormResult

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Data.OleDb;

using System.Windows.Forms;

namespace Kursach

{

public partial class FormResult : Form

{

public FormResult()

{

InitializeComponent();

}

private void FormResult_Load(object sender, EventArgs e)

{

this.StartPosition = FormStartPosition.CenterScreen;

}

private void button1_Click(object sender, EventArgs e)

{

Размещено на Allbest.ru


Подобные документы

  • Применение программного обеспечения для разработки игры "Быки и коровы". Описание алгоритма и интерфейса пользователя программы. Назначение и область применения и описание возможностей программы. Рассмотрение списка сообщений об ошибках программы.

    курсовая работа [799,2 K], добавлен 26.04.2021

  • Требования к техническим, программным средствам разработки и функционированию программы. Обоснование выбранного языка программирования. Описание алгоритма решения задачи, тестирование ее основных функций. Понятие дружелюбного пользовательского интерфейса.

    курсовая работа [85,9 K], добавлен 31.10.2014

  • Реализация основных алгоритмических структур. Усеченный условный оператор и оператор exit. Цикл с параметром (счетный цикл). Распечатка таблиц функций. Средства разработки программ на языке Free Pascal. Разработка игрового приложения "Быки и коровы".

    курсовая работа [1,9 M], добавлен 23.12.2015

  • Разработка программы для учета прихода, расхода и хранения драгоценного сырья. Требования к техническим и программным средствам. Алгоритм программы, тестирование ее работоспособности. Порядок заполнения и редактирования документов, создания отчетов.

    курсовая работа [2,3 M], добавлен 21.11.2013

  • Выбор системы программирования. Разработка программного обеспечения для ведения складского учета (инвентаризации) персональных компьютеров и комплектующих на предприятии. Обоснование даталогической модели данных. Рекомендации по применению программы.

    курсовая работа [1,9 M], добавлен 14.01.2013

  • Требования к программе или программному продукту. Условия эксплуатации и требования к параметрам технических средств. Программное обеспечение, рекомендуемое для функционирования программы. Руководство системного программиста и настройка программы.

    отчет по практике [1,1 M], добавлен 22.07.2012

  • Разработка эскизного и технического проекта программы игры "Собери картинку". Назначение и область применения, основные технические характеристики. Разработка рабочего проекта, разработка и спецификация программы игры. Описание и тестирование программы.

    курсовая работа [22,6 K], добавлен 10.06.2010

  • Наименование программы – база данных "Бутик FIRST", предназначена для ведения учёта товара, выдачи данных о поставщиках и поставляемых ими товарах. Требования к надежности. Условия эксплуатации. Требования к составу и параметрам технических средств.

    курсовая работа [22,3 K], добавлен 26.12.2010

  • Выбор и обоснование выбора среды разработки. Разработка алгоритма работы программы, проектирование системы меню. Общее описание программы: назначение и область применения, интерфейс, требования к аппаратным и программным ресурсам, тестирование и листинг.

    курсовая работа [543,2 K], добавлен 20.05.2013

  • Разработка технической демонстрационной версии трехмерной компьютерной ролевой игры "After Reset". Установка, запуск и минимальные требования программы. Анализ алгоритмов. Архитектура системы и иерархия классов. Тестирование программного обеспечения.

    дипломная работа [3,4 M], добавлен 19.07.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.