scratch如何实现角色的上下翻转

scratch的角色在左右移动的时候,如果仅使用碰到边缘即反弹的功能,会产生角色向某一方向横向运动时正常,而反方向的时候头下脚上的情况,这是因为“碰到边缘即反弹”这块积木会将角色旋转180度。为了避免这个问题,scratch也提供了官方的解决方案,就是设置角色在旋转时,仅允许左右翻转。

scratch_flip_top_to_bottom_p1

角色上下移动的时候,旋转180后下落的视觉效果其实并没有左右移动时那么突兀。官方也没有提供仅上下翻转的选项,如果需要实现上下的镜像翻转,我们可以利用检测舞台边缘的功能来自行实现这个功能。

scratch_flip_top_to_bottom_p2

角色做往复运动的时候,我们往往会使用一块移动积木,该积木的默认行进方向是角色造型时的右侧。当角色在程序中被旋转180度之后,这个行进方向也随之改变,变成了向左移动,从而利用单一的一块移动积木实现了角色的往复。

scratch_flip_top_to_bottom_p3

要利用移动积木实现上下运动的时候,我们可以在角色修改界面,将角色旋转90度,这样移动方向就变成了朝向图中角色的双脚所指向的方向。在scratch中旋转角色的时候,同时按住shift键,可以更准确的控制旋转角度。将图中角色在实际的程序中旋转至水平方向,对其使用移动积木时,角色会上下运动。

scratch_flip_top_to_bottom_p4

角色绘制界面,有两个图像镜像功能,分别是左右镜像,与上下镜像。我们复制一个角色造型,对其使用上下镜像。当角色碰到上下舞台的边缘时,我们将角色旋转180度,并切换一次造型,这样就能实现角色上下往复时的镜向运动了。

scratch_flip_top_to_bottom_p5

实际操作中,因为角色上下比例的不均等,可能会造成角色旋转180度后再次符合边缘检测条件,导致角色在舞台边缘不停的翻滚,图中的这个小鸭子就碰到了这个问题。这里简单的在换向后增加了一块移动积木,以避让开屏幕的边缘。更为安全稳定的办法是设置一个检测变量,检测变量与边缘检测同时符合时才换向,换向后立即修改检测变量的值。直到角色运行至屏幕中间位置,才复位检测变量。

参考实例

scratch角色上下翻转

给TA赞助
共{{data.count}}人
人已赞助
综合资讯

为scratch跑酷游戏创建一个随机地图

2023-7-30 10:33:15

综合资讯

Scratch如何输出自定义的随机数

2023-7-30 10:33:23

2 条回复 A文章作者 M管理员
  1. Pangda5268

    支持

  2. Pangda5268

    作者请问如果我想让一把枪始终瞄准准心 但是呢整吧枪在0-180之间的时候是朝左的 -179–1的时候是朝右的 这该如何实现呢 求教大佬

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索