为了账号安全,请及时绑定邮箱和手机立即绑定

小鱼游动问题

http://img1.sycdn.imooc.com//56c447ab0001ec7307490387.jpg我按照老师的代码写的,怎么小鱼游动的方向不对?

正在回答

4 回答

var deltaY=mom.y-this.y;
	var deltaX=mom.x-this.x;
	var beta=Math.atan2(deltaY,deltaX)+Math.PI;
	//lerp angle
	this.angle=lerpAngle(beta,this.angle,0.6);

对对代码,有没有哪里写错了的。

0 回复 有任何疑惑可以回复我~
#1

珍惜小燕子 提问者

对照你给的看了没有问题,但我这边的小鱼游动方向就是不对
2016-02-18 回复 有任何疑惑可以回复我~

少了rotate(this.angle),没有写旋转函数

0 回复 有任何疑惑可以回复我~

问题已解决了,谢谢了!this.x=lerpDistance(mx,this.x,0.98);
       this.y=lerpDistance(my,this.y,0.98);这个地方写错了,mx,my应该是mom.x,mom.y

0 回复 有任何疑惑可以回复我~
#1

sakurashine

噢,那这就是小鱼的游动目标是大鱼而你写成了鼠标了。解决了就好。
2016-02-18 回复 有任何疑惑可以回复我~

babyObj.prototype.draw=function(){
       this.x=lerpDistance(mx,this.x,0.98);
       this.y=lerpDistance(my,this.y,0.98);
       
       var deltay=mom.y-this.y;
       var deltax=mom.x-this.x;
       var beta=Math.atan2(deltay,deltax)+Math.PI;

       this.angle=lerpAngle(beta,this.angle,0.6);

       ctx1.save();
       ctx1.translate(this.x,this.y);
       ctx1.rotate(this.angle);
       
       ctx1.drawImage(this.babyTail,-this.babyTail.width*0.5+23,-this.babyTail.height*0.5);
       ctx1.drawImage(this.babyBody,-this.babyBody.width*0.5,-this.babyBody.height*0.5);
       ctx1.drawImage(this.babyEye,-this.babyEye.width*0.5,-this.babyEye.height*0.5);
       ctx1.restore();
}这是我的代码

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
HTML5小游戏---爱心鱼(上)
  • 参与学习       92350    人
  • 解答问题       551    个

学做HTML5游戏,轻轻松松带你上手,适合刚入手游戏开发的同学

进入课程

小鱼游动问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信