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

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


Svoboда

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

(изменено)

 

 

Всем привет!

Начну с того что маюсь поиском давно, и вариантов по одним и тем же функциям перепробовал множество, не знаю что и делать. Neeed help! 

 

Нужно: Через диалог активировать таймер, по истечению которого выдаётся поршень+сообщение. (доп условие - тайм фактор Не должен ломаться после перезагрузки)

Поделка_1 (таймфактор ломается после перезагрузки)

 

function start_timer()       


    local iTimer = time_global() + 10000 
    local function check_timer() 
    return time_global() > iTimer 
    end
    level.add_call(check_timer, action_timer) 
end
function action_timer() 
db.actor:give_info_portion("test_portion")
end


Поделка_2 (пропуск таймера и мгновенный переход к выполнению test_333)  не довёл до ума но увидел что с этой функцией невозможно побороть сейфлоад, так же пропадает после перезагрузки.

 

 

 


function start_timer_medpreparat(first_speaker,second_speaker) 
local function test_333() 
give_info("vikarii_quest_medpreparat_time") 
db.actor:give_game_news("vikarii_medpreparat_message", 0, "default", 10000) 
end 
CreateTimeEvent("test_222",zaebalsa, 5,test_333()) 
end
 

 

Изменено пользователем Lasplagas

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


Ссылка на сообщение
1 минуту назад, Overfirst сказал:

Всю жизнь не понимал, нафига вы заводите скриптовые таймеры и плодите функции, когда можно в рестрикторе всё это красивенько сделать, причём всё сохраняется. Я, может, что-то упустил?

Нет возможности работы в рестрикторе, нужна конкретно функция на таймер с запоминанием в сейвлоаде.

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


Ссылка на сообщение
1 час назад, Lasplagas сказал:

 

 

Всем привет!

Начну с того что маюсь поиском давно, и вариантов по одним и тем же функциям перепробовал множество, не знаю что и делать. Neeed help! 

 

Нужно: Через диалог активировать таймер, по истечению которого выдаётся поршень+сообщение. (доп условие - тайм фактор Не должен ломаться после перезагрузки)

Поделка_1 (таймфактор ломается после перезагрузки)

  Показать

function start_timer()       


    local iTimer = time_global() + 10000 
    local function check_timer() 
    return time_global() > iTimer 
    end
    level.add_call(check_timer, action_timer) 
end
function action_timer() 
db.actor:give_info_portion("test_portion")
end


Поделка_2 (пропуск таймера и мгновенный переход к выполнению test_333)  не довёл до ума но увидел что с этой функцией невозможно побороть сейфлоад, так же пропадает после перезагрузки.

 

  Показать

 


function start_timer_medpreparat(first_speaker,second_speaker) 
local function test_333() 
give_info("vikarii_quest_medpreparat_time") 
db.actor:give_game_news("vikarii_medpreparat_message", 0, "default", 10000) 
end 
CreateTimeEvent("test_222",zaebalsa, 5,test_333()) 
end
 

 

пример_3 ( так же ломается при сейвлоаде)



local iTimer
function function_onetimer()
    iTimer = time_global() + 12*1000 
end
 
function timer_5_minutes()
    if iTimer and iTimer < time_global() then 
        iTimer = nil 
        db.actor:give_info_portion("vikarii_quest_medpreparat_time")
    end
end


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

dialogs_deadcity.timer_5_minutes()


 

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


Ссылка на сообщение

@dsh, Спасибо за подсказку. К сожалению вчера уже нашёл но я слишком деревянный что бы понять как собрать из их кусков что либо работающее. 
https://github.com/KRodinn/OGSE_0693_Optimized/blob/be4597706496ba810682b3f4f4754c6879b4b932/gamedata/scripts/ogse_st_mgr.script#L353 вот инструкция.

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


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

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

AMK-Team.ru

×
×
  • Создать...