弹一弹

当角色碰到舞台边缘让它反弹的时候,我们一般都会用“碰到边缘就反弹”这块代码来实现,但是如果角色在舞台内没有碰到边缘的时候也想让它反弹该怎么办呢?本节课我们一起来探索。
整个小程序只需要一个角色,就是球

弹一弹-少儿编程网

首先我们在探究球碰到左右方向的物体是让它反弹该怎么实现。
假如球X坐标小于-60的时候,我们就让他反弹回来,该怎么实现呢?我们借用碰到边缘就反弹的原理,碰到左右边缘的反弹其实和碰着竖着的一条线反弹的原理是一样的,只需要找到反弹后的角度就可以了,我们做三次实验并记录一下如下表:
弹一弹-少儿编程网
经过试验我们会发现,这种反弹反弹前的角度和反弹后的角度是互为相反数的,即相加等于0,那我们知道了反弹前的角度“角度”,反弹后的方向即为0-方向。具体代码如下:

弹一弹-少儿编程网

同样的原理,如果球的Y坐标小于-60的时候,我们也让他反弹,我们借用碰到边缘就反弹的原理,碰到上下边缘的反弹其实和碰着横着的一条线反弹的原理是一样的,只需要找到反弹后的角度就可以了,我们做三次实验并记录一下如下表:
弹一弹-少儿编程网
试验后我们会发现,反弹后的角度加上反弹前的角度等于180或者-180,那么反弹后的角度就等于180-方向或者-180-方向,怎么样能够将反弹的角度统一起来来,我们可以打开角色区的角度,会发现180度和-180度在同一个位置上,所以在角度上,-180和180其实是一样的,所以碰到上下物体的时候反弹的方向就可以统一为180-方向或者-180-方向任意一个。

弹一弹-少儿编程网

反弹的具体代码如下:

弹一弹-少儿编程网

这样我们就实现碰到非舞台边缘的时候的反弹效果了。

本文链接:弹一弹

转载声明:本站文章若无特别说明,皆为原创,转载请注明来源:少儿编程网,谢谢!^^


*文章为作者独立观点,不代表少儿编程网立场
发表评论

坐等沙发
相关文章
蓝桥杯集训营来啦!获得好成绩的攻略都在这里,赶快点击获取!
蓝桥杯集训营来啦!获得好成绩的攻略都…
5岁编程,18岁保送,27岁世界第一:90后少年上演真人版“黑客帝国”
5岁编程,18岁保送,27岁世界第一:90后…
清华教授告诉你!疫情过后,孩子的教育会发生怎样的变化!
清华教授告诉你!疫情过后,孩子的教育…
编程教育竟成两会重点!马化腾、雷军渴求的人才都在学它!
编程教育竟成两会重点!马化腾、雷军渴…
scratch算法练习-求数根
scratch算法练习-求数根
考第一没用!孩子学会这个技能名校抢着要,就业没烦恼!
考第一没用!孩子学会这个技能名校抢着…
学生都说我是编程界的“吴彦祖”