【判空方法】修复组件无法判断空值的问题

dev_chengFeng
gaoxin 2021-08-26 22:29:19 +08:00
parent 3a102c93fa
commit 672ca7db26
6 changed files with 148 additions and 1 deletions

View File

@ -196,6 +196,7 @@ namespace GameLogic {
{
resMgr.LoadStreamingText(name, luaFunction, null);
}
[NoToLua]
public void LoadStreamingText(string name, UnityAction<bool, string> action)
{
resMgr.LoadStreamingText(name, null, action);

View File

@ -99,7 +99,7 @@ public static class CustomSettings
_GT(typeof(DG.Tweening.PathType)),
_GT(typeof(DG.Tweening.RotateMode)),
_GT(typeof(DG.Tweening.Ease)),
_GT(typeof(Component)).AddExtendType(typeof(DG.Tweening.ShortcutExtensions)),
_GT(typeof(Component)).AddExtendType(typeof(DG.Tweening.ShortcutExtensions)).AddExtendType(typeof(UnityEngineObjectExtention)),
_GT(typeof(Transform)).AddExtendType(typeof(DG.Tweening.ShortcutExtensions)),
_GT(typeof(Light)).AddExtendType(typeof(DG.Tweening.ShortcutExtensions)),
_GT(typeof(Material)).AddExtendType(typeof(DG.Tweening.ShortcutExtensions)),

View File

@ -84,6 +84,7 @@ public class DelegateFactory
dict.Add(typeof(UnityEngine.UI.InputField.OnValidateInput), factory.UnityEngine_UI_InputField_OnValidateInput);
dict.Add(typeof(System.Action<string>), factory.System_Action_string);
dict.Add(typeof(UnityEngine.Events.UnityAction<string,UnityEngine.Object>), factory.UnityEngine_Events_UnityAction_string_UnityEngine_Object);
dict.Add(typeof(UnityEngine.Events.UnityAction<bool,string>), factory.UnityEngine_Events_UnityAction_bool_string);
dict.Add(typeof(SDK.SDKManager.InitLaunchAction), factory.SDK_SDKManager_InitLaunchAction);
dict.Add(typeof(SDK.SDKManager.RegisterAction), factory.SDK_SDKManager_RegisterAction);
dict.Add(typeof(SDK.SDKManager.LoginAction), factory.SDK_SDKManager_LoginAction);
@ -170,6 +171,7 @@ public class DelegateFactory
DelegateTraits<UnityEngine.UI.InputField.OnValidateInput>.Init(factory.UnityEngine_UI_InputField_OnValidateInput);
DelegateTraits<System.Action<string>>.Init(factory.System_Action_string);
DelegateTraits<UnityEngine.Events.UnityAction<string,UnityEngine.Object>>.Init(factory.UnityEngine_Events_UnityAction_string_UnityEngine_Object);
DelegateTraits<UnityEngine.Events.UnityAction<bool,string>>.Init(factory.UnityEngine_Events_UnityAction_bool_string);
DelegateTraits<SDK.SDKManager.InitLaunchAction>.Init(factory.SDK_SDKManager_InitLaunchAction);
DelegateTraits<SDK.SDKManager.RegisterAction>.Init(factory.SDK_SDKManager_RegisterAction);
DelegateTraits<SDK.SDKManager.LoginAction>.Init(factory.SDK_SDKManager_LoginAction);
@ -256,6 +258,7 @@ public class DelegateFactory
TypeTraits<UnityEngine.UI.InputField.OnValidateInput>.Init(factory.Check_UnityEngine_UI_InputField_OnValidateInput);
TypeTraits<System.Action<string>>.Init(factory.Check_System_Action_string);
TypeTraits<UnityEngine.Events.UnityAction<string,UnityEngine.Object>>.Init(factory.Check_UnityEngine_Events_UnityAction_string_UnityEngine_Object);
TypeTraits<UnityEngine.Events.UnityAction<bool,string>>.Init(factory.Check_UnityEngine_Events_UnityAction_bool_string);
TypeTraits<SDK.SDKManager.InitLaunchAction>.Init(factory.Check_SDK_SDKManager_InitLaunchAction);
TypeTraits<SDK.SDKManager.RegisterAction>.Init(factory.Check_SDK_SDKManager_RegisterAction);
TypeTraits<SDK.SDKManager.LoginAction>.Init(factory.Check_SDK_SDKManager_LoginAction);
@ -342,6 +345,7 @@ public class DelegateFactory
StackTraits<UnityEngine.UI.InputField.OnValidateInput>.Push = factory.Push_UnityEngine_UI_InputField_OnValidateInput;
StackTraits<System.Action<string>>.Push = factory.Push_System_Action_string;
StackTraits<UnityEngine.Events.UnityAction<string,UnityEngine.Object>>.Push = factory.Push_UnityEngine_Events_UnityAction_string_UnityEngine_Object;
StackTraits<UnityEngine.Events.UnityAction<bool,string>>.Push = factory.Push_UnityEngine_Events_UnityAction_bool_string;
StackTraits<SDK.SDKManager.InitLaunchAction>.Push = factory.Push_SDK_SDKManager_InitLaunchAction;
StackTraits<SDK.SDKManager.RegisterAction>.Push = factory.Push_SDK_SDKManager_RegisterAction;
StackTraits<SDK.SDKManager.LoginAction>.Push = factory.Push_SDK_SDKManager_LoginAction;
@ -4354,6 +4358,65 @@ public class DelegateFactory
ToLua.Push(L, o);
}
class UnityEngine_Events_UnityAction_bool_string_Event : LuaDelegate
{
public UnityEngine_Events_UnityAction_bool_string_Event(LuaFunction func) : base(func) { }
public UnityEngine_Events_UnityAction_bool_string_Event(LuaFunction func, LuaTable self) : base(func, self) { }
public void Call(bool param0, string param1)
{
func.BeginPCall();
func.Push(param0);
func.Push(param1);
func.PCall();
func.EndPCall();
}
public void CallWithSelf(bool param0, string param1)
{
func.BeginPCall();
func.Push(self);
func.Push(param0);
func.Push(param1);
func.PCall();
func.EndPCall();
}
}
public UnityEngine.Events.UnityAction<bool,string> UnityEngine_Events_UnityAction_bool_string(LuaFunction func, LuaTable self, bool flag)
{
if (func == null)
{
UnityEngine.Events.UnityAction<bool,string> fn = delegate(bool param0, string param1) { };
return fn;
}
if(!flag)
{
UnityEngine_Events_UnityAction_bool_string_Event target = new UnityEngine_Events_UnityAction_bool_string_Event(func);
UnityEngine.Events.UnityAction<bool,string> d = target.Call;
target.method = d.Method;
return d;
}
else
{
UnityEngine_Events_UnityAction_bool_string_Event target = new UnityEngine_Events_UnityAction_bool_string_Event(func, self);
UnityEngine.Events.UnityAction<bool,string> d = target.CallWithSelf;
target.method = d.Method;
return d;
}
}
bool Check_UnityEngine_Events_UnityAction_bool_string(IntPtr L, int pos)
{
return TypeChecker.CheckDelegateType(typeof(UnityEngine.Events.UnityAction<bool,string>), L, pos);
}
void Push_UnityEngine_Events_UnityAction_bool_string(IntPtr L, UnityEngine.Events.UnityAction<bool,string> o)
{
ToLua.Push(L, o);
}
class SDK_SDKManager_InitLaunchAction_Event : LuaDelegate
{
public SDK_SDKManager_InitLaunchAction_Event(LuaFunction func) : base(func) { }

View File

@ -237,6 +237,7 @@ public static class LuaBinder
L.RegFunction("UnityAction_bool", UnityEngine_Events_UnityAction_bool);
L.RegFunction("UnityAction_UnityEngine_Vector2", UnityEngine_Events_UnityAction_UnityEngine_Vector2);
L.RegFunction("UnityAction_string_UnityEngine_Object", UnityEngine_Events_UnityAction_string_UnityEngine_Object);
L.RegFunction("UnityAction_bool_string", UnityEngine_Events_UnityAction_bool_string);
L.EndModule();
L.BeginModule("Camera");
L.RegFunction("CameraCallback", UnityEngine_Camera_CameraCallback);
@ -1586,6 +1587,33 @@ public static class LuaBinder
}
}
[MonoPInvokeCallbackAttribute(typeof(LuaCSFunction))]
static int UnityEngine_Events_UnityAction_bool_string(IntPtr L)
{
try
{
int count = LuaDLL.lua_gettop(L);
LuaFunction func = ToLua.CheckLuaFunction(L, 1);
if (count == 1)
{
Delegate arg1 = DelegateTraits<UnityEngine.Events.UnityAction<bool,string>>.Create(func);
ToLua.Push(L, arg1);
}
else
{
LuaTable self = ToLua.CheckLuaTable(L, 2);
Delegate arg1 = DelegateTraits<UnityEngine.Events.UnityAction<bool,string>>.Create(func, self);
ToLua.Push(L, arg1);
}
return 1;
}
catch(Exception e)
{
return LuaDLL.toluaL_exception(L, e);
}
}
[MonoPInvokeCallbackAttribute(typeof(LuaCSFunction))]
static int UnityEngine_Camera_CameraCallback(IntPtr L)
{

View File

@ -20,6 +20,8 @@ public class SDK_SDKManagerWrap
L.RegFunction("CaptureShot", CaptureShot);
L.RegFunction("CustomEvent", CustomEvent);
L.RegFunction("NewRoleTutorial", NewRoleTutorial);
L.RegFunction("GetChannel", GetChannel);
L.RegFunction("GetSubChannel", GetSubChannel);
L.RegFunction("InitCallback", InitCallback);
L.RegFunction("RegisterCallback", RegisterCallback);
L.RegFunction("LoginCallback", LoginCallback);
@ -267,6 +269,40 @@ public class SDK_SDKManagerWrap
}
}
[MonoPInvokeCallbackAttribute(typeof(LuaCSFunction))]
static int GetChannel(IntPtr L)
{
try
{
ToLua.CheckArgsCount(L, 1);
SDK.SDKManager obj = (SDK.SDKManager)ToLua.CheckObject<SDK.SDKManager>(L, 1);
string o = obj.GetChannel();
LuaDLL.lua_pushstring(L, o);
return 1;
}
catch (Exception e)
{
return LuaDLL.toluaL_exception(L, e);
}
}
[MonoPInvokeCallbackAttribute(typeof(LuaCSFunction))]
static int GetSubChannel(IntPtr L)
{
try
{
ToLua.CheckArgsCount(L, 1);
SDK.SDKManager obj = (SDK.SDKManager)ToLua.CheckObject<SDK.SDKManager>(L, 1);
string o = obj.GetSubChannel();
LuaDLL.lua_pushstring(L, o);
return 1;
}
catch (Exception e)
{
return LuaDLL.toluaL_exception(L, e);
}
}
[MonoPInvokeCallbackAttribute(typeof(LuaCSFunction))]
static int InitCallback(IntPtr L)
{

View File

@ -1,6 +1,7 @@
//this source code was auto-generated by tolua#, do not modify it
using System;
using DG.Tweening;
using GameLogic;
using LuaInterface;
public class UnityEngine_ComponentWrap
@ -30,6 +31,7 @@ public class UnityEngine_ComponentWrap
L.RegFunction("DOFlip", DOFlip);
L.RegFunction("DOKill", DOKill);
L.RegFunction("DOComplete", DOComplete);
L.RegFunction("IsNull", IsNull);
L.RegFunction("New", _CreateUnityEngine_Component);
L.RegFunction("__eq", op_Equality);
L.RegFunction("__tostring", ToLua.op_ToString);
@ -708,6 +710,23 @@ public class UnityEngine_ComponentWrap
}
}
[MonoPInvokeCallbackAttribute(typeof(LuaCSFunction))]
static int IsNull(IntPtr L)
{
try
{
ToLua.CheckArgsCount(L, 1);
UnityEngine.Component obj = (UnityEngine.Component)ToLua.CheckObject<UnityEngine.Component>(L, 1);
bool o = obj.IsNull();
LuaDLL.lua_pushboolean(L, o);
return 1;
}
catch (Exception e)
{
return LuaDLL.toluaL_exception(L, e);
}
}
[MonoPInvokeCallbackAttribute(typeof(LuaCSFunction))]
static int op_Equality(IntPtr L)
{