Outfater 288 Опубликовано 23 Ноября 2014 (изменено) Хочу сделать чтобы при взятии записки из тайника появлялся другой тайник (как в ОП-2 Коллекционер). В файле bind_stalker.script в самый низ этой функции добавил: function actor_binder:on_item_take (obj) level_tasks.proceed(self.object) if xrs_ai then xrs_ai.actor_item_take(obj) end --game_stats.update_take_item (obj, self.object) inventory.on_item_take(obj) -- added by xStream for AMK miniSDK amk.on_item_take(obj) -- end of addition repack_ammo.on_take(obj) if rx_ai then rx_ai.actor_item_take(obj)end art_hit.hit_by_art(obj) --verg_art_hit.on_item_take(obj) --visual_fix if obj:clsid() == clsid.equ_stalker_s or obj:clsid() == clsid.equ_exo then local outfit = db.actor:get_current_outfit() if outfit and outfit:id() ~= obj:id() then db.actor:transfer_item(outfit, db.actor) if db.actor then name = obj:section() if db.actor:object("bread") ~= nil then db.actor:give_info_portion("boxkvest2_dal") end end end end end При этом инфопоршень выглядит так: <info_portion id="boxkvest2_dal"><action>kvestovik.spawn_boxkvest2</action></info_portion> Но при наличии хлеба тайник boxkvest2 не появляется. Что не так? @Хемуль36рус, По моему в акторе это настраивается, там где аттачмент. Изменено 23 Ноября 2014 пользователем Outfater Поделиться этим сообщением Ссылка на сообщение
Outfater 288 Опубликовано 24 Ноября 2014 (изменено) @Dennis_Chikin, Спасибо, работает и с одной if obj:section() == "bread" then db.actor:give_info_portion( "boxkvest2_dal" ) end. А второе условие if obj:section() == "bread" then kvestovik.spawn_boxkvest2() end я так понял, для вызова функции напрямую без поршня? Да. dc Изменено 24 Ноября 2014 пользователем Dennis_Chikin Поделиться этим сообщением Ссылка на сообщение
Outfater 288 Опубликовано 28 Мая 2015 Всем привет. Не знаю, может не в тему пишу - как сделать (в ТЧ), что бы при получении ГГ нескольких определенных инфопоршней на экране появлялось опред. сообщение? Спасибо. Поделиться этим сообщением Ссылка на сообщение
Outfater 288 Опубликовано 28 Мая 2015 (изменено) @k01jan, тем что один поршень - одна функция. @svarog2741, а куда прописать local porsh и дальше ? Function hhy() -- на апдейт - тоже не совсем понял - hhy произвольно, или именно так? И что значит на апдейт? if has_info("porsh") then - тут всё понятно с условием, а куда его писать, в конец биндера под функцию, или в любую скрипт-папку? Изменено 28 Мая 2015 пользователем Outfater Поделиться этим сообщением Ссылка на сообщение
Outfater 288 Опубликовано 28 Мая 2015 (изменено) @svarog2741, в разделе function actor_binder:update(delta) перед последним эндом сделал так: repack_ammo.on_update()if xrs_ai then xrs_ai.actor_update(delta)endif rx_ai then rx_ai.actor_update()endfunction test_prosto()local testporsh = {"test1","test1","test3"}if has_info("testporsh") then smski.poluchil_porshendend---------------------------------------------------------------------------function actor_binder:save(packet)if rx_ai then rx_ai.actor_save(packet) endart_hit.save() то что выделено жирным - это моё, остальное уже было. "test1" - инфопоршень. Правильно? p.s. Нет, не правильно. Сделал так: function test_prosto local porsh = {"test1","test1","test3"} if has_info("porsh") then smski.poluchil_porsh end Получаю вылет: [error]Arguments : LUA error: ...r\stalker Тени Чернобыля\gamedata\scripts\sak.script:8: attempt to index local 'actor' (a nil value) Потом закоммент. строку с функцией, все равно тот же вылет. Что не так? Изменено 28 Мая 2015 пользователем Outfater Поделиться этим сообщением Ссылка на сообщение
Outfater 288 Опубликовано 28 Мая 2015 @svarog2741, как именно правильно? Можно здесь скопировать мои "правильные" строчки и показать? И почему вылетает, если правильно? Поделиться этим сообщением Ссылка на сообщение
Outfater 288 Опубликовано 28 Мая 2015 @svarog2741, не позволяет психика? А по моему, ты просто не знаешь как правильно расписать - local porsh игра вообще не видит, нет такой команды. Только зря потратил время... Поделиться этим сообщением Ссылка на сообщение
Outfater 288 Опубликовано 28 Мая 2015 (изменено) @Dennis_Chikin, да никто мне ни чем не обязан. @svarog2741, просто если не знаешь точно, то лучше не пытаться. Я уже и без луа разобрался как надо и всё сделал (там вообще по другому надо). Но за то, что пытались помочь - спасибо всем. Изменено 28 Мая 2015 пользователем Outfater Поделиться этим сообщением Ссылка на сообщение
Outfater 288 Опубликовано 29 Мая 2015 @ed_rez, у меня немного не так: if has_alife_info ("test1") and has_alife_info ("test2") and has_alife_info ("test3") then self.object:give_info_portion("test123") end если именно для сообщений на экран, то только через поршень. Поделиться этим сообщением Ссылка на сообщение
Outfater 288 Опубликовано 7 Июня 2015 (изменено) Всем привет. Подскажите кто знает, как через поршень (в ТЧ) установить ГГ новый параметр скорости восстановления здоровья, или заживления раны, или повысить переносимый вес, и т.п. Спасибо. Ни как. Это не задается через поршни. dc Изменено 7 Июня 2015 пользователем Dennis_Chikin Поделиться этим сообщением Ссылка на сообщение
Outfater 288 Опубликовано 7 Июня 2015 (изменено) @Dennis_Chikin, через предмет в инв. тоже нельзя? Только артом на пояс, либо съеданием аптечек и иже с ними (см. конфиги аптечек), или писать в свойства актора (actor.health = , actor.radiation = и т.д.). Вес - только костюмами. Читайте уже документацию: куча ссылок везде висит, по всем разделам и темам. dc Изменено 7 Июня 2015 пользователем Dennis_Chikin Поделиться этим сообщением Ссылка на сообщение