Здесь задают вопросы и получают на них ответы. Прежде чем задать вопрос, воспользуйтесь поиском по разделу, ответ на него, вероятно, уже есть.
Если у вас произошёл вылет, проверьте лог и поищите информацию об ошибке в справочнике. Также будет полезно посмотреть справочник ошибок. Если у Вас вылетает какой-то мод, то следует написать в тему этого мода.
Грамотно оформляйте свой пост, чётко доносите суть своего вопроса (ответа).
Благодарность выражаем в личке или же ставим плюсик в историю репутации. Подобные посты будут удаляться.
denis2000, стандартные? я знаю как передаются предметы между нпс и гг, но в моем случае нпс нет, гг должен взаимодействовать с тутором\рестриктором и там уже получать\терять предметы, я пробовал те функции из диалогов - они не робят - ловлю вылет, может я что-то не понял, проясни пжлста
Asfagan, в моде Связь Времен в лаборатории, ГГ подходит к бочке и наполняет флягу водой. Там пустая фляга или отпитая на 1 или 2 глотка заменяется на полную флягу. Можете посмотреть как это сделано. Берите готовое, а не изобретайте велосипед.
Можно ли сделать громче звук окружения(амбиент локации) type = 3d ? и влияют ли вот эти строки на это:idle = 0,0,100 idle = 1,1,100 idle = 3,5,100 idle = 10,15,100 ?
Добавлено (21.02.2018, 09:44) --------------------------------------------- Alone_biiter, зайди в папку configs\text\rus найди там файл st_items_equipment или st_items_quest почитай его, там описание предметов.
Сообщение отредактировал Asfagan - Среда, 21.02.2018, 09:47
function trade_all_money(actor, npc) return db.storage[npc:id()].trade.all_money > 2000 end
При использование ее в логике - { =trade_all_money} или { !trade_all_money}, то получаю вылет ссылающийся на данную функцию.
Код
FATAL ERROR
[error]Expression : !m_error_code [error]Function : raii_guard::~raii_guard [error]File : ..\xrServerEntities\script_storage.cpp [error]Line : 630 [error]Description : ...рыв Устоев/bins/..\gamedata\scripts\xr_conditions.script:708: attempt to compare number with nil
В чём может быть проблема?
Добавлено (21.02.2018, 12:29) --------------------------------------------- Или как сделать, чтоб при успешной сделки Сидр говорил "Вот так бы всегда", ну, вы поняли.
Сообщение отредактировал DaaGuda - Среда, 21.02.2018, 11:23
denis2000, Использовал функцию (%=create_squad(Сквад:Смарт)%) для спавна сквада, как Вы и говорили. Все получилось. Интересует теперь респавн этого же сквада после смерти через определенный промежуток времени. Как это организовать?
В том, что db.storage[npc:id()].trade.all_money = nil, а значит и сравнить это с числом невозможно, о чем вам движек честно признался в логе. Причина: в том , что скрипт, которому это положено не определил значение all_money до вызова вашей функции или вы неудосужились перед проверкой определить существует ли параметр.
ЦитатаDaaGuda ()
Или как сделать, чтоб при успешной сделки Сидр говорил "Вот так бы всегда", ну, вы поняли.
В логике Сидоровича в ТЧ это есть, подсмотреть не хотите?
можно ли сделать проверку в логике рестриктора на нахождения в нем тела мёртвого нпс (убитого, а не заспавненного мертвым)???
Возьмите в пример функцию npc_in_zone
Код
function npc_in_zone(actor, npc, p) local zone = db.zone_by_name[p[1]]
if type(npc.id) ~= "function" then npc_obj = db.storage[npc.id] and db.storage[npc.id].object if zone == nil then return true end
if npc_obj == nil then return zone:inside(npc.position) end else npc_obj = npc end
return utils.npc_in_zone(npc_obj, zone) end
и творчески переработайте ее (назвав например my_npc_in_zone), в оригинале объеткт НПС передается из logic.script в параметре npc, а вам потребуется передавать его в качестве стори_ид в таблице параметров p. Теперь в логике рестрикора:
Скажите пжлста, с чем связан данный вылет? Сам пытался найти ошибку, убирал все вновь добавленное, но вылет все равно остался.
Expression : !m_error_code Function : raii_guard::~raii_guard File : ..\xrServerEntities\script_storage.cpp Line : 748 Description : ...ker call of pripyat\gamedata\scripts\xr_logic.script:648: attempt to index global 'xr_effects' (a nil value)
Сообщение отредактировал Asfagan - Среда, 21.02.2018, 19:22