Example #1
0
    //CODE DEALING WITH PLAYER COMBAT STAGE

    public void HealButton()
    {
        EnemyChange enemyChange = GameObject.FindWithTag("EnemyChange").GetComponent <EnemyChange>();

        if (enemyChange.IsLevel1 == true || enemyChange.IsLevel3 == true)//This code will only run during lvl 1 and 3
        {
            Player     player     = GameObject.FindWithTag("Player").GetComponent <Player>();
            DiceScript diceScript = GameObject.FindWithTag("Dice").GetComponent <DiceScript>();

            player.currentHealth               = 10f;
            playerfillAmountHealth             = player.currentHealth / player.maxHealth;
            diceScript.playerHealth.fillAmount = player.currentHealth / 1;

            PlayerHealGlow.SetActive(true);
            Invoke("PlayerGlowDisappear", 0.5f);

            Invoke("EnemyTurnChange", 2f);
            PlayerCanAttack = false;

            if (0 < player.defenceNumber)
            {
                player.defenceNumber  -= 1;
                playerDefenceText.text = player.defenceNumber.ToString();

                healGlowText.text = player.defenceNumber.ToString();
                healGlow.SetActive(true);
                Invoke("PlayerGlowDisappear", 0.5f);
            }
        }

        CombatSystem combatSystem = GameObject.FindWithTag("CombatSystem").GetComponent <CombatSystem>();

        combatSystem.CanRoll = false;
    }
Example #2
0
    public void MeleeButton()
    {
        Enemy  enemy  = GameObject.FindWithTag("Enemy").GetComponent <Enemy>();
        Player player = GameObject.FindWithTag("Player").GetComponent <Player>();

        EnemyChange enemyChange = GameObject.FindWithTag("EnemyChange").GetComponent <EnemyChange>();

        enemy.currentHealth   -= player.attackPower;
        fillAmountHealth       = enemy.currentHealth / enemy.maxHealth;
        enemyHealth.fillAmount = fillAmountHealth / 1;


        EnemyHealthGlow.SetActive(true);
        Invoke("EnemyGlowDisappear", 0.5f);

        EnemyDamage.text = player.attackPower.ToString();
        Invoke("DamageDisappear", 2f);

        ScreenshakeController screenShakeController = GameObject.FindWithTag("MainCamera").GetComponent <ScreenshakeController>();

        StartCoroutine(screenShakeController.CameraShake(0.1f, 0.05f));

        if (enemy.currentHealth < 1f /*|| enemy.currentHealth > 1f*/) //Player Wins
        {
            Debug.Log("Has Won");
            WinUI.SetActive(true);
        }

        CombatSystem combatSystem = GameObject.FindWithTag("CombatSystem").GetComponent <CombatSystem>();

        Invoke("EnemyTurnChange", 0.5f);
        //ConsoleText.text = "Enemy Turn";
        combatSystem.EnemyCanRoll = true;
        combatSystem.CanRoll      = false;
    }
    void Update()
    {
        Player       player       = GameObject.FindWithTag("Player").GetComponent <Player>();
        Enemy        enemy        = GameObject.FindWithTag("Enemy").GetComponent <Enemy>();
        DiceScript   diceScript   = GameObject.FindWithTag("Dice").GetComponent <DiceScript>();
        AttackScript attackScript = GameObject.FindWithTag("CombatSystem").GetComponent <AttackScript>();

        if (state == CombatState.PLAYERROLL)
        {
            RollButton.SetActive(true);
            //PlayerRollDice();
        }
        else
        {
            RollButton.SetActive(false);
        }

        if (state == CombatState.PLAYERCOMBAT)
        {
            EnemyCanRoll = false;

            Debug.Log("I am in combat");
            EnemyChange enemyChange = GameObject.FindWithTag("EnemyChange").GetComponent <EnemyChange>();


            if (FireballAttackButton != null)
            {
                FireballAttackButton.SetActive(true);
            }

            if (/*hasUsed == false && */ HealButton != null)
            {
                HealButton.SetActive(true);
            }
            MeleeAttackButton.SetActive(true);
        }

        else
        {
            if (HealButton != null)
            {
                HealButton.SetActive(false);
            }

            if (FireballAttackButton != null)
            {
                FireballAttackButton.SetActive(false);
                Debug.Log("This code has not run");
            }

            MeleeAttackButton.SetActive(false);
        }

        if (state == CombatState.ENEMYTURN)
        {
            Debug.Log("Enemy is in combat");
            Invoke("EnemyRoll", 2f);
        }

        if (Input.GetKey("escape"))
        {
            Application.Quit();
        }
    }
Example #4
0
    public void FireballButton()
    {
        EnemyChange enemyChange = GameObject.FindWithTag("EnemyChange").GetComponent <EnemyChange>();

        if (enemyChange.IsLevel2 == true || enemyChange.IsLevel3 == true) //This code only runs during lvl 2 and 3
        {
            Enemy enemy = GameObject.FindWithTag("Enemy").GetComponent <Enemy>();

            FireballBurn = Random.Range(1, 6);

            //EnemyHealthGlow.SetActive(true);
            //Invoke("EnemyGlowDisappear", 0.5f);

            //EnemyDamage.text = "4";
            //Invoke("DamageDisappear", 2f);

            //ScreenshakeController screenShakeController = GameObject.FindWithTag("MainCamera").GetComponent<ScreenshakeController>();
            //StartCoroutine(screenShakeController.CameraShake(0.15f, 0.1f));

            if (FireballBurn >= 3 && PlayerCanAttack == true) //Player is burned
            {
                EnemyHealthGlow.SetActive(true);
                Invoke("EnemyGlowDisappear", 0.5f);

                EnemyDamage.text = "4";
                Invoke("DamageDisappear", 2f);

                ScreenshakeController screenShakeController = GameObject.FindWithTag("MainCamera").GetComponent <ScreenshakeController>();
                StartCoroutine(screenShakeController.CameraShake(0.15f, 0.1f));

                Debug.Log("BURN TEXT HAS RUN");

                Player     player     = GameObject.FindWithTag("Player").GetComponent <Player>();
                DiceScript diceScript = GameObject.FindWithTag("Dice").GetComponent <DiceScript>();

                enemy.currentHealth   -= 4;
                fillAmountHealth       = enemy.currentHealth / enemy.maxHealth;
                enemyHealth.fillAmount = fillAmountHealth / 1;

                player.currentHealth              -= 3f;
                playerfillAmountHealth             = player.currentHealth / player.maxHealth;
                diceScript.playerHealth.fillAmount = playerfillAmountHealth / 1;

                BurnText.text = "You were burned";
                Invoke("DamageDisappear", 2f);

                PlayerDamage.text = "3";
                Invoke("DamageDisappear", 2f);

                PlayerHealthGlow.SetActive(true);
                Invoke("PlayerGlowDisappear", 0.5f);

                if (enemy.currentHealth < 1f) //Player Wins
                {
                    Debug.Log("Has Won");
                    WinUI.SetActive(true);
                }

                if (player.currentHealth < 1f) //Player Loses
                {
                    Debug.Log("Has Lost");
                    LoseUI.SetActive(true);
                }

                PlayerCanAttack = false;
            }

            if (FireballBurn < 3 && PlayerCanAttack == true) //Player does not get burned
            {
                EnemyHealthGlow.SetActive(true);
                Invoke("EnemyGlowDisappear", 0.5f);

                EnemyDamage.text = "4";
                Invoke("DamageDisappear", 2f);

                ScreenshakeController screenShakeController = GameObject.FindWithTag("MainCamera").GetComponent <ScreenshakeController>();
                StartCoroutine(screenShakeController.CameraShake(0.15f, 0.1f));

                enemy.currentHealth   -= 4;
                fillAmountHealth       = enemy.currentHealth / enemy.maxHealth;
                enemyHealth.fillAmount = fillAmountHealth / 1;


                if (enemy.currentHealth < 1f) //Player Wins
                {
                    Debug.Log("Has Won");
                    WinUI.SetActive(true);
                }

                PlayerCanAttack = false;
            }

            Invoke("EnemyTurnChange", 3f);
        }

        PlayerCanAttack = false;
        CombatSystem combatSystem = GameObject.FindWithTag("CombatSystem").GetComponent <CombatSystem>();

        combatSystem.CanRoll = false;
    }