Example #1
0
    public void HandleEnemyAttack(object sender, CombatEventArgs e)
    {
        int        enemyType = e.CombatLvl;
        GameObject Attacker  = sender as GameObject;
        npcCombat  enemyAI   = Attacker.GetComponent <npcCombat> ();

        if (isBlocking)
        {
            if (enemyType == 1)
            {
                //Blocks attack and returns KB
                BlkReceiver(this, new CombatEventArgs(BlkRecoil, Vector3.zero, 0, false, 0));
                Debug.Log("Attack blocked");
            }
            else if (enemyType == 2)
            {
                Debug.Log("Block negated");
                varHealth -= e.Dmg;
                Debug.Log(varHealth);

                StartCoroutine(damageEffect());

                kbForce       = 1.5f * e.Force;
                dealKnockback = true;
                P1            = transform.position;
                P2            = P1 + kbForce;

                deltaP = Vector2.Distance(P2, P1);
                Debug.Log(kbForce);
            }
        }
        else if (!isBlocking)
        {
            varHealth -= e.Dmg;
            Debug.Log(varHealth);

            StartCoroutine(damageEffect());

            kbForce       = e.Force;
            dealKnockback = true;
            P1            = transform.position;
            P2            = P1 + kbForce;

            deltaP = Vector2.Distance(P2, P1);
            Debug.Log(kbForce);
        }

        //Ignites player if attacked by on fire enemy
        if (e.TorchMod)
        {
            Debug.Log("Player set on fire");
            onFire = true;

            StartCoroutine(ignitePlayer(enemyAI));
        }
    }
Example #2
0
    public void readyBoss()
    {
        //Readying Boss
        brawlComponent = BrawlerBoss.AddComponent <npcCombat> ();
        brawlComponent.DmgReceiver_NPCSide += PvERef.HandleEnemyAttack;
        brawlComponent.brawlTier            = 2;
        brawlComponent.chaseSpeed           = 3.2f;

        bossLog = BrawlerBoss.AddComponent <bossStatusLog> ();
        brawlComponent.statusRef = bossLog;
        Debug.Log("Boss Activated");
    }
Example #3
0
    private IEnumerator ignitePlayer(npcCombat spriteHolder)
    {
        GameObject Flame = new GameObject();

        Flame.transform.SetParent(transform);
        Flame.transform.localPosition = Vector3.zero;
        Flame.transform.localScale    = new Vector3(1, 1, 0);

        Sprite         flameSprite = spriteHolder.flameSprite;
        SpriteRenderer sRenderer   = Flame.AddComponent <SpriteRenderer> ();

        sRenderer.sprite       = flameSprite;
        sRenderer.sortingOrder = 1;
        Debug.Log("Player ignited");

        yield return(new WaitForSeconds(burnTimeLimit));

        Debug.Log("Player burned; burn time reached");
        Messenger <int> .Broadcast("finalEventType", 2);

        yield break;
    }
Example #4
0
    public void newBrawler()
    {
        //Spawning new Brawlers
        brawlerIndex++;
        if (brawlerIndex < Brawlers.Length)
        {
            float zoomRatio = ((float)(brawlerIndex + 1) / (float)Brawlers.Length);
            Debug.Log(zoomRatio);
            playerView.orthographicSize = 4 - zoomRatio;
            activeBrawler = Brawlers [brawlerIndex].gameObject;

            brawlComponent = activeBrawler.AddComponent <npcCombat> ();
            brawlComponent.DmgReceiver_NPCSide += PvERef.HandleEnemyAttack;
            brawlComponent.isTracking           = true;
            brawlComponent.Target    = Player;
            brawlComponent.brawlTier = 1;
            Debug.Log("New Brawler Activated");
        }
        else
        {
            Debug.Log("All Brawlers have been defeated");
        }
    }