首页 > 移动平台 > 详细

cocos2d-x 3.0 rc0 + flappybird 学习心得

时间:2014-04-13 09:59:41      阅读:432      评论:0      收藏:0      [点我收藏+]

本人是大菜鸟一枚,刚入门cocos2d-x 不久,决定写个小游戏练练手感,发现OiteBoys的文章 cocos2dx制作flappybird,然后学习之,拿来练手


作者的版本是3.0 beta版本,而在3.0 rc0版本中有略微差别:


1)物理碰撞onContactBegin 参数变为一个

 

//物理碰撞 监听
	auto contactListener = EventListenerPhysicsContact::create();
	contactListener->onContactBegin = CC_CALLBACK_1(GameLayer::onContactBegin,this);
	this->getEventDispatcher()->addEventListenerWithSceneGraphPriority(contactListener,this);

监听函数

bool GameLayer::onContactBegin(PhysicsContact& contact) {
	this->gameOver();
	return true;
}




2.body参数


在给小鸟和水管添加body的时候,需要添加如下属性,否则不会触发onContactBegin函数

        body->setCategoryBitmask(1);    // 0001
	body->setContactTestBitmask(-1); // 0100
	body->setCollisionBitmask(-1);   // 0011


然后就是作者的代码还有一个微小的bug,就是点击retartBtn之后,小鸟碰撞之后会立马消失,而不是落地之后消失,解决方法是把小鸟不设置成单例模式

用普通的CREATE_FUNC()即可


附下载地址:


 flappybird源码



cocos2d-x 3.0 rc0 + flappybird 学习心得,布布扣,bubuko.com

cocos2d-x 3.0 rc0 + flappybird 学习心得

原文:http://blog.csdn.net/shun_fzll/article/details/23531959

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!