[Unity] enum(枚举)在脚本之间的引用

您所在的位置:网站首页 unity获取其他脚本的变量 [Unity] enum(枚举)在脚本之间的引用

[Unity] enum(枚举)在脚本之间的引用

2023-08-22 15:39| 来源: 网络整理| 查看: 265

本文章所有代码在2021.3.15f1c1版本的编辑器下正常运作

一、enum的介绍

        enum是一种特殊的C语言对象类型,在Unity中的使用较为广泛,具体介绍可以搜索研究,以下为一个实例

//声明枚举的名称,并声明枚举中的元素 enum Unit {START,PLAYERTURN,END} //基于已声明的枚举创建变量,该变量的值只能在枚举中的元素中选择 Unit unit; //为变量赋值的语句格式 unit = Unit.START(也可以是Unit.PLAYERTURN或者Unit.END)

二、脚本之间的enum引用

        以下为两个脚本,第一个脚本定义了枚举的名称与其中的元素,并创建了一个基于该枚举的变量,并赋值为START,第二个脚本则可以对第一个脚本中创建的变量进行引用与修改

GameSystem.cs

using System.Collections; using System.Collections.Generic; using UnityEngine; public class GameSystem : MonoBehaviour { //首先声明枚举的名称,并声明枚举中的元素 //此处的public极为重要 public enum GameState {START,PLAYERTURN,END}; //基于已声明的枚举创建变量 public GameState state; //为该变量赋值(其中GameState必须写明) state = GameState.START; }

ChangeTurn.cs

using System.Collections; using System.Collections.Generic; using UnityEngine; public class ChangeTurn : MonoBehaviour { //首先引入上一个脚本定义的类(GameSystem),将名字保存为GS public GameSystem GS void Start() { //如果想要引用上一个脚本中基于枚举的变量的值,应使用如下代码 var state1 = GS.state //如果想要修改上一个脚本中基于枚举的变量的值,应使用如下代码 //这一代码中的GameSystem.GameState请使用全拼 //运行过程中代码会从上一脚本中引入枚举,并为这一变量赋值 GS.state = GameSystem.GameState.END } }

三、总结

        在本文章中简单介绍了enum的定义,以及在不同脚本之间的引用,在下不才,如有纰漏欢迎在评论区中指出。



【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3