| Несложный ИИ для ГГ |
|
Mihhha
| Дата: Воскресенье, 15.08.2010, 04:02 | Сообщение # 1 |
|
Молчун
Группа: Пользователь
Сообщений: 14
Статус: Offline
|
Ребят помогите, а? А то совсем скисну Имеются ГГ - в количестве нескольких штук. Имеются враги. Задача: Выцелить ближнего врага, шмалять по нему из установленного ствола до тех пор пока игрок не поставит иную задачу, кончатся патроны, или кончится хп врага. Проблемы с реализацией у меня начались практически, с момента выцеливания врага. Из нескольких, созданных вокруг ГГ, выбирается тот который был установлен на карту первым. На остальных реакции нет. Вторая проблема, это смерть врага... после того как он он по истечению жизни самоуничтожается, теряются его координаты, и соответственно вылазит ошибка скрипта. Если ставить проверку, существует ли он, то ГГ реагирует только на того врага который сгенерился в комнате первым. Спасибо за помощь!
|
| |
| | |
|
SRes
| Дата: Воскресенье, 15.08.2010, 09:01 | Сообщение # 2 |
Каждый 5й пост мой
Группа: Страж
Сообщений: 2512
Статус: Offline
|
instance_nearest();
Velociped Inc.
|
| |
| | |
|
Mihhha
| Дата: Четверг, 19.08.2010, 02:57 | Сообщение # 3 |
|
Молчун
Группа: Пользователь
Сообщений: 14
Статус: Offline
|
Это было то что нужно.  Спасибо огроменное. пока прикрутил, как оценивать нейтрала, союзника или врага... и наводится только на след врага, думал мозг лопнет )))) Добавлено (19.08.2010, 02:54) --------------------------------------------- Не стал плодить темы, а решил задать еще один вопрос - тут же. У меня вид на комнату, аксонометрия. соответственно любой из персонажей, может зайти за здание(стену, забор, дерево, етц). А может стоять перед ней. Для того чтобы корректно отобразить, пользую mi_depth=тодлячегоэтоприменяется.x; object_set_depth(mi_depth): ну и так же - для всяких стенок кустов врагов и прочего. Все бы ничего, но, например "танк" гг, состоит из 4-х объектов. Двух башен корпуса и тени. Как быть с ними? Добавлено (19.08.2010, 02:57) --------------------------------------------- прочитав свой вопрос еще раз. минуты хватило чтобы понять... определяя mi_depth умножить х например на 100, для "составных" объектов, брать переменную того объекта... к чему все привязанно и плюсовать к нему так как надо... ведь так? сорри. ночь. туплю и говорю сам с собой ))))
Сообщение отредактировал Mihhha - Вторник, 17.08.2010, 06:39 |
| |
| | |
|
WertyXBOCT
| Дата: Четверг, 19.08.2010, 10:16 | Сообщение # 4 |
Каждый 5й пост мой
Группа: Страж
Сообщений: 2467
Статус: Offline
|
depth = -y; ?
Blog:www.WeslomPo.ru mailto: i@weslompo.ru
|
| |
| | |
|
Mihhha
| Дата: Суббота, 21.08.2010, 01:03 | Сообщение # 5 |
|
Молчун
Группа: Пользователь
Сообщений: 14
Статус: Offline
|
ага ))) именно это я и имел ввиду ))) Добавлено (21.08.2010, 01:03) --------------------------------------------- И снова глубина. Не отпускает она меня чего то ))) По вышеописанному методу прикольно получается с единичными объектами. Но вот подошел вопрос к лесу, и толпам врагов. Тут то я и удивился. Метод работает только для одного дерева в лесу. Все остальные пляшут от него. Чуствую что где-то тут наклевывается instance_id и "контроллер" глубины, а вот где, понять не могу. Поможете? Спасибо )
|
| |
| | |
|
Wertolet
| Дата: Суббота, 21.08.2010, 10:26 | Сообщение # 6 |
|
Хоть палкой гони
Группа: Проверенные
Сообщений: 781
Статус: Offline
|
У КАЖДОГО объекта в степе должно стоять depth = -y.
|
| |
| | |
|
Mihhha
| Дата: Воскресенье, 22.08.2010, 21:59 | Сообщение # 7 |
|
Молчун
Группа: Пользователь
Сообщений: 14
Статус: Offline
|
depth = -y. в степе не работает, да и как то стремает, делать сотню инстансов которые стоя на одном месте постоянно глубину проверяют. Для единичных объектов отлично работает, вот такая конструкция. Для движущихся, в степе. Для стоящих на месте при создании. Казалось бы, вот так должно пахать... obj_depth=0-object.y*10; depth=obj_depth; а пашет только так. obj_depth1=object.y*10; obj_depth2=0-obj_depth1 depth=obj_depth2; интересно теперь почему не пашет так depth=0-obj.y*10;
|
| |
| | |
|
Фил
| Дата: Воскресенье, 22.08.2010, 22:38 | Сообщение # 8 |
Всех уже задолбал
Группа: Проверенные
Сообщений: 1007
Статус: Offline
|
Mihhha, используй круглые скобки depth=0-(object.y*10);
Храм нулей и единиц
Сообщение отредактировал Фил - Воскресенье, 22.08.2010, 22:38 |
| |
| | |
|
Druce
| Дата: Воскресенье, 22.08.2010, 23:32 | Сообщение # 9 |
Каждый 5й пост мой
Группа: Страж
Сообщений: 1543
Статус: Offline
|
Я как-то не вкуриваю смысла 0-x. Вы же не пишете 4+0-5=0-1. просто depth=-y*10. Вероятно что ты неправильно адресуешь переменные. Я же не знаю что у тебя записано в переменных obj и object (они по умолчанию ничем не заполняются).
druce.ucoz.ru|andrewsweekly.livejournal.com|А OneStep тем временем мертв.
|
| |
| | |
|
WertyXBOCT
| Дата: Воскресенье, 22.08.2010, 23:39 | Сообщение # 10 |
Каждый 5й пост мой
Группа: Страж
Сообщений: 2467
Статус: Offline
|
А зачем ноль?.. depth=-object.y*10; // ИМХО, все равно что у каждого положительного числа писать +. origin "Y" у спрайтов где находится? Если в точке 0, то глюки будут. + скажи что у тебя за тип изометрии используется?.. заранее: у изометрии с углом 45* х 45* х 45* к зрителю, depth = x-y. У изометрии, как в jRPG depth = -y Вместо установки depth = -y в статичных объектах можно поместить эту строку в create.
Blog:www.WeslomPo.ru mailto: i@weslompo.ru
|
| |
| | |
|
Mihhha
| Дата: Вторник, 24.08.2010, 01:10 | Сообщение # 11 |
|
Молчун
Группа: Пользователь
Сообщений: 14
Статус: Offline
|
0-x, привычка... тяжело от нее избавиться у меня, что в скриптах оболочки, что на станках -х и 0-х разные вещи  А когда по сотне раз на дню даешь отрицательные числа как 0-х... у меня даже не срабатывает, что шота тут не так ))) Ребят спасибо за советы, все уже работает. Соберу в кучу, выложу на суд - мож меня вообще в эту тему пускать не стоит :))))))) Добавлено (24.08.2010, 01:10) --------------------------------------------- "Ночи тупых вопросов" на forum.gmaker.su - продолжаются :)) Парни, подскажите пожалуйста, в какую сторону копнуть или с чего начать искать... не могу вкурить, как привязать спрайт к виду. И еще вопрос, я так полагаю анимированный гиф размером в вид, изображающий из себя снег или дождь - это несколько напряжно будет в плане ресурсов, есть же еще какие-то методы? Спасибо.
|
| |
| | |
|
Druce
| Дата: Вторник, 24.08.2010, 02:39 | Сообщение # 12 |
Каждый 5й пост мой
Группа: Страж
Сообщений: 1543
Статус: Offline
|
draw_sprite(sprite,0,view_xview,view_yview) Анимированный гиф - напряжно весьма. для таких вещей существуют частицы (particles). По сути это такие недообъекты, которые обладают только свойствами движения и изображения. Читай справку, там все подробно и даже с примером в конце. Создаешь частичку дождя, описываешь ее свойства, как она будет падать - в какую сторону, с какой скоростью, как выглядит и т.д. Потом создаешь систему частиц, ставишь ей глубину поверх всех остальных твоих объектов, потом создаешь в ней эмиттер по верхнему краю и дестроер по нижнему. Ну и свойтства их там поковырять. И будет тебе дождик из примерно одинаковых частичек. Колебания направления снежинки кажись тоже там можно настроить. Что-то типа direction_wiggle.
druce.ucoz.ru|andrewsweekly.livejournal.com|А OneStep тем временем мертв.
|
| |
| | |
|
YemSalat
| Дата: Вторник, 24.08.2010, 11:41 | Сообщение # 13 |
Хрен заткнешь
Группа: Проверенные
Сообщений: 385
Статус: Offline
|
Mihhha, nu i na zakusku: tank iz 4x obyektov - eto koshmar (eshe i ten' otdelno delat') dostatochno ondnomu obyectu v draw vse neobhodimoe otrisovat'
Мои игры: LaLaLaLAMA - игра не про Ламу GoMommy! - Invaders Must Die !! [Caption Game] - игра в заголовке CombatForce - долгожданный релиз А мою аватарку можно поменять
|
| |
| | |
|
Mihhha
| Дата: Среда, 25.08.2010, 07:20 | Сообщение # 14 |
|
Молчун
Группа: Пользователь
Сообщений: 14
Статус: Offline
|
Уже согласен ))) Я не программер, я дизайнер ))) Писать что-то это не основная работа. Вот и учусь на собственных ошибках - чертовски интересное занятие, честно признаться
|
| |
| |
|
|