Ejemplo n.º 1
0
        public static void Awake(HotScriptAdapter adapter)
        {
            Type      scriptType = Type.GetType(adapter.targetClass);
            HotScript behaviour  = (HotScript)Activator.CreateInstance(scriptType);

            typeof(HotScript).GetProperty(nameof(HotScript.gameObject)
                                          , BindingFlags.Instance | BindingFlags.Public)
            .SetValue(behaviour, adapter.gameObject);
            adapter.targetObj = behaviour;
            foreach (var info in adapter.infos)
            {
                var field = scriptType.GetField(info.fieldName);
                var value = GetFieldValue(field, info);
                field.SetValue(behaviour, value);
            }
            ins.hotScripts.Add(adapter, behaviour);
            behaviour.Awake();
        }
Ejemplo n.º 2
0
 public static void OnDestroy(HotScriptAdapter adapter)
 {
     ins.hotScripts[adapter].OnDestroy();
     ins.hotScripts.Remove(adapter);
 }
Ejemplo n.º 3
0
 public static void OnDisable(HotScriptAdapter adapter)
 {
     ins.hotScripts[adapter].OnDisable();
 }
Ejemplo n.º 4
0
 public static void OnGUI(HotScriptAdapter adapter)
 {
     ins.hotScripts[adapter].OnGUI();
 }
Ejemplo n.º 5
0
 public static void FixedUpdate(HotScriptAdapter adapter)
 {
     ins.hotScripts[adapter].FixedUpdate();
 }
Ejemplo n.º 6
0
 public static void LateUpdate(HotScriptAdapter adapter)
 {
     ins.hotScripts[adapter].LateUpdate();
 }
Ejemplo n.º 7
0
 public static void Start(HotScriptAdapter adapter)
 {
     ins.hotScripts[adapter].Start();
 }