弃用 1.20.6

This commit is contained in:
Armamem0t 2025-07-16 20:38:27 +08:00
parent e54f3ceb7b
commit a80f7388d1
Signed by: minglipro
GPG Key ID: 5F355A77B22AA93B
7 changed files with 48 additions and 46 deletions

View File

@ -3,7 +3,7 @@ plugins {
id 'idea'
id 'maven-publish'
id 'net.minecraftforge.gradle' version '[6.0.24,6.2)'
id 'org.spongepowered.mixin' version '0.7.36'
id 'org.spongepowered.mixin' version '0.7+'
}
version = "Forge-${project.minecraft_version}-${project.mod_version}"
@ -19,6 +19,7 @@ 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
copyIdeResources = true
runs {
client {
@ -74,10 +75,7 @@ repositories {
}
dependencies {
minecraft "net.minecraftforge:forge:${minecraft_version}-${forge_version}"
annotationProcessor 'org.spongepowered:mixin:0.8.5'
implementation 'org.spongepowered:mixin:0.8.5'
implementation("com.google.code.gson:gson:2.13.1")
minecraft ("net.minecraftforge:forge:${minecraft_version}-${forge_version}")
}
def resourceTargets = ['META-INF/mods.toml', 'pack.mcmeta']
@ -130,6 +128,10 @@ publishing {
repositories {}
}
tasks.withType(JavaCompile).configureEach {
options.encoding = 'UTF-8'
idea.module { downloadJavadoc = downloadSources = true }
sourceSets.each {
def dir = layout.buildDirectory.dir("sourcesSets/$it.name")
it.output.resourcesDir = dir
it.java.destinationDirectory = dir
}

View File

@ -3,8 +3,8 @@ systemProp.file.encoding=UTF-8
minecraft_version=1.20.6
minecraft_version_range=[1.20.6]
forge_version=50.2.0
forge_version_range=[49,)
loader_version_range=[49,)
forge_version_range=[50,)
loader_version_range=[50,)
mapping_channel=official
mapping_version=1.20.6
mod_id=enchantmentdoesnotconflict

View File

@ -9,7 +9,7 @@ pluginManagement {
}
plugins {
id 'org.gradle.toolchains.foojay-resolver-convention' version '0.5.0'
id 'org.gradle.toolchains.foojay-resolver-convention' version '0.7.0'
}
rootProject.name= "${mod_id}-Forge-${minecraft_version}-${mod_version}"

View File

@ -2,37 +2,44 @@ package com.mingliqiye.minecraft.enchantment.conflict;
import com.mingliqiye.minecraft.enchantment.conflict.config.ModConfig;
import com.mingliqiye.minecraft.enchantment.conflict.network.ChannelHander;
import com.mingliqiye.minecraft.enchantment.conflict.network.message.ConfigMessage;
import com.mojang.logging.LogUtils;
import net.minecraft.network.FriendlyByteBuf;
import net.minecraft.server.level.ServerPlayer;
import net.minecraftforge.api.distmarker.Dist;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.event.entity.player.PlayerEvent;
import net.minecraftforge.event.server.ServerStartingEvent;
import net.minecraftforge.eventbus.api.IEventBus;
import net.minecraftforge.eventbus.api.SubscribeEvent;
import net.minecraftforge.fml.ModLoadingContext;
import net.minecraftforge.fml.ModContainer;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent;
import net.minecraftforge.fml.event.lifecycle.FMLCommonSetupEvent;
import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext;
import org.slf4j.Logger;
/**
* 有没有大佬能够修复该版本的问题<br/>
* 开发环境可以运行 生产环境报错映射出错 FriendlyByteBuf::writeUtf(String s,int i)
* @see ConfigMessage
* @see FriendlyByteBuf
* @deprecated
*/
@Mod(EnchantmentDoNotConflictForge.MODID)
public class EnchantmentDoNotConflictForge {
public static final String MODID = "enchantmentdoesnotconflict";
private static final Logger LOGGER = LogUtils.getLogger();
public EnchantmentDoNotConflictForge() {
ModLoadingContext.get().registerConfig(net.minecraftforge.fml.config.ModConfig.Type.COMMON, ModConfig.SPEC);
IEventBus modEventBus = FMLJavaModLoadingContext.get().getModEventBus();
public EnchantmentDoNotConflictForge(IEventBus modEventBus, ModContainer container) {
container.addConfig(
new net.minecraftforge.fml.config.ModConfig(net.minecraftforge.fml.config.ModConfig.Type.COMMON,
ModConfig.SPEC, container));
modEventBus.addListener(this::commonSetup);
IEventBus forgeEventBus = MinecraftForge.EVENT_BUS;
forgeEventBus.register(this);
MinecraftForge.EVENT_BUS.addListener(this::onPlayerLogin);
}
public EnchantmentDoNotConflictForge(FMLJavaModLoadingContext context) {
this(context.getModEventBus(), context.getContainer());
}
@SubscribeEvent
public void commonSetup(FMLCommonSetupEvent event) {
event.enqueueWork(() -> {
ChannelHander.register();
@ -40,6 +47,7 @@ public class EnchantmentDoNotConflictForge {
LOGGER.info("Network channel registered successfully");
});
}
@SubscribeEvent
public void onPlayerLogin(PlayerEvent.PlayerLoggedInEvent event) {
if (event.getEntity() instanceof ServerPlayer player) {
@ -47,17 +55,4 @@ public class EnchantmentDoNotConflictForge {
LOGGER.debug("Sent config to player: {}", player.getName().getString());
}
}
@SubscribeEvent
public void onServerStarting(ServerStartingEvent event) {
LOGGER.info("Server starting initialization");
}
@Mod.EventBusSubscriber(modid = MODID, bus = Mod.EventBusSubscriber.Bus.MOD, value = Dist.CLIENT)
public static class ClientModEvents {
@SubscribeEvent
public static void onClientSetup(FMLClientSetupEvent event) {
LOGGER.info("Client setup complete");
}
}
}

View File

@ -9,6 +9,7 @@ import net.minecraft.server.level.ServerPlayer;
import net.minecraftforge.event.network.CustomPayloadEvent;
import net.minecraftforge.network.NetworkDirection;
import net.minecraftforge.network.PacketDistributor;
import org.jetbrains.annotations.NotNull;
import org.slf4j.Logger;
import static com.mingliqiye.minecraft.enchantment.conflict.network.ChannelHander.CONFIG_CHANNEL_INSTANCE;
@ -24,8 +25,11 @@ 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));
byteBuf.writeUtf(GSON.toJson(configMessage.data),32767);
}
public static ConfigMessage decode(FriendlyByteBuf byteBuf) {
@ -36,7 +40,7 @@ public record ConfigMessage(ModConfig.ConfigItem data) {
ModConfig.ConfigItem configItem = ModConfig.getInstance();
CONFIG_CHANNEL_INSTANCE.send(new ConfigMessage(configItem),PacketDistributor.PLAYER.with(player));
LOGGER.info("Send Server Config {} to {} data={}", EnchantmentDoNotConflictForge.MODID,
player.getName().getString(), configItem);
player.getDisplayName().getString(), configItem);
}
public static void handle(ConfigMessage configMessage, CustomPayloadEvent.Context ctx) {

View File

@ -1,16 +1,17 @@
modLoader="javafml"
loaderVersion="${loader_version_range}"
license="${mod_license}"
[[mods]]
modId="${mod_id}"
version="${mod_version}"
displayName="${mod_name}"
authors="${mod_authors}"
description='''${mod_description}'''
logoFile = "assets/${mod_id}/textures/logo/title_full.png"
modId="${mod_id}"
version="${mod_version}"
displayName="${mod_name}"
authors="${mod_authors}"
description='''${mod_description}'''
logoFile = "assets/${mod_id}/textures/logo/title_full.png"
[[mixins]]
config="${mod_id}.mixins.json"
config="${mod_id}.mixins.json"
[[dependencies.${mod_id}]]
modId="forge"

View File

@ -2,7 +2,7 @@
"required": true,
"package": "com.mingliqiye.minecraft.enchantment.conflict.mixin",
"refmap": "enchantmentdoesnotconflict.mixins.refmap.json",
"compatibilityLevel": "JAVA_21",
"compatibilityLevel": "JAVA_17",
"mixins": [
"ArrowInfiniteEnchantmentMixin",
"ArrowPiercingEnchantmentMixin",
@ -12,7 +12,7 @@
"injectors": {
"defaultRequire": 1
},
"minVersion": "0.8.5",
"minVersion": "0.8",
"overwrites": {
"requireAnnotations": true
}