Сповіщення
Очистити все
03.11.2023 23:23
Отже, насамперед у директорії gamedata\scripts створіть файл під назвою имя_вашего_файла.script
1. Відкриваємо його і пишемо:
local level_name = { [ "l01_escape" ] = "Кордон" , [ "l02_garbage" ] = "Сміттєзвалище" , [ " l03_agroprom" ] = " НДІ Агропром" , [ "l03u_agr_underground" ] = " Підземілля НДІ Агропром" " ] = "Темна долина" , [ "l04u_labx18" ] = "Лабораторія X-18" , [ "l05_bar" ] = "Бар" , [ "l06_rostok" ] = "Дика територія" , [ "l07_military" ] = "Ар .склади" , [ "l08_yantar" ] = "Бурштин" , [ "l08u_brainlab" ] = "Лабораторія X-16" , [ "l10u_bunker" ] = " Лабораторія X-10" , [ "l10_radar" ] = "Радар [ "l11_pripyat" ] = " Прип'ять" , [ "l12_stancia" ] = "ЧАЕС" , [ "l12_stancia_2" ] = "ЧАЕС" , [ "l12u_sarcofag" ] = "Саркофаг" , [ " l12u_control_monolith " } local community = { [ "stalker" ] = "Сталкер" , [ "monolith" ] = "Моноліт" , [ "military" ] = "Військові" , [ "bandit" ] = "Бандит" , [ "killer" ] = "Найманник" , [ "ecolog" ] = "Еколог" , [ "dolg" ] = "Борг" , [ "freedom" ] = "Свобода" , [ "zombied" ] = "Зомбований" , [ "trader" ] = "Торгівець" } function kill_npc ( victim , who ) if victim and IsStalker ( victim ) the local dead_news = " \\ n %c[255,160,160,160]Угруповання: %c[default ] " ..community [ victim : character_commu n%c[255,160,160,160]Ім'я: %c[default]" ..victim : character_name ( ) .. " \\ n%c[255,160,160,160]Локація: %c[default] " ..level_name [ level.name .. " " db.actor:give_game_news ( dead_news , " ui \ ui_icons_npc " , Frect ( ) : _ _ _ _ _ _ _ _ _ _ _
Тепер поясню:
local level_name = { [ "l01_escape" ] = "Кордон" , [ " l02_garbage" ] = "Сміттєзвалище" , [ "l03_agroprom" ] = " НДІ Агропром" , [ "l03u_agr_undergroun" ] = " Підземілля НДІ Агропром" " ] = "Темна долина" , [ "l04u_labx18" ] = "Лабораторія X-18" , [ "l05_bar" ] = "Бар" , [ "l06_rostok" ] = "Дика територія" , [ "l07_military" ] = "Ар .склади" , [ "l08_yantar" ] = "Бурштин" , [ "l08u_brainlab" ] = "Лабораторія X-16" , [ "l10u_bunker" ] = " Лабораторія X-10" , [ "l10_radar" ] = "Радар [ "l11_pripyat" ] = " Прип'ять" , [ "l12_stancia" ] = "ЧАЕС" , [ "l12_stancia_2" ] = "ЧАЕС" , [ "l12u_sarcofag" ] = "Саркофаг" , [ " l12u_control_monolith " } - назви локацій local community = { [ "stalker" ] = "Сталкер" , [ "monolith" ] = "Моноліт" , [ "military" ] = "Військові" , [ "bandit" ] = "Бандит" , [ "killer" ] = "Найманник" , [ "ecolog" ] = "Еколог" , [ "dolg" ] = "Борг" , [ "freedom" ] = "Свобода" , [ "zombied" ] = "Зомбований" , [ "trader" ] = "Торговець" } - назви угруповань function kill_npc ( victim , who ) if victim and IsStalker ( victim ) the local dead_news = " \\ n %c[255,160,160,160]Угруповання: %c[default ] " ..community [ victim : character_commu n%c[255,160,160,160]Ім'я: %c[default]" ..victim : character_name ( ) .. " \\ n%c[255,160,160,160]Локація: %c[default] " ..level_name [ level.name .. "" db.actor:give_game_news ( dead_news, "ui \ ui_icons_npc" , Frect ( ) : set ( 2 , 130 , 124 , 124 ) , 1 , 4000 ) - визначається яке угруповання у вбитого, його end end
2. Далі відкриваємо xr_motivator.script , який знаходиться в gamedata\scripts , шукаємо функцію:
function motivator_binder:death_callback(victim, who)
і після пишемо: имя_вашего_файла.kill_npc(victim, who) в результаті:
function motivator_binder:death_callback ( victim, who ) имя_вашого_файла.kill_npc ( victim, who ) if who:id ( ) == db.actor:id ( ) then xr_statistic.addKillCount ( self.object ) end
Ось, власне, і все! Прим. від AntdiabloN Можна зробити так щоб при виведенні інформації можна було почути звук прийнятого повідомлення. Наприкінці файлу з повідомленнями про смерть пишемо -
-- Звук повідомлення function news_sound ( ) local snd_obj snd_obj = xr_sound.get_safe_sound_object ( [ [ device\pda\pda_tip ] ] ) - шлях до звукового файлу snd_obj:play_no_feedback ( db.actor, sound_object.s2d, 1 , vector ( ) , 1.0 ) end
і функції news_of_npc_kill перед першим end пишемо - имя_вашего_файла.news_sound()
Приклад як може виглядати функція:
function kill_npc ( victim , who ) if victim and IsStalker ( victim ) the local dead_news = " \\ n %c[255,160,160,160]Угруповання: %c[default ] " ..community [ victim : character_commu n%c[255,160,160,160]Ім'я: %c[default]" ..victim : character_name ( ) .. " \\ n%c[255,160,160,160]Локація: %c[default] " ..level_name [ level.name .. "" db.actor:give_game_news ( dead_news, " ui \\ ui_icons_npc " , Frect ( ) :set ( 2 , 130 , 124 , 124 ) , 1 , 4000 ) ім'я_вашого_файлу .