diff options
| author | Daniel She <shekwancheung0528@gmail.com> | 2019-05-12 18:10:21 +0800 |
|---|---|---|
| committer | Daniel She <shekwancheung0528@gmail.com> | 2019-05-12 18:10:21 +0800 |
| commit | d979cb8b465c73eabca4e32be2ffa26648471fee (patch) | |
| tree | 8aac9df58b40052b6b19c0c3ac7da66076dc5b1c /src/main/java/me/shedaniel/rei/api/Renderable.java | |
| parent | 54f120195a63dbc145b74485e410abcd4c5acdf4 (diff) | |
| parent | a98d9191f1a97925a8a3e2e23c0a07867540a93a (diff) | |
| download | RoughlyEnoughItems-d979cb8b465c73eabca4e32be2ffa26648471fee.tar.gz RoughlyEnoughItems-d979cb8b465c73eabca4e32be2ffa26648471fee.tar.bz2 RoughlyEnoughItems-d979cb8b465c73eabca4e32be2ffa26648471fee.zip | |
Merge branch '1.14-dev' into 1.14
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); } |
