/// <summary>
    /// 角色选择处理
    /// </summary>
    public void HandleForSelectCharacter()
    {
        //如果没有在玩家回合 切没有在选择人物中则不处理
        UIMiniGameCombat uiMiniGameCombat = UIHandler.Instance.manager.GetUI <UIMiniGameCombat>(UIEnum.MiniGameCombat);

        if (MiniGameHandler.Instance.handlerForCombat.miniGameData.GetCombatStatus() != MiniGameCombatBean.MiniGameCombatStatusEnum.OurRound ||
            !uiMiniGameCombat.isSelecting)
        {
            return;
        }
        if (Input.GetButtonDown(InputInfo.Direction_Up) ||
            Input.GetButtonDown(InputInfo.Direction_Left)
            )
        {
            uiMiniGameCombat.uiForSelectCharacter.ChangeCharacter(-1);
        }
        if (Input.GetButtonDown(InputInfo.Direction_Right) ||
            Input.GetButtonDown(InputInfo.Direction_Down))
        {
            uiMiniGameCombat.uiForSelectCharacter.ChangeCharacter(1);
        }
        if (Input.GetButtonDown(InputInfo.Interactive_E) || Input.GetButtonDown(InputInfo.Confirm))
        {
            uiMiniGameCombat.uiForSelectCharacter.ConfirmSelect();
        }
        if (Input.GetButtonDown(InputInfo.Cancel))
        {
            uiMiniGameCombat.OpenCombatCommand();
            //开启选中特效
            MiniGameHandler.Instance.handlerForCombat.SelectCharacter(MiniGameHandler.Instance.handlerForCombat.miniGameData.GetRoundActionCharacter());
        }
    }
示例#2
0
    /// <summary>
    /// 回合准备
    /// </summary>
    public IEnumerator RoundForPre(MiniGameCharacterForCombatBean gameCharacterData)
    {
        //获取角色
        NpcAIMiniGameCombatCpt npcCpt = GetCharacter(gameCharacterData);

        //设置当前回合行动的角色
        miniGameData.SetRoundActionCharacter(npcCpt);
        //执行效果
        yield return(StartCoroutine(npcCpt.CombatEffectExecute()));

        //如果角色死亡
        if (gameCharacterData.characterCurrentLife <= 0)
        {
            StartNextRound();
        }
        else
        {
            //如果是敌方
            if (gameCharacterData.characterType == 0)
            {
                //电脑开始行动
                miniGameData.SetCombatStatus(MiniGameCombatStatusEnum.EnemyRound);
                npcCpt.OpenAI();
            }
            //如果是友方
            else if (gameCharacterData.characterType == 1)
            {
                //友方行动
                miniGameData.SetCombatStatus(MiniGameCombatStatusEnum.OurRound);
                uiMiniGameCombat.OpenCombatCommand();
            }
            //开启选中特效
            SelectCharacter(npcCpt);
        }
    }