예제 #1
0
    public override void ProcessAction()
    {
        //Bouge le curseur
        if (Input.GetKeyDown(KeyCode.DownArrow))
        {
            if (indexSelection < curUnit.KnownSkills.Count - 2)
            {
                choixMenu[indexSelection].color = couleurBase;
                ++indexSelection;
                ++indexSelection;
                choixMenu[indexSelection].color = couleurSelection;
            }
            else if (indexSelection < curUnit.KnownSkills.Count - 1)
            {
                choixMenu[indexSelection].color = couleurBase;
                ++indexSelection;
                choixMenu[indexSelection].color = couleurSelection;
            }
        }
        else if (Input.GetKeyDown(KeyCode.UpArrow))
        {
            if (indexSelection >= 2)
            {
                choixMenu[indexSelection].color = couleurBase;
                --indexSelection;
                --indexSelection;
                choixMenu[indexSelection].color = couleurSelection;
            }
        }
        else if (Input.GetKeyDown(KeyCode.RightArrow))
        {
            if (indexSelection < curUnit.KnownSkills.Count - 2)
            {
                choixMenu[indexSelection].color = couleurBase;
                ++indexSelection;
                choixMenu[indexSelection].color = couleurSelection;
            }
            else if (indexSelection == curUnit.KnownSkills.Count - 2)
            {
                choixMenu[indexSelection].color = couleurBase;
                --indexSelection;
                choixMenu[indexSelection].color = couleurSelection;
            }
        }
        else if (Input.GetKeyDown(KeyCode.LeftArrow))
        {
            if (indexSelection > 0)
            {
                choixMenu[indexSelection].color = couleurBase;
                --indexSelection;
                choixMenu[indexSelection].color = couleurSelection;
            }
        }

        //Confirm le choix
        if (Input.GetKeyDown(KeyCode.Return))
        {
            if (curUnit.curHp > curUnit.KnownSkills[indexSelection].hpCost && curUnit.curMana >= curUnit.KnownSkills[indexSelection].manaCost)
            {
                BattleEventHandler.UseSkillState(curUnit.KnownSkills[indexSelection]);
            }
        }

        //Cancel action
        if (Input.GetKeyDown(KeyCode.Escape))
        {
            BattleEventHandler.ChangeState(BattleEventHandler.ActionState.ACTION);
        }
    }