|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
06.04.2009, 22:43 | #11 |
Студент, не
Старожил
Регистрация: 29.01.2009
Сообщений: 2,067
|
У меня не запускался ни один вариант, но я уже понял почему: в пути к игре не должно быть пробелов...
Переместил папку "tank" в корневой каталог "C:\" и всё работает... Только у трёхколёсных противников ракеты не срабатывают... Просто пролетают мимо, поверх всего... И надо бы как-то "победу" внедрить... Мне интересно... Я правда ещё тока учусь и могу многого не понять, но когда-нибудь надеюсь достигнуть такого уровня...
I am the First of Cyber Evolution...
I am the First to Program your Future... |
07.04.2009, 06:26 | #12 |
Форумчанин
Регистрация: 23.02.2009
Сообщений: 237
|
Вообще хорошо. Многое предусмотрел. А можно сделать так чтобы и там где враги ты мог менять танк? Если сделаешь то будет просто офигенно!
|
08.04.2009, 18:54 | #13 | ||
Непрофессионал
Участник клуба
Регистрация: 01.01.2008
Сообщений: 1,405
|
Цитата:
1. звёзды - повышение уровня танка (новый уровень даёт увеличение брони на 1 и новый корпус танку, начиная со второго уровня, танк стреляет мощными снарядами с силой==2) 2. лодка - позволяет перемещаться по воде 3. бронебойность - снаряд пробивает стальную стену 4. каска - на время даёт танку неуязвимость 5. бомба - взрывает всех врагов, находящихся на поле 6. заморозка - на время обездвиживает вражеские танки 7. броня для штаба - строит вокруг штаба кирпичную стену 8. жизнь - ну просто +1 к жизням танка Цитата:
Ну и исходники, пока сырые, так как программка в процессе ещё:
И чем больше я узнавал людей, тем больше мне нравились компьютеры.
------------------------------------ Страничка с моими программками http://ulex-masm.ru |
||
19.04.2009, 22:46 | #14 |
Непрофессионал
Участник клуба
Регистрация: 01.01.2008
Сообщений: 1,405
|
Контроль столкновений ???
Я застрял. Нужна консультация или парочка свежих мыслей.
Казалось бы куда уж проще, проверить столкновение объектов. Не тут то было. В общем - суть проблемы: Контроль столкновений на уровне точек. Специально для этого написана функция MainIntersect (X1_EXT, Y1_EXT, W1_EXT, H1_EXT, KEY1_EXT, OFFBM1_EXT, X2_EXT, Y2_EXT, W2_EXT, H2_EXT, KEY2_EXT, OFFBM2_EXT) X1_EXT, Y1_EXT - абсолютные координаты первого объекта W1_EXT, H1_EXT - размеры первого объекта KEY1_EXT - ключ (в общем неважно пока) OFFBM1_EXT - адрес битовой маски. Битовая маска - ч/б картинка (чёрный-точка проходимая, белый-точка непроходимая) Остальные параметры - всё то же самое для второго. Функция возвращает 1, если произошло пересечение белых точек в битовых масках объектов и 0 в любом другом случае. При прямолинейном движении объекта всё нормально, проблемы начинаются, когда объект разворачивается и при этом он несимметричный, а вокруг него находятся препятствия сложной формы. На картинке слева танчик едет вверх, пока не упрётся в стену. На этом этапе метод контроля работает замечательно. Но на картинке справа танчик разворачивается налево и при этом залазит частью гусеницы в стену, и по моему методу больше двигаться налево не может, хотя впереди у него путь чист...???
И чем больше я узнавал людей, тем больше мне нравились компьютеры.
------------------------------------ Страничка с моими программками http://ulex-masm.ru |
20.04.2009, 05:49 | #15 |
Форумчанин
Регистрация: 23.02.2009
Сообщений: 237
|
Я конечно не знаю ассемблер, но мож при повороте тебе уменьшать координату по вертикали у танка? Или попросту уменьшить боковые стороны танка.
|
20.04.2009, 20:24 | #16 |
Участник клуба
Регистрация: 06.03.2009
Сообщений: 1,346
|
На мой взгляд коллизию можно не усложнять. Просто представить танк в виде простой формы (прямоугольник, квадрат) и обрабатывать столкновение с ней
Сейчас я занимаюсь разработкой движка для своей будующей игры, и недавно сделал в ней коллизию по координатам.Вот функция определения столкновения по координатам (это Delphi(я в ассемблере ничего не понимаю)) Код:
Код:
Последний раз редактировалось Вадим Буренков; 20.04.2009 в 21:02. |
21.04.2009, 04:00 | #17 | |||
Непрофессионал
Участник клуба
Регистрация: 01.01.2008
Сообщений: 1,405
|
Цитата:
На данный момент как раз так и сделано, но мне не нравится как работают коллизии (именно внешне не нравится). Цитата:
Цитата:
Вот к примеру если проверять только по прямоугольникам, то тут вас уже убили бы:
И чем больше я узнавал людей, тем больше мне нравились компьютеры.
------------------------------------ Страничка с моими программками http://ulex-masm.ru |
|||
21.04.2009, 04:32 | #18 | |
Студент, не
Старожил
Регистрация: 29.01.2009
Сообщений: 2,067
|
Я так понимаю, проблема возникает только при повороте танка..?
Может проверять столкновение до поворота, и если сталкиваются - просто запрещать поворот? Хотя тогда при сильно сложных формах можно будет напрочь застрять (как во многих старых "плоских" играх - например Jazz Jackrabbit 2)... Цитата:
По одному пикселю до тех пор пока он не перестанет сталкиваться.....
I am the First of Cyber Evolution...
I am the First to Program your Future... |
|
21.04.2009, 13:45 | #19 | |
Участник клуба
Регистрация: 06.03.2009
Сообщений: 1,346
|
Цитата:
В ней я как-бы разбиваю сложное изображение на несколько простых(прямоугольник, квадрат), и обрабатываю их совместно. |
|
21.04.2009, 21:33 | #20 | |
Непрофессионал
Участник клуба
Регистрация: 01.01.2008
Сообщений: 1,405
|
Цитата:
Опять таки на примере. Танк едет вверх по над стеночкой. И если он повернётся направо, то толкать его надо в сторону обратную его новому напрвлению. Если же он повернётся налево, то толкать надо в направлении нового его курса.
И чем больше я узнавал людей, тем больше мне нравились компьютеры.
------------------------------------ Страничка с моими программками http://ulex-masm.ru |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
блок "cont" с права не принимает значение "margin: 10px;" которое описано в body | tabikA | HTML и CSS | 5 | 24.02.2009 21:50 |
Под прикрытием "кризиса" наши доблестные "управители" хотят утопить нас в радиоактивных отходах | mihali4 | Свободное общение | 1 | 17.01.2009 01:43 |
если пользователь наберет какой-то другой символ не "y" или "n" и нажмет enter, программа проигнорирует | skobets | Общие вопросы C/C++ | 2 | 03.06.2008 06:51 |
Excel файл открывается не "до конца" (странички "не показываются" только серое поле) | Dorvir | Microsoft Office Excel | 2 | 28.03.2008 10:03 |
Создаю диаграмму "Bar". Подскажите как убрать растояние между "столбами" | MAcK | Компоненты Delphi | 11 | 24.10.2007 10:49 |