I am facing unexpected results (at least unexpected by me!) when using a sub-class of the net.risingworld.api.utils.Area class:
1) The PlayerEnterAreaEvent fires repeatedly while the player moves within the area without leaving it
2) The PlayerLeaveAreaEvent never fires
3) The Area.equals() methods returns false even when the two objects involved in the test are physically the same object.
The attached, small, sample plug-in defines a sub-class of the Area class, uses an instance of it to test several events and shows the issues described above.
Am I wrong in expecting that an instance of a sub-class of Area should behave as an instance of Area itself for the common, non-overriden methods?