GameFramework框架新建场景及流程跳转

编程入门 行业动态 更新时间:2024-10-14 12:24:46

GameFramework框架新建场景及流程<a href=https://www.elefans.com/category/jswz/34/1769274.html style=跳转"/>

GameFramework框架新建场景及流程跳转

  1. 新建场景Gameone,拼好UI并拖入UI预制体,例如GameoneForm
  2. 创建GameoneForm脚本挂载在UI预制上,并实现下面两个方法,否则场景UI会歪

  1. 在DefaultConfig表中添加Scene.Gameone(即场景名)
  2. 在Scene表中添加场景编号和资源名称
  3. 在UIForm表中添加界面编号,备注,和资源名称,UI预制的名字要打对
  4. 在UIFormId中添加新UI预制的名字与编号
  5. 新建流程ProcedureGameone
using GameFramework;
using GameFramework.DataTable;
using GameFramework.Event;
using GameFramework.Fsm;
using GameFramework.Procedure;
using GameFramework.Resource;using System.Collections.Generic;
using UnityEngine;
using UnityGameFramework.Runtime;
using ProcedureOwner = GameFramework.Fsm.IFsm<GameFramework.Procedure.IProcedureManager>;namespace StarForce
{public class ProcedureGameone : ProcedureBase{private const int gameOneSceneId = 5;public bool changeToGameOne = false;protected override void OnInit(ProcedureOwner procedureOwner){base.OnInit(procedureOwner);}protected override void OnEnter(ProcedureOwner procedureOwner){base.OnEnter(procedureOwner);//停止所有声音GameEntry.Entity.HideAllLoadingEntities();GameEntry.Entity.HideAllLoadedEntities();//隐藏所有实体GameEntry.Entity.HideAllLoadingEntities();GameEntry.Entity.HideAllLoadedEntities();//卸载所有场景string[] loadedSceneAssetNames = GameEntry.Scene.GetLoadedSceneAssetNames();for (int i = 0; i < loadedSceneAssetNames.Length; i++){GameEntry.Scene.UnloadScene(loadedSceneAssetNames[i]);}//还原游戏速度GameEntry.Base.ResetNormalGameSpeed();//获取上一流程设置的NextSceneIdint sceneId = procedureOwner.GetData<VarInt>(Constant.ProcedureData.NextSceneId).Value;//读表 IDataTable<DRScene> dRScenes = GameEntry.DataTable.GetDataTable<DRScene>();//获取其中的某一行数据DRScene dRScene = dRScenes.GetDataRow(gameOneSceneId);//切换场景GameEntry.Scene.LoadScene(AssetUtility.GetSceneAsset(dRScene.AssetName), this);//(某一行数据中的名称,此流程)//打开登录UI 参数为(枚举脚本里的LoginForm,此流程)GameEntry.UI.OpenUIForm(UIFormId.GameoneForm, this);}protected override void OnUpdate(ProcedureOwner procedureOwner, float elapseSeconds, float realElapseSeconds){base.OnUpdate(procedureOwner, elapseSeconds

更多推荐

GameFramework框架新建场景及流程跳转

本文发布于:2024-03-23 01:32:42,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1738896.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:跳转   框架   场景   流程   GameFramework

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!