上传框架,上传unitask

This commit is contained in:
2025-04-11 09:56:06 +08:00
parent 9f9bb87821
commit 4e3c6861df
355 changed files with 73049 additions and 85 deletions

View File

@@ -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

View File

@@ -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