Я как-то поставил обновление на игру серии СТАЛКЕР (не помню какую именно) v1.0006 и теперь это обновление работает на всех имеющихся у меня играх (Зов Припяти,Чистое небо, Тень Чернобыля) и я не знаю как его удалить так как ни где не отображается.
Что делать подскажите?
Попробуй так:
function antirad2_have()
return rtz.have_n_antirad("antirad",2,"bread","vodka",2)
end
Функция проигнорирует лишние аргументы если их больше, чем число параметров которые она принимает. Так как у функции всего два параметра (section и number) - все остальное типа "bread","vodka",2 игнорирует**50016ea8aab1bb10eeba**
return rtz.have_n_antirad("vodka",2)
end
А затем общую функцию проверки условий во всех трех предыдущих функциях которую и нужно в прекондишене указывать
function have_nabor()
return (antirad2_have() and bread_have() and vodka2_have())
end
[/code]
Функция вернет truе только если все три функции также вернут true. То есть когда все условия выполняются. Можно конечно вообще все одну функцию запихать - но так читабельнее выглядит.
Кстати обзови основную функцию проверки вместо have_n_antirad как-нить по по другому - чтобы не путаться - ну там просто have_items() что ли...
Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
function give_osv_items(first_speaker, second_speaker)
dialogs.relocate_item_section(second_speaker, "medkit",3, "out")
dialogs.relocate_item_section(second_speaker, "antirad",2, "out")
end
Эта функция, при вызове через диалог, не срабатывает...Что сдесь не правильно?:dry:
Если функцию поменять так:
function give_osv_items(first_speaker, second_speaker)
dialogs.relocate_item_section(second_speaker, "medkit", "out")
dialogs.relocate_item_section(second_speaker, "medkit", "out")
dialogs.relocate_item_section(second_speaker, "medkit", "out")
dialogs.relocate_item_section(second_speaker, "antirad", "out")
dialogs.relocate_item_section(second_speaker, "antirad", "out")
end
То все работает.
добавлено спустя 3 минут
erlik
Спасибо...Но если честно, у меня, как сказал Germess получилось, сам проверил.:ye)
отредактировал(а) Stalk15: 24-04-2010 12:48 GMT3 час. Новые фишки для сталкера(см. журнал)
1. Как увеличить таймер на ЧАЭС (на час вместо пяти минут, допустим).
2. Что нужно редактировать, чтобы Арни выдавал на арену ГГ то оружие, которое обещает в диалоге.
3. Что нужно сделать, чтобы ключевые НПЦ (Лукаш, Воронин, Макс и т.п.) не ломились в Припять во время прохождения ЧАЭС. У меня в моде просто фриплей присутствует (весьма примитивный, обычный лвл чейнджер заспавнен на aes2) и когда я возвращаюсь в Припять, нахожу там трупики главных НПЦ.
function give_it_to0_actor (first_speaker, second_speaker)
dialogs.relocate_item_section(second_speaker, "conserva", "out")
dialogs.relocate_item_section(second_speaker, "kolbasa", "out")
dialogs.relocate_item_section(second_speaker, "kolbasa", "out")
dialogs.relocate_item_section(second_speaker, "bread", "out")
dialogs.relocate_item_section(second_speaker, "bread", "out")
end
При вызове этой функции вылет с логом:
Эта функция, при вызове через диалог, не срабатывает...Что сдесь не правильно?
Если бы не поленился и посмотрел, то увидел бы, что у функции только 3 значения - victim, section и type. Т.е. твои цифры она принимает за аргумент type и неправильно работает.
Делай циклом, если много итемов.
неправильно проверил. У тебя проверяется ТОЛЬКО наличие первого предмета и больше НИЧЕГО.
Насчет
Эта функция, при вызове через диалог, не срабатывает..
покажи мне в каком месте функции relocate_item_section есть параметр числа предметов?
function relocate_item_section(victim, section, type)- кому , секция предмета, тип передачи - out\in
конечно у тебя в том виде она никогда работать не будет - так как предназначена для передачи только ОДНОГО предмета.
...Вы блин хоть бы чуток документацию по lua почитали что ли...
Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
Установил мод "Жесть" в начале постоянно зависала игра, сменил параметры на самые низкие, но все равно виснет в самый неподходящий момент, даже горячие клавиши не спасают, только жесткая перезагрузка. Зачем такой мод паршивый создавали?
Функция проигнорирует лишние аргументы если их больше, чем число параметров которые она принимает. Так как у функции всего два параметра (section и number) - все остальное типа "bread","vodka",2 игнорируется.
Упс, не знал...:-G
_______________ Neoadelante
Тебе, ИМХО, не в эту тему.
А Жесть мод, кстати стабильный и рабочий. у меня все работало без подвисаний.
___________________
Так вот, собственно вопрос:
Expression : fatal error
Function : CScriptEngine::lua_error
File : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cpp
Line : 73
Description :
Arguments : LUA error: d:\s.t.a.l.k.e.r\gamedata\scripts\xr_box.script:112: attempt to index field '?' (a nil value)
С чем это связанно?
PS: xr_box я не трогал, в гамедате у меня его нет.
МАГАЗИНЧИК Гермеса в моем журнале - оружие на выбор!
Помогите,вот я добавил новую иконку патронов для своего оружия а, у меня вместо иконки пустота и лишь видно количество патронов,плиз помогите исправить.
HASH А всё уже заработало))))),у меня вот какая проблема,я Волку вручил это оружие,и патроны,оружие есть а вот патронов нет,помоги как сделать чтоб при убийстве непися у него был данный тип патронов который я указывал в его конфиге,помоги плиз.
HASH Ну когда убиваешь любого NPC,при обыске его трупа у него бывают патроны,зависимо от данного типа оружия которое есть у него,а вот я добавил в игру пулемёт и выдал его NPC,и вот я хочу чтобы у них появлялись патроны к пулемёту как это сделать??????
KRUGER94 сами патроны тоже надо прописать НПЦ, в gamedata/config/gameplay/character_desc_xxxxxxxx. Примерно так:
[spawn] \n
wpn_pkm \n
ammo_pkm = 1 \n
device_torch \n
hand_radio \n
(wpn_pkm и ammо_pkm замени своими названиями)
KRUGER94 из .ltx файлов оружия. Название оружия будет в самом верху (например, секция [wpn_pm]), название патронов чуть ниже, в строке ammo_class (например, ammo_class = ammo_9x18_fmj, ammo_9x18_pmm)
HASH Я сделал как ты сказал названия патронов написал:
ammo_7.62х39_r = 1 \n ,поставил = 1 и \n но всё равно невыходит,и вот скажи у некоторых названий патронов надо ставить = 1,а у некоторых нет можешь объяснить мне это и точно сказать как исправить появление патронов,плиз
KRUGER94
после смерти NPC им спавнится лут - то что прописано в профиле и находится у них при жизни в рюкзаке уничтожается скриптом.
Лут прописан здесь: в папке misc
death_items_by_communities --вероятность спавна по группировкам 1 =100%
death_items_by_levels - вероятность спавна по уровням
death_items_count - кол-во каждой вещи
хочешь чтобы им спавнилось то что тебе надо - прописывай здесь.
зависимость патронов от типа оружия которое является у NPC активным прописывается в файле death_generic (в папке misc) в секции [item_dependence] Germess
то что ты xr_box не трогал еще ни о чем не говорит - значит в каком то файле в твоей геймдате есть функция которая вызывает функцию из этого файла и так как туда видимо ничего не передается - происходит вылет.
в 122 строчке файла xr_box стоит вызов функции рандома math.ceil(math.random(count_by_level[k].min, count_by_level[k].max)) которая выбирает какое число итемов заспавнить в ящик.
отсюда вывод - у тебя ошибка в файле ("misc\\ph_box_generic.ltx") который парсится скриптом из файла xr_box и заполняет таблицы - затем данные из этих таблиц и используются в указанной строчке .
Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
Немогу разобраться где в скриптах прописан вызов худа и вызов меню инвентаря? Нахожу только XML-ки и всё.
Если кто знает подскажите пожалуйста. Возможно ли что это все дело вызывается из движка. :-G
Эта тема закрыта, публикация новых сообщений недоступна.
Продолжая пользоваться сайтом, вы соглашаетесь с использованием файлов cookie. Страницы сайта могут содержать информацию, запрещенную для просмотра посетителям младше 18 лет. Авторское право на серию игр «S.T.A.L.K.E.R» и используемые в ней материалы принадлежит GSC Game World.