ResCastFinished and ResCastCancelled could follow suit above, replacing targetUnit, targetGUID with casterUnit, casterGUID. The API can give us targets. ResPending is the only one that needs the extra return (targetUnit, targetGUID, expiry_time).
I think you are quite correct to shrink the other callbacks to either target or caster, as appropriate. Just don't remove return values from UnitHasIncomingRes or UnitIsCastingRes, although you can change the order if you wish.
|