_Призрак_ 11 Опубликовано 20 Января 2011 Пытаюсь создать мутантов которые бы ходили по кругу и ни обращались ни на кого внимания. Создал две логики. И обе не работают [logic@mob_walk1] active = mob_walker@zombi1 monster_job = true combat_ignore_cond = true [mob_walker@zombi1] path_walk = predbannik_zombi_smart_zombi combat_ignore_cond = true [logic@mob_walk] active = mob_home@zombi monster_job = true combat_ignore_cond = true combat_ignore_keep_when_attacked = true actor_friendly = true [mob_home@zombi] path_home = path1 home_min_radius = 1 home_max_radius = 3 combat_ignore_cond = true combat_ignore_keep_when_attacked = true actor_friendly = true Freedom Поделиться этим сообщением Ссылка на сообщение
_Призрак_ 11 Опубликовано 31 Января 2011 Подскажите, как сделать так, чтобы при подходе к НПС на 15 запускался одна функция, на 10 метров другая, а на 5 метров - третья? Пытался так: on_actor_dist_le = 15 | %=derevniya_enter_2%, 10 | %=derevniya_enter_1%, 5 | %=derevniya_kill_actor% После этого отказывает работать логика Freedom Поделиться этим сообщением Ссылка на сообщение
_Призрак_ 11 Опубликовано 31 Января 2011 Люди вы не читали, или не хотите внимательно читать пост маландринуса? Объясню: Есть 2 типа диалогов: 1. Стандартный. Вызывается только если В РАДИУСЕ 3 метров стоит НПС. Запускается как правильно написал Министр через db.actor:run_talk_dialog(npc). Но тут две проблемы - диалог только с НПС и только в РАДИУСЕ 3 метров 2. О-сознание мод. Этот вариант диалога запускается при разговоре в ЧАЭС с о-сознанцем. Но и тут есть подводные камни - появляется только часть, отвечающая за диалог актора. Вывода ответов НПС нет. Но если ты сможешь озвучить свой предмет, то тогда можно воспользоваться о-сознанием мод. Подробней в справочнике Freedom Поделиться этим сообщением Ссылка на сообщение
_Призрак_ 11 Опубликовано 4 Февраля 2011 Попробуй удалить строку: suitable = {=check_npc_name(sim_default)} true во всех логиках. Если не поможет, то удалил смарт_терраи из спавна и посмотри вылет из-за смарта или из-за чего то другого Freedom Поделиться этим сообщением Ссылка на сообщение
_Призрак_ 11 Опубликовано 7 Февраля 2011 Нужно создать смарт, камп_зоне и анимпоинты внутри камп_зоне. Причем имена должны быть такие: камп_зоне = имя_смарта_camp_zone_1 анимпоинты = имя_смарта_animpoint_1 Freedom Поделиться этим сообщением Ссылка на сообщение
_Призрак_ 11 Опубликовано 7 Февраля 2011 Дновский чувак Сделай ему логику walker Freedom Поделиться этим сообщением Ссылка на сообщение
_Призрак_ 11 Опубликовано 13 Февраля 2011 TRAMP14 Давай представил что у тебя в слоте №6 не оружие, а кот. Если ты применяешь такую функцию: local gg = db.actor:item_in_slot(6), то ты как бы берешь кота за шиворот и можешь делать с ним все что угодно. Выкинуть, узнать его имя, массу, рост и т.д. А если ты используешь функцию db.actor:item_in_slot(6):section() то ты только узнаешь имя кота, его секцию в файле итем. Freedom Поделиться этим сообщением Ссылка на сообщение
_Призрак_ 11 Опубликовано 14 Февраля 2011 object():section() - это вообще непонятно что. Максиум, если у тебя есть функция, которая возвращает объект, то тогда это будет рабочее. Но только если у тебя есть функция object() в данном скрипте, которая возвращает объект. Тогда эта строка возвратит секцию объекта, которого возвращает функция object() db.actor:object():section() - вооще вылетит в любом случае. Ибо ты пытаешься получить объект nil у актора. object:section() и obj:section() это одно и тоже. Получаешь объект каким либо образом, и применяешь к нему метод section(). Freedom Поделиться этим сообщением Ссылка на сообщение
_Призрак_ 11 Опубликовано 14 Февраля 2011 Можно, но удобней сравнивать координаты по x,y,z. Для этого нужно просто написать db.actor:position().x, db.actor:position().y, db.actor:position().z Freedom Поделиться этим сообщением Ссылка на сообщение
_Призрак_ 11 Опубликовано 15 Февраля 2011 А, допустим, можно снять 4 координаты и сделать квадрат и проставить все условия (типо 100 по x, 5 по y) чтобы при входе в квадрат что то происходило? Это уже давно сделали ПЫС. И называется это спейс_рестриктор Freedom Поделиться этим сообщением Ссылка на сообщение
_Призрак_ 11 Опубликовано 19 Февраля 2011 Не обязательно. Если написать on_info = %+budu_v_bunkere_spat% то как только активируется схема, то выдается поршень Freedom Поделиться этим сообщением Ссылка на сообщение
_Призрак_ 11 Опубликовано 1 Марта 2011 На другой локе делал также и там работает..... Если ты уверен что на другой локе у тебя идентичный код, и они там работают, то вывод только один - ты локацию в скриптах регистрировал? Freedom Поделиться этим сообщением Ссылка на сообщение
_Призрак_ 11 Опубликовано 2 Марта 2011 Arhara В ЗП не работает схема kamp Freedom Поделиться этим сообщением Ссылка на сообщение
_Призрак_ 11 Опубликовано 9 Марта 2011 Все гораздо проще: local wpn = db.actor:item_in_slot(db.actor:active_slot()) if wpn and (wpn:section() == "wpn_igla" or wpn:section() == "wpn_pm" or wpn:section() == "wpn_knife") then Freedom Поделиться этим сообщением Ссылка на сообщение
_Призрак_ 11 Опубликовано 12 Марта 2011 Наверное (вероятнее всего) у тебя нет патч_валк пути. Или не прописаны или в алл.спавне нет Freedom Поделиться этим сообщением Ссылка на сообщение
_Призрак_ 11 Опубликовано 13 Марта 2011 А ты думаешь они все уместятся в одной таблице? может проще в лог? Freedom Поделиться этим сообщением Ссылка на сообщение
_Призрак_ 11 Опубликовано 13 Марта 2011 ели хочешь то перебором таблицу и выводи сообщение. Получится 20 сообщений в каждом по вертиксу. Потом в ПДА посмотришь. Но я бы советовал в лог Freedom Поделиться этим сообщением Ссылка на сообщение
_Призрак_ 11 Опубликовано 13 Марта 2011 Есть такой баг в ЗП - не проверяется есть ли путь или нет. Поэтому проверь есть ли у тебя путь имя_смарта_guard_1_walk У меня такие же вылеты были пока я проверок не понаставил в xr_walker xr_camper. Только у меня сразу 6 движковых вылетов обычно Freedom Поделиться этим сообщением Ссылка на сообщение
_Призрак_ 11 Опубликовано 13 Марта 2011 Куда логику прописывал? Поищи вдруг есть совпадения, может в два смарта прописал Freedom Поделиться этим сообщением Ссылка на сообщение
_Призрак_ 11 Опубликовано 14 Марта 2011 Ты посмотри что у тебя получается: Ты сначала берешь объект по айди. Айди у тебя i. Но i у тебя в тот момент = нил. Поэтому сделай лучше сделать так: local npc for i = 1, 65534 do npc = level.object_by_id(i) if npc and IsStalker(npc) then Freedom Поделиться этим сообщением Ссылка на сообщение