Esempio n. 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;
        }
    }
Esempio n. 2
0
    //---------------------------------------------------------------------------------------------------- Obrażenia co 1 sekunde (ork)

    IEnumerator AttackPerSeconds(SkryptOrk SO)
    {
        while (valueOfAttacks < 999)
        {
            yield return(new WaitForSeconds(1.5f));

            DoDmg(SO);
            valueOfAttacks++;
        }
    }
    void PoruszaniePrawo()
    {
        SkryptWojownik SW = GameObject.FindObjectOfType <SkryptWojownik>();
        SkryptOrk      SO = GameObject.FindObjectOfType <SkryptOrk>();

        if (gameObject.CompareTag("Friend"))
        {
            if (!SW.IsCollidingWithEnemy)
            {
                transform.Translate(Vector2.right * MovementSpeed * Time.deltaTime);
            }
        }
        else if (gameObject.CompareTag("Enemy"))
        {
            if (!SO.IsCollidingWithFriend)
            {
                transform.Translate(Vector2.right * -MovementSpeed * Time.deltaTime);
            }
        }
    }
Esempio n. 4
0
    //--------------------------------------------------------------------------------------------------- Funkcja Zadawania Obrażeń

    void DoDmg(SkryptOrk SO)
    {
        SO.HealthOrc -= AttackWarrior;
    }