hammy275 / immersive-mc

A Minecraft mod to make Minecraft more immersive!
GNU Lesser General Public License v3.0
62 stars 9 forks source link

Cleanup Trackers #457

Open hammy275 opened 2 months ago

hammy275 commented 2 months ago

The different types of trackers in ImmersiveMC's codebase are a mess. This needs to be cleaned up, mainly by having AbstractVRHandsTracker and AbstractVRHandTracker both extend AbstractTracker and use that system, rather than the former extending the latter, which is itself especially atrocious.

There should also be an AbstractTrackerWithCooldown or similar that handles all the cooldown-related tasks, so I don't have to replicate that code a dozen times.

hammy275 commented 1 month ago

With the new BottleAndBucketTracker, this situation is actually even worse now, since I needed that tracker to be available on both logical sides.

Given everything in the codebase, here's everything that should be changed:

Abstract Classes

Implementations