大型迷宫 ( 鼠标控制 )
这篇文章会沿用“大型迷宫 ( 键盘控制 )”的范例,搭配 Scratch 侦测鼠标座标的功能,将原本使用键盘控制的猫咪,改成使用鼠标控制,如此便能在移动设备或平板上,进行大型迷宫的游戏。
相关文章参考:大型迷宫 ( 键盘控制 )、鼠标座标。
打开范例
本篇教学为“大型迷宫 ( 鼠标控制 )”一文的延伸,请先打开范例进行编辑。
积木程序原理 ( 迷宫 )
点击“迷宫”角色,新增 x 和 y 两个变数,负责纪录鼠标座标的信息。
新增一个名为“鼠标”的函数,加入一个“speed”参数。
编辑鼠标函数:
- 使用重复无限次积木。
- 每次重复设定 x 和 y 为 0,模拟按下键盘的状况。
- 当鼠标按下时执行判断:
- 如果“鼠标 x 座标的绝对值”大于“鼠标 y 座标绝对值 x 1.33”,将变数 x 设为“鼠标 x 座标 x -1”。
- 如果“鼠标 x 座标的绝对值”小于“鼠标 y 座标绝对值 x 1.33”,将变数 y 设为“鼠标 y 座标 x -1”。
为什么要乘以 1.33?因为 Scratch 舞台比例为 4:3,所以如果要判断上下左右象限,将 y 座标乘以 1.33 会更为准确。
由于鼠标的座标数值,可能会很大而导致移动过快,所以必须加入逻辑判断,使移动速度最大不会超过参数数值:
- 如果 x 大于 speed,让 x 等于 speed 数值,发送“左边”消息。
- 如果 x 小于 speed x -1,让 x 等于 speed x -1 数值,发送“右边”消息。
- 如果 y 大于 speed,让 y 等于 speed 数值。
- 如果 y 小于 speed x -1,让 y 等于 speed x -1 数值。
- 完成后执行移动函数,将 x 和 y 的数值带入移动函数。
新增另一个点击绿旗程序,放入重复无限次积木,不断执行鼠标函数,并设定速度参数为 10。
积木程序原理 ( 猫咪 )
点击“猫咪”角色,加入收到“左边”、“右边”消息的动作,使猫咪转相对应的方向。
积木程序原理 ( 小猫咪 )
点击“小猫咪”角色,加入收到“左边”、“右边”消息的动作,使小猫咪转相对应的方向。
完成效果
完成后,点击绿旗,除了可以用键盘控制猫咪走迷宫,也可以使用鼠标走迷宫,按下空白键,就能查看地图的缩图。
范例解答
范例解答:大型迷宫 ( 鼠标控制 )
微信扫码关注
抖音扫码关注