xlua修复C#的委托事件的时候,需要提前做好配置
如下所示:
1 //C#静态调用Lua的配置(包括事件的原型),仅可以配delegate,interface 2 [CSharpCallLua] 3 public static List<Type> CSharpCallLua = new List<Type>() 4 { 5 typeof(Func<double>), 6 typeof(Func<string>), 7 typeof(Func<bool>), 8 typeof(Func<int>), 9 typeof(Func<uint>), 10 typeof(Func<uint, string>), 11 typeof(Func<double, double>), 12 typeof(Func<double, double, double>), 13 typeof(Func<int, string, List<byte>>), 14 typeof(Action), 15 typeof(Action<object>), 16 typeof(Action<double>), 17 typeof(Action<string>), 18 typeof(Action<int>), 19 typeof(Action<int,int>), 20 typeof(Action<uint>), 21 typeof(Action<uint,uint>), 22 typeof(Action<double, double>), 23 typeof(Action<double, double, double>), 24 typeof(Action<int, string>), 25 typeof(Action<float>), 26 typeof(Action<PhotoItem>), 27 typeof(Action<NewPlayer.UIPlayer>), 28 typeof(Action<UISpirit>), 29 typeof(Common.Messenger.Callback), 30 typeof(UnityAction), 31 typeof(IEnumerator), 32 33 typeof(Action<GameMsg_S2C_GetFacebookShareRewardRes>), 34 typeof(Facebook.Unity.FacebookDelegate<Facebook.Unity.IShareResult>), 35 36 typeof(UIEventListener.VoidDelegate), 37 typeof(UIEventListener.BoolDelegate), 38 typeof(UIEventListener.FloatDelegate), 39 typeof(UIEventListener.VectorDelegate), 40 typeof(UIEventListener.ObjectDelegate), 41 typeof(UIEventListener.KeyCodeDelegate), 42 43 typeof(Func<ushort, bool>), 44 typeof(Action<UnityGMClient.Network.GameMsgBase>), 45 typeof(Func<UnityGMClient.Network.Utility.NetWriteBuffer, bool>), 46 typeof(Func<UnityGMClient.Network.Utility.NetReadBuffer, bool>), 47 typeof(UnityGMClient.Network.MsgMap.MsgConstruct), 48 typeof(Action<uint, Modules.UI.UIFlag, Modules.UI.UIFlag>), 49 };