Для этого нам понадобятся файлы (AMK Mod): config/misc/items.ltx config/text/rus/string_table_enc_equipment.xml scripts/amk.script script/amk_mod.script
1. Создаём файл ваше_название_скрипта.script в папке gamedata/scripts и пишем в него:
-- Проверяем нужно ли покурить. Вызывается каждые 6 игровых минут function test_for_need_kur() amk.save_variable("kur",amk.load_variable("kur",0)+1) amk.g_start_timer("kur",0,0,6) kur_reduce_health() end
-- Уменьшение здоровья, если долго не курил function kur_reduce_health() local tmp = amk.load_variable("kur",0) if tmp > 150 then if db.actor.health > 0.15 then db.actor.health = - 0.15 end if not snd:playing() then snd:play_at_pos(db.actor, vector():set(0,0,0), 0, sound_object.s2d) end end end
-- Курение function kur_item(oid, time) if alife():object(oid)==nil then local tmp = amk.load_variable("kur",0) - time*10 if tmp < 0 then tmp = 0 end amk.save_variable("kur", tmp) kur_reduce_health() end end
2. Открываем файл amk.script:
после: function __do_timer_action(select_string,params_string)
пишем: if select_string=="kur" then название_вашего_скрипта.test_for_need_kur() end
3. Открываем файл amk_mod.script в функции first_run пишем: amk.g_start_timer("kur",0,0,6)
затем в функции check_sleep_item(obj) после elseif section=="treasure_item" then stype="tr_item"
но перед end пишем: elseif section == "sigaret" then stype = "sgr"
5. Открываем файл string_table_enc_equipment.xml <string id="sigareta"> <text>Сигарета</text> </string> <string id="enc_food_sigareta"> <text>Пишем любое описание сигареты, мне че то в голову ниче не приходит</text> </string>