public override void OnTriggerEnter2D(Collider2D collision)
    {
        //Debug.Log("THERE IS NO CHARACTERCOLLISION");
        //monsterChecks.Enemies.Clear();
        GameObject g = collision.gameObject;
        string     t = g.tag;

        if (t == "Predator")
        {
            if (damageSFX != null)
            {
                sfxPlayer.PlayRandPitch(damageSFX);
            }
            CharacterData charData = collision.gameObject.GetComponent <CharacterData>();
            //Debug.Log("THERE IS CHARACTER COLLISION");
            if (charData != null)
            {
                if (myCharData != null)
                {
                    myCharData.damageDealt += (int)meleeDamage;
                }
                if (charData.DoDamage((int)meleeDamage) && myCharData != null)
                {
                    myCharData.entitiesKilled += 1;
                }
            }
        }

        if (g.GetComponent <DestructableEnvironment>() != null)
        {
            DestructableEnvironment de = g.GetComponent <DestructableEnvironment>();
            de.health -= ((int)meleeDamage);
            de.Destroy();
        }
    }
    public override void OnTriggerEnter2D(Collider2D collision)
    {
        GameObject g = collision.gameObject;
        string     t = g.tag;

        if (t == "Predator")
        {
            sfxPlayer.PlayRandPitch(damageSFX);
            CharacterData charData = collision.gameObject.GetComponent <CharacterData>();
            //Debug.Log("THERE IS CHARACTER COLLISION");
            if (charData != null)
            {
                myCharData.damageDealt += (int)meleeDamage;
                if (charData.DoDamage((int)meleeDamage))
                {
                    myCharData.entitiesKilled += 1;
                }
            }
            DoKnockBack(collision.gameObject.GetComponent <Rigidbody2D>(), bunceForce);
        }
        else if (t == "Prey")
        {
            sfxPlayer.PlayRandPitch(fruitBunceSFX);
            DoKnockBack(collision.gameObject.GetComponent <Rigidbody2D>(), bunceForce);
        }
        else if (t == "SkewerableObject")
        {
            var objComp = collision.gameObject.GetComponent <SkewerableObject>();
            if (objComp.Attached)
            {
                objComp.Attached = false;
            }
            else
            {
                DoKnockBack(collision.gameObject.GetComponent <Rigidbody2D>(), dropBunceForce);
            }
        }
        else if (g.GetComponent <DestructableEnvironment>() != null)
        {
            var environment = g.GetComponent <DestructableEnvironment>();
            environment.health -= (int)meleeDamage;
            environment.Destroy();
        }
        else if (t == "Reflectable")
        {
            var body = g.GetComponent <BaseProjectile>();
            if (body != null)
            {
                body.directionVector *= -1;
                Physics2D.IgnoreCollision(body.GetComponent <Collider2D>(), body.attacker.GetComponent <Collider2D>(), false);
                if (!body.hurtDrones)
                {
                    body.hurtDrones = true;
                }
                if (body.attacker != null)
                {
                    body.attacker = this.gameObject;
                }

                body.projectileSpeed += 3;
            }
        }
    }