游戏开发实战教程(2):使用表格处理数据

简介: 上一节中讲过使用表格来存储和处理游戏中的数据。这一节我们直接上手,学习表格中的数据处理,我们将会实现以下的内容:创建一个10行10列(10x10)的表格,默认值都设置为0随机的在表格中插入一行数据1逐行遍历,找到满足条件的行(即整行的数据都是1)

上一节中讲过使用表格来存储和处理游戏中的数据。这一节我们直接上手,学习表格中的数据处理,我们将会实现以下的内容:


  • 创建一个10行10列(10x10)的表格,默认值都设置为0
  • 随机的在表格中插入一行数据1
  • 逐行遍历,找到满足条件的行(即整行的数据都是1)


# 创建表格


在“数据区”中点击“新建表格”按钮,创建一个叫做“网格”的全局变量。


会看到一个表格编辑的窗口,点击“新增行”和“新增列”创建一个10行10列的表格。


将所有格子中的数据都设置为“0”,最后看起来应该是这样。

这样一个10x10的所有默认数据为0的表格就创建好了。


# 随机在表格中插入一行数据1


为了方便演示,我在场景中增加了两个按钮,一个叫做“加入一行”,一个叫做“查找匹配”。我们会把插入逻辑和查找逻辑分别放在对应的按钮对象上。


你可以对照着下图添加你的素材。


在“加入一行”对象上创建两个局部变量:行号和列号。


接着,我们直接看代码逻辑。

如果一下看不明白,也无需着急。对着下面的分析再多看几遍。


因为我们的表格一共10行,所以这里我们取了1~10之间的随机整数,作为将要设置的行,并且将这个数字保存在了局部变量“行号”中(通常对于后续需要用到的数据,都会用局部变量来存储)。循环开始前将列号设置为1,因为要从第1列开始依次向后设置,直到第10列。假设随机到了第1行后,开始进入循环,首先会将表格中第1行第1列的数字设置为1,接着第1行第2列,直到第1行第10列后,循环结束。这样第1行中所有的10个数字就都从0变为了1。


接下来,我们验证一下,点击预览场景右侧的下拉小箭头,选择“调试场景”。


调试场景像下面这样,你以后会经常用到。点击“系统全局”可以看到我们创建的全局变量“网格”,鼠标移动网格的数据上,会显示当前网格的数据。


接着点击“加入一行”,可以看到我们为它创建的两个局部变量,“行号”和“列号”。


现在,点击一下场景中的“加入一行”按钮,你会看到“行号”和“列号”的局部变量发生了变化,当前“行号”为9,意味着我们随机到了数字9,即将表格中第9行的所有数据设置成了1。


看一下系统全局中的网格数据,是否是第9行被设置为了1。

第9行的数据确实都被设置为了1,证明了我们逻辑没有问题。你可以多点击几次“加入一行”按钮,多设置几行表格数据,在全局变量中查看。


# 查找满足条件的行


我们的查找逻辑是这样的:从上往下,依次查找表格中的每一行,如果一行中所有的数据都是1,那么记录一下这一行的行号,直到表格查找结束。


首先,我们创建4个局部变量。

“行号”和“列号”用于循环,“都是1”用来表示当前一行的数据是否都是1,如果满足条件的话设置为1,不满足的话设置为0,


新建一个列表局部变量“匹配行”,用于记录当前满足条件的行号,因为表格中可能会有多行满足条件,所以这里我们使用列表来记录所有满足条件的行号。


下面我们来看一下查找匹配的逻辑:

这里有一个难点就是“双重循环”,如果你遍历的数据只有一行的话,那么只需要一个循环就可以了,但是,当你要遍历10行10列的数据时,就需要用到“双重循环”。一个循环用于行,一个循环用于列。它只是看上去复杂,认真的分析一下其实不难理解。


我们从表格的第一行开始检查,想象一下我们从表格中拿出了第一行数据,然后从这一行数据的第一个一直检查到最后一个,看看是否有数字不为1,只要有一个数字不为1,就证明这一行不符合条件,就没有必要接着往下检查了。检查完一行后,如果它符合条件我们就把这一行的行号记录下来,放到“匹配行”的列表中。接下来再取出第二行,进行同样的操作,直到取完第十行为止。


点击“调试场景”,检查一下逻辑是否有问题,先点击几次“加入一行”按钮,随机的在表格中加入几行数据。


接着点击“查找匹配”按钮,选择“查找匹配”,看一下“匹配行”局部变量的数据。

如图,找到了第7,6,1行是满足条件的。

小提示:因为我们总是在列表中的第1项插入数据,所以最后的结果是[7,6,1],是倒序。真实过程是这样的,检查到第1行满足条件,插入列表,列表变为[1],接着检查到第6行满足条件,插入列表,列表变为[6,1],接着第7行满足条件,插入列表,列表变为[7,6,1]。


总结一下:

这一节我们学习了表格的创建,设置,遍历和查找操作。并且学习了使用“调试场景”在游戏运行时查看全局变量和局部变量,来验证逻辑是否正确。


练一下:

试着实现在表格中随机加入一列数据的功能,并且在查找时将所有满足条件的行和列都找出来。



相关文章
|
6月前
|
弹性计算 运维 安全
阿里云轻量应用服务器与ECS云服务器的区别及选择指南
阿里云轻量应用服务器与ECS云服务器定位互补:前者开箱即用、一键部署,适合个人开发者及轻量场景;后者弹性灵活、性能卓越,支撑企业级复杂业务。本文从定位、配置、网络、安全、成本等维度深度对比,帮助大家按需选型,降本增效。
899 2
|
3月前
|
缓存 Shell API
Codex 周限额提前耗尽怎么办:5 种替代方案及按量计费 API 接入配置指南
2026 年 5 月 17 日,一位 Plus 用户眼看着 Codex 周计数器一天从剩余 96% 掉到 0%——而承认这起事件的 OpenAI 工程师,仍然没法保证计数器在下一个周窗口前会重置。如果你的周限额每个月清零两次,2026 年正确的做法不是反复刷 /status,而是把 Codex CLI 接到按量计费的端点上,让钱包封顶替代日历封顶。
|
6月前
|
文字识别 BI 计算机视觉
如何使用 Python 操作 Excel 图片:插入、提取与压缩
本文分享用Python高效处理Excel图片的实战技巧:批量插入500+产品图(xlwings精准对齐)、从Excel提取图片(openpyxl/Spire.XLS)、压缩图片减小文件体积(PIL),以及OCR识别图片表格转Excel。附完整代码与避坑指南,助你告别机械重复操作,1分钟搞定原需4小时的工作。(239字)
540 0
|
9月前
|
机器学习/深度学习 人工智能 测试技术
DeepSeek-R1 与 OpenAI o3 的启示:Test-Time Compute 技术不再迷信参数堆叠
2025年,AI告别“参数内卷”,迎来Test-Time Compute范式革命。模型不再依赖训练时的“烘焙”智能,而是通过推理阶段的思考、验证与优化,在数学、逻辑等任务中实现质的飞跃。DeepSeek-R1与OpenAI o3证明:让小模型“多想一会儿”,效果远超盲目堆参数。Best-of-N+验证机制让普通开发者也能复现高精度推理,算力成本可控。未来AI产品核心不再是模型大小,而是可配置的“Inference Budget”。
799 14
DeepSeek-R1 与 OpenAI o3 的启示:Test-Time Compute 技术不再迷信参数堆叠
|
9月前
|
机器学习/深度学习 弹性计算 人工智能
阿里云服务器收费标准:今年最新价格表,ECS、轻量和GPU云服务器报价清单
阿里云今年最新云服务器租用优惠价格表,这个月的价格和上个月持平,阿小云整理最新优惠价格:依旧是轻量应用服务器200M峰值带宽68元1年(秒杀38元),ECS云服务器2核2G3M带宽99元一年、2核4G、5M带宽、80G系统盘优惠价格199元一年,4核16G服务器10M带宽89元1个月,8核32G服务器10M固定带宽160元一个月,阿里云香港轻量服务器200M带宽25元个月起。
|
9月前
|
人工智能
官宣!阿里云成为大广赛独家AI战略合作伙伴
阿里云携手第18届全国大学生广告艺术大赛,成为独家AI战略合作伙伴。通义万相作为官方AI创作平台,提供文生图、视频生成等视觉能力,并通过“云工开物”计划提供千万级算力支持,助力150万师生实现创意突破,推动AI与艺术设计深度融合。
|
运维 监控
Dataphin V5.0:增全量一体实时集成
数据集成中,离线与实时方式各有优劣。为解决传统“全量+增量”双轨模式运维复杂的问题,Dataphin 5.0推出“全量+增量一体化实时同步”功能。用户仅需创建一个实时任务,即可完成整库或多表的数据迁移,系统自动协调全量与增量同步,简化管理并降低运维成本。该功能支持灵活配置启动范围与方式,提供实时监控及操作能力,大幅提升数据同步效率与稳定性。
510 41
|
前端开发 Java 数据库连接
后端开发中的错误处理实践:原则与实战
在后端开发中,错误处理是保障系统稳定性的关键。本文介绍了错误分类、响应设计、统一处理机制及日志追踪等实践方法,帮助开发者提升系统的可维护性与排障效率,做到防患于未然。
|
边缘计算 运维 5G
便携式小型 1588 PTP 主时钟构建精准同步时代、PTP主时钟、便携式1588主时钟
在数字化时代,精准时间同步是工业4.0、5G通信、智能电网等领域的核心基建。西安同步电子科技的SYN2402型1588主时钟,采用北斗/GPS双模技术与IEEE1588-2008协议,实现纳秒级精度,具备双源冗余、便携设计及多协议兼容等优势,适用于工业自动化、通信基站、金融交易和科研领域等多种场景,助力高效率、智能化的数字基础设施建设。
|
JSON 测试技术 API
深聊性能测试,从入门到放弃之:Locust性能自动化(五)API汇总整理(下)
深聊性能测试,从入门到放弃之:Locust性能自动化(五)API汇总整理(下)
752 0

热门文章

最新文章