Прожекторы
Все наверно замечали что в GTA San Andreas во многих миссиях используются прожекторы. Прожекторы ставяться на вертолётах или на каких других объектах. (вспомните множество миссий, где надо пробраться на корабль или на военные базы, и при этом не попасть в поле зрения прожектора. Или погоню полиции на вертолёте, на котором установлен ослепляющий прожектор.) Так вот, из этой статьи мы научимся как создавать и управлять прожекторами. Для этого необходимо не так уж много опкодов. В отличае от других 3D объектов прожектора не требуют предварительной загрузки. Итак, начнём.
Рассмотрим первый опкод. Данный опкод создаёт прожектор на машине (чаще всего на вертолёте). (для Sanny Buildera) 06C1: create_searchlight 58@ on_vehicle 40@ offset 0.0 1.0 -0.5 radius 0.4 target 2228.36 -1171.48 25.82 radius 5.0
Рассмотрим его поподробнее:
58@ - перемнная прожектора
40@ - переменная вертолёта
0.0 1.0 -0.5 - оффсет относительно центра вертолёта
radius 0.4 - а этот параметр задаёт радиус начала прожектора. (Проще говоря толщину начала прожектора)
2228.36 -1171.48 25.82 - точка на которую светит прожектор (можно переменные)
radius 5.0 - он обозночает радиус конца прожектора или проще говоря радиус освещаемой плоскости.
Так, с этим разобролись. Следующий опкод не менее интересный. 06B4: set_searchlight 58@ path_to 2228.36 -1171.48 25.82 2215.41 -1142.51 25.5 speed 0.5
Он заставляет прожектор (с переменными 58@) плавно переходить из одной точки ( 2228.36 -1171.48 25.82) в другую ( 2215.41 -1142.51 25.5) со скоростью 0.5 (speed 0.5) (Помните как в миссии, где надо пробраться на корабль и установить бомбу. Так с этого коробля в воду направлены прожектора. И освещают они участок воды постоянно меняя своё положение, вроде как такая дорожка получается).
Этот опкод заставляет прожектор следить за актёром ($131) со скоростью 0.2 (speed 0.2). 06B6: set_searchlight 58@ follow_actor $131 speed 0.2
В отличае от первого опкода этот опкод создаёт прожектор в оприделённых координатах (-1474.145 1484.038 11.38) и не зависемо от машины. Всё остальные параметры те же что и у первого опкода. Думаю, разберётесь сами: 06B1: 383@ = create_searchlight_at -1474.145 1484.038 11.382 radius 1.0 target -1465.154 1463.004 -0.5 radius 25.0
Ну это элементарно! Уничтожить прожектор (58@). 06B2: destroy_searchlight 58@
Этот опкод прикрепляет пожектор 383@ к башне(или к вершине) чего-то, и дальше следует много каких то параметров, с которыми, думаю, разберётесь сами: 06CA: attach_searchlight 383@ to_tower 389@ to_housing 395@ to_bulb 401@ at_offset 0.0 1.181 0.768
Ну вот и всё ! Если что-то не понятно спрашивайте на форуме.