mirror of
https://github.com/architectury/architectury-api.git
synced 2026-03-30 21:05:56 -05:00
@@ -22,6 +22,8 @@ package dev.architectury.test.recipes;
|
||||
import com.mojang.serialization.Codec;
|
||||
import com.mojang.serialization.codecs.RecordCodecBuilder;
|
||||
import net.minecraft.network.FriendlyByteBuf;
|
||||
import net.minecraft.network.RegistryFriendlyByteBuf;
|
||||
import net.minecraft.network.codec.StreamCodec;
|
||||
import net.minecraft.world.item.crafting.*;
|
||||
|
||||
public class TestRecipeSerializer implements RecipeSerializer<CustomRecipe> {
|
||||
@@ -31,6 +33,7 @@ public class TestRecipeSerializer implements RecipeSerializer<CustomRecipe> {
|
||||
.forGetter(CraftingRecipe::category)
|
||||
).apply(instance, FireworkRocketRecipe::new)
|
||||
);
|
||||
private static final StreamCodec<RegistryFriendlyByteBuf, CustomRecipe> STREAM_CODEC = StreamCodec.of(TestRecipeSerializer::toNetwork, TestRecipeSerializer::fromNetwork);
|
||||
|
||||
@Override
|
||||
public Codec<CustomRecipe> codec() {
|
||||
@@ -38,13 +41,16 @@ public class TestRecipeSerializer implements RecipeSerializer<CustomRecipe> {
|
||||
}
|
||||
|
||||
@Override
|
||||
public CustomRecipe fromNetwork(FriendlyByteBuf buf) {
|
||||
public StreamCodec<RegistryFriendlyByteBuf, CustomRecipe> streamCodec() {
|
||||
return STREAM_CODEC;
|
||||
}
|
||||
|
||||
public static CustomRecipe fromNetwork(FriendlyByteBuf buf) {
|
||||
CraftingBookCategory category = buf.readEnum(CraftingBookCategory.class);
|
||||
return new FireworkRocketRecipe(category);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void toNetwork(FriendlyByteBuf buf, CustomRecipe recipe) {
|
||||
public static void toNetwork(FriendlyByteBuf buf, CustomRecipe recipe) {
|
||||
buf.writeEnum(recipe.category());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -114,7 +114,7 @@ public class TestRegistries {
|
||||
new EquippableTickingItem(new Item.Properties().arch$tab(TestRegistries.TEST_TAB)));
|
||||
public static final RegistrySupplier<Item> TEST_EDIBLE = ITEMS.register("test_edible", () -> {
|
||||
FoodProperties.Builder fpBuilder = new FoodProperties.Builder().nutrition(8).saturationMod(0.8F).meat();
|
||||
FoodPropertiesHooks.effect(fpBuilder, () -> new MobEffectInstance(TEST_EFFECT.get(), 100), 1);
|
||||
FoodPropertiesHooks.effect(fpBuilder, () -> new MobEffectInstance(TEST_EFFECT, 100), 1);
|
||||
return new Item(new Item.Properties().food(fpBuilder.build()).arch$tab(TestRegistries.TEST_TAB));
|
||||
});
|
||||
public static final RegistrySupplier<Item> TEST_SPAWN_EGG = ITEMS.register("test_spawn_egg", () ->
|
||||
|
||||
@@ -23,8 +23,10 @@ import dev.architectury.registry.level.entity.trade.SimpleTrade;
|
||||
import dev.architectury.registry.level.entity.trade.TradeRegistry;
|
||||
import net.minecraft.core.registries.BuiltInRegistries;
|
||||
import net.minecraft.world.entity.npc.VillagerTrades;
|
||||
import net.minecraft.world.item.ItemStack;
|
||||
import net.minecraft.world.item.Items;
|
||||
import net.minecraft.world.item.trading.ItemCost;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
public class TestTrades {
|
||||
public static void init() {
|
||||
@@ -35,7 +37,7 @@ public class TestTrades {
|
||||
}
|
||||
|
||||
private static VillagerTrades.ItemListing[] createTrades() {
|
||||
var trade = new SimpleTrade(Items.APPLE.getDefaultInstance(), ItemStack.EMPTY, Items.ACACIA_BOAT.getDefaultInstance(), 1, 0, 1.0F);
|
||||
var trade = new SimpleTrade(new ItemCost(Items.APPLE), Optional.empty(), Items.ACACIA_BOAT.getDefaultInstance(), 1, 0, 1.0F);
|
||||
return new VillagerTrades.ItemListing[]{trade};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,9 +18,6 @@
|
||||
"net/minecraft/class_1755": [
|
||||
"dev/architectury/extensions/injected/InjectedBucketItemExtension"
|
||||
],
|
||||
"net/minecraft/class_5712": [
|
||||
"dev/architectury/extensions/injected/InjectedGameEventExtension"
|
||||
],
|
||||
"net/minecraft/class_4174$class_4175": [
|
||||
"dev/architectury/extensions/injected/InjectedFoodPropertiesBuilderExtension"
|
||||
],
|
||||
|
||||
Reference in New Issue
Block a user