SpongePowered / VanillaGradle

A toolchain for Minecraft: Java Edition that builds a workspace to interact with the game using the official mappings provided to the public by Mojang Studios.
MIT License
89 stars 18 forks source link

Provide Mixin as an optional project configuration #16

Open Zidane opened 3 years ago

Zidane commented 3 years ago

Not looking for this project, outside of something optional, to be a mod development kit but since Mixin is so popular, we should provide a "path of least resistance" to getting Mixin up and manipulating classes.

Could replace MixinGradle usage in it's entirety for SpongeVanilla's usecase.

Zidane commented 3 years ago

If I recall, I think you had some ideas here @zml2008 .

zml2008 commented 3 years ago

We don't do any remapping yet, so I don't think we'd get much benefit out of the AP, but what this submodule could do would be:

Eventually, this could be extended to provide an obfuscation service for the Mixin AP to use.

zml2008 commented 3 years ago

Another feature that would be nice: add a gradle task to automatically sort Mixin class names alphabetically in the src/*/resources/*.mixins.json files

zml2008 commented 1 year ago

A further potentially useful tool:

Generate a diff from vanilla decompile to the classes produced by -Dmixin.debug.export=true

This would: