在Cocos2d中组织文件

Ale*_*lex 2 xcode cocos2d-iphone

我刚刚开始使用Ray Wenderlich制作的精彩教程学习Cocos2d .但是我的HelloWorldScene主文件变得有点大了.

我希望能够将精灵生成方法排序到一个文件中,misc.方法进入另一个等等,留给我的核心级文件包含不同的场景和init方法.

是否可以将方法复制到新的.m文件中,并在需要时将它们放入HelloWorldScene.m中?

你如何组织你的游戏文件?

Osp*_*pho 5

我强烈建议您对游戏进行分层.它使组织和整洁,减少任何一个文件中的代码量.

在cocos2d中,你应该注意3个类来实现这个目的:
CCDirector,CCScene,CCLayer.

你可以做的是,在一个场景中创建多个图层(GameScene).Eg:有一个HUD,游戏界面,背景和前景.

这些都可以分成单独的CCLayers并在CCScene中加在一起.

所以现在你将HelloWorld.m拆分为:GameScene.m
HudLayer.m
GameInterfaceLayer.m
Background.m
Forground.m

将所有h文件导入GameScene.h后,您可以将每个图层添加到场景中,如下所示:

@implementation GameScene
+(CCScene){

HudLayer *hud = [HudLayer node];
[self addChild: hud z:3];

GameInterfaceLayer *game = [GameInterfaceLayer node];
[self addChild: game z:1];
...} etc
@end
Run Code Online (Sandbox Code Playgroud)

一旦你这样做,如果你不改变你的AppDelegate,你的CCDirector会给你一个错误.CCDirector基本上决定加载哪个场景.
将其更改为指向您的GameScene.

您可以想象:电影导演,拍摄场景,充满了许多图层.