diff --git a/README.MD b/README.MD deleted file mode 100644 index 66986f4..0000000 --- a/README.MD +++ /dev/null @@ -1,3 +0,0 @@ -- 这个版本不推出了 Forge 搞心态的玩意 -- 映射出点问题 我还不会修 -- 详情请见 [EnchantmentDoNotConflictForge](src%2Fmain%2Fjava%2Fcom%2Fmingliqiye%2Fminecraft%2Fenchantment%2Fconflict%2FEnchantmentDoNotConflictForge.java) diff --git a/build.gradle b/build.gradle index 9485b84..f97a517 100644 --- a/build.gradle +++ b/build.gradle @@ -13,119 +13,104 @@ base { archivesName = mod_id } - java.toolchain.languageVersion = JavaLanguageVersion.of(21) println "Java: ${System.getProperty 'java.version'}, JVM: ${System.getProperty 'java.vm.version'} (${System.getProperty 'java.vendor'}), Arch: ${System.getProperty 'os.arch'}" minecraft { mappings channel: mapping_channel, version: mapping_version - + reobf = false copyIdeResources = true runs { - client { + configureEach { workingDirectory project.file('run') property 'forge.logging.markers', 'REGISTRIES' property 'forge.logging.console.level', 'info' + } + client { property 'forge.enabledGameTestNamespaces', mod_id - mods { - "${mod_id}" { - source sourceSets.main - } - } } server { - workingDirectory project.file('run') - property 'forge.logging.markers', 'REGISTRIES' - property 'forge.logging.console.level', 'info' property 'forge.enabledGameTestNamespaces', mod_id - mods { - "${mod_id}" { - source sourceSets.main - } - } + args '--nogui' } - - gameTestServer { - workingDirectory project.file('run') - property 'forge.logging.markers', 'REGISTRIES' - property 'forge.logging.console.level', 'info' property 'forge.enabledGameTestNamespaces', mod_id - mods { - "${mod_id}" { - source sourceSets.main - } - } } + data { - workingDirectory project.file('run') - property 'forge.logging.markers', 'REGISTRIES' + workingDirectory project.file('run-data') args '--mod', mod_id, '--all', '--output', file('src/generated/resources/'), '--existing', file('src/main/resources/') - mods { - "${mod_id}" { - source sourceSets.main - } - } } } } + sourceSets.main.resources { srcDir 'src/generated/resources' } -repositories { -} + +repositories {} dependencies { - minecraft ("net.minecraftforge:forge:${minecraft_version}-${forge_version}") + minecraft "net.minecraftforge:forge:${minecraft_version}-${forge_version}" + annotationProcessor 'org.spongepowered:mixin:0.8.5:processor' } - -def resourceTargets = ['META-INF/mods.toml', 'pack.mcmeta'] -def replaceProperties = [minecraft_version : minecraft_version, minecraft_version_range: minecraft_version_range, - forge_version : forge_version, forge_version_range: forge_version_range, - loader_version_range: loader_version_range, - mod_id : mod_id, mod_name: mod_name, mod_license: mod_license, - mod_version: mod_version, - mod_authors : mod_authors, mod_description: mod_description] -processResources { +tasks.named('processResources', ProcessResources).configure { + /*from(getLayout().getBuildDirectory().dir("/tmp/compileJava")) { + include "compileJava-refmap.json" + rename "compileJava-refmap.json", "${mod_id}.mixins.refmap.json" + }*/ + var replaceProperties = [minecraft_version : minecraft_version, minecraft_version_range: minecraft_version_range, + forge_version : forge_version, forge_version_range: forge_version_range, + loader_version_range: loader_version_range, + mod_id : mod_id, mod_name: mod_name, mod_license: mod_license, mod_version: mod_version, + mod_authors : mod_authors, mod_description: mod_description,] inputs.properties replaceProperties - replaceProperties.put 'project', project - - filesMatching(resourceTargets) { - expand replaceProperties + filesMatching(['META-INF/mods.toml', 'pack.mcmeta']) { + expand replaceProperties + [project: project] } } + mixin { add sourceSets.main, "${mod_id}.mixins.refmap.json" config "${mod_id}.mixins.json" } -java{ +java { withSourcesJar() } -jar { +tasks.named('jar', Jar).configure { manifest { - attributes(["Specification-Title" : mod_id, - "Specification-Vendor" : mod_authors, - "Specification-Version" : "1", - "Implementation-Title" : project.name, - "Implementation-Version" : project.jar.archiveVersion, - "Implementation-Vendor" : mod_authors, - "Implementation-Timestamp": new Date().format("yyyy-MM-dd'T'HH:mm:ssZ")]) + attributes([ + 'Specification-Title' : mod_id, + 'Specification-Vendor' : mod_authors, + 'Specification-Version' : '1', // We are version 1 of ourselves + 'Implementation-Title' : project.name, + 'Implementation-Version': project.jar.archiveVersion, + 'Implementation-Vendor' : mod_authors, + "MixinConfigs" : "${mod_id}.mixins.json" + ]) } } - -jar.finalizedBy('reobfJar') - - publishing { publications { - mavenJava(MavenPublication) { - artifact jar + register('mavenJava', MavenPublication) { + from components.java + groupId = mod_group_id + artifactId = mod_id } } - repositories {} + repositories { + maven { + name= "Disk" + url = uri("D:/git/maven-repository-raw") + } + } +} + +tasks.withType(JavaCompile).configureEach { + options.encoding = 'UTF-8' } idea.module { downloadJavadoc = downloadSources = true } diff --git a/src/main/java/com/mingliqiye/minecraft/enchantment/conflict/EnchantmentDoNotConflictForge.java b/src/main/java/com/mingliqiye/minecraft/enchantment/conflict/EnchantmentDoNotConflictForge.java index 1c0d2f5..f0e811c 100644 --- a/src/main/java/com/mingliqiye/minecraft/enchantment/conflict/EnchantmentDoNotConflictForge.java +++ b/src/main/java/com/mingliqiye/minecraft/enchantment/conflict/EnchantmentDoNotConflictForge.java @@ -16,13 +16,7 @@ import net.minecraftforge.fml.event.lifecycle.FMLCommonSetupEvent; import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; import org.slf4j.Logger; -/** - * 有没有大佬能够修复该版本的问题
- * 开发环境可以运行 生产环境报错映射出错 FriendlyByteBuf::writeUtf(String s,int i) - * @see ConfigMessage - * @see FriendlyByteBuf - * @deprecated - */ + @Mod(EnchantmentDoNotConflictForge.MODID) public class EnchantmentDoNotConflictForge { public static final String MODID = "enchantmentdoesnotconflict"; diff --git a/src/main/java/com/mingliqiye/minecraft/enchantment/conflict/network/message/ConfigMessage.java b/src/main/java/com/mingliqiye/minecraft/enchantment/conflict/network/message/ConfigMessage.java index 8fec5c1..1a6d62d 100644 --- a/src/main/java/com/mingliqiye/minecraft/enchantment/conflict/network/message/ConfigMessage.java +++ b/src/main/java/com/mingliqiye/minecraft/enchantment/conflict/network/message/ConfigMessage.java @@ -25,9 +25,6 @@ public record ConfigMessage(ModConfig.ConfigItem data) { .decoder(ConfigMessage::decode).encoder(ConfigMessage::encode).consumerMainThread(ConfigMessage::handle).add(); } - /** - * @deprecated - */ public static void encode(ConfigMessage configMessage, FriendlyByteBuf byteBuf) { byteBuf.writeUtf(GSON.toJson(configMessage.data),32767); } diff --git a/src/main/resources/META-INF/mods.toml b/src/main/resources/META-INF/mods.toml index b3429c5..346dae2 100644 --- a/src/main/resources/META-INF/mods.toml +++ b/src/main/resources/META-INF/mods.toml @@ -11,6 +11,7 @@ license="${mod_license}" logoFile = "assets/${mod_id}/textures/logo/title_full.png" [[mixins]] + environment = "ALL" config="${mod_id}.mixins.json" [[dependencies.${mod_id}]] diff --git a/src/main/resources/enchantmentdoesnotconflict.mixins.json b/src/main/resources/enchantmentdoesnotconflict.mixins.json index fd65809..dbbdbd3 100644 --- a/src/main/resources/enchantmentdoesnotconflict.mixins.json +++ b/src/main/resources/enchantmentdoesnotconflict.mixins.json @@ -1,8 +1,8 @@ { "required": true, "package": "com.mingliqiye.minecraft.enchantment.conflict.mixin", - "refmap": "enchantmentdoesnotconflict.mixins.refmap.json", "compatibilityLevel": "JAVA_17", + "minVersion": "0.8.5", "mixins": [ "ArrowInfiniteEnchantmentMixin", "ArrowPiercingEnchantmentMixin", @@ -12,7 +12,6 @@ "injectors": { "defaultRequire": 1 }, - "minVersion": "0.8", "overwrites": { "requireAnnotations": true }