0

Im new to cocos2d and developing in general, so this is probably a really silly mistake. Ive searched all over and compared examples and I cant see the problem. Ive got a simple menu with just a play button. Im trying to go to another scene when its clicked. The error is

Use of undeclared identifier 'gameScene'

but as far as I can see it is declared...

Here's my code.

CCMenuItemImage *play = [CCMenuItemImage
                             itemFromNormalImage:@"PlayButton.png"
                             selectedImage:@"PlayButtonPressed.png"
                             target:self
                             selector:@selector(gameScene)];

    CCMenu *selectMenu = [CCMenu menuWithItems:play, nil];
    //[selectMenu alignItemsVertically];
    [self addChild:selectMenu];

    -(void)gameScene:(id)sender
    {
        [[CCDirector shareDirector] replaceScene:GameScene node];
    }

Thanks for any help

EDIT: Ive now got no errors, I missed the [] around GameScene node. BUT it keeps crashing. Heres my new code.

CCMenuItemImage *play = [CCMenuItemImage
                                 itemFromNormalImage:@"PlayButton.png"
                                 selectedImage:@"PlayButtonPressed.png"
                                 target:self
                                 selector:@selector(playGame)];

        CCMenu *selectMenu = [CCMenu menuWithItems:play, nil];
        //[selectMenu alignItemsVertically];
        selectMenu.position = ccp(160, 300);
        [self addChild:selectMenu];

    }
    return self;
}

-(void)playGame:(id)sender{
    [[CCDirector sharedDirector]replaceScene:[GameScene node]];
}

It doesnt seem to get to CCMenu?

4

3 に答える 3

0

シーンの置換パラメーターが正しくありません。空のノードだけでなく、切り替え先の実際のシーンを定義する必要があります。

于 2012-09-23T01:59:53.773 に答える
0

問題を解決しました。セレクターに問題があったようです。私はそれを次のように変更しました:

CCMenuItemImage *play = [CCMenuItemImage
itemFromNormalImage:@"PlayButton.png"
selectedImage:@"PlayButtonPressed.png"
target:self
selector:@selector(playGame)];

に:

CCMenuItemImage *play = [CCMenuItemImage
itemFromNormalImage:@"PlayButton.png"
selectedImage:@"PlayButtonPressed.png"
target:self
selector:@selector(playGame:)];
于 2012-09-23T12:49:18.917 に答える