There is obviously a million ways to do this but if you have your heart on doing it while attacks are processing...
Scenario #1
	Code:
	if(this->CastToMob()->HasPet() && this->CastToMob()->IsInvisible())
    this->CastToMob()->GetPet()->Kill();
    this->CastToMob()->SetPetID(0);
 CastToMob() is optional.