|
•Суть игровой карты - Barloggg, 26.03.2002 17:05:50 |
|
|
Во первых игровая карта это массив с юнитами и строениями, причем ее клетка неделима, то есть самый маленький юнит, пехотинец занимает одну клетку, скаут две, танк четыре и т.д.
Игровая карта не равна по размерам географической карте, но смасштабирована по ней. То есть: Игровая карта 20х20, географическая карта 10х10 = на одну нам привычную клетку приходится 4 небольших клеточки.
Игровая карта у меня вызывает двоякое представление итак:
ВАРИАНТ1 игровая карта это ТРЕХМЕРНЫЙ массив по размеру Больший чем размер карты и слоистый 1 слой водяные 2-й слой - наземные 3-й слой воздушные.
Достоинства: простота организации.
Недостатки: никто не может наступить друг на друга (воздушный не может встать над воздушным, наземный не может встать над наземным, водный не может встать над водным. Воздушный может встать над наземным и над водным, что логично).
Карта заполнена id идентификаторами юнитов или строений на ней стоящих.
То есть каждый юнит и строение имеет свой уникальный id номер, чтобы его было проще найти в массиве.
id размером 2 байта (думаю столько нам хватит?)
ВАРИАНТ 2 Игровая карта это ДВУМЕРНЫЙ МАССИВ размером больший чем размер карты и представляет собой этакий радар. В нем указывается только принадлежность на нем стоящего к тому или иному игроку. То есть эта карта заполнена id номерами игроков. Жаль нельзя в форуме это представить в графическом виде.
Резон такой карты: эта карта нужна ТОЛЬКО для вычисления столкновений и расчета траекторий.
Недостаток: За всякой прочей информацией о юнитах придется перекапывать весь массив юнитов и строений в поисках того, кто занимает данную клетку на такой карте.
ВАРИАНТ 3 Игровая карта это ДВУМЕРНЫЙ МАССИВ заполненный некими виртуальными id которые лежат в своем собственном массиве и им соттветствует неопределенное количество идентификаторов юнитов.
Резон такой карты: на клетку может наступить кто угодно и сколько угодно (сколько именно поговорим потом). Довольно удобно. Быстро и компактно.
Недостаток: как то это мне напоминает Windows ссылка на ссылку которая ссылается на ссылку... :) Не запутаться бы потом в этих вспомогательных массивах. в общем сложновата организация.
|
|
| |