首页 > 其他分享 >游戏中的状态控制 适合于全部游戏 scratch 20240922_111017

游戏中的状态控制 适合于全部游戏 scratch 20240922_111017

时间:2024-09-22 11:54:13浏览次数:13  
标签:stat 结束 游戏 scratch 欢迎 按下 20240922 暂停

完整的游戏

游戏封面 游戏进行 游戏暂停 游戏结束

预设状态值

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无效果

原因分析

前面使用的是自制积木来处理欢迎画面 不可逆 使用一个广播来替代自制积木,可解决问题 当游戏结束后 重发广播回到欢迎画面的状态

参考代码

背景代码

image.png

角色代码

image.png

标签:stat,结束,游戏,scratch,欢迎,按下,20240922,暂停
From: https://blog.51cto.com/u_13137233/12079833

相关文章

  • 数据飞轮在游戏行业的启动与加速
    游戏行业的数据驱动转型在现代游戏行业,数据已成为推动业务增长和用户体验优化的核心资产。随着数据仓库向数据中台的演化,再到数据飞轮的构建,游戏公司已逐步实现了从数据收集到智能决策的完整转变。这一过程不仅涉及技术升级,还涉及到对数据的深度理解和利用,特别是在产品优化、用户......
  • 狱警的游戏
    在一个牢狱里,关了N个犯人,当然每个犯人带着一个手铐[不然他就会……].一天晚上,狱警觉得不好玩想来玩一个游戏,第一轮他将所有的犯人的手铐都打开,在第二轮将所有犯人号码为2的倍数的手铐又扣上,在第三轮将所有犯人号码为3的倍数的手铐做一次反处理,即如果他的手铐是打开的那么就扣上......
  • 最新毕设-Node.js-游戏网站-031726(免费领项目)可做计算机毕业设计JAVA、PHP、爬虫、APP
    游戏网站的设计摘 要基于网络游戏的蓬勃发展,游戏网站发挥着吸引玩家和提高玩家之间的互动性的重要作用,因而,建设了一个以游戏为中心的游戏官网。 该游戏提供了一个大型的玩家交流互动平台,包括用户管理、游戏社区、游戏信息、分类信息、游戏资讯、论坛分类列表、新闻分类列......
  • 计算机毕业设计-基于Java+SSM架构的游戏销售系统项目开发实战(附源码+论文)
    大家好!我是职场程序猿,感谢您阅读本文,欢迎一键三连哦。......
  • 地下城游戏--动态规划.路径问题
    地下城游戏题目五步走状态表示转移方程初始化填表顺序返回值代码题目链接题目五步走状态表示根据经验:有两种表示方式:1,以dp[i][j]为终点+巴拉巴拉2,以dp[i][j]位置为起点+巴拉巴拉。我开始写的时候用的第一种方式,结果没有表示出来,第二种方法可以。dp[i][j]表......
  • 游戏技术
    目录显示相关的术语每个像素的颜色编码每个帧的像素:物理分辨率→逻辑分辨率(精细)多个帧的刷新:刷新率→帧率(连续)码率显卡渲染技术DLSS2牺牲画质提高帧率DLSS3进一步提高帧率刷新更流畅显示相关的术语每个像素的颜色编码单个像素的比特率bpp(bitperpixels)由颜色编码方式决定......
  • 为什么 Streams API 改变了 Web 开发者的游戏规则
    我们首先解释一下数据是如何通过网络发送的。它不是作为单个连续流发送的;相反,它被分成更小的块。在接收端,消费者或应用程序负责在收到所有数据后以正确的顺序和格式重新组装这些块。对于图像、视频和其他相对较大的数据类型,此过程会自动发生。因此streamsapi提供的是一种无需等......
  • 数据技术进化史:全景解析游戏行业的数据飞轮模型
    在数据驱动的商业环境中,游戏行业凭借其高度的互动性和用户依赖性,成为大数据技术应用的前沿阵地。从初期的数据仓库到如今的数据飞轮,每一步技术升级都极大地推动了游戏设计、玩家体验和市场营销策略的革新。数据仓库的构建与初期应用最初,游戏公司通过构建数据仓库来集中管理用户数......
  • 魔法城墙 获得星前内容 scratch 20240921_151830
    把星花前的内容拼起来星花当前的位置是3号我们需要把1号与2号的内容拼起来新建变量名为星前内容设置星前内容默认值为空星前重复次数星花位置为3,前面有2个内容星花位置为5,前面有4个内容星花位置为n,前面有n-1个内容所以要循环的次数应该为星花位置-1次获取星前内容的下......
  • 魔法城墙 查找星花的位置 scratch 20240921_143430
    魔法城墙定义一个变量它是内容它的值是21*34定义一个变量它是星花位置它的值是-1定义一个下标它的初始值是0目标遍历每一个字符首先需要把每一个字符的下标说出来有了下标我们就可以根据下标获取内容的对应字符说出每一个字符的下标我们有五个字符所以要重复五次......