捕鱼达人游戏项目开发过程文档教学文稿

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

捕鱼达人项目开发过程文档

一、游戏资源文件

image 图片:包括火炮,鱼,子弹,渔网,金币,数字,背景图片以及其它UI 图片 CCFish 类:实现鱼的曲线路线的移动与各种鱼捕捉概率的设置

UINumber 类与UIRollNumber 类

二、游戏基本结构确定及搭建 图1.1 依次在项目中创建如有图类

完成项目结构,在总体上把握项目实现内容

三、详细设计与各功能模块的实现

程序编写流程

1. 系统菜单场景:

1) 添加初始化方法

2) 添加菜单

3) 添加菜单选项方法

2. 游戏场景

1) 添加初始化方法

2) 添加纹理图集载入方法

3) 添加UI 设计方法

4) 添加触摸事件处理方法

5) 添加自动补充鱼更新方法

6) 添加碰撞检测方法

3. 设置页面

4. 帮助场景

游戏重要模块详细实现

1. 纹理图集的使用与加载

要点:精灵处于界面中的层次关系,如下为纹理图集加载代码

[[CCSpriteFrameCache sharedSpriteFrameCache ] addSpriteFramesWithFile :@"fish.plist"];

fishSheet = [CCSpriteBatchNode batchNodeWithFile :@"fish.png"];

[self addChild :fishSheet z :100];

2. UI 设计的细节实现

要点:各个UI 部件(精灵)的层次,位置调整以及武器的更换动作设置,下面为UI 实现代码

-(void ) initUI {

SysMenu

(scene)

GameMain

(scene) Setting (layer)

Help (scene)

CGSize winSize = [[CCDirector sharedDirector] winSize];

CCSprite * background = [CCSprite spriteWithFile:@"bj00.jpg"];

background.position = ccp(winSize.width * 0.5, winSize.height * 0.5);

[self addChild:background z:0];

//添加能量槽

CCSprite *engryBox =[CCSprite spriteWithFile:@"ui_2p_004.png"];

engryBox.anchorPoint = ccp(0.5, 0.5);

engryBox.position = ccp(winSize.width/2,10);

[self addChild:engryBox z:10];

//添加能量箭头

energyPointer = [CCSprite spriteWithFile:@"ui_2p_005.png"];

energyPointer.anchorPoint = ccp(0.5,0.5);

energyPointer.position = ccp(winSize.width/2,10);

energyPointer.rotation = minEnergyRotation;

[self addChild:energyPointer z:12];

//添加顶部框体

CCSprite *bgExp =[CCSprite spriteWithFile:@"ui_box_01.png"];

bgExp.position = ccp(winSize.width/2, winSize.height);

bgExp.anchorPoint = ccp(0.5f,1.0f);

[self addChild:bgExp z:101];

//添加底框

CCSprite *bgNum =[CCSprite spriteWithFile:@"ui_box_02.png"];

bgNum.position = ccp(bgNum.contentSize.width/2, 0);

bgNum.anchorPoint = ccp(0.5f,0);

[self addChild:bgNum z:101];

//添加武器

cannnon = [CCCannon spriteWithSpriteFrameName: [NSString

stringWithFormat:@"actor_cannon1_%i1.png",1]];

cannnon.cannonLevel = 1;

cannonLevel = 1;

cannnon.anchorPoint = ccp(0.5f,0.5f);

cannnon.position = ccp(winSize.width/2,30);

cannnon.scale = cannon_scale;

cannnon.cannonType = nomal;

[cannonSheet addChild:cannnon];

//添加“+”,“-”按钮(待改)

[CCMenuItemFont setFontSize:32];

[CCMenuItemFont setFontName:@"Arial"];

CCMenuItem * addItem = [CCMenuItemFont itemFromString: @"+"target:self elector:@selector(addCannonLeave)];

//addItem.scale = 1.5;

CCMenu * addMenu = [CCMenu menuWithItems:addItem,nil];

addMenu.position = ccp(winSize.width*0.5+30, 10);

[addMenu alignItemsVertically];

相关文档
最新文档