demon96 8 Опубликовано 24 Июня 2014 Здравствуйте, как сделать выдачу сообщения на экран после выдачи инфопорции? Тоесть захожу в спейс рестриктор, он выдает инфопорцию и появляется сообщение на экране. Помогите Разобрался, вдруг кому будет нужно. Сделал я это так: 1.Регистрируем новую инфопорцию: <info_portion id="Имя инфопорции"> <action>Скрипт.Название_функции</action> </info_portion> При получении этой инфопорции срабатывает функция через скрипт. 2.В рестрикторе указываем такую логику: [logic] active = sr_idle [sr_idle] on_actor_inside = %+Имя инфопорции% END 3.Создаем скрипт с фунцией: function Название_фунции(actor, npc) news_manager.send_tip(actor, "%c[255,255,128,128] Текст сообщения %c[default]", nil, "stalker", nil, 30000) end Единственный вопрос, xr_sound.set_sound_play(npc, "rostok_kruglov_help_6") -- выдает вылет, если используется функция через рестриктор, через диалог все работает, как быть? Я так понял, что здесь указано npc ( как отправитель сообщения со звуком, как указать для регистра? Поделиться этим сообщением Ссылка на сообщение
demon96 8 Опубликовано 24 Июня 2014 @Карлан,спасибо) Вылет Expression : fatal error Function : CScriptEngine::lua_error File : E:\stalker\sources\trunk\xr_3da\xrGame\script_engine.cpp Line : 73 Description : <no expression> Arguments : LUA error: ...games\s.t.a.l.k.e.r\gamedata\scripts\xr_sound.script:17: attempt to index field '?' (a nil value) Поделиться этим сообщением Ссылка на сообщение
demon96 8 Опубликовано 24 Июня 2014 Еще один мучающий меня вопрос, как сделать при загрузке игры, загрузку внедренных скриптов, тоесть я создал сторонний скрипт и мне надо, чтоб он срабатывал от определенных действий, а не через диалог Поделиться этим сообщением Ссылка на сообщение
demon96 8 Опубликовано 12 Июля 2014 (изменено) Как сделать срабатывание функции через некоторое время после вызова? Например,чтоб сообщение приходило через 15сек.У меня возникает странный вопрос: внутрь bind_stalker.script хоть раз доводилось заглядывать, или "не царское это дело" ? dc Изменено 12 Июля 2014 пользователем Dennis_Chikin Поделиться этим сообщением Ссылка на сообщение
demon96 8 Опубликовано 12 Июля 2014 (изменено) @AndreySol,Ситуация такова: function teleport(actor, npc) level.add_cam_effector("camera_effects\\empty.anm", 160608, false,"tp.teleportate") level.add_pp_effector("peace_fade.ppe", 160608, false) end function teleportate() level.add_pp_effector ("teleport.ppe", 16060800, false) db.actor:set_actor_position( vector( -241.71509460448, -26.742816052856, -304.54711914063 ) ) sms_guider() end function sms_guider() news_manager.send_tip(db.actor, "%c[255,255,128,128] Ну вот и добрались, я развязываю тебе глаза и ухожу. Не пытайся меня искать, удачи! %c[default]", nil, "stalker", nil, 30000) endНужно, чтоб после телепорта спустя 15 сек. приходило сообщение. Таймер так и не понял как применять, может вписал не правильно. Изменено 12 Июля 2014 пользователем demon96 Поделиться этим сообщением Ссылка на сообщение
demon96 8 Опубликовано 12 Июля 2014 (изменено) Получилось, только в таком случае в фкнкции указываются секунды, а не милисекунды, тоесть не 15000, а 15. Изменено 12 Июля 2014 пользователем demon96 Поделиться этим сообщением Ссылка на сообщение
demon96 8 Опубликовано 21 Июля 2014 (изменено) @Vadyanchikus, в сталкере есть непонятная лично мне особенность, сначала нужно забирать итем у актора, а потом дальше че-нить фигарить, иначе у актора нифига забираться не будет, несмотря на появленное сообщение. Так что переставь порядок функций и отпишись заработало или нет. Замечательно забирается. dc Эмпирически доказал для себя обратное, спорить я конечно не буду, у меня такой косяк имел место быть, хотя логики в нем не видно. Не забирается. Я тоже мучался таким вопросом, решил это удалением предмета из инвентаря гг,тоесть функция забирает предмет в диалоге, а от нее срабатывает функция удаления. Может быть слишком сложно и есть способ проще, но у меня работает и это радует. Если понадобится, могу привести кусок функции. Изменено 21 Июля 2014 пользователем demon96 Поделиться этим сообщением Ссылка на сообщение
demon96 8 Опубликовано 21 Июля 2014 (изменено) Меня интересует вопрос относительно инфопорций, как при взятии предмета выдать инфопорцию? И возможно ли пополнять ассортимент торговцев в разной последовательности? Как я понял после получения инфопорции , ассортимент заменяется, а мне нужно чтоб он пополнялся. Изменено 21 Июля 2014 пользователем demon96 Поделиться этим сообщением Ссылка на сообщение
demon96 8 Опубликовано 21 Июля 2014 (изменено) Насчет функции как ее применять? Насчет ассортимента, мне и не надо чтоб старое удалядось, я вроде по русски объяснил, что мне нужно пополнение, а не замена.Цитата из первого поста темы:Задавайте вопросы, которые касаются непосредственно скриптов и их работы, т.е. Вы что-то делаете, а у Вас что-то не получается, при этом у Вас на руках должен быть хотя бы какой-то код, свидетельствующий о Вашей причастности к вопросу.Вопросы которые будут удалятся, следовательно их задавать не нужно:-- Где находится та или иная функция?Для ответа используем поиск по словам среди файлов оригинальной игры или мода, если объект поиска относится к нему, при помощью программы, которая Вам наиболее симпатизирует;-- Как сделать что-то/то-то?С подобными вопросами, либо в "ковырялки", где Вам вероятнее всего так же не ответят, либо выдвигаем мысли, подкреплённые теорией, практикой (идеальный вариант) и здравым рассудком;-- Вопросы со смыслом: "сделайте", "совместите" и подобными глаголами повелительного наклонения.2.1.1, устное предупреждение Изменено 21 Июля 2014 пользователем Dennis_Chikin Поделиться этим сообщением Ссылка на сообщение
demon96 8 Опубликовано 22 Июля 2014 (изменено) Не все что Вам нужно(хочется) есть в движке... Придется пользоваться тем, что есть.Да и что не устраивает ? Сделайте несколько секций торговли, так чтобы каждая следующая дополняла(пополняла) предыдущую - и переключайтесь по инфо-порциям между ними... Благодарю, я уже додумался до этого, просто этот способ муторный и я надеялся, что есть более простой. И такой вопрос, если вероятность появления предмета поставить на 1, то по идеи должен же убраться баг с разным ассортиментом при перезагрузке? Изменено 22 Июля 2014 пользователем Kirgudu исправил цитату Поделиться этим сообщением Ссылка на сообщение