private void OnLoadGuid() { if (!m_guidInit && !m_moduleStart) { ModuleMgr.Instance.AddModule <GuidNewModule>((byte)GameModuleTypes.GUID_MODULE, true); this.m_guidInit = false; this.m_moduleStart = true; } if (m_guidInit) { Debug.Log("Guid has init ===="); return; } if (this.IsFinish()) { Debug.Log("Guid Complete ===="); return; } EngineCoreEvents.UIEvent.ShowUIEvent.SafeInvoke(UIDefine.UI_GUID); for (int i = 0; i < ConfGuidNew.array.Count; i++) { ConfGuidNew guid = ConfGuidNew.array[i]; if (GetProgressByIndex(guid.groupId)) { continue; } GuidNewBase newBase = GuidNewFunctionFactory.Instance.CreateGuidById(guid.id); newBase.OnInitStart(); m_Guid.Add(guid.id, newBase); } this.m_guidInit = true; }
public override void OnInit(string[] param) { base.OnInit(param); if (param.Length == 1) { id = long.Parse(param[0]); ConfGuidNew confguid = ConfGuidNew.Get(id); index = confguid.groupId; } }
public GuidNewBase CreateGuidById(long guidID) { ConfGuidNew confGuid = ConfGuidNew.Get(guidID); if (confGuid == null) { return(null); } Type guidType = guidTypes[(GuidEnum)confGuid.type]; GuidNewBase baseGuid = Activator.CreateInstance(guidType) as GuidNewBase; baseGuid.SetGuidID(guidID); return(baseGuid); }
public void SetGuidID(long currentID) { this.m_currentID = currentID; m_currentConf = ConfGuidNew.Get(m_currentID); int preFuncCount = 0; if (m_currentConf.preFuncId != null) { preFuncCount = m_currentConf.preFuncId.Length; } if (m_currentConf.initFuncIds != null) { int initFuncCount = m_currentConf.initFuncIds.Length; for (int i = 0; i < initFuncCount; i++) { GuidNewFunctionBase initFunc = GuidNewFunctionFactory.Instance.CreateFunctionById(m_currentConf.initFuncIds[i]); initFunc.SetGuidBase(this); initFunc.OnRun(); } } m_preFunc = new GuidNewPreFunctionBase[preFuncCount]; for (int i = 0; i < preFuncCount; i++) { m_preFunc[i] = GuidNewFunctionFactory.Instance.CreatePreFunctionById(m_currentConf.preFuncId[i]); } int executeFuncCount = m_currentConf.funcIds.Length; m_func = new GuidNewFunctionBase[executeFuncCount]; for (int i = 0; i < executeFuncCount; i++) { m_func[i] = GuidNewFunctionFactory.Instance.CreateFunctionById(m_currentConf.funcIds[i]); m_func[i].SetGuidBase(this); } }