Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

1.20.4 Functionality #91

Closed
wants to merge 2 commits into from

Conversation

petulikan1
Copy link

@petulikan1 petulikan1 commented Feb 11, 2024

Short Description

I've updated the plugin to work with 1.20.4 and ensured that custom glow enchantment remains working on the latest version.

Additions/Changes/Removals

Due to hard spigot Enchantment class changes, I've had to use NMS (net.minecraft.server) to make the glowing enchant work properly.
As of that, I had to separate the Core part of the plugin and the NMS part in the projetct so the dependencies wouldn't mix alltogether and possibly even prevent compilation.

Related Issues

Resolves #90

Checklist

  • I have fully tested the proposed changes and promise that they will not break everything into chaos.
  • I have also tested the proposed changes in combination with base Slimefun and made sure nothing breaks/unexpected happens.
  • I followed the existing code standards and didn't mess up the formatting.
  • I did my best to add documentation to any public classes or methods I added which may not be obvious to maintainers.
  • I have added Nonnull and Nullable annotations to my methods to indicate their behaviour for null values

@petulikan1
Copy link
Author

petulikan1 commented Feb 11, 2024

I'd like to also mention that merging this will result breaking the auto-artifact-building system as the Spigot's NMS aren't available online anywhere and can only be built locally.

I've also tried to remove all the NMS parts and change them into reflections, but because we're overriding methods from a class unobtainable during compilation that's sadly not possible without much complex reflection logic and dynamic class creation which would make it more unreadable and hard to read.

//EDIT

I tried making it with Javassist but without a chance... https://pastebin.com/WwPrMsjG

@petulikan1 petulikan1 closed this Aug 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

[BUG] LiteXpansion does not support 1.20.4
1 participant