Делаю игру типо alchemy где надо соединять элементы (перетаскивая друг

на друга). Вопрос как лучше сделать? Создать один скрипт и каким-то образом проверять когда ты накладываешь один элемент на другой, нет ли у него пары для образование нового. Или для каждого элемента сделать скрипт и через serializedField просто настроить что с кем должно соединяться. В первом случае не знаю как сделать соединение а во втором кажется будет очень много дубляжа. Может есть какой-то более простой способ?

5 ответов

10 просмотров

наверно здесь не обойтись без целых строк if. А если в игре будут максимум картинки (как и подобает в таких играх) то да, SO мне кажется отлично подойдет для этого. Типо что там нужно, имя, описание, картинка да и все(?)

Vixen-Fox Автор вопроса
Gamma Snaplight💛 (Egyptian catgirl)
наверно здесь не обойтись без целых строк if. А ес...

А чё значит scriptable objects? просто чтобы на всех элементах были скрипты?

Vixen Fox
А чё значит scriptable objects? просто чтобы на вс...

Открой документацию и познай целый дивный мир) А если коротко класс конфига который очень сильно упрощает жизнь

Vixen Fox
А чё значит scriptable objects? просто чтобы на вс...

погугли что это такое, фактически будет отдельный тип скриптов, которые являются как-бы ассетами и находятся в файлах проекта, они могут содержать какую-то информацию

реализация может зависеть от требований, откуда на сцене будут появляться элементы и всё такое, но тебе точно не надо делать разные скрипты для разных элементов, потому что элементы у тебя работают одинаково. Есть енам ElementType Есть список рецептов (вот его лучше хранить в SO), ну либо кодом забей, пока не разобрался. Класс рецепта содержит (ElementType[] Input, ElementType Output), при складывании элементов пробуешь искать нужный рецепт и создаёшь элемент.

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

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

Ты просто гитлеровскую эстетику плохо понимаешь. Он же всё под Цезаря делал. А это как бы запрещённый приём в политике. Пиджаки они зачем все носят? Чтобы показать что они тип...
Ivan Kropotkin
4
'frakturBold' => ['𝖆', '𝖇', '𝖈', '𝖉', '𝖊', '𝖋', '𝖌', '𝖍', '𝖎', '𝖏', '𝖐', '𝖑', '𝖒', '𝖓', '𝖔', '𝖕', '𝖖', '𝖗', '𝖘', '𝖙', '𝖚', '𝖛', '𝖜', '𝖝', '𝖞', '𝖟', '𝕬', '𝕭', '𝕮', '𝕯'...
Roma
4
Добрый день, не подскажите, если в OC-V3 поменять страндартную директорию /storage/ на /storage2/ - не будет сильно много проблем ?
Max Dubovsky
32
Всем привет. Нужна платная консультация от тех, кто сталкивался с октябрём в кластере или шарит оч хорошо в цмс. Проблема следующая: после переноса в кластер октябрь начал ...
wl
8
Каким то образом можно определить ширину экрана пользователя перед загрузкой partial-а? Надо рассчитать ширину кадров слайдера для ресайза картинок для container-fluid.
Point 111
22
а я честно сказать не понимаю - нахуя идти учиться на вышку или еще куда-либо и при этом нихуя не делать, типа зачем ? просто корку получить, а нахуй она нужна тогда ?
Eugene Неелов
7
А сколько часов мак держит зарядку в рабочем режиме? Например мой Redmi Mac (просто наклейка от айфона осталась, налепил) по началу держал часов 5 с парой открытых штормов и ...
Ross
8
Ребят, а вот такой вопрос: если я владелец бота анонимного чата, в котором, например, имеются подписки, используя какую-нибудь ЮКассу (или тому подобное, в общем с налогами, в...
Eugene Неелов
8
Ребят, было ли у вас так, что переменные в WebApp —tg-viewport-height, —tg-viewport-stable-height после метода expand не обновляются, а остаются в размерах, как было до expand...
Black
3
зараз якщо створити файл core/custom/define.php з текстом <?php const NO_SESSION = true; можна позбутися сесійних кукі (що зручно, щоб не показувати людям банери про збір та в...
Artur Kyryliuk
1
Карта сайта