From 33e6237377e95e3e81a03b1c5da39384a8bd2583 Mon Sep 17 00:00:00 2001 From: Boblet Date: Wed, 20 Mar 2024 16:46:05 +0100 Subject: [PATCH] finished item pool config implementation --- changelog | 2 + .../com/hbm/blocks/generic/BlockKeyhole.java | 37 +- .../hbm/blocks/machine/MachineIGenerator.java | 2 - .../com/hbm/config/ItemPoolConfigJSON.java | 18 +- .../entity/train/EntityRailCarRidable.java | 1 - .../container/ContainerMachineArcFurnace.java | 1 - src/main/java/com/hbm/itempool/ItemPool.java | 36 +- .../com/hbm/itempool/ItemPoolsComponent.java | 188 ++++++++ .../com/hbm/itempool/ItemPoolsLegacy.java | 252 ++++++++-- .../com/hbm/itempool/ItemPoolsRedRoom.java | 43 ++ .../com/hbm/itempool/ItemPoolsSingle.java | 118 +++++ .../java/com/hbm/lib/HbmChestContents.java | 437 +----------------- src/main/java/com/hbm/lib/HbmWorldGen.java | 66 +-- src/main/java/com/hbm/main/MainRegistry.java | 2 - .../com/hbm/main/ModEventHandlerClient.java | 1 - .../render/item/weapon/ItemRenderBenelli.java | 1 - .../java/com/hbm/world/dungeon/Antenna.java | 5 +- .../java/com/hbm/world/dungeon/Barrel.java | 5 +- .../hbm/world/dungeon/CrashedVertibird.java | 7 +- .../com/hbm/world/dungeon/DesertAtom001.java | 5 +- .../com/hbm/world/dungeon/DesertAtom002.java | 11 +- .../com/hbm/world/dungeon/DesertAtom003.java | 5 +- .../java/com/hbm/world/dungeon/Factory.java | 11 +- .../java/com/hbm/world/dungeon/Radio01.java | 13 +- .../java/com/hbm/world/dungeon/Relay.java | 9 +- .../java/com/hbm/world/dungeon/Satellite.java | 11 +- src/main/java/com/hbm/world/dungeon/Silo.java | 10 +- .../java/com/hbm/world/dungeon/Spaceship.java | 13 +- .../java/com/hbm/world/dungeon/Vertibird.java | 7 +- .../world/gen/component/BunkerComponents.java | 32 +- .../world/gen/component/CivilianFeatures.java | 21 +- .../world/gen/component/OfficeFeatures.java | 29 +- .../world/gen/component/SiloComponent.java | 55 +-- 33 files changed, 782 insertions(+), 672 deletions(-) create mode 100644 src/main/java/com/hbm/itempool/ItemPoolsComponent.java create mode 100644 src/main/java/com/hbm/itempool/ItemPoolsRedRoom.java create mode 100644 src/main/java/com/hbm/itempool/ItemPoolsSingle.java diff --git a/changelog b/changelog index 5e7ab9b3a..a69023615 100644 --- a/changelog +++ b/changelog @@ -33,6 +33,8 @@ * The particles will collapse as soon as the first virtual particle with a valid outcome reaches the end * This change allows branching accelerators to be made, where the particle will always take the shortest path necessary to complete the operation. In essence, it allows a single accelerator to do any recipe, without requiring to power the entire accelerator, as only the path of the finishing particle will use up energy. * The particle accelerator as well as the schottky particle diodes now have presentations explaining how they work +* Loot pools are now configurable. Loot is divided into different categories, and structures may generate things from certain categories. + * The config currently includes all items spawned in dungeon chests/crates/safes/lockers, excluding black book spawns, but also including the loot pool for red room pedestals ## Fixed * WarTec should now be compatible again diff --git a/src/main/java/com/hbm/blocks/generic/BlockKeyhole.java b/src/main/java/com/hbm/blocks/generic/BlockKeyhole.java index 74b2ffdfd..d3b5a1bd7 100644 --- a/src/main/java/com/hbm/blocks/generic/BlockKeyhole.java +++ b/src/main/java/com/hbm/blocks/generic/BlockKeyhole.java @@ -1,15 +1,15 @@ package com.hbm.blocks.generic; -import java.util.ArrayList; import java.util.List; import com.hbm.blocks.ModBlocks; import com.hbm.blocks.generic.BlockLoot.TileEntityLoot; import com.hbm.blocks.generic.BlockPedestal.TileEntityPedestal; +import com.hbm.itempool.ItemPool; +import com.hbm.itempool.ItemPoolsRedRoom; import com.hbm.items.ModItems; import com.hbm.items.tool.ItemModDoor; import com.hbm.main.MainRegistry; -import com.hbm.util.WeightedRandomObject; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; @@ -23,6 +23,7 @@ import net.minecraft.util.AxisAlignedBB; import net.minecraft.util.IIcon; import net.minecraft.util.MovingObjectPosition; import net.minecraft.util.WeightedRandom; +import net.minecraft.util.WeightedRandomChestContent; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; @@ -209,38 +210,10 @@ public class BlockKeyhole extends BlockStone { for(EntityItem item : items) item.setDead(); } - public static List pedestalItems; - public static void spawnPedestalItem(World world, int x, int y, int z) { world.setBlock(x, y, z, ModBlocks.pedestal); TileEntityPedestal pedestal = (TileEntityPedestal) world.getTileEntity(x, y, z); - if(pedestalItems == null) initPedestal(); - pedestal.item = ((WeightedRandomObject) WeightedRandom.getRandomItem(world.rand, pedestalItems)).asStack().copy(); - } - - public static void initPedestal() { - pedestalItems = new ArrayList(); - pedestalItems.add(new WeightedRandomObject(new ItemStack(ModItems.ballistic_gauntlet), 10)); - pedestalItems.add(new WeightedRandomObject(new ItemStack(ModItems.armor_polish), 10)); - pedestalItems.add(new WeightedRandomObject(new ItemStack(ModItems.bandaid), 10)); - pedestalItems.add(new WeightedRandomObject(new ItemStack(ModItems.serum), 10)); - pedestalItems.add(new WeightedRandomObject(new ItemStack(ModItems.quartz_plutonium), 10)); - pedestalItems.add(new WeightedRandomObject(new ItemStack(ModItems.morning_glory), 10)); - pedestalItems.add(new WeightedRandomObject(new ItemStack(ModItems.spider_milk), 10)); - pedestalItems.add(new WeightedRandomObject(new ItemStack(ModItems.ink), 10)); - pedestalItems.add(new WeightedRandomObject(new ItemStack(ModItems.heart_container), 10)); - pedestalItems.add(new WeightedRandomObject(new ItemStack(ModItems.black_diamond), 5)); - pedestalItems.add(new WeightedRandomObject(new ItemStack(ModItems.scrumpy), 10)); - pedestalItems.add(new WeightedRandomObject(new ItemStack(ModItems.wild_p), 5)); - pedestalItems.add(new WeightedRandomObject(new ItemStack(ModItems.card_aos), 5)); - pedestalItems.add(new WeightedRandomObject(new ItemStack(ModItems.card_qos), 5)); - - pedestalItems.add(new WeightedRandomObject(new ItemStack(ModItems.starmetal_sword), 5)); - pedestalItems.add(new WeightedRandomObject(new ItemStack(ModItems.gem_alexandrite), 5)); - pedestalItems.add(new WeightedRandomObject(new ItemStack(ModItems.crackpipe), 5)); - pedestalItems.add(new WeightedRandomObject(new ItemStack(ModItems.flask_infusion), 5)); - pedestalItems.add(new WeightedRandomObject(new ItemStack(ModBlocks.boxcar), 5)); - pedestalItems.add(new WeightedRandomObject(new ItemStack(ModItems.book_of_), 5)); - pedestalItems.add(new WeightedRandomObject(new ItemStack(ModItems.gun_revolver_pip), 5)); + WeightedRandomChestContent content = (WeightedRandomChestContent) WeightedRandom.getRandomItem(world.rand, ItemPool.getPool(ItemPoolsRedRoom.POOL_RED_PEDESTAL)); + pedestal.item = content.theItemId.copy(); } } diff --git a/src/main/java/com/hbm/blocks/machine/MachineIGenerator.java b/src/main/java/com/hbm/blocks/machine/MachineIGenerator.java index 2c0d59ff6..6760737a9 100644 --- a/src/main/java/com/hbm/blocks/machine/MachineIGenerator.java +++ b/src/main/java/com/hbm/blocks/machine/MachineIGenerator.java @@ -5,11 +5,9 @@ import java.util.List; import com.hbm.blocks.BlockDummyable; import com.hbm.blocks.ILookOverlay; -import com.hbm.main.MainRegistry; import com.hbm.tileentity.TileEntityProxyCombo; import com.hbm.tileentity.machine.TileEntityMachineIGenerator; -import cpw.mods.fml.common.network.internal.FMLNetworkHandler; import net.minecraft.block.material.Material; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.tileentity.TileEntity; diff --git a/src/main/java/com/hbm/config/ItemPoolConfigJSON.java b/src/main/java/com/hbm/config/ItemPoolConfigJSON.java index 849968062..306da20b7 100644 --- a/src/main/java/com/hbm/config/ItemPoolConfigJSON.java +++ b/src/main/java/com/hbm/config/ItemPoolConfigJSON.java @@ -13,7 +13,6 @@ import com.google.gson.JsonElement; import com.google.gson.JsonObject; import com.google.gson.stream.JsonWriter; import com.hbm.itempool.ItemPool; -import com.hbm.itempool.ItemPoolsLegacy; import com.hbm.items.ModItems; import com.hbm.main.MainRegistry; @@ -27,9 +26,12 @@ import net.minecraft.util.WeightedRandomChestContent; public class ItemPoolConfigJSON { public static final Gson gson = new Gson(); - public static HashMap pools = new HashMap(); public static void initialize() { + + //writes the defaults + ItemPool.initialize(); + File folder = MainRegistry.configHbmDir; File config = new File(folder.getAbsolutePath() + File.separatorChar + "hbmItemPools.json"); @@ -40,14 +42,6 @@ public class ItemPoolConfigJSON { } else { readConfig(config); } - - for(Entry entry : pools.entrySet()) { - System.out.println(entry.getKey()); - - for(WeightedRandomChestContent item : entry.getValue().pool) { - System.out.println(item.theItemId + " " + item.theItemId.stackTagCompound + " " + item.theMinimumChanceToGenerateItem + " " + item.theMaximumChanceToGenerateItem + " " + item.itemWeight); - } - } } private static void writeDefault(File file) { @@ -58,7 +52,7 @@ public class ItemPoolConfigJSON { writer.beginObject(); writer.name("pools").beginObject(); - for(Entry entry : pools.entrySet()) { + for(Entry entry : ItemPool.pools.entrySet()) { writer.name(entry.getKey()).beginArray(); for(WeightedRandomChestContent content : entry.getValue().pool) { @@ -110,7 +104,7 @@ public class ItemPoolConfigJSON { newPools.put(poolName, pool); } - ItemPoolConfigJSON.pools = newPools; + ItemPool.pools = newPools; } catch(Exception ex) { ex.printStackTrace(); diff --git a/src/main/java/com/hbm/entity/train/EntityRailCarRidable.java b/src/main/java/com/hbm/entity/train/EntityRailCarRidable.java index 8ac621cf2..5ba0a98b4 100644 --- a/src/main/java/com/hbm/entity/train/EntityRailCarRidable.java +++ b/src/main/java/com/hbm/entity/train/EntityRailCarRidable.java @@ -3,7 +3,6 @@ package com.hbm.entity.train; import java.util.ArrayList; import java.util.List; -import com.hbm.blocks.ILookOverlay; import com.hbm.main.MainRegistry; import cpw.mods.fml.relauncher.Side; diff --git a/src/main/java/com/hbm/inventory/container/ContainerMachineArcFurnace.java b/src/main/java/com/hbm/inventory/container/ContainerMachineArcFurnace.java index 15fbae2e9..792fc0419 100644 --- a/src/main/java/com/hbm/inventory/container/ContainerMachineArcFurnace.java +++ b/src/main/java/com/hbm/inventory/container/ContainerMachineArcFurnace.java @@ -2,7 +2,6 @@ package com.hbm.inventory.container; import com.hbm.inventory.SlotSmelting; import com.hbm.items.ModItems; -import com.hbm.items.machine.ItemMachineUpgrade; import com.hbm.tileentity.machine.TileEntityMachineArcFurnace; import api.hbm.energy.IBatteryItem; diff --git a/src/main/java/com/hbm/itempool/ItemPool.java b/src/main/java/com/hbm/itempool/ItemPool.java index 7d21ad6dd..eb85f2f9f 100644 --- a/src/main/java/com/hbm/itempool/ItemPool.java +++ b/src/main/java/com/hbm/itempool/ItemPool.java @@ -1,16 +1,22 @@ package com.hbm.itempool; +import static com.hbm.lib.HbmChestContents.weighted; + import java.util.ArrayList; +import java.util.HashMap; import java.util.List; -import com.hbm.config.ItemPoolConfigJSON; +import com.hbm.items.ModItems; import net.minecraft.block.Block; +import net.minecraft.init.Items; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.util.WeightedRandomChestContent; public class ItemPool { + + public static HashMap pools = new HashMap(); public String name; public WeightedRandomChestContent[] pool = new WeightedRandomChestContent[0]; @@ -21,7 +27,7 @@ public class ItemPool { public ItemPool(String name) { this.name = name; - ItemPoolConfigJSON.pools.put(name, this); + pools.put(name, this); } public ItemPool add(Item item, int meta, int min, int max, int weight) { buildingList.add(new WeightedRandomChestContent(item, meta, min, max, weight)); return this; } @@ -42,12 +48,24 @@ public class ItemPool { } public static void initialize() { - //here we abuse java's lazy loading behavior, referencing the item pools with what is effectively a NOP in order to cause instantiation - //this of course has to happen after the items and blocks are registered but before the item pool config - //will this cause horrific issues if something manages to load the item pools prematurely? absolutely - //however, the advantage here is that i don't need to separate the fields from the instantiation, i can simply slap them together into the class and it works - //is this shitty coding practice? yes! but it's slightly more convenient than the alternative so i will roll with it anyway because go fuck yourself - //who are you to tell me what i can and cannot do - ItemPoolsLegacy.poolGeneric.hashCode(); + ItemPoolsLegacy.init(); + ItemPoolsComponent.init(); + ItemPoolsSingle.init(); + ItemPoolsRedRoom.init(); } + + /** Grabs the specified item pool out of the pool map, will return the backup pool if the given pool is not present */ + public static WeightedRandomChestContent[] getPool(String name) { + ItemPool pool = pools.get(name); + if(pool == null) return backupPool; + return pool.pool; + } + + /** Should a pool be lost due to misconfiguration or otherwise, this pool will be returned in its place */ + private static WeightedRandomChestContent[] backupPool = new WeightedRandomChestContent[] { + weighted(Items.bread, 0, 1, 3, 10), + weighted(Items.stick, 0, 2, 5, 10), + weighted(ModItems.scrap, 0, 1, 3, 10), + weighted(ModItems.dust, 0, 2, 5, 5) + }; } diff --git a/src/main/java/com/hbm/itempool/ItemPoolsComponent.java b/src/main/java/com/hbm/itempool/ItemPoolsComponent.java new file mode 100644 index 000000000..5b4d48bd5 --- /dev/null +++ b/src/main/java/com/hbm/itempool/ItemPoolsComponent.java @@ -0,0 +1,188 @@ +package com.hbm.itempool; + +import static com.hbm.lib.HbmChestContents.weighted; + +import com.hbm.blocks.ModBlocks; +import com.hbm.inventory.material.Mats; +import com.hbm.items.ItemEnums.EnumCokeType; +import com.hbm.items.ModItems; +import com.hbm.items.tool.ItemBlowtorch; + +import net.minecraft.init.Items; +import net.minecraft.util.WeightedRandomChestContent; + +public class ItemPoolsComponent { + + public static final String POOL_MACHINE_PARTS = "POOL_MACHINE_PARTS"; + public static final String POOL_NUKE_FUEL = "POOL_NUKE_FUEL"; + public static final String POOL_SILO = "POOL_SILO"; + public static final String POOL_OFFICE_TRASH = "POOL_OFFICE_TRASH"; + public static final String POOL_FILING_CABINET = "POOL_FILING_CABINET"; + public static final String POOL_SOLID_FUEL = "POOL_SOLID_FUEL"; + public static final String POOL_VAULT_LAB = "POOL_VAULT_LAB"; + public static final String POOL_VAULT_LOCKERS = "POOL_VAULT_LOCKERS"; + + public static void init() { + + //machine parts + new ItemPool(POOL_MACHINE_PARTS) {{ + this.pool = new WeightedRandomChestContent[] { + weighted(ModItems.plate_steel, 0, 1, 5, 5), + weighted(ModItems.hull_big_steel, 0, 1, 2, 2), + weighted(ModItems.hull_small_steel, 0, 1, 3, 3), + weighted(ModItems.plate_polymer, 0, 1, 6, 5), + weighted(ModItems.bolt, Mats.MAT_STEEL.id, 4, 16, 3), + weighted(ModItems.bolt, Mats.MAT_TUNGSTEN.id, 4, 16, 3), + weighted(ModItems.board_copper, 0, 1, 2, 4), + weighted(ModItems.coil_tungsten, 0, 1, 2, 5), + weighted(ModItems.motor, 0, 1, 2, 4), + weighted(ModItems.tank_steel, 0, 1, 2, 3), + weighted(ModItems.coil_copper, 0, 1, 3, 4), + weighted(ModItems.coil_copper_torus, 0, 1, 2, 3), + weighted(ModItems.wire_red_copper, 0, 1, 8, 5), + weighted(ModItems.piston_selenium, 0, 1, 1, 3), + weighted(ModItems.battery_advanced_cell, 0, 1, 1, 3), + weighted(ModItems.circuit_raw, 0, 1, 3, 5), + weighted(ModItems.circuit_aluminium, 0, 1, 2, 4), + weighted(ModItems.circuit_copper, 0, 1, 1, 3), + weighted(ModItems.circuit_red_copper, 0, 1, 1, 2), + weighted(ModItems.blade_titanium, 0, 1, 8, 1) + }; + }}; + + //fuel isotopes found in bunkers and labs + new ItemPool(POOL_NUKE_FUEL) {{ + this.pool = new WeightedRandomChestContent[] { + weighted(ModItems.billet_uranium, 0, 1, 4, 4), + weighted(ModItems.billet_th232, 0, 1, 3, 3), + weighted(ModItems.billet_uranium_fuel, 0, 1, 3, 5), + weighted(ModItems.billet_mox_fuel, 0, 1, 3, 5), + weighted(ModItems.billet_thorium_fuel, 0, 1, 3, 3), + weighted(ModItems.billet_ra226be, 0, 1, 2, 2), + weighted(ModItems.billet_beryllium, 0, 1, 1, 1), + weighted(ModItems.nugget_u233, 0, 1, 1, 1), + weighted(ModItems.nugget_uranium_fuel, 0, 1, 1, 1), + weighted(ModItems.rod_zirnox_empty, 0, 1, 3, 3), + weighted(ModItems.ingot_graphite, 0, 1, 4, 3), + weighted(ModItems.pile_rod_uranium, 0, 2, 5, 3), + weighted(ModItems.pile_rod_source, 0, 1, 2, 2), + weighted(ModItems.reacher, 0, 1, 1, 3), + weighted(ModItems.screwdriver, 0, 1, 1, 2) + }; + }}; + + //missile parts found in silos + new ItemPool(POOL_SILO) {{ + this.pool = new WeightedRandomChestContent[] { + weighted(ModItems.missile_generic, 0, 1, 1, 4), + weighted(ModItems.missile_incendiary, 0, 1, 1, 4), + weighted(ModItems.gas_mask_m65, 0, 1, 1, 5), + weighted(ModItems.battery_advanced, 0, 1, 1, 5), + weighted(ModItems.designator, 0, 1, 1, 5), + weighted(ModItems.crate_caller, 0, 1, 1, 1), + weighted(ModItems.thruster_small, 0, 1, 1, 5), + weighted(ModItems.thruster_medium, 0, 1, 1, 4), + weighted(ModItems.fuel_tank_small, 0, 1, 1, 5), + weighted(ModItems.fuel_tank_medium, 0, 1, 1, 4), + weighted(ModItems.bomb_caller, 0, 1, 1, 1), + weighted(ModItems.bomb_caller, 3, 1, 1, 1), + weighted(ModItems.bottle_nuka, 0, 1, 3, 10) + }; + }}; + + //low quality items from offices in chests + new ItemPool(POOL_OFFICE_TRASH) {{ + this.pool = new WeightedRandomChestContent[] { + weighted(Items.paper, 0, 1, 12, 10), + weighted(Items.book, 0, 1, 3, 4), + weighted(ModItems.twinkie, 0, 1, 2, 6), + weighted(ModItems.coffee, 0, 1, 1, 4), + weighted(ModItems.flame_politics, 0, 1, 1, 2), + weighted(ModItems.ring_pull, 0, 1, 1, 4), + weighted(ModItems.can_empty, 0, 1, 1, 2), + weighted(ModItems.can_creature, 0, 1, 2, 2), + weighted(ModItems.can_smart, 0, 1, 3, 2), + weighted(ModItems.can_mrsugar, 0, 1, 2, 2), + weighted(ModItems.cap_nuka, 0, 1, 16, 2), + weighted(ModItems.book_guide, 3, 1, 1, 1), + weighted(ModBlocks.deco_computer, 0, 1, 1, 1) + }; + }}; + + //things found in various filing cabinets, paper, books, etc + new ItemPool(POOL_FILING_CABINET) {{ + this.pool = new WeightedRandomChestContent[] { + weighted(Items.paper, 0, 1, 12, 240), + weighted(Items.book, 0, 1, 3, 90), + weighted(Items.map, 0, 1, 1, 50), + weighted(Items.writable_book, 0, 1, 1, 30), + weighted(ModItems.cigarette, 0, 1, 16, 20), + weighted(ModItems.toothpicks, 0, 1, 16, 10), + weighted(ModItems.dust, 0, 1, 1, 40), + weighted(ModItems.dust_tiny, 0, 1, 3, 75), + weighted(ModItems.ink, 0, 1, 1, 1) + }; + }}; + + //solid fuels from bunker power rooms + new ItemPool(POOL_SOLID_FUEL) {{ + this.pool = new WeightedRandomChestContent[] { + weighted(ModItems.solid_fuel, 0, 1, 5, 1), + weighted(ModItems.solid_fuel_presto, 0, 1, 2, 2), + weighted(ModItems.ball_dynamite, 0, 1, 4, 2), + weighted(ModItems.coke, EnumCokeType.PETROLEUM.ordinal(), 1, 3, 1), + weighted(Items.redstone, 0, 1, 3, 1), + weighted(ModItems.niter, 0, 1, 3, 1) + }; + }}; + + //various lab related items from bunkers + new ItemPool(POOL_VAULT_LAB) {{ + this.pool = new WeightedRandomChestContent[] { + weighted(ItemBlowtorch.getEmptyTool(ModItems.blowtorch), 1, 1, 4), + weighted(ModItems.chemistry_set, 0, 1, 1, 15), + weighted(ModItems.screwdriver, 0, 1, 1, 10), + weighted(ModItems.nugget_mercury, 0, 1, 1, 3), + weighted(ModItems.morning_glory, 0, 1, 1, 1), + weighted(ModItems.filter_coal, 0, 1, 1, 5), + weighted(ModItems.dust, 0, 1, 3, 25), + weighted(Items.paper, 0, 1, 2, 15), + weighted(ModItems.cell_empty, 0, 1, 1, 5), + weighted(Items.glass_bottle, 0, 1, 1, 5), + weighted(ModItems.powder_iodine, 0, 1, 1, 1), + weighted(ModItems.powder_bromine, 0, 1, 1, 1), + weighted(ModItems.powder_cobalt, 0, 1, 1, 1), + weighted(ModItems.powder_neodymium, 0, 1, 1, 1), + weighted(ModItems.powder_boron, 0, 1, 1, 1) + }; + }}; + + //personal items and gear from vaults + new ItemPool(POOL_VAULT_LOCKERS) {{ + this.pool = new WeightedRandomChestContent[] { + weighted(ModItems.robes_helmet, 0, 1, 1, 1), + weighted(ModItems.robes_plate, 0, 1, 1, 1), + weighted(ModItems.robes_legs, 0, 1, 1, 1), + weighted(ModItems.robes_boots, 0, 1, 1, 1), + weighted(ModItems.jackt, 0, 1, 1, 1), + weighted(ModItems.jackt2, 0, 1, 1, 1), + weighted(ModItems.gas_mask_m65, 0, 1, 1, 2), + weighted(ModItems.gas_mask_mono, 0, 1, 1, 2), + weighted(ModItems.goggles, 0, 1, 1, 2), + weighted(ModItems.gas_mask_filter, 0, 1, 1, 4), + weighted(ModItems.flame_opinion, 0, 1, 3, 5), + weighted(ModItems.flame_conspiracy, 0, 1, 3, 5), + weighted(ModItems.flame_politics, 0, 1, 3, 5), + weighted(ModItems.definitelyfood, 0, 2, 7, 5), + weighted(ModItems.cigarette, 0, 1, 8, 5), + weighted(ModItems.armor_polish, 0, 1, 1, 3), + weighted(ModItems.gun_kit_1, 0, 1, 1, 3), + weighted(ModItems.rag, 0, 1, 3, 5), + weighted(Items.paper, 0, 1, 6, 7), + weighted(Items.clock, 0, 1, 1, 3), + weighted(Items.book, 0, 1, 5, 10), + weighted(Items.experience_bottle, 0, 1, 3, 1) + }; + }}; + } +} diff --git a/src/main/java/com/hbm/itempool/ItemPoolsLegacy.java b/src/main/java/com/hbm/itempool/ItemPoolsLegacy.java index f27b31bd5..54025813f 100644 --- a/src/main/java/com/hbm/itempool/ItemPoolsLegacy.java +++ b/src/main/java/com/hbm/itempool/ItemPoolsLegacy.java @@ -3,9 +3,14 @@ package com.hbm.itempool; import com.hbm.inventory.fluid.Fluids; import com.hbm.items.ModItems; import com.hbm.items.ItemAmmoEnums.Ammo357Magnum; +import com.hbm.items.ItemAmmoEnums.AmmoFatman; +import com.hbm.items.machine.ItemBreedingRod.BreedingRodType; +import com.hbm.items.machine.ItemZirnoxRod.EnumZirnoxType; import static com.hbm.lib.HbmChestContents.*; +import com.hbm.blocks.ModBlocks; + import net.minecraft.init.Items; import net.minecraft.util.WeightedRandomChestContent; @@ -16,37 +21,218 @@ import net.minecraft.util.WeightedRandomChestContent; */ public class ItemPoolsLegacy { - //"generic" set, found commonly in chests in many structures - public static ItemPool poolGeneric = new ItemPool("POOL_GENERIC") {{ - this.pool = new WeightedRandomChestContent[] { - weighted(Items.bread, 0, 1, 5, 8), - weighted(ModItems.twinkie, 0, 1, 3, 6), - weighted(Items.iron_ingot, 0, 2, 6, 10), - weighted(ModItems.ingot_steel, 0, 2, 5, 7), - weighted(ModItems.ingot_beryllium, 0, 1, 2, 4), - weighted(ModItems.ingot_titanium, 0, 1, 1, 3), - weighted(ModItems.circuit_targeting_tier1, 0, 1, 1, 5), - weighted(ModItems.gun_revolver, 0, 1, 1, 3), - weighted(ModItems.ammo_357, Ammo357Magnum.LEAD.ordinal(), 2, 6, 4), - weighted(ModItems.gun_kit_1, 0, 1, 3, 4), - weighted(ModItems.gun_lever_action, 0, 1, 1, 1), - weighted(ModItems.ammo_20gauge, 0, 2, 6, 3), - weighted(ModItems.casing_9, 0, 4, 10, 3), - weighted(ModItems.casing_50, 0, 4, 10, 3), - weighted(ModItems.cordite, 0, 4, 6, 5), - weighted(ModItems.battery_generic, 0, 1, 1, 4), - weighted(ModItems.battery_advanced, 0, 1, 1, 2), - weighted(ModItems.scrap, 0, 1, 3, 10), - weighted(ModItems.dust, 0, 2, 4, 9), - weighted(ModItems.bottle_opener, 0, 1, 1, 2), - weighted(ModItems.bottle_nuka, 0, 1, 3, 4), - weighted(ModItems.bottle_cherry, 0, 1, 1, 2), - weighted(ModItems.stealth_boy, 0, 1, 1, 1), - weighted(ModItems.cap_nuka, 0, 1, 15, 7), - weighted(ModItems.canister_full, Fluids.DIESEL.getID(), 1, 2, 2), - weighted(ModItems.canister_full, Fluids.BIOFUEL.getID(), 1, 2, 3), - weighted(ModItems.gas_mask_m65, 60, 1, 1, 2), - weighted(ModItems.gas_mask_filter, 0, 1, 1, 3) - }; - }}; + public static final String POOL_GENERIC = "POOL_GENERIC"; + public static final String POOL_ANTENNA = "POOL_ANTENNA"; + public static final String POOL_EXPENSIVE = "POOL_EXPENSIVE"; + public static final String POOL_NUKE_TRASH = "POOL_NUKE_TRASH"; + public static final String POOL_NUKE_MISC = "POOL_NUKE_MISC"; + public static final String POOL_VERTIBIRD = "POOL_VERTIBIRD"; + public static final String POOL_SPACESHIP = "POOL_SPACESHIP"; + + public static void init() { + + //"generic" set, found commonly in chests in many structures + new ItemPool(POOL_GENERIC) {{ + this.pool = new WeightedRandomChestContent[] { + weighted(Items.bread, 0, 1, 5, 8), + weighted(ModItems.twinkie, 0, 1, 3, 6), + weighted(Items.iron_ingot, 0, 2, 6, 10), + weighted(ModItems.ingot_steel, 0, 2, 5, 7), + weighted(ModItems.ingot_beryllium, 0, 1, 2, 4), + weighted(ModItems.ingot_titanium, 0, 1, 1, 3), + weighted(ModItems.circuit_targeting_tier1, 0, 1, 1, 5), + weighted(ModItems.gun_revolver, 0, 1, 1, 3), + weighted(ModItems.ammo_357, Ammo357Magnum.LEAD.ordinal(), 2, 6, 4), + weighted(ModItems.gun_kit_1, 0, 1, 3, 4), + weighted(ModItems.gun_lever_action, 0, 1, 1, 1), + weighted(ModItems.ammo_20gauge, 0, 2, 6, 3), + weighted(ModItems.casing_9, 0, 4, 10, 3), + weighted(ModItems.casing_50, 0, 4, 10, 3), + weighted(ModItems.cordite, 0, 4, 6, 5), + weighted(ModItems.battery_generic, 0, 1, 1, 4), + weighted(ModItems.battery_advanced, 0, 1, 1, 2), + weighted(ModItems.scrap, 0, 1, 3, 10), + weighted(ModItems.dust, 0, 2, 4, 9), + weighted(ModItems.bottle_opener, 0, 1, 1, 2), + weighted(ModItems.bottle_nuka, 0, 1, 3, 4), + weighted(ModItems.bottle_cherry, 0, 1, 1, 2), + weighted(ModItems.stealth_boy, 0, 1, 1, 1), + weighted(ModItems.cap_nuka, 0, 1, 15, 7), + weighted(ModItems.canister_full, Fluids.DIESEL.getID(), 1, 2, 2), + weighted(ModItems.canister_full, Fluids.BIOFUEL.getID(), 1, 2, 3), + weighted(ModItems.gas_mask_m65, 60, 1, 1, 2), + weighted(ModItems.gas_mask_filter, 0, 1, 1, 3) + }; + }}; + + //"antenna" pool, found by antennas and in radio stations + new ItemPool(POOL_ANTENNA) {{ + this.pool = new WeightedRandomChestContent[] { + weighted(ModItems.twinkie, 0, 1, 3, 4), + weighted(ModItems.ingot_steel, 0, 1, 2, 7), + weighted(ModItems.ingot_red_copper, 0, 1, 1, 4), + weighted(ModItems.ingot_titanium, 0, 1, 3, 5), + weighted(ModItems.wire_red_copper, 0, 2, 3, 7), + weighted(ModItems.circuit_targeting_tier1, 0, 1, 1, 4), + weighted(ModItems.circuit_copper, 0, 1, 1, 4), + weighted(ModItems.battery_generic, 0, 1, 1, 4), + weighted(ModItems.battery_advanced, 0, 1, 1, 3), + weighted(ModItems.powder_iodine, 0, 1, 1, 1), + weighted(ModItems.powder_bromine, 0, 1, 1, 1), + weighted(ModBlocks.steel_poles, 0, 1, 4, 8), + weighted(ModBlocks.steel_scaffold, 0, 1, 3, 8), + weighted(ModBlocks.pole_top, 0, 1, 1, 4), + weighted(ModBlocks.pole_satellite_receiver, 0, 1, 1, 7), + weighted(ModItems.scrap, 0, 1, 3, 10), + weighted(ModItems.dust, 0, 2, 4, 9), + weighted(ModItems.bottle_opener, 0, 1, 1, 2), + weighted(ModItems.bottle_nuka, 0, 1, 3, 4), + weighted(ModItems.bottle_cherry, 0, 1, 1, 2), + weighted(ModItems.stealth_boy, 0, 1, 1, 1), + weighted(ModItems.cap_nuka, 0, 1, 15, 7), + weighted(ModItems.bomb_caller, 0, 1, 1, 1), + weighted(ModItems.gas_mask_filter, 0, 1, 1, 2) + }; + }}; + + //"hidden" loot + new ItemPool(POOL_EXPENSIVE) {{ + this.pool = new WeightedRandomChestContent[] { + weighted(ModItems.chlorine_pinwheel, 0, 1, 1, 1), + weighted(ModItems.circuit_targeting_tier3, 0, 1, 1, 4), + weighted(ModItems.circuit_gold, 0, 1, 2, 3), + weighted(ModItems.circuit_targeting_tier4, 0, 1, 1, 2), + weighted(ModItems.gun_kit_1, 0, 1, 3, 6), + weighted(ModItems.gun_kit_2, 0, 1, 2, 3), + weighted(ModItems.gun_rpg, 0, 1, 1, 4), + weighted(ModItems.ammo_rocket, 0, 1, 4, 5), + weighted(ModItems.gun_fatman, 0, 1, 1, 1), + weighted(ModItems.ammo_nuke, AmmoFatman.SAFE.ordinal(), 1, 2, 1), + weighted(ModItems.ammo_nuke, AmmoFatman.LOW.ordinal(), 1, 2, 1), + weighted(ModItems.ammo_nuke, AmmoFatman.PUMPKIN.ordinal(), 1, 2, 1), + weighted(ModItems.grenade_nuclear, 0, 1, 1, 2), + weighted(ModItems.grenade_smart, 0, 1, 3, 3), + weighted(ModItems.grenade_mirv, 0, 1, 1, 2), + weighted(ModItems.stealth_boy, 0, 1, 1, 2), + weighted(ModItems.battery_advanced, 0, 1, 1, 3), + weighted(ModItems.battery_advanced_cell, 0, 1, 1, 2), + weighted(ModItems.battery_schrabidium, 0, 1, 1, 1), + weighted(ModItems.syringe_awesome, 0, 1, 1, 1), + weighted(ModItems.crate_caller, 0, 1, 1, 3), + weighted(ModItems.fusion_core, 0, 1, 1, 4), + weighted(ModItems.bottle_nuka, 0, 1, 3, 6), + weighted(ModItems.bottle_quantum, 0, 1, 1, 3), + weighted(ModBlocks.red_barrel, 0, 1, 1, 6), + weighted(ModItems.canister_full, Fluids.DIESEL.getID(), 1, 2, 2), + weighted(ModItems.canister_full, Fluids.BIOFUEL.getID(), 1, 2, 3), + weighted(ModItems.gas_mask_m65, 60, 1, 1, 5), + weighted(ModItems.bomb_caller, 0, 1, 1, 2), + weighted(ModItems.bomb_caller, 1, 1, 1, 1), + weighted(ModItems.bomb_caller, 2, 1, 1, 1), + weighted(ModItems.gas_mask_filter, 0, 1, 1, 4), + weighted(ModItems.journal_pip, 0, 1, 1, 1), + weighted(ModItems.journal_bj, 0, 1, 1, 1) + }; + }}; + + //nuclear waste products found in powerplants + new ItemPool(POOL_NUKE_TRASH) {{ + this.pool = new WeightedRandomChestContent[] { + weighted(ModItems.nugget_u238, 0, 3, 12, 5), + weighted(ModItems.nugget_pu240, 0, 3, 8, 5), + weighted(ModItems.nugget_neptunium, 0, 1, 4, 3), + weighted(ModItems.rod, BreedingRodType.U238.ordinal(), 1, 1, 3), + weighted(ModItems.rod_dual, BreedingRodType.U238.ordinal(), 1, 1, 3), + weighted(ModItems.rod_quad, BreedingRodType.U238.ordinal(), 1, 1, 3), + weighted(ModItems.bottle_quantum, 0, 1, 1, 1), + weighted(ModItems.gas_mask_m65, 60, 1, 1, 5), + weighted(ModItems.hazmat_kit, 0, 1, 1, 1), + weighted(ModItems.gas_mask_filter, 0, 1, 1, 5), + weighted(ModBlocks.yellow_barrel, 0, 1, 1, 2) + }; + }}; + + //all sorts of nuclear related items, mostly fissile isotopes found in nuclear powerplants + new ItemPool(POOL_NUKE_MISC) {{ + this.pool = new WeightedRandomChestContent[] { + weighted(ModItems.nugget_u235, 0, 3, 12, 5), + weighted(ModItems.nugget_pu238, 0, 3, 12, 5), + weighted(ModItems.nugget_ra226, 0, 3, 6, 5), + weighted(ModItems.rod, BreedingRodType.U235.ordinal(), 1, 1, 3), + weighted(ModItems.rod_dual, BreedingRodType.U235.ordinal(), 1, 1, 3), + weighted(ModItems.rod_quad, BreedingRodType.U235.ordinal(), 1, 1, 3), + weighted(ModItems.rod_zirnox, EnumZirnoxType.URANIUM_FUEL.ordinal(), 1, 1, 4), + weighted(ModItems.rod_zirnox, EnumZirnoxType.MOX_FUEL.ordinal(), 1, 1, 4), + weighted(ModItems.rod_zirnox, EnumZirnoxType.LITHIUM.ordinal(), 1, 1, 3), + weighted(ModItems.rod_zirnox, EnumZirnoxType.THORIUM_FUEL.ordinal(), 1, 1, 3), + weighted(ModItems.rod_dual, BreedingRodType.THF.ordinal(), 1, 1, 3), + weighted(ModItems.rod_zirnox_tritium, 0, 1, 1, 1), + weighted(ModItems.rod_zirnox, EnumZirnoxType.U233_FUEL.ordinal(), 1, 1, 1), + weighted(ModItems.rod_zirnox, EnumZirnoxType.U235_FUEL.ordinal(), 1, 1, 1), + weighted(ModItems.pellet_rtg, 0, 1, 1, 3), + weighted(ModItems.powder_thorium, 0, 1, 1, 1), + weighted(ModItems.powder_neptunium, 0, 1, 1, 1), + weighted(ModItems.powder_strontium, 0, 1, 1, 1), + weighted(ModItems.powder_cobalt, 0, 1, 1, 1), + weighted(ModItems.bottle_quantum, 0, 1, 1, 1), + weighted(ModItems.gas_mask_m65, 60, 1, 1, 5), + weighted(ModItems.hazmat_kit, 0, 1, 1, 2), + weighted(ModItems.gas_mask_filter, 0, 1, 1, 5), + weighted(ModBlocks.yellow_barrel, 0, 1, 3, 3) + }; + }}; + + //loot found in vertibirds + new ItemPool(POOL_VERTIBIRD) {{ + this.pool = new WeightedRandomChestContent[] { + weighted(ModItems.t45_helmet, 0, 1, 1, 15), + weighted(ModItems.t45_plate, 0, 1, 1, 15), + weighted(ModItems.t45_legs, 0, 1, 1, 15), + weighted(ModItems.t45_boots, 0, 1, 1, 15), + weighted(ModItems.t45_kit, 0, 1, 1, 3), + weighted(ModItems.fusion_core, 0, 1, 1, 10), + weighted(ModItems.gun_revolver, 0, 1, 1, 4), + weighted(ModItems.ammo_357, Ammo357Magnum.LEAD.ordinal(), 1, 24, 4), + weighted(ModItems.gun_kit_1, 0, 2, 3, 4), + weighted(ModItems.gun_rpg, 0, 1, 1, 3), + weighted(ModItems.ammo_rocket, 0, 1, 6, 3), + weighted(ModItems.rod, BreedingRodType.U235.ordinal(), 1, 1, 2), + weighted(ModItems.billet_uranium_fuel, 0, 1, 1, 2), + weighted(ModItems.ingot_uranium_fuel, 0, 1, 1, 2), + weighted(ModItems.ammo_nuke, AmmoFatman.SAFE.ordinal(), 1, 2, 1), + weighted(ModItems.gun_fatman, 0, 1, 1, 1), + weighted(ModItems.bottle_nuka, 0, 1, 3, 6), + weighted(ModItems.bottle_quantum, 0, 1, 1, 3), + weighted(ModItems.stealth_boy, 0, 1, 1, 7), + weighted(ModItems.crate_caller, 0, 1, 1, 3), + weighted(ModItems.gas_mask_m65, 0, 1, 1, 5), + weighted(ModItems.gas_mask_filter, 0, 1, 1, 5), + weighted(ModItems.grenade_nuclear, 0, 1, 2, 2), + weighted(ModItems.bomb_caller, 0, 1, 1, 1), + weighted(ModItems.bomb_caller, 1, 1, 1, 1), + weighted(ModItems.bomb_caller, 2, 1, 1, 2) + }; + }}; + + //spaceship double chests + new ItemPool(POOL_SPACESHIP) {{ + this.pool = new WeightedRandomChestContent[] { + weighted(ModItems.battery_advanced, 0, 1, 1, 5), + weighted(ModItems.ingot_advanced_alloy, 0, 2, 16, 5), + weighted(ModItems.wire_advanced_alloy, 0, 8, 32, 5), + weighted(ModItems.coil_advanced_alloy, 0, 2, 16, 5), + weighted(ModItems.cell_deuterium, 0, 1, 8, 5), + weighted(ModItems.cell_tritium, 0, 1, 8, 5), + weighted(ModItems.cell_antimatter, 0, 1, 1, 1), + weighted(ModItems.powder_neodymium, 0, 1, 1, 1), + weighted(ModItems.powder_niobium, 0, 1, 1, 1), + weighted(ModBlocks.fusion_conductor, 0, 2, 4, 5), + weighted(ModBlocks.fusion_heater, 0, 1, 3, 5), + weighted(ModBlocks.pwr_fuel, 0, 1, 2, 5), + weighted(ModBlocks.block_tungsten, 0, 3, 8, 5), + weighted(ModBlocks.red_wire_coated, 0, 4, 8, 5), + weighted(ModBlocks.red_cable, 0, 8, 16, 5) + }; + }}; + } } diff --git a/src/main/java/com/hbm/itempool/ItemPoolsRedRoom.java b/src/main/java/com/hbm/itempool/ItemPoolsRedRoom.java new file mode 100644 index 000000000..f2de185bb --- /dev/null +++ b/src/main/java/com/hbm/itempool/ItemPoolsRedRoom.java @@ -0,0 +1,43 @@ +package com.hbm.itempool; + +import static com.hbm.lib.HbmChestContents.weighted; + +import com.hbm.blocks.ModBlocks; +import com.hbm.items.ModItems; + +import net.minecraft.util.WeightedRandomChestContent; + +public class ItemPoolsRedRoom { + + public static final String POOL_RED_PEDESTAL = "POOL_RED_PEDESTAL"; + + public static void init() { + + //pedestal items + new ItemPool(POOL_RED_PEDESTAL) {{ + this.pool = new WeightedRandomChestContent[] { + weighted(ModItems.ballistic_gauntlet, 0, 1, 1, 10), + weighted(ModItems.armor_polish, 0, 1, 1, 10), + weighted(ModItems.bandaid, 0, 1, 1, 10), + weighted(ModItems.serum, 0, 1, 1, 10), + weighted(ModItems.quartz_plutonium, 0, 1, 1, 10), + weighted(ModItems.morning_glory, 0, 1, 1, 10), + weighted(ModItems.spider_milk, 0, 1, 1, 10), + weighted(ModItems.ink, 0, 1, 1, 10), + weighted(ModItems.heart_container, 0, 1, 1, 10), + weighted(ModItems.black_diamond, 0, 1, 1, 10), + weighted(ModItems.scrumpy, 0, 1, 1, 10), + weighted(ModItems.wild_p, 0, 1, 1, 5), + weighted(ModItems.card_aos, 0, 1, 1, 5), + weighted(ModItems.card_qos, 0, 1, 1, 5), + weighted(ModItems.starmetal_sword, 0, 1, 1, 5), + weighted(ModItems.gem_alexandrite, 0, 1, 1, 5), + weighted(ModItems.crackpipe, 0, 1, 1, 5), + weighted(ModItems.flask_infusion, 0, 1, 1, 5), + weighted(ModBlocks.boxcar, 0, 1, 1, 5), + weighted(ModItems.book_of_, 0, 1, 1, 5), + weighted(ModItems.gun_revolver_pip, 0, 1, 1, 5) + }; + }}; + } +} diff --git a/src/main/java/com/hbm/itempool/ItemPoolsSingle.java b/src/main/java/com/hbm/itempool/ItemPoolsSingle.java new file mode 100644 index 000000000..dfa8f5e3b --- /dev/null +++ b/src/main/java/com/hbm/itempool/ItemPoolsSingle.java @@ -0,0 +1,118 @@ +package com.hbm.itempool; + +import static com.hbm.lib.HbmChestContents.weighted; + +import com.hbm.items.ModItems; +import com.hbm.items.ItemAmmoEnums.AmmoFatman; + +import net.minecraft.init.Items; +import net.minecraft.util.WeightedRandomChestContent; + +public class ItemPoolsSingle { + + public static final String POOL_POWDER = "POOL_POWDER"; + public static final String POOL_VAULT_RUSTY = "POOL_VAULT_RUSTY"; + public static final String POOL_VAULT_STANDARD = "POOL_VAULT_STANDARD"; + public static final String POOL_VAULT_REINFORCED = "POOL_VAULT_REINFORCED"; + public static final String POOL_VAULT_UNBREAKABLE = "POOL_VAULT_UNBREAKABLE"; + + public static void init() { + + //powder boxes + new ItemPool(POOL_POWDER) {{ + this.pool = new WeightedRandomChestContent[] { + weighted(ModItems.powder_neptunium, 0, 1, 32, 1), + weighted(ModItems.powder_iodine, 0, 1, 32, 1), + weighted(ModItems.powder_thorium, 0, 1, 32, 1), + weighted(ModItems.powder_astatine, 0, 1, 32, 1), + weighted(ModItems.powder_neodymium, 0, 1, 32, 1), + weighted(ModItems.powder_caesium, 0, 1, 32, 1), + weighted(ModItems.powder_strontium, 0, 1, 32, 1), + weighted(ModItems.powder_cobalt, 0, 1, 32, 1), + weighted(ModItems.powder_bromine, 0, 1, 32, 1), + weighted(ModItems.powder_niobium, 0, 1, 32, 1), + weighted(ModItems.powder_tennessine, 0, 1, 32, 1), + weighted(ModItems.powder_cerium, 0, 1, 32, 1) + }; + }}; + + new ItemPool(POOL_VAULT_RUSTY) {{ + this.pool = new WeightedRandomChestContent[] { + weighted(Items.gold_ingot, 0, 3, 14, 1), + weighted(ModItems.gun_uac_pistol, 0, 1, 1, 2), + weighted(ModItems.pin, 0, 8, 8, 1), + weighted(ModItems.gun_calamity, 0, 1, 1, 1), + weighted(ModItems.bottle_quantum, 0, 1, 3, 1), + weighted(ModItems.ingot_advanced_alloy, 0, 4, 12, 1), + weighted(ModItems.ammo_50bmg, 0, 24, 48, 1), + weighted(ModItems.ammo_45, 0, 48, 64, 2), + weighted(ModItems.circuit_red_copper, 0, 6, 12, 1), + weighted(ModItems.gas_mask_m65, 0, 1, 1, 1), + weighted(ModItems.grenade_if_he, 0, 1, 1, 1), + weighted(ModItems.grenade_if_incendiary, 0, 1, 1, 1), + weighted(Items.diamond, 0, 1, 2, 1) + }; + }}; + + new ItemPool(POOL_VAULT_STANDARD) {{ + this.pool = new WeightedRandomChestContent[] { + weighted(ModItems.ingot_desh, 0, 2, 6, 1), + weighted(ModItems.battery_advanced_cell_4, 0, 1, 1, 1), + weighted(ModItems.powder_desh_mix, 0, 1, 5, 1), + weighted(Items.diamond, 0, 3, 6, 1), + weighted(ModItems.ammo_nuke, 0, 1, 1, 1), + weighted(ModItems.ammo_container, 0, 1, 1, 1), + weighted(ModItems.grenade_nuclear, 0, 1, 1, 1), + weighted(ModItems.grenade_smart, 0, 1, 6, 1), + weighted(ModItems.powder_yellowcake, 0, 16, 24, 1), + weighted(ModItems.gun_uzi, 0, 1, 1, 1), + weighted(ModItems.gun_uzi_silencer, 0, 1, 1, 1), + weighted(ModItems.clip_uzi, 0, 1, 3, 1), + weighted(ModItems.circuit_red_copper, 0, 12, 16, 1), + weighted(ModItems.circuit_gold, 0, 2, 6, 1) + }; + }}; + + new ItemPool(POOL_VAULT_REINFORCED) {{ + this.pool = new WeightedRandomChestContent[] { + weighted(ModItems.ingot_desh, 0, 6, 16, 1), + weighted(ModItems.battery_lithium, 0, 1, 1, 1), + weighted(ModItems.powder_power, 0, 1, 5, 1), + weighted(ModItems.sat_chip, 0, 1, 1, 1), + weighted(Items.diamond, 0, 5, 9, 1), + weighted(ModItems.warhead_nuclear, 0, 1, 1, 1), + weighted(ModItems.ammo_nuke, 0, 1, 3, 1), + weighted(ModItems.ammo_container, 0, 1, 4, 1), + weighted(ModItems.grenade_nuclear, 0, 1, 2, 1), + weighted(ModItems.grenade_mirv, 0, 1, 1, 1), + weighted(ModItems.powder_yellowcake, 0, 26, 42, 1), + weighted(ModItems.ingot_u235, 0, 3, 6, 1), + weighted(ModItems.gun_fatman, 0, 1, 1, 1), + weighted(ModItems.gun_revolver_pip, 0, 1, 1, 1), + weighted(ModItems.clip_revolver_pip, 0, 2, 4, 1), + weighted(ModItems.circuit_red_copper, 0, 18, 32, 1), + weighted(ModItems.circuit_gold, 0, 6, 12, 1) + }; + }}; + + new ItemPool(POOL_VAULT_UNBREAKABLE) {{ + this.pool = new WeightedRandomChestContent[] { + weighted(ModItems.ammo_container, 0, 3, 6, 1), + weighted(ModItems.clip_fatman, 0, 2, 3, 1), + weighted(ModItems.ammo_nuke, AmmoFatman.MIRV.ordinal(), 2, 3, 1), + weighted(ModItems.gun_mirv, 0, 1, 1, 1), + weighted(ModItems.gun_fatman, 0, 1, 1, 1), + weighted(ModItems.gun_proto, 0, 1, 1, 1), + weighted(ModItems.gun_b92, 0, 1, 1, 1), + weighted(ModItems.ingot_combine_steel, 0, 16, 28, 1), + weighted(ModItems.man_core, 0, 1, 1, 1), + weighted(ModItems.boy_kit, 0, 1, 1, 1), + weighted(ModItems.nuke_starter_kit, 0, 1, 1, 1), + weighted(ModItems.weaponized_starblaster_cell, 0, 1, 1, 1), + weighted(ModItems.warhead_mirv, 0, 1, 1, 1), + weighted(ModItems.battery_schrabidium_cell, 0, 1, 1, 1), + weighted(ModItems.powder_nitan_mix, 0, 16, 32, 1) + }; + }}; + } +} diff --git a/src/main/java/com/hbm/lib/HbmChestContents.java b/src/main/java/com/hbm/lib/HbmChestContents.java index d77fb7647..c78e6f3a0 100644 --- a/src/main/java/com/hbm/lib/HbmChestContents.java +++ b/src/main/java/com/hbm/lib/HbmChestContents.java @@ -2,416 +2,15 @@ package com.hbm.lib; import java.util.Random; -import com.hbm.blocks.ModBlocks; -import com.hbm.inventory.fluid.Fluids; -import com.hbm.inventory.material.Mats; -import com.hbm.items.ItemAmmoEnums.Ammo357Magnum; -import com.hbm.items.ItemAmmoEnums.AmmoFatman; -import com.hbm.items.ModItems; -import com.hbm.items.machine.ItemBreedingRod.BreedingRodType; -import com.hbm.items.machine.ItemZirnoxRod.EnumZirnoxType; import com.hbm.items.special.ItemBookLore; -import com.hbm.items.tool.ItemBlowtorch; import net.minecraft.block.Block; -import net.minecraft.init.Items; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.util.WeightedRandomChestContent; public class HbmChestContents { - public static WeightedRandomChestContent[] modGeneric = new WeightedRandomChestContent[] { - weighted(Items.bread, 0, 1, 5, 8), - weighted(ModItems.twinkie, 0, 1, 3, 6), - weighted(Items.iron_ingot, 0, 2, 6, 10), - weighted(ModItems.ingot_steel, 0, 2, 5, 7), - weighted(ModItems.ingot_beryllium, 0, 1, 2, 4), - weighted(ModItems.ingot_titanium, 0, 1, 1, 3), - weighted(ModItems.circuit_targeting_tier1, 0, 1, 1, 5), - weighted(ModItems.gun_revolver, 0, 1, 1, 3), - weighted(ModItems.ammo_357, Ammo357Magnum.LEAD.ordinal(), 2, 6, 4), - weighted(ModItems.gun_kit_1, 0, 1, 3, 4), - weighted(ModItems.gun_lever_action, 0, 1, 1, 1), - weighted(ModItems.ammo_20gauge, 0, 2, 6, 3), - weighted(ModItems.casing_9, 0, 4, 10, 3), - weighted(ModItems.casing_50, 0, 4, 10, 3), - weighted(ModItems.cordite, 0, 4, 6, 5), - weighted(ModItems.battery_generic, 0, 1, 1, 4), - weighted(ModItems.battery_advanced, 0, 1, 1, 2), - weighted(ModItems.scrap, 0, 1, 3, 10), - weighted(ModItems.dust, 0, 2, 4, 9), - weighted(ModItems.bottle_opener, 0, 1, 1, 2), - weighted(ModItems.bottle_nuka, 0, 1, 3, 4), - weighted(ModItems.bottle_cherry, 0, 1, 1, 2), - weighted(ModItems.stealth_boy, 0, 1, 1, 1), - weighted(ModItems.cap_nuka, 0, 1, 15, 7), - weighted(ModItems.canister_full, Fluids.DIESEL.getID(), 1, 2, 2), - weighted(ModItems.canister_full, Fluids.BIOFUEL.getID(), 1, 2, 3), - weighted(ModItems.gas_mask_m65, 60, 1, 1, 2), - weighted(ModItems.gas_mask_filter, 0, 1, 1, 3) }; - - public static WeightedRandomChestContent[] machineParts = new WeightedRandomChestContent[] { - weighted(ModItems.plate_steel, 0, 1, 5, 5), - weighted(ModItems.hull_big_steel, 0, 1, 2, 2), - weighted(ModItems.hull_small_steel, 0, 1, 3, 3), - weighted(ModItems.plate_polymer, 0, 1, 6, 5), - weighted(ModItems.bolt, Mats.MAT_STEEL.id, 4, 16, 3), - weighted(ModItems.bolt, Mats.MAT_TUNGSTEN.id, 4, 16, 3), - weighted(ModItems.board_copper, 0, 1, 2, 4), - weighted(ModItems.coil_tungsten, 0, 1, 2, 5), - weighted(ModItems.motor, 0, 1, 2, 4), - weighted(ModItems.tank_steel, 0, 1, 2, 3), - weighted(ModItems.coil_copper, 0, 1, 3, 4), - weighted(ModItems.coil_copper_torus, 0, 1, 2, 3), - weighted(ModItems.wire_red_copper, 0, 1, 8, 5), - weighted(ModItems.piston_selenium, 0, 1, 1, 3), - weighted(ModItems.battery_advanced_cell, 0, 1, 1, 3), - weighted(ModItems.circuit_raw, 0, 1, 3, 5), - weighted(ModItems.circuit_aluminium, 0, 1, 2, 4), - weighted(ModItems.circuit_copper, 0, 1, 1, 3), - weighted(ModItems.circuit_red_copper, 0, 1, 1, 2), - weighted(ModItems.blade_titanium, 0, 1, 8, 1) - }; - - public static WeightedRandomChestContent[] antenna = new WeightedRandomChestContent[] { - weighted(ModItems.twinkie, 0, 1, 3, 4), - weighted(ModItems.ingot_steel, 0, 1, 2, 7), - weighted(ModItems.ingot_red_copper, 0, 1, 1, 4), - weighted(ModItems.ingot_titanium, 0, 1, 3, 5), - weighted(ModItems.wire_red_copper, 0, 2, 3, 7), - weighted(ModItems.circuit_targeting_tier1, 0, 1, 1, 4), - weighted(ModItems.circuit_copper, 0, 1, 1, 4), - weighted(ModItems.battery_generic, 0, 1, 1, 4), - weighted(ModItems.battery_advanced, 0, 1, 1, 3), - weighted(ModItems.powder_iodine, 0, 1, 1, 1), - weighted(ModItems.powder_bromine, 0, 1, 1, 1), - weighted(ModBlocks.steel_poles, 0, 1, 4, 8), - weighted(ModBlocks.steel_scaffold, 0, 1, 3, 8), - weighted(ModBlocks.pole_top, 0, 1, 1, 4), - weighted(ModBlocks.pole_satellite_receiver, 0, 1, 1, 7), - weighted(ModItems.scrap, 0, 1, 3, 10), - weighted(ModItems.dust, 0, 2, 4, 9), - weighted(ModItems.bottle_opener, 0, 1, 1, 2), - weighted(ModItems.bottle_nuka, 0, 1, 3, 4), - weighted(ModItems.bottle_cherry, 0, 1, 1, 2), - weighted(ModItems.stealth_boy, 0, 1, 1, 1), - weighted(ModItems.cap_nuka, 0, 1, 15, 7), - weighted(ModItems.bomb_caller, 0, 1, 1, 1), - weighted(ModItems.gas_mask_filter, 0, 1, 1, 2) }; - - public static WeightedRandomChestContent[] expensive = new WeightedRandomChestContent[] { - weighted(ModItems.chlorine_pinwheel, 0, 1, 1, 1), - weighted(ModItems.circuit_targeting_tier3, 0, 1, 1, 4), - weighted(ModItems.circuit_gold, 0, 1, 2, 3), - weighted(ModItems.circuit_targeting_tier4, 0, 1, 1, 2), - weighted(ModItems.gun_kit_1, 0, 1, 3, 6), - weighted(ModItems.gun_kit_2, 0, 1, 2, 3), - weighted(ModItems.gun_rpg, 0, 1, 1, 4), - weighted(ModItems.ammo_rocket, 0, 1, 4, 5), - weighted(ModItems.gun_fatman, 0, 1, 1, 1), - weighted(ModItems.ammo_nuke, AmmoFatman.SAFE.ordinal(), 1, 2, 1), - weighted(ModItems.ammo_nuke, AmmoFatman.LOW.ordinal(), 1, 2, 1), - weighted(ModItems.ammo_nuke, AmmoFatman.PUMPKIN.ordinal(), 1, 2, 1), - weighted(ModItems.grenade_nuclear, 0, 1, 1, 2), - weighted(ModItems.grenade_smart, 0, 1, 3, 3), - weighted(ModItems.grenade_mirv, 0, 1, 1, 2), - weighted(ModItems.stealth_boy, 0, 1, 1, 2), - weighted(ModItems.battery_advanced, 0, 1, 1, 3), - weighted(ModItems.battery_advanced_cell, 0, 1, 1, 2), - weighted(ModItems.battery_schrabidium, 0, 1, 1, 1), - weighted(ModItems.syringe_awesome, 0, 1, 1, 1), - weighted(ModItems.crate_caller, 0, 1, 1, 3), - weighted(ModItems.fusion_core, 0, 1, 1, 4), - weighted(ModItems.bottle_nuka, 0, 1, 3, 6), - weighted(ModItems.bottle_quantum, 0, 1, 1, 3), - weighted(ModBlocks.red_barrel, 0, 1, 1, 6), - weighted(ModItems.canister_full, Fluids.DIESEL.getID(), 1, 2, 2), - weighted(ModItems.canister_full, Fluids.BIOFUEL.getID(), 1, 2, 3), - weighted(ModItems.gas_mask_m65, 60, 1, 1, 5), - weighted(ModItems.bomb_caller, 0, 1, 1, 2), - weighted(ModItems.bomb_caller, 1, 1, 1, 1), - weighted(ModItems.bomb_caller, 2, 1, 1, 1), - weighted(ModItems.gas_mask_filter, 0, 1, 1, 4), - weighted(ModItems.journal_pip, 0, 1, 1, 1), - weighted(ModItems.journal_bj, 0, 1, 1, 1) }; - - public static WeightedRandomChestContent[] nukeTrash = new WeightedRandomChestContent[] { - weighted(ModItems.nugget_u238, 0, 3, 12, 5), - weighted(ModItems.nugget_pu240, 0, 3, 8, 5), - weighted(ModItems.nugget_neptunium, 0, 1, 4, 3), - weighted(ModItems.rod, BreedingRodType.U238.ordinal(), 1, 1, 3), - weighted(ModItems.rod_dual, BreedingRodType.U238.ordinal(), 1, 1, 3), - weighted(ModItems.rod_quad, BreedingRodType.U238.ordinal(), 1, 1, 3), - weighted(ModItems.bottle_quantum, 0, 1, 1, 1), - weighted(ModItems.gas_mask_m65, 60, 1, 1, 5), - weighted(ModItems.hazmat_kit, 0, 1, 1, 1), - weighted(ModItems.gas_mask_filter, 0, 1, 1, 5), - weighted(ModBlocks.yellow_barrel, 0, 1, 1, 2) }; - - public static WeightedRandomChestContent[] nuclearFuel = new WeightedRandomChestContent[] { - weighted(ModItems.billet_uranium, 0, 1, 4, 4), - weighted(ModItems.billet_th232, 0, 1, 3, 3), - weighted(ModItems.billet_uranium_fuel, 0, 1, 3, 5), - weighted(ModItems.billet_mox_fuel, 0, 1, 3, 5), - weighted(ModItems.billet_thorium_fuel, 0, 1, 3, 3), - weighted(ModItems.billet_ra226be, 0, 1, 2, 2), - weighted(ModItems.billet_beryllium, 0, 1, 1, 1), - weighted(ModItems.nugget_u233, 0, 1, 1, 1), - weighted(ModItems.nugget_uranium_fuel, 0, 1, 1, 1), - weighted(ModItems.rod_zirnox_empty, 0, 1, 3, 3), - weighted(ModItems.ingot_graphite, 0, 1, 4, 3), - weighted(ModItems.pile_rod_uranium, 0, 2, 5, 3), - weighted(ModItems.pile_rod_source, 0, 1, 2, 2), - weighted(ModItems.reacher, 0, 1, 1, 3), - weighted(ModItems.screwdriver, 0, 1, 1, 2), - }; - - public static WeightedRandomChestContent[] nuclear = new WeightedRandomChestContent[] { - weighted(ModItems.nugget_u235, 0, 3, 12, 5), - weighted(ModItems.nugget_pu238, 0, 3, 12, 5), - weighted(ModItems.nugget_ra226, 0, 3, 6, 5), - weighted(ModItems.rod, BreedingRodType.U235.ordinal(), 1, 1, 3), - weighted(ModItems.rod_dual, BreedingRodType.U235.ordinal(), 1, 1, 3), - weighted(ModItems.rod_quad, BreedingRodType.U235.ordinal(), 1, 1, 3), - weighted(ModItems.rod_zirnox, EnumZirnoxType.URANIUM_FUEL.ordinal(), 1, 1, 4), - weighted(ModItems.rod_zirnox, EnumZirnoxType.MOX_FUEL.ordinal(), 1, 1, 4), - weighted(ModItems.rod_zirnox, EnumZirnoxType.LITHIUM.ordinal(), 1, 1, 3), - weighted(ModItems.rod_zirnox, EnumZirnoxType.THORIUM_FUEL.ordinal(), 1, 1, 3), - weighted(ModItems.rod_dual, BreedingRodType.THF.ordinal(), 1, 1, 3), - weighted(ModItems.rod_zirnox_tritium, 0, 1, 1, 1), - weighted(ModItems.rod_zirnox, EnumZirnoxType.U233_FUEL.ordinal(), 1, 1, 1), - weighted(ModItems.rod_zirnox, EnumZirnoxType.U235_FUEL.ordinal(), 1, 1, 1), - weighted(ModItems.pellet_rtg, 0, 1, 1, 3), - weighted(ModItems.powder_thorium, 0, 1, 1, 1), - weighted(ModItems.powder_neptunium, 0, 1, 1, 1), - weighted(ModItems.powder_strontium, 0, 1, 1, 1), - weighted(ModItems.powder_cobalt, 0, 1, 1, 1), - weighted(ModItems.bottle_quantum, 0, 1, 1, 1), - weighted(ModItems.gas_mask_m65, 60, 1, 1, 5), - weighted(ModItems.hazmat_kit, 0, 1, 1, 2), - weighted(ModItems.gas_mask_filter, 0, 1, 1, 5), - weighted(ModBlocks.yellow_barrel, 0, 1, 3, 3) }; - - public static WeightedRandomChestContent[] vertibird = new WeightedRandomChestContent[] { - weighted(ModItems.t45_helmet, 0, 1, 1, 15), - weighted(ModItems.t45_plate, 0, 1, 1, 15), - weighted(ModItems.t45_legs, 0, 1, 1, 15), - weighted(ModItems.t45_boots, 0, 1, 1, 15), - weighted(ModItems.t45_kit, 0, 1, 1, 3), - weighted(ModItems.fusion_core, 0, 1, 1, 10), - weighted(ModItems.gun_revolver, 0, 1, 1, 4), - weighted(ModItems.ammo_357, Ammo357Magnum.LEAD.ordinal(), 1, 24, 4), - weighted(ModItems.gun_kit_1, 0, 2, 3, 4), - weighted(ModItems.gun_rpg, 0, 1, 1, 3), - weighted(ModItems.ammo_rocket, 0, 1, 6, 3), - weighted(ModItems.rod, BreedingRodType.U235.ordinal(), 1, 1, 2), - weighted(ModItems.billet_uranium_fuel, 0, 1, 1, 2), - weighted(ModItems.ingot_uranium_fuel, 0, 1, 1, 2), - weighted(ModItems.ammo_nuke, AmmoFatman.SAFE.ordinal(), 1, 2, 1), - weighted(ModItems.gun_fatman, 0, 1, 1, 1), - weighted(ModItems.bottle_nuka, 0, 1, 3, 6), - weighted(ModItems.bottle_quantum, 0, 1, 1, 3), - weighted(ModItems.stealth_boy, 0, 1, 1, 7), - weighted(ModItems.crate_caller, 0, 1, 1, 3), - weighted(ModItems.gas_mask_m65, 0, 1, 1, 5), - weighted(ModItems.gas_mask_filter, 0, 1, 1, 5), - weighted(ModItems.grenade_nuclear, 0, 1, 2, 2), - weighted(ModItems.bomb_caller, 0, 1, 1, 1), - weighted(ModItems.bomb_caller, 1, 1, 1, 1), - weighted(ModItems.bomb_caller, 2, 1, 1, 2) }; - - public static WeightedRandomChestContent[] missile = new WeightedRandomChestContent[] { - weighted(ModItems.missile_generic, 0, 1, 1, 4), - weighted(ModItems.missile_incendiary, 0, 1, 1, 4), - weighted(ModItems.gas_mask_m65, 0, 1, 1, 5), - weighted(ModItems.battery_advanced, 0, 1, 1, 5), - weighted(ModItems.designator, 0, 1, 1, 5), - weighted(ModItems.crate_caller, 0, 1, 1, 1), - weighted(ModItems.thruster_small, 0, 1, 1, 5), - weighted(ModItems.thruster_medium, 0, 1, 1, 4), - weighted(ModItems.fuel_tank_small, 0, 1, 1, 5), - weighted(ModItems.fuel_tank_medium, 0, 1, 1, 4), - weighted(ModItems.bomb_caller, 0, 1, 1, 1), - weighted(ModItems.bomb_caller, 3, 1, 1, 1), - weighted(ModItems.bottle_nuka, 0, 1, 3, 10) }; - - public static WeightedRandomChestContent[] spaceship = new WeightedRandomChestContent[] { - weighted(ModItems.battery_advanced, 0, 1, 1, 5), - weighted(ModItems.ingot_advanced_alloy, 0, 2, 16, 5), - weighted(ModItems.wire_advanced_alloy, 0, 8, 32, 5), - weighted(ModItems.coil_advanced_alloy, 0, 2, 16, 5), - weighted(ModItems.cell_deuterium, 0, 1, 8, 5), - weighted(ModItems.cell_tritium, 0, 1, 8, 5), - weighted(ModItems.cell_antimatter, 0, 1, 1, 1), - weighted(ModItems.powder_neodymium, 0, 1, 1, 1), - weighted(ModItems.powder_niobium, 0, 1, 1, 1), - weighted(ModBlocks.fusion_conductor, 0, 2, 4, 5), - weighted(ModBlocks.fusion_heater, 0, 1, 3, 5), - weighted(ModBlocks.pwr_fuel, 0, 1, 2, 5), - weighted(ModBlocks.block_tungsten, 0, 3, 8, 5), - weighted(ModBlocks.red_wire_coated, 0, 4, 8, 5), - weighted(ModBlocks.red_cable, 0, 8, 16, 5) }; - - public static WeightedRandomChestContent[] powder = new WeightedRandomChestContent[] { - weighted(ModItems.powder_neptunium, 0, 1, 32, 1), - weighted(ModItems.powder_iodine, 0, 1, 32, 1), - weighted(ModItems.powder_thorium, 0, 1, 32, 1), - weighted(ModItems.powder_astatine, 0, 1, 32, 1), - weighted(ModItems.powder_neodymium, 0, 1, 32, 1), - weighted(ModItems.powder_caesium, 0, 1, 32, 1), - weighted(ModItems.powder_strontium, 0, 1, 32, 1), - weighted(ModItems.powder_cobalt, 0, 1, 32, 1), - weighted(ModItems.powder_bromine, 0, 1, 32, 1), - weighted(ModItems.powder_niobium, 0, 1, 32, 1), - weighted(ModItems.powder_tennessine, 0, 1, 32, 1), - weighted(ModItems.powder_cerium, 0, 1, 32, 1) }; - - public static WeightedRandomChestContent[] vault1 = new WeightedRandomChestContent[] { - weighted(Items.gold_ingot, 0, 3, 14, 1), - weighted(ModItems.gun_uac_pistol, 0, 1, 1, 2), - weighted(ModItems.pin, 0, 8, 8, 1), - weighted(ModItems.gun_calamity, 0, 1, 1, 1), - weighted(ModItems.bottle_quantum, 0, 1, 3, 1), - weighted(ModItems.ingot_advanced_alloy, 0, 4, 12, 1), - weighted(ModItems.ammo_50bmg, 0, 24, 48, 1), - weighted(ModItems.ammo_45, 0, 48, 64, 2), - weighted(ModItems.circuit_red_copper, 0, 6, 12, 1), - weighted(ModItems.gas_mask_m65, 0, 1, 1, 1), - weighted(ModItems.grenade_if_he, 0, 1, 1, 1), - weighted(ModItems.grenade_if_incendiary, 0, 1, 1, 1), - weighted(Items.diamond, 0, 1, 2, 1) }; - - public static WeightedRandomChestContent[] vault2 = new WeightedRandomChestContent[] { - weighted(ModItems.ingot_desh, 0, 2, 6, 1), - weighted(ModItems.battery_advanced_cell_4, 0, 1, 1, 1), - weighted(ModItems.powder_desh_mix, 0, 1, 5, 1), - weighted(Items.diamond, 0, 3, 6, 1), - weighted(ModItems.ammo_nuke, 0, 1, 1, 1), - weighted(ModItems.ammo_container, 0, 1, 1, 1), - weighted(ModItems.grenade_nuclear, 0, 1, 1, 1), - weighted(ModItems.grenade_smart, 0, 1, 6, 1), - weighted(ModItems.powder_yellowcake, 0, 16, 24, 1), - weighted(ModItems.gun_uzi, 0, 1, 1, 1), - weighted(ModItems.gun_uzi_silencer, 0, 1, 1, 1), - weighted(ModItems.clip_uzi, 0, 1, 3, 1), - weighted(ModItems.circuit_red_copper, 0, 12, 16, 1), - weighted(ModItems.circuit_gold, 0, 2, 6, 1) }; - - public static WeightedRandomChestContent[] vault3 = new WeightedRandomChestContent[] { - weighted(ModItems.ingot_desh, 0, 6, 16, 1), - weighted(ModItems.battery_lithium, 0, 1, 1, 1), - weighted(ModItems.powder_power, 0, 1, 5, 1), - weighted(ModItems.sat_chip, 0, 1, 1, 1), - weighted(Items.diamond, 0, 5, 9, 1), - weighted(ModItems.warhead_nuclear, 0, 1, 1, 1), - weighted(ModItems.ammo_nuke, 0, 1, 3, 1), - weighted(ModItems.ammo_container, 0, 1, 4, 1), - weighted(ModItems.grenade_nuclear, 0, 1, 2, 1), - weighted(ModItems.grenade_mirv, 0, 1, 1, 1), - weighted(ModItems.powder_yellowcake, 0, 26, 42, 1), - weighted(ModItems.ingot_u235, 0, 3, 6, 1), - weighted(ModItems.gun_fatman, 0, 1, 1, 1), - weighted(ModItems.gun_revolver_pip, 0, 1, 1, 1), - weighted(ModItems.clip_revolver_pip, 0, 2, 4, 1), - weighted(ModItems.circuit_red_copper, 0, 18, 32, 1), - weighted(ModItems.circuit_gold, 0, 6, 12, 1) }; - - public static WeightedRandomChestContent[] vault4 = new WeightedRandomChestContent[] { - weighted(ModItems.ammo_container, 0, 3, 6, 1), - weighted(ModItems.clip_fatman, 0, 2, 3, 1), - weighted(ModItems.ammo_nuke, AmmoFatman.MIRV.ordinal(), 2, 3, 1), - weighted(ModItems.gun_mirv, 0, 1, 1, 1), - weighted(ModItems.gun_fatman, 0, 1, 1, 1), - weighted(ModItems.gun_proto, 0, 1, 1, 1), - weighted(ModItems.gun_b92, 0, 1, 1, 1), - weighted(ModItems.ingot_combine_steel, 0, 16, 28, 1), - weighted(ModItems.man_core, 0, 1, 1, 1), - weighted(ModItems.boy_kit, 0, 1, 1, 1), - weighted(ModItems.nuke_starter_kit, 0, 1, 1, 1), - weighted(ModItems.weaponized_starblaster_cell, 0, 1, 1, 1), - weighted(ModItems.warhead_mirv, 0, 1, 1, 1), - weighted(ModItems.battery_schrabidium_cell, 0, 1, 1, 1), - weighted(ModItems.powder_nitan_mix, 0, 16, 32, 1) }; - - public static WeightedRandomChestContent[] officeTrash = new WeightedRandomChestContent[] { - //Meta, Min amount, Max amount, Weight - weighted(Items.paper, 0, 1, 12, 10), - weighted(Items.book, 0, 1, 3, 4), - weighted(ModItems.twinkie, 0, 1, 2, 6), - weighted(ModItems.coffee, 0, 1, 1, 4), - weighted(ModItems.flame_politics, 0, 1, 1, 2), - weighted(ModItems.ring_pull, 0, 1, 1, 4), - weighted(ModItems.can_empty, 0, 1, 1, 2), - weighted(ModItems.can_creature, 0, 1, 2, 2), - weighted(ModItems.can_smart, 0, 1, 3, 2), - weighted(ModItems.can_mrsugar, 0, 1, 2, 2), - weighted(ModItems.cap_nuka, 0, 1, 16, 2), - weighted(ModItems.book_guide, 3, 1, 1, 1), - weighted(Item.getItemFromBlock(ModBlocks.deco_computer), 0, 1, 1, 1)}; - - public static WeightedRandomChestContent[] filingCabinet = new WeightedRandomChestContent[] { - weighted(Items.paper, 0, 1, 12, 240), - weighted(Items.book, 0, 1, 3, 90), - weighted(Items.map, 0, 1, 1, 50), - weighted(Items.writable_book, 0, 1, 1, 30), - weighted(ModItems.cigarette, 0, 1, 16, 20), - weighted(ModItems.toothpicks, 0, 1, 16, 10), - weighted(ModItems.dust, 0, 1, 1, 40), - weighted(ModItems.dust_tiny, 0, 1, 3, 75), - weighted(ModItems.ink, 0, 1, 1, 1), //make that mf rare; 1:555 weight - }; - - public static WeightedRandomChestContent[] solidFuel = new WeightedRandomChestContent[] { - weighted(ModItems.solid_fuel, 0, 1, 5, 1), - weighted(ModItems.solid_fuel_presto, 0, 1, 2, 2), - weighted(ModItems.ball_dynamite, 0, 1, 4, 2), - weighted(Items.redstone, 0, 1, 3, 1), - weighted(ModItems.niter, 0, 1, 3, 1) - }; - - public static WeightedRandomChestContent[] labVault = new WeightedRandomChestContent[] { - weighted(ItemBlowtorch.getEmptyTool(ModItems.blowtorch), 1, 1, 4), - weighted(ModItems.chemistry_set, 0, 1, 1, 15), - weighted(ModItems.screwdriver, 0, 1, 1, 10), - weighted(ModItems.nugget_mercury, 0, 1, 1, 3), - weighted(ModItems.morning_glory, 0, 1, 1, 1), - weighted(ModItems.filter_coal, 0, 1, 1, 5), - weighted(ModItems.dust, 0, 1, 3, 25), - weighted(Items.paper, 0, 1, 2, 15), - weighted(ModItems.cell_empty, 0, 1, 1, 5), - weighted(Items.glass_bottle, 0, 1, 1, 5), - weighted(ModItems.powder_iodine, 0, 1, 1, 1), - weighted(ModItems.powder_bromine, 0, 1, 1, 1), - weighted(ModItems.powder_cobalt, 0, 1, 1, 1), - weighted(ModItems.powder_neodymium, 0, 1, 1, 1), - weighted(ModItems.powder_boron, 0, 1, 1, 1), - }; - - public static WeightedRandomChestContent[] lockersVault = new WeightedRandomChestContent[] { - weighted(ModItems.robes_helmet, 0, 1, 1, 1), - weighted(ModItems.robes_plate, 0, 1, 1, 1), - weighted(ModItems.robes_legs, 0, 1, 1, 1), - weighted(ModItems.robes_boots, 0, 1, 1, 1), - weighted(ModItems.jackt, 0, 1, 1, 1), - weighted(ModItems.jackt2, 0, 1, 1, 1), - weighted(ModItems.gas_mask_m65, 0, 1, 1, 2), - weighted(ModItems.gas_mask_mono, 0, 1, 1, 2), - weighted(ModItems.goggles, 0, 1, 1, 2), - weighted(ModItems.gas_mask_filter, 0, 1, 1, 4), - weighted(ModItems.flame_opinion, 0, 1, 3, 5), - weighted(ModItems.flame_conspiracy, 0, 1, 3, 5), - weighted(ModItems.flame_politics, 0, 1, 3, 5), - weighted(ModItems.cigarette, 0, 1, 8, 5), - weighted(ModItems.armor_polish, 0, 1, 1, 3), - weighted(ModItems.gun_kit_1, 0, 1, 1, 3), - weighted(ModItems.rag, 0, 1, 3, 5), - weighted(Items.paper, 0, 1, 6, 7), - weighted(Items.clock, 0, 1, 1, 3), - weighted(Items.book, 0, 1, 5, 10), - weighted(Items.experience_bottle, 0, 1, 3, 1), - }; - public static WeightedRandomChestContent weighted(Item item, int meta, int min, int max, int weight) { return new WeightedRandomChestContent(item, meta, min, max, weight); } public static WeightedRandomChestContent weighted(Block block, int meta, int min, int max, int weight) { return new WeightedRandomChestContent(Item.getItemFromBlock(block), meta, min, max, weight); } public static WeightedRandomChestContent weighted(ItemStack item, int min, int max, int weight) { return new WeightedRandomChestContent(item, min, max, weight); } @@ -422,18 +21,12 @@ public class HbmChestContents { String key; int pages; switch(rand.nextInt(5)) { - case 0: - key = "resignation_note"; pages = 3; break; - case 1: - key = "memo_stocks"; pages = 1; break; - case 2: - key = "memo_schrab_gsa"; pages = 2; break; - case 3: - key = "memo_schrab_rd"; pages = 4; break; - case 4: - key = "memo_schrab_nuke"; pages = 3; break; - default: - return null; + case 0: key = "resignation_note"; pages = 3; break; + case 1: key = "memo_stocks"; pages = 1; break; + case 2: key = "memo_schrab_gsa"; pages = 2; break; + case 3: key = "memo_schrab_rd"; pages = 4; break; + case 4: key = "memo_schrab_nuke"; pages = 3; break; + default: return null; } return ItemBookLore.createBook(key, pages, 0x6BC8FF, 0x0A0A0A); @@ -444,18 +37,12 @@ public class HbmChestContents { int pages; switch(rand.nextInt(5)) { - case 0: - key = "bf_bomb_1"; pages = 4; break; - case 1: - key = "bf_bomb_2"; pages = 6; break; - case 2: - key = "bf_bomb_3"; pages = 6; break; - case 3: - key = "bf_bomb_4"; pages = 5; break; - case 4: - key = "bf_bomb_5"; pages = 9; break; - default: - return null; + case 0: key = "bf_bomb_1"; pages = 4; break; + case 1: key = "bf_bomb_2"; pages = 6; break; + case 2: key = "bf_bomb_3"; pages = 6; break; + case 3: key = "bf_bomb_4"; pages = 5; break; + case 4: key = "bf_bomb_5"; pages = 9; break; + default: return null; } return ItemBookLore.createBook(key, pages, 0x1E1E1E, 0x46EA44); diff --git a/src/main/java/com/hbm/lib/HbmWorldGen.java b/src/main/java/com/hbm/lib/HbmWorldGen.java index 577632737..e6029be87 100644 --- a/src/main/java/com/hbm/lib/HbmWorldGen.java +++ b/src/main/java/com/hbm/lib/HbmWorldGen.java @@ -10,6 +10,8 @@ import com.hbm.config.GeneralConfig; import com.hbm.config.MobConfig; import com.hbm.config.WorldConfig; import com.hbm.handler.MultiblockHandlerXR; +import com.hbm.itempool.ItemPool; +import com.hbm.itempool.ItemPoolsSingle; import com.hbm.items.ModItems; import com.hbm.main.MainRegistry; import com.hbm.saveddata.TomSaveData; @@ -523,39 +525,29 @@ public class HbmWorldGen implements IWorldGenerator { if(world.getBlock(x, y - 1, z).canPlaceTorchOnTop(world, x, y - 1, z)) { world.setBlock(x, y, z, ModBlocks.safe, rand.nextInt(4) + 2, 2); + TileEntitySafe safe = (TileEntitySafe) world.getTileEntity(x, y, z); switch(rand.nextInt(10)) { - case 0: - case 1: - case 2: - case 3: - ((TileEntitySafe)world.getTileEntity(x, y, z)).setPins(rand.nextInt(999) + 1); - ((TileEntitySafe)world.getTileEntity(x, y, z)).setMod(1); - ((TileEntitySafe)world.getTileEntity(x, y, z)).lock(); - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.vault1, (TileEntitySafe)world.getTileEntity(x, y, z), rand.nextInt(4) + 3); + case 0: case 1: case 2: case 3: + safe.setMod(1); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsSingle.POOL_VAULT_RUSTY), safe, rand.nextInt(4) + 3); break; - case 4: - case 5: - case 6: - ((TileEntitySafe)world.getTileEntity(x, y, z)).setPins(rand.nextInt(999) + 1); - ((TileEntitySafe)world.getTileEntity(x, y, z)).setMod(0.1); - ((TileEntitySafe)world.getTileEntity(x, y, z)).lock(); - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.vault2, (TileEntitySafe)world.getTileEntity(x, y, z), rand.nextInt(3) + 2); + case 4: case 5: case 6: + safe.setMod(0.1); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsSingle.POOL_VAULT_STANDARD), safe, rand.nextInt(3) + 2); break; - case 7: - case 8: - ((TileEntitySafe)world.getTileEntity(x, y, z)).setPins(rand.nextInt(999) + 1); - ((TileEntitySafe)world.getTileEntity(x, y, z)).setMod(0.02); - ((TileEntitySafe)world.getTileEntity(x, y, z)).lock(); - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.vault3, (TileEntitySafe)world.getTileEntity(x, y, z), rand.nextInt(3) + 1); + case 7: case 8: + safe.setMod(0.02); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsSingle.POOL_VAULT_REINFORCED), safe, rand.nextInt(3) + 1); break; case 9: - ((TileEntitySafe)world.getTileEntity(x, y, z)).setPins(rand.nextInt(999) + 1); - ((TileEntitySafe)world.getTileEntity(x, y, z)).setMod(0.0); - ((TileEntitySafe)world.getTileEntity(x, y, z)).lock(); - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.vault4, (TileEntitySafe)world.getTileEntity(x, y, z), rand.nextInt(2) + 1); + safe.setMod(0.0); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsSingle.POOL_VAULT_UNBREAKABLE), safe, rand.nextInt(2) + 1); break; } + + safe.setPins(rand.nextInt(999) + 1); + safe.lock(); if(GeneralConfig.enableDebugMode) MainRegistry.logger.info("[Debug] Successfully spawned safe at " + x + " " + (y + 1) +" " + z); @@ -672,8 +664,7 @@ public class HbmWorldGen implements IWorldGenerator { if (world.getBlock(10000, 250, 10000) == Blocks.air) { world.setBlock(10000, 250, 10000, Blocks.chest); if (world.getBlock(10000, 250, 10000) == Blocks.chest) { - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.powder, - (TileEntityChest) world.getTileEntity(10000, 250, 10000), 29); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsSingle.POOL_POWDER), (TileEntityChest) world.getTileEntity(10000, 250, 10000), 29); } } } @@ -681,8 +672,7 @@ public class HbmWorldGen implements IWorldGenerator { if (world.getBlock(0, 250, 10000) == Blocks.air) { world.setBlock(0, 250, 10000, Blocks.chest); if (world.getBlock(0, 250, 10000) == Blocks.chest) { - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.powder, - (TileEntityChest) world.getTileEntity(0, 250, 10000), 29); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsSingle.POOL_POWDER), (TileEntityChest) world.getTileEntity(0, 250, 10000), 29); } } } @@ -690,8 +680,7 @@ public class HbmWorldGen implements IWorldGenerator { if (world.getBlock(-10000, 250, 10000) == Blocks.air) { world.setBlock(-10000, 250, 10000, Blocks.chest); if (world.getBlock(-10000, 250, 10000) == Blocks.chest) { - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.powder, - (TileEntityChest) world.getTileEntity(-10000, 250, 10000), 29); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsSingle.POOL_POWDER), (TileEntityChest) world.getTileEntity(-10000, 250, 10000), 29); } } } @@ -699,8 +688,7 @@ public class HbmWorldGen implements IWorldGenerator { if (world.getBlock(10000, 250, 0) == Blocks.air) { world.setBlock(10000, 250, 0, Blocks.chest); if (world.getBlock(10000, 250, 0) == Blocks.chest) { - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.powder, - (TileEntityChest) world.getTileEntity(10000, 250, 0), 29); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsSingle.POOL_POWDER), (TileEntityChest) world.getTileEntity(10000, 250, 0), 29); } } } @@ -708,8 +696,7 @@ public class HbmWorldGen implements IWorldGenerator { if (world.getBlock(-10000, 250, 0) == Blocks.air) { world.setBlock(-10000, 250, 0, Blocks.chest); if (world.getBlock(-10000, 250, 0) == Blocks.chest) { - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.powder, - (TileEntityChest) world.getTileEntity(-10000, 250, 0), 29); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsSingle.POOL_POWDER), (TileEntityChest) world.getTileEntity(-10000, 250, 0), 29); } } } @@ -717,8 +704,7 @@ public class HbmWorldGen implements IWorldGenerator { if (world.getBlock(10000, 250, -10000) == Blocks.air) { world.setBlock(10000, 250, -10000, Blocks.chest); if (world.getBlock(10000, 250, -10000) == Blocks.chest) { - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.powder, - (TileEntityChest) world.getTileEntity(10000, 250, -10000), 29); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsSingle.POOL_POWDER), (TileEntityChest) world.getTileEntity(10000, 250, -10000), 29); } } } @@ -726,8 +712,7 @@ public class HbmWorldGen implements IWorldGenerator { if (world.getBlock(0, 250, -10000) == Blocks.air) { world.setBlock(0, 250, -10000, Blocks.chest); if (world.getBlock(0, 250, -10000) == Blocks.chest) { - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.powder, - (TileEntityChest) world.getTileEntity(0, 250, -10000), 29); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsSingle.POOL_POWDER), (TileEntityChest) world.getTileEntity(0, 250, -10000), 29); } } } @@ -735,8 +720,7 @@ public class HbmWorldGen implements IWorldGenerator { if (world.getBlock(-10000, 250, -10000) == Blocks.air) { world.setBlock(-10000, 250, -10000, Blocks.chest); if (world.getBlock(-10000, 250, -10000) == Blocks.chest) { - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.powder, - (TileEntityChest) world.getTileEntity(-10000, 250, -10000), 29); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsSingle.POOL_POWDER), (TileEntityChest) world.getTileEntity(-10000, 250, -10000), 29); } } } diff --git a/src/main/java/com/hbm/main/MainRegistry.java b/src/main/java/com/hbm/main/MainRegistry.java index 27763384c..9afbe951f 100644 --- a/src/main/java/com/hbm/main/MainRegistry.java +++ b/src/main/java/com/hbm/main/MainRegistry.java @@ -29,7 +29,6 @@ import com.hbm.inventory.material.Mats; import com.hbm.inventory.recipes.*; import com.hbm.inventory.recipes.anvil.AnvilRecipes; import com.hbm.inventory.recipes.loader.SerializableRecipe; -import com.hbm.itempool.ItemPool; import com.hbm.items.ItemAmmoEnums.Ammo4Gauge; import com.hbm.items.ItemEnums.EnumAchievementType; import com.hbm.items.ModItems; @@ -862,7 +861,6 @@ public class MainRegistry { RadiolysisRecipes.registerRadiolysis(); FalloutConfigJSON.initialize(); - ItemPool.initialize(); ItemPoolConfigJSON.initialize(); TileEntityNukeCustom.registerBombItems(); diff --git a/src/main/java/com/hbm/main/ModEventHandlerClient.java b/src/main/java/com/hbm/main/ModEventHandlerClient.java index 38f1102ee..790dd7152 100644 --- a/src/main/java/com/hbm/main/ModEventHandlerClient.java +++ b/src/main/java/com/hbm/main/ModEventHandlerClient.java @@ -65,7 +65,6 @@ import com.hbm.tileentity.machine.TileEntityNukeFurnace; import com.hbm.util.I18nUtil; import com.hbm.util.ItemStackUtil; import com.hbm.util.LoggingUtil; -import com.hbm.util.fauxpointtwelve.BlockPos; import com.hbm.wiaj.GuiWorldInAJar; import com.hbm.wiaj.cannery.CanneryBase; import com.hbm.wiaj.cannery.Jars; diff --git a/src/main/java/com/hbm/render/item/weapon/ItemRenderBenelli.java b/src/main/java/com/hbm/render/item/weapon/ItemRenderBenelli.java index 435d71105..c7c3a19d0 100644 --- a/src/main/java/com/hbm/render/item/weapon/ItemRenderBenelli.java +++ b/src/main/java/com/hbm/render/item/weapon/ItemRenderBenelli.java @@ -2,7 +2,6 @@ package com.hbm.render.item.weapon; import org.lwjgl.opengl.GL11; -import com.hbm.items.weapon.ItemGunBase; import com.hbm.main.ResourceManager; import com.hbm.render.anim.HbmAnimations; diff --git a/src/main/java/com/hbm/world/dungeon/Antenna.java b/src/main/java/com/hbm/world/dungeon/Antenna.java index b3832a1ab..b0bb8e6a1 100644 --- a/src/main/java/com/hbm/world/dungeon/Antenna.java +++ b/src/main/java/com/hbm/world/dungeon/Antenna.java @@ -6,7 +6,8 @@ import java.util.Random; import com.hbm.blocks.ModBlocks; import com.hbm.config.GeneralConfig; -import com.hbm.lib.HbmChestContents; +import com.hbm.itempool.ItemPool; +import com.hbm.itempool.ItemPoolsLegacy; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.init.Blocks; @@ -88,7 +89,7 @@ public class Antenna extends WorldGenerator world.setBlock(x + 1, y + 0, z + 2, ModBlocks.steel_poles, 3, 3); world.setBlock(x + 2, y + 0, z + 2, Blocks.chest, 0, 3); world.setBlockMetadataWithNotify(x + 2, y + 0, z + 2, 5, 3); - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.antenna, (TileEntityChest)world.getTileEntity(x + 2, y, z + 2), 8); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_ANTENNA), (TileEntityChest)world.getTileEntity(x + 2, y, z + 2), 8); world.setBlock(x + 0, y + 1, z + 0, Blocks.air, 0, 3); world.setBlock(x + 1, y + 1, z + 0, ModBlocks.steel_poles, 2, 3); world.setBlock(x + 2, y + 1, z + 0, Blocks.air, 0, 3); diff --git a/src/main/java/com/hbm/world/dungeon/Barrel.java b/src/main/java/com/hbm/world/dungeon/Barrel.java index 40f80cd9f..14f2a7400 100644 --- a/src/main/java/com/hbm/world/dungeon/Barrel.java +++ b/src/main/java/com/hbm/world/dungeon/Barrel.java @@ -6,7 +6,8 @@ import java.util.Random; import com.hbm.blocks.ModBlocks; import com.hbm.config.GeneralConfig; -import com.hbm.lib.HbmChestContents; +import com.hbm.itempool.ItemPool; +import com.hbm.itempool.ItemPoolsLegacy; import com.hbm.lib.Library; import com.hbm.tileentity.bomb.TileEntitySellafield; import com.hbm.tileentity.machine.storage.TileEntityCrateSteel; @@ -153,7 +154,7 @@ public class Barrel extends WorldGenerator { if(world.getBlock(x + 2, y + 1, z + 2) == ModBlocks.crate_steel) { - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.expensive, (TileEntityCrateSteel)world.getTileEntity(x + 2, y + 1, z + 2), 16); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_EXPENSIVE), (TileEntityCrateSteel)world.getTileEntity(x + 2, y + 1, z + 2), 16); } world.setBlock(x + 3, y + 1, z + 2, sellafield, 3, 3); diff --git a/src/main/java/com/hbm/world/dungeon/CrashedVertibird.java b/src/main/java/com/hbm/world/dungeon/CrashedVertibird.java index d171f253b..f9ce89fe1 100644 --- a/src/main/java/com/hbm/world/dungeon/CrashedVertibird.java +++ b/src/main/java/com/hbm/world/dungeon/CrashedVertibird.java @@ -6,7 +6,8 @@ import java.util.Random; import com.hbm.blocks.ModBlocks; import com.hbm.config.GeneralConfig; -import com.hbm.lib.HbmChestContents; +import com.hbm.itempool.ItemPool; +import com.hbm.itempool.ItemPoolsLegacy; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.init.Blocks; @@ -158,7 +159,7 @@ public class CrashedVertibird extends WorldGenerator world.setBlock(x + 6, y + 4 - yOffset, z + 7, Blocks.chest, 2, 3); if(world.getBlock(x + 6, y + 4 - yOffset, z + 7) == Blocks.chest) { - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.vertibird, (TileEntityChest)world.getTileEntity(x + 6, y + 4 - yOffset, z + 7), 8); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_VERTIBIRD), (TileEntityChest)world.getTileEntity(x + 6, y + 4 - yOffset, z + 7), 8); } world.setBlock(x + 7, y + 4 - yOffset, z + 7, Block1, 0, 3); world.setBlock(x + 4, y + 4 - yOffset, z + 8, Block1, 0, 3); @@ -287,7 +288,7 @@ public class CrashedVertibird extends WorldGenerator world.setBlock(x + 5, y + 8 - yOffset, z + 6, Blocks.chest, 2, 3); if(world.getBlock(x + 5, y + 8 - yOffset, z + 6) == Blocks.chest) { - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.expensive, (TileEntityChest)world.getTileEntity(x + 5, y + 8 - yOffset, z + 6), 8); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_EXPENSIVE), (TileEntityChest)world.getTileEntity(x + 5, y + 8 - yOffset, z + 6), 8); } world.setBlock(x + 6, y + 8 - yOffset, z + 6, Block1, 0, 3); world.setBlock(x + 7, y + 8 - yOffset, z + 6, Block1, 0, 3); diff --git a/src/main/java/com/hbm/world/dungeon/DesertAtom001.java b/src/main/java/com/hbm/world/dungeon/DesertAtom001.java index 598f30699..cb2c27ede 100644 --- a/src/main/java/com/hbm/world/dungeon/DesertAtom001.java +++ b/src/main/java/com/hbm/world/dungeon/DesertAtom001.java @@ -5,7 +5,8 @@ package com.hbm.world.dungeon; import java.util.Random; import com.hbm.blocks.ModBlocks; -import com.hbm.lib.HbmChestContents; +import com.hbm.itempool.ItemPool; +import com.hbm.itempool.ItemPoolsLegacy; import com.hbm.lib.Library; import net.minecraft.block.Block; @@ -214,7 +215,7 @@ public class DesertAtom001 extends WorldGenerator world.setBlock(x + 9, y + -4, z + 14, Blocks.chest, 2, 3); if(world.getBlock(x + 9, y + -4, z + 14) == Blocks.chest) { - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.nuclear, (TileEntityChest)world.getTileEntity(x + 9, y + -4, z + 14), 10); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_NUKE_MISC), (TileEntityChest)world.getTileEntity(x + 9, y + -4, z + 14), 10); } world.setBlock(x + 10, y + -4, z + 14, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 11, y + -4, z + 14, Library.getRandomConcrete(), 0, 3); diff --git a/src/main/java/com/hbm/world/dungeon/DesertAtom002.java b/src/main/java/com/hbm/world/dungeon/DesertAtom002.java index 5f1415e99..c272079dd 100644 --- a/src/main/java/com/hbm/world/dungeon/DesertAtom002.java +++ b/src/main/java/com/hbm/world/dungeon/DesertAtom002.java @@ -5,7 +5,8 @@ package com.hbm.world.dungeon; import java.util.Random; import com.hbm.blocks.ModBlocks; -import com.hbm.lib.HbmChestContents; +import com.hbm.itempool.ItemPool; +import com.hbm.itempool.ItemPoolsLegacy; import com.hbm.lib.Library; import com.hbm.tileentity.machine.storage.TileEntityCrateSteel; @@ -1162,7 +1163,7 @@ public class DesertAtom002 world.setBlock(x + 36, y + 0, z + 12, Blocks.chest, 3, 3); if(world.getBlock(x + 36, y + 0, z + 12) == Blocks.chest) { - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.modGeneric, (TileEntityChest)world.getTileEntity(x + 36, y + 0, z + 12), 8); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_GENERIC), (TileEntityChest)world.getTileEntity(x + 36, y + 0, z + 12), 8); } world.setBlock(x + 37, y + 0, z + 12, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 40, y + 0, z + 12, ModBlocks.fence_metal, 0, 3); @@ -1183,7 +1184,7 @@ public class DesertAtom002 world.setBlock(x + 22, y + 0, z + 13, Blocks.chest, 4, 3); if(world.getBlock(x + 22, y + 0, z + 13) == Blocks.chest) { - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.modGeneric, (TileEntityChest)world.getTileEntity(x + 22, y + 0, z + 13), 8); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_GENERIC), (TileEntityChest)world.getTileEntity(x + 22, y + 0, z + 13), 8); } world.setBlock(x + 23, y + 0, z + 13, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 24, y + 0, z + 13, Block9, 5, 3); @@ -1375,7 +1376,7 @@ public class DesertAtom002 world.setBlock(x + 24, y + 0, z + 26, Blocks.chest, 2, 3); if(world.getBlock(x + 24, y + 0, z + 26) == Blocks.chest) { - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.nukeTrash, (TileEntityChest)world.getTileEntity(x + 24, y + 0, z + 26), 8); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_NUKE_TRASH), (TileEntityChest)world.getTileEntity(x + 24, y + 0, z + 26), 8); } world.setBlock(x + 25, y + 0, z + 26, Block2, 0, 3); world.setBlock(x + 30, y + 0, z + 26, Block2, 0, 3); @@ -1754,7 +1755,7 @@ public class DesertAtom002 world.setBlock(x + 18, y + 1, z + 16, ModBlocks.crate_steel, 0, 3); if(world.getBlock(x + 18, y + 1, z + 16) == ModBlocks.crate_steel) { - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.expensive, (TileEntityCrateSteel)world.getTileEntity(x + 18, y + 1, z + 16), 12); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_EXPENSIVE), (TileEntityCrateSteel)world.getTileEntity(x + 18, y + 1, z + 16), 12); } world.setBlock(x + 19, y + 1, z + 16, Library.getRandomConcrete(), 0, 3); diff --git a/src/main/java/com/hbm/world/dungeon/DesertAtom003.java b/src/main/java/com/hbm/world/dungeon/DesertAtom003.java index 23104ddd3..6aca90eec 100644 --- a/src/main/java/com/hbm/world/dungeon/DesertAtom003.java +++ b/src/main/java/com/hbm/world/dungeon/DesertAtom003.java @@ -6,7 +6,8 @@ import java.util.Random; import com.hbm.blocks.ModBlocks; import com.hbm.config.GeneralConfig; -import com.hbm.lib.HbmChestContents; +import com.hbm.itempool.ItemPool; +import com.hbm.itempool.ItemPoolsLegacy; import com.hbm.lib.Library; import com.hbm.tileentity.machine.storage.TileEntityMachinePuF6Tank; import com.hbm.tileentity.machine.storage.TileEntityMachineUF6Tank; @@ -439,7 +440,7 @@ public class DesertAtom003 world.setBlock(x + 36, y + 4, z + 9, Blocks.chest, 2, 3); if(world.getBlock(x + 36, y + 4, z + 9) == Blocks.chest) { - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.nuclear, (TileEntityChest)world.getTileEntity(x + 36, y + 4, z + 9), 12); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_NUKE_MISC), (TileEntityChest)world.getTileEntity(x + 36, y + 4, z + 9), 12); } world.setBlock(x + 37, y + 4, z + 9, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 40, y + 4, z + 9, Block5, 0, 3); diff --git a/src/main/java/com/hbm/world/dungeon/Factory.java b/src/main/java/com/hbm/world/dungeon/Factory.java index d5e060fc3..2d3ce64a9 100644 --- a/src/main/java/com/hbm/world/dungeon/Factory.java +++ b/src/main/java/com/hbm/world/dungeon/Factory.java @@ -6,7 +6,8 @@ import java.util.Random; import com.hbm.blocks.ModBlocks; import com.hbm.config.GeneralConfig; -import com.hbm.lib.HbmChestContents; +import com.hbm.itempool.ItemPool; +import com.hbm.itempool.ItemPoolsLegacy; import net.minecraft.block.Block; import net.minecraft.block.material.Material; @@ -601,7 +602,7 @@ public class Factory extends WorldGenerator world.setBlockMetadataWithNotify(x + 9, y + 0, z + 4, 5, 3); if(world.getBlock(x + 9, y + 0, z + 4) == Blocks.chest) { - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.modGeneric, (TileEntityChest)world.getTileEntity(x + 9, y + 0, z + 4), rand.nextInt(2)+ 8); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_GENERIC), (TileEntityChest)world.getTileEntity(x + 9, y + 0, z + 4), rand.nextInt(2)+ 8); } world.setBlock(x + 13, y + 0, z + 4, Blocks.hopper, 3, 3); world.setBlock(x + 14, y + 0, z + 4, Blocks.stonebrick, 0, 3); @@ -637,7 +638,7 @@ public class Factory extends WorldGenerator world.setBlockMetadataWithNotify(x + 9, y + 0, z + 10, 5, 3); if(world.getBlock(x + 9, y + 0, z + 10) == Blocks.chest) { - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.modGeneric, (TileEntityChest)world.getTileEntity(x + 9, y + 0, z + 10), rand.nextInt(2)+ 8); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_GENERIC), (TileEntityChest)world.getTileEntity(x + 9, y + 0, z + 10), rand.nextInt(2)+ 8); } world.setBlock(x + 13, y + 0, z + 10, Blocks.hopper, 3, 3); world.setBlock(x + 14, y + 0, z + 10, Blocks.stonebrick, 0, 3); @@ -673,7 +674,7 @@ public class Factory extends WorldGenerator world.setBlockMetadataWithNotify(x + 9, y + 0, z + 16, 5, 3); if(world.getBlock(x + 9, y + 0, z + 16) == Blocks.chest) { - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.modGeneric, (TileEntityChest)world.getTileEntity(x + 9, y + 0, z + 16), rand.nextInt(2)+ 8); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_GENERIC), (TileEntityChest)world.getTileEntity(x + 9, y + 0, z + 16), rand.nextInt(2)+ 8); } world.setBlock(x + 13, y + 0, z + 16, Blocks.hopper, 3, 3); world.setBlock(x + 14, y + 0, z + 16, Blocks.stonebrick, 0, 3); @@ -736,7 +737,7 @@ public class Factory extends WorldGenerator world.setBlockMetadataWithNotify(x + 4, y + 0, z + 25, 3, 3); if(world.getBlock(x + 4, y + 0, z + 25) == Blocks.chest) { - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.expensive, (TileEntityChest)world.getTileEntity(x + 4, y + 0, z + 25), rand.nextInt(2)+ 6); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_EXPENSIVE), (TileEntityChest)world.getTileEntity(x + 4, y + 0, z + 25), rand.nextInt(2)+ 6); } world.setBlock(x + 5, y + 0, z + 25, Blocks.lava, 0, 3); world.setBlock(x + 6, y + 0, z + 25, Blocks.stonebrick, 0, 3); diff --git a/src/main/java/com/hbm/world/dungeon/Radio01.java b/src/main/java/com/hbm/world/dungeon/Radio01.java index 4257fd171..57111ce3c 100644 --- a/src/main/java/com/hbm/world/dungeon/Radio01.java +++ b/src/main/java/com/hbm/world/dungeon/Radio01.java @@ -5,7 +5,8 @@ package com.hbm.world.dungeon; import java.util.Random; import com.hbm.blocks.ModBlocks; -import com.hbm.lib.HbmChestContents; +import com.hbm.itempool.ItemPool; +import com.hbm.itempool.ItemPoolsLegacy; import com.hbm.lib.Library; import com.hbm.tileentity.machine.storage.TileEntityCrateSteel; @@ -499,7 +500,7 @@ public class Radio01 extends WorldGenerator world.setBlock(x + 5, y + 0, z + 11, Blocks.flower_pot, 0, 3); world.setBlock(x + 6, y + 0, z + 11, Blocks.chest, 3, 3); world.setBlockMetadataWithNotify(x + 6, y + 0, z + 11, 5, 3); - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.modGeneric, (TileEntityChest)world.getTileEntity(x + 6, y + 0, z + 11), 8); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_GENERIC), (TileEntityChest)world.getTileEntity(x + 6, y + 0, z + 11), 8); world.setBlock(x + 7, y + 0, z + 11, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 8, y + 0, z + 11, Blocks.air, 0, 3); world.setBlock(x + 9, y + 0, z + 11, Blocks.air, 0, 3); @@ -651,7 +652,7 @@ public class Radio01 extends WorldGenerator world.setBlock(x + 6, y + 0, z + 24, ModBlocks.deco_steel, 0, 3); world.setBlock(x + 7, y + 0, z + 24, Blocks.chest, 2, 3); world.setBlockMetadataWithNotify(x + 7, y + 0, z + 24, 5, 3); - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.antenna, (TileEntityChest)world.getTileEntity(x + 7, y + 0, z + 24), 8); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_ANTENNA), (TileEntityChest)world.getTileEntity(x + 7, y + 0, z + 24), 8); world.setBlock(x + 8, y + 0, z + 24, ModBlocks.deco_steel, 0, 3); world.setBlock(x + 9, y + 0, z + 24, ModBlocks.deco_steel, 0, 3); world.setBlock(x + 10, y + 0, z + 24, Library.getRandomConcrete(), 0, 3); @@ -1607,7 +1608,7 @@ public class Radio01 extends WorldGenerator world.setBlock(x + 6, y + 4, z + 6, Blocks.air, 0, 3); world.setBlock(x + 7, y + 4, z + 6, Blocks.chest, 4, 3); world.setBlockMetadataWithNotify(x + 7, y + 4, z + 6, 5, 3); - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.modGeneric, (TileEntityChest)world.getTileEntity(x + 7, y + 4, z + 6), 8); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_GENERIC), (TileEntityChest)world.getTileEntity(x + 7, y + 4, z + 6), 8); world.setBlock(x + 8, y + 4, z + 6, ModBlocks.deco_steel, 0, 3); world.setBlock(x + 9, y + 4, z + 6, ModBlocks.deco_steel, 0, 3); world.setBlock(x + 10, y + 4, z + 6, Library.getRandomConcrete(), 0, 3); @@ -1697,7 +1698,7 @@ public class Radio01 extends WorldGenerator world.setBlock(x + 3, y + 4, z + 14, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 4, y + 4, z + 14, Blocks.chest, 2, 3); world.setBlockMetadataWithNotify(x + 4, y + 4, z + 14, 5, 3); - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.modGeneric, (TileEntityChest)world.getTileEntity(x + 4, y + 4, z + 14), 8); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_GENERIC), (TileEntityChest)world.getTileEntity(x + 4, y + 4, z + 14), 8); world.setBlock(x + 5, y + 4, z + 14, Blocks.air, 0, 3); world.setBlock(x + 6, y + 4, z + 14, ModBlocks.tape_recorder, 4, 3); world.setBlock(x + 7, y + 4, z + 14, Blocks.oak_stairs, 5, 3); @@ -2817,7 +2818,7 @@ public class Radio01 extends WorldGenerator WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.getLoot(3), (TileEntityChest)world.getTileEntity(x + 5, y + 8, z + 11), 16);*/ world.setBlock(x + 5, y + 8, z + 11, ModBlocks.crate_steel, 0, 3); - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.expensive, (TileEntityCrateSteel)world.getTileEntity(x + 5, y + 8, z + 11), 16); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_EXPENSIVE), (TileEntityCrateSteel)world.getTileEntity(x + 5, y + 8, z + 11), 16); world.setBlock(x + 6, y + 8, z + 11, ModBlocks.deco_steel, 0, 3); world.setBlock(x + 7, y + 8, z + 11, Blocks.air, 0, 3); diff --git a/src/main/java/com/hbm/world/dungeon/Relay.java b/src/main/java/com/hbm/world/dungeon/Relay.java index 93fb53610..de4920fc9 100644 --- a/src/main/java/com/hbm/world/dungeon/Relay.java +++ b/src/main/java/com/hbm/world/dungeon/Relay.java @@ -8,8 +8,9 @@ import com.hbm.blocks.ModBlocks; import com.hbm.blocks.generic.BlockBobble.BobbleType; import com.hbm.blocks.generic.BlockBobble.TileEntityBobble; import com.hbm.config.GeneralConfig; +import com.hbm.itempool.ItemPool; +import com.hbm.itempool.ItemPoolsLegacy; import com.hbm.items.ModItems; -import com.hbm.lib.HbmChestContents; import com.hbm.lib.Library; import com.hbm.tileentity.machine.storage.TileEntityCrateIron; import com.hbm.util.LootGenerator; @@ -658,7 +659,7 @@ public class Relay extends WorldGenerator world.setBlock(x + 4, y + 0, z + 10, Blocks.brick_block, 0, 3); world.setBlock(x + 6, y + 0, z + 10, ModBlocks.crate_iron, 0, 3); world.setBlockMetadataWithNotify(x + 6, y + 0, z + 10, 3, 3); - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.modGeneric, (TileEntityCrateIron)world.getTileEntity(x + 6, y + 0, z + 10), 8); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_GENERIC), (TileEntityCrateIron)world.getTileEntity(x + 6, y + 0, z + 10), 8); if(world.rand.nextInt(5) == 0) { ((TileEntityCrateIron)world.getTileEntity(x + 6, y + 0, z + 10)).setInventorySlotContents(11, new ItemStack(ModItems.morning_glory)); @@ -1295,7 +1296,7 @@ public class Relay extends WorldGenerator world.setBlock(x + 7, y + 14, z + 6, Block4, s2, 3); world.setBlock(x + 8, y + 14, z + 6, ModBlocks.crate_iron, 0, 3); world.setBlockMetadataWithNotify(x + 8, y + 14, z + 6, 3, 3); - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.antenna, (TileEntityCrateIron)world.getTileEntity(x + 8, y + 14, z + 6), 8); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_ANTENNA), (TileEntityCrateIron)world.getTileEntity(x + 8, y + 14, z + 6), 8); world.setBlock(x + 9, y + 14, z + 6, ModBlocks.fence_metal, 0, 3); world.setBlock(x + 10, y + 14, z + 6, Block6, 0, 3); world.setBlock(x + 9, y + 14, z + 7, ModBlocks.fence_metal, 0, 3); @@ -1515,7 +1516,7 @@ public class Relay extends WorldGenerator world.setBlock(x + 5, y + 32, z + 2, Block6, 0, 3); world.setBlock(x + 6, y + 32, z + 2, ModBlocks.crate_iron, 0, 3); world.setBlockMetadataWithNotify(x + 6, y + 32, z + 2, 2, 3); - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.expensive, (TileEntityCrateIron)world.getTileEntity(x + 6, y + 32, z + 2), 8); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_EXPENSIVE), (TileEntityCrateIron)world.getTileEntity(x + 6, y + 32, z + 2), 8); world.setBlock(x + 7, y + 32, z + 2, Block6, 0, 3); world.setBlock(x + 5, y + 32, z + 3, Block4, s3, 3); world.setBlock(x + 6, y + 32, z + 3, Block2, 0, 3); diff --git a/src/main/java/com/hbm/world/dungeon/Satellite.java b/src/main/java/com/hbm/world/dungeon/Satellite.java index 33c4b9273..9de904cde 100644 --- a/src/main/java/com/hbm/world/dungeon/Satellite.java +++ b/src/main/java/com/hbm/world/dungeon/Satellite.java @@ -6,7 +6,8 @@ import java.util.Random; import com.hbm.blocks.ModBlocks; import com.hbm.config.GeneralConfig; -import com.hbm.lib.HbmChestContents; +import com.hbm.itempool.ItemPool; +import com.hbm.itempool.ItemPoolsLegacy; import com.hbm.lib.Library; import com.hbm.util.LootGenerator; @@ -976,7 +977,7 @@ public class Satellite extends WorldGenerator world.setBlock(x + 7, y + 14, z + 19, dSteel, 0, 3); world.setBlock(x + 10, y + 14, z + 19, Blocks.chest, 3, 3); world.setBlockMetadataWithNotify(x + 10, y + 14, z + 19, 3, 3); - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.modGeneric, (TileEntityChest)world.getTileEntity(x + 10, y + 14, z + 19), 8); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_GENERIC), (TileEntityChest)world.getTileEntity(x + 10, y + 14, z + 19), 8); world.setBlock(x + 19, y + 14, z + 19, dSteel, 0, 3); world.setBlock(x + 20, y + 14, z + 19, dSteel, 0, 3); world.setBlock(x + 21, y + 14, z + 19, dSteel, 0, 3); @@ -1005,7 +1006,7 @@ public class Satellite extends WorldGenerator world.setBlock(x + 7, y + 14, z + 27, dSteel, 0, 3); world.setBlock(x + 16, y + 14, z + 27, Blocks.chest, 2, 3); world.setBlockMetadataWithNotify(x + 16, y + 14, z + 27, 3, 3); - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.antenna, (TileEntityChest)world.getTileEntity(x + 16, y + 14, z + 27), 8); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_ANTENNA), (TileEntityChest)world.getTileEntity(x + 16, y + 14, z + 27), 8); world.setBlock(x + 19, y + 14, z + 27, dSteel, 0, 3); world.setBlock(x + 5, y + 14, z + 28, ModBlocks.fence_metal, 0, 3); world.setBlock(x + 6, y + 14, z + 28, ModBlocks.fence_metal, 0, 3); @@ -1423,7 +1424,7 @@ public class Satellite extends WorldGenerator world.setBlock(x + 18, y + 19, z + 12, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 19, y + 19, z + 12, Blocks.chest, 4, 3); world.setBlockMetadataWithNotify(x + 19, y + 19, z + 12, 4, 3); - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.expensive, (TileEntityChest)world.getTileEntity(x + 19, y + 19, z + 12), 12); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_EXPENSIVE), (TileEntityChest)world.getTileEntity(x + 19, y + 19, z + 12), 12); world.setBlock(x + 20, y + 19, z + 12, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 21, y + 19, z + 12, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 17, y + 19, z + 13, Library.getRandomConcrete(), 0, 3); @@ -2440,7 +2441,7 @@ public class Satellite extends WorldGenerator //world.setBlock(x + 5, y + 39, z + 12, Block7, 0, 3); world.setBlock(x + 5, y + 39, z + 12, Blocks.chest, 4, 3); world.setBlockMetadataWithNotify(x + 5, y + 39, z + 12, 4, 3); - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.expensive, (TileEntityChest)world.getTileEntity(x + 5, y + 39, z + 12), 12); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_EXPENSIVE), (TileEntityChest)world.getTileEntity(x + 5, y + 39, z + 12), 12); world.setBlock(x + 6, y + 39, z + 12, Block7, 0, 3); world.setBlock(x + 7, y + 39, z + 12, Block4, 0, 3); world.setBlock(x + 8, y + 39, z + 12, Block4, 0, 3); diff --git a/src/main/java/com/hbm/world/dungeon/Silo.java b/src/main/java/com/hbm/world/dungeon/Silo.java index 92597fe3d..076a7ff63 100644 --- a/src/main/java/com/hbm/world/dungeon/Silo.java +++ b/src/main/java/com/hbm/world/dungeon/Silo.java @@ -8,7 +8,9 @@ import com.hbm.blocks.BlockDummyable; import com.hbm.blocks.ModBlocks; import com.hbm.blocks.bomb.LaunchPad; import com.hbm.config.GeneralConfig; -import com.hbm.lib.HbmChestContents; +import com.hbm.itempool.ItemPool; +import com.hbm.itempool.ItemPoolsComponent; +import com.hbm.itempool.ItemPoolsLegacy; import com.hbm.lib.Library; import net.minecraft.block.Block; import net.minecraft.block.material.Material; @@ -389,7 +391,7 @@ public class Silo extends WorldGenerator world.setBlockMetadataWithNotify(x + 19, y + -20, z + 10, 5, 3); if(world.getBlock(x + 19, y + -20, z + 10) == Blocks.chest) { - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.expensive, (TileEntityChest)world.getTileEntity(x + 19, y + -20, z + 10), rand.nextInt(2)+ 6); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_EXPENSIVE), (TileEntityChest)world.getTileEntity(x + 19, y + -20, z + 10), rand.nextInt(2)+ 6); } world.setBlock(x + 20, y + -20, z + 10, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 0, y + -20, z + 11, Library.getRandomConcrete(), 0, 3); @@ -857,7 +859,7 @@ public class Silo extends WorldGenerator world.setBlockMetadataWithNotify(x + 8, y + -17, z + 2, 3, 3); if(world.getBlock(x + 8, y + -17, z + 2) == Blocks.chest) { - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.missile, (TileEntityChest)world.getTileEntity(x + 8, y + -17, z + 2), rand.nextInt(2)+ 6); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsComponent.POOL_SILO), (TileEntityChest)world.getTileEntity(x + 8, y + -17, z + 2), rand.nextInt(2)+ 6); } world.setBlock(x + 10, y + -17, z + 2, Blocks.air, 0, 3); world.setBlock(x + 11, y + -17, z + 2, Library.getRandomConcrete(), 0, 3); @@ -1641,7 +1643,7 @@ public class Silo extends WorldGenerator world.setBlockMetadataWithNotify(x + 8, y + -9, z + 5, 3, 3); if(world.getBlock(x + 8, y + -9, z + 5) == Blocks.chest) { - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.modGeneric, (TileEntityChest)world.getTileEntity(x + 8, y + -9, z + 5), rand.nextInt(2)+ 8); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_GENERIC), (TileEntityChest)world.getTileEntity(x + 8, y + -9, z + 5), rand.nextInt(2)+ 8); } world.setBlock(x + 8, y + -10, z + 5, Blocks.stone_slab, 8, 3); world.setBlock(x + 9, y + -9, z + 5, Blocks.planks, 0, 3); diff --git a/src/main/java/com/hbm/world/dungeon/Spaceship.java b/src/main/java/com/hbm/world/dungeon/Spaceship.java index ff8ca297b..b3deb1a02 100644 --- a/src/main/java/com/hbm/world/dungeon/Spaceship.java +++ b/src/main/java/com/hbm/world/dungeon/Spaceship.java @@ -5,7 +5,8 @@ package com.hbm.world.dungeon; import java.util.Random; import com.hbm.blocks.ModBlocks; -import com.hbm.lib.HbmChestContents; +import com.hbm.itempool.ItemPool; +import com.hbm.itempool.ItemPoolsLegacy; import net.minecraft.block.Block; import net.minecraft.block.material.Material; @@ -455,7 +456,7 @@ public class Spaceship extends WorldGenerator world.setBlockMetadataWithNotify(x + 5, y + -2, z + 25, 5, 3); if(world.getBlock(x + 5, y + -2, z + 25) == Blocks.chest) { - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.spaceship, (TileEntityChest)world.getTileEntity(x + 5, y + -2, z + 25), 12); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_SPACESHIP), (TileEntityChest)world.getTileEntity(x + 5, y + -2, z + 25), 12); } world.setBlock(x + 6, y + -2, z + 25, Blocks.air, 0, 3); world.setBlock(x + 7, y + -2, z + 25, Blocks.air, 0, 3); @@ -463,7 +464,7 @@ public class Spaceship extends WorldGenerator world.setBlockMetadataWithNotify(x + 8, y + -2, z + 25, 4, 3); if(world.getBlock(x + 8, y + -2, z + 25) == Blocks.chest) { - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.spaceship, (TileEntityChest)world.getTileEntity(x + 8, y + -2, z + 25), 12); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_SPACESHIP), (TileEntityChest)world.getTileEntity(x + 8, y + -2, z + 25), 12); } world.setBlock(x + 9, y + -2, z + 25, Block3, 0, 3); world.setBlock(x + 10, y + -2, z + 25, Block2, 0, 3); @@ -477,7 +478,7 @@ public class Spaceship extends WorldGenerator world.setBlockMetadataWithNotify(x + 5, y + -2, z + 26, 5, 3); if(world.getBlock(x + 5, y + -2, z + 26) == Blocks.chest) { - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.spaceship, (TileEntityChest)world.getTileEntity(x + 5, y + -2, z + 26), 12); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_SPACESHIP), (TileEntityChest)world.getTileEntity(x + 5, y + -2, z + 26), 12); } world.setBlock(x + 6, y + -2, z + 26, Blocks.air, 0, 3); world.setBlock(x + 7, y + -2, z + 26, Blocks.air, 0, 3); @@ -485,7 +486,7 @@ public class Spaceship extends WorldGenerator world.setBlockMetadataWithNotify(x + 8, y + -2, z + 26, 4, 3); if(world.getBlock(x + 8, y + -2, z + 26) == Blocks.chest) { - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.spaceship, (TileEntityChest)world.getTileEntity(x + 8, y + -2, z + 26), 12); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_SPACESHIP), (TileEntityChest)world.getTileEntity(x + 8, y + -2, z + 26), 12); } world.setBlock(x + 9, y + -2, z + 26, Block3, 0, 3); world.setBlock(x + 10, y + -2, z + 26, Block3, 0, 3); @@ -623,7 +624,7 @@ public class Spaceship extends WorldGenerator world.setBlockMetadataWithNotify(x + 8, y + -2, z + 38, 2, 3); if(world.getBlock(x + 8, y + -2, z + 38) == Blocks.chest) { - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.expensive, (TileEntityChest)world.getTileEntity(x + 8, y + -2, z + 38), 12); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_EXPENSIVE), (TileEntityChest)world.getTileEntity(x + 8, y + -2, z + 38), 12); } world.setBlock(x + 9, y + -2, z + 38, Block3, 0, 3); world.setBlock(x + 4, y + -2, z + 39, Block3, 0, 3); diff --git a/src/main/java/com/hbm/world/dungeon/Vertibird.java b/src/main/java/com/hbm/world/dungeon/Vertibird.java index a8b09f4b0..9890ae66f 100644 --- a/src/main/java/com/hbm/world/dungeon/Vertibird.java +++ b/src/main/java/com/hbm/world/dungeon/Vertibird.java @@ -6,7 +6,8 @@ import java.util.Random; import com.hbm.blocks.ModBlocks; import com.hbm.config.GeneralConfig; -import com.hbm.lib.HbmChestContents; +import com.hbm.itempool.ItemPool; +import com.hbm.itempool.ItemPoolsLegacy; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.init.Blocks; @@ -141,7 +142,7 @@ public class Vertibird extends WorldGenerator world.setBlock(x + 14, y + 2 - yOffset, z + 7, Blocks.chest, 2, 3); if(world.getBlock(x + 14, y + 2 - yOffset, z + 7) == Blocks.chest) { - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.vertibird, (TileEntityChest)world.getTileEntity(x + 14, y + 2 - yOffset, z + 7), 8); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_VERTIBIRD), (TileEntityChest)world.getTileEntity(x + 14, y + 2 - yOffset, z + 7), 8); } world.setBlock(x + 15, y + 2 - yOffset, z + 7, Block2, 0, 3); world.setBlock(x + 12, y + 2 - yOffset, z + 8, Block2, 0, 3); @@ -391,7 +392,7 @@ public class Vertibird extends WorldGenerator world.setBlock(x + 13, y + 6 - yOffset, z + 6, Blocks.chest, 2, 3); if(world.getBlock(x + 13, y + 6 - yOffset, z + 6) == Blocks.chest) { - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.vertibird, (TileEntityChest)world.getTileEntity(x + 13, y + 6 - yOffset, z + 6), 8); + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_VERTIBIRD), (TileEntityChest)world.getTileEntity(x + 13, y + 6 - yOffset, z + 6), 8); } world.setBlock(x + 14, y + 6 - yOffset, z + 6, Block2, 0, 3); world.setBlock(x + 15, y + 6 - yOffset, z + 6, Block2, 0, 3); diff --git a/src/main/java/com/hbm/world/gen/component/BunkerComponents.java b/src/main/java/com/hbm/world/gen/component/BunkerComponents.java index 286687203..ee12ac748 100644 --- a/src/main/java/com/hbm/world/gen/component/BunkerComponents.java +++ b/src/main/java/com/hbm/world/gen/component/BunkerComponents.java @@ -4,7 +4,9 @@ import java.util.List; import java.util.Random; import com.hbm.blocks.ModBlocks; -import com.hbm.lib.HbmChestContents; +import com.hbm.itempool.ItemPool; +import com.hbm.itempool.ItemPoolsComponent; +import com.hbm.itempool.ItemPoolsLegacy; import com.hbm.world.gen.ProceduralStructureStart; import com.hbm.world.gen.ProceduralStructureStart.ProceduralComponent; import com.hbm.world.gen.component.Component.ConcreteBricks; @@ -147,7 +149,7 @@ public class BunkerComponents { placeBlockAtCurrentPosition(world, ModBlocks.fan, 0, 5, 4, 5, box); //machine placeBlockAtCurrentPosition(world, ModBlocks.deco_tungsten, 0, 3, 1, 6, box); - generateInvContents(world, box, rand, Blocks.chest, getDecoMeta(3), 4, 1, 6, HbmChestContents.antenna/*TODO change */, 5); + generateInvContents(world, box, rand, Blocks.chest, getDecoMeta(3), 4, 1, 6, ItemPool.getPool(ItemPoolsLegacy.POOL_ANTENNA)/*TODO change */, 5); placeBlockAtCurrentPosition(world, ModBlocks.deco_tungsten, 0, 5, 1, 6, box); fillWithMetadataBlocks(world, box, 3, 2, 6, 5, 2, 6, ModBlocks.concrete_smooth_stairs, getStairMeta(2) | 4); fillWithMetadataBlocks(world, box, 3, 3, 6, 5, 3, 6, ModBlocks.tape_recorder, getDecoMeta(2)); @@ -375,13 +377,13 @@ public class BunkerComponents { placeBlockAtCurrentPosition(world, ModBlocks.concrete_smooth_stairs, stairMetaE | 4, 4, 1, 9, box); placeBlockAtCurrentPosition(world, Blocks.oak_stairs, stairMetaS, 5, 1, 8, box); placeBlockAtCurrentPosition(world, ModBlocks.deco_computer, getDecoModelMeta(0), 5, 2, 9, box); - generateInvContents(world, box, rand, ModBlocks.filing_cabinet, getDecoModelMeta(0), 3, 1, 9, HbmChestContents.filingCabinet, 5); + generateInvContents(world, box, rand, ModBlocks.filing_cabinet, getDecoModelMeta(0), 3, 1, 9, ItemPool.getPool(ItemPoolsComponent.POOL_FILING_CABINET), 5); //lockers - generateInvContents(world, box, rand, Blocks.chest, getDecoMeta(4), 8, 1, 7, HbmChestContents.lockersVault, 3); - generateInvContents(world, box, rand, Blocks.chest, getDecoMeta(4), 8, 2, 7, HbmChestContents.lockersVault, 5); + generateInvContents(world, box, rand, Blocks.chest, getDecoMeta(4), 8, 1, 7, ItemPool.getPool(ItemPoolsComponent.POOL_VAULT_LOCKERS), 3); + generateInvContents(world, box, rand, Blocks.chest, getDecoMeta(4), 8, 2, 7, ItemPool.getPool(ItemPoolsComponent.POOL_VAULT_LOCKERS), 5); fillWithBlocks(world, box, 8, 1, 8, 8, 2, 8, ModBlocks.deco_tungsten); - generateInvContents(world, box, rand, Blocks.chest, getDecoMeta(4), 8, 1, 9, HbmChestContents.lockersVault, 4); - generateInvContents(world, box, rand, Blocks.chest, getDecoMeta(4), 8, 2, 9, HbmChestContents.lockersVault, 5); + generateInvContents(world, box, rand, Blocks.chest, getDecoMeta(4), 8, 1, 9, ItemPool.getPool(ItemPoolsComponent.POOL_VAULT_LOCKERS), 4); + generateInvContents(world, box, rand, Blocks.chest, getDecoMeta(4), 8, 2, 9, ItemPool.getPool(ItemPoolsComponent.POOL_VAULT_LOCKERS), 5); fillWithMetadataBlocks(world, box, 8, 3, 7, 8, 3, 9, Blocks.trapdoor, getDecoModelMeta(2) >> 2); //doors placeDoor(world, box, ModBlocks.door_bunker, 1, true, rand.nextBoolean(), 7, 1, 0); @@ -474,7 +476,7 @@ public class BunkerComponents { //table & chest placeBlockAtCurrentPosition(world, Blocks.fence, 0, 6, 1, 2, box); placeBlockAtCurrentPosition(world, Blocks.wooden_pressure_plate, 0, 6, 2, 2, box); - generateInvContents(world, box, rand, Blocks.chest, getDecoMeta(4), 6, 1, 3, HbmChestContents.lockersVault, 8); + generateInvContents(world, box, rand, Blocks.chest, getDecoMeta(4), 6, 1, 3, ItemPool.getPool(ItemPoolsComponent.POOL_VAULT_LOCKERS), 8); //desk w/ computer + bobblehead placeBlockAtCurrentPosition(world, ModBlocks.concrete_smooth_stairs, stairMetaS | 4, 1, 1, 8, box); placeBlockAtCurrentPosition(world, ModBlocks.concrete_smooth_stairs, stairMetaE | 4, 1, 1, 9, box); @@ -679,7 +681,7 @@ public class BunkerComponents { fillWithMetadataBlocks(world, box, 1, 3, 9, 1, 3, 10, ModBlocks.tape_recorder, decoMetaW); fillWithBlocks(world, box, 1, 1, 11, 1, 3, 11, ModBlocks.deco_tungsten); //desks w/ computers - generateInvContents(world, box, rand, Blocks.chest, getDecoMeta(2), 3, 1, 4, HbmChestContents.machineParts, 6); + generateInvContents(world, box, rand, Blocks.chest, getDecoMeta(2), 3, 1, 4, ItemPool.getPool(ItemPoolsComponent.POOL_MACHINE_PARTS), 6); placeBlockAtCurrentPosition(world, ModBlocks.concrete_smooth_stairs, stairMetaS | 4, 3, 1, 5, box); fillWithMetadataBlocks(world, box, 4, 1, 5, 4, 1, 7, ModBlocks.concrete_smooth_stairs, stairMetaW | 4); placeBlockAtCurrentPosition(world, Blocks.oak_stairs, stairMetaN, 3, 1, 7, box); @@ -704,7 +706,7 @@ public class BunkerComponents { //table w/ chest placeBlockAtCurrentPosition(world, Blocks.fence, 0, 7, 1, 9, box); placeBlockAtCurrentPosition(world, Blocks.wooden_pressure_plate, 0, 7, 2, 9, box); - generateInvContents(world, box, rand, Blocks.chest, getDecoMeta(4), 7, 1, 10, HbmChestContents.labVault, 8); + generateInvContents(world, box, rand, Blocks.chest, getDecoMeta(4), 7, 1, 10, ItemPool.getPool(ItemPoolsComponent.POOL_VAULT_LAB), 8); //doors placeDoor(world, box, ModBlocks.door_bunker, 1, true, rand.nextBoolean(), 5, 1, 0); placeDoor(world, box, ModBlocks.door_bunker, 1, false, rand.nextBoolean(), 6, 1, 0); @@ -819,8 +821,8 @@ public class BunkerComponents { placeBlockAtCurrentPosition(world, ModBlocks.fluid_duct_gauge, decoMetaW, 10, 2, 5, box); placeBlockAtCurrentPosition(world, ModBlocks.barrel_plastic, 0, 6, 1, 5, box); //chests - generateInvContents(world, box, rand, Blocks.chest, decoMetaS, 7, 1, 5, HbmChestContents.solidFuel, 5); - generateInvContents(world, box, rand, Blocks.chest, decoMetaS, 9, 1, 5, HbmChestContents.solidFuel, 6); + generateInvContents(world, box, rand, Blocks.chest, decoMetaS, 7, 1, 5, ItemPool.getPool(ItemPoolsComponent.POOL_SOLID_FUEL), 5); + generateInvContents(world, box, rand, Blocks.chest, decoMetaS, 9, 1, 5, ItemPool.getPool(ItemPoolsComponent.POOL_SOLID_FUEL), 6); break; case 1: placeBlockAtCurrentPosition(world, ModBlocks.concrete_colored_ext, 5, 6, 1, 1, box); @@ -873,7 +875,7 @@ public class BunkerComponents { placeBlockAtCurrentPosition(world, ModBlocks.deco_pipe_quad_rusted, getPillarMeta(4), 7, 3, 1, box); placeBlockAtCurrentPosition(world, ModBlocks.fluid_duct_gauge, decoMetaN, 6, 3, 1, box); //chest - generateInvContents(world, box, rand, Blocks.chest, decoMetaN, 6, 1, 2, HbmChestContents.nuclearFuel, 8); + generateInvContents(world, box, rand, Blocks.chest, decoMetaN, 6, 1, 2, ItemPool.getPool(ItemPoolsComponent.POOL_NUKE_FUEL), 8); break; } //transformer @@ -905,8 +907,8 @@ public class BunkerComponents { placeBlockAtCurrentPosition(world, Blocks.flower_pot, 0, 8, 2, 10, box); placeBlockAtCurrentPosition(world, ModBlocks.deco_computer, getDecoModelMeta(0), 9, 2, 10, box); //loot - generateInvContents(world, box, rand, Blocks.chest, decoMetaE, 1, 1, 7, HbmChestContents.machineParts, 6); - generateInvContents(world, box, rand, ModBlocks.filing_cabinet, getDecoModelMeta(0), 7, 1, 10, HbmChestContents.filingCabinet, 4); + generateInvContents(world, box, rand, Blocks.chest, decoMetaE, 1, 1, 7, ItemPool.getPool(ItemPoolsComponent.POOL_MACHINE_PARTS), 6); + generateInvContents(world, box, rand, ModBlocks.filing_cabinet, getDecoModelMeta(0), 7, 1, 10, ItemPool.getPool(ItemPoolsComponent.POOL_FILING_CABINET), 4); //doors placeDoor(world, box, ModBlocks.door_bunker, 1, true, rand.nextBoolean(), 3, 1, 0); placeDoor(world, box, ModBlocks.door_bunker, 1, false, rand.nextBoolean(), 4, 1, 0); diff --git a/src/main/java/com/hbm/world/gen/component/CivilianFeatures.java b/src/main/java/com/hbm/world/gen/component/CivilianFeatures.java index c6f3c67f4..fd8e0b123 100644 --- a/src/main/java/com/hbm/world/gen/component/CivilianFeatures.java +++ b/src/main/java/com/hbm/world/gen/component/CivilianFeatures.java @@ -5,6 +5,9 @@ import java.util.Random; import com.hbm.blocks.ModBlocks; import com.hbm.blocks.generic.BlockBobble.BobbleType; import com.hbm.blocks.generic.BlockBobble.TileEntityBobble; +import com.hbm.itempool.ItemPool; +import com.hbm.itempool.ItemPoolsComponent; +import com.hbm.itempool.ItemPoolsLegacy; import com.hbm.lib.HbmChestContents; import com.hbm.util.LootGenerator; @@ -118,7 +121,7 @@ public class CivilianFeatures { //Loot/Sand this.placeBlockAtCurrentPosition(world, ModBlocks.crate_weapon, 0, 1, 0, 1, box); if(!this.hasPlacedChest) - this.hasPlacedChest = this.generateStructureChestContents(world, box, rand, 3, 0, 1, HbmChestContents.modGeneric, rand.nextInt(2) + 8); + this.hasPlacedChest = this.generateStructureChestContents(world, box, rand, 3, 0, 1, ItemPool.getPool(ItemPoolsLegacy.POOL_GENERIC), rand.nextInt(2) + 8); this.fillWithBlocks(world, box, 5, 0, 1, 6, 0, 1, ModBlocks.crate, Blocks.air, false); this.placeBlockAtCurrentPosition(world, Blocks.sand, 0, 7, 0, 1, box); if(rand.nextFloat() <= 0.25) @@ -244,7 +247,7 @@ public class CivilianFeatures { this.placeBlockAtCurrentPosition(world, ModBlocks.crate_can, 0, 1, 1, 9 - 4, box); if(!hasPlacedLoot[0]) { this.placeBlockAtCurrentPosition(world, Blocks.chest, this.getMetadataWithOffset(Blocks.chest, 3), 1, 1, 9 - 2, box); - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.machineParts, (TileEntityChest)world.getTileEntity(this.getXWithOffset(1, 9 - 2), + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsComponent.POOL_MACHINE_PARTS), (TileEntityChest)world.getTileEntity(this.getXWithOffset(1, 9 - 2), this.getYWithOffset(1), this.getZWithOffset(1, 9 - 2)), 10); this.hasPlacedLoot[0] = true; } @@ -257,7 +260,7 @@ public class CivilianFeatures { //House 2 if(!hasPlacedLoot[1]) { this.placeBlockAtCurrentPosition(world, Blocks.chest, this.getMetadataWithOffset(Blocks.chest, 3), 15 - 5, 1, 1, box); - WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.antenna, (TileEntityChest)world.getTileEntity(this.getXWithOffset(15 - 5, 1), + WeightedRandomChestContent.generateChestContents(rand, ItemPool.getPool(ItemPoolsLegacy.POOL_ANTENNA), (TileEntityChest)world.getTileEntity(this.getXWithOffset(15 - 5, 1), this.getYWithOffset(1), this.getZWithOffset(15 - 5, 1)), 10); this.hasPlacedLoot[1] = true; } @@ -395,7 +398,7 @@ public class CivilianFeatures { this.placeBlockAtCurrentPosition(world, ModBlocks.crate_can, 0, 9 - 1, 1, 7 - 2, box); if(!hasPlacedLoot[1]) { - this.hasPlacedLoot[1] = this.generateInvContents(world, box, rand, ModBlocks.crate_iron, 9 - 1, 1, 7 - 1, HbmChestContents.modGeneric, 8); + this.hasPlacedLoot[1] = this.generateInvContents(world, box, rand, ModBlocks.crate_iron, 9 - 1, 1, 7 - 1, ItemPool.getPool(ItemPoolsLegacy.POOL_GENERIC), 8); } return true; @@ -559,7 +562,7 @@ public class CivilianFeatures { this.placeBlockAtCurrentPosition(world, ModBlocks.crate, 0, 4, 1, 8 - 2, box); this.placeBlockAtCurrentPosition(world, ModBlocks.crate_lead, 0, 4, 2, 8 - 2, box); if(!hasPlacedLoot[0]) { - this.hasPlacedLoot[0] = this.generateInvContents(world, box, rand, ModBlocks.crate_iron, 5, 1, 8 - 2, HbmChestContents.nuclearFuel, 10); + this.hasPlacedLoot[0] = this.generateInvContents(world, box, rand, ModBlocks.crate_iron, 5, 1, 8 - 2, ItemPool.getPool(ItemPoolsComponent.POOL_NUKE_FUEL), 10); } this.fillWithBlocks(world, box, 4, 1, 8 - 3, 5, 1, 8 - 3, ModBlocks.crate_lead, Blocks.air, false); @@ -569,7 +572,7 @@ public class CivilianFeatures { this.placeBlockAtCurrentPosition(world, ModBlocks.steel_beam, 0, 12 - 2, 2, 8 - 2, box); this.fillWithBlocks(world, box, 12 - 4, 3, 8 - 2, 12 - 2, 3, 8 - 2, ModBlocks.steel_roof, Blocks.air, false); if(!hasPlacedLoot[1]) { - this.hasPlacedLoot[1] = this.generateInvContents(world, box, rand, ModBlocks.crate_iron, 12 - 2, 1, 3, HbmChestContents.nukeTrash, 9); + this.hasPlacedLoot[1] = this.generateInvContents(world, box, rand, ModBlocks.crate_iron, 12 - 2, 1, 3, ItemPool.getPool(ItemPoolsLegacy.POOL_NUKE_TRASH), 9); if(rand.nextInt(2) == 0) generateLoreBook(world, box, 12 - 2, 1, 3, 1, HbmChestContents.generateOfficeBook(rand)); } @@ -703,7 +706,7 @@ public class CivilianFeatures { this.placeBlockAtCurrentPosition(world, ModBlocks.radiorec, eastMeta, 6, 2, 8 - 1, box); this.fillWithMetadataBlocks(world, box, 2, 1, 8 - 1, 3, 1, 8 - 1, ModBlocks.machine_electric_furnace_off, southMeta, Blocks.air, 0, false); if(!hasPlacedLoot) { - this.hasPlacedLoot = this.generateInvContents(world, box, rand, ModBlocks.crate_iron, 4, 1, 8 - 1, HbmChestContents.machineParts, 11); + this.hasPlacedLoot = this.generateInvContents(world, box, rand, ModBlocks.crate_iron, 4, 1, 8 - 1, ItemPool.getPool(ItemPoolsComponent.POOL_MACHINE_PARTS), 11); } this.placeBlockAtCurrentPosition(world, Blocks.web, 0, 5, 3, 1, box); this.placeBlockAtCurrentPosition(world, Blocks.web, 0, 2, 1, 2, box); @@ -1103,8 +1106,8 @@ public class CivilianFeatures { placeBlockAtCurrentPosition(world, rand.nextBoolean() ? ModBlocks.crate_weapon : ModBlocks.crate, 0, 6, 5, 12, box); //inventories - generateInvContents(world, box, rand, ModBlocks.filing_cabinet, getDecoModelMeta(2), 7, 1, 10, HbmChestContents.officeTrash, 4); - generateInvContents(world, box, rand, Blocks.chest, metaE, 7, 5, 5, HbmChestContents.modGeneric, 8); + generateInvContents(world, box, rand, ModBlocks.filing_cabinet, getDecoModelMeta(2), 7, 1, 10, ItemPool.getPool(ItemPoolsComponent.POOL_OFFICE_TRASH), 4); + generateInvContents(world, box, rand, Blocks.chest, metaE, 7, 5, 5, ItemPool.getPool(ItemPoolsLegacy.POOL_GENERIC), 8); //loot placeBlockAtCurrentPosition(world, ModBlocks.deco_loot, 0, 3, 2, 12, box); LootGenerator.lootBookLore(world, getXWithOffset(3, 12), getYWithOffset(2), getZWithOffset(3, 12), HbmChestContents.generateLabBook(rand)); //TODO write more lore diff --git a/src/main/java/com/hbm/world/gen/component/OfficeFeatures.java b/src/main/java/com/hbm/world/gen/component/OfficeFeatures.java index 724323390..353b2a06e 100644 --- a/src/main/java/com/hbm/world/gen/component/OfficeFeatures.java +++ b/src/main/java/com/hbm/world/gen/component/OfficeFeatures.java @@ -3,6 +3,9 @@ package com.hbm.world.gen.component; import java.util.Random; import com.hbm.blocks.ModBlocks; +import com.hbm.itempool.ItemPool; +import com.hbm.itempool.ItemPoolsComponent; +import com.hbm.itempool.ItemPoolsLegacy; import com.hbm.lib.HbmChestContents; import com.hbm.util.LootGenerator; @@ -207,9 +210,9 @@ public class OfficeFeatures { //Woot if(!this.hasPlacedLoot[0]) - this.hasPlacedLoot[0] = generateInvContents(world, box, rand, ModBlocks.filing_cabinet, getDecoModelMeta(0), 14 - 4, 1, 12 - 1, HbmChestContents.officeTrash, 8); + this.hasPlacedLoot[0] = generateInvContents(world, box, rand, ModBlocks.filing_cabinet, getDecoModelMeta(0), 14 - 4, 1, 12 - 1, ItemPool.getPool(ItemPoolsComponent.POOL_OFFICE_TRASH), 8); if(!this.hasPlacedLoot[1]) { - this.hasPlacedLoot[1] = generateLockableContents(world, box, rand, ModBlocks.safe, getDecoMeta(3), 6, 1, 1, HbmChestContents.machineParts, 10, 0.5D); + this.hasPlacedLoot[1] = generateLockableContents(world, box, rand, ModBlocks.safe, getDecoMeta(3), 6, 1, 1, ItemPool.getPool(ItemPoolsComponent.POOL_MACHINE_PARTS), 10, 0.5D); if(rand.nextInt(2) == 0) generateLoreBook(world, box, 6, 1, 1, 7, HbmChestContents.generateOfficeBook(rand)); } @@ -526,21 +529,21 @@ public class OfficeFeatures { placeBlockAtCurrentPosition(world, Blocks.flower_pot, 0, 5, 13, 9, box); placeBlockAtCurrentPosition(world, Blocks.flower_pot, 0, 7, 13, 11, box); - generateInvContents(world, box, rand, ModBlocks.filing_cabinet, getDecoModelMeta(3), 9, 1, 7, HbmChestContents.filingCabinet, 4); - generateInvContents(world, box, rand, ModBlocks.filing_cabinet, getDecoModelMeta(1), 7, 5, 4, HbmChestContents.filingCabinet, 4); - generateInvContents(world, box, rand, ModBlocks.filing_cabinet, getDecoModelMeta(1), 7, 6, 4, HbmChestContents.filingCabinet, 4); - generateInvContents(world, box, rand, ModBlocks.filing_cabinet, getDecoModelMeta(2), 10, 5, 7, HbmChestContents.filingCabinet, 4); - generateInvContents(world, box, rand, ModBlocks.filing_cabinet, getDecoModelMeta(0), 10, 5, 12, HbmChestContents.filingCabinet, 4); - generateInvContents(world, box, rand, ModBlocks.filing_cabinet, getDecoModelMeta(0), 10, 6, 12, HbmChestContents.filingCabinet, 4); - generateInvContents(world, box, rand, ModBlocks.filing_cabinet, getDecoModelMeta(0), 2, 9, 5, HbmChestContents.filingCabinet, 4); + generateInvContents(world, box, rand, ModBlocks.filing_cabinet, getDecoModelMeta(3), 9, 1, 7, ItemPool.getPool(ItemPoolsComponent.POOL_FILING_CABINET), 4); + generateInvContents(world, box, rand, ModBlocks.filing_cabinet, getDecoModelMeta(1), 7, 5, 4, ItemPool.getPool(ItemPoolsComponent.POOL_FILING_CABINET), 4); + generateInvContents(world, box, rand, ModBlocks.filing_cabinet, getDecoModelMeta(1), 7, 6, 4, ItemPool.getPool(ItemPoolsComponent.POOL_FILING_CABINET), 4); + generateInvContents(world, box, rand, ModBlocks.filing_cabinet, getDecoModelMeta(2), 10, 5, 7, ItemPool.getPool(ItemPoolsComponent.POOL_FILING_CABINET), 4); + generateInvContents(world, box, rand, ModBlocks.filing_cabinet, getDecoModelMeta(0), 10, 5, 12, ItemPool.getPool(ItemPoolsComponent.POOL_FILING_CABINET), 4); + generateInvContents(world, box, rand, ModBlocks.filing_cabinet, getDecoModelMeta(0), 10, 6, 12, ItemPool.getPool(ItemPoolsComponent.POOL_FILING_CABINET), 4); + generateInvContents(world, box, rand, ModBlocks.filing_cabinet, getDecoModelMeta(0), 2, 9, 5, ItemPool.getPool(ItemPoolsComponent.POOL_FILING_CABINET), 4); - generateLockableContents(world, box, rand, ModBlocks.safe, getDecoMeta(2), 1, 9, 13, HbmChestContents.officeTrash, 10, 1.0D); + generateLockableContents(world, box, rand, ModBlocks.safe, getDecoMeta(2), 1, 9, 13, ItemPool.getPool(ItemPoolsComponent.POOL_OFFICE_TRASH), 10, 1.0D); if(rand.nextInt(2) == 0) generateLoreBook(world, box, 1, 9, 13, 7, HbmChestContents.generateOfficeBook(rand)); - generateInvContents(world, box, rand, ModBlocks.filing_cabinet, getDecoModelMeta(0), 2, 9, 13, HbmChestContents.filingCabinet, 4); - generateInvContents(world, box, rand, ModBlocks.filing_cabinet, getDecoModelMeta(0), 3, 9, 13, HbmChestContents.filingCabinet, 4); - generateLockableContents(world, box, rand, ModBlocks.filing_cabinet, getDecoModelMeta(0), 3, 10, 13, HbmChestContents.expensive, 8, 0.1D); + generateInvContents(world, box, rand, ModBlocks.filing_cabinet, getDecoModelMeta(0), 2, 9, 13, ItemPool.getPool(ItemPoolsComponent.POOL_FILING_CABINET), 4); + generateInvContents(world, box, rand, ModBlocks.filing_cabinet, getDecoModelMeta(0), 3, 9, 13, ItemPool.getPool(ItemPoolsComponent.POOL_FILING_CABINET), 4); + generateLockableContents(world, box, rand, ModBlocks.filing_cabinet, getDecoModelMeta(0), 3, 10, 13, ItemPool.getPool(ItemPoolsLegacy.POOL_EXPENSIVE), 8, 0.1D); placeBlockAtCurrentPosition(world, ModBlocks.deco_loot, 0, 6, 13, 11, box); LootGenerator.lootCapStash(world, this.getXWithOffset(6, 11), this.getYWithOffset(13), this.getZWithOffset(6, 11)); diff --git a/src/main/java/com/hbm/world/gen/component/SiloComponent.java b/src/main/java/com/hbm/world/gen/component/SiloComponent.java index 24bc98675..96415db46 100644 --- a/src/main/java/com/hbm/world/gen/component/SiloComponent.java +++ b/src/main/java/com/hbm/world/gen/component/SiloComponent.java @@ -4,8 +4,11 @@ import java.util.Random; import com.hbm.blocks.BlockDummyable; import com.hbm.blocks.ModBlocks; +import com.hbm.itempool.ItemPool; +import com.hbm.itempool.ItemPoolsComponent; +import com.hbm.itempool.ItemPoolsLegacy; +import com.hbm.itempool.ItemPoolsSingle; import com.hbm.items.ModItems; -import com.hbm.lib.HbmChestContents; import com.hbm.tileentity.bomb.TileEntityLandmine; import com.hbm.tileentity.bomb.TileEntityLaunchPadRusted; import com.hbm.tileentity.network.TileEntityRadioTorchBase; @@ -248,7 +251,7 @@ public class SiloComponent extends Component { setRTTYFreq(world, box, 16, 25, 17, freqHatch); //Containers - generateInvContents(world, box, rand, Blocks.chest, 2, 36, 26, 17, HbmChestContents.vertibird, 5); + generateInvContents(world, box, rand, Blocks.chest, 2, 36, 26, 17, ItemPool.getPool(ItemPoolsLegacy.POOL_VERTIBIRD), 5); /* Stairway */ fillWithAir(world, box, 37, 26, 9, 37, 27, 10); @@ -463,22 +466,22 @@ public class SiloComponent extends Component { placeRandomBobble(world, box, rand, 16, 22, 4); //Containers - generateInvContents(world, box, rand, ModBlocks.filing_cabinet, decoModelW, 31, 21, 17, HbmChestContents.filingCabinet, 4); - generateInvContents(world, box, rand, ModBlocks.filing_cabinet, decoModelW, 31, 21, 18, HbmChestContents.labVault, 6); - generateInvContents(world, box, rand, ModBlocks.filing_cabinet, decoModelW, 31, 21, 19, HbmChestContents.filingCabinet, 4); - generateInvContents(world, box, rand, ModBlocks.filing_cabinet, decoModelW, 31, 22, 17, HbmChestContents.filingCabinet, 4); - generateInvContents(world, box, rand, ModBlocks.filing_cabinet, decoModelW, 31, 22, 19, HbmChestContents.filingCabinet, 4); - generateInvContents(world, box, rand, ModBlocks.crate_steel, 2, 29, 21, 19, HbmChestContents.officeTrash, 8); - generateInvContents(world, box, rand, ModBlocks.filing_cabinet, decoModelE, 29, 21, 18, HbmChestContents.filingCabinet, 4); - generateInvContents(world, box, rand, ModBlocks.filing_cabinet, decoModelE, 29, 21, 17, HbmChestContents.filingCabinet, 4); + generateInvContents(world, box, rand, ModBlocks.filing_cabinet, decoModelW, 31, 21, 17, ItemPool.getPool(ItemPoolsComponent.POOL_FILING_CABINET), 4); + generateInvContents(world, box, rand, ModBlocks.filing_cabinet, decoModelW, 31, 21, 18, ItemPool.getPool(ItemPoolsComponent.POOL_VAULT_LAB), 6); + generateInvContents(world, box, rand, ModBlocks.filing_cabinet, decoModelW, 31, 21, 19, ItemPool.getPool(ItemPoolsComponent.POOL_FILING_CABINET), 4); + generateInvContents(world, box, rand, ModBlocks.filing_cabinet, decoModelW, 31, 22, 17, ItemPool.getPool(ItemPoolsComponent.POOL_FILING_CABINET), 4); + generateInvContents(world, box, rand, ModBlocks.filing_cabinet, decoModelW, 31, 22, 19, ItemPool.getPool(ItemPoolsComponent.POOL_FILING_CABINET), 4); + generateInvContents(world, box, rand, ModBlocks.crate_steel, 2, 29, 21, 19, ItemPool.getPool(ItemPoolsComponent.POOL_OFFICE_TRASH), 8); + generateInvContents(world, box, rand, ModBlocks.filing_cabinet, decoModelE, 29, 21, 18, ItemPool.getPool(ItemPoolsComponent.POOL_FILING_CABINET), 4); + generateInvContents(world, box, rand, ModBlocks.filing_cabinet, decoModelE, 29, 21, 17, ItemPool.getPool(ItemPoolsComponent.POOL_FILING_CABINET), 4); - generateInvContents(world, box, rand, ModBlocks.filing_cabinet, decoModelW, 31, 21, 8, HbmChestContents.filingCabinet, 5); + generateInvContents(world, box, rand, ModBlocks.filing_cabinet, decoModelW, 31, 21, 8, ItemPool.getPool(ItemPoolsComponent.POOL_FILING_CABINET), 5); - generateInvContents(world, box, rand, ModBlocks.crate_steel, 3, 25, 21, 2, HbmChestContents.machineParts, 4); + generateInvContents(world, box, rand, ModBlocks.crate_steel, 3, 25, 21, 2, ItemPool.getPool(ItemPoolsComponent.POOL_MACHINE_PARTS), 4); - generateInvContents(world, box, rand, ModBlocks.filing_cabinet, decoModelN, 23, 21, 5, HbmChestContents.filingCabinet, 5); + generateInvContents(world, box, rand, ModBlocks.filing_cabinet, decoModelN, 23, 21, 5, ItemPool.getPool(ItemPoolsComponent.POOL_FILING_CABINET), 5); - generateLockableContents(world, box, rand, ModBlocks.safe, decoW, 16, 21, 4, HbmChestContents.vault1, 3, 1D); + generateLockableContents(world, box, rand, ModBlocks.safe, decoW, 16, 21, 4, ItemPool.getPool(ItemPoolsSingle.POOL_VAULT_RUSTY), 3, 1D); /* Silo */ // TOP @@ -917,12 +920,12 @@ public class SiloComponent extends Component { placeBed(world, box, 1, i, j, 8); //Containers - generateInvContents(world, box, rand, ModBlocks.crate_steel, 2, 8, 17, 25, HbmChestContents.lockersVault, 6); + generateInvContents(world, box, rand, ModBlocks.crate_steel, 2, 8, 17, 25, ItemPool.getPool(ItemPoolsComponent.POOL_VAULT_LOCKERS), 6); - generateInvContents(world, box, rand, ModBlocks.crate_steel, 2, 2, 17, 11, HbmChestContents.lockersVault, 6); //placed separately for loot table control - generateInvContents(world, box, rand, ModBlocks.crate_steel, 2, 4, 17, 11, HbmChestContents.expensive, 2); - generateInvContents(world, box, rand, ModBlocks.crate_steel, 2, 6, 17, 11, HbmChestContents.lockersVault, 6); - generateInvContents(world, box, rand, ModBlocks.crate_steel, 2, 8, 17, 11, HbmChestContents.lockersVault, 6); + generateInvContents(world, box, rand, ModBlocks.crate_steel, 2, 2, 17, 11, ItemPool.getPool(ItemPoolsComponent.POOL_VAULT_LOCKERS), 6); //placed separately for loot table control + generateInvContents(world, box, rand, ModBlocks.crate_steel, 2, 4, 17, 11, ItemPool.getPool(ItemPoolsLegacy.POOL_EXPENSIVE), 2); + generateInvContents(world, box, rand, ModBlocks.crate_steel, 2, 6, 17, 11, ItemPool.getPool(ItemPoolsComponent.POOL_VAULT_LOCKERS), 6); + generateInvContents(world, box, rand, ModBlocks.crate_steel, 2, 8, 17, 11, ItemPool.getPool(ItemPoolsComponent.POOL_VAULT_LOCKERS), 6); //Mines fillWithMines(world, box, rand, 2, 17, 9, 11, 17, 11); fillWithMines(world, box, rand, 9, 17, 17, 11, 17, 24); @@ -1016,10 +1019,10 @@ public class SiloComponent extends Component { placeBlockAtCurrentPosition(world, ModBlocks.deco_toaster, getCRTMeta(1), 28, 13, 17, box); //Containers - generateInvContents(world, box, rand, ModBlocks.crate_steel, 2, 32, 13, 9, HbmChestContents.missile, 6); - generateInvContents(world, box, rand, ModBlocks.safe, decoN, 33, 13, 9, HbmChestContents.machineParts, 6); + generateInvContents(world, box, rand, ModBlocks.crate_steel, 2, 32, 13, 9, ItemPool.getPool(ItemPoolsComponent.POOL_SILO), 6); + generateInvContents(world, box, rand, ModBlocks.safe, decoN, 33, 13, 9, ItemPool.getPool(ItemPoolsComponent.POOL_MACHINE_PARTS), 6); - generateInvContents(world, box, rand, ModBlocks.crate_steel, 2, 33, 13, 21, HbmChestContents.labVault, 8); + generateInvContents(world, box, rand, ModBlocks.crate_steel, 2, 33, 13, 21, ItemPool.getPool(ItemPoolsComponent.POOL_VAULT_LAB), 8); //Mines fillWithMines(world, box, rand, 27, 13, 13, 33, 13, 15); @@ -1154,7 +1157,7 @@ public class SiloComponent extends Component { fillWithBlocks(world, box, 7, 11, 8, 11, 11, 8, ModBlocks.deco_lead); //Containers - generateInvContents(world, box, rand, ModBlocks.crate_steel, 2, 4, 9, 7, HbmChestContents.nuclearFuel, 5); + generateInvContents(world, box, rand, ModBlocks.crate_steel, 2, 4, 9, 7, ItemPool.getPool(ItemPoolsComponent.POOL_NUKE_FUEL), 5); //Mines fillWithMines(world, box, rand, 1, 9, 7, 6, 9, 11); fillWithMines(world, box, rand, 8, 9, 17, 10, 9, 22); @@ -1214,10 +1217,10 @@ public class SiloComponent extends Component { //Containers generateLockableContents(world, box, rand, ModBlocks.safe, decoE, 31, 5, 13, launchKey, 1, 0.1D); - generateInvContents(world, box, rand, ModBlocks.crate_steel, 2, 31, 5, 14, HbmChestContents.nukeTrash, 5); - generateInvContents(world, box, rand, ModBlocks.safe, decoE, 31, 5, 15, HbmChestContents.filingCabinet, 5); + generateInvContents(world, box, rand, ModBlocks.crate_steel, 2, 31, 5, 14, ItemPool.getPool(ItemPoolsLegacy.POOL_NUKE_TRASH), 5); + generateInvContents(world, box, rand, ModBlocks.safe, decoE, 31, 5, 15, ItemPool.getPool(ItemPoolsComponent.POOL_FILING_CABINET), 5); - generateInvContents(world, box, rand, ModBlocks.crate_iron, 2, 30, 1, 11, HbmChestContents.expensive, 7); + generateInvContents(world, box, rand, ModBlocks.crate_iron, 2, 30, 1, 11, ItemPool.getPool(ItemPoolsLegacy.POOL_EXPENSIVE), 7); //Mines fillWithMines(world, box, rand, 27, 5, 13, 30, 5, 15);