csharp GameState和添加事件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了csharp GameState和添加事件相关的知识,希望对你有一定的参考价值。

public class UIManager : MonoBehaviour
{
    

    void OnEnable()
    {
        Test.TestEvent += Func();
        
    }

    void OnDisable()
    {
        Test.TestEvent -= Func();
     
    }

}
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System;

public enum TestState
{	prepare,
	start,
	end,
}

public class Test : MonoBehaviour
 {
	public TestState TestStateGetSet
	{
		get{
			return _testState;
		}
		private set
        {
            if (value != _testState)
            {
                TestState oldState = _testState;
                _testState = value;

                 if(TestEvent != null)
                    TestEvent(_testState, oldState);              
            }
        }	
	}  

	private TestState _testState = TestState.prepare;
	public static event System.Action<TestState, TestState> TestEvent;

	void Start()
	{
		TestEvent += TestFunc;
		TestStateGetSet = TestState.end;

	}

	void TestFunc(TestState a, TestState b)
	{
		Debug.Log(a);
		Debug.Log(b);
	}

}

以上是关于csharp GameState和添加事件的主要内容,如果未能解决你的问题,请参考以下文章

编码和解码 GameState 类问题

osx/c++/glut,添加经过时间

C# 如何添加自定义键盘处理事件 如何配置app.config ? | csharp key press event tutorial and app.config

csharp 引发一个事件,接收一个EventHandler,sender对象和EventArgs

(CSharp)克隆控件事件

std :: list可以包含不同的std :: unique_ptr ?