нерон 0 Опубликовано 30 Марта 2016 Всем привет. Возникла задача прописать скрипт в котором после получения инфопоршня или после того как гг подобрал определенный предмет выполняется другой скрипт. Но как это прописать я не знаю. вот нашел функцию function actor_binder:on_item_take (obj) (что гг взял) и function actor_binder:on_item_drop (obj) (что гг выкинул) - и пропишы после этих строк функцию или ссылку на функцию. но реализовать ее не получается. Может кто поможет? Заранее спасибо. Поделиться этим сообщением Ссылка на сообщение
нерон 0 Опубликовано 31 Марта 2016 Если я правильно понял, то мне необходимо создать новый сккриптовый файл и вписать туда function имя функции () if has_alife_info("vzial") then имя скрипта. имя функции end так? Поделиться этим сообщением Ссылка на сообщение
нерон 0 Опубликовано 1 Апреля 2016 (изменено) но ведь функции function have_090() if db.actor:object ("tol") ~= nil then -- проверяем наличие предмета у ГГ. db.actor.give_infoportion("vzial") -- выдаем инфопорцию. end end и function 090 () if has_alife_info("vzial") then имя скрипта. имя функции end не активируются диалогами, как их запустить? Возникла задача после взятия предмета выдать инфопоршень, далее при наличие этого инфопоршна заспавнить нпс.Я создал два файла с функциям. Но они не работают. Пробовал проверить функцию выдачи нфопоршня после взятия предмета диалогом который активируется только при наличии этого инфопоршня, диалога нет(это значит что функция не сработала?). Изменено 1 Апреля 2016 пользователем нерон Поделиться этим сообщением Ссылка на сообщение
нерон 0 Опубликовано 1 Апреля 2016 (изменено) мне необходимо выполнить такую конструкцию. после взятия предмета должен выдаться инфопоршень(который судя по всему не выдается.) function have_090() if db.actor:object ("tol") ~= nil then -- проверяем наличие предмета у ГГ. db.actor.give_infoportion("vzial") -- выдаем инфопорцию. end end далее должен сработать скрипт который проверяет инфопоршень и спаунит за спиной у гг нпс. Диалогов при этом нет . В итоге гг берёт предмет, а за спиной у него уже стоит нпс. А заодно обратить внимание на функции для вывода информации в лог, чтобы лучше понимать что и где на самом деле у вас срабатывает а что нет. это как сделать? Я проверял выполнение функции так : прописывал с каким-нибудь нпс диалог который должен появится при условии наличия инфопоршня. Изменено 1 Апреля 2016 пользователем нерон Поделиться этим сообщением Ссылка на сообщение
нерон 0 Опубликовано 1 Апреля 2016 Все переделал ,но есть вылет Expression : fatal error Function : CScriptEngine::lua_error File : D:\xray-svn\xr_3da\xrGame\script_engine.cpp Line : 70 Description : <no expression> Arguments : LUA error: ...games\stalker\gamedata\scripts\agroprom_tasks.script:73: attempt to index field 'actor' (a nil value) но в том файле вот эта функция , вроде та что я заменил. function have_quest_case_02(task, objective) return db.actor:object("quest_case_02") ~= nil end Поделиться этим сообщением Ссылка на сообщение
нерон 0 Опубликовано 1 Апреля 2016 [tol]:identity_immunities GroupControlSection = spawn_group discovery_dependency = $spawn = "devices\quest_items\decoder_documents" ;$prefetch = 32 class = II_ATTCH cform = skeleton visual = equipments\item_document_01.ogf radius = 1 ;script_binding = stalker.object_init inv_name = tol inv_name_short = tol description = tol_descr inv_weight = 0 inv_grid_width = 2 inv_grid_height = 1 inv_grid_x = 6 inv_grid_y = 19 cost = 0 Мой предмет это изменённый профиль от [pri_decoder_documents]:identity_immunities GroupControlSection = spawn_group discovery_dependency = $spawn = "devices\quest_items\decoder_documents" ;$prefetch = 32 class = II_ATTCH cform = skeleton visual = equipments\item_document_01.ogf radius = 1 ;script_binding = stalker.object_init quest_item = true description = item_docs_hiden_pri_desc inv_name = item_docs_hiden_pri_name inv_name_short = item_docs_hiden_pri_name inv_weight = 0 inv_grid_width = 2 inv_grid_height = 1 inv_grid_x = 6 inv_grid_y = 19 cost = 0 Я создал новые документы и вроде из тех что на агропроме брать надо. Что- то видимо напортачил, Другие функции не трогал, только создал спаун с со своими доками. Поделиться этим сообщением Ссылка на сообщение
нерон 0 Опубликовано 1 Апреля 2016 Ифопорцию прописать еще не забыть надо в соот. файле!!! то в файле где инфопоршни лежат? или что иное? файл скрипта спавна вот. function polucil () alife():create("tol",vector():set(112.99296569824,-1.9373573064804,1.577552318573),413895,117) end спавнятся после диалога. Нужно расписать сам квест? Поделиться этим сообщением Ссылка на сообщение
нерон 0 Опубликовано 1 Апреля 2016 да "vzial" прописан. Поделиться этим сообщением Ссылка на сообщение