Улучшение движения трамваев
|
|
Den_spb | Дата: Воскресенье, 09.09.2012, 02:08 | Сообщение # 46 |
Создатель сайта
Группа: Администраторы
Сообщений: 1600
Статус: Offline
| Что не запускается?
|
|
| |
Den_spb | Дата: Воскресенье, 09.09.2012, 02:21 | Сообщение # 47 |
Создатель сайта
Группа: Администраторы
Сообщений: 1600
Статус: Offline
| Выкладывай изменённый исходник - проверю (можно к сообщению прикрепить).
|
|
| |
Den_spb | Дата: Воскресенье, 09.09.2012, 23:34 | Сообщение # 48 |
Создатель сайта
Группа: Администраторы
Сообщений: 1600
Статус: Offline
| Quote (laggth) Не хочет загружать в пост,сообщает что недопустимый формат изображения. Выложи на pastebin.com тогда. Quote (laggth) Как записать: "если трам подьехал на 1-1.5 м к обьекту с id таким то:"..."",то останавливаем трам(это понятно)? В скрипте Улучшение движения трамваев поиском объектов занимается функция :SEARCH_OBJECTS, представляющая собой цикл с опкодом 0AE3. Внутри цикла находятся различные проверки (проверка модели объекта, проверка текущего расположения объекта относительно трамвая и т.д.). В качестве центра зоны поиска используются текущие координаты трамвая (они вычисляются командой car.storePos) Quote (laggth) Теперь нужно найти какой обьект можно утопить под рельсы чтоб помещался между рельсинами и чтоб был без высоты и не выпирал бы из под мостов. Огонёк от сигары, например. Название точно не помню, но в нём вроде есть слово cigar.
|
|
| |
laggth | Дата: Вторник, 11.09.2012, 15:21 | Сообщение # 49 |
Группа: Пользователи
Сообщений: 81
Статус: Offline
| Когда ставиш модели на путь carrec.rrr через cleo то они теряют твёрдость,внутри них нельзя ездить,нельзя прыгаtь на крыши(палубы)-актёр проваливается.Можно ли каким 0пкодом вернуть твёрдость на них? --------------------------------------------------------------------------------------- Твёрдость есть теперь,но ехать на крыше невозможно - модель движется внизу,а cg остается на месте.
Сообщение отредактировал laggth - Вторник, 11.09.2012, 21:11 |
|
| |
Den_spb | Дата: Вторник, 11.09.2012, 20:17 | Сообщение # 50 |
Создатель сайта
Группа: Администраторы
Сообщений: 1600
Статус: Offline
| Попробуй это: 099A: set_car 0@ collision_detection 1
|
|
| |
Wanoo | Дата: Среда, 01.02.2023, 23:08 | Сообщение # 51 |
Группа: Пользователи
Сообщений: 3
Статус: Offline
| Здравствуйте! Благодарю за ваш скрипт (да ещё и такой давний оО)!
Интересен такой момент: сложно ли сделать, чтоб трамвай через некоторый таймер (например 5 секунд) игнорировал препятствие (машина, персонаж...) и просто таранил его (конкретное препятствие, а не все сразу; ну или же все), при этом не игнорируя светофоры и остановки? Просто на данный момент если на путях к примеру возникнет некая авария, то трамвай встаёт на месте и не движется, покуда не убрать препятствие. В принципе я, как смог, решил эту проблему - трамвай сметает все препятствия подряд и движется на скорости несколько секунд, но при этом он игнорирует светофоры и остановки, после чего возвращается обратно в состояние обнаружения.
Сообщение отредактировал Wanoo - Пятница, 03.02.2023, 17:53 |
|
| |
Den_spb | Дата: Пятница, 03.02.2023, 18:19 | Сообщение # 52 |
Создатель сайта
Группа: Администраторы
Сообщений: 1600
Статус: Offline
| Добрый день! Рад, что понравился скрипт! Спасибо за отзыв
Чтобы добавить таймер, ограничивающий время остановки перед препятствием, можно попробовать сделать следующее. Находим строчки кода:
Код if gosub @CHECK_OBSTACLES then 06DD: set_train TRAM speed 0.0 else
Редактируем так:
Код if gosub @CHECK_OBSTACLES then if 33@ > 0 then 33@ = -15000 end if and 33@ < -10000 33@ > -15000 then 06DD: set_train TRAM speed 0.0 else 06DD: set_train TRAM speed 11.11 end else
Работать должно так: если найдено препятствие, то выставляется время таймера (15 секунд). Далее трамвай стоит 5 секунд. Когда они пройдут, на следующие 10 секунд у трамвая активируется иммунитет на поиск препятствий на рельсах, он их замечать не будет.
UPD: проверил в игре, работает.
Сообщение отредактировал Den_spb - Пятница, 03.02.2023, 21:23 |
|
| |
Wanoo | Дата: Воскресенье, 05.02.2023, 20:54 | Сообщение # 53 |
Группа: Пользователи
Сообщений: 3
Статус: Offline
| Спасибо! Попробую.
[Обновлено] Работает!
Добавлено (30.04.2023, 16:14) --------------------------------------------- И ещё раз здравствуйте! Подскажите пожалуйста, какие значения отвечают за дальность проверки препятствия впереди? Y_DIMENSION или что-то в :CHECK_OBSTACLES нужно поменять?
Сообщение отредактировал Wanoo - Воскресенье, 30.04.2023, 16:15 |
|
| |
Den_spb | Дата: Среда, 03.05.2023, 19:37 | Сообщение # 54 |
Создатель сайта
Группа: Администраторы
Сообщений: 1600
Статус: Offline
| Добрый день. Да, Y_DIMENSION это максимальное расстояние от центра трамвая, на котором скрипт будет искать препятствия впереди трамвая. Менять нужно здесь: Код 07E4: get_model 449 dimensions_cornerA_to 2@ 3@ 4@ dimensions_cornerB_to 5@ Y_DIMENSION 7@ if TRAM_STRUCT > 0 then Y_DIMENSION += 16.0 08BD: set FLAGS bit MANY_CARRIAGES else Y_DIMENSION += 12.0 end
Если у трамвая только один вагон, то Y_DIMENSION изначально равно половине длине трамвая + 12 метров. Если есть еще вагоны, то половина длины трамвая + 16 метров.
|
|
| |
Wanoo | Дата: Пятница, 12.05.2023, 23:47 | Сообщение # 55 |
Группа: Пользователи
Сообщений: 3
Статус: Offline
| Цитата Den_spb ( ) Да, Y_DIMENSION это максимальное расстояние от центра трамвая Спасибо!
Есть вопрос по ж/д шлагбаумам. Они активируются приблизительно в 100 ед от персонажа, можно ли увеличить расстояние их активации?
|
|
| |
Den_spb | Дата: Четверг, 18.05.2023, 20:15 | Сообщение # 56 |
Создатель сайта
Группа: Администраторы
Сообщений: 1600
Статус: Offline
| Цитата Wanoo ( ) Они активируются приблизительно в 100 ед от персонажа, можно ли увеличить расстояние их активации? По этому вопросу не подскажу, надо разбираться в gta_sa.exe и изучать функцию, управляющую шлагбаумами. Есть только адрес, отвечающий за расстояние от шлагбаума до поезда, когда шлагбаум начинает закрываться: https://modsforgta.ucoz.ru/forum/10-43-4867-16-1633365841
Цитата DATA XREF: sub_410EC0+4Fr это похоже дистанция от шлагбаума до поезда когда он начинает закрываться.
|
|
| |