Tkachov 0 Опубликовано 9 Октября 2009 Поделиться Опубликовано 9 Октября 2009 (изменено) Я сейчас только что персонажу "выдал" кучу диалогов, а также визуал и класс Сыча, может он сейчас хоть чего-нибудь поменяет... хоть сольётся с Сычом, там уже разберёмся Теперь у меня всё тот же сталкер, только выглядит как Сыч, а так ничего не изменилось... в принципе, я его и прописывал как квестовых, хотя можно ещё раз попробовать... Далее, <actor_dialog> - это просто ссылка на первую ветку диалога, т.е. например напишем <actor_dialog>tkach_dialog</actor_dialog> и, если у нас есть tkach_dialog, появится возможность поговорить по первой ветке этого диалога, а дальше уже по развитию диалога... А класс я ему, кстати, выдавал со словом commander (т.е. копировал, хотя может это не так важно?) --- Похоже, класс или визуал ничего не меняют... ну, по крайней мере таким персонажам, или придётся через all.spawn или разбираться в остальных файлах, сейчас пойду посмотрю npc_profile и spawn_sections... --- В общем, пока что ничего нового я не нашёл... есть идея создать диалог (можно просто две или три ветки, и без текста (т.е. например dialog_1, dialog_2 и dialog_3)) и вставить <actor_dialog>[название диалога]</actor_dialog> во все секции персонажей какой-нибудь локации (Затона, например), в классе/id'е которых содержится слово commander и искать на локации какую-нибудь "звёздочку", если диалог есть, значит мы ищем в правильном направлении, а если нету, значит или мы вставили диалог не всем таким персонажам, или нам нужно было вставить его совсем другим персонажам... но это уже завтра =) Изменено 9 Октября 2009 пользователем Tkachov Ссылка на комментарий
golden 0 Опубликовано 9 Октября 2009 Поделиться Опубликовано 9 Октября 2009 Народ, помогите. Сохранился в период выброса, но до его начала. Вне укрытия. Теперь после загрузки сейва выброс сразу заканчивается и ГГ естественнно умирает. Не успеть даже лекарству выпить. Можно в конфигах отключить выброс в принципе или еще какой-нибудь вариант? исправь на время хит радиации в актор.лтх Можно примерчик? Ссылка на комментарий
ДАР 22 Опубликовано 9 Октября 2009 Поделиться Опубликовано 9 Октября 2009 (изменено) Лезишь сюда Зов Припяти\gamedata\configs\creatures\actor.ltx находишь строку: radiation_health_v = 0.0002 ;уменьшение здоровья при воздействии радиации и правишь двойку на ноль. Потом верни на место (как выброс пройдёт) Изменено 9 Октября 2009 пользователем ДАР В ком юмор вызывает зло, тому с умом не повезло! Ссылка на комментарий
igor822605 22 Опубликовано 9 Октября 2009 Поделиться Опубликовано 9 Октября 2009 (изменено) попробуи поменять радиэшион имунити на 1, или 1.5 только не забудь поменять во всех рангах Актер_имунитис_джД_новаис,.... ..... Актер_имунитис_джД_мастер . В том же фаиле актер лтх. Изменено 9 Октября 2009 пользователем igor822605 Ссылка на комментарий
Fly-n-DiE 2 Опубликовано 9 Октября 2009 Поделиться Опубликовано 9 Октября 2009 Halford за что предупреждение? Поиск юзал, тема есть подобная только для с ЧН, в ЗП всё по-иному. А в 170 посту вовсе не то, что мне нужно. Ссылка на комментарий
Shadowman 939 Опубликовано 9 Октября 2009 Поделиться Опубликовано 9 Октября 2009 Halford, я посмотрел, что есть по апгрейдам - в 170-м посту - отключение проверок на наличие инструментов и "умение" механика. А вопрос (кстати, и у меня такоой же) - как поставить апгрейды не по исключающим веткам, а все абсолютно. Кое-что получилось, но пока как-то не совсем корректно. Если ветки независимые (т.е. к двум апгрейдам 3-го уровня ведут два второго - получилось). А вот где второй уровень - два апгрейда, а третий - один (посерёдке), вылетает пока. Железо: Intel Core i5 9400F / 16Gb DDR4 2400MHz / SSD NVMe M.2 Samsung 970 EVO Plus 256Gb / GF GTX 1050Ti 4Gb Ось: Win10x64 Ссылка на комментарий
arkawa 0 Опубликовано 9 Октября 2009 Поделиться Опубликовано 9 Октября 2009 Подскажите ПЛЗ, где взять\как адаптировать Position Informer для Зова? Не соответствует. N6260 Ссылка на комментарий
Mac 0 Опубликовано 9 Октября 2009 Поделиться Опубликовано 9 Октября 2009 arkawa, в файл ui_main_menu пиши следующее: function main_menu:OnButton_credits_clicked() local text local vid local gvid local a = vector() local text a = db.actor:position() vid = db.actor:level_vertex_id() gvid = db.actor:game_vertex_id() text = "Позиция:\\nX= "..a.x.."\\nY= "..a.y.."\\nZ= "..a.z.."\\nlevel_vertex= "..vid.."\\ngame_vertex_id= "..gvid news_manager.send_tip(db.actor, text, nil, nil, 30000) end TMCoP Программисты(скриптеры) кому не безразличны машины в ЗП пишите в личку или сюда, нужна помощь! Ссылка на комментарий
Halford 21 Опубликовано 10 Октября 2009 Автор Поделиться Опубликовано 10 Октября 2009 golden, юзаем автосейв перед выбросом. === По поводу модификата. Прошу извинения, не проверив ссыль направил руководствуясь описанием апгрейдят все и всё без инструментов Ссылка на комментарий
Skunk 4 Опубликовано 10 Октября 2009 Поделиться Опубликовано 10 Октября 2009 Подскажите ПЛЗ, где взять\как адаптировать Position Informer для Зова? Адаптированные к ЗП скрипты и конфиги для Position Informer Аддон IMM - Intellectual Marauder Mod for AMK 1.4.1 ...:: снятие брони с трупов и кое что ещё ::... Аддон IMM - Intellectual Marauder Mod для ЧН 1.5.07 ...:: снятие брони с трупов ::... Аддон IMM - Intellectual Marauder Mod для COP 1.6.01 ...:: снятие брони с трупов ::... ARS MOD ...:: снятие брони с трупов, сон, новости, дин.аномалии и прочие вкусности ::... Ссылка на комментарий
Mac 0 Опубликовано 10 Октября 2009 Поделиться Опубликовано 10 Октября 2009 Expression : !m_error_code Function : raii_guard::~raii_guard File : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp Line : 748 Description : d:\st\gamedata\scripts\jup.script:85: attempt to call global 'get_texture_info' (a nil value) function car_offer(info,text,price) local task_texture, task_rect = get_texture_info("ui_iconsTotal_lost_money") local name_and_price; if not has_alife_info(info) then name_and_price = game.translate_string(text).." %c[255,238,155,23]"..price.." рублей%c[default]" db.actor:give_talk_message(name_and_price, task_texture, task_rect, "iconed_trade_info") end end TMCoP Программисты(скриптеры) кому не безразличны машины в ЗП пишите в личку или сюда, нужна помощь! Ссылка на комментарий
Push85 4 Опубликовано 10 Октября 2009 Поделиться Опубликовано 10 Октября 2009 (изменено) Mac, вылет то очень простой, он тебе русским по белому сказал: переменной и/или функции get_texture_info нет , у тебя функция get_texture_info вообще существует? прописано в том же файле, из которого кусок показал? Изменено 10 Октября 2009 пользователем 8push5 Возможно всё, ну или почти всё. Ссылка на комментарий
Mac 0 Опубликовано 10 Октября 2009 Поделиться Опубликовано 10 Октября 2009 (изменено) Вот что в скрипте писал: function car_offer(info,text,price) local task_texture, task_rect = get_texture_info("ui_iconsTotal_lost_money") local name_and_price; if not has_alife_info(info) then name_and_price = game.translate_string(text).." %c[255,238,155,23]"..price.." рублей%c[default]" db.actor:give_talk_message(name_and_price, task_texture, task_rect, "iconed_trade_info") end end Или я тебя не понял... Изменено 10 Октября 2009 пользователем Mac TMCoP Программисты(скриптеры) кому не безразличны машины в ЗП пишите в личку или сюда, нужна помощь! Ссылка на комментарий
Push85 4 Опубликовано 10 Октября 2009 Поделиться Опубликовано 10 Октября 2009 Mac, объясню еще раз, ты пытаешься вызвать функцию которой не существует, если хочешь изучить lua для начала почитай здесь, посмотри внимательно оригинальные скрипты, узнай что означает запись вида имя_функции(параметры). Возможно всё, ну или почти всё. Ссылка на комментарий
Po-meceniy 4 Опубликовано 10 Октября 2009 Поделиться Опубликовано 10 Октября 2009 Как называется инфопоршши разговора со Стрелком и окончания игры (вы не садитесь в вертолёт). Ссылка на комментарий
Mac 0 Опубликовано 10 Октября 2009 Поделиться Опубликовано 10 Октября 2009 А как написать скрипт на проверку денег? Чтобы он определял кол-во денег. Если есть к примеру 5000 рублей, то включается определенная фраза в диалоге(прекондишен). Вот как то так... надеюсь понятно расписал... Сам писал вот это: function has_money_car() local money = math.floor(5000 * xr_statistic_freeplay.get_freeplay_statistic():get_found_pda_discount()) return db.actor:money()>=money end нашёл скрипт тут Но он начал ругаться на xr_statistic_freeplay.get_freeplay_statistic... TMCoP Программисты(скриптеры) кому не безразличны машины в ЗП пишите в личку или сюда, нужна помощь! Ссылка на комментарий
Tkachov 0 Опубликовано 10 Октября 2009 Поделиться Опубликовано 10 Октября 2009 (изменено) Пиши это: function money_check() return db.actor:money()>=2000 end Я такой же скрипт писал в ЧН, тоже у меня ругался... Вроде надо писать название вот этого money_check в <precondition></precondition>, вот так: <dialog id="tkach_money"> - id диалога <precondition>dialogs_marsh.money_check</precondition> - проверка денег <phrase_list> - ветки диалога <phrase id="1"> <text>tkach_mon_1</text> <next>2</next> <next>3</next> </phrase> ... <phrase id="0"> <text>tkach_mon_0</text> <next>1</next> </phrase> </phrase_list> </dialog> Изменено 10 Октября 2009 пользователем Tkachov Ссылка на комментарий
Tkachov 0 Опубликовано 10 Октября 2009 Поделиться Опубликовано 10 Октября 2009 (изменено) Скорее всего (если я тебя правильно понял), тебе в gamedata/configs/gameplay/character_*.xml Вместо * могут быть items, food, items_2 и т.д. Если что, то такая структура файла: bread = 1, prob=0.5 \n kolbasa = 1, prob=0.5 \n vodka = 1, prob=0.5 \n bread - название предмета (из gamedata/configs/misc/items.ltx) 1 - сколько prob=0.5 - вероятность выпадения (50% стоит) Изменено 10 Октября 2009 пользователем Tkachov Ссылка на комментарий
Mac 0 Опубликовано 10 Октября 2009 Поделиться Опубликовано 10 Октября 2009 Tkachov, Вроде надо писать название вот этого money_check в <precondition></precondition>, вот так: Да про прекондишен я знаю, меня сам скрипт интересовал) Но я уже допёр! писал это: function has_money_car() local money = math.floor(5000) return db.actor:money()>=money end Но вот у меня вопрос как сделать этот диалог единичным? После того как я поговорю и добьюсь что мне надо(выполнение скрипта) у NPC эта фраза остаётся для выбора, т.е. мне можно покупать у него предмет бесконечное кол-во раз, а я хочу сделать чтобы можно было 1раз! Прилагаю свою ветку диалога ---> <dialog id="jup_buy_car"> <phrase_list> <phrase id="0"> <text>jup_cars_000</text> <next>1</next> </phrase> <phrase id="1"> <text>jup_cars_001</text> <next>2</next> <next>5</next> </phrase> <phrase id="2"> <text>jup_cars_002</text> <dont_has_info>jup_car_create</dont_has_info> <precondition>jup.has_money_car</precondition> <next>3</next> </phrase> <phrase id="3"> <text>jup_cars_003</text> <action>jup.dat_dengi</action> <action>jup.spawn_veh_niva</action> <next>4</next> </phrase> <phrase id="4"> <text>jup_cars_004</text> <action>dialogs.break_dialog</action> </phrase> <phrase id="5"> <text>jup_cars_005</text> </phrase> </phrase_list> </dialog> TMCoP Программисты(скриптеры) кому не безразличны машины в ЗП пишите в личку или сюда, нужна помощь! Ссылка на комментарий
Tkachov 0 Опубликовано 10 Октября 2009 Поделиться Опубликовано 10 Октября 2009 (изменено) Записывай в info_*.xml (например, вместо * - zaton или jupiter) <info_portion id="[название инфопоршня]"></info_portion> и в ветку диалога <dialog id="jup_buy_car"> <dont_has_info>[название записанного инфопоршня]</dont_has_info> <phrase_list> <phrase id="0"> ... <phrase id="5"> <text>jup_cars_005</text> <give_info>[название инфопоршня]</give_info> </phrase> </phrase_list> </dialog> Т.е. мы задаём вместе с precondition'ом проверку инфопоршня - если есть, то диалога нет, а если нету - то он есть и в конце (ну, я в 5-ую фразу вставил) диалога, в завершающую (обычно так) фразу выдаём инфопоршень, поэтому диалога не будет. Названия инфопоршня в коде должны быть одинаковыми. Также можно проверять только одну фразу (ставим перед <phrase id="..."> проверку в виде <dont_has_info> или <has_info> (нет или есть инфопоршень)) или ставить несколько проверок, т.е., например, написать ещё диалог, если он "успешно" проходит (например, герой не нагрубил собеседнику и за это получил инфопоршень), можно поговорить с собеседником о машине. Изменено 10 Октября 2009 пользователем Tkachov Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти