diff options
| author | Unknown <shekwancheung0528@gmail.com> | 2019-05-12 18:10:15 +0800 |
|---|---|---|
| committer | Unknown <shekwancheung0528@gmail.com> | 2019-05-12 18:10:15 +0800 |
| commit | a98d9191f1a97925a8a3e2e23c0a07867540a93a (patch) | |
| tree | 8aac9df58b40052b6b19c0c3ac7da66076dc5b1c /src/main/java/me/shedaniel/rei/api/Renderable.java | |
| parent | 45ed37cc8d0088b57cd2605482f471e69e5885f4 (diff) | |
| download | RoughlyEnoughItems-a98d9191f1a97925a8a3e2e23c0a07867540a93a.tar.gz RoughlyEnoughItems-a98d9191f1a97925a8a3e2e23c0a07867540a93a.tar.bz2 RoughlyEnoughItems-a98d9191f1a97925a8a3e2e23c0a07867540a93a.zip | |
Out of beta: Build 110
Diffstat (limited to 'src/main/java/me/shedaniel/rei/api/Renderable.java')
| -rw-r--r-- | src/main/java/me/shedaniel/rei/api/Renderable.java | 40 |
1 files changed, 34 insertions, 6 deletions
diff --git a/src/main/java/me/shedaniel/rei/api/Renderable.java b/src/main/java/me/shedaniel/rei/api/Renderable.java index 47b8f4beb..75d9161be 100644 --- a/src/main/java/me/shedaniel/rei/api/Renderable.java +++ b/src/main/java/me/shedaniel/rei/api/Renderable.java @@ -19,6 +19,12 @@ import java.util.function.Supplier; */ public interface Renderable { + /** + * Gets an item stack renderer by an item stack supplier + * + * @param supplier the supplier for getting the item stack + * @return the item stack renderer + */ static ItemStackRenderer fromItemStackSupplier(Supplier<ItemStack> supplier) { return new ItemStackRenderer() { @Override @@ -28,19 +34,32 @@ public interface Renderable { }; } + /** + * Gets an item stack renderer by an item stack + * + * @param stack the item stack to be displayed + * @return the item stack renderer + */ static ItemStackRenderer fromItemStack(ItemStack stack) { - return new ItemStackRenderer() { - @Override - public ItemStack getItemStack() { - return stack; - } - }; + return fromItemStackSupplier(() -> stack); } + /** + * Gets an empty renderer + * + * @return an empty renderer + */ static EmptyRenderer empty() { return EmptyRenderer.INSTANCE; } + /** + * Gets a simple recipe renderer from inputs and outputs + * + * @param input the list of input items + * @param output the list of output items + * @return the recipe renderer + */ static SimpleRecipeRenderer fromRecipe(Supplier<List<List<ItemStack>>> input, Supplier<List<ItemStack>> output) { return new SimpleRecipeRenderer(input, output); } @@ -56,5 +75,14 @@ public interface Renderable { }; } + /** + * Renders of the renderable + * + * @param x the x coordinate of the renderable + * @param y the y coordinate of the renderable + * @param mouseX the x coordinate of the mouse + * @param mouseY the y coordinate of the mouse + * @param delta the delta + */ void render(int x, int y, double mouseX, double mouseY, float delta); } |
