как добавить меню в уже готовую игру в cocos2d и box2d для iphone? - PullRequest
0 голосов
/ 15 февраля 2012

У меня есть игра, в которой я хочу иметь титульный экран с кнопкой «play» для приложения, которое загружает игру. РЕДАКТИРОВАТЬ: интерфейс был сделан в Level Helper

Ответы [ 3 ]

1 голос
/ 19 февраля 2012

Вот как вы можете реализовать меню, которое меняет сцены с переходом.В вашем файле HelloWorldLayer.m добавьте следующее:

-(id) init
{
if( (self=[super init])) {

    CCMenuItemImage *menuImage = [CCMenuItemImage itemFromNormalImage:@"yourimage.png" selectedImage:@"Icon.png" target:self selector:@selector(changeScene:)];

    CCMenu *menu;

    menu = [CCMenu menuWithItems:menuImage, nil];

    [self addChild:menu];
}
return self;
}

-(void) changeScene:(id)sender
{
    [[CCDirector sharedDirector] replaceScene:[CCTransitionZoomFlipX transitionWithDuration:1 scene:[Scene1 node]]];
}

Это создаст изображение элемента меню, назначенное селектору, добавит его в меню, а затем при щелчке перейдет к новой сцене, которую я будупокажу как это сделать сейчас.Создайте новый класс с именем Scene1, и просто чтобы показать, что переход сработал, мы добавим спрайт в эту новую сцену.В вашем init методе:

-(id) init
{
if( (self=[super init])) {

    sprite = [CCSprite spriteWithFile:@"yourimage.png"];

    sprite.position = ccp(100,200);
    [self addChild:sprite];
}
return self;
}

Если вы видите этот новый спрайт на экране, это означает, что все работает.

0 голосов
/ 16 февраля 2012

создать меню, используя следующий код:

// Intalize your menu item
CCMenuItem *menuItem = [CCMenuItemFont itemFromString:@"This is what you want your item to say" target:self selector:@selector(selectorToHandleYourSelection)];
// Define where you want your item to be
menuItem.position = ccp(100,100);
// Intalize a menu for your menu item
CCMenu *menu = [CCMenu menuWithItems:menuItem, nil];
// Add the 'menu' as a child to your layer
[self addChild:menu];
// If the item position isn't defined then you can align the items horizontally
[menu alignItemsHorizontally];
0 голосов
/ 15 февраля 2012

Я предполагаю, что у вас уже есть игра, и у вас есть исходный код игры.

Все, что вам нужно, это создать новый CCLayer с CCMenu (содержащим CCMenuButton, который вы хотите), и все, что он делает, это загрузить CCLayer, который загружается при запуске игры, и сделать ваш CCLayer тем, который загружается при запуске. приложение.

...