Команды в гонках
В этой статье я расскажу какие команды можно использовать в гоночных миссиях.
Самая лучшая из всех мне известных команд заставить машину ехать в какую-либо точку выглядит так:
05D1: AS_actor $act drive_vehicle -1 to $x $y $z speed $speed $type 0 2
Думаю понятно что означают переменные $act,$x,$y,$z,$speed. -1 это машина водилы(если он действительно в машине, то можно ставить -1). Дальше уже интереснее. $type - тип езды к данной точке. Бывают следущие типы:
1 - строго по "путям", по которым ездит весь обычный трафик в игре
2 - напрямую к точке(врежется в ближайшее здание или забор)
3 - самый полезный в гоночных миссиях тип. Машина использует для езды всю ширину дороги, срезает углы, вобщем приятно взглянуть. Однако в некоторых местах карты путь для этого типа проложен криво и машина трется боком о край дороги. Следущий параметр - номер модели машины... Можно ставить 0. Последний параметр в этом опкоде мало что меняет. Обычно здесь "2". 0687: clear_actor_task $act
снять с актера все задачи (в частности прекратить выполнение пред. опкода) 03CC: set_vehicle $car enable_stuck_check_distance_to 2.0 time_to 2000
Вобщем если машина за две секунды не сдвинулась с точки на растояние 2.0 (то есть застряла) то она восстановится на ближайшем дорожном пути да так, чтобы игрок не видел этого безобразия. Иногда этот опкод не работает. 03CD: car $car remove_from_stuck_car_check
удаляет эту проверку 06D5: $rchekp = create_racing_checkpoint_at $x $y $z point_to $x1 $y1 $z1 type 0 radius 6.0
Создать гоночный чекпоинт в координатах $x $y $z со стрелкой, направленной в $x1 $y1 $z1(координаты след. чекпоинта) и радиусом 6.0. Если type изменить на 1, то этой стрелки не будет(такие используют на финише)
06D6: delete_racing_checkpoint $rchekp Удалить гоночный чекпоинт 097A: play_sound 1058 at 0.0 0.0 0.0
Проиграть звук в заданных координатах(при нулях-везде). Звук 1058 можно использовать при взятии чекпоинта. Список всех звуков вы можете посмотреть в файле AudioEvents, в папке data с игрой. 018E: stop_sound 82@ Прекратить воспроизведение звука
Иногда требуется, чтобы машина «вытворила» что-нибудь. Для этого можно использовать: Car.SetAnimation($car, 5, 10000) машина выполняет анимацию 5 в течении 10 сек. Вот некоторые номера анимаций:
3 ехать назад
4 колеса влево
5 колеса вправо
7 крутится по кругу против часовой стрелки
8 по часовой…
9 ехать вперед
13 то же что и 8, только задним ходом
14 то же что и 7, только задним ходом
От остальных никакого эффекта вроде нет 06C7: AS_actor $act driver_of_vehicle -1 perform_action 5 time 2500 всё как в предыдущем опкоде, только указывается актер а не машина 054C: use_GXT_table 'RACETOR' можно не создавать свою текстовую таблицу, а использовать это для вывода текста, связанного с гонками
Можно было еще много чё написать, но многие команды давно всем известны. Пока что это все. Ждите от меня развитие гоночной темы. В следущий раз мы от теории перейдем к практике
Автор: Nikitos
729 Прочтений • [Команды в гонках] [13.05.2012] [Комментариев: 0]