|
37 | 37 |
|
38 | 38 | public abstract class SingleJarForgeMinecraftProvider extends SingleJarMinecraftProvider implements ForgeMinecraftProvider {
|
39 | 39 | private final MinecraftPatchedProvider patchedProvider;
|
40 |
| - |
| 40 | + |
41 | 41 | private SingleJarForgeMinecraftProvider(MinecraftMetadataProvider metadataProvider, ConfigContext configContext) {
|
42 | 42 | super(metadataProvider, configContext, MappingsNamespace.OFFICIAL);
|
43 | 43 | this.patchedProvider = new MinecraftPatchedProvider(configContext.project(), this, provideServer() ? MinecraftPatchedProvider.Type.SERVER_ONLY : MinecraftPatchedProvider.Type.CLIENT_ONLY);
|
44 | 44 | }
|
45 |
| - |
| 45 | + |
46 | 46 | public static SingleJarForgeMinecraftProvider.Server forgeServer(MinecraftMetadataProvider metadataProvider, ConfigContext configContext) {
|
47 | 47 | return new SingleJarForgeMinecraftProvider.Server(metadataProvider, configContext);
|
48 | 48 | }
|
49 |
| - |
| 49 | + |
50 | 50 | public static SingleJarForgeMinecraftProvider.Client forgeClient(MinecraftMetadataProvider metadataProvider, ConfigContext configContext) {
|
51 | 51 | return new SingleJarForgeMinecraftProvider.Client(metadataProvider, configContext);
|
52 | 52 | }
|
53 |
| - |
| 53 | + |
54 | 54 | @Override
|
55 | 55 | protected boolean provideClient() {
|
56 | 56 | // the client jar is needed for client-extra which the Forge userdev launch thing always checks for
|
57 | 57 | return true;
|
58 | 58 | }
|
59 |
| - |
| 59 | + |
60 | 60 | @Override
|
61 | 61 | protected void processJar() throws Exception {
|
62 | 62 | // don't process the jar, it's created by the patched provider
|
63 | 63 | }
|
64 |
| - |
| 64 | + |
65 | 65 | @Override
|
66 | 66 | public MinecraftPatchedProvider getPatchedProvider() {
|
67 | 67 | return patchedProvider;
|
68 | 68 | }
|
69 |
| - |
| 69 | + |
70 | 70 | @Override
|
71 | 71 | public Path getMinecraftEnvOnlyJar() {
|
72 | 72 | return patchedProvider.getMinecraftPatchedJar();
|
73 | 73 | }
|
74 |
| - |
| 74 | + |
75 | 75 | @Override
|
76 | 76 | public List<Path> getMinecraftJars() {
|
77 | 77 | return List.of(patchedProvider.getMinecraftPatchedJar());
|
78 | 78 | }
|
79 |
| - |
| 79 | + |
80 | 80 | public static final class Server extends SingleJarForgeMinecraftProvider {
|
81 | 81 | private Server(MinecraftMetadataProvider metadataProvider, ConfigContext configContext) {
|
82 | 82 | super(metadataProvider, configContext);
|
83 | 83 | }
|
84 |
| - |
| 84 | + |
85 | 85 | @Override
|
86 | 86 | public SingleJarEnvType type() {
|
87 | 87 | return SingleJarEnvType.SERVER;
|
88 | 88 | }
|
89 |
| - |
| 89 | + |
90 | 90 | @Override
|
91 | 91 | public Path getInputJar(SingleJarMinecraftProvider provider) throws Exception {
|
92 | 92 | BundleMetadata serverBundleMetadata = provider.getServerBundleMetadata();
|
93 |
| - |
| 93 | + |
94 | 94 | if (serverBundleMetadata == null) {
|
95 | 95 | return provider.getMinecraftServerJar().toPath();
|
96 | 96 | }
|
97 |
| - |
| 97 | + |
98 | 98 | provider.extractBundledServerJar();
|
99 | 99 | return provider.getMinecraftExtractedServerJar().toPath();
|
100 | 100 | }
|
101 |
| - |
| 101 | + |
102 | 102 | @Override
|
103 | 103 | protected boolean provideServer() {
|
104 | 104 | return true;
|
105 | 105 | }
|
106 |
| - |
| 106 | + |
107 | 107 | @Override
|
108 | 108 | protected boolean provideClient() {
|
109 | 109 | return false;
|
110 | 110 | }
|
111 | 111 | }
|
112 |
| - |
| 112 | + |
113 | 113 | public static final class Client extends SingleJarForgeMinecraftProvider {
|
114 | 114 | private Client(MinecraftMetadataProvider metadataProvider, ConfigContext configContext) {
|
115 | 115 | super(metadataProvider, configContext);
|
116 | 116 | }
|
117 |
| - |
| 117 | + |
118 | 118 | @Override
|
119 | 119 | public SingleJarEnvType type() {
|
120 | 120 | return SingleJarEnvType.CLIENT;
|
121 | 121 | }
|
122 |
| - |
| 122 | + |
123 | 123 | @Override
|
124 | 124 | public Path getInputJar(SingleJarMinecraftProvider provider) throws Exception {
|
125 | 125 | return provider.getMinecraftClientJar().toPath();
|
126 | 126 | }
|
127 |
| - |
| 127 | + |
128 | 128 | @Override
|
129 | 129 | protected boolean provideServer() {
|
130 | 130 | return false;
|
131 | 131 | }
|
132 |
| - |
| 132 | + |
133 | 133 | @Override
|
134 | 134 | protected boolean provideClient() {
|
135 | 135 | return true;
|
|
0 commit comments