diff options
Diffstat (limited to 'src/main/java/me/shedaniel/rei/api/Renderable.java')
| -rw-r--r-- | src/main/java/me/shedaniel/rei/api/Renderable.java | 18 |
1 files changed, 18 insertions, 0 deletions
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<List<List<ItemStack>>> input, Supplier<List<ItemStack>> output) { + return new SimpleRecipeRenderer(input, output); + } + + static ItemStackRenderer fromItemStacks(List<ItemStack> 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); } |
