The previous implementation seemed to involve a lot of state changing to synchronize the logic split over two different handlers which both get called each tick, making it difficult to follow the flow of execution.
Changes:
Potential fix for issue #93.
General cleaning of variables and deprecated code.
Removed state changes and synchronization code between the item use and update handlers.
Consolidated tick logic down into a single event handler (item use).
Added the capability to disable water particles, enabled by default but not implemented in configuration.
Edit: Tested in an environment where the null-pointer exception mentioned in the issue had previously occurred and it seems to be resolved.
The previous implementation seemed to involve a lot of state changing to synchronize the logic split over two different handlers which both get called each tick, making it difficult to follow the flow of execution.
Changes:
Edit: Tested in an environment where the null-pointer exception mentioned in the issue had previously occurred and it seems to be resolved.