《别踩白块经典版》设计说明文档1.docx

上传人:b****2 文档编号:1837491 上传时间:2023-05-01 格式:DOCX 页数:22 大小:329.88KB
下载 相关 举报
《别踩白块经典版》设计说明文档1.docx_第1页
第1页 / 共22页
《别踩白块经典版》设计说明文档1.docx_第2页
第2页 / 共22页
《别踩白块经典版》设计说明文档1.docx_第3页
第3页 / 共22页
《别踩白块经典版》设计说明文档1.docx_第4页
第4页 / 共22页
《别踩白块经典版》设计说明文档1.docx_第5页
第5页 / 共22页
《别踩白块经典版》设计说明文档1.docx_第6页
第6页 / 共22页
《别踩白块经典版》设计说明文档1.docx_第7页
第7页 / 共22页
《别踩白块经典版》设计说明文档1.docx_第8页
第8页 / 共22页
《别踩白块经典版》设计说明文档1.docx_第9页
第9页 / 共22页
《别踩白块经典版》设计说明文档1.docx_第10页
第10页 / 共22页
《别踩白块经典版》设计说明文档1.docx_第11页
第11页 / 共22页
《别踩白块经典版》设计说明文档1.docx_第12页
第12页 / 共22页
《别踩白块经典版》设计说明文档1.docx_第13页
第13页 / 共22页
《别踩白块经典版》设计说明文档1.docx_第14页
第14页 / 共22页
《别踩白块经典版》设计说明文档1.docx_第15页
第15页 / 共22页
《别踩白块经典版》设计说明文档1.docx_第16页
第16页 / 共22页
《别踩白块经典版》设计说明文档1.docx_第17页
第17页 / 共22页
《别踩白块经典版》设计说明文档1.docx_第18页
第18页 / 共22页
《别踩白块经典版》设计说明文档1.docx_第19页
第19页 / 共22页
《别踩白块经典版》设计说明文档1.docx_第20页
第20页 / 共22页
亲,该文档总共22页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

《别踩白块经典版》设计说明文档1.docx

《《别踩白块经典版》设计说明文档1.docx》由会员分享,可在线阅读,更多相关《《别踩白块经典版》设计说明文档1.docx(22页珍藏版)》请在冰点文库上搜索。

《别踩白块经典版》设计说明文档1.docx

《别踩白块经典版》设计说明文档1

《别踩白块2015经典版》设计说明版本号:

V1.0

一、设计原理:

一款休闲类游戏,依靠玩家反应能力获得更多的黑块。

针对碎片时间较多、对反应能力有自信的人。

整个页面由黑白两种色块组成,页面分为4列,4列中每一行随机刷新一个黑块,玩家需要依次点击刷新的黑块才能继续游戏,漏点或点击白块后判定失败。

二、设计流程:

游戏模式:

游戏模式主要有3种,经典模式、禅模式、街机模式。

经典模式:

以最快的速度准确的完成50块黑块的收集。

胜负判定:

玩家准确收集完50个黑块,判定胜利并记录时间;玩家点击了白块则判定失败。

禅模式:

在规定的时间内(30s)尽可能的收集黑块。

胜负判定:

玩家在30s内准确的收集黑块,记录收集的黑块数量;玩家点击白块则判定失败。

街机模式:

屏幕会以一定的速度(速度会逐渐上升)向下刷新黑白块,玩家必须准确点击黑块。

胜负判定:

玩家点击白块或漏点黑块则判定玩家失败,记录当前收集黑块数。

 

设计流程图:

经典模式

禅模式

街机模式

 

道具

道具名称

描述

概率(暂定)

价格(暂定)

复活

玩家死亡后可复活继续游戏,复活后有3秒准备时间

100%

200钻石

三、UI设计说明:

界面关系流程图:

 

主界面:

战斗界面:

商城界面:

复活界面:

结算界面

礼包界面:

四、软件架构图

五、算法

1、游戏首界面代码#ifndef__whiteBlock__FirstScene__#define__whiteBlock__FirstScene__#include"cocos2d.h"USING_NS_CC;classFirstScene:

publiccocos2d:

:

CCLayer{public:

FirstScene();~FirstScene();virtualboolinit();staticcocos2d:

:

CCScene*scene();voidreplaceScene(CCObject*objectz);virtualvoidkeyBackClicked();voidqueding();voidquxiao();voidtoShangDian();CREATE_FUNC(FirstScene);private:

intmodel;CCMenu*replaceSceneMenu;CCSprite*tuichuSprite;CCMenu*tuichumenu;CCLabelTTF*goldLabel;};#endif/*defined(__whiteBlock__FirstScene__)*///FirstScene.cpp//whiteBlock//Createdbyliuqingyunon14-12-7.////#include"FirstScene.h"#include"MainScene.h"#include"Define.h"#include"UserData.h"#include"ShangdianScene.h"FirstScene:

:

FirstScene():

replaceSceneMenu(NULL){}FirstScene:

:

~FirstScene(){}CCScene*FirstScene:

:

scene(){CCScene*scene=CCScene:

:

create();FirstScene*layer=FirstScene:

:

create();scene->addChild(layer);returnscene;}boolFirstScene:

:

init(){if(!

CCLayer:

:

init()){returnfalse;}CCSizesize=CCDirector:

:

sharedDirector()->getWinSize();CCSprite*baoshi=CCSprite:

:

create("zhuangshi.png");baoshi->setPosition(ccp(50,size.height-50));addChild(baoshi);intbaoshishuliang=UserData:

:

getIntegerForKey(GOLD);CCLog("baoshishuliangis%d",baoshishuliang);CCString*baoshishu=CCString:

:

createWithFormat("%d",baoshishuliang);goldLabel=CCLabelTTF:

:

create(baoshishu->getCString(),"arial",30);goldLabel->setAnchorPoint(ccp(0,0.5));goldLabel->setPosition(ccp(100,size.height-50));this->addChild(goldLabel,5);CCMenuItemImage*addGoldItem=CCMenuItemImage:

:

create("jiahao.png","jiahao.png",this,menu_selector(FirstScene:

:

toShangDian));addGoldItem->setPosition(ccp(150+goldLabel->getContentSize().width,size.height-50));CCMenu*pMenu1=CCMenu:

:

create(addGoldItem,NULL);pMenu1->setPosition(CCPointZero);this->addChild(pMenu1);CCMenuItemImage*jingdianItem=CCMenuItemImage:

:

create("jingdian.png","jingdian.png",this,menu_selector(FirstScene:

:

replaceScene));jingdianItem->setPosition(ccp(size.width/2,size.height/2+200));jingdianItem->setTag(JINGDIAN);CCMenuItemImage*chanItem=CCMenuItemImage:

:

create("chan.png","chan.png",this,menu_selector(FirstScene:

:

replaceScene));chanItem->setPosition(ccp(size.width/2,jingdianItem->getPositionY()-150));chanItem->setTag(CHAN);CCMenuItemImage*jiejiItem=CCMenuItemImage:

:

create("jieji.png","jieji.png",this,menu_selector(FirstScene:

:

replaceScene));jiejiItem->setPosition(ccp(size.width/2,chanItem->getPositionY()-150));jiejiItem->setTag(JIEJI);CCMenuItemImage*shangchengItem=CCMenuItemImage:

:

create("shangcheng.png","shangcheng.png",this,menu_selector(FirstScene:

:

toShangDian));shangchengItem->setPosition(ccp(size.width/2,jiejiItem->getPositionY()-150));replaceSceneMenu=CCMenu:

:

create(jingdianItem,chanItem,jiejiItem,shangchengItem,NULL);replaceSceneMenu->setPosition(CCPointZero);this->addChild(replaceSceneMenu);tuichuSprite=CCSprite:

:

create("tuichuBoard.png");tuichuSprite->setPosition(ccp(size.width/2,size.height/2));tuichuSprite->setVisible(false);addChild(tuichuSprite);CCMenuItemImage*pQuedingItem=CCMenuItemImage:

:

create("queding.png","queding.png",this,menu_selector(FirstScene:

:

queding));pQuedingItem->setPosition(ccp(tuichuSprite->getContentSize().width/4,50));CCMenuItemImage*pQuxiaoItem=CCMenuItemImage:

:

create("quxiao.png","quxiao.png",this,menu_selector(FirstScene:

:

quxiao));pQuxiaoItem->setPosition(ccp(tuichuSprite->getContentSize().width/4*3,50));tuichumenu=CCMenu:

:

create(pQuedingItem,pQuxiaoItem,NULL);tuichumenu->setPosition(CCPointZero);tuichuSprite->addChild(tuichumenu);returntrue;}voidFirstScene:

:

keyBackClicked(){tuichuSprite->setVisible(true);}voidFirstScene:

:

queding(){CCDirector:

:

sharedDirector()->end();}voidFirstScene:

:

quxiao(){tuichuSprite->setVisible(false);}voidFirstScene:

:

replaceScene(CCObject*object){CCMenuItemImage*item=dynamic_cast(object);switch(item->getTag()){case1:

model=JINGDIAN;break;case2:

model=CHAN;break;case3:

model=JIEJI;break;default:

break;}CCScene*pScene=MainScene:

:

scene(model);CCDirector:

:

sharedDirector()->replaceScene(pScene);}voidFirstScene:

:

toShangDian(){CCScene*pScene=ShangdianScene:

:

scene

(1);CCDirector:

:

sharedDirector()->replaceScene(pScene);}

2、游戏模块设计代码

//Block.h//whiteBlock////Createdbyliuqingyunon14-12-5.////#ifndef__whiteBlock__Block__#define__whiteBlock__Block__#include"cocos2d.h"USING_NS_CC;classBlock:

publiccocos2d:

:

CCSprite{public:

Block();~Block();staticBlock*createWithArgs(inti,CCSizesize);virtualboolinit();voidsetBlockColor(intcolor);intgetLineIndex();voidsetLineIndex(intindex);intreturnColor();boolgetpass();voidsetpass();CREATE_FUNC(Block);private:

voidinitWithArgs(inti,CCSizesize);private:

CCLayerColor*blockColor;intlineIndex;intcolorIndex;boolpass;};#endif/*defined(__whiteBlock__Block__)*/

//Block.cpp//whiteBlock////Createdbyliuqingyunon14-12-5.////#include"Block.h"#include"Define.h"usingnamespacecocos2d;Block:

:

Block():

blockColor(NULL),pass(false){}Block:

:

~Block(){}Block*Block:

:

createWithArgs(inti,CCSizesize){Block*b=newBlock();if(b&&b->init()){b->autorelease();b->initWithArgs(i,size);returnb;}CC_SAFE_DELETE(b);returnNULL;}boolBlock:

:

init(){if(!

CCSprite:

:

init()){returnfalse;}returntrue;}voidBlock:

:

initWithArgs(inti,CCSizesize){colorIndex=i;if(i==WHITE){colorIndex=1;blockColor=CCLayerColor:

:

create(ccc4(255,255,255,255),size.width,size.height);}if(i==BLACK){colorIndex=2;blockColor=CCLayerColor:

:

create(ccc4(15,15,15,255),size.width,size.height);}if(i==BLUE){colorIndex=3;blockColor=CCLayerColor:

:

create(ccc4(0,0,255,255),size.width,size.height);}if(i==GREY){colorIndex=6;blockColor=CCLayerColor:

:

create(ccc4(152,155,153,255),size.width,size.height);}if(i==GREEN){colorIndex=4;blockColor=CCLayerColor:

:

create(ccc4(0,255,0,255),size.width,size.height);}if(i==RED){colorIndex=5;blockColor=CCLayerColor:

:

create(ccc4(255,0,0,255),size.width,size.height);}blockColor->setAnchorPoint(ccp(0.5,0.5));blockColor->setPosition(ccp(this->getContentSize().width/2,this->getContentSize().height/2));addChild(blockColor);}voidBlock:

:

setBlockColor(intcolor){if(color==BLUE){colorIndex=3;blockColor->setColor(ccc3(0,0,255));}elseif(color==GREEN){colorIndex=4;blockColor->setColor(ccc3(0,255,0));}elseif(color==RED){colorIndex=5;blockColor->setColor(ccc3(255,0,0));}elseif(color==GREY){colorIndex=6;blockColor->setColor(ccc3(152,155,153));}elseif(color==BLACK){colorIndex=2;blockColor->setColor(ccc3(15,15,15));}elseif(color==WHITE){colorIndex=1;blockColor->setColor(ccc3(255,255,255));}}intBlock:

:

returnColor(){returncolorIndex;}intBlock:

:

getLineIndex(){returnlineIndex;}voidBlock:

:

setLineIndex(intindex){lineIndex=index;}boolBlock:

:

getpass(){returnpass;}voidBlock:

:

setpass(){pass=true;}

3、游戏战斗界面代码

//MainScene.h//whiteBlock////Createdbyliuqingyunon14-12-5.////#ifndef__whiteBlock__MainScene__#define__whiteBlock__MainScene__#include"cocos2d.h"#include"Block.h"USING_NS_CC;classMainScene:

publiccocos2d:

:

CCLayer{public:

MainScene();~MainScene();virtualboolinit(inti);staticcocos2d:

:

CCScene*scene(inti);virtualboolccTouchBegan(CCTouch*pTouch,CCEvent*pEvent);virtualvoidregisterWithTouchDispatcher(void);private:

voidenemyInit();voidaddNormalLine(intlineIndex);voidaddEndLine();voidstartGame();voidmoveDown();voidmoveUp(floatoffset);voidschedulemoveDown();voidblockSetPositionX(Block*block);voidstartTime();

voidtimeUpdate();//voidtrueTouchUpdate();

voidblockMoveDown(Block*b);

voidjudge(Block*block);//voidgameOver();

voidreplaceScene();voidrelive();voidwrong();voidbeginCountdown();voidcountdownSeconds();voiddoCountdownAnimation(CCNode*node);voidcountdonwDone(CCNode*node);virtualvoidkeyBackClicked();voidqueding();voidquxiao();voidjingdianTouch(CCTouch*pTouch);voidchanTouch(CCTouch*pTouch);voidjiejiTouch(CCTouch*pTouch);voidbuyLibao();voidtoShangDian();voidpauseScene();private:

//CCArray*array;Block*array[4];CCNode*timeNode;CCArray*blockArray;CCSprite*pauseSprite;CCLabelTTF*timeLabel;CCLabelTTF*trueTouchLabel;CCLabelTTF*goldLabel;CCLabelTTF*goleCount;Block*endLine;CCSprite*dibanSprite;CCSprite*tuichuSprite;CCSprite*libaoSprite;CCMenu*tuichumenu;CCMenu*libaoMenu;intgameModel;intlinesCount;inttrueTouchCount;intbigLineIndex;intreliveIndex;longbeginTime;booltimeRunning;boolsuccess;boolpause;floatspeed;floattimeIndex;};#endif

//MainScene.cpp//whiteBlock////Createdbyliuqingyunon14-12-5.////#include"MainScene.h"#include"Block.h"#include"Define.h"#include"UserData.h"#include"LastScene.h"#include"FirstScene.h"#include"ShangdianScene.h"#include"cocos-ext.h"#if(CC_TARGET_PLATFORM==CC_PLATFORM_ANDROID)#include#include"platform/android/jni/JniHelper.h"#include#endifMainScene:

:

MainScene():

timeLabel(NULL),pauseSprite(NULL),timeRunning(false),endLine(NULL),success(true),trueTouchCount(0),bigLineIndex(0),speed(8.0),timeIndex(0.1),linesCount(0),timeNode(NULL),reliveIndex(0),pau

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2