DXatom 0 Опубликовано 1 Января 2016 (изменено) Как в STALKER SoC выдать ГГ задание, после прочтения им документа в инвентаре? Изменено 1 Января 2016 пользователем DXatom Поделиться этим сообщением Ссылка на сообщение
DXatom 0 Опубликовано 3 Января 2016 @DXatom Для начала почитать раздел "Уроки по модостроению" + тут - узнаешь много полезного. Конкретно по вопросу (в общих чертах): делать этот самый документ на классе чего-то съедобного \используемого, затем ловить в обработчике кэллбэка(в классе биндера актера) использование этого объекта, по факту выдавать задание. Сделал так: function actor_binder:reinit() ...self.object:set_callback(callback.use_object, self.use_inventory_item, self)function actor_binder:net_destroy()...self.object:set_callback(callback.use_object, nil)function actor_binder:use_inventory_item(obj)if obj ~= nilthentask_documents.on_use(obj)endend local object_info_portion = {task_document="esc_talk_koval_quest_started"}function on_use(obj)for key, val in pairs(object_info_portion) doif obj:section() == keythendb.actor:give_info_portion(val)endendend [task_document]:identity_immunitiesGroupControlSection = spawn_groupdiscovery_dependency =$spawn = "food and drugs\task_document"$prefetch = 32class = II_ANTIRcform = skeletonvisual = equipments\item_document_2.ogfdescription = "no desc"inv_name = "Unnamed"inv_name_short = "Unnamed"inv_weight = 0.10inv_grid_width = 2inv_grid_height = 1inv_grid_x = 6inv_grid_y = 18cost = 0eat_health = 0eat_satiety = 0eat_power = 0eat_radiation = 0wounds_heal_perc = 0eat_portions_num = 1animation_slot = 4hud = wpn_vodka_hud Работает. Поделиться этим сообщением Ссылка на сообщение
DXatom 0 Опубликовано 5 Января 2016 Скажите, пожалуйста, как стравить двух НПС, а то они не атакуют друг друга. [logic] active = walker@walker4on_death = death@koval[walker@walker4]path_walk = esc_koval_strela_walkpath_look = esc_koval_strela_lookmeet = no_meet[death@koval]on_info = %+esc_koval_dead% [logic]active = walker@walker1[walker@walker1]path_walk = esc_bandit1_walkpath_look = esc_bandit1_lookmeet = default_meet стоят прямо лицом к лицу на мосту (Кордон). Спасибо. Поделиться этим сообщением Ссылка на сообщение
DXatom 0 Опубликовано 12 Января 2016 Чудес не бывает - если у них группировки(community) враждебные друг-другу, то они будут атаковать друг-друга. Ищи ошибку, или в профилях одинаковую группировку им прописал, или в логике есть запрет на атаку. Да, дело было в community. "freedom" атакует "dolg", но атаковать группировку "bandit" не хочет. Поделиться этим сообщением Ссылка на сообщение
DXatom 0 Опубликовано 12 Января 2016 Во, как раз еще помню свое удивление, когда с этим столкнулся. В game_relations.ltx поправь отношения бандитов и свободы, а то они там нейтральны друг к другу. Если тебе именно это нужно. Спасибо! То что нужно. Поделиться этим сообщением Ссылка на сообщение