At the moment, Neptune logs a warning about the plugin requiring legacy material support.
I enabled debug mode in server.properties to force it to throw an exception and see what part of the plugin is causing it.
https://pastes.dev/hvyaiwz4bS
The reason comes from methods like this, that call Material.values() instead of using the Registry (bySuffix also uses said method):
public List<Material> getAllItems() {
List<Material> list = new ArrayList<>();
for (Material m : Material.values()) {
if (m.isItem() && !m.isAir() && !m.isLegacy()) list.add(m);
}
return list;
}
Example using the registry, note the isLegacy validation is no longer required:
public List<Material> getAllItems() {
List<Material> list = new ArrayList<>();
for (Material m : Registry.MATERIAL) {
if (m.isItem() && !m.isAir()) list.add(m);
}
return list;
}
I didn't make this into a pr because idk if this is intentional, I see the registry being used in other places.
Lmk if I should make one.
At the moment, Neptune logs a warning about the plugin requiring legacy material support.
I enabled debug mode in
server.propertiesto force it to throw an exception and see what part of the plugin is causing it.https://pastes.dev/hvyaiwz4bS
The reason comes from methods like this, that call
Material.values()instead of using the Registry (bySuffixalso uses said method):Example using the registry, note the
isLegacyvalidation is no longer required:I didn't make this into a pr because idk if this is intentional, I see the registry being used in other places.
Lmk if I should make one.