上传框架,上传unitask
This commit is contained in:
@@ -91,7 +91,7 @@ namespace Stary.Evo
|
||||
}
|
||||
|
||||
// // 提供一个释放模块的 API
|
||||
public static void Dispose()
|
||||
public void Dispose()
|
||||
{
|
||||
for (int i = 0; i < mArchitecture.mSystems.Count; i++)
|
||||
{
|
||||
@@ -102,7 +102,8 @@ namespace Stary.Evo
|
||||
{
|
||||
mArchitecture.mDatas[i].Dispose();
|
||||
}
|
||||
|
||||
_mEnumEventSystem.Dispose();
|
||||
_mEnumEventSystem=null;
|
||||
mArchitecture = null;
|
||||
}
|
||||
|
||||
|
||||
@@ -169,5 +169,7 @@ namespace Stary.Evo
|
||||
|
||||
|
||||
TResult SendQuery<TResult>(IQuery<TResult> query);
|
||||
|
||||
void Dispose();
|
||||
}
|
||||
}
|
||||
@@ -1,29 +1,66 @@
|
||||
using System;
|
||||
using Sirenix.OdinInspector;
|
||||
using UnityEngine;
|
||||
using UnityEngine.Serialization;
|
||||
|
||||
namespace Stary.Evo
|
||||
{
|
||||
[Serializable]
|
||||
[CreateAssetMenu(fileName = "DomainConfig", menuName = "Evo/Create DomainConfig")]
|
||||
public class DomainConfig : ScriptableObject
|
||||
public class DomainConfig : SerializedScriptableObject
|
||||
{
|
||||
/// <summary>
|
||||
/// 域id
|
||||
/// </summary>
|
||||
public string domain;
|
||||
[Sirenix.OdinInspector.ReadOnly] public string domain;
|
||||
|
||||
/// <summary>
|
||||
/// 入口命名空间
|
||||
/// </summary>
|
||||
[Sirenix.OdinInspector.ReadOnly] public string @namespace;
|
||||
|
||||
/// <summary>
|
||||
/// 入口类
|
||||
/// </summary>
|
||||
[Sirenix.OdinInspector.ReadOnly] public string className;
|
||||
|
||||
public LoadResType loadResType;
|
||||
|
||||
[Sirenix.OdinInspector.ReadOnly] [ShowIf("loadResType", LoadResType.Prefab)]
|
||||
/// <summary>
|
||||
/// 入口预制体
|
||||
/// </summary>
|
||||
public string mainPrefab;
|
||||
/// <summary>
|
||||
/// 入口命名空间
|
||||
/// </summary>
|
||||
public string @namespace;
|
||||
/// <summary>
|
||||
/// 入口类
|
||||
/// </summary>
|
||||
public string className;
|
||||
|
||||
[ShowIf("loadResType", LoadResType.Scene)]
|
||||
public string mainScene;
|
||||
|
||||
|
||||
// [ShowIfGroup("loadResType", LoadResType.Prefab)]
|
||||
// public PonitPrefabType ponitPrefabType;
|
||||
|
||||
// [ShowIfGroup("loadResType", LoadResType.Prefab)]
|
||||
// [ShowIf("ponitPrefabType", PonitPrefabType.Plural)]
|
||||
// [OnCollectionChanged("OnPointConfDichChanged")]
|
||||
// public Dictionary<string, string> PonitConfDic = new Dictionary<string, string>();
|
||||
|
||||
|
||||
// private void OnPointConfDichChanged(CollectionChangeInfo info, object value)
|
||||
// {
|
||||
// Debug.Log("Received callback BEFORE CHANGE with the following info: " + info +
|
||||
// ", and the following collection instance: " + value);
|
||||
// }
|
||||
|
||||
|
||||
public enum LoadResType
|
||||
{
|
||||
Prefab,
|
||||
Scene
|
||||
}
|
||||
|
||||
// public enum PonitPrefabType
|
||||
// {
|
||||
// Single,
|
||||
// Plural
|
||||
// }
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -25,7 +25,7 @@ namespace Stary.Evo
|
||||
return self.GetArchitecture().RegisterEvent(key,onEvent);
|
||||
}
|
||||
|
||||
public static IUnRegister RegisterEvent<T,T1,T2,T3>(this ICanRegisterEvent self,T key,Action<T1,T3> onEvent) where T : IConvertible
|
||||
public static IUnRegister RegisterEvent<T,T1,T2,T3>(this ICanRegisterEvent self,T key,Action<T1,T2,T3> onEvent) where T : IConvertible
|
||||
{
|
||||
|
||||
return self.GetArchitecture().RegisterEvent(key,onEvent);
|
||||
@@ -53,7 +53,7 @@ namespace Stary.Evo
|
||||
self.GetArchitecture().UnRegisterEvent(key,onEvent);
|
||||
}
|
||||
|
||||
public static void UnRegisterEvent<T,T1,T2,T3>(this ICanRegisterEvent self,T key,Action<T1,T3> onEvent) where T : IConvertible
|
||||
public static void UnRegisterEvent<T,T1,T2,T3>(this ICanRegisterEvent self,T key,Action<T1,T2,T3> onEvent) where T : IConvertible
|
||||
{
|
||||
|
||||
self.GetArchitecture().UnRegisterEvent(key,onEvent);
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
namespace Stary.Evo
|
||||
{
|
||||
|
||||
@@ -16,9 +18,11 @@ namespace Stary.Evo
|
||||
|
||||
public IUnRegister Register<T>(T key, Action onEvent)where T : IConvertible
|
||||
{
|
||||
var kv = typeof(T).ToString()+ key.ToInt32(null);
|
||||
|
||||
var kv =$"{key.ToString()}";
|
||||
if (mEvents.TryGetValue(kv, out var e))
|
||||
{
|
||||
|
||||
var easyEvent = e.As<EasyEvent>();
|
||||
return easyEvent.Register(onEvent);
|
||||
}
|
||||
@@ -31,7 +35,7 @@ namespace Stary.Evo
|
||||
}
|
||||
public IUnRegister Register<T,T1>(T key, Action<T1> onEvent)where T : IConvertible
|
||||
{
|
||||
var kv = typeof(T).ToString()+ key.ToInt32(null);
|
||||
var kv =$"{key.ToString()}_{typeof(T1).Name}";
|
||||
if (mEvents.TryGetValue(kv, out var e))
|
||||
{
|
||||
var easyEvent = e.As<EasyEvent<T1>>();
|
||||
@@ -46,7 +50,7 @@ namespace Stary.Evo
|
||||
}
|
||||
public IUnRegister Register<T,T1,T2>(T key, Action<T1,T2> onEvent)where T : IConvertible
|
||||
{
|
||||
var kv = typeof(T).ToString()+ key.ToInt32(null);
|
||||
var kv =$"{key.ToString()}_{typeof(T1).Name}_{typeof(T2).Name}";
|
||||
if (mEvents.TryGetValue(kv, out var e))
|
||||
{
|
||||
var easyEvent = e.As<EasyEvent<T1,T2>>();
|
||||
@@ -61,7 +65,7 @@ namespace Stary.Evo
|
||||
}
|
||||
public IUnRegister Register<T,T1,T2,T3>(T key, Action<T1,T2,T3> onEvent) where T : IConvertible
|
||||
{
|
||||
var kv = typeof(T).ToString()+ key.ToInt32(null);
|
||||
var kv =$"{key.ToString()}_{typeof(T1).Name}_{typeof(T2).Name}_{typeof(T3).Name}";
|
||||
|
||||
if (mEvents.TryGetValue(kv, out var e))
|
||||
{
|
||||
@@ -77,7 +81,7 @@ namespace Stary.Evo
|
||||
}
|
||||
public IUnRegister Register<T>(T key, Action<object[]> onEvent) where T : IConvertible
|
||||
{
|
||||
var kv = typeof(T).ToString()+ key.ToInt32(null);
|
||||
var kv =$"{key.ToString()}_objects";
|
||||
|
||||
if (mEvents.TryGetValue(kv, out var e))
|
||||
{
|
||||
@@ -93,7 +97,7 @@ namespace Stary.Evo
|
||||
}
|
||||
public void UnRegister<T>(T key, Action onEvent) where T : IConvertible
|
||||
{
|
||||
var kv = typeof(T).ToString()+ key.ToInt32(null);
|
||||
var kv = key.ToString();
|
||||
|
||||
if (mEvents.TryGetValue(kv, out var e))
|
||||
{
|
||||
@@ -102,7 +106,7 @@ namespace Stary.Evo
|
||||
}
|
||||
public void UnRegister<T,T1>(T key, Action<T1> onEvent) where T : IConvertible
|
||||
{
|
||||
var kv = typeof(T).ToString()+ key.ToInt32(null);
|
||||
var kv =$"{key.ToString()}_{typeof(T1).Name}";
|
||||
|
||||
if (mEvents.TryGetValue(kv, out var e))
|
||||
{
|
||||
@@ -111,7 +115,7 @@ namespace Stary.Evo
|
||||
}
|
||||
public void UnRegister<T,T1,T2>(T key, Action<T1,T2> onEvent) where T : IConvertible
|
||||
{
|
||||
var kv = typeof(T).ToString()+ key.ToInt32(null);
|
||||
var kv =$"{key.ToString()}_{typeof(T1).Name}_{typeof(T2).Name}";
|
||||
|
||||
if (mEvents.TryGetValue(kv, out var e))
|
||||
{
|
||||
@@ -120,7 +124,7 @@ namespace Stary.Evo
|
||||
}
|
||||
public void UnRegister<T,T1,T2,T3>(T key, Action<T1,T2,T3> onEvent) where T : IConvertible
|
||||
{
|
||||
var kv = typeof(T).ToString()+ key.ToInt32(null);
|
||||
var kv =$"{key.ToString()}_{typeof(T1).Name}_{typeof(T2).Name}_{typeof(T3).Name}";
|
||||
|
||||
if (mEvents.TryGetValue(kv, out var e))
|
||||
{
|
||||
@@ -129,64 +133,82 @@ namespace Stary.Evo
|
||||
}
|
||||
public void UnRegister<T>(T key, Action<object[]> onEvent) where T : IConvertible
|
||||
{
|
||||
var kv = typeof(T).ToString()+ key.ToInt32(null);
|
||||
var kv =$"{key.ToString()}_objects";
|
||||
|
||||
if (mEvents.TryGetValue(kv, out var e))
|
||||
{
|
||||
e.As<EasyEvent<object[]>>()?.UnRegister(onEvent);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
public void UnRegisterAll()
|
||||
{
|
||||
mEvents.Clear();
|
||||
}
|
||||
|
||||
public void Send<T>(T key) where T : IConvertible
|
||||
{
|
||||
var kv = typeof(T).ToString()+ key.ToInt32(null);
|
||||
var kv = key.ToString();
|
||||
|
||||
if (mEvents.TryGetValue(kv, out var e))
|
||||
{
|
||||
e.As<EasyEvent>().Trigger();
|
||||
}
|
||||
else
|
||||
{
|
||||
Debug.LogError($"UnityEvo没有找到对应的事件:{kv}");
|
||||
}
|
||||
}
|
||||
public void Send<T,T1>(T key, T1 t1) where T : IConvertible
|
||||
{
|
||||
var kv = typeof(T).ToString()+ key.ToInt32(null);
|
||||
var kv =$"{key.ToString()}_{typeof(T1).Name}";
|
||||
|
||||
if (mEvents.TryGetValue(kv, out var e))
|
||||
{
|
||||
e.As<EasyEvent<T1>>().Trigger(t1);
|
||||
}
|
||||
else
|
||||
{
|
||||
Debug.LogError($"UnityEvo没有找到对应的事件:{kv}");
|
||||
}
|
||||
}
|
||||
public void Send<T,T1,T2>(T key, T1 t1,T2 t2) where T : IConvertible
|
||||
{
|
||||
var kv = typeof(T).ToString()+ key.ToInt32(null);
|
||||
var kv =$"{key.ToString()}_{typeof(T1).Name}_{typeof(T2).Name}";
|
||||
|
||||
if (mEvents.TryGetValue(kv, out var e))
|
||||
{
|
||||
e.As<EasyEvent<T1,T2>>().Trigger(t1,t2);
|
||||
}
|
||||
else
|
||||
{
|
||||
Debug.LogError($"UnityEvo没有找到对应的事件:{kv}");
|
||||
}
|
||||
}
|
||||
public void Send<T,T1,T2,T3>(T key, T1 t1,T2 t2 ,T3 t3) where T : IConvertible
|
||||
{
|
||||
var kv = typeof(T).ToString()+ key.ToInt32(null);
|
||||
var kv =$"{key.ToString()}_{typeof(T1).Name}_{typeof(T2).Name}_{typeof(T3).Name}";
|
||||
|
||||
if (mEvents.TryGetValue(kv, out var e))
|
||||
{
|
||||
e.As<EasyEvent<T1,T2,T3>>().Trigger(t1,t2,t3);
|
||||
}
|
||||
else
|
||||
{
|
||||
Debug.LogError($"UnityEvo没有找到对应的事件:{kv}");
|
||||
}
|
||||
}
|
||||
public void Send<T>(T key, params object[] args) where T : IConvertible
|
||||
{
|
||||
var kv = typeof(T).ToString()+ key.ToInt32(null);
|
||||
var kv =$"{key.ToString()}_objects";
|
||||
|
||||
if (mEvents.TryGetValue(kv, out var e))
|
||||
{
|
||||
e.As<EasyEvent<string,object[]>>().Trigger(kv,args);
|
||||
}
|
||||
else
|
||||
{
|
||||
Debug.LogError($"UnityEvo没有找到对应的事件:{kv}");
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
@@ -11,11 +11,13 @@ namespace Stary.Evo
|
||||
{
|
||||
OnCollisionEnterEvent.Trigger(col);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
public static class OnCollisionEnterEventTriggerExtension
|
||||
{
|
||||
public static IUnRegister OnCollisionEnterEvent<T>(this T self, Action<Collision> onCollisionEnter)
|
||||
public static IUnRegister OnCollisionEnterEvent<T>(this T self, Action<Collision> onCollisionEnter)
|
||||
where T : Component
|
||||
{
|
||||
return self.GetOrAddComponent<OnCollisionEnterEventTrigger>().OnCollisionEnterEvent
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
using Cysharp.Threading.Tasks;
|
||||
using UnityEngine;
|
||||
using UnityEngine.Networking;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user