This PR adds compatibility for Chlorine which fixes it from crashing and still retains AnimateTickEvent and AnimateFluidTickEvent.
I've added compatibility by moving the animateTick redirects into two mixins, ClientWorldVanillaMixin and ClientWorldChlorineMixin, which target the correct animateTick methods and then using a mixin plugin, I've loaded one or the other based on if Chlorine's main class is available (read comment in ACMixinPlugin for more info).
Now there are some side-effects to this, if Chlorine were to remove or rename their methods (performBlockDisplayTick and performFluidDisplayTick) it'll start crashing again as I have no way of checking the version of Chlorine. Though I highly doubt these methods will change at all and this is better than it crashing currently.
Obviously this isn't the greatest fix, preferably it should be done on Chlorine's side, but this is better than nothing for the moment.
This PR adds compatibility for Chlorine which fixes it from crashing and still retains
AnimateTickEvent
andAnimateFluidTickEvent
.I've added compatibility by moving the
animateTick
redirects into two mixins,ClientWorldVanillaMixin
andClientWorldChlorineMixin
, which target the correctanimateTick
methods and then using a mixin plugin, I've loaded one or the other based on if Chlorine's main class is available (read comment inACMixinPlugin
for more info).Now there are some side-effects to this, if Chlorine were to remove or rename their methods (
performBlockDisplayTick
andperformFluidDisplayTick
) it'll start crashing again as I have no way of checking the version of Chlorine. Though I highly doubt these methods will change at all and this is better than it crashing currently.Obviously this isn't the greatest fix, preferably it should be done on Chlorine's side, but this is better than nothing for the moment.
Fixes #82