It can be, but I thought polluting revive() would be the bigger crime.

I don't understand why I can't just reverse the things done in the simple animal's die() and have it act normal again, but that just doesn't work.

I'm still working it. I don't really want this getting merged for a few days more anyways because people are still telling me edge case stories so if I can figure out the proper way I will do it. This bit was wrote when I was still thinking this was gonna be a hotfix.