From b336603d52577820dd95cd7282ab9326ff731f32 Mon Sep 17 00:00:00 2001 From: baka4n Date: Fri, 27 Jun 2025 17:25:12 +0800 Subject: [PATCH 1/9] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dgit=E9=94=99=E8=AF=AF?= =?UTF-8?q?=E7=9A=84=E5=B0=9D=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build.gradle.kts | 2 +- modules/Agricultural/build.gradle.kts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 1656cb1..6d5970d 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -271,7 +271,7 @@ subprojects { val registrate = "accessCompileOnly"( group = "com.tterrag.registrate", name = "Registrate", - version = "[MC1.21-1.3.0+55,)" + version = "MC1.21-1.3.+" ) runtimeOnly(registrate) implementation( diff --git a/modules/Agricultural/build.gradle.kts b/modules/Agricultural/build.gradle.kts index e373954..0bd4bee 100644 --- a/modules/Agricultural/build.gradle.kts +++ b/modules/Agricultural/build.gradle.kts @@ -2,7 +2,7 @@ dependencies { jarJar( group = "com.tterrag.registrate", name = "Registrate", - version = "[MC1.21-1.3.0+55,)" + version = "[MC1.21-1.3.0+67,)" ) jarJar( group="dev.xkmc", From 38ee32a9237f90f2717ab7ce0b9e3f669bcb8370 Mon Sep 17 00:00:00 2001 From: baka4n Date: Fri, 27 Jun 2025 17:26:41 +0800 Subject: [PATCH 2/9] =?UTF-8?q?=E6=89=8B=E5=8A=A8=E8=A7=A6=E5=8F=91?= =?UTF-8?q?=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/polaris2023/ww_deco/common/init/ModBlocks.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/ww_deco/java/org/polaris2023/ww_deco/common/init/ModBlocks.java b/src/ww_deco/java/org/polaris2023/ww_deco/common/init/ModBlocks.java index 03f5d9f..15f04d0 100644 --- a/src/ww_deco/java/org/polaris2023/ww_deco/common/init/ModBlocks.java +++ b/src/ww_deco/java/org/polaris2023/ww_deco/common/init/ModBlocks.java @@ -93,6 +93,7 @@ public class ModBlocks { .chestBoat() .crown(() -> Blocks.SPRUCE_LOG) .register() + ; } public static void register() {} From fe0e21defeece15bf9f023c8809d68f84c3d8476 Mon Sep 17 00:00:00 2001 From: baka4n Date: Fri, 27 Jun 2025 17:32:37 +0800 Subject: [PATCH 3/9] =?UTF-8?q?=E5=8F=AF=E8=83=BD=E6=98=AFmaven=E4=BB=93?= =?UTF-8?q?=E5=BA=93=E7=B3=A0=E4=BA=86=E5=AF=BC=E8=87=B4=E7=9A=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build.gradle.kts | 2 +- modules/Agricultural/build.gradle.kts | 2 +- .../java/org/polaris2023/ww_deco/common/init/ModBlocks.java | 1 - 3 files changed, 2 insertions(+), 3 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 6d5970d..e6979d8 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -271,7 +271,7 @@ subprojects { val registrate = "accessCompileOnly"( group = "com.tterrag.registrate", name = "Registrate", - version = "MC1.21-1.3.+" + version = "MC1.21-1.3.0+66" ) runtimeOnly(registrate) implementation( diff --git a/modules/Agricultural/build.gradle.kts b/modules/Agricultural/build.gradle.kts index 0bd4bee..1953887 100644 --- a/modules/Agricultural/build.gradle.kts +++ b/modules/Agricultural/build.gradle.kts @@ -2,7 +2,7 @@ dependencies { jarJar( group = "com.tterrag.registrate", name = "Registrate", - version = "[MC1.21-1.3.0+67,)" + version = "MC1.21-1.3.0+66" ) jarJar( group="dev.xkmc", diff --git a/src/ww_deco/java/org/polaris2023/ww_deco/common/init/ModBlocks.java b/src/ww_deco/java/org/polaris2023/ww_deco/common/init/ModBlocks.java index 15f04d0..03f5d9f 100644 --- a/src/ww_deco/java/org/polaris2023/ww_deco/common/init/ModBlocks.java +++ b/src/ww_deco/java/org/polaris2023/ww_deco/common/init/ModBlocks.java @@ -93,7 +93,6 @@ public class ModBlocks { .chestBoat() .crown(() -> Blocks.SPRUCE_LOG) .register() - ; } public static void register() {} From eb323ccea785cd1965b8f2e296e9f7163e063b6a Mon Sep 17 00:00:00 2001 From: baka4n Date: Fri, 27 Jun 2025 17:37:30 +0800 Subject: [PATCH 4/9] =?UTF-8?q?=E6=98=AF=E4=B8=8D=E6=98=AFgit=E7=BC=93?= =?UTF-8?q?=E5=AD=98=E7=82=B8=E4=BA=86=E7=8E=B0=E5=9C=A8=E6=B8=85=E7=A9=BA?= =?UTF-8?q?=E9=87=8D=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build.gradle.kts | 2 +- modules/Agricultural/build.gradle.kts | 2 +- .../java/org/polaris2023/ww_deco/common/init/ModBlocks.java | 1 + 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index e6979d8..7b9a356 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -271,7 +271,7 @@ subprojects { val registrate = "accessCompileOnly"( group = "com.tterrag.registrate", name = "Registrate", - version = "MC1.21-1.3.0+66" + version = "[MC1.21-1.3.0+63,)" ) runtimeOnly(registrate) implementation( diff --git a/modules/Agricultural/build.gradle.kts b/modules/Agricultural/build.gradle.kts index 1953887..fc09d09 100644 --- a/modules/Agricultural/build.gradle.kts +++ b/modules/Agricultural/build.gradle.kts @@ -2,7 +2,7 @@ dependencies { jarJar( group = "com.tterrag.registrate", name = "Registrate", - version = "MC1.21-1.3.0+66" + version = "[MC1.21-1.3.0+66,)" ) jarJar( group="dev.xkmc", diff --git a/src/ww_deco/java/org/polaris2023/ww_deco/common/init/ModBlocks.java b/src/ww_deco/java/org/polaris2023/ww_deco/common/init/ModBlocks.java index 03f5d9f..07798bf 100644 --- a/src/ww_deco/java/org/polaris2023/ww_deco/common/init/ModBlocks.java +++ b/src/ww_deco/java/org/polaris2023/ww_deco/common/init/ModBlocks.java @@ -94,6 +94,7 @@ public class ModBlocks { .crown(() -> Blocks.SPRUCE_LOG) .register() ; + } public static void register() {} } From 1565b3c0de02b5ba1bce3779604e241805d88a50 Mon Sep 17 00:00:00 2001 From: baka4n Date: Fri, 27 Jun 2025 17:54:41 +0800 Subject: [PATCH 5/9] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=8F=AF=E8=83=BD?= =?UTF-8?q?=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build.gradle.kts | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 7b9a356..1e6f54e 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -268,12 +268,11 @@ subprojects { ) dependencies { - val registrate = "accessCompileOnly"( + implementation( group = "com.tterrag.registrate", name = "Registrate", version = "[MC1.21-1.3.0+63,)" ) - runtimeOnly(registrate) implementation( group="dev.xkmc", name= "l2serial", From 3be3f30b5b68e1009fde99d9f0c03bac51dbde28 Mon Sep 17 00:00:00 2001 From: baka4n Date: Fri, 27 Jun 2025 17:55:10 +0800 Subject: [PATCH 6/9] =?UTF-8?q?=E6=89=8B=E5=8A=A8=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/ww_ag/java/org/polaris2023/ww_ag/common/init/ModBlocks.java | 1 - 1 file changed, 1 deletion(-) diff --git a/src/ww_ag/java/org/polaris2023/ww_ag/common/init/ModBlocks.java b/src/ww_ag/java/org/polaris2023/ww_ag/common/init/ModBlocks.java index 5511baf..877e626 100644 --- a/src/ww_ag/java/org/polaris2023/ww_ag/common/init/ModBlocks.java +++ b/src/ww_ag/java/org/polaris2023/ww_ag/common/init/ModBlocks.java @@ -126,7 +126,6 @@ public class ModBlocks { .tag(WWBlockTags.MILK.get()) .register(); } - } public static void register() {} From 78d03b3d9d46fd4de3601883d5e2b1c5037748ee Mon Sep 17 00:00:00 2001 From: baka4n Date: Fri, 27 Jun 2025 17:57:44 +0800 Subject: [PATCH 7/9] =?UTF-8?q?=E5=86=8D=E6=AC=A1=E8=B0=83=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build.gradle.kts | 2 +- modules/Agricultural/build.gradle.kts | 2 +- src/ww_ag/java/org/polaris2023/ww_ag/common/init/ModBlocks.java | 1 + 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 1e6f54e..2e7e14b 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -271,7 +271,7 @@ subprojects { implementation( group = "com.tterrag.registrate", name = "Registrate", - version = "[MC1.21-1.3.0+63,)" + version = "[MC1.21-1.3.0,)" ) implementation( group="dev.xkmc", diff --git a/modules/Agricultural/build.gradle.kts b/modules/Agricultural/build.gradle.kts index fc09d09..bec3030 100644 --- a/modules/Agricultural/build.gradle.kts +++ b/modules/Agricultural/build.gradle.kts @@ -2,7 +2,7 @@ dependencies { jarJar( group = "com.tterrag.registrate", name = "Registrate", - version = "[MC1.21-1.3.0+66,)" + version = "[MC1.21-1.3.0,)" ) jarJar( group="dev.xkmc", diff --git a/src/ww_ag/java/org/polaris2023/ww_ag/common/init/ModBlocks.java b/src/ww_ag/java/org/polaris2023/ww_ag/common/init/ModBlocks.java index 877e626..c00a56f 100644 --- a/src/ww_ag/java/org/polaris2023/ww_ag/common/init/ModBlocks.java +++ b/src/ww_ag/java/org/polaris2023/ww_ag/common/init/ModBlocks.java @@ -126,6 +126,7 @@ public class ModBlocks { .tag(WWBlockTags.MILK.get()) .register(); } + } public static void register() {} From 1776a7dccfbadd2ed3b5cab34e47bd9e13fa61ab Mon Sep 17 00:00:00 2001 From: baka4n Date: Fri, 27 Jun 2025 18:07:47 +0800 Subject: [PATCH 8/9] =?UTF-8?q?=E5=88=A0=E9=99=A4=E5=8F=AF=E8=83=BD?= =?UTF-8?q?=E5=AD=98=E5=9C=A8=E9=9A=90=E6=82=A3=E7=9A=84=E4=B8=9C=E8=A5=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build.gradle.kts | 16 ++++++++-------- .../polaris2023/ww_ag/common/init/ModBlocks.java | 2 +- .../ww_deco/common/init/ModBlocks.java | 1 - 3 files changed, 9 insertions(+), 10 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 2e7e14b..3412f2b 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -27,7 +27,7 @@ plugins { base alias(libs.plugins.mod.dev.gradle) id("io.github.jeadyx.sonatype-uploader").version("2.8") - id("dev.vfyjxf.modaccessor") version "1.1.1" + // id("dev.vfyjxf.modaccessor") version "1.1.1" } val mcVersion: String by rootProject val mcVersionRange: String by rootProject @@ -91,7 +91,7 @@ val lib = libs subprojects { apply(plugin = lib.plugins.mod.dev.gradle.get().pluginId) - apply(plugin = "dev.vfyjxf.modaccessor") + //apply(plugin = "dev.vfyjxf.modaccessor") val modId: String by project val modName: String by project @@ -253,12 +253,12 @@ subprojects { neoForge.setAccessTransformers(atFile) } - modAccessor { - createTransformConfiguration(configurations.getAt("compileOnly")) - if (atFile.readBytes().isNotEmpty()) { - accessTransformerFiles = rootProject.files("src/${modId}/resources/META-INF/accesstransformer.cfg") - } - } +// modAccessor { +// createTransformConfiguration(configurations.getAt("compileOnly")) +// if (atFile.readBytes().isNotEmpty()) { +// accessTransformerFiles = rootProject.files("src/${modId}/resources/META-INF/accesstransformer.cfg") +// } +// } val projectNames = listOf( "Deco", diff --git a/src/ww_ag/java/org/polaris2023/ww_ag/common/init/ModBlocks.java b/src/ww_ag/java/org/polaris2023/ww_ag/common/init/ModBlocks.java index c00a56f..5511baf 100644 --- a/src/ww_ag/java/org/polaris2023/ww_ag/common/init/ModBlocks.java +++ b/src/ww_ag/java/org/polaris2023/ww_ag/common/init/ModBlocks.java @@ -126,7 +126,7 @@ public class ModBlocks { .tag(WWBlockTags.MILK.get()) .register(); } - + } public static void register() {} diff --git a/src/ww_deco/java/org/polaris2023/ww_deco/common/init/ModBlocks.java b/src/ww_deco/java/org/polaris2023/ww_deco/common/init/ModBlocks.java index 07798bf..03f5d9f 100644 --- a/src/ww_deco/java/org/polaris2023/ww_deco/common/init/ModBlocks.java +++ b/src/ww_deco/java/org/polaris2023/ww_deco/common/init/ModBlocks.java @@ -94,7 +94,6 @@ public class ModBlocks { .crown(() -> Blocks.SPRUCE_LOG) .register() ; - } public static void register() {} } From a4b565f7e24712d6c5591c43e3a91b0731aaf431 Mon Sep 17 00:00:00 2001 From: baka4n Date: Tue, 15 Jul 2025 21:57:48 +0800 Subject: [PATCH 9/9] =?UTF-8?q?=E5=8F=AF=E5=8F=98=E5=8C=96=E6=95=B0?= =?UTF-8?q?=E7=BB=84=E5=AE=9E=E4=BD=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build.gradle.kts | 1 + .../block/entity/ComponentBlockEntity.java | 90 +++++++++++++++++++ .../ww_ag/events/PlayerEvents.java | 7 -- 3 files changed, 91 insertions(+), 7 deletions(-) create mode 100644 src/ww_ag/java/org/polaris2023/ww_ag/common/block/entity/ComponentBlockEntity.java diff --git a/build.gradle.kts b/build.gradle.kts index 3412f2b..fa5678f 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -56,6 +56,7 @@ allprojects { dirs(rootProject.file("libs")) } maven("https://maven.neoforged.net/releases") + maven("https://mvn.devos.one/snapshots") maven("https://maven.ithundxr.dev/snapshots") // maven("https://maven.creeperhost.net/") } diff --git a/src/ww_ag/java/org/polaris2023/ww_ag/common/block/entity/ComponentBlockEntity.java b/src/ww_ag/java/org/polaris2023/ww_ag/common/block/entity/ComponentBlockEntity.java new file mode 100644 index 0000000..7fe3b4d --- /dev/null +++ b/src/ww_ag/java/org/polaris2023/ww_ag/common/block/entity/ComponentBlockEntity.java @@ -0,0 +1,90 @@ +package org.polaris2023.ww_ag.common.block.entity; + +import com.tterrag.registrate.util.nullness.NonNullConsumer; +import com.tterrag.registrate.util.nullness.NonNullUnaryOperator; +import net.minecraft.MethodsReturnNonnullByDefault; +import net.minecraft.core.BlockPos; +import net.minecraft.core.HolderLookup; +import net.minecraft.core.component.DataComponentMap; +import net.minecraft.core.component.PatchedDataComponentMap; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.nbt.NbtOps; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; + +import javax.annotation.ParametersAreNonnullByDefault; +import java.util.function.Consumer; + +/** + * @author baka4n + * @code @Date 2025/7/14 22:46:12 + */ +@SuppressWarnings({"unused", "LombokGetterMayBeUsed"}) +@ParametersAreNonnullByDefault +@MethodsReturnNonnullByDefault +public class ComponentBlockEntity> extends BlockEntity { + + private final PatchedDataComponentMap components; + + public ComponentBlockEntity(BlockEntityType type, BlockPos pos, BlockState blockState) { + super(type, pos, blockState); + this.components = new PatchedDataComponentMap(createDefaultComponents()); + } + + private DataComponentMap createDefaultComponents() { + return DataComponentMap.builder().build(); + } + + public DataComponentMap getComponents() { + return components; + } + + public T updateComponents(NonNullConsumer map) { + map.accept(components); + setChanged(); + if (level != null) { + level.sendBlockUpdated(worldPosition, getBlockState(), getBlockState(), Block.UPDATE_ALL); + } + return self(); + } + + + @Override + protected void saveAdditional(CompoundTag tag, HolderLookup.Provider registries) { + super.saveAdditional(tag, registries); + + PatchedDataComponentMap.CODEC.encodeStart(NbtOps.INSTANCE, components) + .result() + .ifPresent(componentTag -> tag.put("components", componentTag)); + } + + @Override + protected void loadAdditional(CompoundTag tag, HolderLookup.Provider registries) { + super.loadAdditional(tag, registries); + if (tag.contains("components")) { + DataComponentMap.CODEC.parse(NbtOps.INSTANCE, tag.get("components")) + .result() + .ifPresent(loadedComponents -> { + // 创建新的构建器并合并现有组件 + DataComponentMap.Builder builder = DataComponentMap.builder(); + // 保留未改变的组件 + components.stream().forEach(entry -> { + if (!loadedComponents.has(entry.type())) { + builder.addAll(components); + } + }); + // 添加新加载的组件 + builder.addAll(loadedComponents); + this.components.setAll(builder.build()); + }); + } + } + + @SuppressWarnings("unchecked") + public T self() { + return (T) this; + } +} diff --git a/src/ww_ag/java/org/polaris2023/ww_ag/events/PlayerEvents.java b/src/ww_ag/java/org/polaris2023/ww_ag/events/PlayerEvents.java index 4976a02..5ca3fff 100644 --- a/src/ww_ag/java/org/polaris2023/ww_ag/events/PlayerEvents.java +++ b/src/ww_ag/java/org/polaris2023/ww_ag/events/PlayerEvents.java @@ -73,11 +73,4 @@ public static void rightMilkPlaceAndGet(PlayerInteractEvent.RightClickBlock even } } } - - @SubscribeEvent - public static void a(ItemTooltipEvent event) { - ItemStack stack = event.getItemStack(); - ResourceLocation location = stack.getOrDefault(ModDataComponents.MILK_TYPE, ModBlocks.MILK.getId()); - event.getToolTip().add(Component.literal(location.toString())); - } }