博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
cocos2d-x 3.0 rc0 + flappybird 学习心得
阅读量:7103 次
发布时间:2019-06-28

本文共 794 字,大约阅读时间需要 2 分钟。

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

作者的版本是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()即可

附下载地址:

 

转载于:https://www.cnblogs.com/fzll/p/3954607.html

你可能感兴趣的文章