Предлагаю размять мозги (свои, а не нейросетевые) задачкой. Пишите идеи/псевдокод в комментарии. Мое решение в этом посте.
Условия задачи:
Нужно найти клетки (
Vector3Int), по которым может ударить молния. За один залп стреляем N молний. Клетки выбираются случайным образом в пределах минимального и максимального расстояния от игрока. По пустым клеткам нельзя стрелять. Если подходящих клеток меньше чем нужно или вообще нет, стреляем сколько сможем.Vector3Int playerPosition = ...; // позиция игорка
bool CanHit(Vector3Int cell) { ... } // проверяет, можно ли выстрелить в клетку
void Hit(Vector3Int cell) { ... } // стреляет в клетку
Нужно найти самое оптимальное решение по производительности и памяти.
P. S. В комменты кину мотивационную картинку.
#разминка_для_мозга