using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
///
/// 数据处理器模块
///
public class ModuleHandle {
/// 数据
protected T value;
/// 核心模块
protected virtual ModuleCore ModuleCore => ModuleCore.I;
/// 当前数据
public virtual T Current => value;
/// 当前数据是否有效
public virtual bool IsValid => Current != null;
/// 改变当前数据 Event
public virtual event Action OnChange;
/// 改变当前数据
public virtual void Change() => OnChange?.Invoke(value);
/// 改变当前数据
public virtual void Change(T value) {this.value = value; OnChange?.Invoke(value); }
}