Здесь задают вопросы и получают на них ответы. Прежде чем задать вопрос, воспользуйтесь поиском по разделу, ответ на него, вероятно, уже есть.
Если у вас произошёл вылет, проверьте лог и поищите информацию об ошибке в справочнике. Также будет полезно посмотреть справочник ошибок. Если у Вас вылетает какой-то мод, то следует написать в тему этого мода.
Грамотно оформляйте свой пост, чётко доносите суть своего вопроса (ответа).
Благодарность выражаем в личке или же ставим плюсик в историю репутации. Подобные посты будут удаляться.
denis2000, уже разобрался) просто при спавне костра в сдк оказалось, что визуальная часть костра это статическая геометрия(статический объект, а не спавн элемент), а перекомпиливать весь уровень из-за одного костра для моего железа не вариант.
Добрый день, столкнулся с очень странной проблемой. Попытался сделать динамический объект с анимацией. Пользуюсь плагинами от den stash'a. Модель экспортировал, настроил. Без анимации (motion) в сдк всё работает. Но после того как добавляю, мне вылетает ошибка (Line: 235) при попытке поставить её в левел-эдиторе или включить от вида "engine". Вот фото. Я не знаю, может я как-то неправильно экспортирую motion? (выделяю кости)
Вопрос снят, нужно было в актор-эдиторе нажать кнопочку "bone parts", затем "reset to default".
Сообщение отредактировал R_Gamer_ - Понедельник, 01.01.2018, 21:54
-- called when an inventory item is eaten/used -- returning false will prevent the item from being used function CInventory__eat(npc,item) local return_flag = true SendScriptCallback("on_before_item_use",npc,item,return_flag) return return_flag end
По идее чтобы с ним работать нужно сделать что-то вроде этого:
Код
--если игрок пытается использовать аптечку, то ничего не происходит function on_before_item_use(npc,item,return_flag) if item:section() == "medkit" then return_flag = false end end
Но не работает. Может это как-то по другому делается?
function CInventory__eat(npc,item) local return_flag = true if string.find(item:section(), "medkit") ~= nil then return_flag = false end SendScriptCallback("on_before_item_use",npc,item,return_flag) return return_flag end
Теперь аптечка юзается, но не исчезает. Повторно использовать нельзя.
yobakun, а что ты хотел, видимо так всё и задумано в СоС!
Добавлено (03.01.2018, 11:13) --------------------------------------------- svo6o9a, если я правильно понимаю вы про статическую геометрию локации? Если вы про это, то никак т.к. это статическая геометрия локации или сделать отдельную модель(динамическую геом. локации) и заспавнить. Это?
Добавлено (03.01.2018, 11:19) --------------------------------------------- yobakun, и если я правильно понимаю проектировщиков СоС, то выглядеть должно примерно так:
Код
function CInventory__eat(npc,item) local return_flag = true SendScriptCallback("on_before_item_use",npc,item,return_flag) return return_flag end function on_before_item_use(npc, item, return_flag) if string.find(item:section(), "medkit") ~= nil then return_flag = false end end
Сообщение отредактировал buffy - Среда, 03.01.2018, 11:16
Это то есть его только в all.spawn и просто на локации поставить? И в инвентарь ГГ (НПС) положить будет нельзя?
Спавниться скриптом прекрасно. Можно но только подменяя объект на носимый (так например сделаны переносные тайники в SGM). А вообще если нужен объект со специфическими свойствами - редактируете движек, не хотите редактировать - используйте существующие классы и скриптовые механизмы.