Проверил сделав кучу обьектов через цикл с рандомной генерацией имени, работает. Я еще заметил что "deleted" может вывестись после "Program complete", это значит чистка мусора проводиться в другом потоке?
Обьект может быть любого типа, можно туда то что ни надо закинуть. Также тот же метод Start имеет 2 перегрузки с параметром object и без параметров, если вызвать не тот Start то поток не будет работать. Единственное вещь которая поможет не перепутать потоки которые принимают ParameterizedThreadStart и ThreadStart, это называть обьекты типа Thread parameterizedThread или thread, и также методы называть так чтобы было понятно какие типы он принимает.
А если был бы ParameterizedThreadStart обощенный, а в идиале еще и класс Thread сделать обощенный(или сделать другой типо ParameterizedThread) было бы очень понятно что закинуть в параметры. Так разве не будет удобнее?
Ты в Update ищешь обьекты с типом Enemy? Поиск происходит через перебора всех обьектов, а потом через TryGetComponent проверяеться компонент, если что это очень плохо для оптимизации. Лучше после того как ты создаешь врага пиши enemyCount++;
Так и понятнее будет, и оптимизированее.
И еще, если ты игру делаешь под мобилы и врагов будет много лучше не создавать а активировать уже созданные на сцене(SetActive(true))
Про ассеты честно не знаю, хотя думаю что тайлмапа с доп пакетом 2D Tilemap Extras вполне хватит. Пакет этот дает возможность делать тайлы с анимацией, GameObject-ты тайлами, тайлы с рандомным спрайтом и еще разных выщей. Очень полезная вещь.
Это просто обьекты с неким компонентом. В главном скрипте когда игрок нажимает на мышь пускаться луч который проверяет есть ли этот компонент у обьекта на которого он попал. Raycast target отключал, не помогло
Двигать курсор Unity не дает. Но можно взять отключить рисовку курсора (Cursor.visible = false), потом сделать GameObject с текстурой, и сделать скрипт который будет двигать на позицию курсора(Input.mousePosition). Вот уже такой курсор трясти можно.
Забыл написать самое важное, враг меняет состояние и он начинает кружиться, я догадываюсь почему. Когда он поворачивает назад он не видит игрока, и когда он поворачиваеться вперед он после каким то образом поворачиваться назад, и это такой бесконечный цикл. каким то образом поворачиваться назад вот это как раз я не знаю как исправить.