Использование CCSpriteBatchNode для анимации нескольких объектов - PullRequest
1 голос
/ 26 октября 2011

Я хочу использовать CCSpriteBatchNode для анимации «врагов» в моей игре. Я читал в уроке Рэя Вендерлиха [потрясающий парень], который можно найти здесь: http://www.raywenderlich.com/1271/how-to-use-animations-and-sprite-sheets-in-cocos2d что для использования CCSpriteBatchNode и получения выгоды от его использования я должен добавить спрайты, используемые в анимации, в качестве дочерних элементов узла спрайта.

То, что я намеревался сделать, это иметь CCNode и добавить спрайт, используемый для анимации, как дочерний элемент этого узла. Я хотел сделать это таким образом, потому что кроме анимации у меня есть такие вещи, как столбики здоровья и т. Д., Которые следуют за анимацией вокруг сцены. Если у меня все под одним CCNode, я могу легко им манипулировать.

Из того, что я понимаю, мне нужно будет добавить спрайт, используемый для анимации, как дочерний узел узла спрайта, сохранить ссылку на него в объекте врага и изменить его положение и другие параметры вместе с изменением положения узла, который будет содержать бары здоровья и т. д.

Это правильно? Есть ли более простой способ сделать это?

1 Ответ

1 голос
/ 26 октября 2011

Вы можете добавлять только объекты CCSprite в CCSpriteBatchNode. И вы не можете добавить узел дважды в иерархию узлов. Итак, вы правы, что вам нужно иметь ссылку на ваш спрайт-пакетный спрайт. По сути, вы будете реализовывать шаблон View-Controller, при этом спрайт является «представлением», а контроллер - это объект, который обновляет (контролирует) свойства спрайта, такие как position.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...