mirror of
https://github.com/architectury/architectury-api.git
synced 2026-03-30 05:05:19 -05:00
@@ -10,7 +10,7 @@ plugins {
|
||||
id "architectury-plugin" version "3.4-SNAPSHOT"
|
||||
id "dev.architectury.loom" version "1.1-SNAPSHOT" apply false
|
||||
id "org.cadixdev.licenser" version "0.6.1"
|
||||
id "io.github.juuxel.loom-quiltflower" version "1.8.0" apply false
|
||||
id "io.github.juuxel.loom-vineflower" version "1.11.0" apply false
|
||||
id "me.shedaniel.unified-publishing" version "0.1.+" apply false
|
||||
id "maven-publish"
|
||||
}
|
||||
|
||||
@@ -23,7 +23,7 @@ import dev.architectury.event.CompoundEventResult;
|
||||
import dev.architectury.event.Event;
|
||||
import dev.architectury.event.EventFactory;
|
||||
import dev.architectury.event.EventResult;
|
||||
import net.minecraft.advancements.Advancement;
|
||||
import net.minecraft.advancements.AdvancementHolder;
|
||||
import net.minecraft.resources.ResourceKey;
|
||||
import net.minecraft.server.level.ServerPlayer;
|
||||
import net.minecraft.world.Container;
|
||||
@@ -52,7 +52,7 @@ public interface PlayerEvent {
|
||||
*/
|
||||
Event<PlayerRespawn> PLAYER_RESPAWN = EventFactory.createLoop();
|
||||
/**
|
||||
* @see PlayerAdvancement#award(ServerPlayer, Advancement)
|
||||
* @see PlayerAdvancement#award(ServerPlayer, AdvancementHolder)
|
||||
*/
|
||||
Event<PlayerAdvancement> PLAYER_ADVANCEMENT = EventFactory.createLoop();
|
||||
/**
|
||||
@@ -153,7 +153,7 @@ public interface PlayerEvent {
|
||||
* @param player The player who got the advancement.
|
||||
* @param advancement The advancement the player got.
|
||||
*/
|
||||
void award(ServerPlayer player, Advancement advancement);
|
||||
void award(ServerPlayer player, AdvancementHolder advancement);
|
||||
}
|
||||
|
||||
interface CraftItem {
|
||||
|
||||
@@ -48,7 +48,7 @@ accessible field net/minecraft/world/level/block/state/BlockBehaviour$Properties
|
||||
mutable field net/minecraft/world/level/block/state/BlockBehaviour$Properties dynamicShape Z
|
||||
accessible method net/minecraft/world/level/block/state/BlockBehaviour$Properties <init> ()V
|
||||
transitive-accessible method net/minecraft/world/entity/player/Player closeContainer ()V
|
||||
transitive-accessible method net/minecraft/advancements/CriteriaTriggers register (Lnet/minecraft/advancements/CriterionTrigger;)Lnet/minecraft/advancements/CriterionTrigger;
|
||||
transitive-accessible method net/minecraft/advancements/CriteriaTriggers register (Ljava/lang/String;Lnet/minecraft/advancements/CriterionTrigger;)Lnet/minecraft/advancements/CriterionTrigger;
|
||||
transitive-accessible method net/minecraft/world/inventory/MenuType <init> (Lnet/minecraft/world/inventory/MenuType$MenuSupplier;Lnet/minecraft/world/flag/FeatureFlagSet;)V
|
||||
transitive-accessible class net/minecraft/world/inventory/MenuType$MenuSupplier
|
||||
accessible method net/minecraft/world/entity/Entity getEncodeId ()Ljava/lang/String;
|
||||
|
||||
@@ -86,7 +86,7 @@ public class EventHandlerImpl {
|
||||
ServerMessageDecoratorEvent.EVENT.register(ServerMessageDecoratorEvent.CONTENT_PHASE, (player, component) -> {
|
||||
ChatEvent.ChatComponent chatComponent = new ChatComponentImpl(component);
|
||||
ChatEvent.DECORATE.invoker().decorate(player, chatComponent);
|
||||
return CompletableFuture.completedFuture(chatComponent.get());
|
||||
return chatComponent.get();
|
||||
});
|
||||
ServerMessageEvents.ALLOW_CHAT_MESSAGE.register((message, sender, params) -> {
|
||||
return !ChatEvent.RECEIVED.invoker().received(sender, message.decoratedContent()).isFalse();
|
||||
@@ -95,6 +95,6 @@ public class EventHandlerImpl {
|
||||
|
||||
@Environment(EnvType.SERVER)
|
||||
public static void registerServer() {
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
package dev.architectury.mixin.fabric;
|
||||
|
||||
import dev.architectury.event.events.common.PlayerEvent;
|
||||
import net.minecraft.advancements.Advancement;
|
||||
import net.minecraft.advancements.AdvancementHolder;
|
||||
import net.minecraft.server.PlayerAdvancements;
|
||||
import net.minecraft.server.level.ServerPlayer;
|
||||
import org.spongepowered.asm.mixin.Mixin;
|
||||
@@ -37,7 +37,7 @@ public class MixinPlayerAdvancements {
|
||||
@Inject(method = "award",
|
||||
at = @At(value = "INVOKE", target = "Lnet/minecraft/advancements/AdvancementRewards;grant(Lnet/minecraft/server/level/ServerPlayer;)V",
|
||||
shift = At.Shift.AFTER))
|
||||
private void award(Advancement advancement, String string, CallbackInfoReturnable<Boolean> cir) {
|
||||
private void award(AdvancementHolder advancement, String string, CallbackInfoReturnable<Boolean> cir) {
|
||||
PlayerEvent.PLAYER_ADVANCEMENT.invoker().award(player, advancement);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,8 +3,8 @@ org.gradle.daemon=false
|
||||
|
||||
platforms=fabric
|
||||
|
||||
minecraft_version=23w33a
|
||||
supported_version=23w33a
|
||||
minecraft_version=23w35a
|
||||
supported_version=23w35a
|
||||
|
||||
artifact_type=beta
|
||||
|
||||
@@ -14,7 +14,7 @@ base_version=10.0
|
||||
maven_group=dev.architectury
|
||||
|
||||
fabric_loader_version=0.14.22
|
||||
fabric_api_version=0.87.1+1.20.2
|
||||
fabric_api_version=0.87.2+1.20.2
|
||||
mod_menu_version=7.0.0
|
||||
|
||||
forge_version=46.0.1
|
||||
|
||||
@@ -31,6 +31,7 @@ import dev.architectury.utils.Env;
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
import net.minecraft.ChatFormatting;
|
||||
import net.minecraft.advancements.Advancement;
|
||||
import net.minecraft.client.gui.screens.inventory.AnvilScreen;
|
||||
import net.minecraft.core.Position;
|
||||
import net.minecraft.core.Vec3i;
|
||||
@@ -192,7 +193,7 @@ public class DebugEvents {
|
||||
TestMod.SINK.accept("Player cloned: " + newPlayer.getScoreboardName() + logSide(newPlayer.level()));
|
||||
});
|
||||
PlayerEvent.PLAYER_ADVANCEMENT.register((player, advancement) -> {
|
||||
TestMod.SINK.accept(player.getScoreboardName() + " was awarded with %s" + logSide(player.level()), advancement.getChatComponent().getString());
|
||||
TestMod.SINK.accept(player.getScoreboardName() + " was awarded with %s" + logSide(player.level()), Advancement.name(advancement));
|
||||
});
|
||||
PlayerEvent.CRAFT_ITEM.register((player, constructed, inventory) -> {
|
||||
TestMod.SINK.accept(player.getScoreboardName() + " crafts " + Component.translatable(constructed.getDescriptionId()).getString() + logSide(player.level()));
|
||||
|
||||
@@ -19,29 +19,28 @@
|
||||
|
||||
package dev.architectury.test.recipes;
|
||||
|
||||
import com.google.gson.JsonObject;
|
||||
import com.mojang.serialization.Codec;
|
||||
import com.mojang.serialization.codecs.RecordCodecBuilder;
|
||||
import net.minecraft.network.FriendlyByteBuf;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
import net.minecraft.util.GsonHelper;
|
||||
import net.minecraft.world.item.crafting.CraftingBookCategory;
|
||||
import net.minecraft.world.item.crafting.CustomRecipe;
|
||||
import net.minecraft.world.item.crafting.FireworkRocketRecipe;
|
||||
import net.minecraft.world.item.crafting.RecipeSerializer;
|
||||
|
||||
import java.util.Objects;
|
||||
import net.minecraft.world.item.crafting.*;
|
||||
|
||||
public class TestRecipeSerializer implements RecipeSerializer<CustomRecipe> {
|
||||
private static final Codec<CustomRecipe> CODEC = RecordCodecBuilder.create(instance ->
|
||||
instance.group(CraftingBookCategory.CODEC.fieldOf("category")
|
||||
.orElse(CraftingBookCategory.MISC)
|
||||
.forGetter(CraftingRecipe::category)
|
||||
).apply(instance, FireworkRocketRecipe::new)
|
||||
);
|
||||
|
||||
@Override
|
||||
public CustomRecipe fromJson(ResourceLocation id, JsonObject json) {
|
||||
CraftingBookCategory category = Objects.requireNonNullElse(
|
||||
CraftingBookCategory.CODEC.byName(GsonHelper.getAsString(json, "category", null)), CraftingBookCategory.MISC);
|
||||
return new FireworkRocketRecipe(id, category);
|
||||
public Codec<CustomRecipe> codec() {
|
||||
return CODEC;
|
||||
}
|
||||
|
||||
@Override
|
||||
public CustomRecipe fromNetwork(ResourceLocation id, FriendlyByteBuf buf) {
|
||||
public CustomRecipe fromNetwork(FriendlyByteBuf buf) {
|
||||
CraftingBookCategory category = buf.readEnum(CraftingBookCategory.class);
|
||||
return new FireworkRocketRecipe(id, category);
|
||||
return new FireworkRocketRecipe(category);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user