『功能项目』状态模式转换场景【30】

2024-09-06 21:36

本文主要是介绍『功能项目』状态模式转换场景【30】,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本章项目成果展示

打开上一篇29Unity本地数据库读取进入游戏的项目,

本章要做的事情是通过状态者模式转换场景,在进入账号登陆界面前闪烁显示Logo

首先创建一个新的场景命名为StartUI

修改游戏场景名字

重命名为FightGame01

首先创建一个脚本文件夹:

首先了解一下状态模式的类图

我们创新类图中的代码

编写脚本:ISceneState.cs

public class ISceneState {//模型中场景名字string mSceneName;//聚合状态拥有者protected SceneStateController mSceneController;public string MSceneName {get { return mSceneName; }}public ISceneState(string sceneName,SceneStateController controller) {mSceneName = sceneName;mSceneController = controller;}//每次进入到这个状态的时候调用public virtual void StateStart() { }//每次离开这个状态的时候调用public virtual void StateEnd() { }//被状态拥有者调用public virtual void StateUpdate() { }
}

新建脚本:GameLoop.cs

状态模式框架搭好后 继续编写脚本:SceneStateController.cs

编写脚本:GameLoop.cs

接下来要做的事情是在注册登录界面UI显示前,加载一个Logo,由消失到显示再到消失之后进入登陆账号界面。

首先在场景中创建一个Image命名为Logo(按住Alt键让Logo铺满全屏)

将下面资源图片放进Art文件夹

将图片设置为精灵模式Sprite后拖拽绑定Logo

编写脚本:StartUIState.cs

创建一个空物体命名为GameLoop后将GameLoop.cs脚本进行绑定

运行项目 - Logo从消失到显示再到消失

我们修改脚本让其在执行完图片闪烁一次后进入登陆注册界面

运行项目 闪烁Logo后即可实现转场账号登陆界面

本篇做了数据库读取账号密码信息及注册登录游戏功能,接下来还需做以下内容:

1.单例模式框架

2.可拖动UI窗口

3.怪物集目标点巡航功能

4.隐藏怪物的生成

5.怪物I攻击范围内的主动攻击

6.掉落坐骑蛋的获取

7.异步传送转换场景

以及开放回合制、坐骑系统、宠物系统、背包系统、神炼系统、商城系统、Boss的目标跟随任务导航系统以及UI播放3D动画效果等等。

具体项目运行效果请关注water1024的b站视频项目演示《破碎纪元》

【Unity回合2.5D】破碎纪元_单机游戏热门视频 (bilibili.com)icon-default.png?t=O83Ahttps://www.bilibili.com/video/BV1rZY4e9Ebs/?spm_id_from=333.999.0.0&vd_source=547091a95b03acfa8e8a9e46ef499cd6 

这篇关于『功能项目』状态模式转换场景【30】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1143180

相关文章

Springboot项目构建时各种依赖详细介绍与依赖关系说明详解

《Springboot项目构建时各种依赖详细介绍与依赖关系说明详解》SpringBoot通过spring-boot-dependencies统一依赖版本管理,spring-boot-starter-w... 目录一、spring-boot-dependencies1.简介2. 内容概览3.核心内容结构4.

深度解析Python yfinance的核心功能和高级用法

《深度解析Pythonyfinance的核心功能和高级用法》yfinance是一个功能强大且易于使用的Python库,用于从YahooFinance获取金融数据,本教程将深入探讨yfinance的核... 目录yfinance 深度解析教程 (python)1. 简介与安装1.1 什么是 yfinance?

Spring Security 前后端分离场景下的会话并发管理

《SpringSecurity前后端分离场景下的会话并发管理》本文介绍了在前后端分离架构下实现SpringSecurity会话并发管理的问题,传统Web开发中只需简单配置sessionManage... 目录背景分析传统 web 开发中的 sessionManagement 入口ConcurrentSess

Python脚本轻松实现检测麦克风功能

《Python脚本轻松实现检测麦克风功能》在进行音频处理或开发需要使用麦克风的应用程序时,确保麦克风功能正常是非常重要的,本文将介绍一个简单的Python脚本,能够帮助我们检测本地麦克风的功能,需要的... 目录轻松检测麦克风功能脚本介绍一、python环境准备二、代码解析三、使用方法四、知识扩展轻松检测麦

C#和Unity中的中介者模式使用方式

《C#和Unity中的中介者模式使用方式》中介者模式通过中介者封装对象交互,降低耦合度,集中控制逻辑,适用于复杂系统组件交互场景,C#中可用事件、委托或MediatR实现,提升可维护性与灵活性... 目录C#中的中介者模式详解一、中介者模式的基本概念1. 定义2. 组成要素3. 模式结构二、中介者模式的特点

Java实现TXT文件导入功能的详细步骤

《Java实现TXT文件导入功能的详细步骤》在实际开发中,很多应用场景需要将用户上传的TXT文件进行解析,并将文件中的数据导入到数据库或其他存储系统中,本文将演示如何用Java实现一个基本的TXT文件... 目录前言1. 项目需求分析2. 示例文件格式3. 实现步骤3.1. 准备数据库(假设使用 mysql

99%的人都选错了! 路由器WiFi双频合一还是分开好的专业解析与适用场景探讨

《99%的人都选错了!路由器WiFi双频合一还是分开好的专业解析与适用场景探讨》关于双频路由器的“双频合一”与“分开使用”两种模式,用户往往存在诸多疑问,本文将从多个维度深入探讨这两种模式的优缺点,... 在如今“没有WiFi就等于与世隔绝”的时代,越来越多家庭、办公室都开始配置双频无线路由器。但你有没有注

在ASP.NET项目中如何使用C#生成二维码

《在ASP.NET项目中如何使用C#生成二维码》二维码(QRCode)已广泛应用于网址分享,支付链接等场景,本文将以ASP.NET为示例,演示如何实现输入文本/URL,生成二维码,在线显示与下载的完整... 目录创建前端页面(Index.cshtml)后端二维码生成逻辑(Index.cshtml.cs)总结

Spring Boot项目如何使用外部application.yml配置文件启动JAR包

《SpringBoot项目如何使用外部application.yml配置文件启动JAR包》文章介绍了SpringBoot项目通过指定外部application.yml配置文件启动JAR包的方法,包括... 目录Spring Boot项目中使用外部application.yml配置文件启动JAR包一、基本原理

Springboot项目登录校验功能实现

《Springboot项目登录校验功能实现》本文介绍了Web登录校验的重要性,对比了Cookie、Session和JWT三种会话技术,分析其优缺点,并讲解了过滤器与拦截器的统一拦截方案,推荐使用JWT... 目录引言一、登录校验的基本概念二、HTTP协议的无状态性三、会话跟android踪技术1. Cook