【Unity23种设计模式】之状态模式

首先创建一个项目

打开项目后复制至3个场景

命名为

创建一个空物体

命名为GameLoop

创建一个脚本GameLoop.cs

编写代码如下

将代码挂载至空物体GameLoop

将三个场景拖拽至Scenes In Build

分析下状态模式的类图

我们创新类图中的代码

编写ISceneState.cs

编写三个状态子类继承构造并赋值

编写SceneStateController.cs

编写GameLoop.cs

状态模式框架搭好后我们在ISceneState.cs

编写GameLoop.cs

编写LoadingState.cs

在场景中创建一个Image命名为Logo

运行即可看见Logo页面的一个从暗淡到显示的变化

运行第1s

运行第2s

接下来继续编写代码LoadingState.cs

在unity场景02UIScene中创建一个button

命名为StartBtn

运行在Loading由隐至显后3秒钟跳转至UIScene场景

第一秒

第二秒

第五秒

编写代码

继续运行项目

点击button后进入GameScene场景

End.

相关推荐
鱼听禅5 小时前
C# 学习笔记-使用 类型化客户端搭建HTTP客户端服务
学习·http·c#·工厂方法模式
Zane19946 小时前
从一次支付渠道扩展需求,看懂"多用组合少用继承"到底在说什么
设计模式
Wang's Blog6 小时前
Java框架快速入门: Spring Security+OAuth2之单点登录(SSO)实战
服务器·spring·状态模式
淡海水6 小时前
11-02-Unity-Mono-vs-IL2CPP-两种脚本后端的数据结构行为差异
数据结构·unity·游戏引擎·il2cpp·mono
彧azz6 小时前
初学Unity:编辑器
笔记·学习·unity·游戏引擎
geovindu7 小时前
CSharp:Condition Variable Pattern
后端·设计模式·c#·.net·.netcore·条件变量模式·同步型模式
geovindu7 小时前
sql: Data Modeling Patterns using mysql
sql·mysql·设计模式·数据库开发
小小数媒成员7 小时前
GPU优化(1)
游戏·unity·游戏引擎
淡海水8 小时前
11-03-Unity-List-T-和Dictionary-TKey-TValue-的性能调优实战
算法·unity·c#·list·dictionary