1.哇!板球。效果展示
(电脑有点卡,运行不流畅。。)
2.游戏框架结构
(1)可以看出来游戏有多个场景构成,全部由ScenceManager调控,具体如下:
2.源码介绍
这里并不具体对代码做出一步步解释,具体后面我会附上我的代码,需要下载研究,下面主要对源码中部分功能在3.0版本的变化作出解释,希望读者更方便理解
(1)cocos2d-x 3.0版本对屏幕监听做出了调整
书中处理为重写父类的方法,代码如下:
//触屏事件
virtual bool ccTouchBegan(Touch * touch,Event * event);
virtual void ccTouchMoved(Touch * touch,Event * event);
virtual void ccTouchEnded(Touch * touch,Event * event);
//然后还有一堆。。不想误导大家,就不贴了!
而3.0版本变得简单了很多:
auto listener = EventListenerTouchOneByOne::create();
listener->onTouchBegan = [](Touch* touch,Event* event){
return true;
};
listener->onTouchMoved = [](Touch* touch,Event* event){
};
listener->onTouchEnded = [=](Touch* touch,Event* event){
}
};
_eventDispatcher->addEventListenerWithSceneGraphPriority(listener, this);
//是不是简单了好多。。
(2)菜单选项的回调函数形式做了调整
在cocos2d-x 2.x 版本中,代码如下:
CCMenuItemImage *pCloseItem = CCMenuItemImage::create(
"CloseNormal.png",
"CloseSelected.png",
this,
menu_selector(HelloWorld::menuCloseCallback));
在cocos2d-x 3.0 版本中:
auto closeItem = MenuItemImage::create( "CloseNormal.png", "CloseSelected.png", CC_CALLBACK_1(HelloWorld::menuCloseCallback, this));
//同时对应的函数参数也不同了!!
3.下载
书中章节源码:Link