Инициализация нескольких спрайтов одного и того же типа в Cocos2D из Tiled

Я пытаюсь найти лучший способ инициализировать несколько спрайтов одного типа, помещенных в Tiled. Я даже не знаю, как начать в Tiled, потому что я привык инициализировать только один спрайт, заполнив поле имени, а затем в моем CCLayer с картой я делаю что-то вроде

CCTMXObjectGroup *objects = [theMap objectGroupNamed:@"oj"];
NSMutableDictionary *startPoint = [objects objectNamed:@"StartPoint"];
int x = [[startPoint valueForKey:@"x"] intValue];
int y = [[startPoint valueForKey:@"y"] intValue];

hero = [[HeroClass alloc] init];

[self addChild:hero.heroSpriteSheet];

hero.heroSprite.position = ccp(x,y);

Как видите, мой «герой» является подклассом, и это касается другого спрайта, который является птицей, но я хочу их количество. Я импортирую заголовок HeroClass и создаю указатель, создаю свойство и синтезирую его в своем основном файле и, наконец, освобождаю HeroClass в режиме dealloc. У меня есть чувство, что я, скорее всего, в конечном итоге буду использовать NSMutableArray, но я действительно не знаю, как это сделать в случае создания подклассов. Также я не уверен, что буду использовать objectNamed: @ "name", потому что у меня будет x количество этих спрайтов, которые я буду просто дублировать в Tiled.

Здесь есть полезный пост, в котором показано, как добавить несколько спрайтов, но я не знаю, как связать его с Tiled или подклассом: http://www.iphonedevsdk.com/forum/iphone-sdk-game-development/58334-add-sprites-screen-when-detect-tap-cocos2d.html.

Есть ли у кого-нибудь полезные указатели или примеры кода, касающиеся решения моей проблемы? Спасибо!

TL; DR:

Как мне инициализировать спрайты из одного и того же класса в CCLayer (который отображает мою карту и другие спрайты) на основе определенных местоположений объектов, которые были размещены на карте Tiled TMX?


person Chewie The Chorkie    schedule 01.06.2011    source источник
comment
Привет, добро пожаловать, не стесняйтесь выбирать имя пользователя и остаться ненадолго. :-)   -  person Moshe    schedule 01.06.2011
comment
Вы имеете в виду, что хотите создать несколько экземпляров персонажа?   -  person Moshe    schedule 01.06.2011
comment
Да, например, если бы это был враг, и вы бы увидели 5 на экране.   -  person Chewie The Chorkie    schedule 02.06.2011


Ответы (1)


Я предлагаю создать класс врага. Затем вы создаете группу из них, используя цикл for. Что касается точек возрождения, каждый враг должен устанавливать свою точку возрождения на основе правил. (Границы карты, «безопасные районы» и т. Д.)

person Moshe    schedule 01.06.2011
comment
Спасибо за попытку помочь, но да, это класс, очевидно, это был бы какой-то цикл, и мне не нужны точки появления, основанные на правилах. Мне нужны определенные местоположения, основанные на объектах, помещенных в плитку. Не совсем уверен, почему вы упомянули это. - person Chewie The Chorkie; 02.06.2011
comment
Хорошо, так в чем вопрос, в строке? - person Moshe; 02.06.2011
comment
Как мне инициализировать x количество спрайтов из одного и того же класса в CCLayer (который отображает мою карту и другие спрайты) на основе определенных местоположений объектов, которые были размещены на Tiled TMX карте? - person Chewie The Chorkie; 02.06.2011