SoC. Сообщение о смерти сталкеров — различия между версиями
Материал из S.T.A.L.K.E.R. Inside Wiki
RedPython (обсуждение | вклад) м (Защищена страница «SoC. Сообщение о смерти сталкеров» ([edit=autoconfirmed] (бессрочно) [move=autoconfirmed] (бессрочно))) |
|||
Строка 2: | Строка 2: | ||
1.Открываем его и пишем: | 1.Открываем его и пишем: | ||
− | <lua>local | + | <lua>local level = { |
− | ["l01_escape"] = " | + | ["l01_escape"] = "Кордон", |
− | ["l02_garbage"] = " | + | ["l02_garbage"] = "Свалка", |
− | ["l03_agroprom"] = " | + | ["l03_agroprom"] = "Агропром", |
− | ["l03u_agr_undergroun"] = " | + | ["l03u_agr_undergroun"] = "Подземелье Агропрома", |
− | ["l04_darkvalley"] = " | + | ["l04_darkvalley"] = "Тёмная долина", |
− | ["l04u_labx18"] = " | + | ["l04u_labx18"] = "Лаборатория X-18", |
− | ["l05_bar"] = " | + | ["l05_bar"] = "Бар", |
− | ["l06_rostok"] = " | + | ["l06_rostok"] = "Росток", |
− | ["l07_military"] = " | + | ["l07_military"] = "Арм.склады", |
− | ["l08_yantar"] = " | + | ["l08_yantar"] = "Янтарь", |
− | ["l10_radar"] = " | + | ["l10_radar"] = "Радар", |
− | ["l11_pripyat"] = " | + | ["l11_pripyat"] = "Припять", |
− | ["l12_stancia"] = " | + | ["l12_stancia"] = "ЧАЭС 1", |
− | ["l12_stancia_2"] = " | + | ["l12_stancia_2"] = "ЧАЭС 2", |
− | ["l12u_sarcofag"] = " | + | ["l12u_sarcofag"] = "Саркофаг" |
− | + | } | |
function news_of_npc_kill(victim) | function news_of_npc_kill(victim) | ||
− | |||
if victim and IsStalker(victim) then | if victim and IsStalker(victim) then | ||
− | + | local dead_news ="\\n%c[255,160,160,160]Погиб сталкер: %c[default]"..victim:character_name().."\\n%c[255,160,160,160]Локация: %c[default]"..level[level.name()] or "" | |
− | + | db.actor:give_game_news(dead_news, "ui\\ui_icons_npc", Frect():set(2,130,124,124), 1, 4000) | |
− | + | end | |
− | + | ||
end</lua> | end</lua> | ||
Теперь поясню: | Теперь поясню: | ||
− | <lua>local | + | <lua>local level = { |
− | ["l01_escape"] = " | + | ["l01_escape"] = "Кордон", |
− | ["l02_garbage"] = " | + | ["l02_garbage"] = "Свалка", |
− | ["l03_agroprom"] = " | + | ["l03_agroprom"] = "Агропром", |
− | ["l03u_agr_undergroun"] = " | + | ["l03u_agr_undergroun"] = "Подземелье Агропрома", |
− | ["l04_darkvalley"] = " | + | ["l04_darkvalley"] = "Тёмная долина", |
− | ["l04u_labx18"] = " | + | ["l04u_labx18"] = "Лаборатория X-18", |
− | ["l05_bar"] = " | + | ["l05_bar"] = "Бар", |
− | ["l06_rostok"] = " | + | ["l06_rostok"] = "Росток", |
− | ["l07_military"] = " | + | ["l07_military"] = "Арм.склады", |
− | ["l08_yantar"] = " | + | ["l08_yantar"] = "Янтарь", |
− | ["l10_radar"] = " | + | ["l10_radar"] = "Радар", |
− | ["l11_pripyat"] = " | + | ["l11_pripyat"] = "Припять", |
− | ["l12_stancia"] = " | + | ["l12_stancia"] = "ЧАЭС 1", |
− | ["l12_stancia_2"] = " | + | ["l12_stancia_2"] = "ЧАЭС 2", |
− | ["l12u_sarcofag"] = " | + | ["l12u_sarcofag"] = "Саркофаг" |
− | + | } -- названия локаций | |
− | function news_of_npc_kill(victim) -- | + | function news_of_npc_kill(victim) -- функция |
− | + | ||
if victim and IsStalker(victim) then | if victim and IsStalker(victim) then | ||
− | + | local dead_news ="\\n%c[255,160,160,160]Погиб сталкер: %c[default]"..victim:character_name().."\\n%c[255,160,160,160]Локация: %c[default]"..level[level.name()] or "" | |
− | + | db.actor:give_game_news(dead_news, "ui\\ui_icons_npc", Frect():set(2,130,124,124), 1, 4000) -- определяется имя убитого NPC (Непися) и названия локаций. | |
− | + | end | |
− | + | ||
end</lua> | end</lua> | ||
+ | |||
2. Далее открываем '''xr_motivator.script''', | 2. Далее открываем '''xr_motivator.script''', | ||
который находится в '''gamedata\scripts''', ищем функцию: | который находится в '''gamedata\scripts''', ищем функцию: | ||
Строка 69: | Строка 66: | ||
end</lua> | end</lua> | ||
Вот собственно и все! | Вот собственно и все! | ||
− | ===Автор:Weanchester=== | + | ===Автор: Weanchester=== |
[[Категория:Скрипты]] | [[Категория:Скрипты]] |
Версия 17:20, 21 мая 2011
Итак, первым делом в директории gamedata\scripts создайте файл с названием имя_вашего_файла.script
1.Открываем его и пишем:
local level = { ["l01_escape"] = "Кордон", ["l02_garbage"] = "Свалка", ["l03_agroprom"] = "Агропром", ["l03u_agr_undergroun"] = "Подземелье Агропрома", ["l04_darkvalley"] = "Тёмная долина", ["l04u_labx18"] = "Лаборатория X-18", ["l05_bar"] = "Бар", ["l06_rostok"] = "Росток", ["l07_military"] = "Арм.склады", ["l08_yantar"] = "Янтарь", ["l10_radar"] = "Радар", ["l11_pripyat"] = "Припять", ["l12_stancia"] = "ЧАЭС 1", ["l12_stancia_2"] = "ЧАЭС 2", ["l12u_sarcofag"] = "Саркофаг" } function news_of_npc_kill(victim) if victim and IsStalker(victim) then local dead_news ="\\n%c[255,160,160,160]Погиб сталкер: %c[default]"..victim:character_name().."\\n%c[255,160,160,160]Локация: %c[default]"..level[level.name()] or "" db.actor:give_game_news(dead_news, "ui\\ui_icons_npc", Frect():set(2,130,124,124), 1, 4000) end end
Теперь поясню:
local level = { ["l01_escape"] = "Кордон", ["l02_garbage"] = "Свалка", ["l03_agroprom"] = "Агропром", ["l03u_agr_undergroun"] = "Подземелье Агропрома", ["l04_darkvalley"] = "Тёмная долина", ["l04u_labx18"] = "Лаборатория X-18", ["l05_bar"] = "Бар", ["l06_rostok"] = "Росток", ["l07_military"] = "Арм.склады", ["l08_yantar"] = "Янтарь", ["l10_radar"] = "Радар", ["l11_pripyat"] = "Припять", ["l12_stancia"] = "ЧАЭС 1", ["l12_stancia_2"] = "ЧАЭС 2", ["l12u_sarcofag"] = "Саркофаг" } -- названия локаций function news_of_npc_kill(victim) -- функция if victim and IsStalker(victim) then local dead_news ="\\n%c[255,160,160,160]Погиб сталкер: %c[default]"..victim:character_name().."\\n%c[255,160,160,160]Локация: %c[default]"..level[level.name()] or "" db.actor:give_game_news(dead_news, "ui\\ui_icons_npc", Frect():set(2,130,124,124), 1, 4000) -- определяется имя убитого NPC (Непися) и названия локаций. end end
2. Далее открываем xr_motivator.script, который находится в gamedata\scripts, ищем функцию:
function motivator_binder:death_callback(victim, who)
и после пишем: имя_вашего_файла.news_of_npc_kill(victim) в итоге:
function motivator_binder:death_callback(victim, who) имя_вашего_файла.news_of_npc_kill(victim) if who:id() == db.actor:id() then xr_statistic.addKillCount(self.object) end
Вот собственно и все!