diff options
| author | Daniel She <shekwancheung0528@gmail.com> | 2019-06-06 20:14:42 +0800 |
|---|---|---|
| committer | Daniel She <shekwancheung0528@gmail.com> | 2019-06-06 20:14:42 +0800 |
| commit | fab214806ccc3ffbfd03e4034af6cee906124b7a (patch) | |
| tree | d5c1a2e108b81d3a57988d4f03ed515c991e75e4 /src/main/java/me/shedaniel/rei/plugin/DefaultPlugin.java | |
| parent | d414c887e0c42325cf2e7c778b32e3fb13ee2e69 (diff) | |
| parent | 558504bd65af2138d73825f1ffa8066a5d70e8f5 (diff) | |
| download | RoughlyEnoughItems-fab214806ccc3ffbfd03e4034af6cee906124b7a.tar.gz RoughlyEnoughItems-fab214806ccc3ffbfd03e4034af6cee906124b7a.tar.bz2 RoughlyEnoughItems-fab214806ccc3ffbfd03e4034af6cee906124b7a.zip | |
Merge branch 'fabric-dev' into 1.14
Diffstat (limited to 'src/main/java/me/shedaniel/rei/plugin/DefaultPlugin.java')
| -rw-r--r-- | src/main/java/me/shedaniel/rei/plugin/DefaultPlugin.java | 49 |
1 files changed, 25 insertions, 24 deletions
diff --git a/src/main/java/me/shedaniel/rei/plugin/DefaultPlugin.java b/src/main/java/me/shedaniel/rei/plugin/DefaultPlugin.java index 1120e4384..3815b35b9 100644 --- a/src/main/java/me/shedaniel/rei/plugin/DefaultPlugin.java +++ b/src/main/java/me/shedaniel/rei/plugin/DefaultPlugin.java @@ -42,9 +42,14 @@ public class DefaultPlugin implements REIPluginEntry { public static final Identifier STONE_CUTTING = new Identifier("minecraft", "plugins/stone_cutting"); public static final Identifier BREWING = new Identifier("minecraft", "plugins/brewing"); public static final Identifier PLUGIN = new Identifier("roughlyenoughitems", "default_plugin"); - + private static final Identifier DISPLAY_TEXTURE = new Identifier("roughlyenoughitems", "textures/gui/display.png"); + private static final Identifier DISPLAY_TEXTURE_DARK = new Identifier("roughlyenoughitems", "textures/gui/display_dark.png"); private static final List<DefaultBrewingDisplay> BREWING_DISPLAYS = Lists.newArrayList(); + public static Identifier getDisplayTexture() { + return RoughlyEnoughItemsCore.getConfigManager().getConfig().darkTheme ? DISPLAY_TEXTURE_DARK : DISPLAY_TEXTURE; + } + public static void registerBrewingDisplay(DefaultBrewingDisplay display) { BREWING_DISPLAYS.add(display); } @@ -97,21 +102,13 @@ public class DefaultPlugin implements REIPluginEntry { @Override public void registerRecipeDisplays(RecipeHelper recipeHelper) { - for(Recipe recipe : recipeHelper.getAllSortedRecipes()) - if (recipe instanceof ShapelessRecipe) - recipeHelper.registerDisplay(CRAFTING, new DefaultShapelessDisplay((ShapelessRecipe) recipe)); - else if (recipe instanceof ShapedRecipe) - recipeHelper.registerDisplay(CRAFTING, new DefaultShapedDisplay((ShapedRecipe) recipe)); - else if (recipe instanceof SmeltingRecipe) - recipeHelper.registerDisplay(SMELTING, new DefaultSmeltingDisplay((SmeltingRecipe) recipe)); - else if (recipe instanceof SmokingRecipe) - recipeHelper.registerDisplay(SMOKING, new DefaultSmokingDisplay((SmokingRecipe) recipe)); - else if (recipe instanceof BlastingRecipe) - recipeHelper.registerDisplay(BLASTING, new DefaultBlastingDisplay((BlastingRecipe) recipe)); - else if (recipe instanceof CampfireCookingRecipe) - recipeHelper.registerDisplay(CAMPFIRE, new DefaultCampfireDisplay((CampfireCookingRecipe) recipe)); - else if (recipe instanceof StonecuttingRecipe) - recipeHelper.registerDisplay(STONE_CUTTING, new DefaultStoneCuttingDisplay((StonecuttingRecipe) recipe)); + recipeHelper.registerRecipes(CRAFTING, ShapelessRecipe.class, DefaultShapelessDisplay::new); + recipeHelper.registerRecipes(CRAFTING, ShapedRecipe.class, DefaultShapedDisplay::new); + recipeHelper.registerRecipes(SMELTING, SmeltingRecipe.class, DefaultSmeltingDisplay::new); + recipeHelper.registerRecipes(SMOKING, SmokingRecipe.class, DefaultSmokingDisplay::new); + recipeHelper.registerRecipes(BLASTING, BlastingRecipe.class, DefaultBlastingDisplay::new); + recipeHelper.registerRecipes(CAMPFIRE, CampfireCookingRecipe.class, DefaultCampfireDisplay::new); + recipeHelper.registerRecipes(STONE_CUTTING, StonecuttingRecipe.class, DefaultStoneCuttingDisplay::new); BREWING_DISPLAYS.stream().forEachOrdered(display -> recipeHelper.registerDisplay(BREWING, display)); List<ItemStack> arrowStack = Collections.singletonList(Items.ARROW.getDefaultStack()); RoughlyEnoughItemsCore.getItemRegisterer().getItemList().stream().filter(stack -> stack.getItem().equals(Items.LINGERING_POTION)).forEach(stack -> { @@ -238,6 +235,13 @@ public class DefaultPlugin implements REIPluginEntry { @Override public void registerOthers(RecipeHelper recipeHelper) { + recipeHelper.registerWorkingStations(CRAFTING, new ItemStack(Items.CRAFTING_TABLE)); + recipeHelper.registerWorkingStations(SMELTING, new ItemStack(Items.FURNACE)); + recipeHelper.registerWorkingStations(SMOKING, new ItemStack(Items.SMOKER)); + recipeHelper.registerWorkingStations(BLASTING, new ItemStack(Items.BLAST_FURNACE)); + recipeHelper.registerWorkingStations(CAMPFIRE, new ItemStack(Items.CAMPFIRE)); + recipeHelper.registerWorkingStations(BREWING, new ItemStack(Items.BREWING_STAND)); + recipeHelper.registerWorkingStations(STONE_CUTTING, new ItemStack(Items.STONECUTTER)); recipeHelper.registerRecipeVisibilityHandler(new DisplayVisibilityHandler() { @Override public DisplayVisibility handleDisplay(RecipeCategory category, RecipeDisplay display) { @@ -249,10 +253,7 @@ public class DefaultPlugin implements REIPluginEntry { return -1f; } }); - recipeHelper.registerDefaultSpeedCraftButtonArea(DefaultPlugin.CRAFTING); - recipeHelper.registerDefaultSpeedCraftButtonArea(DefaultPlugin.SMELTING); - recipeHelper.registerDefaultSpeedCraftButtonArea(DefaultPlugin.SMOKING); - recipeHelper.registerDefaultSpeedCraftButtonArea(DefaultPlugin.BLASTING); + recipeHelper.registerSpeedCraftButtonArea(DefaultPlugin.CAMPFIRE, bounds -> new Rectangle((int) bounds.getMaxX() - 16, bounds.y + 6, 10, 10)); recipeHelper.registerSpeedCraftFunctional(DefaultPlugin.CRAFTING, new SpeedCraftFunctional<DefaultCraftingDisplay>() { @Override public Class[] getFunctioningFor() { @@ -269,7 +270,7 @@ public class DefaultPlugin implements REIPluginEntry { ((RecipeBookGuiHooks) (((InventoryScreen) screen).getRecipeBookGui())).rei_getGhostSlots().reset(); else return false; - MinecraftClient.getInstance().interactionManager.clickRecipe(MinecraftClient.getInstance().player.container.syncId, (Recipe) recipe.getRecipe().get(), Screen.hasShiftDown()); + MinecraftClient.getInstance().interactionManager.clickRecipe(MinecraftClient.getInstance().player.container.syncId, (Recipe<?>) recipe.getRecipe().get(), Screen.hasShiftDown()); return true; } @@ -292,7 +293,7 @@ public class DefaultPlugin implements REIPluginEntry { ((RecipeBookGuiHooks) (((FurnaceScreen) screen).getRecipeBookGui())).rei_getGhostSlots().reset(); else return false; - MinecraftClient.getInstance().interactionManager.clickRecipe(MinecraftClient.getInstance().player.container.syncId, (Recipe) recipe.getRecipe().get(), Screen.hasShiftDown()); + MinecraftClient.getInstance().interactionManager.clickRecipe(MinecraftClient.getInstance().player.container.syncId, (Recipe<?>) recipe.getRecipe().get(), Screen.hasShiftDown()); return true; } @@ -315,7 +316,7 @@ public class DefaultPlugin implements REIPluginEntry { ((RecipeBookGuiHooks) (((SmokerScreen) screen).getRecipeBookGui())).rei_getGhostSlots().reset(); else return false; - MinecraftClient.getInstance().interactionManager.clickRecipe(MinecraftClient.getInstance().player.container.syncId, (Recipe) recipe.getRecipe().get(), Screen.hasShiftDown()); + MinecraftClient.getInstance().interactionManager.clickRecipe(MinecraftClient.getInstance().player.container.syncId, (Recipe<?>) recipe.getRecipe().get(), Screen.hasShiftDown()); return true; } @@ -343,7 +344,7 @@ public class DefaultPlugin implements REIPluginEntry { ((RecipeBookGuiHooks) (((BlastFurnaceScreen) screen).getRecipeBookGui())).rei_getGhostSlots().reset(); else return false; - MinecraftClient.getInstance().interactionManager.clickRecipe(MinecraftClient.getInstance().player.container.syncId, (Recipe) recipe.getRecipe().get(), Screen.hasShiftDown()); + MinecraftClient.getInstance().interactionManager.clickRecipe(MinecraftClient.getInstance().player.container.syncId, (Recipe<?>) recipe.getRecipe().get(), Screen.hasShiftDown()); return true; } }); |
