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

ASM Cleanup #10

Merged
merged 3 commits into from
Feb 16, 2024
Merged

ASM Cleanup #10

merged 3 commits into from
Feb 16, 2024

Conversation

Cleptomania
Copy link
Member

This removes all ASM from MalisisCore(literally none of it was needed or provided any functionality to MalisisDoors, who could've guessed).

Additionally, this converts most of the reflection which was used to access private fields to use Access Transformers, and improves the remaining reflection that couldn't use access transformers to use MethodHandle objects and invokeExact instead of working directly on reflected fields.

I've tested the special doors like big doors, garage door, saloon doors, and nothing is broken with them due to removing the ASM. I've also tested a few of the standard doors built from the door factory and haven't found anything broken with them as a result of this.

@Cleptomania Cleptomania requested a review from a team February 16, 2024 04:05
@Dream-Master
Copy link
Member

@Cleptomania what about vanilla doors. Are they still have the open close Door animation ? Guess it was added by Malis doors.

@Cleptomania
Copy link
Member Author

@Dream-Master yeah this doesn’t affect that, and I don’t intend to remove that in any of the optimizations I’m making. It doesn’t need the ASM or even mixins because it doesn’t actually patch the vanilla door, it fully replaces the vanilla door item and block with a custom one from MalisisDoors(even to the point that it will be replaced in recipes, etc)

@Cleptomania Cleptomania merged commit 210ee6f into master Feb 16, 2024
1 check passed
@Cleptomania Cleptomania deleted the asm-cleanup branch February 16, 2024 20:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants