Circular cooldowns are not new. That function might be, but SetSwipeTexture as an example doesn't ignore alpha channel, so you could just use a custom swipe texture that's just a circle and it would chop off the edges. I would hardly call that a hack.
__________________
|