00060. События актёров
События актёров|В этом уроке мы рассмотрим события актёров.|wmysterio|wmysterio||||Каждый актёр выполняет какое то действие. Оно записывается в специальную переменную, в которой хранится событие, совершающее актёром в текущий момент. Событий не так уж много, но из них можно сделать неплохие скрипты. Список всех известных событий вы можете найти в нашей базе данных - события. А теперь рассмотрим опкоды для работы с событиями:
074F: actor 1@ ped_event == 10
Проверка: "Актёр выполняет событие 10?" Здесь: 1@ - хендл актёра 10 - ID события
080E: get_actor 1@ ped_event_to 0@
Опкод записывает в переменную текущее событие актёра Здесь: 1@ - хендл актёра 0@ - в эту переменную будет записан ID события, выполняющегося в данный момент
Используя эти опкоды, давайте напишем скрипт, который будет хранить количество убитых CJ-ем персов. Для этого создадим в папке Cleo ini-файл "kill.ini", содержание которого:
ini
[a]
kill=0
Здесь будет хранится количество убитых персов. Вот код самого скрипта:
{$CLEO}
0000:
while true
03F0: enable_text_draw 1
0AF0: 0@ = get_int_from_ini_file "CLEO\kill.ini" section "a" key "kill"
045A: draw_text_1number 20.0 20.0 GXT 'GXTNAME' number 0@ // Kills: ~1~
if
0AD2: 1@ = player $PLAYER_CHAR targeted_actor //IF and SET
then
if
074F: actor 1@ ped_event == 10
then
0@ += 1
0AF1: write_int 0@ to_ini_file "CLEO\kill.ini" section "a" key "kill"
end
end
wait 0
end
Так же на экране будет выведено количество жертв Правда минус в том, что нужно всегда целится в актёра, иначе не сработает условие. Вы можете использовать события актёров для написания скриптов, так что вперёд!
|1388|1|0||sobytija_aktjorov|1499600461
Last updated
Was this helpful?