| 12345678910111213141516171819202122232425262728293031323334353637383940 | using System;using Fort23.Core;using Fort23.Mono;using GameLogic.Combat.CombatTool;using GameLogic.CombatScenesTool;using UnityEngine;using Utility;namespace GameLogic.Combat{    public class CombatDrive : Singleton<CombatDrive>    {        public CombatController CombatController;        public async CTask AddCombatController(CombatController combatController)        {            CombatEquipFallManager.Instance.Dispose();            CombatEquipFallManager.Instance.Init();            CTaskAwaitBuffer cTaskAwaitBuffer = new CTaskAwaitBuffer();            cTaskAwaitBuffer.AddTask(CombatHPPanel.OpenCombatHPPanel());            cTaskAwaitBuffer.AddTask(ShowTextPanel.OpenShowTextPanel());            CombatShowTextPanel.OpenCombatShowTextPanel(cTaskAwaitBuffer);            cTaskAwaitBuffer.AddTask(ShowItemMoveToTargetPanel.OpenShowItemMoveToTargetPanel());            await cTaskAwaitBuffer.WaitAll();            this.CombatController = combatController;            await CombatController.InitCombat();            StaticUpdater.Instance.AddRenderUpdateCallBack(Update);        }        public void Update()        {            CombatController.Update(Time.deltaTime);        }        public void Dispose()        {            StaticUpdater.Instance.RemoveRenderUpdateCallBack(Update);        }    }}
 |