к стартовым значениям, создал 2 объекта под 2 разных типа врагов, запускаю игру а там их параметры по нолям... а в инспекторе показывает что нормальные значения. через дебаг вывожу а там ноль.
у игрока также свой скриптабл там все ровно также и все ок
в чем может быть проблема?
Проблема в том что ты ScriptsbleObject не по назначению используешь. Механики лучше писать в MonoBehaviour, а в ScriptableObject лучше только хранить данные т.е. только поля для данных врагов твоих и никаких методов функций. Максимум что можно методом сделать это выборку данных например метод 'int GetMaxHealthByLevel(int level)' в SO у тебя массив с максимальными значениями здоровья и ты от туда берёшь одно значение в зависимости от уровня который к тебе в метод будет передаваться.
единственный метод там, я просто меняю там значения
Это не правильно. Там данные должны только читаться иначе у тебя будут вот такие проблемы. Ты же это на многих врагах используешь, а данные как бы для одного. И все кому не лень туда лезут и меняют данные и пойди пойми кто последний поменял их и что там может быть.
ну в моем случае мне и нужно менять данные у всех врагов одного типа, а как иначе дублировать данные во врагов и там у каждого изменять? тогда смысл скриптабла пропадает помоему
Погоди, ты не правильно мыслишь. У тебя же есть какие-то изначальные значения для врагов. Вот пусть они не будут трогаться и изменяться и пусть лежат в SO. А в монобехе ты из скопируешь себе и уже копии будешь менять на монобехе и сбрасывать ничего не придётся
ну тоесть дублировать характеристики в каждого из сотни мобов потом их там менять? а скриптабл мне просто для структуризации типа? я хочу менять при определенном событии все характеристики всех мобов... насколько я понимаю в билде мне уже не понадобится вертать взад значения это чисто для тестов внутри юнити, во всяком случае на практике при перезапуске на билде все само скидывалось к начальным
Да, а то ты так и будешь мучаться
а есть вариант со скриптаблом без мучений?😂
Ну а чем тебе не тот вариант который я тебе описал?
у меня возникает смутное подозрение что я могу просто удалить скриптабл и засунуть все переменные в класс врага и все будет также как ты предложил но без скриптабла
Обсуждают сегодня