2.2 添加主菜单(MainMenu)场景
在创建主菜单场景之前,需要先创建一个新项目,并且在加载游戏时要根据第1章中的操作步骤加载MainScene文件。当然,也不要忘记修改CCBReader.m文件,还要修改文件夹搜索参数。
2.2.1 准备工作
其实,这一步并不需要什么其他操作。在本章的后面部分,我们将讨论如何使用自定义的init函数创建更为复杂的场景。
目前,我们将把MainScene用作MainMenu场景,并且使用文本、按钮、场景过渡函数进一步完善它。
2.2.2 操作步骤
到目前为止,我们已经有了一个MainMenu.h文件,它拥有如下类似代码:
@interface MainScene : CCNode
+(CCScene*)scene;
@end
也有一个MainMenu.m文件,代码如下:
#import "MainScene.h"
@implementation MainScene
+(CCScene*)scene{
return[[self alloc]init];
}
-(id)init{
if(self = [super init]){
winSize = [[CCDirector sharedDirector]viewSize];
}
return self;
}
@end
上面代码中没有什么新东西。我们可以像在第1章中所做的那样在init函数中添加背景图像,让场景显得更好看一些。我们将在init函数中添加如下代码:
-(id)init{
if(self = [super init]){
winSize = [[CCDirector sharedDirector]viewSize];
CCSprite* backgroundImage =
[CCSprite spriteWithImageNamed:@"Bg.png"];
backgroundImage.position =
CGPointMake(winSize.width/2,
winSize.height/2);
[self addChild:backgroundImage];
}
return self;
}
2.2.3 工作原理
编译并运行代码,确保代码中没有错误发生,因为接下来我们要把这个文件用作主菜单场景。
运行场景之后,你将看到背景图像,与第1章中的背景图像一模一样。
场景是创建游戏界面的基本构件。一个场景可以包含任意数量的精灵、文本标签、菜单,以及它们的任意组合等,并且它能满足开发者的需要,允许他们使用这些元素搭建场景。
以上代码只是演示了如何创建场景,以及基本游戏场景看上去是什么样子,如图2-1所示。在本章后面部分,我们将讨论如何定制我们自己的场景。
接下来,我们将添加文本标签、按钮、菜单,进一步完善我们的主菜单场景。
时间: 2024-09-21 01:09:56