Суббота, 20.04.2024, 11:37
Качественные скрипты, моды и дополнения для GTA без регистрации
Главная Регистрация Вход
Приветствую Вас, Гость · RSS
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 4 из 4
  • «
  • 1
  • 2
  • 3
  • 4
Форум » Игры серии ГТА » Скрипты от Den_spb » Улучшение движения трамваев (Обсуждение скрипта)
Улучшение движения трамваев
Den_spbДата: Воскресенье, 09.09.2012, 02:08 | Сообщение # 46
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Что не запускается?
 
Den_spbДата: Воскресенье, 09.09.2012, 02:21 | Сообщение # 47
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Выкладывай изменённый исходник - проверю (можно к сообщению прикрепить).
 
Den_spbДата: Воскресенье, 09.09.2012, 23:34 | Сообщение # 48
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: 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
Группа: Пользователи
Сообщений: 77
Статус: Offline
Когда ставиш модели на путь carrec.rrr через cleo то они теряют твёрдость,внутри них нельзя ездить,нельзя прыгаtь на крыши(палубы)-актёр проваливается.Можно ли каким 0пкодом вернуть твёрдость на них?
---------------------------------------------------------------------------------------
Твёрдость есть теперь,но ехать на крыше невозможно - модель движется внизу,а cg остается на месте.


Сообщение отредактировал laggth - Вторник, 11.09.2012, 21:11
 
Den_spbДата: Вторник, 11.09.2012, 20:17 | Сообщение # 50
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: 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
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Добрый день!
Рад, что понравился скрипт! Спасибо за отзыв  smile

Чтобы добавить таймер, ограничивающий время остановки перед препятствием, можно попробовать сделать следующее.
Находим строчки кода:

Код

  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
Спасибо! Попробую.

[Обновлено]
Работает!  biggrin

Добавлено (30.04.2023, 16:14)
---------------------------------------------
И ещё раз здравствуйте!
Подскажите пожалуйста, какие значения отвечают за дальность проверки препятствия впереди?
Y_DIMENSION или что-то в :CHECK_OBSTACLES нужно поменять?


Сообщение отредактировал Wanoo - Воскресенье, 30.04.2023, 16:15
 
Den_spbДата: Среда, 03.05.2023, 19:37 | Сообщение # 54
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: 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
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Цитата Wanoo ()
Они активируются приблизительно в 100 ед от персонажа, можно ли увеличить расстояние их активации?

По этому вопросу не подскажу, надо разбираться в gta_sa.exe и изучать функцию, управляющую шлагбаумами.
Есть только адрес, отвечающий за расстояние от шлагбаума до поезда, когда шлагбаум начинает закрываться: https://modsforgta.ucoz.ru/forum/10-43-4867-16-1633365841

Цитата
DATA XREF: sub_410EC0+4Fr это похоже дистанция от шлагбаума до поезда когда он начинает закрываться.
 
Форум » Игры серии ГТА » Скрипты от Den_spb » Улучшение движения трамваев (Обсуждение скрипта)
  • Страница 4 из 4
  • «
  • 1
  • 2
  • 3
  • 4
Поиск: