Перейти к контенту

Скриптование


Svoboда

Рекомендуемые сообщения

Всем доброго времени суток! Есть скрипт критического ранения ГГ. Задумка вывести в лог файл, два лога при ранении ГГ. Первый лог "AAAAAAAAA" второй "BBBBBBBBB". Допустим лог "AAAAAAAAA" привязан к покраснению экрана , а лог "BBBBBBBBB" привязан к звуку.  Возможно ли воткнуть таймер на вывод второго лога после вывода первого? 

Скрытый текст

function printf(fmt,...)
local con = get_console() 
con:execute(string.gsub(string.format(fmt,...), " ", "_")) 
con:execute("flush") 
--	log(string.format(fmt,...))
end

lite_treshold = 0.001 -- насколько должно уменьшиться здоровье с предыдущего обновления чтоб экран окрасился в красный
crit_treshold = 0.001 -- насколько должно уменьшиться здоровье с предыдущего обновления чтоб ГГ начало шатать
drop_item_on_crit_prob = 0.001 -- вероятность того что ГГ выронит оружие
effector_power_coeff = 0.007
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)
	  printf("AAAAAAAAA")
      if prev_health > db.actor.health + crit_treshold then
      printf("BBBBBBBBB")
        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

 

 

Поделиться этим сообщением


Ссылка на сообщение
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...