/// <summary>
    /// When a trigger particle effect hits the pet.
    /// </summary>
    public void TriggerHitPet(DegradParticle trigger)
    {
        // send out a callback
        if (OnPetHit != null)
        {
            OnPetHit(this, EventArgs.Empty);
        }
        // damage the pet
        int damage = trigger.Damage;

        BloodPanelManager.Instance.PlayBlood();
        StatsManager.Instance.ChangeStats(healthDelta: -damage, isFloaty: true);
    }
    protected override void ExtendedAction(GameObject emittedObject)
    {
        // set the proper move script
        MoveTowards moveScript = emittedObject.GetComponent <MoveTowards>();

        if (moveScript != null)
        {
            moveScript.Target = targetDestination;
            moveScript.touchCallbackTarget = gameObject;
        }
        else
        {
            Debug.LogError("No MoveTowards script detected in particle");
        }

        // set the proper degrad particle script
        DegradParticle scriptParticle = emittedObject.GetComponent <DegradParticle>();

        scriptParticle.Damage = damage;

        // add the tracking script to track the emitted particles
        //		TrackObject scriptTrack = emittedObject.AddComponent<TrackObject>();
        //		scriptTrack.Init(listSpawned);
    }