private IEnumerator EnemyAbilityInstantTime()
    {
        EventManager.Instance.SetEnemyAbilityName(currentAbility.GetName()); // Set UI

        yield return(new WaitForSeconds(0.5f));

        // Attacker
        attacker.AttackAnimation(currentAbility);

        // Select target
        CharacterFriendly target = SelectRandomTarget();

        if (tutorial) // TODO: cleanup
        {
            target = friendlyCharacters[1];
        }

        audioSource.PlayOneShot(currentAbility.sound);
        currentAbility.effect(target, attacker);

        // EventManager.Instance.AbilityUsed(attacker.abilities[0].GetName());
        SpawnVisualEffect(target);

        yield return(new WaitForSeconds(1f));

        enemyCharacters[currentEnemyNr].CharacterDeselect(); // Deselect character

        SwitchTurn();                                        // Enemy Turn end
    }
Example #2
0
    private void Start()
    {
        icon1anim = abilityIcon1.GetComponent <Animator>();
        icon2anim = abilityIcon2.GetComponent <Animator>();

        character = GetComponent <CharacterFriendly>();
    }
    private IEnumerator DeselectTimer(CharacterFriendly character)
    {
        yield return(new WaitForSeconds(0.2f));

        currentCharacter = null;
        character.CharacterDeselect();
        EventManager.Instance.CloseFriendlyName();
        CameraMove.Instance.ReturnCamera();
    }
    private CharacterFriendly SelectRandomTarget()
    {
        CharacterFriendly target = null;
        int rand;

        while (target == null)
        {
            rand = Random.Range(0, friendlyCharacters.Count);
            if (friendlyCharacters[rand].isAlive)
            {
                target = friendlyCharacters[rand];
            }
        }
        return(target);
    }
Example #5
0
    private void SetupUI(Sprite[] sprites)
    {
        if (character == null)
        {
            character = GetComponent <CharacterFriendly>();
            icon1anim = abilityIcon1.GetComponent <Animator>();
            icon2anim = abilityIcon2.GetComponent <Animator>();
        }

        inputIcon.sprite    = sprites[character.characterNumber];
        characterName.text  = character.characterName;
        abilityIcon1.sprite = PartyController.Instance.abilitySet1[character.characterNumber].icon;
        abilityIcon1.SetNativeSize();
        icon1anim.SetInteger("ColorBW", 1);
        abilityIcon2.sprite = PartyController.Instance.abilitySet2[character.characterNumber].icon;
        abilityIcon2.SetNativeSize();
        icon2anim.SetInteger("ColorBW", 0);
    }