Форум программистов, компьютерный форум CyberForum.ru

Симулятор боя(Реализовать программу, позволяющую моделировать боевое столкновение двух противников, располагающих пехотой, танками и артиллерией) - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.89
Vld2050
-17 / 0 / 0
Регистрация: 11.12.2011
Сообщений: 10
20.12.2012, 20:16     Симулятор боя(Реализовать программу, позволяющую моделировать боевое столкновение двух противников, располагающих пехотой, танками и артиллерией) #1
Симулятор боя. Реализовать программу, позволяющую моделировать боевое столкновение двух противников, располагающих пехотой, танками и артиллерийскими установками. Поле боя представляет собой двумерное пространство с размерами MxN, разбитое на ячейки. Каждая из боевых единиц (БЕ) обладает некоторым запасом «здоровья», боекомплектом, величиной урона, который она способна нанести противнику (зависит от типа противника), радиусом действия оружия и радиусом, в пределах которого она обнаруживает противника, а также скоростью передвижения (количество ячеек за один шаг игры). Одна БЕ в каждый момент времени занимает одну ячейку. Процесс моделирования пошаговый, на каждом шаге БЕ при необходимости передвигаются на нужное количество ячеек и, если возможно, производят атаку обнаруженного противника (атака производится по завершении перемещения). Перемещение производится по горизонтали и/или вертикали, непосредственное движение по диагонали – два шага. На первых шагах игры, когда противники находятся вне зоны видимости друг друга, движение должно осуществляться навстречу друг другу. Начальное расположение и соотношение сил задаётся произвольно (случайным образом, командной строкой, специальным файлом или любым другим способом). Отображение процесса реализуется произвольно (консоль, графический интерфейс).

Посоветуйте пожалуйста как лучше реализовать через классы. Где лучше хранить координаты, здоровье и т. д чтобы можно было к ним обращаться и изменять их. Даже не знаю с чего начать.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.12.2012, 20:16     Симулятор боя(Реализовать программу, позволяющую моделировать боевое столкновение двух противников, располагающих пехотой, танками и артиллерией)
Посмотрите здесь:

Написать программу, позволяющую решать квадратные уравнения C++
C++ Написать программу, позволяющую
Разработайте программу, позволяющую реализовать диалог пользователя с ЭВМ в виде шаблона двух типов: свободного и жесткого C++
C++ Динамическое создание/удаление и перебор противников в 2D игре visual studio
C++ Написать программу позволяющую выводить информацию о системе
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Voroshek
6 / 6 / 1
Регистрация: 22.08.2011
Сообщений: 75
20.12.2012, 21:16     Симулятор боя(Реализовать программу, позволяющую моделировать боевое столкновение двух противников, располагающих пехотой, танками и артиллерией) #2
Я тоже новичок, поэтому возможно спецы будут кидаться тряпками критиковать. Но мыслями поделюсь, если интересно.
* * *
Предположу, что все БЕ, в принципе одинаковы, сиречь отличаются величиной урона-здоровья, но не имеют различных способностей (например, все стреляют по одной цели, артиллерия - по области). Далее, не вполне ясно, как урон зависит от типа противника.
В остальном, класс, полагаю, должен быть примерно таким
C++
1
2
3
4
5
6
7
8
9
10
11
class Unit
{
public:
    int mov, rad_see, rad_attack, damag; // неизменные характеристики: скорость,
    //движение, радиусы обзора и атаки и урон
    int *vit, *supply, *pos_x, *pos_y; // здоровье и боекомплект, координаты
public:
    void move(int *pos_x, int *pos_y) // функция перемещает юнит
    void attack(int attack, int damag, Unit target); // функция проверяет, досягаем ли
    //враг и шмаляет по нему
};
Остальное во многом зависит от того, как будет всё это отображаться, тут я только немного представляю SDL.
OstapBender
 Аватар для OstapBender
581 / 519 / 35
Регистрация: 22.03.2011
Сообщений: 1,585
21.12.2012, 01:58     Симулятор боя(Реализовать программу, позволяющую моделировать боевое столкновение двух противников, располагающих пехотой, танками и артиллерией) #3
Voroshek, интересно:
Цитата Сообщение от Voroshek Посмотреть сообщение
int *vit, *supply, *pos_x, *pos_y; // здоровье и боекомплект, координаты
зачем указатели?
Voroshek
6 / 6 / 1
Регистрация: 22.08.2011
Сообщений: 75
21.12.2012, 10:14     Симулятор боя(Реализовать программу, позволяющую моделировать боевое столкновение двух противников, располагающих пехотой, танками и артиллерией) #4
OstapBender не, ну в любом случае, передавать параметр в функцию по указателю.
Yandex
Объявления
21.12.2012, 10:14     Симулятор боя(Реализовать программу, позволяющую моделировать боевое столкновение двух противников, располагающих пехотой, танками и артиллерией)
Ответ Создать тему
Опции темы

Текущее время: 09:41. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru