少年修仙传客户端基础资源
lwb
2021-01-21 e529ac91b59bb16df99ecaaf817d2a17a2e08a69
9527 ilruntime
2个文件已修改
20个文件已添加
574 ■■■■■ 已修改文件
Assets/ILRuntime.meta 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Assets/ILRuntime/Editor.meta 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Assets/ILRuntime/Editor/ILRuntimeCLRBinding.cs 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Assets/ILRuntime/Editor/ILRuntimeCLRBinding.cs.meta 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Assets/ILRuntime/Generated.meta 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Assets/ILRuntime/Generated/CLRBindings.cs 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Assets/ILRuntime/Generated/CLRBindings.cs.meta 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Assets/ILRuntime/Generated/Singleton_1_ModelCenter_Binding.cs 47 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Assets/ILRuntime/Generated/Singleton_1_ModelCenter_Binding.cs.meta 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Assets/ILRuntime/Generated/Snxxz_UI_LoginModel_Binding.cs 89 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Assets/ILRuntime/Generated/Snxxz_UI_LoginModel_Binding.cs.meta 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Assets/ILRuntime/Generated/Snxxz_UI_ModelCenter_Binding.cs 75 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Assets/ILRuntime/Generated/Snxxz_UI_ModelCenter_Binding.cs.meta 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Assets/ILRuntime/Generated/System_Collections_Generic_List_1_Type_Binding.cs 68 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Assets/ILRuntime/Generated/System_Collections_Generic_List_1_Type_Binding.cs.meta 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Assets/ILRuntime/Generated/System_Type_Binding.cs 52 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Assets/ILRuntime/Generated/System_Type_Binding.cs.meta 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Assets/ILRuntime/Src.meta 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Assets/ILRuntime/Src/ILRuntimeUtility.cs 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Assets/ILRuntime/Src/ILRuntimeUtility.cs.meta 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ProjectSettings/PackageManagerSettings.asset 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ProjectSettings/ProjectSettings.asset 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Assets/ILRuntime.meta
New file
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 5e82a6faac9009940aa3552f5aff64ad
folderAsset: yes
DefaultImporter:
  externalObjects: {}
  userData:
  assetBundleName:
  assetBundleVariant:
Assets/ILRuntime/Editor.meta
New file
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: a2619b749b100f847a3fdbddc509bebc
folderAsset: yes
DefaultImporter:
  externalObjects: {}
  userData:
  assetBundleName:
  assetBundleVariant:
Assets/ILRuntime/Editor/ILRuntimeCLRBinding.cs
New file
@@ -0,0 +1,31 @@
#if UNITY_EDITOR
using UnityEditor;
[System.Reflection.Obfuscation(Exclude = true)]
public class ILRuntimeCLRBinding
{
    [MenuItem("ILRuntime/自动分析生成CLR绑定")]
    static void GenerateCLRBindingByAnalysis()
    {
        //用新的分析热更dll调用引用来生成绑定代码
        ILRuntime.Runtime.Enviorment.AppDomain domain = new ILRuntime.Runtime.Enviorment.AppDomain();
        using (System.IO.FileStream fs = new System.IO.FileStream("Assets/ResourcesOut/logic/LogicProject.bytes", System.IO.FileMode.Open, System.IO.FileAccess.Read))
        {
            domain.LoadAssembly(fs);
            //Crossbind Adapter is needed to generate the correct binding code
            InitILRuntime(domain);
            ILRuntime.Runtime.CLRBinding.BindingCodeGenerator.GenerateBindingCode(domain, "Assets/ILRuntime/Generated");
        }
        DebugEx.Log("ILRuntime CLR绑定代码生成成功!");
        AssetDatabase.Refresh();
    }
    static void InitILRuntime(ILRuntime.Runtime.Enviorment.AppDomain domain)
    {
        //这里需要注册所有热更DLL中用到的跨域继承Adapter,否则无法正确抓取引用
        //domain.RegisterCrossBindingAdaptor(new MonoBehaviourAdapter());
        //domain.RegisterCrossBindingAdaptor(new CoroutineAdapter());
        //domain.RegisterCrossBindingAdaptor(new TestClassBaseAdapter());
        //domain.RegisterValueTypeBinder(typeof(Vector3), new Vector3Binder());
    }
}
#endif
Assets/ILRuntime/Editor/ILRuntimeCLRBinding.cs.meta
New file
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: b25613ceb76187a4f928518b9ac1dd22
MonoImporter:
  externalObjects: {}
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
Assets/ILRuntime/Generated.meta
New file
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: f4faeea7cf4f83446a609be8480c0e83
folderAsset: yes
DefaultImporter:
  externalObjects: {}
  userData:
  assetBundleName:
  assetBundleVariant:
Assets/ILRuntime/Generated/CLRBindings.cs
New file
@@ -0,0 +1,30 @@
using System;
using System.Collections.Generic;
using System.Reflection;
namespace ILRuntime.Runtime.Generated
{
    class CLRBindings
    {
        /// <summary>
        /// Initialize the CLR binding, please invoke this AFTER CLR Redirection registration
        /// </summary>
        public static void Initialize(ILRuntime.Runtime.Enviorment.AppDomain app)
        {
            System_Collections_Generic_List_1_Type_Binding.Register(app);
            System_Type_Binding.Register(app);
            Singleton_1_ModelCenter_Binding.Register(app);
            Snxxz_UI_ModelCenter_Binding.Register(app);
            Snxxz_UI_LoginModel_Binding.Register(app);
        }
        /// <summary>
        /// Release the CLR binding, please invoke this BEFORE ILRuntime Appdomain destroy
        /// </summary>
        public static void Shutdown(ILRuntime.Runtime.Enviorment.AppDomain app)
        {
        }
    }
}
Assets/ILRuntime/Generated/CLRBindings.cs.meta
New file
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 59028533431183f4fb3db5566e691347
MonoImporter:
  externalObjects: {}
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
Assets/ILRuntime/Generated/Singleton_1_ModelCenter_Binding.cs
New file
@@ -0,0 +1,47 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Runtime.InteropServices;
using ILRuntime.CLR.TypeSystem;
using ILRuntime.CLR.Method;
using ILRuntime.Runtime.Enviorment;
using ILRuntime.Runtime.Intepreter;
using ILRuntime.Runtime.Stack;
using ILRuntime.Reflection;
using ILRuntime.CLR.Utils;
namespace ILRuntime.Runtime.Generated
{
    unsafe class Singleton_1_ModelCenter_Binding
    {
        public static void Register(ILRuntime.Runtime.Enviorment.AppDomain app)
        {
            BindingFlags flag = BindingFlags.Public | BindingFlags.Instance | BindingFlags.Static | BindingFlags.DeclaredOnly;
            MethodBase method;
            Type[] args;
            Type type = typeof(global::Singleton<Snxxz.UI.ModelCenter>);
            args = new Type[]{};
            method = type.GetMethod("get_Instance", flag, null, args, null);
            app.RegisterCLRMethodRedirection(method, get_Instance_0);
        }
        static StackObject* get_Instance_0(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
        {
            ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
            StackObject* __ret = ILIntepreter.Minus(__esp, 0);
            var result_of_this_method = global::Singleton<Snxxz.UI.ModelCenter>.Instance;
            return ILIntepreter.PushObject(__ret, __mStack, result_of_this_method);
        }
    }
}
Assets/ILRuntime/Generated/Singleton_1_ModelCenter_Binding.cs.meta
New file
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: bd9e36eb517c4ab48b0eee40b2802f4c
MonoImporter:
  externalObjects: {}
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
Assets/ILRuntime/Generated/Snxxz_UI_LoginModel_Binding.cs
New file
@@ -0,0 +1,89 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Runtime.InteropServices;
using ILRuntime.CLR.TypeSystem;
using ILRuntime.CLR.Method;
using ILRuntime.Runtime.Enviorment;
using ILRuntime.Runtime.Intepreter;
using ILRuntime.Runtime.Stack;
using ILRuntime.Reflection;
using ILRuntime.CLR.Utils;
namespace ILRuntime.Runtime.Generated
{
    unsafe class Snxxz_UI_LoginModel_Binding
    {
        public static void Register(ILRuntime.Runtime.Enviorment.AppDomain app)
        {
            BindingFlags flag = BindingFlags.Public | BindingFlags.Instance | BindingFlags.Static | BindingFlags.DeclaredOnly;
            MethodBase method;
            Type[] args;
            Type type = typeof(Snxxz.UI.LoginModel);
            args = new Type[]{typeof(System.Int32)};
            method = type.GetMethod("EnterWorld", flag, null, args, null);
            app.RegisterCLRMethodRedirection(method, EnterWorld_0);
            args = new Type[]{typeof(global::H0101_tagServerPrepared)};
            method = type.GetMethod("AccessLogin", flag, null, args, null);
            app.RegisterCLRMethodRedirection(method, AccessLogin_1);
            args = new Type[]{};
            method = type.GetConstructor(flag, null, args, null);
            app.RegisterCLRMethodRedirection(method, Ctor_0);
        }
        static StackObject* EnterWorld_0(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
        {
            ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
            StackObject* ptr_of_this_method;
            StackObject* __ret = ILIntepreter.Minus(__esp, 2);
            ptr_of_this_method = ILIntepreter.Minus(__esp, 1);
            System.Int32 @_type = ptr_of_this_method->Value;
            ptr_of_this_method = ILIntepreter.Minus(__esp, 2);
            Snxxz.UI.LoginModel instance_of_this_method = (Snxxz.UI.LoginModel)typeof(Snxxz.UI.LoginModel).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack));
            __intp.Free(ptr_of_this_method);
            instance_of_this_method.EnterWorld(@_type);
            return __ret;
        }
        static StackObject* AccessLogin_1(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
        {
            ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
            StackObject* ptr_of_this_method;
            StackObject* __ret = ILIntepreter.Minus(__esp, 2);
            ptr_of_this_method = ILIntepreter.Minus(__esp, 1);
            global::H0101_tagServerPrepared @_serverInfo = (global::H0101_tagServerPrepared)typeof(global::H0101_tagServerPrepared).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack));
            __intp.Free(ptr_of_this_method);
            ptr_of_this_method = ILIntepreter.Minus(__esp, 2);
            Snxxz.UI.LoginModel instance_of_this_method = (Snxxz.UI.LoginModel)typeof(Snxxz.UI.LoginModel).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack));
            __intp.Free(ptr_of_this_method);
            instance_of_this_method.AccessLogin(@_serverInfo);
            return __ret;
        }
        static StackObject* Ctor_0(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
        {
            ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
            StackObject* __ret = ILIntepreter.Minus(__esp, 0);
            var result_of_this_method = new Snxxz.UI.LoginModel();
            return ILIntepreter.PushObject(__ret, __mStack, result_of_this_method);
        }
    }
}
Assets/ILRuntime/Generated/Snxxz_UI_LoginModel_Binding.cs.meta
New file
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 75c9406bbce8d284587ea3d07c69416b
MonoImporter:
  externalObjects: {}
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
Assets/ILRuntime/Generated/Snxxz_UI_ModelCenter_Binding.cs
New file
@@ -0,0 +1,75 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Runtime.InteropServices;
using ILRuntime.CLR.TypeSystem;
using ILRuntime.CLR.Method;
using ILRuntime.Runtime.Enviorment;
using ILRuntime.Runtime.Intepreter;
using ILRuntime.Runtime.Stack;
using ILRuntime.Reflection;
using ILRuntime.CLR.Utils;
namespace ILRuntime.Runtime.Generated
{
    unsafe class Snxxz_UI_ModelCenter_Binding
    {
        public static void Register(ILRuntime.Runtime.Enviorment.AppDomain app)
        {
            MethodBase method;
            Type[] args;
            Type type = typeof(Snxxz.UI.ModelCenter);
            Dictionary<string, List<MethodInfo>> genericMethods = new Dictionary<string, List<MethodInfo>>();
            List<MethodInfo> lst = null;
            foreach(var m in type.GetMethods())
            {
                if(m.IsGenericMethodDefinition)
                {
                    if (!genericMethods.TryGetValue(m.Name, out lst))
                    {
                        lst = new List<MethodInfo>();
                        genericMethods[m.Name] = lst;
                    }
                    lst.Add(m);
                }
            }
            args = new Type[]{typeof(Snxxz.UI.LoginModel)};
            if (genericMethods.TryGetValue("GetModel", out lst))
            {
                foreach(var m in lst)
                {
                    if(m.MatchGenericParameters(args, typeof(Snxxz.UI.LoginModel)))
                    {
                        method = m.MakeGenericMethod(args);
                        app.RegisterCLRMethodRedirection(method, GetModel_0);
                        break;
                    }
                }
            }
        }
        static StackObject* GetModel_0(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
        {
            ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
            StackObject* ptr_of_this_method;
            StackObject* __ret = ILIntepreter.Minus(__esp, 1);
            ptr_of_this_method = ILIntepreter.Minus(__esp, 1);
            Snxxz.UI.ModelCenter instance_of_this_method = (Snxxz.UI.ModelCenter)typeof(Snxxz.UI.ModelCenter).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack));
            __intp.Free(ptr_of_this_method);
            var result_of_this_method = instance_of_this_method.GetModel<Snxxz.UI.LoginModel>();
            return ILIntepreter.PushObject(__ret, __mStack, result_of_this_method);
        }
    }
}
Assets/ILRuntime/Generated/Snxxz_UI_ModelCenter_Binding.cs.meta
New file
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 2a65c6ac7ba1fc94493a7fb7fbfc3f90
MonoImporter:
  externalObjects: {}
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
Assets/ILRuntime/Generated/System_Collections_Generic_List_1_Type_Binding.cs
New file
@@ -0,0 +1,68 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Runtime.InteropServices;
using ILRuntime.CLR.TypeSystem;
using ILRuntime.CLR.Method;
using ILRuntime.Runtime.Enviorment;
using ILRuntime.Runtime.Intepreter;
using ILRuntime.Runtime.Stack;
using ILRuntime.Reflection;
using ILRuntime.CLR.Utils;
namespace ILRuntime.Runtime.Generated
{
    unsafe class System_Collections_Generic_List_1_Type_Binding
    {
        public static void Register(ILRuntime.Runtime.Enviorment.AppDomain app)
        {
            BindingFlags flag = BindingFlags.Public | BindingFlags.Instance | BindingFlags.Static | BindingFlags.DeclaredOnly;
            MethodBase method;
            Type[] args;
            Type type = typeof(System.Collections.Generic.List<System.Type>);
            args = new Type[]{typeof(System.Type)};
            method = type.GetMethod("Add", flag, null, args, null);
            app.RegisterCLRMethodRedirection(method, Add_0);
            args = new Type[]{};
            method = type.GetConstructor(flag, null, args, null);
            app.RegisterCLRMethodRedirection(method, Ctor_0);
        }
        static StackObject* Add_0(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
        {
            ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
            StackObject* ptr_of_this_method;
            StackObject* __ret = ILIntepreter.Minus(__esp, 2);
            ptr_of_this_method = ILIntepreter.Minus(__esp, 1);
            System.Type @item = (System.Type)typeof(System.Type).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack));
            __intp.Free(ptr_of_this_method);
            ptr_of_this_method = ILIntepreter.Minus(__esp, 2);
            System.Collections.Generic.List<System.Type> instance_of_this_method = (System.Collections.Generic.List<System.Type>)typeof(System.Collections.Generic.List<System.Type>).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack));
            __intp.Free(ptr_of_this_method);
            instance_of_this_method.Add(@item);
            return __ret;
        }
        static StackObject* Ctor_0(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
        {
            ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
            StackObject* __ret = ILIntepreter.Minus(__esp, 0);
            var result_of_this_method = new System.Collections.Generic.List<System.Type>();
            return ILIntepreter.PushObject(__ret, __mStack, result_of_this_method);
        }
    }
}
Assets/ILRuntime/Generated/System_Collections_Generic_List_1_Type_Binding.cs.meta
New file
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: a0cfdb174b077c34297d8db368f0dfce
MonoImporter:
  externalObjects: {}
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
Assets/ILRuntime/Generated/System_Type_Binding.cs
New file
@@ -0,0 +1,52 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Runtime.InteropServices;
using ILRuntime.CLR.TypeSystem;
using ILRuntime.CLR.Method;
using ILRuntime.Runtime.Enviorment;
using ILRuntime.Runtime.Intepreter;
using ILRuntime.Runtime.Stack;
using ILRuntime.Reflection;
using ILRuntime.CLR.Utils;
namespace ILRuntime.Runtime.Generated
{
    unsafe class System_Type_Binding
    {
        public static void Register(ILRuntime.Runtime.Enviorment.AppDomain app)
        {
            BindingFlags flag = BindingFlags.Public | BindingFlags.Instance | BindingFlags.Static | BindingFlags.DeclaredOnly;
            MethodBase method;
            Type[] args;
            Type type = typeof(System.Type);
            args = new Type[]{typeof(System.RuntimeTypeHandle)};
            method = type.GetMethod("GetTypeFromHandle", flag, null, args, null);
            app.RegisterCLRMethodRedirection(method, GetTypeFromHandle_0);
        }
        static StackObject* GetTypeFromHandle_0(ILIntepreter __intp, StackObject* __esp, IList<object> __mStack, CLRMethod __method, bool isNewObj)
        {
            ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
            StackObject* ptr_of_this_method;
            StackObject* __ret = ILIntepreter.Minus(__esp, 1);
            ptr_of_this_method = ILIntepreter.Minus(__esp, 1);
            System.RuntimeTypeHandle @handle = (System.RuntimeTypeHandle)typeof(System.RuntimeTypeHandle).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack));
            __intp.Free(ptr_of_this_method);
            var result_of_this_method = System.Type.GetTypeFromHandle(@handle);
            return ILIntepreter.PushObject(__ret, __mStack, result_of_this_method);
        }
    }
}
Assets/ILRuntime/Generated/System_Type_Binding.cs.meta
New file
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 948cb731d6c015644a119379fa8834cc
MonoImporter:
  externalObjects: {}
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
Assets/ILRuntime/Src.meta
New file
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 160d44d5c8f210a4a8f72a7d2167b131
folderAsset: yes
DefaultImporter:
  externalObjects: {}
  userData:
  assetBundleName:
  assetBundleVariant:
Assets/ILRuntime/Src/ILRuntimeUtility.cs
New file
@@ -0,0 +1,39 @@
using System.IO;
using ILRuntime.Mono.Cecil.Pdb;
using ILRuntime.Runtime.Enviorment;
class ILRuntimeUtility : SingletonMonobehaviour<ILRuntimeUtility>
{
    private AppDomain appdomain;
    public void Init()
    {
        LoadILRuntime();
    }
    void LoadILRuntime()
    {
        appdomain = new AppDomain();
        var dllPath = string.Empty;
        var pdbPath = string.Empty;
        if (AssetSource.refdataFromEditor)
        {
            dllPath = ResourcesPath.ResourcesOutAssetPath + "logic/LogicProject.bytes";
            pdbPath = ResourcesPath.ResourcesOutAssetPath + "logic/LogicProject.pdb";
        }
        else
        {
            dllPath = AssetVersionUtility.GetAssetFilePath("logic/LogicProject.bytes");
            pdbPath = AssetVersionUtility.GetAssetFilePath("logic/LogicProject.pdb");
        }
        var fs = new FileStream(dllPath, FileMode.Open);
        var p = new FileStream(pdbPath, FileMode.Open);
        appdomain.LoadAssembly(fs, p, new PdbReaderProvider());
    }
    public void LaunchStart()
    {
        appdomain.Invoke("LogicProject.ILTest", "Test", null, null);
    }
}
Assets/ILRuntime/Src/ILRuntimeUtility.cs.meta
New file
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 90478c61a13322d4690790d16460c054
MonoImporter:
  externalObjects: {}
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
ProjectSettings/PackageManagerSettings.asset
@@ -20,19 +20,26 @@
    m_Url: https://packages.unity.com
    m_Scopes: []
    m_IsDefault: 1
  - m_Id: scoped:ILRuntime
    m_Name: ILRuntime
    m_Url: https://registry.npmjs.org
    m_Scopes:
    - com.ourpalm
    m_IsDefault: 0
  m_UserSelectedRegistryName: 
  m_UserAddingNewScopedRegistry: 0
  m_RegistryInfoDraft:
    m_ErrorMessage: 
    m_Original:
      m_Id:
      m_Name:
      m_Url:
      m_Scopes: []
      m_Id: scoped:ILRuntime
      m_Name: ILRuntime
      m_Url: https://registry.npmjs.org
      m_Scopes:
      - com.ourpalm
      m_IsDefault: 0
    m_Modified: 0
    m_Name:
    m_Url:
    m_Name: ILRuntime
    m_Url: https://registry.npmjs.org
    m_Scopes:
    -
    - com.ourpalm
    m_SelectedScopeIndex: 0
ProjectSettings/ProjectSettings.asset
@@ -791,7 +791,7 @@
  il2cppCompilerConfiguration: {}
  managedStrippingLevel: {}
  incrementalIl2cppBuild: {}
  allowUnsafeCode: 0
  allowUnsafeCode: 1
  additionalIl2CppArgs: 
  scriptingRuntimeVersion: 1
  gcIncremental: 0