Представляю вашему вниманию мой первый блинком - игра под многообещающим названием "Rocket Forces".
Задача: продержаться как можно дольше, защищая мирное население и набирая очки. Чтобы сбить падающие вражеские бомбы необходимо выбрать такие координаты для запускаемой ракеты, чтобы её взрывная волна задела эту самую бомбу и тем самым уничтожила её. Пересечение траекторий полета ракеты и бомбы не приводит к детонации!
Управление: левая кнопка мыши - выстрел, Esc - выход
Версия: 0.1
Скачать игру можно здесь: http://ifolder.ru/2264099
(файл с индексом "h" - реализация с аппаратным курсором, файл с индексом "s" - реализация с эмуляцией курсора)
Скачать исходники можно здесь: http://ifolder.ru/2264130
(в архиве находится всё необходимое, для компиляции в среде Visual Studio 2005)
Serge
Вообще про звук я даже не думал Но буду благодарен за помощь в реализации..
А пока планы были такими: сделать главную менюшку и в ней настройку всех параметров игры, таких как количество и скорость ракет, бомб, сложность игры, ограничение и вывод на экран FPS, soft/hardware курсор. Впринципе они уже сейчас вынесены в отдельные переменные, так что полдела сделано.
И еще думал реализовать систему уровней, чтобы игра была более-менее логически завершенной.
Надо определить события когда должен быть звук и подобрать подходящие семплы.
Звуковой движок я напишу. В принципе там ничего сложного. В тот момент когда взрывается бомба или стреляет пушка добавляется вызов
play_sfx(bomb_explode) play_sfx(rocket_launch) и т.п.
Любой PCM, например моно 16 бит 11 Кгц, можно и 8 бит но тогда придётся разворачивать в 16. Файлы можно скомпилировать фасмом в бинарник и слинковать или держать отдельно. У меня где-то были подходящие wav-ы. Если сделаешь константы для звуковых эффектов начиная с 1
#define BOMB_EXPLODE 1
#define ROCKET_LAUNNCH 2
и поставишь в нужных местах play_sfx(звуковая_константа) я попробую сделать звук.
Serial
Что-то я не понял в игре - ракета пролетает сквозь бомбу и ничего....
Ты сделал сравнение траектории по одной единственной точке? Тогда это неправильно. В реальной ситуации ракета никогда не долетает до цели - она взрывается рядом. Например, самолет поражает не сама ракета, а ее осколки, т. е. ракета в этом случае действует как граната.
Ты уже не первый, кто задает такой вопрос... Поэтому я и написал:
Чтобы сбить падающие вражеские бомбы необходимо выбрать такие координаты для запускаемой ракеты, чтобы её взрывная волна задела эту самую бомбу и тем самым уничтожила её. Пересечение траекторий полета ракеты и бомбы не приводит к детонации!
Короче.. ракета взрывается, когда долетает до красного крестика. Задача поставить эти крестики так, чтобы в момент взрыва ракеты рядом оказалась бомба.
Serial
Но в реальной ситуации ракета детонирует не в заранее подготовленной точке, а по достижении определенного расстояния до цели.
В твоем же случае ракеты не должны выпускаться как автоматная очередь... Очень странная картина получается.
Игра мне напомнила БК-0010, там, в игре "Десантник" высаживался десант, который надо было сбивать зениткой. Если высадилось 4 десантника, по одну из сторон они выстраиваются в лесенку и последний залезает и взрывает к чертям зенитку.
Да, игра очень похожа на многочисленные игры типа "Десантник". Сам в штуки 3 такие играл (начиная с ЕСки).
Сделать такую же систему, как и в этих играх не проблема. Но это будет тупо очередной клон игры. Хотя.. может кто-нибудь захочет понастольгировать
Я же постарался сделать немного другую игру: ракеты с некоторым радиусом поражения вместо пулемета, защита города от бомб вместо отбивания от парашутистов. А все пытаются по привычке сравнивать со старым "Паратрупером"
[OFFTOP]
При желании можно закачивать здесь: http://miraculix.ru/upload.php
Kreoton, впринципе не удаляет, да и со скачкой проблем не будет...
[/OFFTOP]