Пример #1
0
 public void AddNotifys(MainUIThread mono)
 {
     main_mono = mono;
     if (main_mono != null)
     {
         main_mono.CallBack.Add(eMonoMessageType.Awake, instance.Awake);
         main_mono.CallBack.Add(eMonoMessageType.OnEnable, instance.OnEnable);
         main_mono.CallBack.Add(eMonoMessageType.Start, instance.Start);
         main_mono.CallBack.Add(eMonoMessageType.Update, instance.Update);
         main_mono.CallBack.Add(eMonoMessageType.OnDestory, instance.OnDestory);
         main_mono.CallBack.Add(eMonoMessageType.FixedUpdate, instance.FixedUpdate);
         main_mono.CallBack.Add(eMonoMessageType.OnDisable, instance.OnDisable);
         main_mono.CallBack.Add(eMonoMessageType.OnGUI, instance.OnGUI);
     }
 }
Пример #2
0
 public static MainUIThread GetInstance()
 {
     if (ui == null)
     {
         ui = GameObject.FindObjectOfType(typeof(MainUIThread)) as MainUIThread;
         if (!ui)
         {
             GameObject obj = new GameObject("_MainUIThread");
             GameObject.DontDestroyOnLoad(obj);
             ui = obj.AddComponent <MainUIThread>();
             ICLRType program           = LSharpModule.env.GetType("GameUI.Program");
             IMethod  main              = program.GetMethod("GetInstance", MethodParamList.constEmpty());
             object   program_object    = main.Invoke(ThreadContext.activeContext, null, null);
             IMethod  method_AddNotifys = program.GetMethod("AddNotifys", MethodParamList.Make(LSharpModule.env.GetType(typeof(MainUIThread))));
             method_AddNotifys.Invoke(ThreadContext.activeContext, program_object, new object[] { ui });
         }
     }
     return(ui);
 }
Пример #3
0
    IEnumerator WWWLoad(string name)
    {
        WWW www = new WWW(path + name + dll_suffix);

        yield return(www);

        if (www.isDone)
        {
            System.IO.MemoryStream msDll = new System.IO.MemoryStream(www.bytes);
            www = new WWW(path + name + pdb_suffix);
            yield return(www);

            if (www.isDone)
            {
                System.IO.MemoryStream msPdb = new System.IO.MemoryStream(www.bytes);
                env.LoadModule(msDll, msPdb, new Mono.Cecil.Pdb.PdbReaderProvider());
                Debug.Log("LoadModule MyHelloWorld.dll is done.");
                MainUIThread.GetInstance();
                Application.LoadLevel("Hall");
            }
        }
    }