From DUF:
Code:
if (event == "PET_BATTLE_OPENING_START" and self.unit ~= "target") then
if DUF_Settings[DUF_INDEX].PetBattleHide then
self.PetBattleHidden = true
RegisterUnitWatch(self, true)
RegisterStateDriver(self, "visibility", "[petbattle] hide; default")
end
end
Code:
if (event == "PET_BATTLE_CLOSE") then
if (self.PetBattleHidden) then
UnregisterStateDriver(self, "visibility")
UnregisterUnitWatch(self)
self.PetBattleHidden = nil
self:Show();
return
end
...
DUF is over complicated in some things but this should give the context for pet battle/unit frame interaction.