This commit is contained in:
MuHua-123
2025-01-13 16:19:03 +08:00
parent 8f387837db
commit 4f7a5d76ca
42 changed files with 328 additions and 83 deletions
+13 -7
View File
@@ -1,3 +1,4 @@
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
@@ -6,15 +7,20 @@ using UnityEngine;
/// 单个独立模块
/// </summary>
public abstract class ModuleSingle<Data> : MonoBehaviour {
/// <summary> 必须要初始化 </summary>
protected virtual void Awake() { }
/// <summary> 核心模块 </summary>
protected virtual ModuleCore ModuleCore => ModuleCore.I;
/// <summary> 模块单例 </summary>
public static ModuleSingle<Data> I => instance;
/// <summary> 模块单例 </summary>
protected static ModuleSingle<Data> instance;
/// <summary> 初始化 </summary>
protected virtual void Awake() {
if (instance != null) { Destroy(instance.gameObject); }
instance = this;
}
/// <summary> 打开 </summary>
public virtual void Open(Data data) { }
public virtual void Open(Data data) { throw new NotImplementedException(); }
/// <summary> 完成 </summary>
public virtual void Complete() { }
public virtual void Complete() { throw new NotImplementedException(); }
/// <summary> 关闭 </summary>
public virtual void Close() { }
public virtual void Close() { throw new NotImplementedException(); }
}
@@ -0,0 +1,15 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class SingleTest : ModuleSingle<string> {
// Start is called before the first frame update
void Start() {
I.Open("ss");
}
// Update is called once per frame
void Update() {
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 7cd3fb8ca73868a46bf1ff920e0cdc13
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant: