more oil recipes, detectable bedrock ores

This commit is contained in:
Boblet 2023-03-06 16:13:07 +01:00
parent 0df987b689
commit 469a624966
16 changed files with 58 additions and 9 deletions

View File

@ -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, 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, 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, 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 }); CraftingManager.addShapelessAuto(new ItemStack(ModItems.powder_flux, 16), new Object[] { BORAX.dust(), KEY_SAND });
//Unleash the colores //Unleash the colores

View File

@ -299,7 +299,7 @@ public class CentrifugeRecipes extends SerializableRecipe {
recipes.put(new ComparableStack(ModBlocks.block_slag), new ItemStack[] { recipes.put(new ComparableStack(ModBlocks.block_slag), new ItemStack[] {
new ItemStack(Blocks.gravel, 1), new ItemStack(Blocks.gravel, 1),
new ItemStack(ModItems.powder_fire, 1), new ItemStack(ModItems.powder_fire, 1),
new ItemStack(Items.dye, 1, 15), //temp new ItemStack(ModItems.powder_calcium), //temp
new ItemStack(ModItems.dust) }); new ItemStack(ModItems.dust) });
for(EnumBedrockOre ore : EnumBedrockOre.values()) { for(EnumBedrockOre ore : EnumBedrockOre.values()) {

View File

@ -108,16 +108,24 @@ public class ChemplantRecipes extends SerializableRecipe {
.inputItems(new OreDictStack(S.dust())) .inputItems(new OreDictStack(S.dust()))
.inputFluids(new FluidStack(Fluids.UNSATURATEDS, 500)) .inputFluids(new FluidStack(Fluids.UNSATURATEDS, 500))
.outputItems(new ItemStack(ModItems.ingot_rubber))); .outputItems(new ItemStack(ModItems.ingot_rubber)));
recipes.add(new ChemRecipe(83, "TNT", 150) recipes.add(new ChemRecipe(94, "PET", 100)
.inputItems(new OreDictStack(KNO.dust())) .inputItems(new OreDictStack(AL.dust()))
.inputFluids(new FluidStack(Fluids.AROMATICS, 500)) .inputFluids(new FluidStack(Fluids.XYLENE, 500))
.outputItems(new ItemStack(ModItems.ball_tnt, 4))); .outputItems(new ItemStack(ModItems.ingot_pet)));
recipes.add(new ChemRecipe(89, "DYNAMITE", 50) recipes.add(new ChemRecipe(89, "DYNAMITE", 50)
.inputItems( .inputItems(
new ComparableStack(Items.sugar), new ComparableStack(Items.sugar),
new OreDictStack(KNO.dust()), new OreDictStack(KNO.dust()),
new OreDictStack("sand")) new OreDictStack("sand"))
.outputItems(new ItemStack(ModItems.ball_dynamite, 2))); .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) recipes.add(new ChemRecipe(84, "C4", 150)
.inputItems(new OreDictStack(KNO.dust())) .inputItems(new OreDictStack(KNO.dust()))
.inputFluids(new FluidStack(Fluids.UNSATURATEDS, 500)) .inputFluids(new FluidStack(Fluids.UNSATURATEDS, 500))

View File

@ -33,6 +33,8 @@ public class CrackingRecipes extends SerializableRecipe {
public static final int kero_crack_petro = 60; public static final int kero_crack_petro = 60;
public static final int wood_crack_aroma = 10; public static final int wood_crack_aroma = 10;
public static final int wood_crack_heat = 40; 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<FluidType, Pair<FluidStack, FluidStack>> cracking = new HashMap(); private static Map<FluidType, Pair<FluidStack, FluidStack>> 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.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.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.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<FluidStack, FluidStack> getCracking(FluidType oil) { public static Pair<FluidStack, FluidStack> getCracking(FluidType oil) {

View File

@ -10,8 +10,10 @@ import com.google.gson.JsonElement;
import com.google.gson.JsonObject; import com.google.gson.JsonObject;
import com.google.gson.stream.JsonWriter; import com.google.gson.stream.JsonWriter;
import com.hbm.blocks.ModBlocks; import com.hbm.blocks.ModBlocks;
import com.hbm.blocks.BlockEnums.EnumStoneType;
import com.hbm.blocks.generic.BlockBobble.BobbleType; import com.hbm.blocks.generic.BlockBobble.BobbleType;
import com.hbm.interfaces.Untested; import com.hbm.interfaces.Untested;
import com.hbm.inventory.OreDictManager.DictFrame;
import com.hbm.inventory.RecipesCommon.ComparableStack; import com.hbm.inventory.RecipesCommon.ComparableStack;
import com.hbm.inventory.recipes.loader.SerializableRecipe; import com.hbm.inventory.recipes.loader.SerializableRecipe;
import com.hbm.items.ModItems; 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.reeds, new ItemStack(Items.sugar, 3));
ShredderRecipes.setRecipe(Items.apple, new ItemStack(Items.sugar, 1)); ShredderRecipes.setRecipe(Items.apple, new ItemStack(Items.sugar, 1));
ShredderRecipes.setRecipe(Items.carrot, 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<ItemStack> logs = OreDictionary.getOres("logWood"); List<ItemStack> logs = OreDictionary.getOres("logWood");
List<ItemStack> planks = OreDictionary.getOres("plankWood"); List<ItemStack> planks = OreDictionary.getOres("plankWood");

View File

@ -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.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_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.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; if(hits > 100) return;
} }

View File

@ -1,6 +1,7 @@
package com.hbm.items.tool; package com.hbm.items.tool;
import com.hbm.blocks.ModBlocks; import com.hbm.blocks.ModBlocks;
import com.hbm.blocks.generic.BlockBedrockOreTE.TileEntityBedrockOre;
import com.hbm.items.ModItems; import com.hbm.items.ModItems;
import net.minecraft.block.Block; import net.minecraft.block.Block;
@ -19,15 +20,16 @@ public class ItemSurveyScanner extends Item {
if(!world.isRemote) { if(!world.isRemote) {
int x = (int)Math.floor(player.posX); int x = (int) Math.floor(player.posX);
int y = (int)Math.floor(player.posY); int y = (int) Math.floor(player.posY);
int z = (int)Math.floor(player.posZ); int z = (int) Math.floor(player.posZ);
boolean hasOil = false; boolean hasOil = false;
boolean hasColtan = false; boolean hasColtan = false;
boolean hasDepth = false; boolean hasDepth = false;
boolean hasSchist = false; boolean hasSchist = false;
boolean hasAussie = false; boolean hasAussie = false;
TileEntityBedrockOre tile = null;
for(int a = -5; a <= 5; a++) { for(int a = -5; a <= 5; a++) {
for(int b = -5; b <= 5; b++) { for(int b = -5; b <= 5; b++) {
@ -46,6 +48,12 @@ public class ItemSurveyScanner extends Item {
else if(block == ModBlocks.ore_australium) else if(block == ModBlocks.ore_australium)
hasAussie = true; 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))); player.addChatComponentMessage(new ChatComponentText("Found SCHIST!").setChatStyle(new ChatStyle().setColor(EnumChatFormatting.DARK_AQUA)));
if(hasAussie) if(hasAussie)
player.addChatComponentMessage(new ChatComponentText("Found AUSTRALIUM!").setChatStyle(new ChatStyle().setColor(EnumChatFormatting.YELLOW))); 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(); player.swingItem();

View File

@ -67,7 +67,6 @@ import com.hbm.lib.RefStrings;
import com.hbm.packet.PacketDispatcher; import com.hbm.packet.PacketDispatcher;
import com.hbm.potion.HbmPotion; import com.hbm.potion.HbmPotion;
import com.hbm.saveddata.satellites.Satellite; import com.hbm.saveddata.satellites.Satellite;
import com.hbm.test.ExplosionTests;
import com.hbm.tileentity.TileMappings; import com.hbm.tileentity.TileMappings;
import com.hbm.tileentity.bomb.TileEntityNukeCustom; import com.hbm.tileentity.bomb.TileEntityNukeCustom;
import com.hbm.tileentity.machine.*; import com.hbm.tileentity.machine.*;

View File

@ -28,6 +28,7 @@ public class OreCave {
/** The y-level around which the stratum is centered. */ /** The y-level around which the stratum is centered. */
private int yLevel = 30; private int yLevel = 30;
private Block fluid; private Block fluid;
int dim = 0;
public OreCave(Block ore) { public OreCave(Block ore) {
this(ore, 0); this(ore, 0);
@ -62,11 +63,18 @@ public class OreCave {
this.fluid = fluid; this.fluid = fluid;
return this; return this;
} }
public OreCave setDimension(int dim) {
this.dim = dim;
return this;
}
@SuppressWarnings("incomplete-switch") @SuppressWarnings("incomplete-switch")
@SubscribeEvent @SubscribeEvent
public void onDecorate(DecorateBiomeEvent.Pre event) { public void onDecorate(DecorateBiomeEvent.Pre event) {
if(event.world.provider.dimensionId != this.dim) return;
if(this.noise == null) { if(this.noise == null) {
this.noise = new NoiseGeneratorPerlin(new Random(event.world.getSeed() + (ore.getID() * 31) + yLevel), 2); this.noise = new NoiseGeneratorPerlin(new Random(event.world.getSeed() + (ore.getID() * 31) + yLevel), 2);
} }

View File

@ -26,6 +26,7 @@ public class OreLayer {
private int maxRange = 4; private int maxRange = 4;
/** The y-level around which the stratum is centered. */ /** The y-level around which the stratum is centered. */
private int yLevel = 30; private int yLevel = 30;
int dim = 0;
public OreLayer(Block ore, float density) { public OreLayer(Block ore, float density) {
this(ore, 0, Blocks.stone, density); this(ore, 0, Blocks.stone, density);
@ -57,10 +58,17 @@ public class OreLayer {
this.yLevel = yLevel; this.yLevel = yLevel;
return this; return this;
} }
public OreLayer setDimension(int dim) {
this.dim = dim;
return this;
}
@SubscribeEvent @SubscribeEvent
public void onDecorate(DecorateBiomeEvent.Pre event) { public void onDecorate(DecorateBiomeEvent.Pre event) {
if(event.world.provider.dimensionId != this.dim) return;
if(this.noise == null) { if(this.noise == null) {
this.noise = new NoiseGeneratorPerlin(new Random(event.world.getSeed() + (ore.getID() * 31) + yLevel), 4); this.noise = new NoiseGeneratorPerlin(new Random(event.world.getSeed() + (ore.getID() * 31) + yLevel), 4);
} }

View File

@ -18,15 +18,23 @@ public class OreLayer3D {
Block block; Block block;
int meta; int meta;
int dim = 0;
public OreLayer3D(Block block, int meta) { public OreLayer3D(Block block, int meta) {
this.block = block; this.block = block;
this.meta = meta; this.meta = meta;
MinecraftForge.EVENT_BUS.register(this); MinecraftForge.EVENT_BUS.register(this);
} }
public OreLayer3D setDimension(int dim) {
this.dim = dim;
return this;
}
@SubscribeEvent @SubscribeEvent
public void onDecorate(DecorateBiomeEvent.Pre event) { 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.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); if(this.noiseY == null) this.noiseY = new NoiseGeneratorPerlin(new Random(event.world.getSeed() + 102), 4);

Binary file not shown.

Before

Width:  |  Height:  |  Size: 262 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 240 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 237 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 263 B

After

Width:  |  Height:  |  Size: 369 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 245 B

After

Width:  |  Height:  |  Size: 391 B