stalk9r 135 Опубликовано 4 Сентября 2014 Привет всем! Подскажите как можно получить имя объекта по его story_id? Такая конструкция не работает... local textlocal obj = alife():story_object( 12345 )if obj thentext = "..obj.."news_manager.send_tip(db.actor, text, nil, nil, 30000)endend Есть хабар - пойдёт базар Поделиться этим сообщением Ссылка на сообщение
stalk9r 135 Опубликовано 23 Сентября 2014 (изменено) @naxac, @makdm, Спасибо, то что надо! Код сработал - Воронин теперь зелёный. В морду дал разок и успокоился Добавил вывод инфо, если объект не существует local text = "Помирились!" local sobj = alife():story_object(507)local lobj = sobj~=nil and level.object_by_id(sobj.id) or nilif lobj thenlobj:set_relation(game_object.friend, db.actor)else text = "Нет такого NPC"end news_manager.send_tip(db.actor, text, nil, nil, 30000) end @Samber13, Твой способ не сработал, у долга и так отношение к ГГ хорошие были, только Воронин испытывал личную неприязнь. Изменено 23 Сентября 2014 пользователем stalk9r Есть хабар - пойдёт базар Поделиться этим сообщением Ссылка на сообщение
stalk9r 135 Опубликовано 17 Декабря 2014 (изменено) @Eugen81, увы, не работает. запускает демо, а выключать не хочет Вопрос по ОП-2 Как таймер установить? amk.start_timer("test1", 120.0, "") - не работает amk.start_timer("test1", 120, "") - не работает amk.start_timer("test1", 120) - не работает on_timer = 5000 - не работает function teleport() news_manager.send_tip(db.actor, "timer", nil, "nano", 3000) on_timer = 5000 news_manager.send_tip(db.actor, "timer 5000", nil, "nano", 3000) end Изменено 17 Декабря 2014 пользователем stalk9r Есть хабар - пойдёт базар Поделиться этим сообщением Ссылка на сообщение
stalk9r 135 Опубликовано 25 Декабря 2014 (изменено) Подскажите, как проверить переменную из другого скрипта Имеется биндер, в нём переменная initialized изначально false function mobile_binder:__init( obj ) super( obj ) self.object = obj self.initialized = false Далее переменная становится true function mobile_binder:update( delta ) object_binder.update( self, delta ) -- инициализация if (self.initialized) then _fp_manager.update() self:CreateSpawnProperties() else self:DelChangerTeleport() self.initialized = true end Как проверить её во внешнем скрипте if (mobile_binder.initialized) = true then news_manager.send_tip(db.actor, "Существует!", nil, "nano", 5000) -- _bind_mobile.mobile_binder:MmOpenMenu() -- вызов метода того-же скрипта, в котором переменная else news_manager.send_tip(db.actor, "Не существует!!!", nil, "nano", 5000) end Вылет, причина: внешний скрипт - nil Изменено 25 Декабря 2014 пользователем stalk9r Есть хабар - пойдёт базар Поделиться этим сообщением Ссылка на сообщение
stalk9r 135 Опубликовано 17 Апреля 2015 (изменено) Приветствую всех!У актора в инвентаре некий предмет (варианты: съедобный, несъедобный), на предмет повешен биндер.Требуется отследить использование предмета и выполнить действия.Можно отследить потерю предмета (съел) аналогично ручным телепортам, либо (для несъедобного предмета) назначить кнопку в hotkeys.script с выдачей поршня и выполнением действий при наличии поршняМожно повесить предмет на пояс или в слотВопрос: есть ли другие варианты использования предмета (желательно съел - действие), или это всё что доступно? Все равно это читать ни кто не будет, видимо, из принципа, но на всякий случай: http://www.amk-team.ru/forum/index.php?showtopic=13054Или надо что-то другое ? dc То что надо, извините за мою невнимательность ... Изменено 17 Апреля 2015 пользователем stalk9r Есть хабар - пойдёт базар Поделиться этим сообщением Ссылка на сообщение
stalk9r 135 Опубликовано 16 Января 2017 Из ОП-2 db.actor:iterate_inventory( function(dummy,item) section = item:section() if not protected_items.is_grab_body_item_keep(item:section()) then if условие then db.actor:transfer_item(level.object_by_id(item:id()), box) end end end ,db.actor) Как проверить, что данный итем не находится в слоте? 1 Есть хабар - пойдёт базар Поделиться этим сообщением Ссылка на сообщение
stalk9r 135 Опубликовано 17 Января 2017 @gam, @naxac, Спасибо, помогло! Ещё вопросик: Возможно ли скриптово одеть на актора броню, или только выложить всю броню в ящик, например, и взять нужную и при этом актор оденет её? Второй вариант удалить броню по айди в слоте 6, потом заспавнить нужную (при этом кондицию придется менять)... 1 Есть хабар - пойдёт базар Поделиться этим сообщением Ссылка на сообщение