. Эффект критического раненния - Все о модостроении. - Каталог статей - S.T.A.L.K.E.R-modi
Модификации для серий игр S.T.A.L.K.E.R
Меню сайта
Категории раздела
Survarium [32]
Мир игры
Мир зоны [31]
Прохождение игры Сталкер [9]
Зона отчуждения [65]
Основные [35]
Демонстрация модификаций (видео) [81]
Путь на прилавки игры S.T.A.L.K.E.R ( Видео ) [3]
Интервью [21]
Лаборатория [9]
Все о новинках в мире техники).
Репортаж из зоны [19]
Все о чернобыле,саркофаге и др объектах находящихся в 30 км зоне!
Все о модостроении. [42]
Здесь вы найдете все что необходимо для создания любой сложности мода! (источник сайт Теорий модостроения stalk-mod-er.net.ru)
Рассказы , литература из мира S.T.A.L.K.E.R [0]
Сюда вы сможете добавить свой рассказ , или же добавить любимый отрывок из уже вышедшей литературы !
Обзоры других игр [51]
Обзоры фильмов [5]
Hi-Tech Новинки [6]
Заброшенные людьми места мира. [19]
Мини-чат
Наш опрос
Для чего создают игры GSC ?
Всего ответов: 3122
Реклама
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0



Главная » Статьи » Все о модостроении.

Эффект критического раненния

1. Создаем файл effect_blood.script и записываем туда следущее:



Code
lite_treshold = 0.05 -- насколько должно уменьшиться здоровье с предыдущего обновления чтоб экран окрасился в красный  
crit_treshold = 0.30 -- насколько должно уменьшиться здоровье с предыдущего обновления чтоб ГГ начало шатать  
drop_item_on_crit_prob = 0.20 -- вероятность того что ГГ выронит оружие  
effector_power_coeff = 0.7  
prev_health = -1  
chk_h_t = 0  

function wounded_pp_update()  
  if (chk_h_t or 0) < time_global() then  
  chk_h_t = time_global()+1000  
  if prev_health > (db.actor.health + lite_treshold) then  
  level.add_pp_effector("fire_hit.ppe", 2011, false)  
  local effector_power = (prev_health - db.actor.health)*100*effector_power_coeff  
  level.set_pp_effector_factor(2011, effector_power)  
  if prev_health > db.actor.health + crit_treshold then  
  level.add_cam_effector("camera_effects\\fusker.anm", 999, false, "")  
  local snd_obj = xr_sound.get_safe_sound_object([[actor\pain_3]])  
  snd_obj:play_no_feedback(db.actor, sound_object.s2d, 0, vector(), 1.0)  
  if math.random() < drop_item_on_crit_prob then  
  local active_item = db.actor:active_item()  
  if active_item and active_item:section() ~= "bolt" and active_item:section()~= "wpn_knife" then  
  db.actor:drop_item(active_item)  
  end  
  end  
  end  
  end  
  prev_health = db.actor.health  
  end  
end

2. Далее открываем bind_stalker.script:
после строчек:

Code
function actor_binder:update(delta)  
  object_binder.update(self, delta)  
  local time = time_global()  
  game_stats.update (delta, self.object)

пишем:
effect_blood.wounded_pp_update()


Категория: Все о модостроении. | Добавил: ZARK (21.10.2010)
Просмотров: 1665 | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа



СТАЛКЕР!
Я всегда рад видеть
еще одну живую душу!
Но я незнаю кто ты?
Регистрация
Вход!

---


English version


Список Сталкеров
Поиск
Последние файлы
Друзья
Все баннеры
Баннерообмен
Наш Банер
Мы будем очень благодарны
если вы разместите нашу
кнопку у себя на сайте!

S.T.A.L.K.E.R-modi




Авторское право на игру и использованные в ней материалы принадлежат GSC Game World. Любое использование материалов сайта возможно только с разрешения администрации. Powered by Ssnork © (2010-2020).