☣Связанные Зоной☣Форум
?
  
  • Страница 1 из 1
  • 1
Модератор форума: Кракен  
Форум » S.T.A.L.K.E.R. - Чистое небо » Модостроение » Сообщения о смерти сталкеров!
Сообщения о смерти сталкеров!
Не в Зоне slavapro




В своё время меня мучал вопрос: как сделать так, что бы отображалась инфа о смерти сталкеров. Как только я нашёл ответ на этот вопрос, я решил выложить его здесь.

И так, поехали.

Вам понадобится файл: xr_motivator.script

В нём находим следующие строки:
Code
function motivator_binder:death_callback(victim, who)  
  callstack()
Между ними вставляем следующий текст:
Code
--Некрологи  
     
  monster_classes = {  
   [clsid.bloodsucker_s]    = "Кровосос",  
   [clsid.boar_s]      = "Кабан",  
   [clsid.dog_s]      = "Собака",  
   [clsid.flesh_s]     = "Плоть",  
   [clsid.pseudodog_s]    = "Псевдособака",  
   [clsid.poltergeist_s]    = "Полтергейтс",  
   [clsid.gigant_s]     = "ПсевдоГигант",  
   [clsid.zombie_s]     = "Зомби",  
   [clsid.snork_s]     = "Снорк",  
   [clsid.psy_dog_s]     = "Пси собака",  
   [clsid.psy_dog_phantom_s]   = "Призрак псевдособаки",  
   [clsid.controller_s]    = "Контролёр",  
   [clsid.tushkano_s]     = "Тушканчик",  
  }  
     
     
     
     
    local m_game_vertex = who:game_vertex_id()  
    local lvert = game_graph():vertex(m_game_vertex)  
    local lid = lvert:level_id()  
    local mlevel = alife():level_name(lid)  
                  local m_s_level = mlevel  
     
   local victim_name  = victim:character_name()  
     
   local killer_name  = who:character_name()  
     
  local victim_comm = victim:character_community()  
     
  local killer_comm = who:character_community()  
     
  local post_message_prob = 0.8  
     
  if killer_comm=="monster" then  
           local m_clsid = get_clsid(who)  
     killer_name = monster_classes[m_clsid]  
  end  
  if killer_name==victim_name then  
  killer_name="Выброс"  
  killer_comm="monster"  
  end  
     
  if killer_comm~=nil then  
          local m_text_kill_string=killer_name.." ("..game.translate_string(killer_comm).."), убил сталкера "..victim_name.."("..game.translate_string(victim_comm).."). Локация: "..game.translate_string(m_s_level)  
   local news_text = "%c[255,160,160,160]".."Некролог:".."\\n".."%c[default]"..m_text_kill_string  
   local news_caption = game.translate_string("st_tip")  
          local texture = "ui_iconsTotal_weapons"  
     
          db.actor:give_game_news(news_caption, news_text, texture, 15*1000, 15*1000)  
  end
Теперь немного поясню.

Это, как вы поняли, определение мутанта, который укокошил очередного сталкера:
Code
monster_classes = {  
   [clsid.bloodsucker_s]    = "Кровосос",  
   [clsid.boar_s]      = "Кабан",  
   [clsid.dog_s]      = "Собака",  
   [clsid.flesh_s]     = "Плоть",  
   [clsid.pseudodog_s]    = "Псевдособака",  
   [clsid.poltergeist_s]    = "Полтергейтс",  
   [clsid.gigant_s]     = "ПсевдоГигант",  
   [clsid.zombie_s]     = "Зомби",  
   [clsid.snork_s]     = "Снорк",  
   [clsid.psy_dog_s]     = "Пси собака",  
   [clsid.psy_dog_phantom_s]   = "Призрак псевдособаки",  
  }
Это - определение уровня, на котором произошло убийство:
Code
local m_game_vertex = who:game_vertex_id()  
  local lvert = game_graph():vertex(m_game_vertex)  
  local lid = lvert:level_id()  
  local mlevel = alife():level_name(lid)  
  local m_s_level = mlevel
Это - определение имён и группировок убийцы и убитого. Выброс у нас определяется как мутант:
Code
local victim_name  = victim:character_name()  
     
  local killer_name  = who:character_name()  
     
  local victim_comm = victim:character_community()  
     
  local killer_comm = who:character_community()  
     
  if killer_name==victim_name then  
  killer_name="Выброс"  
  killer_comm="monster"  
  end
Отображение сообщения следующего типа: Вася Пупкин (Долг) убил сталкера Петя Иванов(Свобода), локация Свалка . Вместо надписей убил сталкера и локация можете написать что угодно:
Code
if killer_comm~=nil then  
          local m_text_kill_string=killer_name.." ("..game.translate_string(killer_comm).."), убил сталкера "..victim_name.."("..game.translate_string(victim_comm).."). Локация: "..game.translate_string(m_s_level)
Название предыдущего сообщения. Вместо надписи Некролог можете написать что угодно:
Code
local news_text = "%c[255,160,160,160]".."Некролог:".."\\n".."%c[default]"..m_text_kill_string




Форум » S.T.A.L.K.E.R. - Чистое небо » Модостроение » Сообщения о смерти сталкеров!
  • Страница 1 из 1
  • 1
Поиск:
Загрузка...

Авторское право на игру и использованные в ней материалы принадлежат GSC Game World.
Любое использование материалов сайта возможно только с разрешения Администрации.
Для просмотра сайта рекомендуем использовать Яндекс.Браузер
Copyright soc-team © 2014.

   Бесплатный анализ сайта
Общий канал
Общий канал
Сталкер, мы кого попало не пропускаем.
0
Группировки


Вступить

Обновления форума

Поиск по сайту

Лучшие сталкеры
slavapro
Постов: 544
Репутация: 11
Virus
Постов: 348
Репутация: 1
KiRiYaNoV
Постов: 319
Репутация: 1
p203w
Постов: 120
Репутация: 0
Кракен
Постов: 66
Репутация: 2

Кто нас сегодня посетил

Ваша любимая пища?

Опрошено:27
Архив опросов

Братья по оружию
 
Новости, общение и многое другое,<br> у нас на survarium-delta.ucoz.ru  Top Life-Stalker.RU
 Сайт создан не для заработка, а для вас Заходите Сталкеры. Оцените наш проект)ждем вас на http://DOLG-vs-SVOBODE.3dn.ru
Новости общение и многое другое, у нас на exelent731.ucoz.ru