diff --git a/common/src/main/java/de/erdbeerbaerlp/dcintegration/architectury/mixin/AdvancementMixin.java b/common/src/main/java/de/erdbeerbaerlp/dcintegration/architectury/mixin/AdvancementMixin.java index d318eb5..1802c44 100644 --- a/common/src/main/java/de/erdbeerbaerlp/dcintegration/architectury/mixin/AdvancementMixin.java +++ b/common/src/main/java/de/erdbeerbaerlp/dcintegration/architectury/mixin/AdvancementMixin.java @@ -13,6 +13,7 @@ import net.minecraft.advancements.AdvancementHolder; import net.minecraft.server.PlayerAdvancements; import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.level.GameRules; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.injection.At; @@ -38,6 +39,9 @@ public void advancement(AdvancementHolder advancementEntry, String criterionName final Advancement advancement = advancementEntry.value(); if (LinkManager.isPlayerLinked(player.getUUID()) && LinkManager.getLink(null, player.getUUID()).settings.hideFromDiscord) return; + + if (!player.serverLevel().getGameRules().getBoolean(GameRules.RULE_ANNOUNCE_ADVANCEMENTS)) return; + if (advancement.display().isPresent() && advancement.display().get().shouldAnnounceChat()) { if (!Localization.instance().advancementMessage.isBlank()) {