Создание маленькой фишки как озвучка еды

В папке Scripts создаем чистый скриптовый файл с именем inv_food и в него поместим функцию:

local eat = nil

function use_med()
if eat and type(eat) == 'number' then
if not level.object_by_id( eat ) then
local snd_obj = xr_sound.get_safe_sound_object([[interface\inv_food]])
snd_obj:play_no_feedback(db.actor, sound_object.s2d, 0, vector(), 1.0)
end
eat = nil
end

if eat and type(eat) == 'userdata' then
eat = eat:id()
else
eat = nil
end
end

function drop_med(obj)
local obj_sect = obj:section()
if obj_sect == 'conserva' or obj_sect == 'kolbasa' or obj_sect == 'bread' then
eat = obj
end
end

где,  (выделено жирным)      local snd_obj = xr_sound.get_safe_sound_object([[interface\inv_food]]) - это путь к звуку;

if obj_sect == 'conserva' or obj_sect == 'kolbasa' or obj_sect == 'bread' then, это объекты на которые распространяется озвучка.

Затем в файле bind_stalker.script лежащий в папке script  под строчкой function actor_binder:update(delta) напишем следующие:

-- озвучка для жратвы
      inv_food.use_med()

в этом же файле под строчкой function actor_binder:on_item_drop (obj) пишем:

inv_food.drop_med(obj)

Вот и все. По образу и подобию создаем озвучку идля водки с энергетиком и аптечки.

Выражается благадарность Fantom2323.
 

Нравится8
Комментарии (4)
B
i
u
Спойлер