飞机的移动。游戏中飞机的移动,玩家手指点击屏幕,滑动。飞机随着移动,首先我们要确定手指按下触碰的点。在计算出滑动的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;}