From c1b0219e8d5458ddf1eccc194d34893f698b7d88 Mon Sep 17 00:00:00 2001 From: Unknown Date: Thu, 9 May 2019 22:38:34 +0800 Subject: VillagerRecipeViewingScreen done --- src/main/java/me/shedaniel/rei/api/Renderable.java | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'src/main/java/me/shedaniel/rei/api/Renderable.java') diff --git a/src/main/java/me/shedaniel/rei/api/Renderable.java b/src/main/java/me/shedaniel/rei/api/Renderable.java index 35c9890b8..9059af798 100644 --- a/src/main/java/me/shedaniel/rei/api/Renderable.java +++ b/src/main/java/me/shedaniel/rei/api/Renderable.java @@ -2,8 +2,11 @@ package me.shedaniel.rei.api; import me.shedaniel.rei.gui.renderables.EmptyRenderer; import me.shedaniel.rei.gui.renderables.ItemStackRenderer; +import me.shedaniel.rei.gui.renderables.SimpleRecipeRenderer; import net.minecraft.item.ItemStack; +import net.minecraft.util.math.MathHelper; +import java.util.List; import java.util.function.Supplier; public interface Renderable { @@ -30,5 +33,20 @@ public interface Renderable { return EmptyRenderer.INSTANCE; } + static SimpleRecipeRenderer fromRecipe(Supplier>> input, Supplier> output) { + return new SimpleRecipeRenderer(input, output); + } + + static ItemStackRenderer fromItemStacks(List stacks) { + return new ItemStackRenderer() { + @Override + public ItemStack getItemStack() { + if (stacks.isEmpty()) + return ItemStack.EMPTY; + return stacks.get(MathHelper.floor((System.currentTimeMillis() / 500 % (double) stacks.size()) / 1f)); + } + }; + } + void render(int x, int y, double mouseX, double mouseY, float delta); } -- cgit