0
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"];
結果是一噸重複的代碼。這怎麼可以簡化?
畢竟,只需要改變場景,只需在初始化方法中傳遞一個變量(級別號)即可。