游戏积木之逻辑

简介: 这节中我们将要学习游戏里最常用的两种逻辑:- 循环- 如果,那么

这节中我们将要学习游戏里最常用的两种逻辑:


- 循环

- 如果,那么


“循环”就是不停的做同一件事,例如不停的跑,不停的跳跃,不停的播放声音,不停的播放动画等。


“循环”又分为两种,一种有停止条件,一种没有停止条件。


让敌人从A点移动到B点,就是有停止条件的循环,停止条件为到B点。让背景音乐循环播放5次,也是有停止条件的循环,停止条件为5次。


无停止条件的循环从游戏开始时开始,直到游戏结束时结束。在游戏中你可以让背景音乐一直循环播放,直到游戏结束为止。


“如果,那么”的逻辑非常的直白,如果玩家死了,那么游戏就应该结束。反之,如果玩家没有死,那么游戏就不应该结束。如果我干掉了一个敌人,那么我的得分就应该加一。如果敌人被子弹打中了,那么它就应该爆炸......


下面,我们以一个简单的例子,来学习使用这两种逻辑。


假设,当前游戏中存在两个点,分别为A点和B点,敌机要从A点飞到B点,当到达到B点时,又会再次回到A点,然后继续飞向B点,如此循环往复。


分析一下这其中的逻辑,想要让敌机从A点飞往B点,需要借助“循环”逻辑,让敌机不停的往B点的方向移动。当到达B点后,要再次回到A点,这里就需要借助“如果,那么”逻辑。“如果”敌机的位置达到了B点,“那么”就将敌机的位置重新设置到A点。


接着,我们看一下如何使用积木块来实现这个简单的功能。


首先,我们导入一些素材,来搭建一个简单的场景,如果你忘记如何导入素材了,请回顾(如何导入素材)。

640.png

如图,我们导入了“圆点”和“基础文字”素材,并在编辑区中设置了A和B的两个圆点位置。


640.png

小提示:图片的颜色可以通过调节属性区中的“颜色叠加”来进行修改。


在层级管理中选中“敌机”,然后在积木区中点击“添加事件”按钮,添加一个“当场景启动时”的事件。

640.png


这样就添加了一个“当场景启动时”的积木块,我们会把所有的逻辑放到“当场景启动时”的积木块中,这样只要游戏开始运行,敌机就会不停的从A点飞向B点了。

640.png


接着,我们来添加第一块积木。在“积木区”右侧选择“运动”,然后把“将自己移到随机的相对坐标”积木块,拖拽到积木区中。

640.png

小提示:所有与移动,旋转相关的积木块都包含在右侧的“运动”中。


我们希望从游戏一开始,敌机就位于A点的位置,所以选择移动到“圆点”位置,“圆点”表示A点的位置,“圆点_1”表示B点的位置。


640.png


接着,我们要添加一块“循环”积木,点击右侧的“逻辑”,将“重复执行”积木拖拽到积木区。这里使用的是没有停止条件的循环积木块,下方蓝色方块中的三个积木块为有停止条件的循环积木块。

640.png


看起来是这个样子,接着将敌机的移动放在这个“重复执行”的积木块中。

640.png


选择“运动”,把“将自己的X坐标增加10”的积木块拖拽到积木区。

640.png


由于B点位于A点正下方,所以只需要设置Y轴的位置即可,让敌机不停的向正下方移动,这里通过让敌机的Y坐标不停的减少来实现。

640.png


点击“预览场景”看一下效果。


游戏开始后,敌机会从A点的位置开始一直向下飞,但是到达B点后,敌机依旧保持向下飞,直到飞出屏幕。

640.gif


下面,我们添加“如果,那么”积木块,来实现到达B点后敌机再次从A点开始飞行。


在右侧的“逻辑”中找到“如果”积木块,拖拽到积木区。

640.png


接着增加判断条件,右侧选择“运算”,找到比较积木块,拖拽到“如果”积木块的判断条件处。

640.png


我们需要对敌机的位置以及B点的位置进行比较,右侧选择“侦测”,找到“自己的x”积木块,拖拽到比较积木块上的椭圆形处。

640.png


我们只需要比较敌机以及B点在y轴上的位置,所以选择y进行比较。在y轴上如果敌机的位置比B点的位置小,那就证明敌机达到B点了,此时“如果”积木块的条件成立。

640.png

图中的“圆点_1”表示的就是B点。


条件成立后,我们要把敌机再次放回到A点的位置。


右侧找到“运动”中的“将自己移到随机的相对坐标”积木,拖拽到“如果”积木块中。

640.png


最终看起来是应该这个样子。

640.png


640.png

我们看着上方的图再过一遍整个逻辑:


游戏开始后,敌机被放到A点的位置,然后开始循环,敌机向B点移动,当敌机到达B点(敌机的y小于B点的y)后,把敌机再次放到A点的位置,然后敌机再次从A点向B点移动。


点击“预览场景”,再次看一下效果。

640.gif

你的游戏是否也实现了这个效果呢?


总结一下:

我们学习了游戏中最常用的两种逻辑“循环”和“如果,那么”。

利用这两种逻辑我们实现了一个简单的功能。


思考一下:

如果敌机从A点飞到B点,到达B点以后,再从B点飞回A点,如此来来回回的循环该如何实现呢?


相关文章
|
6月前
|
人工智能 安全 Java
Nacos 3.0:从微服务治理到AI服务治理的跃迁
Nacos 3.0:从微服务治理到AI服务治理的跃迁
384 5
|
7月前
|
Java
照片一键生成眨眼视频app,手机照片一键生成眨眼动图,通过JAR代码实现效果
这是一个自动生成眨眼GIF动画的Java程序,包含主程序处理、图像变形和GIF生成三个模块。输入照片路径,自动识别人脸眼睛位置,生成闭眼、半闭眼等多帧图像,并合成为眨眼动效GIF文件。
|
5月前
|
SQL 关系型数据库 分布式数据库
一条SQL管理向量全生命周期,让AI应用开发更简单
本文探讨了AI应用开发中向量数据管理的挑战,介绍了PolarDB IMCI通过在数据库内核中集成向量索引与Embedding能力,实现向量全生命周期管理的创新方案。该方案有效解决了技术栈分裂、数据孤岛和运维复杂等痛点,提供了一体化、高性能、支持事务与实时检索的向量数据库服务,极大降低了AI应用的开发与维护门槛。
318 26
一条SQL管理向量全生命周期,让AI应用开发更简单
|
5月前
|
人工智能 运维 安全
运维老哥的救星?AI 驱动的自动化配置管理新趋势
运维老哥的救星?AI 驱动的自动化配置管理新趋势
316 11
|
5月前
|
JSON API 数据格式
抖音商品详情API秘籍!轻松获取商品详情数据
抖音商品详情API由抖音开放平台提供,支持开发者获取商品基础信息、价格、销量、SKU等关键数据,适用于电商整合、导购平台及直播选品。接口基于HTTP协议,采用GET请求方式,返回JSON格式数据,便于解析处理。附Python请求示例代码,便于快速接入使用。
|
5月前
|
安全 Windows
电脑错误代码0xc0000001
电脑出现错误代码0xc0000001通常表示系统启动失败,可能由系统文件损坏、硬件故障或驱动冲突等原因引起。以下是详细的解决方法
|
9月前
|
人工智能 编解码 异构计算
Neo-1:全球首个原子级生成式AI模型!这个AI模型把10年药物研发周期压缩到1个月
VantAI推出的Neo-1是全球首个统一分子生成与原子级结构预测的AI模型,采用潜在空间扩散技术,结合大规模训练和定制数据集,显著提升药物研发效率。
467 15
Neo-1:全球首个原子级生成式AI模型!这个AI模型把10年药物研发周期压缩到1个月
|
11月前
|
人工智能 自然语言处理 供应链
《DeepSeek:工业互联网与人工智能融合的“催化剂”》
在工业4.0和智能制造的浪潮下,DeepSeek技术作为工业互联网与人工智能融合的“催化剂”,通过智能数据处理、精准建模预测、智能决策支持及智能交互,全面优化生产流程,提升企业竞争力。它能高效处理多源异构数据,挖掘关键信息,预测设备故障,提供科学决策建议,并简化操作流程,推动制造业向智能化、高效化、绿色化方向迈进,引领工业互联网新时代的发展潮流。
309 5
《DeepSeek:工业互联网与人工智能融合的“催化剂”》
|
运维 算法 安全
异常检测算法及其在安全领域的应用
【6月更文挑战第4天】在数字化时代,数据安全至关重要,异常检测算法扮演着守护者角色。它能自动学习正常行为模式,及时发现网络攻击和欺诈行为。非监督式异常检测算法尤其重要,如基于距离的方法,通过计算数据点间距离识别偏离常规的点。Python的scikit-learn库可实现这一算法。异常检测不仅应用于金融领域的欺诈检测,还广泛用于工业监控、医疗诊断和社交媒体分析,为多领域数据安全提供保障。随着技术进步,异常检测将更智能、高效,成为数据安全的重要防线。
447 2
|
12月前
|
测试技术 持续交付 开发者
《提升鸿蒙Next应用审核与上架效率之道》
为了确保应用顺利通过华为应用市场的审核并成功上架,开发者应提前熟悉审核标准和流程,优化应用质量,完善资料提交,并加强与审核团队的沟通。具体措施包括:仔细研读审核指南,确保功能完整性和稳定性,提升性能指标,规范权限申请,准确填写应用信息,准备高质量截图和视频,制定明确隐私政策,利用技术工具进行自查和自动化测试,积极参与社区交流和培训活动。
324 8

热门文章

最新文章