Вы могли бы создать фиктивный родительский CCNode, например, расположенный в центре слева от вашего экрана, и ваши воздушные шары создавались как дети, используя смещение смещения (увеличение в цикле, учет и накопление соответствующей ширины и высоты каждого воздушного шара).
Небольшое преимущество в этом случае состоит в том, что вы можете легко перемещать все воздушные шары сразу вверх или вниз (например, с помощью прокрутки), просто перемещая родительский CCNode - но также и при попытке извлечьспрайт-шарик по его тегу, вы можете запросить с помощью childByTag из своего CCNode, не рискуя столкнуться со значением тега с другими спрайтами в вашей сцене (скажем, кнопками пользовательского интерфейса и другими спрайтами, не связанными с вашим игровым процессом).
Использование тегов для идентификациишары, конечно, хорошая идея, но учтите, что если вы хотите сохранить и получить больше пользовательских данных для ваших шариков (скажем, цвет, скорость и т. д.), вы можете рассмотреть возможность создания подкласса CCSprite с вашим собственным классом спрайта, чтобыВы можете добавить любой япеременная mber вам нужна.
Я думаю, что есть также способ прикрепить userData к CCNode, если подклассы излишни для ваших нужд.
Best,