в них хранить имена тегов/слоёв? Чтобы быстро и удобно получать доступ по типу Tag.PlayerTag (string PlayerTag => "Player";)
Зачем создавать классы для этого? Чем обычные LayerMask не устраивают? А вообще это же снаряды, значит должны вообще во все попадать, значит и маска им не нужна
Не я в целом спрашиваю, не для снарядов) Т.е. там могут быть любые другие значения. Просто это как бы статики, и интересен такой вопрос. Или нужно думать для такого что-то другое, но тогда наверное синглтон, или каждый раз вызывать конструктор.. Явно же не удобно в разных скриптах в разных строчках кода вписывать чисто "стринги" тегов, имён слоёв и т.д. и изменить их потом будет сложно. Что для таких случаев юзают?
Вообще как один человек мне сказал "Если у вас проект не уровня Ведьмака и больше 3 статичных переменных, то вы пишите быдлокод".. По поводу классов в моем понимании это как свойства объекта.. допустим класс мячика в нем ты указываешь его параметры, методы отскока, рикошета, а уже создав переменную типом мячик ты создаёшь один экземпляр мячика со свойствами указанные в классе и доступом к этим свойствам, а также поведение через методы класса
Т.е. можно создать класс Ball, и если нужно получить его маску или тег, мы обращаемся к new Ball().Tag, если это экземпляр, или опять же статик конкретного класса Ball.Tag?
Обсуждают сегодня