Наверное, глупый вопрос, но как корректнее реализовать логику powerUp'ов, которые

должны действовать ограниченное количество времени и активируемые Hero с помощью предметов?

На самом примитивном уровне (2 варианта):
Вариант 1.
Нужный компонент (условно, PowerUpSuperSpeed) всегда висит на Hero и активируется в момент подъема предмета соответствующего типа (SuperSpeed). По истечении времени способность деактивируется, компонент продолжает висеть на Hero дальше. Минус: при большом количестве запланированных типах PowerUp'ов на Hero будет каша из компонентов.

Вариант 2.
Компонент PowerUpSuperSpeed НЕ висит на игроке. В момент подъема предмета, предмет с помощью AddComponent добавляет Hero компонент нужного типа, по истечении времени компонент PowerUpSuperSpeed самоудаляется с Hero. Насколько это вообще адекватный подход?

7 ответов

7 просмотров

Почему каша, если у тебя всё будет запланировано с именами? Например для бега можно просто прибавлять кф к скорости без компонентов. Или создать enum с бустами и переключать их по мере того как герой поднимает эти предметы

Denix
Почему каша, если у тебя всё будет запланировано с...

Это будет не расширяемое решение, в конце концов код превратится в кашу

Pavel Boyko- Автор вопроса
Denix
Почему каша, если у тебя всё будет запланировано с...

ок, а что-то вроде "Взрыв вокруг игрока", "Ослепление врагов" - это уже никуда не пихнешь в стандартные компоненты игрок/врага (ходьба, прыжок и т.п.). Будет куча костылей в коде.

Не надо делать как компоненты

Pavel Boyko- Автор вопроса
Pavel Boyko
А как надо?

Просто класс, который будет реализовать какой то интерфейс

через интерфейс и реализации сделай, что у тебя есть IPowerUp от него наследуется SuperSpeed и ты когда его подимаешь, его инстанс кладется в Hero и в Update вызывается Execute пока он не закончится

Похожие вопросы

Обсуждают сегодня

Желаю получить совет от великих ботмейкеров которые успешно поднимали ботов на несколько тысяч одновременно активных юзеров Какая чушь нужна людям прямо сейчас, и что стоило ...
ռɛ ʋɛʀʍօʀɛ
6
Окей, а продвигать эту шляпу как? Я ни разу ботов не двигал , ибо не делал ничего для себя толком🧐
ռɛ ʋɛʀʍօʀɛ
5
кто тебе сказал, что она угроблена? многие только начинают жизнь, после увольнения из Гугла, Майкрософта, Оракла,...
Alex Kom
9
В альтернативе у нас сидеть горбатиться на дядю в галерах, пока не помрешь или пока тебя не заменят более молодым сотрудником, который готов гребсти в два раза дешевле. Вот и ...
Кабан Кабанов
7
И еще, я вчера чутка запутался, показы это типо рекламные посты или рассылки, а приветы?
Ilya Shvechikov
5
По какой цене продают скрипты анонимного чата? Я за 500 даже готов 😂😂😂
Ilya Shvechikov
7
Или ты челендж хочешь?
Ilya Shvechikov
7
Так а кто может спарсить всех участников чата? Идишники
Magic
18
да пофиг на капчу зашел в чат и молчишь при этом ты нонейм? пошел вон
Magic
17
сори за оффтоп, но просто в тему https://www.youtube.com/watch?v=8Q_YfcpgdGU
Alex Kom
5
Карта сайта