[cocos2d-x][游戏开发]通过cocos2d-x实现简易飞机大战 05.游戏界面 主角飞机的移动

飞机的移动。游戏中飞机的移动,玩家手指点击屏幕,滑动。飞机随着移动,首先我们要确定手指按下触碰的点。在计算出滑动的xy轴像素作为飞机移动的像素

移动函数以及实现

void moveTo(int x,int y);
void Plane::moveTo(int x, int y)
{
    this->getChildByTag(10)->setPosition(x,y);
    this->px=x;
    this->py=y;
}

在game调用实现

virtual bool onTouchBegan(Touch *touch, Event *unused_event);
    virtual void onTouchMoved(Touch *touch, Event *unused_event);

bool Game::onTouchBegan(Touch *touch, Event *unused_event){
    this->startX=touch->getLocation().x;
    this->startY=touch->getLocation().y;
    return true;
}
void Game::onTouchMoved(Touch *touch, Event *unused_event){
    float mx=touch->getLocation().x-startX;
    float my=touch->getLocation().y-startY;
    auto plane=(Plane *)this->getChildByTag(110);
    plane->moveTo(plane->px+mx, plane->py+my);
    this->startX=touch->getLocation().x;
    this->startY=touch->getLocation().y;}



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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值