游戏开发学习 Day23:关卡切换和关卡结束 UI
2023-02-16 09:10 作者:WingST-落羽敬斋 | 我要投稿
2023 年 2 月 16 日
一、关卡切换
实现了关卡切换,先做了一个循环。

关卡管理器,导出一个 PackedScene 类型的 Array,然后把已有的关卡放进来,以便切换使用。

添加脚本,默认加载第一关,切换关卡时,把下一关替换到当前场景中。并且有一个容错机制,当关卡索引大于关卡总数时,回到第一关。

在项目设置中,设置初始加载的场景,这是在主场景加载之后要加载的。

二、关卡结束 UI
关卡结束有获胜提示了。

也是创建一个 Canvas,然后 MarginContainer 用于布局,VBoxContainer 用于单列排版,再加上 Label 标签和 Button 按钮,改一下字体并添加文字,设置 SizeFlags 中的对齐方式。

添加脚本,默认加载监听按钮按下的事件,按下后,让关卡管理器加一关。

还有个小细节,就是需要在 BaseLevel 中,把 LevelComplete 场景加载进去,获胜之后先加载这个场景,而不是之前的切换到下一关。
