设计模式复习_第二章
开始导入美术资源素材
到这两个子文件夹,其中包含的,就是敌人和士兵的美术资源预制体
选中其中一个,把缺失的脚本移除 其他几个同理(不要忽略了Soldier战士文件夹)
先勾选自动保存,移除结束再取消勾选
先整场景切换的相关逻辑 新建一个文件夹
基类
继续Ctrl+N 创建新场景,Ctrl+S 保存 一共三个场景,用来切换
加到这里
注意序号
继续整一个场景控制器
基类这些东西,都不要有命名空间限制
场景状态控制器,声明场景状态变量,异步场景加载,布尔判断场景是否在跑
回到场景状态类,先声明场景名字,场景状态控制器
然后,是场景名字获取器
三个函数状态,分别是开始,结束,更新
回到场景控制器,引用命名空间,其中有场景管理器
设置场景状态函数 如果当前场景状态不为空,就调用结束函数,让上一个场景,清理 然后改一下场景状态,如果是要加载场景,就异步加载场景,判断是否开始的布尔,设置为false 否则,就可以开始具体的场景逻辑了
更新函数,如果场景的异步加载不为空,同时isDone这个标识还没加载完成,直接return就好
再通过是否开始的布尔和上述俩条件,判断场景是否加载完成→开始场景的具体业务逻辑
还有更新函数
然后,新建三个类,分别代表三种场景状态
打开第一个场景,新建一个图片 命名
按住alt,设置,占满全屏
继续
因为几个场景的名字都是固定好的 所以子类不需要传参场景名字,写死就好
注意命名空间 声明图片image,滑动的浮点速度 等待时间
重写父类的开始业务逻辑,先找到Logo这个图片,然后颜色设置为黑
更新函数里,颜色随着时间乘以速度,渐变 然后还有一个定时器,定时到达小于等于0的时候,就传参,然后切换到下一个场景
在初始场景挂载的GameLoop脚本 前面定义了,是不会销毁的 开始写开始函数:实例化一个场景状态控制器,然后设置第一个场景状态,是开始场景
更新函数也是调用控制器的更新逻辑就好
运行游戏,可以看到,变色正常,切换也是正常的