|
| 1 | +package com.github.gtexpert.gtwp.integration.bop.recipes; |
| 2 | + |
| 3 | +import java.util.Arrays; |
| 4 | +import java.util.List; |
| 5 | + |
| 6 | +import gregtech.loaders.WoodTypeEntry; |
| 7 | + |
| 8 | +import com.github.gtexpert.gtwp.api.util.Mods; |
| 9 | +import com.github.gtexpert.gtwp.loaders.GTWPWoodRecipeLoader; |
| 10 | + |
| 11 | +public class BoPWoodRecipe { |
| 12 | + |
| 13 | + private static List<WoodTypeEntry> DEFAULT_ENTRIES; |
| 14 | + |
| 15 | + private static List<WoodTypeEntry> getDefaultEntries() { |
| 16 | + if (DEFAULT_ENTRIES == null) { |
| 17 | + final String mcModId = Mods.Names.BIOMES_O_PLENTY; |
| 18 | + return DEFAULT_ENTRIES = Arrays.asList( |
| 19 | + new WoodTypeEntry.Builder(mcModId, "sacred_oak") |
| 20 | + .log(Mods.BoP.getItem("log_0", 1, 4)).removeCharcoalRecipe() |
| 21 | + .planks(Mods.BoP.getItem("planks_0", 1, 0), "sacred_oak_planks") |
| 22 | + .slab(Mods.BoP.getItem("wood_slab_0", 1, 0), "sacred_oak_wooden_slab") |
| 23 | + .stairs(Mods.BoP.getItem("sacred_oak_stairs", 1), "sacred_oak_stairs") |
| 24 | + .fenceGate(Mods.BoP.getItem("sacred_oak_fence_gate", 1), "sacred_oak_fence_gate") |
| 25 | + .fence(Mods.BoP.getItem("sacred_oak_fence", 1), "sacred_oak_fence") |
| 26 | + .door(Mods.BoP.getItem("sacred_oak_door", 1), "sacred_oak_door") |
| 27 | + .boat(Mods.BoP.getItem("boat_sacred_oak", 1), "boat_sacred_oak") |
| 28 | + .build(), |
| 29 | + new WoodTypeEntry.Builder(mcModId, "cherry") |
| 30 | + .log(Mods.BoP.getItem("log_0", 1, 5)).removeCharcoalRecipe() |
| 31 | + .planks(Mods.BoP.getItem("planks_0", 1, 1), "cherry_planks") |
| 32 | + .slab(Mods.BoP.getItem("wood_slab_0", 1, 1), "cherry_wooden_slab") |
| 33 | + .stairs(Mods.BoP.getItem("cherry_stairs", 1), "cherry_stairs") |
| 34 | + .fenceGate(Mods.BoP.getItem("cherry_fence_gate", 1), "cherry_fence_gate") |
| 35 | + .fence(Mods.BoP.getItem("cherry_fence", 1), "cherry_fence") |
| 36 | + .door(Mods.BoP.getItem("cherry_door", 1), "cherry_door") |
| 37 | + .boat(Mods.BoP.getItem("boat_cherry", 1), "boat_cherry") |
| 38 | + .build(), |
| 39 | + new WoodTypeEntry.Builder(mcModId, "umbran") |
| 40 | + .log(Mods.BoP.getItem("log_0", 1, 6)).removeCharcoalRecipe() |
| 41 | + .planks(Mods.BoP.getItem("planks_0", 1, 2), "umbran_planks") |
| 42 | + .slab(Mods.BoP.getItem("wood_slab_0", 1, 2), "umbran_wooden_slab") |
| 43 | + .stairs(Mods.BoP.getItem("umbran_stairs", 1), "umbran_stairs") |
| 44 | + .fenceGate(Mods.BoP.getItem("umbran_fence_gate", 1), "umbran_fence_gate") |
| 45 | + .fence(Mods.BoP.getItem("umbran_fence", 1), "umbran_fence") |
| 46 | + .door(Mods.BoP.getItem("umbran_door", 1), "umbran_door") |
| 47 | + .boat(Mods.BoP.getItem("boat_umbran", 1), "boat_umbran") |
| 48 | + .build(), |
| 49 | + new WoodTypeEntry.Builder(mcModId, "fir") |
| 50 | + .log(Mods.BoP.getItem("log_0", 1, 7)).removeCharcoalRecipe() |
| 51 | + .planks(Mods.BoP.getItem("planks_0", 1, 3), "fir_planks") |
| 52 | + .slab(Mods.BoP.getItem("wood_slab_0", 1, 3), "fir_wooden_slab") |
| 53 | + .stairs(Mods.BoP.getItem("fir_stairs", 1), "fir_stairs") |
| 54 | + .fenceGate(Mods.BoP.getItem("fir_fence_gate", 1), "fir_fence_gate") |
| 55 | + .fence(Mods.BoP.getItem("fir", 1), "fir") |
| 56 | + .door(Mods.BoP.getItem("fir_door", 1), "fir_door") |
| 57 | + .boat(Mods.BoP.getItem("boat_fir", 1), "boat_fir") |
| 58 | + .build(), |
| 59 | + new WoodTypeEntry.Builder(mcModId, "ethereal") |
| 60 | + .log(Mods.BoP.getItem("log_1", 1, 4)).removeCharcoalRecipe() |
| 61 | + .planks(Mods.BoP.getItem("planks_0", 1, 4), "ethereal_planks") |
| 62 | + .slab(Mods.BoP.getItem("wood_slab_0", 1, 4), "ethereal_wooden_slab") |
| 63 | + .stairs(Mods.BoP.getItem("ethereal_stairs", 1), "ethereal_stairs") |
| 64 | + .fenceGate(Mods.BoP.getItem("ethereal_fence_gate", 1), "ethereal_fence_gate") |
| 65 | + .fence(Mods.BoP.getItem("ethereal_fence", 1), "ethereal_fence") |
| 66 | + .door(Mods.BoP.getItem("ethereal_door", 1), "ethereal_door") |
| 67 | + .boat(Mods.BoP.getItem("boat_ethereal", 1), "boat_ethereal") |
| 68 | + .build(), |
| 69 | + new WoodTypeEntry.Builder(mcModId, "magic") |
| 70 | + .log(Mods.BoP.getItem("log_1", 1, 5)).removeCharcoalRecipe() |
| 71 | + .planks(Mods.BoP.getItem("planks_0", 1, 5), "magic_planks") |
| 72 | + .slab(Mods.BoP.getItem("wood_slab_0", 1, 5), "magic_wooden_slab") |
| 73 | + .stairs(Mods.BoP.getItem("magic_stairs", 1), "magic_stairs") |
| 74 | + .fenceGate(Mods.BoP.getItem("magic_fence_gate", 1), "magic_fence_gate") |
| 75 | + .fence(Mods.BoP.getItem("magic_fence", 1), "magic_fence") |
| 76 | + .door(Mods.BoP.getItem("magic_door", 1), "magic_door") |
| 77 | + .boat(Mods.BoP.getItem("boat_magic", 1), "boat_magic") |
| 78 | + .build(), |
| 79 | + new WoodTypeEntry.Builder(mcModId, "mangrove") |
| 80 | + .log(Mods.BoP.getItem("log_1", 1, 6)).removeCharcoalRecipe() |
| 81 | + .planks(Mods.BoP.getItem("planks_0", 1, 6), "mangrove_planks") |
| 82 | + .slab(Mods.BoP.getItem("wood_slab_0", 1, 6), "mangrove_wooden_slab") |
| 83 | + .stairs(Mods.BoP.getItem("mangrove_stairs", 1), "mangrove_stairs") |
| 84 | + .fenceGate(Mods.BoP.getItem("mangrove_fence_gate", 1), "mangrove_fence_gate") |
| 85 | + .fence(Mods.BoP.getItem("mangrove_fence", 1), "mangrove_fence") |
| 86 | + .door(Mods.BoP.getItem("mangrove_door", 1), "mangrove_door") |
| 87 | + .boat(Mods.BoP.getItem("boat_mangrove", 1), "boat_mangrove") |
| 88 | + .build(), |
| 89 | + new WoodTypeEntry.Builder(mcModId, "palm") |
| 90 | + .log(Mods.BoP.getItem("log_1", 1, 7)).removeCharcoalRecipe() |
| 91 | + .planks(Mods.BoP.getItem("planks_0", 1, 7), "palm_planks") |
| 92 | + .slab(Mods.BoP.getItem("wood_slab_0", 1, 7), "palm_wooden_slab") |
| 93 | + .stairs(Mods.BoP.getItem("palm_stairs", 1), "palm_stairs") |
| 94 | + .fenceGate(Mods.BoP.getItem("palm_fence_gate", 1), "palm_fence_gate") |
| 95 | + .fence(Mods.BoP.getItem("palm_fence", 1), "palm_fence") |
| 96 | + .door(Mods.BoP.getItem("palm_door", 1), "palm_door") |
| 97 | + .boat(Mods.BoP.getItem("boat_palm", 1), "boat_palm") |
| 98 | + .build(), |
| 99 | + new WoodTypeEntry.Builder(mcModId, "redwood") |
| 100 | + .log(Mods.BoP.getItem("log_2", 1, 4)).removeCharcoalRecipe() |
| 101 | + .planks(Mods.BoP.getItem("planks_0", 1, 8), "redwood_planks") |
| 102 | + .slab(Mods.BoP.getItem("wood_slab_1", 1, 0), "redwood_wooden_slab") |
| 103 | + .stairs(Mods.BoP.getItem("redwood_stairs", 1), "redwood_stairs") |
| 104 | + .fenceGate(Mods.BoP.getItem("redwood_fence_gate", 1), "redwood_fence_gate") |
| 105 | + .fence(Mods.BoP.getItem("redwood_fence", 1), "redwood_fence") |
| 106 | + .door(Mods.BoP.getItem("redwood_door", 1), "redwood_door") |
| 107 | + .boat(Mods.BoP.getItem("boat_redwood", 1), "boat_redwood") |
| 108 | + .build(), |
| 109 | + new WoodTypeEntry.Builder(mcModId, "willow") |
| 110 | + .log(Mods.BoP.getItem("log_2", 1, 5)).removeCharcoalRecipe() |
| 111 | + .planks(Mods.BoP.getItem("planks_0", 1, 9), "willow_planks") |
| 112 | + .slab(Mods.BoP.getItem("wood_slab_1", 1, 1), "willow_wooden_slab") |
| 113 | + .stairs(Mods.BoP.getItem("willow_stairs", 1), "willow_stairs") |
| 114 | + .fenceGate(Mods.BoP.getItem("willow_fence_gate", 1), "willow_fence_gate") |
| 115 | + .fence(Mods.BoP.getItem("willow_fence", 1), "willow_fence") |
| 116 | + .door(Mods.BoP.getItem("willow_door", 1), "willow_door") |
| 117 | + .boat(Mods.BoP.getItem("boat_willow", 1), "boat_willow") |
| 118 | + .build(), |
| 119 | + new WoodTypeEntry.Builder(mcModId, "pine") |
| 120 | + .log(Mods.BoP.getItem("log_2", 1, 6)).removeCharcoalRecipe() |
| 121 | + .planks(Mods.BoP.getItem("planks_0", 1, 10), "pine_planks") |
| 122 | + .slab(Mods.BoP.getItem("wood_slab_1", 1, 2), "pine_wooden_slab") |
| 123 | + .stairs(Mods.BoP.getItem("pine_stairs", 1), "pine_stairs") |
| 124 | + .fenceGate(Mods.BoP.getItem("pine_fence_gate", 1), "pine_fence_gate") |
| 125 | + .fence(Mods.BoP.getItem("pine_fence", 1), "pine_fence") |
| 126 | + .door(Mods.BoP.getItem("pine_door", 1), "pine_door") |
| 127 | + .boat(Mods.BoP.getItem("boat_pine", 1), "boat_pine") |
| 128 | + .build(), |
| 129 | + new WoodTypeEntry.Builder(mcModId, "hellbark") |
| 130 | + .log(Mods.BoP.getItem("log_2", 1, 7)).removeCharcoalRecipe() |
| 131 | + .planks(Mods.BoP.getItem("planks_0", 1, 11), "hellbark_planks") |
| 132 | + .slab(Mods.BoP.getItem("wood_slab_1", 1, 3), "hellbark_wooden_slab") |
| 133 | + .stairs(Mods.BoP.getItem("hellbark_stairs", 1), "hellbark_stairs") |
| 134 | + .fenceGate(Mods.BoP.getItem("hellbark_fence_gate", 1), "hellbark_fence_gate") |
| 135 | + .fence(Mods.BoP.getItem("hellbark_fence", 1), "hellbark_fence") |
| 136 | + .door(Mods.BoP.getItem("hellbark_door", 1), "hellbark_door") |
| 137 | + .boat(Mods.BoP.getItem("boat_hellbark", 1), "boat_hellbark") |
| 138 | + .build(), |
| 139 | + new WoodTypeEntry.Builder(mcModId, "jacaranda") |
| 140 | + .log(Mods.BoP.getItem("log_3", 1, 4)).removeCharcoalRecipe() |
| 141 | + .planks(Mods.BoP.getItem("planks_0", 1, 12), "jacaranda_planks") |
| 142 | + .slab(Mods.BoP.getItem("wood_slab_1", 1, 4), "jacaranda_wooden_slab") |
| 143 | + .stairs(Mods.BoP.getItem("jacaranda_stairs", 1), "jacaranda_stairs") |
| 144 | + .fenceGate(Mods.BoP.getItem("jacaranda_fence_gate", 1), "jacaranda_fence_gate") |
| 145 | + .fence(Mods.BoP.getItem("jacaranda_fence", 1), "jacaranda_fence") |
| 146 | + .door(Mods.BoP.getItem("jacaranda_door", 1), "jacaranda_door") |
| 147 | + .boat(Mods.BoP.getItem("boat_jacaranda", 1), "boat_jacaranda") |
| 148 | + .build(), |
| 149 | + new WoodTypeEntry.Builder(mcModId, "mahogany") |
| 150 | + .log(Mods.BoP.getItem("log_3", 1, 5)).removeCharcoalRecipe() |
| 151 | + .planks(Mods.BoP.getItem("planks_0", 1, 13), "mahogany_planks") |
| 152 | + .slab(Mods.BoP.getItem("wood_slab_1", 1, 5), "mahogany_wooden_slab") |
| 153 | + .stairs(Mods.BoP.getItem("mahogany_stairs", 1), "mahogany_stairs") |
| 154 | + .fenceGate(Mods.BoP.getItem("mahogany_fence_gate", 1), "mahogany_fence_gate") |
| 155 | + .fence(Mods.BoP.getItem("mahogany_fence", 1), "mahogany_fence") |
| 156 | + .door(Mods.BoP.getItem("mahogany_door", 1), "mahogany_door") |
| 157 | + .boat(Mods.BoP.getItem("boat_mahogany", 1), "boat_mahogany") |
| 158 | + .build(), |
| 159 | + new WoodTypeEntry.Builder(mcModId, "ebony") |
| 160 | + .log(Mods.BoP.getItem("log_3", 1, 6)).removeCharcoalRecipe() |
| 161 | + .planks(Mods.BoP.getItem("planks_0", 1, 14), "ebony_planks") |
| 162 | + .slab(Mods.BoP.getItem("wood_slab_1", 1, 6), "ebony_wooden_slab") |
| 163 | + .stairs(Mods.BoP.getItem("ebony_stairs", 1), "ebony_stairs") |
| 164 | + .fenceGate(Mods.BoP.getItem("ebony_fence_gate", 1), "ebony_fence_gate") |
| 165 | + .fence(Mods.BoP.getItem("ebony_fence", 1), "ebony_fence") |
| 166 | + .door(Mods.BoP.getItem("ebony_door", 1), "ebony_door") |
| 167 | + .boat(Mods.BoP.getItem("boat_ebony", 1), "boat_ebony") |
| 168 | + .build(), |
| 169 | + new WoodTypeEntry.Builder(mcModId, "eucalyptus") |
| 170 | + .log(Mods.BoP.getItem("log_3", 1, 7)).removeCharcoalRecipe() |
| 171 | + .planks(Mods.BoP.getItem("planks_0", 1, 15), "eucalyptus_planks") |
| 172 | + .slab(Mods.BoP.getItem("wood_slab_1", 1, 7), "eucalyptus_wooden_slab") |
| 173 | + .stairs(Mods.BoP.getItem("eucalyptus_stairs", 1), "eucalyptus_stairs") |
| 174 | + .fenceGate(Mods.BoP.getItem("eucalyptus_fence_gate", 1), "eucalyptus_fence_gate") |
| 175 | + .fence(Mods.BoP.getItem("eucalyptus_fence", 1), "eucalyptus_fence") |
| 176 | + .door(Mods.BoP.getItem("eucalyptus_door", 1), "eucalyptus_door") |
| 177 | + .boat(Mods.BoP.getItem("boat_eucalyptus", 1), "boat_eucalyptus") |
| 178 | + .build()); |
| 179 | + } |
| 180 | + return DEFAULT_ENTRIES; |
| 181 | + } |
| 182 | + |
| 183 | + public static void init() { |
| 184 | + for (WoodTypeEntry entry : getDefaultEntries()) { |
| 185 | + GTWPWoodRecipeLoader.removePlankRecipe(false, entry, Mods.Names.BIOMES_O_PLENTY); |
| 186 | + |
| 187 | + GTWPWoodRecipeLoader.registerWoodTypeRecipe(false, entry); |
| 188 | + GTWPWoodRecipeLoader.addCuttingRecipe(entry); |
| 189 | + GTWPWoodRecipeLoader.addSawmillRecipe(entry); |
| 190 | + } |
| 191 | + |
| 192 | + // Remove Dead Wood Smelting |
| 193 | + GTWPWoodRecipeLoader.removeCharcoalRecipe(Mods.BoP.getItem("log_4", 1, 5)); |
| 194 | + } |
| 195 | +} |
0 commit comments