From 469a6249660c1bf92dc51277a042cf1a19c1dbf5 Mon Sep 17 00:00:00 2001 From: Boblet Date: Mon, 6 Mar 2023 16:13:07 +0100 Subject: [PATCH] more oil recipes, detectable bedrock ores --- .../java/com/hbm/crafting/PowderRecipes.java | 1 + .../inventory/recipes/CentrifugeRecipes.java | 2 +- .../hbm/inventory/recipes/ChemplantRecipes.java | 16 ++++++++++++---- .../hbm/inventory/recipes/CrackingRecipes.java | 3 +++ .../hbm/inventory/recipes/ShredderRecipes.java | 3 +++ .../java/com/hbm/items/armor/ItemModLens.java | 1 + .../com/hbm/items/tool/ItemSurveyScanner.java | 16 +++++++++++++--- src/main/java/com/hbm/main/MainRegistry.java | 1 - .../java/com/hbm/world/feature/OreCave.java | 8 ++++++++ .../java/com/hbm/world/feature/OreLayer.java | 8 ++++++++ .../java/com/hbm/world/feature/OreLayer3D.java | 8 ++++++++ .../hbm/textures/items/chem_icon_DYN_DNT.png | Bin 262 -> 0 bytes .../hbm/textures/items/chem_icon_DYN_EUPH.png | Bin 240 -> 0 bytes .../hbm/textures/items/chem_icon_DYN_SCHRAB.png | Bin 237 -> 0 bytes .../hbm/textures/items/chem_icon_SATURN.png | Bin 263 -> 369 bytes .../textures/items/chem_icon_SCHRABIDATE.png | Bin 245 -> 391 bytes 16 files changed, 58 insertions(+), 9 deletions(-) delete mode 100644 src/main/resources/assets/hbm/textures/items/chem_icon_DYN_DNT.png delete mode 100644 src/main/resources/assets/hbm/textures/items/chem_icon_DYN_EUPH.png delete mode 100644 src/main/resources/assets/hbm/textures/items/chem_icon_DYN_SCHRAB.png diff --git a/src/main/java/com/hbm/crafting/PowderRecipes.java b/src/main/java/com/hbm/crafting/PowderRecipes.java index 14e1d0382..aeabe7c77 100644 --- a/src/main/java/com/hbm/crafting/PowderRecipes.java +++ b/src/main/java/com/hbm/crafting/PowderRecipes.java @@ -69,6 +69,7 @@ public class PowderRecipes { CraftingManager.addShapelessAuto(new ItemStack(ModItems.powder_flux, 2), new Object[] { COAL.dust(), KEY_SAND }); CraftingManager.addShapelessAuto(new ItemStack(ModItems.powder_flux, 4), new Object[] { F.dust(), KEY_SAND }); CraftingManager.addShapelessAuto(new ItemStack(ModItems.powder_flux, 8), new Object[] { PB.dust(), S.dust(), KEY_SAND }); + CraftingManager.addShapelessAuto(new ItemStack(ModItems.powder_flux, 12), new Object[] { CA.dust(), KEY_SAND }); CraftingManager.addShapelessAuto(new ItemStack(ModItems.powder_flux, 16), new Object[] { BORAX.dust(), KEY_SAND }); //Unleash the colores diff --git a/src/main/java/com/hbm/inventory/recipes/CentrifugeRecipes.java b/src/main/java/com/hbm/inventory/recipes/CentrifugeRecipes.java index 684e7bc9f..d36b1ad1e 100644 --- a/src/main/java/com/hbm/inventory/recipes/CentrifugeRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/CentrifugeRecipes.java @@ -299,7 +299,7 @@ public class CentrifugeRecipes extends SerializableRecipe { recipes.put(new ComparableStack(ModBlocks.block_slag), new ItemStack[] { new ItemStack(Blocks.gravel, 1), new ItemStack(ModItems.powder_fire, 1), - new ItemStack(Items.dye, 1, 15), //temp + new ItemStack(ModItems.powder_calcium), //temp new ItemStack(ModItems.dust) }); for(EnumBedrockOre ore : EnumBedrockOre.values()) { diff --git a/src/main/java/com/hbm/inventory/recipes/ChemplantRecipes.java b/src/main/java/com/hbm/inventory/recipes/ChemplantRecipes.java index 73305cfb0..b9598c739 100644 --- a/src/main/java/com/hbm/inventory/recipes/ChemplantRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/ChemplantRecipes.java @@ -108,16 +108,24 @@ public class ChemplantRecipes extends SerializableRecipe { .inputItems(new OreDictStack(S.dust())) .inputFluids(new FluidStack(Fluids.UNSATURATEDS, 500)) .outputItems(new ItemStack(ModItems.ingot_rubber))); - recipes.add(new ChemRecipe(83, "TNT", 150) - .inputItems(new OreDictStack(KNO.dust())) - .inputFluids(new FluidStack(Fluids.AROMATICS, 500)) - .outputItems(new ItemStack(ModItems.ball_tnt, 4))); + recipes.add(new ChemRecipe(94, "PET", 100) + .inputItems(new OreDictStack(AL.dust())) + .inputFluids(new FluidStack(Fluids.XYLENE, 500)) + .outputItems(new ItemStack(ModItems.ingot_pet))); recipes.add(new ChemRecipe(89, "DYNAMITE", 50) .inputItems( new ComparableStack(Items.sugar), new OreDictStack(KNO.dust()), new OreDictStack("sand")) .outputItems(new ItemStack(ModItems.ball_dynamite, 2))); + recipes.add(new ChemRecipe(83, "TNT", 150) + .inputItems(new OreDictStack(KNO.dust())) + .inputFluids(new FluidStack(Fluids.AROMATICS, 500)) + .outputItems(new ItemStack(ModItems.ball_tnt, 4))); + recipes.add(new ChemRecipe(95, "TATB", 50) + .inputItems(new ComparableStack(ModItems.ball_tnt)) + .inputFluids(new FluidStack(Fluids.SOURGAS, 200), new FluidStack(Fluids.NITRIC_ACID, 10)) + .outputItems(new ItemStack(ModItems.ball_tatb))); recipes.add(new ChemRecipe(84, "C4", 150) .inputItems(new OreDictStack(KNO.dust())) .inputFluids(new FluidStack(Fluids.UNSATURATEDS, 500)) diff --git a/src/main/java/com/hbm/inventory/recipes/CrackingRecipes.java b/src/main/java/com/hbm/inventory/recipes/CrackingRecipes.java index 379d34f0f..b8cfd357c 100644 --- a/src/main/java/com/hbm/inventory/recipes/CrackingRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/CrackingRecipes.java @@ -33,6 +33,8 @@ public class CrackingRecipes extends SerializableRecipe { public static final int kero_crack_petro = 60; public static final int wood_crack_aroma = 10; public static final int wood_crack_heat = 40; + public static final int xyl_crack_aroma = 80; + public static final int xyl_crack_petro = 20; private static Map> cracking = new HashMap(); @@ -46,6 +48,7 @@ public class CrackingRecipes extends SerializableRecipe { cracking.put(Fluids.DIESEL_CRACK, new Pair(new FluidStack(Fluids.KEROSENE, diesel_crack_kero), new FluidStack(Fluids.PETROLEUM, diesel_crack_petro))); cracking.put(Fluids.KEROSENE, new Pair(new FluidStack(Fluids.PETROLEUM, kero_crack_petro), new FluidStack(Fluids.NONE, 0))); cracking.put(Fluids.WOODOIL, new Pair(new FluidStack(Fluids.HEATINGOIL, wood_crack_heat), new FluidStack(Fluids.AROMATICS, wood_crack_aroma))); + cracking.put(Fluids.XYLENE, new Pair(new FluidStack(Fluids.AROMATICS, xyl_crack_aroma), new FluidStack(Fluids.PETROLEUM, xyl_crack_petro))); } public static Pair getCracking(FluidType oil) { diff --git a/src/main/java/com/hbm/inventory/recipes/ShredderRecipes.java b/src/main/java/com/hbm/inventory/recipes/ShredderRecipes.java index 18aa045ed..b9830f277 100644 --- a/src/main/java/com/hbm/inventory/recipes/ShredderRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/ShredderRecipes.java @@ -10,8 +10,10 @@ import com.google.gson.JsonElement; import com.google.gson.JsonObject; import com.google.gson.stream.JsonWriter; import com.hbm.blocks.ModBlocks; +import com.hbm.blocks.BlockEnums.EnumStoneType; import com.hbm.blocks.generic.BlockBobble.BobbleType; import com.hbm.interfaces.Untested; +import com.hbm.inventory.OreDictManager.DictFrame; import com.hbm.inventory.RecipesCommon.ComparableStack; import com.hbm.inventory.recipes.loader.SerializableRecipe; import com.hbm.items.ModItems; @@ -198,6 +200,7 @@ public class ShredderRecipes extends SerializableRecipe { ShredderRecipes.setRecipe(Items.reeds, new ItemStack(Items.sugar, 3)); ShredderRecipes.setRecipe(Items.apple, new ItemStack(Items.sugar, 1)); ShredderRecipes.setRecipe(Items.carrot, new ItemStack(Items.sugar, 1)); + ShredderRecipes.setRecipe(DictFrame.fromOne(ModBlocks.stone_resource, EnumStoneType.LIMESTONE), new ItemStack(ModItems.powder_calcium, 4)); List logs = OreDictionary.getOres("logWood"); List planks = OreDictionary.getOres("plankWood"); diff --git a/src/main/java/com/hbm/items/armor/ItemModLens.java b/src/main/java/com/hbm/items/armor/ItemModLens.java index 72f49e5e2..f7d3675fc 100644 --- a/src/main/java/com/hbm/items/armor/ItemModLens.java +++ b/src/main/java/com/hbm/items/armor/ItemModLens.java @@ -94,6 +94,7 @@ public class ItemModLens extends ItemArmorMod implements ISatChip { if(addIf(ModBlocks.deco_loot, b, 1, aX, seg, aZ, null, 0x800000, player)) hits++; if(addIf(ModBlocks.crate_ammo, b, 1, aX, seg, aZ, null, 0x800000, player)) hits++; if(addIf(ModBlocks.crate_can, b, 1, aX, seg, aZ, null, 0x800000, player)) hits++; + if(addIf(ModBlocks.ore_bedrock, b, 1, aX, seg, aZ, "Bedrock Ore", 0xff0000, player)) hits++; if(hits > 100) return; } diff --git a/src/main/java/com/hbm/items/tool/ItemSurveyScanner.java b/src/main/java/com/hbm/items/tool/ItemSurveyScanner.java index 2f9d3cda0..0e3517671 100644 --- a/src/main/java/com/hbm/items/tool/ItemSurveyScanner.java +++ b/src/main/java/com/hbm/items/tool/ItemSurveyScanner.java @@ -1,6 +1,7 @@ package com.hbm.items.tool; import com.hbm.blocks.ModBlocks; +import com.hbm.blocks.generic.BlockBedrockOreTE.TileEntityBedrockOre; import com.hbm.items.ModItems; import net.minecraft.block.Block; @@ -19,15 +20,16 @@ public class ItemSurveyScanner extends Item { if(!world.isRemote) { - int x = (int)Math.floor(player.posX); - int y = (int)Math.floor(player.posY); - int z = (int)Math.floor(player.posZ); + int x = (int) Math.floor(player.posX); + int y = (int) Math.floor(player.posY); + int z = (int) Math.floor(player.posZ); boolean hasOil = false; boolean hasColtan = false; boolean hasDepth = false; boolean hasSchist = false; boolean hasAussie = false; + TileEntityBedrockOre tile = null; for(int a = -5; a <= 5; a++) { for(int b = -5; b <= 5; b++) { @@ -46,6 +48,12 @@ public class ItemSurveyScanner extends Item { else if(block == ModBlocks.ore_australium) hasAussie = true; } + + Block block = world.getBlock(x + a * 2, 0, z + b * 2); + + if(block == ModBlocks.ore_bedrock) { + tile = (TileEntityBedrockOre) world.getTileEntity(x + a * 2, 0, z + b * 2); + } } } @@ -59,6 +67,8 @@ public class ItemSurveyScanner extends Item { player.addChatComponentMessage(new ChatComponentText("Found SCHIST!").setChatStyle(new ChatStyle().setColor(EnumChatFormatting.DARK_AQUA))); if(hasAussie) player.addChatComponentMessage(new ChatComponentText("Found AUSTRALIUM!").setChatStyle(new ChatStyle().setColor(EnumChatFormatting.YELLOW))); + if(tile != null && tile.resource != null) + player.addChatComponentMessage(new ChatComponentText("Found BEDROCK ORE for " + tile.resource.getDisplayName() + "!").setChatStyle(new ChatStyle().setColor(EnumChatFormatting.RED))); } player.swingItem(); diff --git a/src/main/java/com/hbm/main/MainRegistry.java b/src/main/java/com/hbm/main/MainRegistry.java index fa94ce65a..441c8627d 100644 --- a/src/main/java/com/hbm/main/MainRegistry.java +++ b/src/main/java/com/hbm/main/MainRegistry.java @@ -67,7 +67,6 @@ import com.hbm.lib.RefStrings; import com.hbm.packet.PacketDispatcher; import com.hbm.potion.HbmPotion; import com.hbm.saveddata.satellites.Satellite; -import com.hbm.test.ExplosionTests; import com.hbm.tileentity.TileMappings; import com.hbm.tileentity.bomb.TileEntityNukeCustom; import com.hbm.tileentity.machine.*; diff --git a/src/main/java/com/hbm/world/feature/OreCave.java b/src/main/java/com/hbm/world/feature/OreCave.java index 116dc92ea..2be6aa77a 100644 --- a/src/main/java/com/hbm/world/feature/OreCave.java +++ b/src/main/java/com/hbm/world/feature/OreCave.java @@ -28,6 +28,7 @@ public class OreCave { /** The y-level around which the stratum is centered. */ private int yLevel = 30; private Block fluid; + int dim = 0; public OreCave(Block ore) { this(ore, 0); @@ -62,11 +63,18 @@ public class OreCave { this.fluid = fluid; return this; } + + public OreCave setDimension(int dim) { + this.dim = dim; + return this; + } @SuppressWarnings("incomplete-switch") @SubscribeEvent public void onDecorate(DecorateBiomeEvent.Pre event) { + if(event.world.provider.dimensionId != this.dim) return; + if(this.noise == null) { this.noise = new NoiseGeneratorPerlin(new Random(event.world.getSeed() + (ore.getID() * 31) + yLevel), 2); } diff --git a/src/main/java/com/hbm/world/feature/OreLayer.java b/src/main/java/com/hbm/world/feature/OreLayer.java index 93624c6b3..85b051525 100644 --- a/src/main/java/com/hbm/world/feature/OreLayer.java +++ b/src/main/java/com/hbm/world/feature/OreLayer.java @@ -26,6 +26,7 @@ public class OreLayer { private int maxRange = 4; /** The y-level around which the stratum is centered. */ private int yLevel = 30; + int dim = 0; public OreLayer(Block ore, float density) { this(ore, 0, Blocks.stone, density); @@ -57,10 +58,17 @@ public class OreLayer { this.yLevel = yLevel; return this; } + + public OreLayer setDimension(int dim) { + this.dim = dim; + return this; + } @SubscribeEvent public void onDecorate(DecorateBiomeEvent.Pre event) { + if(event.world.provider.dimensionId != this.dim) return; + if(this.noise == null) { this.noise = new NoiseGeneratorPerlin(new Random(event.world.getSeed() + (ore.getID() * 31) + yLevel), 4); } diff --git a/src/main/java/com/hbm/world/feature/OreLayer3D.java b/src/main/java/com/hbm/world/feature/OreLayer3D.java index 6d5c9de44..6c7f97da2 100644 --- a/src/main/java/com/hbm/world/feature/OreLayer3D.java +++ b/src/main/java/com/hbm/world/feature/OreLayer3D.java @@ -18,15 +18,23 @@ public class OreLayer3D { Block block; int meta; + int dim = 0; public OreLayer3D(Block block, int meta) { this.block = block; this.meta = meta; MinecraftForge.EVENT_BUS.register(this); } + + public OreLayer3D setDimension(int dim) { + this.dim = dim; + return this; + } @SubscribeEvent public void onDecorate(DecorateBiomeEvent.Pre event) { + + if(event.world.provider.dimensionId != this.dim) return; if(this.noiseX == null) this.noiseX = new NoiseGeneratorPerlin(new Random(event.world.getSeed() + 101), 4); if(this.noiseY == null) this.noiseY = new NoiseGeneratorPerlin(new Random(event.world.getSeed() + 102), 4); diff --git a/src/main/resources/assets/hbm/textures/items/chem_icon_DYN_DNT.png b/src/main/resources/assets/hbm/textures/items/chem_icon_DYN_DNT.png deleted file mode 100644 index 7a9e726fd115122f6f9a64364a965d8ee91394cd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 262 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#VfHYlw?yfeQqM~8jyLS>hEH3K3c-NQMl6mZzs71xI z-4E>7-B7URNl>tgnm%!XQqW~4ZavPrnF)K?YHK!4o7l+MEk427PFJ_r(bct8an|*= zhfQ0Ao4dNWn5&`=O0)g`_V%#)*#id{eA#a>Y>bnrU|{I`?5=Fj63Pkm2!p4qpUXO@ GgeCx@CSr&H diff --git a/src/main/resources/assets/hbm/textures/items/chem_icon_DYN_EUPH.png b/src/main/resources/assets/hbm/textures/items/chem_icon_DYN_EUPH.png deleted file mode 100644 index 4b560ba5b1a6d647e70f61536512b34c6c6e30a8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 240 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vfb-c^m)Med?3pObjoshv z*WFOC=1EYnikd!ggO<=`CT_h>=UJu|yqk94JJfNPVabH;zTVB;_V>5*pW9dboG(#) kLG~fm4^j;|mmjb)NL+Vr@s!+m3+QA9Pgg&ebxsLQ07Yb7Z2$lO diff --git a/src/main/resources/assets/hbm/textures/items/chem_icon_DYN_SCHRAB.png b/src/main/resources/assets/hbm/textures/items/chem_icon_DYN_SCHRAB.png deleted file mode 100644 index 23b8328b5836a3e116646a43cd204769378272e7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 237 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#VfNO*?laKcLD=IgELN^F0k+UcI`!`*tmhtjjwJ7vDqVVh8|*C(KR89ZJ6T-G@yGywpFLQ@$4 diff --git a/src/main/resources/assets/hbm/textures/items/chem_icon_SATURN.png b/src/main/resources/assets/hbm/textures/items/chem_icon_SATURN.png index 37ae4408e3a1c7963bc0499972feb9c3c6f7ff8a..06149dfa927852891da5d3d1017ec7565f9be7b6 100644 GIT binary patch delta 327 zcmV-N0l5B$0`UTnGk*anNklFONXivOR(AiN|B(Eu<<4q5Bn^r23d*vq=5`$CCaNR`wkHOQ1;zQS!GB|t=+t{j7>0VijUp&Z z3~Wyj1k9I9;yA7)0Zb;7Is{Ob;JUEe(FY*U*+vob^_n=2pF^rlQ!k~!vgGB>hWTpM z4uMQnb-4gkpD-S4$-s3f(iGCPo@iMT+V5}YzF&2qk}8R^>sIff>9l1Arl}=GuO}}a z4oygfwa&n@WI)?0?GgHy8E`fF{Qek}U!wC2xYmCE+s2;>OcRDf$n%%b^YUi`KB}i% Z{Q=$u002ovPDHLkV1lQfnSKBO delta 220 zcmV<203-kL0*3;SGk*ZSNkl;lF}{0*Wgrb^+Y>|KC?Z@c&o;vALq5q2d361q=Q!Sg_##|NsC0!(4&t0uBd) zmc_@%qwrA;_;G-s0Sgx{MBy{S7|70!N?OmzfCV52UPD6zR#i3R0S5;Mf(Zzh9u^E4 zV|)CDojr)+bW8&n7#L(79N_GC@7}@LUoTz4Pz#R*WN*BC_YRJ+0c5q9AxWYaC-SiaQiOTjOJ{P$PYOHz;qe_Ad4*s!j6f2!AEc-wF41^C4X4i%hx-os&zusY3DkG z_+jAs&&M|ysedz2RSR)*0n@329QH-DNf1ZSbxVK-s%midbPLld1aUMea?rt6-q7Xi zd4to3<)jF}2u$00bRY=zs%l1#ei*=X3c7CHd?9!b=$(d;;i|fBoseIhxD39FZT|~` zI|$vzPHOD>8CHqNY%&8{yLs76ie_aH#1X{xIb`uMD}xd_^Gf6_m6@HJL5Y0y{M{iH vne_!n5Jyl|bKrzOYV;u$nWf;4iH7w9f{ntBO>fMh00000NkvXXu0mjfXrQ7) delta 202 zcmV;*05$)I1N8xrGk*ZANklPy{WxgCPcG2a4h$0aQfl;UfFx%F2K}3<6K}5(& zgac#DtuiwM0F+XKL=aeOZ|#3;-g}WBt|+&C90LlJyF2HqoLq`iqErZy{;hE2qC=&^4