完整的游戏
游戏封面 游戏进行 游戏暂停 游戏结束
预设状态值
0 欢迎界面 1 游戏进行 2 游戏暂停 3 游戏结束 需要定义变量来适时的改变他们 变量使用英文 stat
背景代码
在背景的代码里 定义了【欢迎画面】的自制积木 实现游戏的状态值的初始化
等待玩家输入
如果玩家输入了1 那么我们就开始游戏 让stat值为1 同时中止这个脚本
游戏的开始
当stat值为1的那一刻 就需要发送一个广播 可命名为游戏开始 然后我们可以接收游戏开始的广播 做相关的操作
游戏的暂停
当游戏开始后 会有很多的东西在动 如果暂停了 他们就不动 假设按2为暂停 需要监控用户有没有按下2
由谁来监控
由背景来监控
游戏暂停逻辑
不停的判断用户有没有按下2 如果按下2了 让stat变成2
让相关角色停止
对相关角色进行状态的判断 如果状态值为1 那么才会做相关的动作
继续游戏
再一次点击按键2的时候 我们就要让游戏继续进行 办法: 当用户按下2的时候,判断stat是不是等于2 如果等于2,那么把它改为1 当用户按下2的时候,如果stat=1,说明游戏正在进行,此时要把stat改为2 注意: 如果按键太灵敏 要等待一下子
游戏结束
应该是由事件来触发 两种情况 1,玩家生命值小于等于0,失败,游戏结束 2,玩家得分达到或超过某个值,胜利,游戏结束 状态调改 仅仅一个状态4无法代表胜利或失败 所以我们应该把游戏结束分成两种状态 4,胜利结束 5,失败结束
按键模拟
我们将用按键来模拟游戏的胜利结束与失败结束 如果按下了4,那么就胜利结束 如果按下了5,那么就失败结束
结束重开
当游戏结束后 我们切到欢迎画面 让stat变成0 在欢迎画面中 如果用户点击1 游戏又重新开始
存在的问题
再次点击1无效果
原因分析
前面使用的是自制积木来处理欢迎画面 不可逆 使用一个广播来替代自制积木,可解决问题 当游戏结束后 重发广播回到欢迎画面的状态
参考代码
背景代码
角色代码
标签:stat,结束,游戏,scratch,欢迎,按下,20240922,暂停 From: https://blog.51cto.com/u_13137233/12079833