예제 #1
0
    //------------------------------------------------------------------------------------------------ Funkcja gdy dochodzi do kolizji

    void OnTriggerEnter2D(Collider2D OrcCollider) //Kolizja z Orkiem
    {
        if (OrcCollider.gameObject.tag == "Enemy")
        {
            if (!isColliding)
            {
                IsCollidingWithEnemy = true;
                SkryptOrk SO = OrcCollider.gameObject.GetComponent <SkryptOrk>(); // Odwołanie do skryptu Orka
                StartCoroutine(AttackPerSeconds(SO));
                attack = true;
                AnimacjaWojownika.SetBool("attack", attack);
            }
            isColliding = true;
        }
        else if (OrcCollider.gameObject.tag == "TowerEnemy")
        {
            if (!isColliding)
            {
                IsCollidingWithEnemy = true;
                TowerEnemy TE = OrcCollider.gameObject.GetComponent <TowerEnemy>(); // Odwoładnie do skryptu TowerEnemy
                StartCoroutine(AttackTowerPerSeconds(TE));
                attack = true;
                AnimacjaWojownika.SetBool("attack", attack);
            }
            isColliding = true;
        }
    }
예제 #2
0
    //--------------------------------------------------------------------------------------------------- Obrażenia co 1 sekunde (twierdza)

    IEnumerator AttackTowerPerSeconds(TowerEnemy TE)
    {
        while (valueOfAttacks < 999)
        {
            yield return(new WaitForSeconds(1.5f));

            AttackTower(TE);
            valueOfAttacks++;
        }
    }
예제 #3
0
 //---------------------------------------------------------------------------------------------------- Funkcja atakowania twierdzy
 void AttackTower(TowerEnemy TE)
 {
     TE.EnemyTowerHealth -= AttackWarrior;
 }