| | |
| | | using UnityEngine; |
| | | |
| | | // 只有主线战斗用到 所以这里可能会放一些主线的特殊处理 |
| | | |
| | | public class HandModeOperationAgent : IOperationAgent |
| | | { |
| | | protected StoryBattleField storyBattleField; |
| | | |
| | | public HandModeOperationAgent(BattleField battleField) : base(battleField) |
| | | { |
| | | |
| | | storyBattleField = battleField as StoryBattleField; |
| | | } |
| | | |
| | | public override void Run() |
| | |
| | | { |
| | | base.DoNext(); |
| | | |
| | | // 当前没有在播放战斗录像 |
| | | if (!battleField.recordPlayer.IsPlaying()) |
| | | { |
| | | // ask for next action |
| | | // 没有下一个包可以发了 |
| | | if (!BattleManager.Instance.DistributeNextPackage()) |
| | | { |
| | | // 请求下一个战斗包 或者检查战斗是否结束 |
| | | // ReqType; // 0-停止战斗回城;1-设置消耗倍值;2-挑战关卡小怪;3-挑战关卡boss;4-继续战斗; |
| | | |
| | | // 如果在休息 点一下之后应该是挑战小怪或者挑战关卡 |
| | | // 如果在战斗 战斗是否结束/战斗持续中 结束应该是挑战下一关 持续应该是继续战斗 |
| | | |
| | | |
| | | // 检查一下锤子的消耗 |
| | | //FightPoint 用于记录消耗战锤倍数,小于等于1时默认1倍,大于1时为对应消耗倍值,0418刷新类型22 |
| | | ulong costRate = PlayerDatas.Instance.GetPlayerDataByType(PlayerDataType.FightPoint); |
| | | |
| | | int cost = (int)(costRate > 1 ? costRate : 1) * 1; // 1是默认消耗 |
| | | |
| | | |
| | | // 检查一下锤子的消耗 |
| | | if (!ItemLogicUtility.CheckItemCount(PackType.Item, BattleConst.BattlePointItemID, cost, true)) |
| | | { |
| | | return; |
| | | } |
| | | |
| | | byte reqType; |
| | | |
| | | if (storyBattleField.battleState == StoryBattleState.Break) |
| | | { |
| | | reqType = 2; |
| | | } |
| | | else if (storyBattleField.battleState == StoryBattleState.Battle) |
| | | { |
| | | if (battleField.IsBattleEnd()) |
| | | { |
| | | reqType = 2; // 继续挑战小怪 |
| | | } |
| | | else |
| | | { |
| | | reqType = 4; // 继续战斗 |
| | | } |
| | | } |
| | | else |
| | | { |
| | | Debug.LogError("unknown battle state"); |
| | | return; |
| | | } |
| | | |
| | | BattleManager.Instance.MainFightRequest(reqType); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | Debug.LogError("action doesnt finish, wait a moment please"); |
| | | } |
| | | } |
| | | |
| | | |
| | | } |