From c1e0247c76773de752df3f476e2a3e70856abcf4 Mon Sep 17 00:00:00 2001 From: Bob Date: Sun, 30 Aug 2020 23:23:44 +0200 Subject: [PATCH] hot garbage --- src/main/java/assets/hbm/lang/de_DE.lang | 1 + src/main/java/assets/hbm/lang/en_US.lang | 3 +- .../textures/blocks/machine_large_turbine.png | Bin 0 -> 254 bytes .../assets/hbm/textures/entity/maskman.png | Bin 4328 -> 4458 bytes .../hbm/textures/items/chem_icon_BALEFIRE.png | Bin 0 -> 215 bytes .../hbm/textures/items/entanglement_kit.png | Bin 288 -> 350 bytes .../assets/hbm/textures/items/telepad.png | Bin 351 -> 390 bytes .../com/hbm/blocks/machine/MachineITER.java | 21 ++++++ .../blocks/machine/MachinePlasmaHeater.java | 17 +++++ .../com/hbm/inventory/AssemblerRecipes.java | 10 +++ .../java/com/hbm/inventory/FluidTank.java | 1 - .../java/com/hbm/inventory/FusionRecipes.java | 12 ++-- .../com/hbm/inventory/MachineRecipes.java | 12 ++++ .../java/com/hbm/inventory/MagicRecipes.java | 6 ++ .../items/machine/ItemChemistryTemplate.java | 5 +- src/main/java/com/hbm/lib/RefStrings.java | 2 +- .../java/com/hbm/main/CraftingManager.java | 1 - src/main/java/com/hbm/main/MainRegistry.java | 4 -- .../java/com/hbm/main/ModEventHandler.java | 66 ++++++++++++++++-- .../com/hbm/main/ModEventHandlerClient.java | 2 - .../tileentity/machine/TileEntityITER.java | 6 +- .../TileEntityMachineLargeTurbine.java | 10 ++- .../machine/TileEntityPlasmaStruct.java | 2 +- 23 files changed, 153 insertions(+), 28 deletions(-) create mode 100644 src/main/java/assets/hbm/textures/blocks/machine_large_turbine.png create mode 100644 src/main/java/assets/hbm/textures/items/chem_icon_BALEFIRE.png diff --git a/src/main/java/assets/hbm/lang/de_DE.lang b/src/main/java/assets/hbm/lang/de_DE.lang index d9ebc9495..af27107bf 100644 --- a/src/main/java/assets/hbm/lang/de_DE.lang +++ b/src/main/java/assets/hbm/lang/de_DE.lang @@ -48,6 +48,7 @@ achievement.tasteofblood.desc=ist nicht Teil des Testprotokolls. achievement.tasteofblood=Der Geschmack von Blut chem.ASPHALT=Asphaltherstellung +chem.BALEFIRE=BF-Raketentreibstoffherstellung chem.BP_BIOFUEL=Biodieselumesterung chem.BP_BIOGAS=Biogasherstellung chem.CC_HEATING=Fortgeschrittene Kohleverflüssigung diff --git a/src/main/java/assets/hbm/lang/en_US.lang b/src/main/java/assets/hbm/lang/en_US.lang index 42cc63259..dbb78e968 100644 --- a/src/main/java/assets/hbm/lang/en_US.lang +++ b/src/main/java/assets/hbm/lang/en_US.lang @@ -14,7 +14,7 @@ achievement.fiend2=Delinquent 2: Delinquent Harder achievement.fiend=Delinquent achievement.freytag.desc=Herold's life guards achievement.freytag=Freytag -achievement.hidden.desc=Kill an enderman with a falling boxcar while being on fire and having more than 250 RADs. +achievement.hidden.desc=Kill a tainted creeper with a falling boxcar. achievement.hidden=Hidden Catalog achievement.horizonsBonus.desc=honest to god what the hell is wrong with you achievement.horizonsBonus=Slam Dunk Diarrhea @@ -48,6 +48,7 @@ achievement.tasteofblood.desc=is not part of any testing protocol. achievement.tasteofblood=The Taste of Blood chem.ASPHALT=Asphalt Production +chem.BALEFIRE=BF Rocket Fuel Mixing chem.BP_BIOFUEL=Biofuel Transesterification chem.BP_BIOGAS=Biogas Production chem.CC_HEATING=Advanced Coal Liquefaction diff --git a/src/main/java/assets/hbm/textures/blocks/machine_large_turbine.png b/src/main/java/assets/hbm/textures/blocks/machine_large_turbine.png new file mode 100644 index 0000000000000000000000000000000000000000..afd5da6049c58ae7cec2fd770a612d1f805f8b58 GIT binary patch literal 254 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#VfEUyD}#S6E_->0 zxv~Gry~FMcju$8HjTP0K-FVdQ&MBb@0O#pr Ao&W#< literal 0 HcmV?d00001 diff --git a/src/main/java/assets/hbm/textures/entity/maskman.png b/src/main/java/assets/hbm/textures/entity/maskman.png index 4dd3b5281784bff5952bb4b8bcf0bd88bca9bab7..f66ca0e4351f85ca8c1ae01cb7dbeeb7b6bc6b68 100644 GIT binary patch delta 4448 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 LNkvXXu0mjfnw>@D diff --git a/src/main/java/assets/hbm/textures/items/chem_icon_BALEFIRE.png b/src/main/java/assets/hbm/textures/items/chem_icon_BALEFIRE.png new file mode 100644 index 0000000000000000000000000000000000000000..a8fba29289a7f2e15734603bbf6d1ee38475751a GIT binary patch literal 215 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vfm=bYb{e(at0YSp`GEd{!! z&z4SXU&N-!;!^PJ=8?q~T*(WbIbGT)?RV$rW1G2VsdKOV6j zlOFeZ-CSkvaX;nQJokWxy}x3timQP5%l)Bg!mYMnj5U>&CTwN@ZZRpvQIJg$=rRUR LS3j3^P6v^hgC4V z2@xCxu!%*UFYz{;IYHuY_+l`C*4|ba0JQdy=S#f4JOjvt6Ms$58+qj<;?RIgrePC&5H?E(N4qwzg$VzKyKpjZ|7vhSkuI&VR6a-JJJ`fF z8cWDo<0h?xbS-rqLTe9cngRem=JU0mwU4q3RI76W_tOtWpm19;B9(~%0000)XoT`fJfePFPJ-7*qpb8RV z5{ML%%L(VX55o)_A)(#Ttrob6=IDoW&ce5N>kjy@60`ojK0B+E>Ekp#&{Og?}b{{XZ z?qk22h^$JA5f2$))^&dcsvd+*-rfW23L>)0IUpiq<{}4u-vcPGP(5Qzj&qP_0LZQo v$hP~Ihe$*UA1((evn+TRhRdB-uJsp4*pxhWV)_f znEWV;_V|jSgY)@`ahu~z_lnAc>$-&wYH(NEb6p~~!#enIIDaM2bI$MINYj)T|BO7( z@!neitktmEs!qV+Q(8Kd?0O%~20NCv|Hqhay3~IL99RpAnNGS<|9sr(ad_g%M z4u_>@Z3A%}W7~EK?n+9@YPG6(7QpiR%38D8j5JLF$g&K8BuR{=2LMVb5r(1p-Udx3 z6Gr_-^$DZ?f>g`vTL1=wfib9;D5XTB)+{OojoK$lDFNX7zVRpCT_v!Hw)J|3o7L`#GGWU4L6b8s}4q!ED-_V`Z=L`L@6LA$mWR?QhXF8$_b(Z$qWEs9LI{8MN?=J zbe^QgUn-AYdY0000= 12) { + + for(int l = 0; l < 4; l++) + world.spawnEntityInWorld(new EntityItem(world, x + 0.5, y + 0.5, z + 0.5, new ItemStack(ModBlocks.fusion_conductor, 64))); + + world.spawnEntityInWorld(new EntityItem(world, x + 0.5, y + 0.5, z + 0.5, new ItemStack(ModBlocks.fusion_conductor, 36))); + world.spawnEntityInWorld(new EntityItem(world, x + 0.5, y + 0.5, z + 0.5, new ItemStack(ModBlocks.fusion_center, 64))); + world.spawnEntityInWorld(new EntityItem(world, x + 0.5, y + 0.5, z + 0.5, new ItemStack(ModBlocks.fusion_motor, 4))); + world.spawnEntityInWorld(new EntityItem(world, x + 0.5, y + 0.5, z + 0.5, new ItemStack(ModBlocks.reinforced_glass, 8))); + world.spawnEntityInWorld(new EntityItem(world, x + 0.5, y + 0.5, z + 0.5, new ItemStack(ModBlocks.struct_iter_core, 1))); + } + + super.breakBlock(world, x, y, z, block, i); + } } diff --git a/src/main/java/com/hbm/blocks/machine/MachinePlasmaHeater.java b/src/main/java/com/hbm/blocks/machine/MachinePlasmaHeater.java index 72a495122..aa52d6311 100644 --- a/src/main/java/com/hbm/blocks/machine/MachinePlasmaHeater.java +++ b/src/main/java/com/hbm/blocks/machine/MachinePlasmaHeater.java @@ -8,8 +8,11 @@ import com.hbm.tileentity.TileEntityProxyCombo; import com.hbm.tileentity.machine.TileEntityMachinePlasmaHeater; import cpw.mods.fml.common.network.internal.FMLNetworkHandler; +import net.minecraft.block.Block; import net.minecraft.block.material.Material; +import net.minecraft.entity.item.EntityItem; import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.AxisAlignedBB; import net.minecraft.world.IBlockAccess; @@ -123,5 +126,19 @@ public class MachinePlasmaHeater extends BlockDummyable { public int getOffset() { return 1; } + + @Override + public void breakBlock(World world, int x, int y, int z, Block block, int i) { + + if(i >= 12) { + + for(int l = 0; l < 2; l++) + world.spawnEntityInWorld(new EntityItem(world, x + 0.5, y + 0.5, z + 0.5, new ItemStack(ModBlocks.fusion_heater, 64))); + world.spawnEntityInWorld(new EntityItem(world, x + 0.5, y + 0.5, z + 0.5, new ItemStack(ModBlocks.fusion_heater, 7))); + world.spawnEntityInWorld(new EntityItem(world, x + 0.5, y + 0.5, z + 0.5, new ItemStack(ModBlocks.struct_plasma_core, 1))); + } + + super.breakBlock(world, x, y, z, block, i); + } } diff --git a/src/main/java/com/hbm/inventory/AssemblerRecipes.java b/src/main/java/com/hbm/inventory/AssemblerRecipes.java index 6d0d11f91..dcb8ac3a5 100644 --- a/src/main/java/com/hbm/inventory/AssemblerRecipes.java +++ b/src/main/java/com/hbm/inventory/AssemblerRecipes.java @@ -471,6 +471,16 @@ public class AssemblerRecipes { new ComparableStack(ModItems.circuit_red_copper, 24), new ComparableStack(ModItems.circuit_gold, 12) }, 600); + makeRecipe(new ComparableStack(ModBlocks.machine_large_turbine, 1), new AStack[] { + new ComparableStack(ModItems.hull_big_steel, 1), + new OreDictStack("plateSteel", 12), + new ComparableStack(ModItems.turbine_titanium, 3), + new ComparableStack(ModItems.rotor_steel, 2), + new ComparableStack(ModItems.generator_steel, 2), + new ComparableStack(ModItems.bolt_compound, 3), + new ComparableStack(ModItems.pipes_steel, 1), + new ComparableStack(ModItems.circuit_aluminium, 1), + }, 20); } private static void makeRecipe(ComparableStack out, AStack[] in, int duration) { diff --git a/src/main/java/com/hbm/inventory/FluidTank.java b/src/main/java/com/hbm/inventory/FluidTank.java index 41252b50c..f7eb6331d 100644 --- a/src/main/java/com/hbm/inventory/FluidTank.java +++ b/src/main/java/com/hbm/inventory/FluidTank.java @@ -11,7 +11,6 @@ import com.hbm.items.machine.ItemFluidIdentifier; import com.hbm.lib.RefStrings; import com.hbm.packet.PacketDispatcher; import com.hbm.packet.TEFluidPacket; -import com.hbm.tileentity.machine.TileEntityITER; import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint; import net.minecraft.client.gui.inventory.GuiContainer; diff --git a/src/main/java/com/hbm/inventory/FusionRecipes.java b/src/main/java/com/hbm/inventory/FusionRecipes.java index 5a6cd9332..ea5052cde 100644 --- a/src/main/java/com/hbm/inventory/FusionRecipes.java +++ b/src/main/java/com/hbm/inventory/FusionRecipes.java @@ -42,12 +42,12 @@ public class FusionRecipes { public static int getSteamProduction(FluidType plasma) { switch(plasma) { - case PLASMA_DT: return 120; - case PLASMA_HD: return 80; - case PLASMA_HT: return 100; - case PLASMA_XM: return 240; - case PLASMA_BF: return 640; - default: return 9; + case PLASMA_DT: return 30; + case PLASMA_HD: return 20; + case PLASMA_HT: return 25; + case PLASMA_XM: return 60; + case PLASMA_BF: return 160; + default: return 0; } } diff --git a/src/main/java/com/hbm/inventory/MachineRecipes.java b/src/main/java/com/hbm/inventory/MachineRecipes.java index eeb9b1571..0d6dd54f8 100644 --- a/src/main/java/com/hbm/inventory/MachineRecipes.java +++ b/src/main/java/com/hbm/inventory/MachineRecipes.java @@ -1694,6 +1694,9 @@ public class MachineRecipes { list.add(new ItemStack(ModItems.powder_dura_steel, 1)); list.add(new ItemStack(ModItems.powder_fire, 1)); break; + case BALEFIRE: + list.add(new ItemStack(ModItems.egg_balefire_shard, 1)); + break; default: break; } @@ -1893,6 +1896,9 @@ public class MachineRecipes { input[0] = new FluidStack(100, FluidType.ACID); input[1] = new FluidStack(200, FluidType.MERCURY); break; + case BALEFIRE: + input[0] = new FluidStack(6000, FluidType.KEROSENE); + break; default: break; } @@ -2022,6 +2028,9 @@ public class MachineRecipes { case SATURN: output[0] = new ItemStack(ModItems.ingot_saturnite, 1); break; + case BALEFIRE: + output[0] = new ItemStack(ModItems.powder_balefire, 1); + break; default: break; } @@ -2142,6 +2151,9 @@ public class MachineRecipes { case XENON: output[0] = new FluidStack(50, FluidType.XENON); break; + case BALEFIRE: + output[0] = new FluidStack(8000, FluidType.BALEFIRE); + break; default: break; } diff --git a/src/main/java/com/hbm/inventory/MagicRecipes.java b/src/main/java/com/hbm/inventory/MagicRecipes.java index f027f3c39..5cf3afd70 100644 --- a/src/main/java/com/hbm/inventory/MagicRecipes.java +++ b/src/main/java/com/hbm/inventory/MagicRecipes.java @@ -59,6 +59,12 @@ public class MagicRecipes { new ComparableStack(ModItems.powder_magic), new ComparableStack(ModItems.powder_magic), new ComparableStack(ModItems.ingot_starmetal))); + + recipes.add(new MagicRecipe(new ItemStack(ModItems.gun_bf), + new ComparableStack(ModItems.gun_fatman), + new ComparableStack(ModItems.egg_balefire_shard), + new ComparableStack(ModItems.powder_magic), + new ComparableStack(ModItems.powder_magic))); } public static List getRecipes() { diff --git a/src/main/java/com/hbm/items/machine/ItemChemistryTemplate.java b/src/main/java/com/hbm/items/machine/ItemChemistryTemplate.java index a4e0b3e99..4d2a7a466 100644 --- a/src/main/java/com/hbm/items/machine/ItemChemistryTemplate.java +++ b/src/main/java/com/hbm/items/machine/ItemChemistryTemplate.java @@ -82,7 +82,8 @@ public class ItemChemistryTemplate extends Item { SOLID_FUEL, ELECTROLYSIS, XENON, - SATURN; + SATURN, + BALEFIRE; public static EnumChemistryTemplate getEnum(int i) { if(i < EnumChemistryTemplate.values().length) @@ -252,6 +253,8 @@ public class ItemChemistryTemplate extends Item { return 600; case SATURN: return 600; + case BALEFIRE: + return 100; default: return 100; } diff --git a/src/main/java/com/hbm/lib/RefStrings.java b/src/main/java/com/hbm/lib/RefStrings.java index 9a679128b..2ed5a1035 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 (3605)"; + public static final String VERSION = "1.0.27 BETA (3612)"; //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 152bb6e07..2cf7ab2e9 100644 --- a/src/main/java/com/hbm/main/CraftingManager.java +++ b/src/main/java/com/hbm/main/CraftingManager.java @@ -745,7 +745,6 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_fatman, 1), new Object[] { "SSI", "IIM", "WPH", 'S', "plateSteel", 'I', "ingotSteel", 'W', ModItems.wire_aluminium, 'H', ModItems.hull_small_steel, 'P', Item.getItemFromBlock(Blocks.piston), 'M', ModItems.mechanism_launcher_2 })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_mirv, 1), new Object[] { "LLL", "WFW", "SSS", 'S', "plateSteel", 'L', "plateLead", 'W', ModItems.wire_gold, 'F', ModItems.gun_fatman })); GameRegistry.addRecipe(new ItemStack(ModItems.gun_proto, 1), new Object[] { "LLL", "WFW", "SSS", 'S', ModItems.plate_polymer, 'L', ModItems.plate_desh, 'W', ModItems.wire_tungsten, 'F', ModItems.gun_fatman }); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_bf, 1), new Object[] { "LLL", "WFW", "SSS", 'S', ModItems.plate_paa, 'L', "plateDenseLead", 'W', ModItems.wire_advanced_alloy, 'F', ModItems.gun_mirv })); GameRegistry.addRecipe(new ItemStack(ModItems.gun_bf_ammo, 1), new Object[] { " S ", "EBE", " S ", 'S', ModItems.hull_small_steel, 'E', ModItems.powder_power, 'B', ModItems.egg_balefire_shard }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_mp40, 1), new Object[] { "IIM", " SW", " S ", 'S', "plateSteel", 'I', "ingotSteel", 'W', "plankWood", 'M', ModItems.mechanism_rifle_2 })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_flechette, 1), new Object[] { "PPM", "TIS", "G ", 'P', "plateSteel", 'M', ModItems.mechanism_rifle_2, 'T', ModItems.hull_small_steel, 'I', "ingotSteel", 'S', ModItems.ingot_polymer, 'G', ModItems.mechanism_launcher_1 })); diff --git a/src/main/java/com/hbm/main/MainRegistry.java b/src/main/java/com/hbm/main/MainRegistry.java index 9f6531b16..d8a5e5ae3 100644 --- a/src/main/java/com/hbm/main/MainRegistry.java +++ b/src/main/java/com/hbm/main/MainRegistry.java @@ -18,7 +18,6 @@ import net.minecraftforge.common.ForgeChunkManager.LoadingCallback; import net.minecraftforge.common.ForgeChunkManager.Ticket; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.common.config.Configuration; -import net.minecraftforge.common.config.Property; import net.minecraftforge.common.util.EnumHelper; import cpw.mods.fml.common.FMLCommonHandler; import cpw.mods.fml.common.Mod; @@ -49,9 +48,6 @@ import com.hbm.entity.item.EntityMovingItem; import com.hbm.entity.logic.*; import com.hbm.entity.missile.*; import com.hbm.entity.mob.*; -import com.hbm.entity.mob.botprime.EntityBOTPrimeBody; -import com.hbm.entity.mob.botprime.EntityBOTPrimeHead; -import com.hbm.entity.mob.sodtekhnologiyah.*; import com.hbm.entity.particle.*; import com.hbm.entity.projectile.*; import com.hbm.handler.*; diff --git a/src/main/java/com/hbm/main/ModEventHandler.java b/src/main/java/com/hbm/main/ModEventHandler.java index d913ef42c..173707e13 100644 --- a/src/main/java/com/hbm/main/ModEventHandler.java +++ b/src/main/java/com/hbm/main/ModEventHandler.java @@ -13,7 +13,9 @@ import com.hbm.config.GeneralConfig; import com.hbm.config.RadiationConfig; import com.hbm.config.WorldConfig; import com.hbm.entity.missile.EntityMissileBaseAdvanced; +import com.hbm.entity.missile.EntityMissileCustom; import com.hbm.entity.mob.EntityNuclearCreeper; +import com.hbm.entity.mob.EntityTaintedCreeper; import com.hbm.entity.projectile.EntityBurningFOEQ; import com.hbm.entity.projectile.EntityMeteor; import com.hbm.handler.ArmorUtil; @@ -40,7 +42,6 @@ import cpw.mods.fml.common.gameevent.TickEvent.WorldTickEvent; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.item.EntityItem; import net.minecraft.entity.monster.EntityCreeper; -import net.minecraft.entity.monster.EntityEnderman; import net.minecraft.entity.monster.EntitySkeleton; import net.minecraft.entity.monster.EntityZombie; import net.minecraft.entity.passive.EntityCow; @@ -52,12 +53,14 @@ import net.minecraft.init.Blocks; import net.minecraft.item.Item; import net.minecraft.item.ItemArmor; import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; import net.minecraft.potion.Potion; import net.minecraft.potion.PotionEffect; import net.minecraft.tileentity.TileEntitySign; import net.minecraft.util.ChatComponentText; import net.minecraft.util.EnumChatFormatting; import net.minecraft.util.MathHelper; +import net.minecraft.util.Vec3; import net.minecraft.world.World; import net.minecraft.world.chunk.Chunk; import net.minecraftforge.event.ServerChatEvent; @@ -104,14 +107,11 @@ public class ModEventHandler event.entity.dropItem(ModItems.book_of_, 1); } - if(event.entity instanceof EntityEnderman && event.source == ModDamageSource.boxcar) { + if(event.entity instanceof EntityTaintedCreeper && event.source == ModDamageSource.boxcar) { for(Object o : event.entity.worldObj.playerEntities) { EntityPlayer player = (EntityPlayer)o; - - if(player.getEntityData().getFloat("hfr_radiation") > 250 && player.isBurning()) { - player.triggerAchievement(MainRegistry.bobHidden); - } + player.triggerAchievement(MainRegistry.bobHidden); } } } @@ -500,6 +500,55 @@ public class ModEventHandler } } } + + //TODO: rewrite this so it doesn't look like shit + if(player.worldObj.isRemote && event.phase == event.phase.START && !player.isInvisible() && !player.isSneaking()) { + + if(player.getUniqueID().toString().equals(Library.HbMinecraft)) { + + int i = player.ticksExisted * 3; + + Vec3 vec = Vec3.createVectorHelper(3, 0, 0); + vec.rotateAroundY((float) (i * Math.PI / 180D)); + + NBTTagCompound p1 = new NBTTagCompound(); + p1.setString("type", "vanillaExt"); + p1.setString("mode", "reddust"); + p1.setDouble("posX", player.posX + vec.xCoord); + p1.setDouble("posY", player.posY + 1.5); + p1.setDouble("posZ", player.posZ + vec.zCoord); + p1.setDouble("mX", 51F/256F); + p1.setDouble("mY", 64F/256F); + p1.setDouble("mZ", 119F/256F); + MainRegistry.proxy.effectNT(p1); + + vec.rotateAroundY((float) (Math.PI * 2D / 3D)); + + NBTTagCompound p2 = new NBTTagCompound(); + p2.setString("type", "vanillaExt"); + p2.setString("mode", "reddust"); + p2.setDouble("posX", player.posX + vec.xCoord); + p2.setDouble("posY", player.posY + 1.5); + p2.setDouble("posZ", player.posZ + vec.zCoord); + p2.setDouble("mX", 106F/256F); + p2.setDouble("mY", 41F/256F); + p2.setDouble("mZ", 143F/256F); + MainRegistry.proxy.effectNT(p2); + + vec.rotateAroundY((float) (Math.PI * 2D / 3D)); + + NBTTagCompound p3 = new NBTTagCompound(); + p3.setString("type", "vanillaExt"); + p3.setString("mode", "reddust"); + p3.setDouble("posX", player.posX + vec.xCoord); + p3.setDouble("posY", player.posY + 1.5); + p3.setDouble("posZ", player.posZ + vec.zCoord); + p3.setDouble("mX", 223F/256F); + p3.setDouble("mY", 55F/256F); + p3.setDouble("mZ", 149F/256F); + MainRegistry.proxy.effectNT(p3); + } + } } @SubscribeEvent @@ -509,6 +558,11 @@ public class ModEventHandler { ((EntityMissileBaseAdvanced)evt.entity).loadNeighboringChunks(evt.newChunkX, evt.newChunkZ); } + + if(evt.entity instanceof EntityMissileCustom) + { + ((EntityMissileCustom)evt.entity).loadNeighboringChunks(evt.newChunkX, evt.newChunkZ); + } } /*@SubscribeEvent diff --git a/src/main/java/com/hbm/main/ModEventHandlerClient.java b/src/main/java/com/hbm/main/ModEventHandlerClient.java index 0d0efa0bf..508c9c04f 100644 --- a/src/main/java/com/hbm/main/ModEventHandlerClient.java +++ b/src/main/java/com/hbm/main/ModEventHandlerClient.java @@ -36,8 +36,6 @@ import com.hbm.sound.MovingSoundPlayerLoop.EnumHbmSound; import cpw.mods.fml.common.eventhandler.SubscribeEvent; import net.minecraft.client.Minecraft; import net.minecraft.client.entity.AbstractClientPlayer; -import net.minecraft.client.gui.FontRenderer; -import net.minecraft.client.gui.ScaledResolution; import net.minecraft.client.multiplayer.WorldClient; import net.minecraft.client.renderer.entity.RenderPlayer; import net.minecraft.entity.player.EntityPlayer; diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityITER.java b/src/main/java/com/hbm/tileentity/machine/TileEntityITER.java index 901884b7e..11513ed83 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityITER.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityITER.java @@ -27,8 +27,8 @@ import net.minecraft.util.Vec3; public class TileEntityITER extends TileEntityMachineBase implements IConsumer, IFluidAcceptor, IFluidSource { public long power; - public static final long maxPower = 100000000; - public static final int powerReq = 1000000; + public static final long maxPower = 10000000; + public static final int powerReq = 100000; public int age = 0; public List list = new ArrayList(); public FluidTank[] tanks; @@ -47,7 +47,7 @@ public class TileEntityITER extends TileEntityMachineBase implements IConsumer, public TileEntityITER() { super(5); tanks = new FluidTank[2]; - tanks[0] = new FluidTank(FluidType.WATER, 128000, 0); + tanks[0] = new FluidTank(FluidType.WATER, 1280000, 0); tanks[1] = new FluidTank(FluidType.ULTRAHOTSTEAM, 128000, 1); plasma = new FluidTank(FluidType.PLASMA_DT, 16000, 2); } diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineLargeTurbine.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineLargeTurbine.java index 267f34069..90350c0ce 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineLargeTurbine.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineLargeTurbine.java @@ -33,6 +33,7 @@ public class TileEntityMachineLargeTurbine extends TileEntityMachineBase impleme public List list2 = new ArrayList(); public FluidTank[] tanks; + private boolean shouldTurn; public float rotor; public float lastRotor; @@ -67,6 +68,8 @@ public class TileEntityMachineLargeTurbine extends TileEntityMachineBase impleme tanks[0].loadTank(2, 3, slots); power = Library.chargeItemsFromTE(slots, 4, power, maxPower); + boolean operational = false; + Object[] outs = MachineRecipes.getTurbineOutput(tanks[0].getTankType()); if(outs == null) { @@ -79,6 +82,9 @@ public class TileEntityMachineLargeTurbine extends TileEntityMachineBase impleme //TODO: handle this dynamically instead of a 16k iteration for loop for(int i = 0; i < processMax; i++) { if(tanks[0].getFill() >= (Integer)outs[2] && tanks[1].getFill() + (Integer)outs[1] <= tanks[1].getMaxFill()) { + + operational = true; + tanks[0].setFill(tanks[0].getFill() - (Integer)outs[2]); tanks[1].setFill(tanks[1].getFill() + (Integer)outs[1]); @@ -99,12 +105,13 @@ public class TileEntityMachineLargeTurbine extends TileEntityMachineBase impleme NBTTagCompound data = new NBTTagCompound(); data.setLong("power", power); + data.setBoolean("operational", operational); this.networkPack(data, 50); } else { this.lastRotor = this.rotor; - if(tanks[0].getFill() > 0) { + if(shouldTurn) { this.rotor += 15F; @@ -118,6 +125,7 @@ public class TileEntityMachineLargeTurbine extends TileEntityMachineBase impleme public void networkUnpack(NBTTagCompound data) { this.power = data.getLong("power"); + this.shouldTurn = data.getBoolean("operational"); } public long getPowerScaled(int i) { diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityPlasmaStruct.java b/src/main/java/com/hbm/tileentity/machine/TileEntityPlasmaStruct.java index 3bccb09a5..49b87715a 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityPlasmaStruct.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityPlasmaStruct.java @@ -53,7 +53,7 @@ public class TileEntityPlasmaStruct extends TileEntity { } } - rot = MultiblockHandlerXR.rotate(new int[] {4, -3, 1, 1, 1, 1}, dir); + rot = MultiblockHandlerXR.rotate(new int[] {4, -3, 2, 1, 1, 1}, dir); for(int a = xCoord - rot[4]; a <= xCoord + rot[5]; a++) { for(int b = yCoord - rot[1]; b <= yCoord + rot[0]; b++) {