Esempio n. 1
0
    // this method is called when the attack kills the target
    IEnumerator AttackAndKill()
    {
        GameObject mainCamera = GameObject.Find("Main Camera");

        AudioSource[] audios = mainCamera.GetComponents <AudioSource>();
        GameObject    enemy;

        A1_Button.SetActive(false);
        A2_Button.SetActive(false);
        A3_Button.SetActive(false);
        Attack_Button.SetActive(false);
        playerAttack = true;
        player.GetComponent <Animation>().Play("Attack");
        yield return(new WaitForSeconds(.5f));

        playerAttack = false;
        if (EnemyType == 1)
        {
            enemy = GameObject.Find("Cha_Slime battle (Clone)");
            enemy.GetComponent <Animation>().Play("Dead");
        }
        else if (EnemyType == 3)
        {
            enemy = GameObject.Find("Mean Looking Troll(Clone)");
            audios[4].Play();
            trollCount--;
            enemyHealthBar.GetComponent <HealthBarManager>().InitHealthBar(enemyRef, 0);
            yield return(new WaitForSeconds(.5f));

            if (trollCount == 2)
            {
                enemyHealth = Random.Range(7, 11);
            }
            if (trollCount == 1)
            {
                enemyHealth = 14;
            }
            enemyHealthBar.GetComponent <HealthBarManager>().InitHealthBar(enemyRef, enemyHealth);
            if (trollCount != 0)
            {
                enemy.transform.localScale += new Vector3(.2f, .2f, .2f);
                assignButtons();
                A1_Button.SetActive(true);
                A2_Button.SetActive(true);
                A3_Button.SetActive(true);
                Attack_Button.SetActive(true);
            }
        }
        else if (EnemyType == 4)
        {
            enemy = GameObject.Find("KittenBattle(Clone)");
            // play meow sound
            trollCount--;
            enemyHealthBar.GetComponent <HealthBarManager>().InitHealthBar(enemyRef, 0);
            yield return(new WaitForSeconds(.5f));

            if (trollCount == 2)
            {
                enemyHealth = 3;
            }
            else if (trollCount == 1)
            {
                enemyHealth = 4;
            }
            enemyHealthBar.GetComponent <HealthBarManager>().InitHealthBar(enemyRef, enemyHealth);
            if (trollCount != 0)
            {
                assignButtons();
                A1_Button.SetActive(true);
                A2_Button.SetActive(true);
                A3_Button.SetActive(true);
                Attack_Button.SetActive(true);
            }
        }
        tutorial.SetActive(true);
        audios[1].Play();
        if ((EnemyType != 3 && EnemyType != 4) || trollCount == 0)
        {
            audios[2].volume = 0;
            audios[6].volume = 0;
            audios[3].Play();
            enemyHealthBar.GetComponent <HealthBarManager>().InitHealthBar(enemyRef, 0);
            yield return(new WaitForSeconds(2));

            if (EnemyType == 1)
            {
                enemy = GameObject.Find("Cha_Slime battle (Clone)");
                Destroy(enemy);
            }
            else if (EnemyType == 2)
            {
                enemy = GameObject.Find("Battle jack(Clone)");
                Destroy(enemy);
            }
            else if (EnemyType == 3)
            {
                enemy = GameObject.Find("Mean Looking Troll(Clone)");
                Destroy(enemy);
                audios[5].Play();
            }
            else if (EnemyType == 4)
            {
                enemy = GameObject.Find("KittenBattle(Clone)");
                Destroy(enemy);
                QuestDelegate.startQuestForZone(1);
            }

            yield return(new WaitForSeconds(2));

            int[] playerActions = new int[actions.Count];
            for (int i = 0; i < actions.Count; i++)
            {
                playerActions[i] = actions[i];
            }

            if (playerHealth == 3)
            {
                postBattle.GetComponent <PostBattleMenu>().InitPostBattleMenuWith(3, playerActions);
                QuestLogManager.masteryQuestStatusUpdated(1);
            }
            else if (playerHealth == 2)
            {
                postBattle.GetComponent <PostBattleMenu>().InitPostBattleMenuWith(2, playerActions);
            }
            else if (playerHealth == 1)
            {
                postBattle.GetComponent <PostBattleMenu>().InitPostBattleMenuWith(1, playerActions);
            }
        }
    }