Open willkroboth opened 2 years ago
I figured this out on my side by shading 1_19-common into 1_19 and 1_19_1. This seems to help special source realize that ServerPlayerOpWrapper extends ServerPlayer and it remaps the method override.
I'll leave this issue open for now because it seems that there is a problem where special source is not considering dependencies when finding classes and methods to remap. Doing it the shading way I found requires quite a bit of hacky finagling that really shouldn't happen.
I have some classes set up like this:
Before mapping:
Module 1_19-common
pom.xml:
PlayerOpSender1_19_common.java:
Module 1_19
pom.xml:
PlayerOpSender1_19.java:
Module 1_19_1
pom.xml:
PlayerOpSender1_19_1.java:
After mapping:
PlayerOpSender1_19_common.java:
PlayerOpSender1_19.java:
PlayerOpSender1_19_1.java:
I've set up special source to map
PlayerOpSender1_19
with 1.19 mappings andPlayerOpSender1_19_1
with 1.19.1 mappings.However, the method overrides for
createCommandSourceStack
aren't being mapped correctly. In 1.19 it should become cU, while in 1.19.1 is should become cT. Parts of the file are being remapped, such as CommandSourceStack becoming CommmandListenerWrapper, but the method override is not changing.It seems that the way the classes are inherited is preventing special source from realizing it needs to change these methods. It might also have something to do with the way the classes are split up across maven modules.