The crash can be reproduced by interacting with any container that extends ContainerExtended in non-development envrionment.
This PR renames IValueNotifiable's getType to getContainerType and implement the said method in ContainerExtended class.
Previously, ContainerExtended implements the IValueNotifiable interface by extending vanilla class Container, which has a method called getType. However, after reobfuscation, the getType method from Container class gets reobfuscated to some other name, causing ContainerExtended to no longer properly implement IValueNotifiable, and leading to AbstractMethodError during runtime.
Coverage decreased (-0.007%) to 22.993% when pulling 0daa0db6da7cec40f366918edd302313b2736c97 on SCLeoX:patch-0 into ca86a549300129f1800bdb9694b9c4d8aad451f2 on CyclopsMC:master-1.15.
The crash can be reproduced by interacting with any container that extends
ContainerExtended
in non-development envrionment.This PR renames
IValueNotifiable
'sgetType
togetContainerType
and implement the said method inContainerExtended
class.Previously,
ContainerExtended
implements theIValueNotifiable
interface by extending vanilla class Container, which has a method calledgetType
. However, afterreobfuscation
, thegetType
method from Container class gets reobfuscated to some other name, causingContainerExtended
to no longer properly implementIValueNotifiable
, and leading to AbstractMethodError during runtime.