Страница 1 из 1

OPCODES GTA San Andreas [Уроки по созданию модов GTA SA]

Добавлено: 21 фев 2019, 20:58
Vovka
Актёр, Игрок

Игрок, действия
07B4: $PLAYER_CHAR @1 ;; Возможность набора гангстеров в команду (@1= Да, @0= Нет)
070D: $PLAYER_CHAR ;; Обновить модель игрока
03FD: set_player $PLAYER_CHAR handling_responsiveness @1 ;; Отзывчивость управления авто
03BF: set_player $PLAYER_CHAR ignored_by_everyone_to @1 ;; Педы игнор. вас (@1= Да, @0=Нет)
0222: set_player $PLAYER_CHAR health_to @1 ;; Установка жизни актёру (@1)
0171: set_player $PLAYER_CHAR z_angle_to @1 ;; Установка поворота игрока (@1)
0992: set_player $PLAYER_CHAR weapons_scrollable @1 ;; Возможн. прокрутки оружия (@1= Да, @0= Нет)
01B4: set_player $PLAYER_CHAR frozen_state @0 ;; Замораживаем игрока (@0=да, @1= Нет)
01F7: set player $PLAYER_CHAR ignored by cops state to @0 ;; Копы игнорируют игрока (@0= Да, @1= Нет)
010D: set player $PLAYER_CHAR wanted level to 4 ;; Устанавливам кол-во звёзд игроку.
010E: set player $PLAYER_CHAR minimum wanted level to @1 ;; Уст. Минимальный уровень розыска (@1)
052C: set player $PLAYER_CHAR drunk visuals @1 ;; Головокружение (@1)
0109: player $PLAYER_CHAR money += 1000000 ;; Даем игроку деньги
070D: $PLAYER_CHAR ;; Обновляем модель игрока
0998: add respect 3 ;; Добавляем Respect актеру
09C7: change_player $PLAYER_CHAR model_to @2 ;; заменяем модель игрока на модель (@2)
Player.InfiniteRun($PLAYER_CHAR) = True ;; Бесконечный бег
055D: make player $PLAYER_CHAR fireproof @1 ;; Иммунитет к огню (@1= Да, @0 = Нет)
0331: unknown_player $PLAYER_CHAR set_fast_reload @1 ;; Быстрая перезарядка оружия (@1= Да, @0= Нет)

Игрок, проверки
0457: player @1 aiming_at_actor @2 ;; Игрок (@1) целится в актера (@2)
0122: player @1 pressing_horn ;; Игрок (@1) сигналит
0241: player @1 in_remote_mode ;; Игрок (@1) в режиме удалённого управления
03EE: player @1 controllable ;; Игрок (@1) управляем
09DE: @1 ;; Игрок садится в транспорт
01DF: tie actor @1 to player @2 ;; Актёр (@1) идёт за игроком (@2)
010F:player $PLAYER_CHAR wanted_level > 0 ;; Уровень розыска у игрока
0457: player $PLAYER_CHAR aiming_at_actor @1 ;; Игрок прицелился в актера
010A:player $PLAYER_CHAR money > 100 ;; Количество денег у игрока
03EE:player $PLAYER_CHAR controllable ;; Игрок управляется

Игрок, переменные
0956: @1 = get_respect ;; Текущий Respect (@1)
051E: @1 = get_current_radio_station ;; Текущая радиостанция (@1)

Актёр, действия
05DD: AS_actor (@1) fear_actor (@2) from_origin_radius (@3) (@4) актёр (@1) убегает от Другова актера (@2) в определённом радиусе (@3) отпределенное время (@4)
0667: unknown_action_sequence @1 @2 @3 @4 @5 ;;Актёр (@1) целится в заданные координаты (@2 @3 @4) определенное время (@5)
087E: set_actor @1 weapon_droppable 0 ;; Актер оставляет/не оставляет оружие после смерти
09B8: create_blood_gush_at $73 $74 $75 offset 5.0 -5.0 10.0 density 100 on_actor $PLAYER_ACTOR ;; Создание крови в заданных координатах на офсете от актера
0464: put actor $1 into turret on car 1@ at car offset 0.4 -3.8 1.6 unknown 3 angle 270.0 with weapon 27 ;; Помещаем актера в машину ( в turret- режим)
00A1: put actor $PLAYER_ACTOR at 0.0 0.0 0.0 ;; Ставим актера в координаты
0555: remove_weapon 22 from_actor @1 ;; Удаление оружия 22 от актера 1@
0639: unknown_action_sequence 1@ 2@ ;; Актер 1@ поворачивается к актеру 2@
05E2: actor $1 kill_actor $2 ;; Актер $1 атакует актера $2
5D1: AS_actor 1@ drive_car 2@ to 5@ 6@ 7@ speed 15.0 0 0 0 ;; Актер (1@) ведет машину 2@ в координаты со скоростью 15
06A9: AS_actor @1 look_at @2 @3 @4 @5 ;; Актёр (@1) смотрит в точку (@2 @3 @4) определённое время (@5)
06B0: AS_actor @1 sit_down @2 ms ;; Актёр (@1) садится определенное время (@2)
0223: set actor @1 health to 100 ;; Установка жизней актеру
0321: kill_actor $1 ;; Убить актера $1
07A5: unknown_action_sequence $1 $2 10000 ;; Актер $1 атакует актера $2 10 секунд
05CA: unknown_action_sequence $1 $2 10000 0 ;; Актер $1 Садится в тачку $2 за 10 секунд
06BA: unknown_action_sequence $1 0.0 0.0 0.0 ;; Актер $1 поворачивается в координаты
0332: set_actor @1 bleeding_to 1 ;; Кровотечение у актера
04EB: unknown_action_sequence @1 1 ;; Актер присел (0- встает, 1- присел)
0850: $1 $2 ;; Актер $1 идет за актером $2
0672: unknown_action_sequence $1 $2 ;; Актер $1 атакует машину $2
05D4: AS_actor $1 rotate_angle 77.0 ;; Повернуть актера на 77 градусов
04C4: create coordinate $1 $2 $3 from actor $PLAYER_ACTOR offset 0.0 6.2 0.5 ;; Создаем координаты от актера
0967: actor 1@ move_mouth_for 3000 ms ;; Анимация разговора для актера
0968: actor 1@ stop_mouth ;; Остановка анимации для актера
062A: change_stat 165 to 1000.0 ;; Установка значения статистики
0729: unknown_action_sequence $PLAYER_ACTOR 1 ;; Анимация телефона (1- достает из кармана, 0 – кладет в карман)
069B: attach_object @1 to_actor $PLAYER_ACTOR at_offset 0.0 0.0 0.0 rotation 0.0 0.0 0.0 ;; Подцепить объект к актеру
03FE: set actor @1 money 0 ;; Установка денег актеру
06E3: AS_actor @1 roll_sideways 1 ;; Актёр (@1) кувыркается влево (0) или вправо (1)
05BC: action_sequence actor $1 jump 0 ;; Вид прыжка для актера
0245: set actor $1 walk style to "FATMAN" ;; Установка походки для актера
07FE: set_actor $PLAYER_ACTOR fighting_style_to 5 6 ;; Установка стиля борьбы для актера
02E2: set_actor @1 weapon_accuracy_to 75 ;; Установка точности стрельбы для актера
02AB: set actor @1 immunities 0 0 0 0 0 ;; Иммунитеты актеру

Актёр, проверки
0602: $PLAYER_ACTOR ;; Актёр управляет такси.
047A: actor @1 driving_a_motorbike ;; @1 управляет мотоциклом
04C8: actor @1 driving_flying_vehicle ;; @1 рулит летательным транспортом
04A7: actor @1 driving_boat ;; @1 управляет водным транспортом
04A9: actor @1 driving_helicopter ;; @1 управляет вертолётом
0597: actor @1 crouching ;; Актёр (@1) присел
0965: actor $PLAYER_ACTOR swimming_in_water ;; Актер в воде и плывет
0965:actor $PLAYER_ACTOR in_water ;; Актер в воде
06EE:actor $PLAYER_ACTOR in_group @1 ;; Актер в группе 1@
04AD: actor $PLAYER_ACTOR touching_water ;; Актер дотронулся до воды
00DB:actor $PLAYER_ACTOR in_car 1@ ;; Актер в тачке 1@
00DF:actor $PLAYER_ACTOR driving ;; Актер ведет транспорт
0474: actor $PLAYER_ACTOR near_object 1@ offset 15.0 15.0 4.0 unknown 0 ;; Актёр около объекта 1@ в радиусе 15.0 15.0 4.0
0118:actor $PLAYER_ACTOR dead ;; Актер мертв
02A0:actor $PLAYER_ACTOR stopped ;; Актер стоит (не бежит)
0449:actor $PLAYER_ACTOR in_a_car ;; В машине ли актер вообще

Актёр, переменные
0172: @1 = actor @2 z_angle ;; Угол поворота актёра.
00A0: store_actor @1 position_to @2 @3 @4 ;; Запись координат актёра (@1) в (@2 @3 @4)
083D: @1 @2 @3 @4 ;; запись угла поворота актёра (@1) по X(@2) Y(@3) Z(@4)
04C4: create_coordinate $1 $2 $3 from_actor $PLAYER_ACTOR offset 0.0 0.0 0.0 ;; Создаем координаты от актера

Транспорт

Транспорт, действия
0229: set car $1 color to 11 0 ;; Устанавливаем транспорту покраску
0657: car $1 open_component 1 ;; Открыть компонент у машины
04E1: open_and_freeze_trunk_of_car @1 ;; Открыть капот
0788: enable_heli @1 magnet 1 ;; Магнит в вертолете
020A: set_car $1 door_status_to 0 ;; Двери открыты/ закрыты
00AE: unknown_set_car $1 to_ignore_traffic_lights 2 ;; Машина игнорирует светофоры
00AB: put_car @7 at 1@ 2@ 3@ ;; Поставить тачку @7 в заданные координаты
08E6: plane 1@ change_landing_gear 1 ;; Шасси у самолета
01EB: set car density to 0.0 ;; Частота появления транспорта
041E: set radio station 3 ;; Установка радиостанции в транспорте
07FF: set_car $1 hydraulics 0 ;; Гидравлика в машине
0622: AS_unknown_remove_actor $PLAYER_ACTOR from_car @1 ;; Актер выпрыгивает из машины
067F: control_car @1 lights 0 ;; Включить/выключить фары
0294: set_car $1 sprayable 0 ;; Машину можно/нельзя перекрасить
04D2: unknown_RC_car $1 race_to @1 @2 @3 0.0 0.0 ;; Самолет движется к координатам @1 @2 @3
02C2: car 1@ drive_to_point 0.0 0.0 0.0 ;; Машина едет в заданные координаты
02D3: boat 1@ drive_to point 0.0 0.0 0.0 ;; Лодка едет в заданные координаты
Car.DriveTo(1@, 0.0 0.0 0.0 ) ;; Машина едет в заданные координаты (аналог 02C2)

Транспорт, Проверки
096E:car $1 lowrider ;; Машина типа ‘Lowrider’
01F4: car $1 flipped ;; Транспорт утонул
0119: car @1 wrecked ;; Машина уничтожена
02BF: car @1 sunk ;; Авто в воде
03CE: car @1 stuck ;; Машина перевернута
01F3: car $1 airborne ;; Машина в воздухе
01C1: car $1 stopped ;; Машина стоит
0803: car @1 have_hydraulics ;; Машина с гидравликой
096F: car @1 street_racer ;; Машина с тюнингом
051D: cars @1 and @2 collided ;; Машина @1 ударилась об машину @2
01B0:car $1 stopped 0 ()near_point 1@ 2@ 3@ radius 4.0 4.0 4.0 ;; Машина находится в коориднатах (1@ 2@ 3@)
056E: $1 ;; Транспорт существует

Транспорт, Переменные
0407: create coordinate $1 $2 $3 from car $5 offset 0.4 -3.8 1.6 ;; Создать координаты от машины с офсетом.
00AA: store_car $1 position_to $2 $3 $4 ;; Создать координаты от машины без офсета
02E3: $1 = car $2 speed ;; Записать в переменную скорость машины
0174: $1 = car $2 z_angle ;; Записать в переменную градусы поворота машины

Интерфейс

Интерфейс, действия
0003: shake camera @1 ;; Тряска камеры (@1)
0826: toggle_hud @1 ;; @1= Включить интерфейс, @0= Выключить интерфейс
0931: 1 ;; Затемнение экрана
057E: make_radar_grey @1 ;; Установить радару серый цвет (@1= Да, @0= Нет)
0581: toggle_radar @0 ;; Убрать радар (@0= Да, @1= Нет)
075B: @1 ;; Устанавливаем увеличение радара на карте (@1, от 0 до 100)
0A1E: dump_screen @1 ;; Снимок экрана (@1- Да, @0= Нет)

Интерфейс, проверки
016B: fading ;; Экран НЕ потемнел


Камера

Камера, действия
03CB: set_camera @1 @2 @3 ;; Установить камеру (влияет на прорисовку)
015F: set_camera_position @1 @2 @3 0.0 0.0 0.0 ;; Установить позицию камеры
0160: point_camera @1 @2 @3 2 ;; Точка, в которую повернется камера
0460: set_camera_pointing_time 0.0 @1 ;; Время перехода камеры из одной позиции в другую (@1 млс.)
-----------------------------------------------------
0373: set_camera_directly_behind_player ;; Устанавливаем камеру в обычный режим
02EB: restore_camera_with_jumpcut ;; Желательно использовать 2 этих опкода сразу.
-----------------------------------------------------
0936: @1 @2 @3 $1 $2 $3 s$1 1 ;; Устанавливаем камеру (@1 @2 @3) и точку поворота камеры (@4 @5 @6)
0920: @4 @5 @6 $4 $5 $6 s$2 1 ;; Затем плавный переход в позицию ($1 $2 $3) с точкой ($4 $5 $6) за определенное время (s$1, s$2)
0925: (unknown) ;; Выключение камеры
-----------------------------------------------------
067C: put_camera_on_actor @1 offset @2 @3 @4 rotation 0.0 0.0 0.0 0.0 2 ;; Прицепляем камеру к актеру (@1) с офсетом (@2 @3 @3 с вращением или без)
0679: put_camera_on_vehicle @1 offset @2 @3 @ rotation 0.0 0.0 0.0 0.0 2 ;; Прицепляем камеру к транспорту (@1) с офсетом (@2 @3 @3 с вращением или без)
092F: @1 (вращение камеры мышкой в небольшом радиусе от игрока (@1= Да, @0= Нет)
0930: @1 ;; Возможность вращения камеры мышкой (@1= Да, @0= Нет)
0158: camera on vehicle @1 @2 @3 ;; Меняем точку камеры на транспорт (@1) с параметрами (@2, @3)
0159: camera_on_ped @1 @2 @3 ;; Меняем точку камеры на актёра (@1) с параметрами (@2, @3)


Gameplay

Gameplay, действия
00C0: set_current_time 15 0 ;; Установить игровое время
015D: set gamespeed .9 ;; Скорость игры
01B6: set weather 1 ;; Погода
07A8: toggle_military_zones 0 ;; Включение/выключенные военных зон
0394: play music 1 ;; Включить музыку при выполнении миссии
043C: unknown_set_game_sounds 0 ;; Включение/выключенные игровых звуков
04E4: unknown_refresh_game_renderer_at 0.0 0.0 ;; Прорисовать местность в заданных координатах

Gameplay, Проверки
840C: not is_german_game ;; Не германская версия (язык)


Маркеры

Маркеры, действия
0A40: $1 = create_entrance_marker_at 1685.7 -2238.8999 14.0 color 14 ;; Создать entrance-маркер в координатах
0167: @1 = create_marker_at 0.0 0.0 0.0 0 2 ;; 14 ;; Создать маркер в координатах
0A41: destroy_entrance_marker $1 ;; Удалить entrance-маркер
Marker.Disable($1) ;; Выключить маркер
Marker.SetColor(1@, 1) ;; Установить цвет маркеру
Marker.SetIconSize(45@, 2) ;; Указать размер иконки пакапа
03DC: 1@ = create_marker_above_pickup 2@ ;; Создать маркер над пикапом
0186: $1 = create_marker_above_car $2 ;; Создать маркер над транспортом
0188: @1 = create_marker_above_object @2 ;; Создать маркер над объектом
0187: @1 = create_marker_above_actor @2 ;; Создать маркер над актером

Маркеры, Проверки
075C: marker 1@ enabled ;; Маркер включен
875C: not marker $1 enabled;; Маркер не включен

TXD

TXD, действия
0390: load_txd_dictionary "MYTXD" ;; Загрузить TXD файл ‘MYTXD’
038F: request_texture "IMAGE1" as 1 ;; Загрузить изображение ‘IMAGE1’ в число ‘1’
038D: create_texture 1 position 560.0 200.0 scale 180.0 180.0 color 255 255 255 alpha 255 ;; Создаем текстуру ‘1’ в нужных координатах на экране.
074B: texture 1 position 560.0 200.0 scale 180.0 180.0 rotation 90 color 255 255 255 alpha 255 ;; Создаем/перемещаем/поварачиваем текстуру ‘1’ в нужных координатах на экране.
03F0: text_draw_toggle 0 ;; Убрать все текстуры с экрана
0391: release_txd_dictionary ;; Выгрузить текущую TXD’шку