-
Couldn't load subscription status.
- Fork 298
Move builtin transform selection to game provider #1056
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
Changes from 1 commit
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -20,6 +20,7 @@ | |
| import java.util.Collection; | ||
| import java.util.List; | ||
| import java.util.Objects; | ||
| import java.util.Set; | ||
|
|
||
| import net.fabricmc.loader.api.metadata.ModMetadata; | ||
| import net.fabricmc.loader.impl.game.patch.GameTransformer; | ||
|
|
@@ -38,6 +39,13 @@ public interface GameProvider { // name directly referenced in net.fabricmc.load | |
| Path getLaunchDirectory(); | ||
| boolean isObfuscated(); | ||
| boolean requiresUrlClassLoader(); | ||
| Set<BuiltinTransform> getBuiltinTransforms(String className); | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Should we make this a default method for backwards compat? Other games couldn't use transforms previously so an empty set would make sense. Doesn't really matter too much though. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I don't usually do this for internal interfaces like this, a custom GameProvider is probably better off with thinking about what the game actually wants. We don't know what the right package for an arbitrary game would be and I haven't implemented tracking what a class is yet (game, game lib, mod, maybe more types). There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 👍 makes sense. |
||
|
|
||
| enum BuiltinTransform { | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I'm unfamiliar with these terms. Specifically EDIT: I put this note in the wrong spot. It's for the enum values. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I adjusted it, class tweakers is a bit of a future term for this branch, it's the new and eventually more powerful replacement for access wideners. |
||
| STRIP_ENVIRONMENT, | ||
| WIDEN_ALL_ACCESS, | ||
| CLASS_TWEAKS, | ||
| } | ||
|
|
||
| boolean isEnabled(); | ||
| boolean locateGame(FabricLauncher launcher, String[] args); | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should these both end with
.to be consistent with the lines above and below?There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
They should, thanks for spotting