前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >cocos2d-x精灵移动的方法

cocos2d-x精灵移动的方法

作者头像
全栈程序员站长
发布2022-07-12 15:30:23
3810
发布2022-07-12 15:30:23
举报

大家好,又见面了,我是全栈君,祝每个程序员都可以多学几门语言。

1.飞机发射子弹型

想要实现子弹的的飞行效果,又不想在每帧Update里计算位置,最好的方法调用CCMoveTo

例在发射子弹的时机,能够ccTouchBegan时:

代码语言:javascript
复制
CCMoveTo* move = CCMoveTo::create(0.4f, ccp(_plane->getPosition().x+winSize.width/4, _plane->getPosition().y));//射程是屏幕的1/4,起点是飞机的位置,用0.4秒飞完射程
_bullet->runAction(CCSequence::create(move, CCCallFuncN::create(this, callfuncN_selector(BaseLayer::bulletRemove)), NULL)); //子弹飞完记得要销毁

销毁子弹的方法看project而定,这是我自己的project写法:

代码语言:javascript
复制
void BaseLayer::bulletRemove(CCNode* spend)
{
	CCSprite* sprite = (CCSprite*)spend;//把传过来的CCNode转换成子弹
	//从数组里把子弹销毁掉
	_bulletArray->removeObject(sprite, true);
	_batchNode->removeChild(sprite, true); //从批处理结点里真正把子弹销毁
}

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/118860.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021年11月,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档