diff --git a/src/main/java/assets/hbm/lang/de_DE.lang b/src/main/java/assets/hbm/lang/de_DE.lang index 038fa2394..98d0f78ee 100644 --- a/src/main/java/assets/hbm/lang/de_DE.lang +++ b/src/main/java/assets/hbm/lang/de_DE.lang @@ -2400,6 +2400,7 @@ tile.ore_daffergon.name=Dellit tile.ore_fluorite.name=Fluoriterz tile.ore_gneiss_asbestos.name=Schiefer-Asbesterz tile.ore_gneiss_copper.name=Schiefer-Kupfererz +tile.ore_gneiss_gas.name=Gasschiefer tile.ore_gneiss_gold.name=Schiefer-Golderz tile.ore_gneiss_iron.name=Schiefer-Eisenerz tile.ore_gneiss_lithium.name=Schifer-Lithiumerz diff --git a/src/main/java/assets/hbm/lang/en_US.lang b/src/main/java/assets/hbm/lang/en_US.lang index 53de4205a..542ceaacf 100644 --- a/src/main/java/assets/hbm/lang/en_US.lang +++ b/src/main/java/assets/hbm/lang/en_US.lang @@ -2400,6 +2400,7 @@ tile.ore_daffergon.name=Dellite tile.ore_fluorite.name=Fluorite Ore tile.ore_gneiss_asbestos.name=Schist Asbestos Ore tile.ore_gneiss_copper.name=Schist Copper Ore +tile.ore_gneiss_gas.name=Gas Shale tile.ore_gneiss_gold.name=Schist Gold Ore tile.ore_gneiss_iron.name=Schist Iron Ore tile.ore_gneiss_lithium.name=Schist Lithium Ore diff --git a/src/main/java/assets/hbm/textures/blocks/ore_gneiss_gas.png b/src/main/java/assets/hbm/textures/blocks/ore_gneiss_gas.png new file mode 100644 index 000000000..52ef405eb Binary files /dev/null and b/src/main/java/assets/hbm/textures/blocks/ore_gneiss_gas.png differ diff --git a/src/main/java/com/hbm/blocks/ModBlocks.java b/src/main/java/com/hbm/blocks/ModBlocks.java index 69aef0d57..7c5aefbc7 100644 --- a/src/main/java/com/hbm/blocks/ModBlocks.java +++ b/src/main/java/com/hbm/blocks/ModBlocks.java @@ -93,6 +93,7 @@ public class ModBlocks { public static Block ore_gneiss_lithium; public static Block ore_gneiss_schrabidium; public static Block ore_gneiss_rare; + public static Block ore_gneiss_gas; public static Block ore_oil; public static Block ore_oil_empty; @@ -933,6 +934,7 @@ public class ModBlocks { ore_gneiss_lithium = new BlockOre(Material.rock).setBlockName("ore_gneiss_lithium").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_gneiss_lithium"); ore_gneiss_schrabidium = new BlockOre(Material.rock).setBlockName("ore_gneiss_schrabidium").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_gneiss_schrabidium"); ore_gneiss_rare = new BlockOre(Material.rock).setBlockName("ore_gneiss_rare").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_gneiss_rare"); + ore_gneiss_gas = new BlockOre(Material.rock).setBlockName("ore_gneiss_gas").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_gneiss_gas"); ore_australium = new BlockGeneric(Material.rock).setBlockName("ore_australium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_australium"); ore_weidanium = new BlockGeneric(Material.rock).setBlockName("ore_weidanium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_weidanium"); @@ -1651,6 +1653,7 @@ public class ModBlocks { GameRegistry.registerBlock(ore_gneiss_lithium, ore_gneiss_lithium.getUnlocalizedName()); GameRegistry.registerBlock(ore_gneiss_schrabidium, ItemBlockLore.class, ore_gneiss_schrabidium.getUnlocalizedName()); GameRegistry.registerBlock(ore_gneiss_rare, ItemOreBlock.class, ore_gneiss_rare.getUnlocalizedName()); + GameRegistry.registerBlock(ore_gneiss_gas, ore_gneiss_gas.getUnlocalizedName()); //End Ores GameRegistry.registerBlock(ore_tikite, ore_tikite.getUnlocalizedName()); diff --git a/src/main/java/com/hbm/config/WorldConfig.java b/src/main/java/com/hbm/config/WorldConfig.java index b65bd42ae..9917edc4d 100644 --- a/src/main/java/com/hbm/config/WorldConfig.java +++ b/src/main/java/com/hbm/config/WorldConfig.java @@ -21,6 +21,7 @@ public class WorldConfig { public static int rareSpawn = 6; public static int lithiumSpawn = 6; public static int oilcoalSpawn = 128; + public static int gassshaleSpawn = 5; public static int netherUraniumuSpawn = 8; public static int netherTungstenSpawn = 10; @@ -79,6 +80,7 @@ public class WorldConfig { lithiumSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.13_lithiumSpawnRate", "Amount of schist lithium ore veins per chunk", 6); rareSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.14_rareEarthSpawnRate", "Amount of rare earth ore veins per chunk", 6); oilcoalSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.15_oilCoalSpawnRate", "Spawns an oily coal vein every nTH chunk", 128); + gassshaleSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.16_gasShaleSpawnRate", "Amount of oil shale veins per chunk", 5); netherUraniumuSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.N00_uraniumSpawnrate", "Amount of nether uranium per chunk", 8); netherTungstenSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.N01_tungstenSpawnrate", "Amount of nether tungsten per chunk", 10); diff --git a/src/main/java/com/hbm/entity/mob/EntityFBI.java b/src/main/java/com/hbm/entity/mob/EntityFBI.java index 4017846ef..2cf0babd5 100644 --- a/src/main/java/com/hbm/entity/mob/EntityFBI.java +++ b/src/main/java/com/hbm/entity/mob/EntityFBI.java @@ -18,7 +18,6 @@ import net.minecraft.entity.IRangedAttackMob; import net.minecraft.entity.SharedMonsterAttributes; import net.minecraft.entity.ai.EntityAIArrowAttack; import net.minecraft.entity.ai.EntityAIAttackOnCollide; -import net.minecraft.entity.ai.EntityAIBreakDoor; import net.minecraft.entity.ai.EntityAIHurtByTarget; import net.minecraft.entity.ai.EntityAILookIdle; import net.minecraft.entity.ai.EntityAIMoveTowardsRestriction; @@ -86,9 +85,13 @@ public class EntityFBI extends EntityMob implements IRangedAttackMob { protected void entityInit() { super.entityInit(); } + + protected boolean canDespawn() { + return false; + } protected void addRandomArmor() { - super.addRandomArmor(); + //super.addRandomArmor(); int equip = rand.nextInt(2); @@ -97,7 +100,7 @@ public class EntityFBI extends EntityMob implements IRangedAttackMob { case 1: this.setCurrentItemOrArmor(0, new ItemStack(ModItems.gun_ks23)); break; } - if(rand.nextInt(10) == 0) { + if(rand.nextInt(5) == 0) { this.setCurrentItemOrArmor(4, new ItemStack(ModItems.security_helmet)); this.setCurrentItemOrArmor(3, new ItemStack(ModItems.security_plate)); this.setCurrentItemOrArmor(2, new ItemStack(ModItems.security_legs)); diff --git a/src/main/java/com/hbm/entity/mob/ai/EntityAIBreaking.java b/src/main/java/com/hbm/entity/mob/ai/EntityAIBreaking.java index 7a223928b..af66b26fd 100644 --- a/src/main/java/com/hbm/entity/mob/ai/EntityAIBreaking.java +++ b/src/main/java/com/hbm/entity/mob/ai/EntityAIBreaking.java @@ -37,7 +37,7 @@ public class EntityAIBreaking extends EntityAIBase { { return false; } - + Block block = entityDigger.worldObj.getBlock(mop.blockX, mop.blockY, mop.blockZ); if(block.getBlockHardness(entityDigger.worldObj, mop.blockX, mop.blockY, mop.blockZ) >= 0) { @@ -72,7 +72,7 @@ public class EntityAIBreaking extends EntityAIBase { { MovingObjectPosition mop = null; - if(entityDigger.ticksExisted%10 == 0) + if(entityDigger.ticksExisted % 10 == 0) { mop = GetNextObstical(entityDigger, 2D); } @@ -93,7 +93,7 @@ public class EntityAIBreaking extends EntityAIBase { int health = (int) block.getBlockHardness(entityDigger.worldObj, markedLoc[0], markedLoc[1], markedLoc[2]) / 3; - if(health <= 0) { + if(health < 0) { markedLoc = null; return; } diff --git a/src/main/java/com/hbm/entity/mob/ai/EntityAI_MLPF.java b/src/main/java/com/hbm/entity/mob/ai/EntityAI_MLPF.java index 0b4441173..7f11922b9 100644 --- a/src/main/java/com/hbm/entity/mob/ai/EntityAI_MLPF.java +++ b/src/main/java/com/hbm/entity/mob/ai/EntityAI_MLPF.java @@ -73,7 +73,8 @@ public class EntityAI_MLPF extends EntityAIBase { //System.out.println("Routing to " + x + "/" + y + "/" + z); //this is where the magic happens - boolean success = this.mover.getNavigator().tryMoveToXYZ(x, y, z, this.speed); + this.mover.getNavigator().tryMoveToXYZ(x, y, z, this.speed); + mover.setAttackTarget(target); //System.out.println("Start successful? " + success); } diff --git a/src/main/java/com/hbm/handler/BossSpawnHandler.java b/src/main/java/com/hbm/handler/BossSpawnHandler.java index 73f3ddbd2..9221b2321 100644 --- a/src/main/java/com/hbm/handler/BossSpawnHandler.java +++ b/src/main/java/com/hbm/handler/BossSpawnHandler.java @@ -9,6 +9,9 @@ import cpw.mods.fml.common.eventhandler.Event.Result; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLiving; import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.util.ChatComponentText; +import net.minecraft.util.ChatStyle; +import net.minecraft.util.EnumChatFormatting; import net.minecraft.util.Vec3; import net.minecraft.world.World; import net.minecraftforge.event.ForgeEventFactory; @@ -24,6 +27,7 @@ public class BossSpawnHandler { if(world.rand.nextInt(MobConfig.maskmanChance) == 0 && !world.playerEntities.isEmpty() && world.provider.isSurfaceWorld()) { //33% chance only if there is a player online EntityPlayer player = (EntityPlayer) world.playerEntities.get(world.rand.nextInt(world.playerEntities.size())); //choose a random player + player.addChatComponentMessage(new ChatComponentText("The mask man is about to claim another victim.").setChatStyle(new ChatStyle().setColor(EnumChatFormatting.RED))); if(ContaminationUtil.getRads(player) >= MobConfig.maskmanMinRad && (world.getHeightValue((int)player.posX, (int)player.posZ) > player.posY + 3 || !MobConfig.maskmanUnderground)) { //if the player has more than 50 RAD and is underground @@ -41,11 +45,12 @@ public class BossSpawnHandler { if(MobConfig.enableRaids) { - if(world.getTotalWorldTime() % MobConfig.raidDelay == 0) { + if(world.getTotalWorldTime() % MobConfig.raidAttackDelay == 0) { if(world.rand.nextInt(MobConfig.raidChance) == 0 && !world.playerEntities.isEmpty() && world.provider.isSurfaceWorld()) { EntityPlayer player = (EntityPlayer) world.playerEntities.get(world.rand.nextInt(world.playerEntities.size())); + player.addChatComponentMessage(new ChatComponentText("FBI, OPEN UP!").setChatStyle(new ChatStyle().setColor(EnumChatFormatting.RED))); Vec3 vec = Vec3.createVectorHelper(MobConfig.raidAttackDistance, 0, 0); vec.rotateAroundY((float)(Math.PI * 2) * world.rand.nextFloat()); @@ -72,6 +77,7 @@ public class BossSpawnHandler { world.spawnEntityInWorld(e); ForgeEventFactory.doSpecialSpawn(e, world, x, y, z); + e.onSpawnWithEgg(null); } } diff --git a/src/main/java/com/hbm/inventory/AssemblerRecipes.java b/src/main/java/com/hbm/inventory/AssemblerRecipes.java index b4619fb04..8e1f21e6d 100644 --- a/src/main/java/com/hbm/inventory/AssemblerRecipes.java +++ b/src/main/java/com/hbm/inventory/AssemblerRecipes.java @@ -201,8 +201,8 @@ public class AssemblerRecipes { makeRecipe(new ComparableStack(ModItems.chopper_wing, 1), new AStack[] {new ComparableStack(ModItems.plate_combine_steel, 6), new ComparableStack(ModItems.ingot_combine_steel, 3), new ComparableStack(ModItems.wire_magnetized_tungsten, 2), },150); makeRecipe(new ComparableStack(ModItems.chopper_blades, 1), new AStack[] {new ComparableStack(ModItems.plate_combine_steel, 8), new OreDictStack("plateSteel", 2), new ComparableStack(ModItems.ingot_combine_steel, 2), },200); makeRecipe(new ComparableStack(ModItems.circuit_aluminium, 1), new AStack[] {new ComparableStack(ModItems.circuit_raw, 1), },50); - makeRecipe(new ComparableStack(ModItems.circuit_copper, 1), new AStack[] {new ComparableStack(ModItems.circuit_aluminium, 1), new ComparableStack(ModItems.wire_copper, 6), new OreDictStack("dustNetherQuartz", 4), new OreDictStack("plateCopper", 1), },100); - makeRecipe(new ComparableStack(ModItems.circuit_red_copper, 1), new AStack[] {new ComparableStack(ModItems.circuit_copper, 1), new ComparableStack(ModItems.wire_red_copper, 6), new OreDictStack("dustGold", 4), new ComparableStack(ModItems.plate_polymer, 1), },150); + makeRecipe(new ComparableStack(ModItems.circuit_copper, 1), new AStack[] {new ComparableStack(ModItems.circuit_aluminium, 1), new ComparableStack(ModItems.wire_copper, 4), new OreDictStack("dustNetherQuartz", 1), new OreDictStack("plateCopper", 1), },100); + makeRecipe(new ComparableStack(ModItems.circuit_red_copper, 1), new AStack[] {new ComparableStack(ModItems.circuit_copper, 1), new ComparableStack(ModItems.wire_red_copper, 4), new OreDictStack("dustGold", 1), new ComparableStack(ModItems.plate_polymer, 1), },150); makeRecipe(new ComparableStack(ModItems.pellet_rtg, 1), new AStack[] {new ComparableStack(ModItems.nugget_pu238, 5), new OreDictStack("plateIron", 2), },50); makeRecipe(new ComparableStack(ModItems.pellet_rtg_weak, 1), new AStack[] {new ComparableStack(ModItems.nugget_u238, 4), new ComparableStack(ModItems.nugget_pu238, 1), new OreDictStack("plateIron", 2), },50); makeRecipe(new ComparableStack(ModItems.pellet_rtg_polonium, 1), new AStack[] {new ComparableStack(ModItems.nugget_polonium, 5), new OreDictStack("plateIron", 2), }, 50); diff --git a/src/main/java/com/hbm/inventory/MachineRecipes.java b/src/main/java/com/hbm/inventory/MachineRecipes.java index a7530b209..9cec6ebd4 100644 --- a/src/main/java/com/hbm/inventory/MachineRecipes.java +++ b/src/main/java/com/hbm/inventory/MachineRecipes.java @@ -1628,14 +1628,14 @@ public class MachineRecipes { break; case CIRCUIT_4: list.add(new ItemStack(ModItems.circuit_red_copper, 1)); - list.add(new ItemStack(ModItems.wire_gold, 6)); - list.add(new ItemStack(ModItems.powder_lapis, 4)); + list.add(new ItemStack(ModItems.wire_gold, 4)); + list.add(new ItemStack(ModItems.powder_lapis, 1)); list.add(new ItemStack(ModItems.ingot_polymer, 1)); break; case CIRCUIT_5: list.add(new ItemStack(ModItems.circuit_gold, 1)); - list.add(new ItemStack(ModItems.wire_schrabidium, 6)); - list.add(new ItemStack(ModItems.powder_diamond, 4)); + list.add(new ItemStack(ModItems.wire_schrabidium, 4)); + list.add(new ItemStack(ModItems.powder_diamond, 1)); list.add(new ItemStack(ModItems.ingot_desh, 1)); break; case POLYMER: diff --git a/src/main/java/com/hbm/lib/HbmWorldGen.java b/src/main/java/com/hbm/lib/HbmWorldGen.java index b7a49692f..bb9a2ef6a 100644 --- a/src/main/java/com/hbm/lib/HbmWorldGen.java +++ b/src/main/java/com/hbm/lib/HbmWorldGen.java @@ -129,6 +129,7 @@ public class HbmWorldGen implements IWorldGenerator { DungeonToolbox.generateOre(world, rand, i, j, WorldConfig.asbestosSpawn * 3, 6, 30, 10, ModBlocks.ore_gneiss_asbestos, ModBlocks.stone_gneiss); DungeonToolbox.generateOre(world, rand, i, j, WorldConfig.lithiumSpawn, 6, 30, 10, ModBlocks.ore_gneiss_lithium, ModBlocks.stone_gneiss); DungeonToolbox.generateOre(world, rand, i, j, WorldConfig.rareSpawn, 6, 30, 10, ModBlocks.ore_gneiss_asbestos, ModBlocks.stone_gneiss); + DungeonToolbox.generateOre(world, rand, i, j, WorldConfig.gassshaleSpawn * 3, 10, 30, 10, ModBlocks.ore_gneiss_gas, ModBlocks.stone_gneiss); DungeonToolbox.generateOre(world, rand, i, j, WorldConfig.uraniumSpawn, 5, 5, 20, ModBlocks.ore_uranium); DungeonToolbox.generateOre(world, rand, i, j, WorldConfig.thoriumSpawn, 5, 5, 25, ModBlocks.ore_thorium); diff --git a/src/main/java/com/hbm/lib/RefStrings.java b/src/main/java/com/hbm/lib/RefStrings.java index 5f29af498..028a0c7ac 100644 --- a/src/main/java/com/hbm/lib/RefStrings.java +++ b/src/main/java/com/hbm/lib/RefStrings.java @@ -3,7 +3,7 @@ package com.hbm.lib; public class RefStrings { public static final String MODID = "hbm"; public static final String NAME = "Hbm's Nuclear Tech Mod"; - public static final String VERSION = "1.0.27 BETA (3725)"; + public static final String VERSION = "1.0.27 BETA (3726)"; //HBM's Beta Naming Convention: //V T (X) //V -> next release version diff --git a/src/main/java/com/hbm/main/CraftingManager.java b/src/main/java/com/hbm/main/CraftingManager.java index 0bd1714db..8fb21f818 100644 --- a/src/main/java/com/hbm/main/CraftingManager.java +++ b/src/main/java/com/hbm/main/CraftingManager.java @@ -1415,7 +1415,7 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_spark_mix, 5), new Object[] { "dustDesh", "dustEuphemium", ModItems.powder_meteorite, ModItems.powder_power, ModItems.powder_nitan_mix })); GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_meteorite, 5), new Object[] { "dustIron", "dustCopper", "dustLithium", "dustTungsten", "dustUranium" })); GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_thermite, 4), new Object[] { "dustIron", "dustIron", "dustIron", "dustAluminum" })); - GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_semtex_mix, 1), new Object[] { ModItems.rocket_fuel, ModItems.cordite, "dustSaltpeter" })); + GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_semtex_mix, 3), new Object[] { ModItems.solid_fuel, ModItems.cordite, "dustSaltpeter" })); GameRegistry.addRecipe(new ItemStack(ModItems.canister_petroil, 9), new Object[] { "RRR", "RLR", "RRR", 'R', ModItems.canister_reoil, 'L', ModItems.canister_canola }); diff --git a/src/main/resources/mcmod.info b/src/main/resources/mcmod.info index 326d2fb97..c291c46f5 100755 --- a/src/main/resources/mcmod.info +++ b/src/main/resources/mcmod.info @@ -3,7 +3,7 @@ "modid": "hbm", "name": "Hbm's Nuclear Tech", "description": "A mod that adds weapons, nuclear themed stuff and machines", - "version":"1.0.27-3725", + "version":"1.0.27-3726", "mcversion": "1.7.10", "url": "", "updateUrl": "",