SoC. Добавление пси-выброса на Янтарь — S.T.A.L.K.E.R. Inside Wiki

SoC. Добавление пси-выброса на Янтарь

Материал из S.T.A.L.K.E.R. Inside Wiki

Перейти к: навигация, поиск

В этот туторе я хочу объяснить, как добавить похожий пси-выброс на Янтарь как в ЧН. Правда есть один недостаток. Он появляется всегда в начале, как загружаешь любой сейв на Янтаре, но думаю, это не сильный недостаток. Автор не я, благодарность Shadows за скрипт выброса из его "Shadows Addon" aka Phantoms Zone.
Автор статьи: LaRento
Автор скрипта: Shadows


Правил статью:
Dragon_lord


Ну что ж, начнём.


Создаём функцию пси-выброса


Для этого создаём новый скрипт. Пускай yantar_psy_blowout.script и пишем туда:


function update()
yantar_psy_blowout()
end

local next_blowout = 0
local effects_off = 0
function yantar_psy_blowout()
if level.name()=="l08_yantar" then -- имя локации, на которой будет пси-выброс
if not has_alife_info("yan_labx16_switcher_3_end") and next_blowout < time_global() then
next_blowout = time_global() + 300000 -- время между пси-выбросами
effects_off = time_global() + 30000 -- его длительность
db.actor.psy_health = -0.45 -- количество здоровья, которое отнимается при нём
play_sound([[characters_voice\scenario\yantar\psy_voices_1]]) -- ссылка на звук во время пси-выброса
play_sound([[ambient\blowout]]) -- звук начала выброса
level.add_call(yantar_psy_blowout_timer, yantar_psy_blowout_off)
level.add_pp_effector("psy_antenna.ppe", 1875, true)
level.add_pp_effector("yantar_underground_psi.ppe", 1876, false)
level.add_cam_effector("camera_effects\\shell_shock.anm", 396, false, "")
level.add_cam_effector("camera_effects\\earthquake.anm", 397, false, "")
end
end
end

function yantar_psy_blowout_timer()
return time_global() > effects_off
end

function yantar_psy_blowout_off()
level.remove_pp_effector(1875)
end

function play_sound(sound,obj)
if obj == nil then obj = db.actor end
snd = xr_sound.get_safe_sound_object(sound)
snd:play_no_feedback(obj,sound_object.s2d,0,vector(),1.0)
end

Регистрация в bind_stalker.script


Открываем bind_stalker.script и после
function actor_binder:update(delta)


Пишем это:


yantar_psy_blowout.update()


Всё, готово. Правда вам необходимо добавить звук blowout.ogg


Качаем его отсюда http://rusfolder.com/33743634 и добавляем в sounds/ambient
Всё, готово. Идите и проверяйте!) Удачи.

--93.72.100.67 21:30, 21 декабря 2012 (MSK)Отредактировал ZergO

Другие места
LANGUAGE