После синтаксиса Python Objective C мой ум!(cocos2d) Динамическое создание меню и сцены
Я пытаюсь создать меню, в котором будет 25 кнопок. Нажатие на это будет правильным. Уровни отличаются только вызовом [CCTMXTiledMap tiledMapWithTMXFile: @ "lvl_1-25.tmx"];
Для создания меню, я использую:
CCMenuItemSprite *lvl_1_button= [CCMenuItemSprite itemFromNormalSprite:[GameButton buttonWithText:@"lvl 1"] selectedSprite:NULL target:self selector:@selector(lvl1_start)];
...
CCMenu *menu = [CCMenu menuWithItems: lvl_1_button, lvl_2_button, lvl_3_button, nil];
[self addChild:menu];
Сцена меняется с:
-(void)lvl1_start
{
[[CCDirector sharedDirector] replaceScene:[lvl1_start node]];
}
В этом случае разница между уровнями минимальна. В одной строке при инициализации.
-(id) init
{
if((self=[super init]))
{
self.tileMap = [CCTMXTiledMap tiledMapWithTMXFile:@"lvl_1.tmx"];
В результате получается тонна дублирующего кода. Как это можно упростить?
В конце концов, нужно только изменить сцену и просто передать одну переменную (номер уровня) в методе инициализации.