cocos学习1

今天把飞机游戏的一些动画给实现了一部分:

飞机连续发射子弹:

1.首先定义一个常量;#define SP 10

2.在.h文件定义一个私有变量;private:
                                                            int sp = 0;

3.在构造函数里面赋值0;this->sp = 0;

4.利用moveTo,移动子弹;

auto move = MoveTo::create(0.5, Vec2(visibleSize.width / 2, visibleSize.height + sp->getContentSize().height / 2));
this->addChild(sp);
sp->runAction(move);

5.变量的自加;this->sp++;

6.判定变量是否等于常量;this->sp >= SP

7.利用计时器循环发射子弹;this->scheduleUpdate();

8.最后在判断里面重新赋值0;this->sp = 0;


飞机的移动:

1.通过API 查找到相关的移动,先是通过复制一段代码实现了随着鼠标移动,很多地方不是很懂

2.最主要的还是对边界的判定;

x轴的判定:

if (target->getPositionX() + touch->getDelta().x >= visibleSize.width - target->getContentSize().width / 2){
   target->setPositionX(visibleSize.width - target->getContentSize().width / 2);
  }else if (target->getPositionX() + touch->getDelta().x <= target->getContentSize().width / 2){
   target->setPositionX(target->getContentSize().width / 2);
  }

y轴的判定:
  if (target->getPositionY() + touch->getDelta().y >= visibleSize.height - target->getContentSize().height / 2){
   target->setPositionY(visibleSize.height - target->getContentSize().height / 2);
  }
  else if (target->getPositionY() + touch->getDelta().y <= target->getContentSize().height / 2){
   target->setPositionY(target->getContentSize().height / 2);
  }
  target->setPosition(target->getPosition() + touch->getDelta());

今天也有说到对飞机子弹的跟随飞机的移动一起移动,但是没有完成。




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值