using UnityEngine; // 只有主线战斗用到 所以这里可能会放一些主线的特殊处理 public class HandModeOperationAgent : IOperationAgent { protected StoryBattleField storyBattleField; bool autoNext = false; //预存玩家的下一次攻击,让下一次自动执行,因为玩家点的时机不一定是刚好的可攻击状态 public HandModeOperationAgent(BattleField battleField) : base(battleField) { storyBattleField = battleField as StoryBattleField; } public override void Run() { base.Run(); if (autoNext) { if (storyBattleField.RequestFight()) { //直到成功为止 autoNext = false; } } } // 通过主界面的按钮推动(调用)DoNext public override void DoNext() { base.DoNext(); if (!storyBattleField.RequestFight()) { autoNext = true; } } }