140 likes | 332 Views
Игра « Submarine ». Исполнители: Иван Капитонов Дмитрий Заславский Руководитель: Дмитрий Шурупов. 1. Цели курсовой работы:. Научиться программировать на «С» Cдать Курсовую работу. 2. Несколько слов о самой игре. Игра с глубоким сакральным смыслом Доплыть из начала карты в конец
E N D
Игра «Submarine» Исполнители: Иван Капитонов Дмитрий ЗаславскийРуководитель: Дмитрий Шурупов 1
Цели курсовой работы: • Научиться программировать на «С» • Cдать Курсовую работу 2
Несколько слов о самой игре • Игра с глубоким сакральным смыслом • Доплыть из начала карты в конец • Не нарваться на дно/мины/прочие фишки, которые быстро и просто прикручиваются • Пострелять здоровенными ракетами ;) 3
Как себя вести игре? • Бегать двумя персонажами по лодке • Управлять лодкой посредством терминалов • Погружение/всплытие • Движение вперёд/назад • Стрельба • Пожарная тревога на лодке 4
Элементы игры • Исходный код • Объекты • Лодка • Два игрока • Карта • Терминалы на лодке • Поддержка • Обработка событй • Перемещение/репозиционирование объектов 5
Свойства пространства: • Пространство – условно бесконечно в длину • Пространство – картинка • Пространство – движется • В пространстве есть рыбки! • В пространство можно натолкать сколь угодно много объектов и их взаимодействий 6
Туча переменных int quit = 0; int depth = 32; int b_x = -50, b_y = -50; int s_x = 100, s_y = 340; int xSE = 25,xSE2 = 25; int P1_x = 555, P1_y = 120, P2_x = 190, P2_y = 120; int xpos = 0, ypos = 0,xP1=0,yP1=0,xP2=0,yP2=0; int torx=660, tory=145, vii=0; int Ter1P1=0, Ter2P1=0, Ter3P1=0, Ter4P1=0; int Ter1P2=0, Ter2P2=0, Ter3P2=0, Ter4P2=0; 7
Знакомьтесь — Объекты! 1 игрок 1 ракета 1 лодка Терминал Прицел 8
Пара слов об устройстве кода • Главная функция: меню, которая вызывает • Вторую функцию: игру • В которой происходит «всё всё всё» • Отслеживание событий • Обработка числовых данных • Флаги • координаты • Отрисовка 10
На памятку домохозяйкам • Игра очищает экран, затем, всё рисует заново раз в ## секунд. • ## для каждой конфигурации индивидуальна, но лимитируется пропускной способностью памяти. Играть удобно в любом случае кроме совсем старых машин • Экран состоит из 1024 на 768 точек. • Особо пытливые могут попробовать посчитать • Графика игры состоит из одного слоя, что в своё время вызвало ряд проблем при написании. • На малопроизводительных компьютерах игра работает не сильно медленнее. 11
Фоновая музыка. • Для её звучания происходят действия • SDL Mixer • 3 канала • Обработчик событий «вбрасывает» треки в каналы. 12
С чего всё начиналось: • – Флаги! • – Функции! • – Ешь гусей!----------> • – Ладно, флаги... Так и получилась игра, к которой можно «припилить» что угодно прямо сейчас!
Игра «Submarine» ? Исполнитель: Иван Капитонов Дмитрий ЗаславкийРуководитель: Дмитрий Шурупов 14