public static BehaviourLoopInstance RegisterBehaviourQueue <T>(string name) where T : BehaviourLoopInstance { BehaviourLoopInstance queue = (BehaviourLoopInstance)CreateComponentAsGO <T>(name); instance.behaviourQueues.Add(queue); return(queue); }
static void Init() { if (isInited) { return; } isInited = true; //Update manager init coreUpdateManagerGO = new GameObject(); coreUpdateManagerGO.name = "CoreUpdateManager"; DontDestroyOnLoad(coreUpdateManagerGO); #if UNITY_EDITOR && UPDATEMANAGER_SHOWLOOPOBJECTS #else coreUpdateManagerGO.hideFlags = HideFlags.DontSave | HideFlags.HideInHierarchy | HideFlags.HideInInspector | HideFlags.NotEditable; #endif instance = coreUpdateManagerGO.AddComponent <CoreUpdateManager>(); additionQueue = (WorkerLoop)CreateComponentAsGO <WorkerLoop>("additionQueue"); //removalQueue = (WorkerLoop)CreateComponentAsGO<WorkerLoop>("removalQueue"); }