public void DisplayActionMenu(CharacterBattler character)
    {
        Battler = character;

        for (int i = 0; i < 4; i++)
        {
            var battler    = BattleController.Instance.Party[i];
            var statusText = StatusTexts[i];

            statusText.Name.text = battler.Character.Base.CharacterName;

            if (battler == Battler)
            {
                statusText.Name.text     = ">" + statusText.Name.text;
                statusText.Panel.enabled = true;
            }
            else
            {
                statusText.Panel.enabled = false;
            }


            statusText.Life.text  = $"{battler.CurrentHp}/{battler.Stats.MaxHp} - {battler.CurrentAp} AP";
            statusText.Life.color = LifeToColor(battler.CurrentHp, battler.Stats.MaxHp);
        }

        ShowActionMenu();
    }
        public async Task Play(CharacterBattler battler)
        {
            foreach (var info in Animations)
            {
                await battler.AsyncPlayAndWait(info);

                await Task.Delay((int)(animationDelay * 1000));
            }
        }
Пример #3
0
    public async Task <Turn> GetTurn(CharacterBattler character)
    {
        Turn = null;

        GameController.Instance.QueueAction(() =>
        {
            CharacterActionMenu.DisplayActionMenu(character);
            CharacterActionMenu.transform.SetAsLastSibling();
        });

        while (Turn == null)
        {
            await Task.Delay(50);
        }

        return(Turn);
    }
    IEnumerator rotina(CharacterBattler partyMember)
    {
        yield return(partyMember.PlayAndWait(CharacterBattler.CharacterBattlerAnimation.Attack));

        Debug.Log(partyMember.Character.Base.CharacterName + " terminou");
    }
 public Task Play(CharacterBattler battler)
 {
     return(battler.AsyncPlayAndWait(Animation));
 }
 protected virtual void Awake()
 {
     Animator         = GetComponent <Animator>();
     CharacterBattler = GetComponent <CharacterBattler>();
 }