大家好,欢迎来到IT知识分享网。
4399上有个“蹦床火柴人”游戏,我们也用scratch编写了一个。游戏开始小姑娘在蹦床上边上下蹦跳,玩家用左右键使小姑娘旋转,旋转360度增加1分,得分越多,上下速度越快。如果头或手碰到蹦床,游戏结束。游戏运行效果如下。
游戏有2个角色:小姑娘和蹦床,是系统自带的。小姑娘有四个造型,蹦床只有一个造型。碰到蹦床小姑娘应向上跳,如用两个角色碰撞检测判断是否上跳,将使小姑娘碰到蹦床边缘就上跳,不太合理。改进方法是在蹦床面上画一个红色的椭圆,检测到小姑娘碰到红色就上跳,就像小姑娘是从蹦床面上跳起。两角色及其造型如下图。
该游戏只有一段脚本,见下图。在角色连续运动的游戏中一般包含有重复循环脚本。在这种情况下有一点需注意,不应在响应事件的脚本(简称“事件函数”)中包含大量的脚本,这样会使角色运动不连贯。本程序是在重复循环脚本中使用侦测脚本对左右键状态进行检测。
在程序中增加变量:“上升速度”、“得分”和“升降速度”,“上升速度”初始值为4,在程序开始令变量“升降速度”=“上升速度”。每当变量“得分”增加1,“上升速度”增加0.5,使升降速度变快,该值总为正数。游戏中小姑娘上下运动使用“将Y坐标值增加(升降速度)”脚本实现(重复循环中第一条脚本),每当上升到150,改为向下运动,令变量“升降速度”=0-“上升速度”,变负值,当碰到红色,改为向上运动,令变量“升降速度”=“上升速度”,变正值。scratch系统设定角色的方向从-180到180度。小姑娘直立状态的方向是90度,左转90度到0度方向,右转90度到180(-180)度,都使状态变为平躺姿势,换句话讲,小姑娘方向小于0,头将会碰地。在碰到蹦床的红色时,如检查到小姑娘方向小于0,玩家失败,停止所有脚本,小姑娘变为坐在地上造型,由于跳跃造型和坐在地上造型中心点不一致,使小姑娘坐到蹦床下边,所以改为坐姿造型后,坐标Y值增加14。如方向不小于0,则改为向上运动。
建立两个变量“左旋旋转角度”和“右旋旋转角度”,分别记录小姑娘向左和向右的旋转角度。它们初始值都为0,在不按下左右键时,重新将它们设为0,(见脚本如果按下左(或右)键-那么-否则中否则后的脚本)。如长按右键,小姑娘向右旋转,每一个循环右转10度,修改为造型2,“右旋旋转角度”+1,如其等于36(10*36=360度),得分加1,变量“上升速度”增加0.5,使升降速度变快。左旋类似。
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/7256.html