【unity3d学习笔记】unity中创建全局变量

来源:互联网 发布:msn软件 编辑:程序博客网 时间:2024/06/01 08:50

借助static字段实现“全局变量”。

比如有时需要实现一个类似transform.position这样的变量可以同步更新。

1.Door 静态类:

using System.Collections;using System.Collections.Generic;using UnityEngine;public static class Door01{    public static int testNum=0;    public static int IsOpen    {        get        {            return testNum;        }        set        {            Door01.testNum = value;        }    }}

2.ControlOpen类 ,控制静态变量加一

using System.Collections;using System.Collections.Generic;using UnityEngine;public class ControlOpen : MonoBehaviour {//控制加一    public void OpenDoor()    {        Door01.IsOpen +=1;    }//在控制台显示结果    public void Display()    {       Debug.Log(Door01.IsOpen);    }}

3.ControlClose类 ,控制静态变量减一

using System.Collections;using System.Collections.Generic;using UnityEngine;public class ControlClose : MonoBehaviour {    //控制静态变量减一    public void CloseDoor()    {        Door01.IsOpen -=1;    }    //控制台输出结果    public void Display()    {        Debug.Log(Door01.testNum);    }}

将2、3脚本放到不同物体上,并且在unity中添加控制按钮。
左边两个按钮控制ControlOpen类中的两个方法;
右边两个按钮控制ControlClose类中的两个方法。

测试结果:

点击5次+1,然后点击右下按钮:

这里写图片描述

点击5次-1,点击左下按钮:

这里写图片描述

阅读全文
1 0