创建标签系统包

This commit is contained in:
MuHua-123
2025-02-27 17:40:31 +08:00
parent 27aed5f684
commit cf0e273205
125 changed files with 13817 additions and 62 deletions
+8
View File
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: b0dab98b9033323428c3db1f2c7946c0
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,11 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
/// <summary>
/// 场景中的固定模块
/// </summary>
public abstract class ModuleFixed : MonoBehaviour {
/// <summary> 核心模块 </summary>
protected virtual ModuleCore ModuleCore => ModuleCore.I;
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 529fed83b6e5fff43b7bdf3eca7dbd0e
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
+8
View File
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: b8989716a20d28b4180f6cceee0898f7
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,16 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
/// <summary>
/// 预制件模块
/// </summary>
public abstract class ModulePrefab<Data> : MonoBehaviour {
/// <summary> 关联的数据 </summary>
protected Data value;
/// <summary> 关联的数据 </summary>
public virtual Data Value => value;
/// <summary> 更新可视化内容 </summary>
public virtual void UpdateVisual(Data value) => this.value = value;
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 84ffbf591cb4c0e4483f5c577ba37d68
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
+8
View File
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: fcb15023389a9c141b1b07fe53f06e5c
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,31 @@
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
/// <summary>
/// 单例模块
/// </summary>
public abstract class ModuleSingle<T> : MonoBehaviour where T : ModuleSingle<T> {
/// <summary> 模块单例 </summary>
public static T I => instance;
/// <summary> 模块单例 </summary>
protected static T instance;
/// <summary> 核心模块 </summary>
protected virtual ModuleCore ModuleCore => ModuleCore.I;
/// <summary> 初始化 </summary>
protected abstract void Awake();
/// <summary> 替换 </summary>
protected virtual void Replace(bool isDontDestroy = true) {
if (instance != null) { Destroy(instance.gameObject); }
instance = (T)this;
if (isDontDestroy) { DontDestroyOnLoad(gameObject); }
}
/// <summary> 不替换 </summary>
protected virtual void NoReplace(bool isDontDestroy = true) {
if (isDontDestroy) { DontDestroyOnLoad(gameObject); }
if (instance == null) { instance = (T)this; }
else { Destroy(gameObject); }
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 121ca341c2100df4b94d707ed24452f5
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
+8
View File
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 3161d7f50e461bf4896cdd13d8b508be
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
+35
View File
@@ -0,0 +1,35 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using UnityEngine;
/// <summary>json解析与保存</summary>
public static class JsonTool {
/// <summary> 内部包装类 </summary>
private class Pack<T> { public T data; }
/// <summary> 把对象转换为Json字符串 </summary>
/// <param name="obj">对象</param>
public static string ToJson<T>(T obj) {
if (obj == null) return "null";
if (obj.GetType().GetInterface("IList") != null) {
Pack<T> pack = new Pack<T>();
pack.data = obj;
string json = JsonUtility.ToJson(pack);
return json.Substring(8, json.Length - 9);
}
return JsonUtility.ToJson(obj);
}
/// <summary> 解析Json </summary>
/// <typeparam name="T">类型</typeparam>
/// <param name="json">Json字符串</param>
public static T FromJson<T>(string json) {
if (json == "null" && typeof(T).IsClass) return default(T);
if (typeof(T).GetInterface("IList") != null) {
json = "{\"data\":{data}}".Replace("{data}", json);
Pack<T> Pack = JsonUtility.FromJson<Pack<T>>(json);
return Pack.data;
}
return JsonUtility.FromJson<T>(json);
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 007e3acdca87e1b49b38f504938206cb
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,17 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
/// <summary>
/// 图层遮罩工具
/// </summary>
public static class LayerMaskTool {
///// <summary> 板片 </summary>
//public static readonly LayerMask Plate = 1 << LayerMask.NameToLayer("Plate");
///// <summary> 形状 </summary>
//public static readonly LayerMask Shape = 1 << LayerMask.NameToLayer("Shape");
///// <summary> 安排点 </summary>
//public static readonly LayerMask Arrange = 1 << LayerMask.NameToLayer("Arrange");
///// <summary> 模特 </summary>
//public static readonly LayerMask Model = 1 << LayerMask.NameToLayer("Model");
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: d32659481db1a124c9b564f885ee75a8
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant: