예제 #1
0
        protected override void Purge()
        {
            HotFixerInteractor?.Release();
            HotFixerInteractor = default;

            Agent = default;
        }
예제 #2
0
        sealed public override void Init()
        {
            base.Init();

            mUIHotFixer = this;

            HotFixerInteractor interacter = UIInteracterCreater?.Invoke();

            interacter.SetUIModular(mUIHotFixer);

            if (UIInteracterHandler != default)
            {
                mUI.Remove(UIModularHandler);
                mUI.Add(UIInteracterHandler);
                "log: UI {0} add modular handler (UIInteracterHandler), UI type is ".Log(mUI.ToString());
            }
            else
            {
            }

            mBridge = UIAgent.Bridge;
            mBridge.SetHotFixInteractor(interacter);

            ILRuntimeUtils.InvokeMethodILR(mUIHotFixer, UIAgent.UIModularName, "UIInit", 0);
        }
예제 #3
0
 public void SetHotFixInteractor(HotFixerInteractor target)
 {
     HotFixerInteractor = target;
     ILRuntimeUtils.InvokeMethodILR(target, Agent.UIInteractorName, "InitInteractor", 2, this, Agent);
 }
예제 #4
0
 public override void UpdateUI()
 {
     HotFixerInteractor?.UIChangingTask?.UpdateUITasks();
     HotFixerInteractor?.UpdateInteractor();
 }