More NEI recipe handlers, cyclotron functionality, internal structure

This commit is contained in:
HbmMods 2017-05-17 13:31:08 +02:00
parent 381cf7cb5a
commit 1778eb817f
141 changed files with 4559 additions and 284 deletions

View File

@ -33,6 +33,8 @@ death.attack.cheater=%1$s's Innereien wurden zu Hafer. (???)
death.attack.laser=%1$s wurde von %2$s in Asche verwandet.
death.attack.rubble=%1$s wurde von Schutt zerquetscht.
death.attack.shrapnel=%1$s wurde von einem Schrapnell zerfetzt.
death.attack.teleporter=%1$s wurde ins Nichts teleportiert.
death.attack.blackhole=%1$s wurde spaghettifiziert.
item.redstone_sword.name=Redstoneschwert
item.big_sword.name=Großes Schwert
@ -149,6 +151,8 @@ tile.machine_reix_mainframe.name=Rei-X Hauptrechner (WIP)
container.reix=Rei-X Hauptrechner
tile.machine_industrial_generator.name=Industrieller Generator
container.iGenerator=Industrieller Generator
tile.machine_cyclotron.name=Zyklotron
container.cyclotron=Zyklotron
tile.rail_highspeed.name=Hochgeschwindigkeitsschienen
tile.rail_booster.name=Hochgeschwindigkeits-Boosterschienen
@ -1028,6 +1032,15 @@ item.blades_advanced_alloy.name=Fortgeschrittenes Sägeblatt
item.blades_combine_steel.name=CMB-Sägeblatt
item.blades_schrabidium.name=Schrabidiumsägeblatt
item.part_lithium.name=Lithiumstaubkiste
item.part_beryllium.name=Berylliumstaubkiste
item.part_carbon.name=Kohlenstoffstaubkiste
item.part_copper.name=Kupferstaubkiste
item.part_plutonium.name=Plutoniumstaubkiste
item.crystal_energy.name=Energiekristall
item.pellet_coolant.name=Kühlcluster
item.linker.name=Telelinker
item.thermo_element.name=Thermoelektrisches Element

View File

@ -33,6 +33,8 @@ death.attack.cheater=%1$s's intestines turned into oats. (???)
death.attack.laser=%1$s was turned into ash by %2$s.
death.attack.rubble=%1$s was squashed by debris.
death.attack.shrapnel=%1$s was ragged by a shrapnel.
death.attack.teleporter=%1$s was teleported into nothingness.
death.attack.blackhole=%1$s was spaghettified.
item.redstone_sword.name=Redstone Sword
item.big_sword.name=Great Sword
@ -149,6 +151,8 @@ tile.machine_reix_mainframe.name=Rei-X Mainframe (WIP)
container.reix=Rei-X Mainframe
tile.machine_industrial_generator.name=Industrial Generator
container.iGenerator=Industrial Generator
tile.machine_cyclotron.name=Cyclotron
container.cyclotron=Cyclotron
tile.rail_highspeed.name=High Speed Rail
tile.rail_booster.name=High Speed Booster Rail
@ -1028,6 +1032,15 @@ item.blades_advanced_alloy.name=Advanced Shredder Blades
item.blades_combine_steel.name=CMB Shredder Blades
item.blades_schrabidium.name=Schrabidium Shredder Blades
item.part_lithium.name=Box of Lithium Dust
item.part_beryllium.name=Box of Beryllium Dust
item.part_carbon.name=Box of Carbon Dust
item.part_copper.name=Box of Copper Dust
item.part_plutonium.name=Box of Plutonium Dust
item.crystal_energy.name=Energy Crystal
item.pellet_coolant.name=Coolant Cluster
item.linker.name=Telelinker
item.thermo_element.name=Thermoelectric Element

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 341 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 354 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 240 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 297 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 264 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 257 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 261 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 255 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 251 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 363 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 267 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 270 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 94 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 234 KiB

View File

@ -51,6 +51,7 @@ import com.hbm.blocks.machine.BlockHatch;
import com.hbm.blocks.machine.BlockReactor;
import com.hbm.blocks.machine.BlockSeal;
import com.hbm.blocks.machine.DummyBlockCentrifuge;
import com.hbm.blocks.machine.DummyBlockCyclotron;
import com.hbm.blocks.machine.DummyBlockIGenerator;
import com.hbm.blocks.machine.FWatzCore;
import com.hbm.blocks.machine.FWatzHatch;
@ -63,6 +64,7 @@ import com.hbm.blocks.machine.MachineBattery;
import com.hbm.blocks.machine.MachineCMBFactory;
import com.hbm.blocks.machine.MachineCentrifuge;
import com.hbm.blocks.machine.MachineCoal;
import com.hbm.blocks.machine.MachineCyclotron;
import com.hbm.blocks.machine.MachineDeuterium;
import com.hbm.blocks.machine.MachineDiFurnace;
import com.hbm.blocks.machine.MachineDiesel;
@ -306,6 +308,9 @@ public class ModBlocks {
public static Block machine_industrial_generator;
public static final int guiID_machine_industrial_generator = 39;
public static Block machine_cyclotron;
public static final int guiID_machine_cyclotron = 41;
public static Block machine_electric_furnace_off;
public static Block machine_electric_furnace_on;
@ -459,6 +464,8 @@ public class ModBlocks {
public static Block dummy_block_igenerator;
public static Block dummy_port_igenerator;
public static Block dummy_block_centrifuge;
public static Block dummy_block_cyclotron;
public static Block dummy_port_cyclotron;
private static void initializeBlock() {
@ -617,6 +624,7 @@ public class ModBlocks {
machine_generator = new MachineGenerator(Material.iron).setBlockName("machine_generator").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabBlock);
machine_industrial_generator = new MachineIGenerator(Material.iron).setBlockName("machine_industrial_generator").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabBlock).setBlockTextureName(RefStrings.MODID + ":industrial_generator");
machine_cyclotron = new MachineCyclotron(Material.iron).setBlockName("machine_cyclotron").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabBlock).setBlockTextureName(RefStrings.MODID + ":cyclotron");
machine_electric_furnace_off = new MachineElectricFurnace(false).setBlockName("machine_electric_furnace_off").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabBlock);
machine_electric_furnace_on = new MachineElectricFurnace(true).setBlockName("machine_electric_furnace_on").setHardness(5.0F).setLightLevel(1.0F).setResistance(10.0F);
@ -751,6 +759,8 @@ public class ModBlocks {
dummy_block_igenerator = new DummyBlockIGenerator(Material.iron).setBlockName("dummy_block_igenerator").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel");
dummy_port_igenerator = new DummyBlockIGenerator(Material.iron).setBlockName("dummy_port_igenerator").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel");
dummy_block_centrifuge = new DummyBlockCentrifuge(Material.iron).setBlockName("dummy_block_centrifuge").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel");
dummy_block_cyclotron = new DummyBlockCyclotron(Material.iron).setBlockName("dummy_block_cyclotron").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel");
dummy_port_cyclotron = new DummyBlockCyclotron(Material.iron).setBlockName("dummy_port_cyclotron").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel");
}
private static void registerBlock() {
@ -918,6 +928,7 @@ public class ModBlocks {
GameRegistry.registerBlock(machine_diesel, machine_diesel.getUnlocalizedName());
GameRegistry.registerBlock(machine_generator, machine_generator.getUnlocalizedName());
GameRegistry.registerBlock(machine_industrial_generator, machine_industrial_generator.getUnlocalizedName());
GameRegistry.registerBlock(machine_cyclotron, machine_cyclotron.getUnlocalizedName());
GameRegistry.registerBlock(machine_rtg_grey, machine_rtg_grey.getUnlocalizedName());
//GameRegistry.registerBlock(machine_rtg_red, machine_rtg_red.getUnlocalizedName());
//GameRegistry.registerBlock(machine_rtg_orange, machine_rtg_orange.getUnlocalizedName());
@ -1029,6 +1040,8 @@ public class ModBlocks {
GameRegistry.registerBlock(dummy_block_igenerator, dummy_block_igenerator.getUnlocalizedName());
GameRegistry.registerBlock(dummy_port_igenerator, dummy_port_igenerator.getUnlocalizedName());
GameRegistry.registerBlock(dummy_block_centrifuge, dummy_block_centrifuge.getUnlocalizedName());
GameRegistry.registerBlock(dummy_block_cyclotron, dummy_block_cyclotron.getUnlocalizedName());
GameRegistry.registerBlock(dummy_port_cyclotron, dummy_port_cyclotron.getUnlocalizedName());
//???
GameRegistry.registerBlock(crystal_virus, crystal_virus.getUnlocalizedName());

View File

@ -6,7 +6,7 @@ import com.hbm.blocks.ModBlocks;
import com.hbm.interfaces.IDummy;
import com.hbm.main.MainRegistry;
import com.hbm.tileentity.TileEntityDummy;
import com.hbm.tileentity.TileEntityIGenerator;
import com.hbm.tileentity.TileEntityMachineIGenerator;
import com.hbm.tileentity.TileEntityMachineCentrifuge;
import com.hbm.tileentity.TileEntityMachineElectricFurnace;

View File

@ -0,0 +1,105 @@
package com.hbm.blocks.machine;
import java.util.Random;
import com.hbm.blocks.ModBlocks;
import com.hbm.interfaces.IDummy;
import com.hbm.main.MainRegistry;
import com.hbm.tileentity.TileEntityDummy;
import com.hbm.tileentity.TileEntityMachineIGenerator;
import com.hbm.tileentity.TileEntityMachineCyclotron;
import cpw.mods.fml.common.network.internal.FMLNetworkHandler;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.block.Block;
import net.minecraft.block.BlockContainer;
import net.minecraft.block.material.Material;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;
public class DummyBlockCyclotron extends BlockContainer implements IDummy {
public static boolean safeBreak = false;
public DummyBlockCyclotron(Material p_i45386_1_) {
super(p_i45386_1_);
}
@Override
public TileEntity createNewTileEntity(World p_149915_1_, int p_149915_2_) {
return new TileEntityDummy();
}
public void breakBlock(World world, int x, int y, int z, Block block, int i)
{
if(!safeBreak) {
TileEntity te = world.getTileEntity(x, y, z);
if(te != null && te instanceof TileEntityDummy) {
int a = ((TileEntityDummy)te).targetX;
int b = ((TileEntityDummy)te).targetY;
int c = ((TileEntityDummy)te).targetZ;
//world.getBlock(a, b, c).breakBlock(world, a, b, c, block, i);
if(!world.isRemote)
world.func_147480_a(a, b, c, true);
}
}
world.removeTileEntity(x, y, z);
}
@Override
public int getRenderType() {
return -1;
}
@Override
public boolean isOpaqueCube() {
return false;
}
@Override
public boolean renderAsNormalBlock() {
return false;
}
@Override
public Item getItemDropped(int p_149650_1_, Random p_149650_2_, int p_149650_3_)
{
return null;
}
@Override
@SideOnly(Side.CLIENT)
public Item getItem(World world, int x, int y, int z)
{
return Item.getItemFromBlock(ModBlocks.machine_cyclotron);
}
@Override
public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float hitX, float hitY, float hitZ) {
if(world.isRemote)
{
return true;
} else if(!player.isSneaking())
{
TileEntity te = world.getTileEntity(x, y, z);
if(te != null && te instanceof TileEntityDummy) {
int a = ((TileEntityDummy)te).targetX;
int b = ((TileEntityDummy)te).targetY;
int c = ((TileEntityDummy)te).targetZ;
TileEntityMachineCyclotron entity = (TileEntityMachineCyclotron) world.getTileEntity(a, b, c);
if(entity != null)
{
FMLNetworkHandler.openGui(player, MainRegistry.instance, ModBlocks.guiID_machine_cyclotron, world, a, b, c);
}
}
return true;
} else {
return false;
}
}
}

View File

@ -6,7 +6,7 @@ import com.hbm.blocks.ModBlocks;
import com.hbm.interfaces.IDummy;
import com.hbm.main.MainRegistry;
import com.hbm.tileentity.TileEntityDummy;
import com.hbm.tileentity.TileEntityIGenerator;
import com.hbm.tileentity.TileEntityMachineIGenerator;
import com.hbm.tileentity.TileEntityMachineElectricFurnace;
import cpw.mods.fml.common.network.internal.FMLNetworkHandler;
@ -92,7 +92,7 @@ public class DummyBlockIGenerator extends BlockContainer implements IDummy {
int b = ((TileEntityDummy)te).targetY;
int c = ((TileEntityDummy)te).targetZ;
TileEntityIGenerator entity = (TileEntityIGenerator) world.getTileEntity(a, b, c);
TileEntityMachineIGenerator entity = (TileEntityMachineIGenerator) world.getTileEntity(a, b, c);
if(entity != null)
{
FMLNetworkHandler.openGui(player, MainRegistry.instance, ModBlocks.guiID_electric_furnace, world, a, b, c);

View File

@ -0,0 +1,186 @@
package com.hbm.blocks.machine;
import java.util.Random;
import com.hbm.blocks.ModBlocks;
import com.hbm.explosion.ExplosionNukeGeneric;
import com.hbm.handler.MultiblockHandler;
import com.hbm.interfaces.IMultiblock;
import com.hbm.lib.RefStrings;
import com.hbm.main.MainRegistry;
import com.hbm.tileentity.TileEntityDummy;
import com.hbm.tileentity.TileEntityMachineCyclotron;
import com.hbm.tileentity.TileEntityMachineGenerator;
import cpw.mods.fml.common.network.internal.FMLNetworkHandler;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.block.Block;
import net.minecraft.block.BlockContainer;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.item.EntityItem;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Blocks;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.IIcon;
import net.minecraft.util.MathHelper;
import net.minecraft.world.Explosion;
import net.minecraft.world.World;
public class MachineCyclotron extends BlockContainer implements IMultiblock {
private final Random field_149933_a = new Random();
private Random rand;
private static boolean keepInventory;
public MachineCyclotron(Material p_i45386_1_) {
super(p_i45386_1_);
rand = new Random();
}
@Override
public Item getItemDropped(int p_149650_1_, Random p_149650_2_, int p_149650_3_)
{
return Item.getItemFromBlock(ModBlocks.machine_cyclotron);
}
@Override
public int getRenderType() {
return -1;
}
@Override
public boolean isOpaqueCube() {
return false;
}
@Override
public boolean renderAsNormalBlock() {
return false;
}
@Override
public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float hitX, float hitY, float hitZ) {
if(world.isRemote)
{
return true;
} else if(!player.isSneaking())
{
TileEntityMachineCyclotron entity = (TileEntityMachineCyclotron) world.getTileEntity(x, y, z);
if(entity != null)
{
FMLNetworkHandler.openGui(player, MainRegistry.instance, ModBlocks.guiID_machine_cyclotron, world, x, y, z);
}
return true;
} else {
return false;
}
}
@Override
public TileEntity createNewTileEntity(World p_149915_1_, int p_149915_2_) {
return new TileEntityMachineCyclotron();
}
@Override
public void breakBlock(World p_149749_1_, int p_149749_2_, int p_149749_3_, int p_149749_4_, Block p_149749_5_, int p_149749_6_)
{
if (!keepInventory)
{
TileEntityMachineCyclotron tileentityfurnace = (TileEntityMachineCyclotron)p_149749_1_.getTileEntity(p_149749_2_, p_149749_3_, p_149749_4_);
if (tileentityfurnace != null)
{
for (int i1 = 0; i1 < tileentityfurnace.getSizeInventory(); ++i1)
{
ItemStack itemstack = tileentityfurnace.getStackInSlot(i1);
if (itemstack != null)
{
float f = this.field_149933_a.nextFloat() * 0.8F + 0.1F;
float f1 = this.field_149933_a.nextFloat() * 0.8F + 0.1F;
float f2 = this.field_149933_a.nextFloat() * 0.8F + 0.1F;
while (itemstack.stackSize > 0)
{
int j1 = this.field_149933_a.nextInt(21) + 10;
if (j1 > itemstack.stackSize)
{
j1 = itemstack.stackSize;
}
itemstack.stackSize -= j1;
EntityItem entityitem = new EntityItem(p_149749_1_, p_149749_2_ + f, p_149749_3_ + f1, p_149749_4_ + f2, new ItemStack(itemstack.getItem(), j1, itemstack.getItemDamage()));
if (itemstack.hasTagCompound())
{
entityitem.getEntityItem().setTagCompound((NBTTagCompound)itemstack.getTagCompound().copy());
}
float f3 = 0.05F;
entityitem.motionX = (float)this.field_149933_a.nextGaussian() * f3;
entityitem.motionY = (float)this.field_149933_a.nextGaussian() * f3 + 0.2F;
entityitem.motionZ = (float)this.field_149933_a.nextGaussian() * f3;
p_149749_1_.spawnEntityInWorld(entityitem);
}
}
}
p_149749_1_.func_147453_f(p_149749_2_, p_149749_3_, p_149749_4_, p_149749_5_);
}
}
super.breakBlock(p_149749_1_, p_149749_2_, p_149749_3_, p_149749_4_, p_149749_5_, p_149749_6_);
}
@Override
public void onBlockPlacedBy(World world, int x, int y, int z, EntityLivingBase player, ItemStack itemStack) {
if(MultiblockHandler.checkSpace(world, x, y, z, MultiblockHandler.cyclDimension)) {
MultiblockHandler.fillUp(world, x, y, z, MultiblockHandler.cyclDimension, ModBlocks.dummy_block_cyclotron);
DummyBlockCyclotron.safeBreak = true;
world.setBlock(x, y, z + 1, ModBlocks.dummy_port_cyclotron);
TileEntity te = world.getTileEntity(x, y, z + 1);
if(te instanceof TileEntityDummy) {
TileEntityDummy dummy = (TileEntityDummy)te;
dummy.targetX = x;
dummy.targetY = y;
dummy.targetZ = z;
}
world.setBlock(x, y, z - 1, ModBlocks.dummy_port_cyclotron);
TileEntity te2 = world.getTileEntity(x, y, z - 1);
if(te instanceof TileEntityDummy) {
TileEntityDummy dummy = (TileEntityDummy)te2;
dummy.targetX = x;
dummy.targetY = y;
dummy.targetZ = z;
}
world.setBlock(x + 1, y, z, ModBlocks.dummy_port_cyclotron);
TileEntity te3 = world.getTileEntity(x + 1, y, z);
if(te3 instanceof TileEntityDummy) {
TileEntityDummy dummy = (TileEntityDummy)te3;
dummy.targetX = x;
dummy.targetY = y;
dummy.targetZ = z;
}
world.setBlock(x - 1, y, z, ModBlocks.dummy_port_cyclotron);
TileEntity te4 = world.getTileEntity(x - 1, y, z);
if(te4 instanceof TileEntityDummy) {
TileEntityDummy dummy = (TileEntityDummy)te4;
dummy.targetX = x;
dummy.targetY = y;
dummy.targetZ = z;
}
DummyBlockCyclotron.safeBreak = false;
} else
world.func_147480_a(x, y, z, true);
}
}

View File

@ -6,7 +6,7 @@ import com.hbm.blocks.ModBlocks;
import com.hbm.handler.MultiblockHandler;
import com.hbm.interfaces.IMultiblock;
import com.hbm.tileentity.TileEntityDummy;
import com.hbm.tileentity.TileEntityIGenerator;
import com.hbm.tileentity.TileEntityMachineIGenerator;
import com.hbm.tileentity.TileEntityNukeGadget;
import net.minecraft.block.Block;
@ -27,7 +27,7 @@ public class MachineIGenerator extends BlockContainer implements IMultiblock {
@Override
public TileEntity createNewTileEntity(World p_149915_1_, int p_149915_2_) {
return new TileEntityIGenerator();
return new TileEntityMachineIGenerator();
}

View File

@ -6,6 +6,7 @@ import java.util.List;
import java.util.Map;
import java.util.Random;
import com.hbm.entity.effect.EntityBlackHole;
import com.hbm.entity.effect.EntityFalloutRain;
import com.hbm.entity.particle.EntitySmokeFX;
import com.hbm.explosion.ExplosionChaos;
@ -70,8 +71,14 @@ public class TestEventTester extends Block {
p_149695_1_.spawnEntityInWorld(fallout);*/
worldObj.setBlock(x, y, z, Blocks.air);
ExplosionLarge.explode(worldObj, x + 0.5, y + 0.5, z + 0.5, MainRegistry.x, true, true, true);
//worldObj.setBlock(x, y, z, Blocks.air);
//ExplosionLarge.explode(worldObj, x + 0.5, y + 0.5, z + 0.5, MainRegistry.x, true, true, true);
EntityBlackHole bl = new EntityBlackHole(worldObj, MainRegistry.x * 0.1F);
bl.posX = x + 0.5F;
bl.posY = y + 0.5F;
bl.posZ = z + 0.5F;
worldObj.spawnEntityInWorld(bl);
}
}

View File

@ -0,0 +1,115 @@
package com.hbm.entity.effect;
import java.util.Random;
import com.hbm.blocks.ModBlocks;
import com.hbm.entity.projectile.EntityRubble;
import com.hbm.explosion.ExplosionNukeGeneric;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.entity.Entity;
import net.minecraft.init.Blocks;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.Vec3;
import net.minecraft.world.World;
public class EntityBlackHole extends Entity {
Random rand = new Random();
public EntityBlackHole(World p_i1582_1_) {
super(p_i1582_1_);
}
public EntityBlackHole(World world, float size) {
super(world);
this.dataWatcher.updateObject(16, size);
}
@Override
public void onUpdate() {
float size = this.dataWatcher.getWatchableObjectFloat(16);
for(int k = 0; k < size * 5; k++) {
double phi = rand.nextDouble() * (Math.PI * 2);
double costheta = rand.nextDouble() * 2 - 1;
double theta = Math.acos(costheta);
double x = Math.sin( theta) * Math.cos( phi );
double y = Math.sin( theta) * Math.sin( phi );
double z = Math.cos( theta );
Vec3 vec = Vec3.createVectorHelper(x, y, z);
int length = (int)Math.ceil(size * 15);
for(int i = 0; i < length; i ++) {
int x0 = (int)(this.posX + (vec.xCoord * i));
int y0 = (int)(this.posY + (vec.yCoord * i));
int z0 = (int)(this.posZ + (vec.zCoord * i));
if(!worldObj.isRemote) {
if(worldObj.getBlock(x0, y0, z0) != Blocks.air) {
EntityRubble rubble = new EntityRubble(worldObj);
rubble.posX = x0 + 0.5F;
rubble.posY = y0;
rubble.posZ = z0 + 0.5F;
rubble.setMetaBasedOnMat(worldObj.getBlock(x0, y0, z0).getMaterial());
worldObj.spawnEntityInWorld(rubble);
worldObj.setBlock(x0, y0, z0, Blocks.air);
break;
}
}
}
}
ExplosionNukeGeneric.succ(worldObj, (int)this.posX, (int)this.posY, (int)this.posZ, (int)Math.ceil(size * 15));
if(ExplosionNukeGeneric.dedify(worldObj, (int)this.posX, (int)this.posY, (int)this.posZ, (int)Math.ceil(size * 2))) {
this.setDead();
int r = (int)Math.ceil(size);
int r2 = r * r;
int r22 = r2 / 2;
for (int xx = -r; xx < r; xx++) {
int X = xx + (int)this.posX;
int XX = xx * xx;
for (int yy = -r; yy < r; yy++) {
int Y = yy + (int)this.posY;
int YY = XX + yy * yy;
for (int zz = -r; zz < r; zz++) {
int Z = zz + (int)this.posZ;
int ZZ = YY + zz * zz;
if (ZZ < r22) {
worldObj.setBlock(X, Y, Z, ModBlocks.gravel_obsidian);
}
}
}
}
}
}
@Override
protected void entityInit() {
this.dataWatcher.addObject(16, (float) 0.5F);
}
@Override
protected void readEntityFromNBT(NBTTagCompound nbt) {
this.dataWatcher.updateObject(16, nbt.getFloat("size"));
}
@Override
protected void writeEntityToNBT(NBTTagCompound nbt) {
nbt.setFloat("size", this.dataWatcher.getWatchableObjectFloat(16));
}
@Override
@SideOnly(Side.CLIENT)
public boolean isInRangeToRenderDist(double distance)
{
return distance < 25000;
}
}

View File

@ -60,7 +60,7 @@ public class EntityHunterChopper extends EntityFlying implements IMob, IBossDisp
* Called when the entity is attacked.
*/
public boolean attackEntityFrom(DamageSource source, float amount) {
if (this.isEntityInvulnerable() || !(source == ModDamageSource.nuclearBlast || source.isExplosion() || ModDamageSource.getIsTau(source) || ModDamageSource.getIsSubatomic(source) || ModDamageSource.getIsDischarge(source))) {
if (this.isEntityInvulnerable() || !(source == ModDamageSource.nuclearBlast || source == ModDamageSource.blackhole || source.isExplosion() || ModDamageSource.getIsTau(source) || ModDamageSource.getIsSubatomic(source) || ModDamageSource.getIsDischarge(source))) {
return false;
} else if(amount >= this.getHealth()) {
this.initDeath();

View File

@ -58,6 +58,21 @@ public class ExplosionLarge {
}
}
public static void spawnTracers(World world, double x, double y, double z, int count) {
for(int i = 0; i < count; i++) {
EntityShrapnel shrapnel = new EntityShrapnel(world);
shrapnel.posX = x;
shrapnel.posY = y;
shrapnel.posZ = z;
shrapnel.motionY = ((rand.nextFloat() * 0.5) + 0.5) * (1 + (count / (15 + rand.nextInt(21)))) + (rand.nextFloat() / 50 * count) * 0.25F;
shrapnel.motionX = rand.nextGaussian() * 1 * (1 + (count / 50)) * 0.25F;
shrapnel.motionZ = rand.nextGaussian() * 1 * (1 + (count / 50)) * 0.25F;
shrapnel.setTrail(true);
world.spawnEntityInWorld(shrapnel);
}
}
public static void explode(World world, double x, double y, double z, float strength, boolean cloud, boolean rubble, boolean shrapnel) {
world.createExplosion(null, x, y, z, strength, true);
if(cloud)

View File

@ -6,6 +6,8 @@ import java.util.Random;
import net.minecraft.enchantment.EnchantmentProtection;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.item.EntityItem;
import net.minecraft.entity.passive.EntityOcelot;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
@ -20,6 +22,7 @@ import net.minecraftforge.common.util.ForgeDirection;
import com.hbm.blocks.ModBlocks;
import com.hbm.blocks.generic.DecoBlockAlt;
import com.hbm.entity.effect.EntityBlackHole;
import com.hbm.entity.effect.EntityNukeCloudSmall;
import com.hbm.entity.grenade.EntityGrenadeASchrab;
import com.hbm.entity.grenade.EntityGrenadeNuclear;
@ -168,6 +171,127 @@ public class ExplosionNukeGeneric {
bombStartStrength = (int) f;
}
public static void succ(World world, int x, int y, int z, int radius) {
float f = radius;
HashSet hashset = new HashSet();
int i;
int j;
int k;
double d5;
double d6;
double d7;
double wat = radius/** 2 */
;
boolean isOccupied = false;
// bombStartStrength *= 2.0F;
i = MathHelper.floor_double(x - wat - 1.0D);
j = MathHelper.floor_double(x + wat + 1.0D);
k = MathHelper.floor_double(y - wat - 1.0D);
int i2 = MathHelper.floor_double(y + wat + 1.0D);
int l = MathHelper.floor_double(z - wat - 1.0D);
int j2 = MathHelper.floor_double(z + wat + 1.0D);
List list = world.getEntitiesWithinAABBExcludingEntity(null, AxisAlignedBB.getBoundingBox(i, k, l, j, i2, j2));
Vec3 vec3 = Vec3.createVectorHelper(x, y, z);
for (int i1 = 0; i1 < list.size(); ++i1) {
Entity entity = (Entity) list.get(i1);
double d4 = entity.getDistance(x, y, z) / radius;
if (d4 <= 1.0D) {
d5 = entity.posX - x;
d6 = entity.posY + entity.getEyeHeight() - y;
d7 = entity.posZ - z;
double d9 = MathHelper.sqrt_double(d5 * d5 + d6 * d6 + d7 * d7);
if (d9 < wat && !(entity instanceof EntityPlayer
&& Library.checkArmor((EntityPlayer) entity, ModItems.euphemium_helmet,
ModItems.euphemium_plate, ModItems.euphemium_legs, ModItems.euphemium_boots))) {
d5 /= d9;
d6 /= d9;
d7 /= d9;
// double d10 = (double)world.getBlockDensity(vec3,
// entity.boundingBox);
// if(d10 > 0) isOccupied = true;
double d11 = (1.0D - d4);// * d10;
if (!(entity instanceof EntityPlayerMP) || (entity instanceof EntityPlayerMP
&& ((EntityPlayerMP) entity).theItemInWorldManager.getGameType() != GameType.CREATIVE)) {
// entity.attackEntityFrom(DamageSource.generic,
// ((int)((d11 * d11 + d11) / 2.0D * 8.0D *
// bombStartStrength + 1.0D)));
double d8 = 0.125 + (field_149933_a.nextDouble() * 0.25);
entity.motionX -= d5 * d8;
entity.motionY -= d6 * d8;
entity.motionZ -= d7 * d8;
}
}
}
}
}
public static boolean dedify(World world, int x, int y, int z, int radius) {
float f = radius;
HashSet hashset = new HashSet();
int i;
int j;
int k;
double d5;
double d6;
double d7;
double wat = radius/** 2 */
;
boolean isOccupied = false;
// bombStartStrength *= 2.0F;
i = MathHelper.floor_double(x - wat - 1.0D);
j = MathHelper.floor_double(x + wat + 1.0D);
k = MathHelper.floor_double(y - wat - 1.0D);
int i2 = MathHelper.floor_double(y + wat + 1.0D);
int l = MathHelper.floor_double(z - wat - 1.0D);
int j2 = MathHelper.floor_double(z + wat + 1.0D);
List list = world.getEntitiesWithinAABBExcludingEntity(null, AxisAlignedBB.getBoundingBox(i, k, l, j, i2, j2));
Vec3 vec3 = Vec3.createVectorHelper(x, y, z);
for (int i1 = 0; i1 < list.size(); ++i1) {
Entity entity = (Entity) list.get(i1);
double d4 = entity.getDistance(x, y, z) / radius;
if (d4 <= 1.0D) {
d5 = entity.posX - x;
d6 = entity.posY + entity.getEyeHeight() - y;
d7 = entity.posZ - z;
double d9 = MathHelper.sqrt_double(d5 * d5 + d6 * d6 + d7 * d7);
if (d9 < wat && !(entity instanceof EntityPlayer
&& Library.checkArmor((EntityPlayer) entity, ModItems.euphemium_helmet,
ModItems.euphemium_plate, ModItems.euphemium_legs, ModItems.euphemium_boots))) {
d5 /= d9;
d6 /= d9;
d7 /= d9;
// double d10 = (double)world.getBlockDensity(vec3,
// entity.boundingBox);
// if(d10 > 0) isOccupied = true;
double d11 = (1.0D - d4);// * d10;
if(entity instanceof EntityItem && ((EntityItem)entity).getEntityItem().getItem() == ModItems.flame_pony) {
entity.setDead();
return true;
}
if (!(entity instanceof EntityPlayerMP
&& ((EntityPlayerMP) entity).theItemInWorldManager.getGameType() == GameType.CREATIVE)) {
entity.attackEntityFrom(ModDamageSource.blackhole, Float.POSITIVE_INFINITY);
}
if(!(entity instanceof EntityLivingBase) && !(entity instanceof EntityPlayerMP) && !(entity instanceof EntityBlackHole)) {
if(field_149933_a.nextInt(8) == 0)
entity.setDead();
}
}
}
}
return false;
}
public static void vapor(World world, int x, int y, int z, int bombStartStrength) {
int r = bombStartStrength * 2;
int r2 = r * r;

View File

@ -7,8 +7,8 @@ import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import com.hbm.gui.MachineRecipes;
import com.hbm.gui.gui.GUITestDiFurnace;
import com.hbm.inventory.MachineRecipes;
import com.hbm.inventory.gui.GUITestDiFurnace;
import codechicken.nei.NEIServerUtils;
import codechicken.nei.PositionedStack;

View File

@ -0,0 +1,138 @@
package com.hbm.handler;
import java.awt.Rectangle;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import com.hbm.inventory.MachineRecipes;
import com.hbm.inventory.gui.GUIMachineCMBFactory;
import com.hbm.inventory.gui.GUIMachineShredder;
import com.hbm.inventory.gui.GUITestDiFurnace;
import com.hbm.lib.RefStrings;
import codechicken.nei.NEIServerUtils;
import codechicken.nei.PositionedStack;
import codechicken.nei.recipe.FurnaceRecipeHandler;
import codechicken.nei.recipe.TemplateRecipeHandler;
import codechicken.nei.recipe.FurnaceRecipeHandler.FuelPair;
import codechicken.nei.recipe.FurnaceRecipeHandler.SmeltingPair;
import codechicken.nei.recipe.TemplateRecipeHandler.CachedRecipe;
import codechicken.nei.recipe.TemplateRecipeHandler.RecipeTransferRect;
import codechicken.nei.recipe.TemplateRecipeHandler.RecipeTransferRectHandler;
import net.minecraft.client.gui.inventory.GuiContainer;
import net.minecraft.client.gui.inventory.GuiFurnace;
import net.minecraft.item.ItemStack;
import net.minecraft.item.crafting.FurnaceRecipes;
public class CMBFurnaceRecipeHandler extends TemplateRecipeHandler {
public LinkedList<RecipeTransferRect> transferRectsRec = new LinkedList<RecipeTransferRect>();
public LinkedList<RecipeTransferRect> transferRectsGui = new LinkedList<RecipeTransferRect>();
public LinkedList<Class<? extends GuiContainer>> guiRec = new LinkedList<Class<? extends GuiContainer>>();
public LinkedList<Class<? extends GuiContainer>> guiGui = new LinkedList<Class<? extends GuiContainer>>();
public class SmeltingSet extends TemplateRecipeHandler.CachedRecipe
{
PositionedStack input1;
PositionedStack input2;
PositionedStack result;
public SmeltingSet(ItemStack input1, ItemStack input2, ItemStack result) {
input1.stackSize = 1;
input2.stackSize = 1;
this.input1 = new PositionedStack(input1, 66, 6);
this.input2 = new PositionedStack(input2, 66, 42);
this.result = new PositionedStack(result, 129, 24);
}
public List<PositionedStack> getIngredients() {
return getCycledIngredients(cycleticks / 48, Arrays.asList(new PositionedStack[] {input1, input2}));
}
public PositionedStack getResult() {
return result;
}
}
@Override
public String getRecipeName() {
return "CMB Steel Furnace";
}
@Override
public String getGuiTexture() {
return RefStrings.MODID + ":textures/gui/gui_nei_cmb.png";
}
public void loadCraftingRecipes(String outputId, Object... results) {
if ((outputId.equals("cmbsmelting")) && getClass() == CMBFurnaceRecipeHandler.class) {
Map<Object[], Object> recipes = MachineRecipes.instance().getCMBRecipes();
for (Map.Entry<Object[], Object> recipe : recipes.entrySet()) {
this.arecipes.add(new SmeltingSet((ItemStack)recipe.getKey()[0], (ItemStack)recipe.getKey()[1], (ItemStack)recipe.getValue()));
}
} else {
super.loadCraftingRecipes(outputId, results);
}
}
public void loadCraftingRecipes(ItemStack result) {
Map<Object[], Object> recipes = MachineRecipes.instance().getCMBRecipes();
for (Map.Entry<Object[], Object> recipe : recipes.entrySet()) {
if (NEIServerUtils.areStacksSameType((ItemStack)recipe.getValue(), result))
this.arecipes.add(new SmeltingSet((ItemStack)recipe.getKey()[0], (ItemStack)recipe.getKey()[1], (ItemStack)recipe.getValue()));
}
}
public void loadUsageRecipes(String inputId, Object... ingredients) {
if ((inputId.equals("cmbsmelting")) && getClass() == CMBFurnaceRecipeHandler.class) {
loadCraftingRecipes("cmbsmelting", new Object[0]);
} else {
super.loadUsageRecipes(inputId, ingredients);
}
}
public void loadUsageRecipes(ItemStack ingredient) {
Map<Object[], Object> recipes = MachineRecipes.instance().getCMBRecipes();
for (Map.Entry<Object[], Object> recipe : recipes.entrySet()) {
if (NEIServerUtils.areStacksSameType(ingredient, (ItemStack)recipe.getKey()[0]) || NEIServerUtils.areStacksSameType(ingredient, (ItemStack)recipe.getKey()[1]))
this.arecipes.add(new SmeltingSet((ItemStack)recipe.getKey()[0], (ItemStack)recipe.getKey()[1], (ItemStack)recipe.getValue()));
}
}
@Override
public Class<? extends GuiContainer> getGuiClass() {
//return GUITestDiFurnace.class;
return null;
}
@Override
public void loadTransferRects() {
transferRectsGui = new LinkedList<RecipeTransferRect>();
guiGui = new LinkedList<Class<? extends GuiContainer>>();
transferRects.add(new RecipeTransferRect(new Rectangle(74 + 6, 23, 24, 18), "cmbsmelting"));
transferRectsGui.add(new RecipeTransferRect(new Rectangle(63 - 7 + 4, 89 - 11, 34, 18), "cmbsmelting"));
guiGui.add(GUIMachineCMBFactory.class);
RecipeTransferRectHandler.registerRectsToGuis(getRecipeTransferRectGuis(), transferRects);
RecipeTransferRectHandler.registerRectsToGuis(guiGui, transferRectsGui);
}
@Override
public void drawExtras(int recipe) {
drawProgressBar(83 - (18 * 4) - 9 + 1, 6, 36, 86, 16, 18 * 3 - 2, 480, 7);
drawProgressBar(83 - (18 * 4) - 9 + 1 + 18, 6, 36 + 48, 86, 16, 18 * 3 - 2, 480, 7);
drawProgressBar(83 - 3 + 16, 5 + 18, 100, 118, 24, 16, 48, 0);
}
@Override
public TemplateRecipeHandler newInstance() {
return super.newInstance();
}
}

View File

@ -6,11 +6,11 @@ import java.util.Arrays;
import java.util.List;
import java.util.Map;
import com.hbm.gui.MachineRecipes;
import com.hbm.gui.gui.GUIMachineCentrifuge;
import com.hbm.gui.gui.GUITestDiFurnace;
import com.hbm.handler.AlloyFurnaceRecipeHandler.Fuel;
import com.hbm.handler.AlloyFurnaceRecipeHandler.SmeltingSet;
import com.hbm.inventory.MachineRecipes;
import com.hbm.inventory.gui.GUIMachineCentrifuge;
import com.hbm.inventory.gui.GUITestDiFurnace;
import codechicken.nei.NEIServerUtils;
import codechicken.nei.PositionedStack;

View File

@ -1,84 +1,86 @@
package com.hbm.handler;
import com.hbm.blocks.ModBlocks;
import com.hbm.gui.container.ContainerBombMulti;
import com.hbm.gui.container.ContainerCentrifuge;
import com.hbm.gui.container.ContainerConverterHeRf;
import com.hbm.gui.container.ContainerConverterRfHe;
import com.hbm.gui.container.ContainerCoreAdvanced;
import com.hbm.gui.container.ContainerCoreTitanium;
import com.hbm.gui.container.ContainerDiFurnace;
import com.hbm.gui.container.ContainerElectricFurnace;
import com.hbm.gui.container.ContainerFWatzCore;
import com.hbm.gui.container.ContainerFusionMultiblock;
import com.hbm.gui.container.ContainerGenerator;
import com.hbm.gui.container.ContainerIGenerator;
import com.hbm.gui.container.ContainerLaunchPadTier1;
import com.hbm.gui.container.ContainerMachineBattery;
import com.hbm.gui.container.ContainerMachineCMBFactory;
import com.hbm.gui.container.ContainerMachineCoal;
import com.hbm.gui.container.ContainerMachineDeuterium;
import com.hbm.gui.container.ContainerMachineDiesel;
import com.hbm.gui.container.ContainerMachineRTG;
import com.hbm.gui.container.ContainerMachineSchrabidiumTransmutator;
import com.hbm.gui.container.ContainerMachineShredder;
import com.hbm.gui.container.ContainerMachineTeleporter;
import com.hbm.gui.container.ContainerNukeBoy;
import com.hbm.gui.container.ContainerNukeCustom;
import com.hbm.gui.container.ContainerNukeFleija;
import com.hbm.gui.container.ContainerNukeFurnace;
import com.hbm.gui.container.ContainerNukeGadget;
import com.hbm.gui.container.ContainerNukeMan;
import com.hbm.gui.container.ContainerNukeMike;
import com.hbm.gui.container.ContainerNukePrototype;
import com.hbm.gui.container.ContainerNukeTsar;
import com.hbm.gui.container.ContainerPuF6Tank;
import com.hbm.gui.container.ContainerReactor;
import com.hbm.gui.container.ContainerReactorMultiblock;
import com.hbm.gui.container.ContainerReiXMainframe;
import com.hbm.gui.container.ContainerRtgFurnace;
import com.hbm.gui.container.ContainerTestNuke;
import com.hbm.gui.container.ContainerUF6Tank;
import com.hbm.gui.container.ContainerWatzCore;
import com.hbm.gui.gui.GUIBombMulti;
import com.hbm.gui.gui.GUIConverterHeRf;
import com.hbm.gui.gui.GUIConverterRfHe;
import com.hbm.gui.gui.GUICoreAdvanced;
import com.hbm.gui.gui.GUICoreTitanium;
import com.hbm.gui.gui.GUIFWatzCore;
import com.hbm.gui.gui.GUIFusionMultiblock;
import com.hbm.gui.gui.GUIIGenerator;
import com.hbm.gui.gui.GUILaunchPadTier1;
import com.hbm.gui.gui.GUIMachineBattery;
import com.hbm.gui.gui.GUIMachineCMBFactory;
import com.hbm.gui.gui.GUIMachineCentrifuge;
import com.hbm.gui.gui.GUIMachineCoal;
import com.hbm.gui.gui.GUIMachineDeuterium;
import com.hbm.gui.gui.GUIMachineDiesel;
import com.hbm.gui.gui.GUIMachineElectricFurnace;
import com.hbm.gui.gui.GUIMachineGenerator;
import com.hbm.gui.gui.GUIMachinePuF6Tank;
import com.hbm.gui.gui.GUIMachineRTG;
import com.hbm.gui.gui.GUIMachineReactor;
import com.hbm.gui.gui.GUIMachineSchrabidiumTransmutator;
import com.hbm.gui.gui.GUIMachineShredder;
import com.hbm.gui.gui.GUIMachineTeleporter;
import com.hbm.gui.gui.GUIMachineUF6Tank;
import com.hbm.gui.gui.GUINukeBoy;
import com.hbm.gui.gui.GUINukeCustom;
import com.hbm.gui.gui.GUINukeFleija;
import com.hbm.gui.gui.GUINukeFurnace;
import com.hbm.gui.gui.GUINukeGadget;
import com.hbm.gui.gui.GUINukeMan;
import com.hbm.gui.gui.GUINukeMike;
import com.hbm.gui.gui.GUINukePrototype;
import com.hbm.gui.gui.GUINukeTsar;
import com.hbm.gui.gui.GUIReactorMultiblock;
import com.hbm.gui.gui.GUIReiXMainframe;
import com.hbm.gui.gui.GUIRtgFurnace;
import com.hbm.gui.gui.GUITestDiFurnace;
import com.hbm.gui.gui.GUITestNuke;
import com.hbm.gui.gui.GUIWatzCore;
import com.hbm.inventory.container.ContainerBombMulti;
import com.hbm.inventory.container.ContainerCentrifuge;
import com.hbm.inventory.container.ContainerConverterHeRf;
import com.hbm.inventory.container.ContainerConverterRfHe;
import com.hbm.inventory.container.ContainerCoreAdvanced;
import com.hbm.inventory.container.ContainerCoreTitanium;
import com.hbm.inventory.container.ContainerDiFurnace;
import com.hbm.inventory.container.ContainerElectricFurnace;
import com.hbm.inventory.container.ContainerFWatzCore;
import com.hbm.inventory.container.ContainerFusionMultiblock;
import com.hbm.inventory.container.ContainerGenerator;
import com.hbm.inventory.container.ContainerIGenerator;
import com.hbm.inventory.container.ContainerLaunchPadTier1;
import com.hbm.inventory.container.ContainerMachineBattery;
import com.hbm.inventory.container.ContainerMachineCMBFactory;
import com.hbm.inventory.container.ContainerMachineCoal;
import com.hbm.inventory.container.ContainerMachineCyclotron;
import com.hbm.inventory.container.ContainerMachineDeuterium;
import com.hbm.inventory.container.ContainerMachineDiesel;
import com.hbm.inventory.container.ContainerMachineRTG;
import com.hbm.inventory.container.ContainerMachineSchrabidiumTransmutator;
import com.hbm.inventory.container.ContainerMachineShredder;
import com.hbm.inventory.container.ContainerMachineTeleporter;
import com.hbm.inventory.container.ContainerNukeBoy;
import com.hbm.inventory.container.ContainerNukeCustom;
import com.hbm.inventory.container.ContainerNukeFleija;
import com.hbm.inventory.container.ContainerNukeFurnace;
import com.hbm.inventory.container.ContainerNukeGadget;
import com.hbm.inventory.container.ContainerNukeMan;
import com.hbm.inventory.container.ContainerNukeMike;
import com.hbm.inventory.container.ContainerNukePrototype;
import com.hbm.inventory.container.ContainerNukeTsar;
import com.hbm.inventory.container.ContainerPuF6Tank;
import com.hbm.inventory.container.ContainerReactor;
import com.hbm.inventory.container.ContainerReactorMultiblock;
import com.hbm.inventory.container.ContainerReiXMainframe;
import com.hbm.inventory.container.ContainerRtgFurnace;
import com.hbm.inventory.container.ContainerTestNuke;
import com.hbm.inventory.container.ContainerUF6Tank;
import com.hbm.inventory.container.ContainerWatzCore;
import com.hbm.inventory.gui.GUIBombMulti;
import com.hbm.inventory.gui.GUIConverterHeRf;
import com.hbm.inventory.gui.GUIConverterRfHe;
import com.hbm.inventory.gui.GUICoreAdvanced;
import com.hbm.inventory.gui.GUICoreTitanium;
import com.hbm.inventory.gui.GUIFWatzCore;
import com.hbm.inventory.gui.GUIFusionMultiblock;
import com.hbm.inventory.gui.GUIIGenerator;
import com.hbm.inventory.gui.GUILaunchPadTier1;
import com.hbm.inventory.gui.GUIMachineBattery;
import com.hbm.inventory.gui.GUIMachineCMBFactory;
import com.hbm.inventory.gui.GUIMachineCentrifuge;
import com.hbm.inventory.gui.GUIMachineCoal;
import com.hbm.inventory.gui.GUIMachineCyclotron;
import com.hbm.inventory.gui.GUIMachineDeuterium;
import com.hbm.inventory.gui.GUIMachineDiesel;
import com.hbm.inventory.gui.GUIMachineElectricFurnace;
import com.hbm.inventory.gui.GUIMachineGenerator;
import com.hbm.inventory.gui.GUIMachinePuF6Tank;
import com.hbm.inventory.gui.GUIMachineRTG;
import com.hbm.inventory.gui.GUIMachineReactor;
import com.hbm.inventory.gui.GUIMachineSchrabidiumTransmutator;
import com.hbm.inventory.gui.GUIMachineShredder;
import com.hbm.inventory.gui.GUIMachineTeleporter;
import com.hbm.inventory.gui.GUIMachineUF6Tank;
import com.hbm.inventory.gui.GUINukeBoy;
import com.hbm.inventory.gui.GUINukeCustom;
import com.hbm.inventory.gui.GUINukeFleija;
import com.hbm.inventory.gui.GUINukeFurnace;
import com.hbm.inventory.gui.GUINukeGadget;
import com.hbm.inventory.gui.GUINukeMan;
import com.hbm.inventory.gui.GUINukeMike;
import com.hbm.inventory.gui.GUINukePrototype;
import com.hbm.inventory.gui.GUINukeTsar;
import com.hbm.inventory.gui.GUIReactorMultiblock;
import com.hbm.inventory.gui.GUIReiXMainframe;
import com.hbm.inventory.gui.GUIRtgFurnace;
import com.hbm.inventory.gui.GUITestDiFurnace;
import com.hbm.inventory.gui.GUITestNuke;
import com.hbm.inventory.gui.GUIWatzCore;
import com.hbm.tileentity.TileEntityBombMulti;
import com.hbm.tileentity.TileEntityConverterHeRf;
import com.hbm.tileentity.TileEntityConverterRfHe;
@ -87,12 +89,13 @@ import com.hbm.tileentity.TileEntityCoreTitanium;
import com.hbm.tileentity.TileEntityDiFurnace;
import com.hbm.tileentity.TileEntityFWatzCore;
import com.hbm.tileentity.TileEntityFusionMultiblock;
import com.hbm.tileentity.TileEntityIGenerator;
import com.hbm.tileentity.TileEntityMachineIGenerator;
import com.hbm.tileentity.TileEntityLaunchPad;
import com.hbm.tileentity.TileEntityMachineBattery;
import com.hbm.tileentity.TileEntityMachineCMBFactory;
import com.hbm.tileentity.TileEntityMachineCentrifuge;
import com.hbm.tileentity.TileEntityMachineCoal;
import com.hbm.tileentity.TileEntityMachineCyclotron;
import com.hbm.tileentity.TileEntityMachineDeuterium;
import com.hbm.tileentity.TileEntityMachineDiesel;
import com.hbm.tileentity.TileEntityMachineElectricFurnace;
@ -431,9 +434,9 @@ public class GUIHandler implements IGuiHandler {
case ModBlocks.guiID_machine_industrial_generator:
{
if(entity instanceof TileEntityIGenerator)
if(entity instanceof TileEntityMachineIGenerator)
{
return new ContainerIGenerator(player.inventory, (TileEntityIGenerator) entity);
return new ContainerIGenerator(player.inventory, (TileEntityMachineIGenerator) entity);
}
}
@ -444,6 +447,14 @@ public class GUIHandler implements IGuiHandler {
return new ContainerMachineRTG(player.inventory, (TileEntityMachineRTG) entity);
}
}
case ModBlocks.guiID_machine_cyclotron:
{
if(entity instanceof TileEntityMachineCyclotron)
{
return new ContainerMachineCyclotron(player.inventory, (TileEntityMachineCyclotron) entity);
}
}
}
return null;
}
@ -755,9 +766,9 @@ public class GUIHandler implements IGuiHandler {
case ModBlocks.guiID_machine_industrial_generator:
{
if(entity instanceof TileEntityIGenerator)
if(entity instanceof TileEntityMachineIGenerator)
{
return new GUIIGenerator(player.inventory, (TileEntityIGenerator) entity);
return new GUIIGenerator(player.inventory, (TileEntityMachineIGenerator) entity);
}
}
@ -768,6 +779,14 @@ public class GUIHandler implements IGuiHandler {
return new GUIMachineRTG(player.inventory, (TileEntityMachineRTG) entity);
}
}
case ModBlocks.guiID_machine_cyclotron:
{
if(entity instanceof TileEntityMachineCyclotron)
{
return new GUIMachineCyclotron(player.inventory, (TileEntityMachineCyclotron) entity);
}
}
}
}
return null;

View File

@ -45,6 +45,7 @@ public class MultiblockHandler {
public static final int[] iGenDimensionSouth = new int[] { 1, 1, 2, 0, 2, 3 };
public static final int[] iGenDimensionWest = new int[] { 3, 2, 2, 0, 1, 1 };
public static final int[] centDimension = new int[] { 0, 0, 2, 0, 0, 0 };
public static final int[] cyclDimension = new int[] { 1, 1, 5, 0, 1, 1 };
//Approved!
public static boolean checkSpace(World world, int x, int y, int z, int[] i) {

View File

@ -6,11 +6,11 @@ import java.util.Arrays;
import java.util.List;
import java.util.Map;
import com.hbm.gui.MachineRecipes;
import com.hbm.gui.gui.GUIMachineReactor;
import com.hbm.gui.gui.GUITestDiFurnace;
import com.hbm.handler.AlloyFurnaceRecipeHandler.Fuel;
import com.hbm.handler.AlloyFurnaceRecipeHandler.SmeltingSet;
import com.hbm.inventory.MachineRecipes;
import com.hbm.inventory.gui.GUIMachineReactor;
import com.hbm.inventory.gui.GUITestDiFurnace;
import codechicken.nei.NEIServerUtils;
import codechicken.nei.PositionedStack;

View File

@ -9,11 +9,11 @@ import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import com.hbm.gui.MachineRecipes;
import com.hbm.gui.gui.GUIMachineReactor;
import com.hbm.gui.gui.GUIMachineShredder;
import com.hbm.handler.ReactorRecipeHandler.Fuel;
import com.hbm.handler.ReactorRecipeHandler.SmeltingSet;
import com.hbm.inventory.MachineRecipes;
import com.hbm.inventory.gui.GUIMachineReactor;
import com.hbm.inventory.gui.GUIMachineShredder;
import com.hbm.lib.RefStrings;
import codechicken.nei.NEIServerUtils;

View File

@ -1,4 +1,4 @@
package com.hbm.gui;
package com.hbm.inventory;
import java.util.ArrayList;
import java.util.HashMap;
@ -377,6 +377,224 @@ public class MachineRecipes {
return null;
}
public static ItemStack getCyclotronOutput(ItemStack part, ItemStack item) {
if(part == null || item == null)
return null;
//LITHIUM
if (part.getItem() == ModItems.part_lithium) {
if(item.getItem() == ModItems.niter)
return new ItemStack(ModItems.fluorite, 1);
if(item.getItem() == ModItems.powder_coal)
return new ItemStack(ModItems.fluorite, 1);
if(item.getItem() == ModItems.powder_iron)
return new ItemStack(ModItems.powder_cobalt, 1);
if(item.getItem() == ModItems.powder_gold)
return new ItemStack(ModItems.powder_lead, 1);
if(item.getItem() == ModItems.powder_quartz)
return new ItemStack(ModItems.sulfur, 1);
if(item.getItem() == ModItems.powder_uranium)
return new ItemStack(ModItems.powder_plutonium, 1);
if(item.getItem() == ModItems.powder_aluminium)
return new ItemStack(ModItems.powder_quartz, 1);
if(item.getItem() == ModItems.powder_beryllium)
return new ItemStack(ModItems.powder_coal, 1);
if(item.getItem() == ModItems.powder_schrabidium)
return new ItemStack(ModItems.powder_reiium, 1);
if(item.getItem() == ModItems.powder_lithium)
return new ItemStack(ModItems.powder_coal, 1);
if(item.getItem() == ModItems.powder_iodine)
return new ItemStack(ModItems.powder_caesium, 1);
if(item.getItem() == ModItems.powder_thorium)
return new ItemStack(ModItems.powder_uranium, 1);
if(item.getItem() == ModItems.powder_caesium)
return new ItemStack(ModItems.powder_lanthanium, 1);
if(item.getItem() == ModItems.powder_reiium)
return new ItemStack(ModItems.powder_weidanium, 1);
if(item.getItem() == ModItems.powder_cobalt)
return new ItemStack(ModItems.powder_copper, 1);
if(item.getItem() == ModItems.powder_cerium)
return new ItemStack(ModItems.powder_neodymium, 1);
if(item.getItem() == ModItems.powder_actinium)
return new ItemStack(ModItems.powder_thorium, 1);
if(item.getItem() == ModItems.powder_lanthanium)
return new ItemStack(ModItems.powder_cerium, 1);
}
//BERYLLIUM
if (part.getItem() == ModItems.part_beryllium) {
if(item.getItem() == ModItems.sulfur)
return new ItemStack(ModItems.powder_titanium, 1);
if(item.getItem() == ModItems.fluorite)
return new ItemStack(ModItems.powder_aluminium, 1);
if(item.getItem() == ModItems.powder_iron)
return new ItemStack(ModItems.powder_copper, 1);
if(item.getItem() == ModItems.powder_quartz)
return new ItemStack(ModItems.powder_titanium, 1);
if(item.getItem() == ModItems.powder_titanium)
return new ItemStack(ModItems.powder_iron, 1);
if(item.getItem() == ModItems.powder_copper)
return new ItemStack(ModItems.powder_bromine, 1);
if(item.getItem() == ModItems.powder_tungsten)
return new ItemStack(ModItems.powder_gold, 1);
if(item.getItem() == ModItems.powder_aluminium)
return new ItemStack(ModItems.sulfur, 1);
if(item.getItem() == ModItems.powder_lead)
return new ItemStack(ModItems.powder_astatine, 1);
if(item.getItem() == ModItems.powder_beryllium)
return new ItemStack(ModItems.niter, 1);
if(item.getItem() == ModItems.powder_lithium)
return new ItemStack(ModItems.niter, 1);
if(item.getItem() == ModItems.powder_iodine)
return new ItemStack(ModItems.powder_cerium, 1);
if(item.getItem() == ModItems.powder_thorium)
return new ItemStack(ModItems.powder_neptunium, 1);
if(item.getItem() == ModItems.powder_astatine)
return new ItemStack(ModItems.powder_actinium, 1);
if(item.getItem() == ModItems.powder_caesium)
return new ItemStack(ModItems.powder_neodymium, 1);
if(item.getItem() == ModItems.powder_weidanium)
return new ItemStack(ModItems.powder_australium, 1);
if(item.getItem() == ModItems.powder_strontium)
return new ItemStack(ModItems.powder_niobium, 1);
if(item.getItem() == ModItems.powder_bromine)
return new ItemStack(ModItems.powder_strontium, 1);
if(item.getItem() == ModItems.powder_actinium)
return new ItemStack(ModItems.powder_uranium, 1);
if(item.getItem() == ModItems.powder_lanthanium)
return new ItemStack(ModItems.powder_neodymium, 1);
}
//CARBON
if (part.getItem() == ModItems.part_carbon) {
if(item.getItem() == ModItems.sulfur)
return new ItemStack(ModItems.powder_iron, 1);
if(item.getItem() == ModItems.niter)
return new ItemStack(ModItems.powder_aluminium, 1);
if(item.getItem() == ModItems.fluorite)
return new ItemStack(ModItems.sulfur, 1);
if(item.getItem() == ModItems.powder_coal)
return new ItemStack(ModItems.powder_aluminium, 1);
if(item.getItem() == ModItems.powder_iron)
return new ItemStack(ModItems.powder_bromine, 1);
if(item.getItem() == ModItems.powder_gold)
return new ItemStack(ModItems.powder_astatine, 1);
if(item.getItem() == ModItems.powder_quartz)
return new ItemStack(ModItems.powder_iron, 1);
if(item.getItem() == ModItems.powder_plutonium)
return new ItemStack(ModItems.powder_tennessine, 1);
if(item.getItem() == ModItems.powder_neptunium)
return new ItemStack(ModItems.powder_tennessine, 1);
if(item.getItem() == ModItems.powder_titanium)
return new ItemStack(ModItems.powder_bromine, 1);
if(item.getItem() == ModItems.powder_copper)
return new ItemStack(ModItems.powder_strontium, 1);
if(item.getItem() == ModItems.powder_tungsten)
return new ItemStack(ModItems.powder_lead, 1);
if(item.getItem() == ModItems.powder_aluminium)
return new ItemStack(ModItems.powder_titanium, 1);
if(item.getItem() == ModItems.powder_lead)
return new ItemStack(ModItems.powder_thorium, 1);
if(item.getItem() == ModItems.powder_beryllium)
return new ItemStack(ModItems.fluorite, 1);
if(item.getItem() == ModItems.powder_lithium)
return new ItemStack(ModItems.fluorite, 1);
if(item.getItem() == ModItems.powder_iodine)
return new ItemStack(ModItems.powder_astatine, 1);
if(item.getItem() == ModItems.powder_neodymium)
return new ItemStack(ModItems.powder_tungsten, 1);
if(item.getItem() == ModItems.powder_australium)
return new ItemStack(ModItems.powder_verticium, 1);
if(item.getItem() == ModItems.powder_strontium)
return new ItemStack(ModItems.powder_iodine, 1);
if(item.getItem() == ModItems.powder_cobalt)
return new ItemStack(ModItems.powder_strontium, 1);
if(item.getItem() == ModItems.powder_bromine)
return new ItemStack(ModItems.powder_niobium, 1);
if(item.getItem() == ModItems.powder_niobium)
return new ItemStack(ModItems.powder_iodine, 1);
if(item.getItem() == ModItems.powder_tennessine)
return new ItemStack(ModItems.powder_schrabidium, 1);
if(item.getItem() == ModItems.powder_cerium)
return new ItemStack(ModItems.powder_tungsten, 1);
}
//COPPER
if (part.getItem() == ModItems.part_copper) {
if(item.getItem() == ModItems.sulfur)
return new ItemStack(ModItems.powder_bromine, 1);
if(item.getItem() == ModItems.niter)
return new ItemStack(ModItems.powder_cobalt, 1);
if(item.getItem() == ModItems.fluorite)
return new ItemStack(ModItems.powder_iron, 1);
if(item.getItem() == ModItems.powder_coal)
return new ItemStack(ModItems.powder_iron, 1);
if(item.getItem() == ModItems.powder_iron)
return new ItemStack(ModItems.powder_niobium, 1);
if(item.getItem() == ModItems.powder_gold)
return new ItemStack(ModItems.powder_lanthanium, 1);
if(item.getItem() == ModItems.powder_quartz)
return new ItemStack(ModItems.powder_bromine, 1);
if(item.getItem() == ModItems.powder_uranium)
return new ItemStack(ModItems.powder_tennessine, 1);
if(item.getItem() == ModItems.powder_titanium)
return new ItemStack(ModItems.powder_strontium, 1);
if(item.getItem() == ModItems.powder_copper)
return new ItemStack(ModItems.powder_niobium, 1);
if(item.getItem() == ModItems.powder_tungsten)
return new ItemStack(ModItems.powder_actinium, 1);
if(item.getItem() == ModItems.powder_aluminium)
return new ItemStack(ModItems.powder_bromine, 1);
if(item.getItem() == ModItems.powder_lead)
return new ItemStack(ModItems.powder_tennessine, 1);
if(item.getItem() == ModItems.powder_beryllium)
return new ItemStack(ModItems.powder_bromine, 1);
if(item.getItem() == ModItems.powder_lithium)
return new ItemStack(ModItems.powder_bromine, 1);
if(item.getItem() == ModItems.powder_iodine)
return new ItemStack(ModItems.powder_tungsten, 1);
if(item.getItem() == ModItems.powder_thorium)
return new ItemStack(ModItems.powder_tennessine, 1);
if(item.getItem() == ModItems.powder_neodymium)
return new ItemStack(ModItems.powder_lead, 1);
if(item.getItem() == ModItems.powder_astatine)
return new ItemStack(ModItems.powder_plutonium, 1);
if(item.getItem() == ModItems.powder_caesium)
return new ItemStack(ModItems.powder_tungsten, 1);
if(item.getItem() == ModItems.powder_verticium)
return new ItemStack(ModItems.powder_unobtainium, 1);
if(item.getItem() == ModItems.powder_cobalt)
return new ItemStack(ModItems.powder_iodine, 1);
if(item.getItem() == ModItems.powder_bromine)
return new ItemStack(ModItems.powder_caesium, 1);
if(item.getItem() == ModItems.powder_niobium)
return new ItemStack(ModItems.powder_cerium, 1);
if(item.getItem() == ModItems.powder_tennessine)
return new ItemStack(ModItems.powder_reiium, 1);
if(item.getItem() == ModItems.powder_cerium)
return new ItemStack(ModItems.powder_lead, 1);
if(item.getItem() == ModItems.powder_actinium)
return new ItemStack(ModItems.powder_tennessine, 1);
if(item.getItem() == ModItems.powder_lanthanium)
return new ItemStack(ModItems.powder_astatine, 1);
}
//PLUTONIUM
if (part.getItem() == ModItems.part_plutonium) {
if(item.getItem() == ModItems.powder_uranium)
return new ItemStack(ModItems.powder_schrabidium, 1);
if(item.getItem() == ModItems.powder_plutonium)
return new ItemStack(ModItems.powder_schrabidium, 1);
if(item.getItem() == ModItems.powder_neptunium)
return new ItemStack(ModItems.powder_schrabidium, 1);
if(item.getItem() == ModItems.powder_unobtainium)
return new ItemStack(ModItems.powder_daffergon, 1);
}
return null;
}
public Map<Object[], Object> getAlloyRecipes() {
Map<Object[], Object> recipes = new HashMap<Object[], Object>();
if (MainRegistry.enableDebugMode) {
@ -870,6 +1088,15 @@ public class MachineRecipes {
return recipes;
}
public Map<Object[], Object> getCMBRecipes() {
Map<Object[], Object> recipes = new HashMap<Object[], Object>();
recipes.put(new ItemStack[] { new ItemStack(ModItems.ingot_advanced_alloy), new ItemStack(ModItems.ingot_magnetized_tungsten) },
new ItemStack(ModItems.ingot_combine_steel, 4));
recipes.put(new ItemStack[] { new ItemStack(ModItems.powder_advanced_alloy), new ItemStack(ModItems.powder_magnetized_tungsten) },
new ItemStack(ModItems.ingot_combine_steel, 4));
return recipes;
}
public ArrayList<ItemStack> getBatteries() {
ArrayList<ItemStack> fuels = new ArrayList<ItemStack>();
fuels.add(new ItemStack(ModItems.battery_generic));

View File

@ -1,4 +1,4 @@
package com.hbm.gui;
package com.hbm.inventory;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.inventory.IInventory;

View File

@ -1,4 +1,4 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.tileentity.TileEntityBombMulti;

View File

@ -1,6 +1,6 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.gui.SlotDiFurnace;
import com.hbm.inventory.SlotDiFurnace;
import com.hbm.tileentity.TileEntityMachineCentrifuge;
import net.minecraft.entity.player.EntityPlayer;

View File

@ -1,4 +1,4 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.tileentity.TileEntityConverterHeRf;
import com.hbm.tileentity.TileEntityConverterRfHe;

View File

@ -1,4 +1,4 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.tileentity.TileEntityConverterRfHe;
import com.hbm.tileentity.TileEntityReactorMultiblock;

View File

@ -1,6 +1,6 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.gui.SlotDiFurnace;
import com.hbm.inventory.SlotDiFurnace;
import com.hbm.tileentity.TileEntityCoreAdvanced;
import com.hbm.tileentity.TileEntityCoreTitanium;

View File

@ -1,6 +1,6 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.gui.SlotDiFurnace;
import com.hbm.inventory.SlotDiFurnace;
import com.hbm.tileentity.TileEntityCoreTitanium;
import com.hbm.tileentity.TileEntityMachineGenerator;

View File

@ -1,6 +1,6 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.gui.SlotDiFurnace;
import com.hbm.inventory.SlotDiFurnace;
import com.hbm.tileentity.TileEntityDiFurnace;
import net.minecraft.entity.player.EntityPlayer;

View File

@ -1,6 +1,6 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.gui.SlotDiFurnace;
import com.hbm.inventory.SlotDiFurnace;
import com.hbm.tileentity.TileEntityMachineElectricFurnace;
import net.minecraft.entity.player.EntityPlayer;

View File

@ -1,4 +1,4 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.tileentity.TileEntityFWatzCore;
import com.hbm.tileentity.TileEntityFusionMultiblock;

View File

@ -1,4 +1,4 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.tileentity.TileEntityFusionMultiblock;
import com.hbm.tileentity.TileEntityReactorMultiblock;

View File

@ -1,4 +1,4 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.tileentity.TileEntityMachineGenerator;

View File

@ -1,6 +1,6 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.tileentity.TileEntityIGenerator;
import com.hbm.tileentity.TileEntityMachineIGenerator;
import com.hbm.tileentity.TileEntityReiXMainframe;
import net.minecraft.entity.player.EntityPlayer;
@ -12,7 +12,7 @@ import net.minecraft.item.ItemStack;
public class ContainerIGenerator extends Container {
private TileEntityIGenerator diFurnace;
private TileEntityMachineIGenerator diFurnace;
private int power;
private int torque;
@ -22,7 +22,7 @@ public class ContainerIGenerator extends Container {
private int fuel;
private int burn;
public ContainerIGenerator(InventoryPlayer invPlayer, TileEntityIGenerator tedf) {
public ContainerIGenerator(InventoryPlayer invPlayer, TileEntityMachineIGenerator tedf) {
diFurnace = tedf;

View File

@ -1,4 +1,4 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.tileentity.TileEntityLaunchPad;

View File

@ -1,4 +1,4 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.tileentity.TileEntityMachineBattery;

View File

@ -1,6 +1,6 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.gui.SlotDiFurnace;
import com.hbm.inventory.SlotDiFurnace;
import com.hbm.tileentity.TileEntityMachineCMBFactory;
import com.hbm.tileentity.TileEntityMachineShredder;

View File

@ -1,4 +1,4 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.tileentity.TileEntityMachineCoal;

View File

@ -0,0 +1,143 @@
package com.hbm.inventory.container;
import com.hbm.inventory.SlotDiFurnace;
import com.hbm.tileentity.TileEntityMachineCyclotron;
import com.hbm.tileentity.TileEntityMachineRTG;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.inventory.Container;
import net.minecraft.inventory.ICrafting;
import net.minecraft.inventory.Slot;
import net.minecraft.item.ItemStack;
public class ContainerMachineCyclotron extends Container {
private TileEntityMachineCyclotron testNuke;
private int progress;
private int power;
public ContainerMachineCyclotron(InventoryPlayer invPlayer, TileEntityMachineCyclotron tedf) {
progress = 0;
power = 0;
testNuke = tedf;
//Input
this.addSlotToContainer(new Slot(tedf, 0, 8, 18));
this.addSlotToContainer(new Slot(tedf, 1, 8, 36));
this.addSlotToContainer(new Slot(tedf, 2, 8, 54));
//Targets
this.addSlotToContainer(new Slot(tedf, 3, 80, 72));
this.addSlotToContainer(new Slot(tedf, 4, 98, 72));
this.addSlotToContainer(new Slot(tedf, 5, 116, 72));
//Tech
this.addSlotToContainer(new Slot(tedf, 6, 8, 81));
this.addSlotToContainer(new Slot(tedf, 7, 26, 81));
this.addSlotToContainer(new Slot(tedf, 8, 44, 81));
//Battery
this.addSlotToContainer(new Slot(tedf, 9, 152, 108));
//Cell
this.addSlotToContainer(new Slot(tedf, 10, 8, 108));
//Output
this.addSlotToContainer(new SlotDiFurnace(invPlayer.player, tedf, 11, 44, 108));
this.addSlotToContainer(new SlotDiFurnace(invPlayer.player, tedf, 12, 62, 108));
this.addSlotToContainer(new SlotDiFurnace(invPlayer.player, tedf, 13, 80, 108));
this.addSlotToContainer(new SlotDiFurnace(invPlayer.player, tedf, 14, 98, 108));
this.addSlotToContainer(new SlotDiFurnace(invPlayer.player, tedf, 15, 116, 108));
for(int i = 0; i < 3; i++)
{
for(int j = 0; j < 9; j++)
{
this.addSlotToContainer(new Slot(invPlayer, j + i * 9 + 9, 8 + j * 18, 84 + i * 18 + 56));
}
}
for(int i = 0; i < 9; i++)
{
this.addSlotToContainer(new Slot(invPlayer, i, 8 + i * 18, 142 + 56));
}
}
@Override
public void addCraftingToCrafters(ICrafting crafting) {
super.addCraftingToCrafters(crafting);
crafting.sendProgressBarUpdate(this, 0, this.testNuke.progress);
crafting.sendProgressBarUpdate(this, 1, this.testNuke.power);
}
@Override
public ItemStack transferStackInSlot(EntityPlayer p_82846_1_, int par2)
{
ItemStack var3 = null;
Slot var4 = (Slot) this.inventorySlots.get(par2);
if (var4 != null && var4.getHasStack())
{
ItemStack var5 = var4.getStack();
var3 = var5.copy();
if (par2 <= 14) {
if (!this.mergeItemStack(var5, 15, this.inventorySlots.size(), true))
{
return null;
}
}
else if (!this.mergeItemStack(var5, 0, 15, false))
{
return null;
}
if (var5.stackSize == 0)
{
var4.putStack((ItemStack) null);
}
else
{
var4.onSlotChanged();
}
}
return var3;
}
@Override
public boolean canInteractWith(EntityPlayer player) {
return testNuke.isUseableByPlayer(player);
}
@Override
public void detectAndSendChanges() {
super.detectAndSendChanges();
for(int i = 0; i < this.crafters.size(); i++)
{
ICrafting par1 = (ICrafting)this.crafters.get(i);
if(this.progress != this.testNuke.progress)
{
par1.sendProgressBarUpdate(this, 0, this.testNuke.progress);
}
if(this.power != this.testNuke.power)
{
par1.sendProgressBarUpdate(this, 1, this.testNuke.power);
}
}
this.progress = this.testNuke.progress;
this.power = this.testNuke.power;
}
@Override
public void updateProgressBar(int i, int j) {
if(i == 0)
{
testNuke.progress = j;
}
if(i == 1)
{
testNuke.power = j;
}
}
}

View File

@ -1,6 +1,6 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.gui.SlotDiFurnace;
import com.hbm.inventory.SlotDiFurnace;
import com.hbm.tileentity.TileEntityMachineDeuterium;
import net.minecraft.entity.player.EntityPlayer;

View File

@ -1,6 +1,6 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.gui.SlotDiFurnace;
import com.hbm.inventory.SlotDiFurnace;
import com.hbm.tileentity.TileEntityMachineCoal;
import com.hbm.tileentity.TileEntityMachineDiesel;

View File

@ -1,6 +1,6 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.gui.SlotDiFurnace;
import com.hbm.inventory.SlotDiFurnace;
import com.hbm.tileentity.TileEntityMachineRTG;
import com.hbm.tileentity.TileEntityMachineUF6Tank;

View File

@ -1,6 +1,6 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.gui.SlotDiFurnace;
import com.hbm.inventory.SlotDiFurnace;
import com.hbm.tileentity.TileEntityMachineDeuterium;
import com.hbm.tileentity.TileEntityMachineSchrabidiumTransmutator;

View File

@ -1,6 +1,6 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.gui.SlotDiFurnace;
import com.hbm.inventory.SlotDiFurnace;
import com.hbm.tileentity.TileEntityMachineDiesel;
import com.hbm.tileentity.TileEntityMachineShredder;

View File

@ -1,4 +1,4 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.tileentity.TileEntityConverterRfHe;
import com.hbm.tileentity.TileEntityMachineTeleporter;

View File

@ -1,4 +1,4 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.tileentity.TileEntityNukeBoy;

View File

@ -1,4 +1,4 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.tileentity.TileEntityNukeCustom;

View File

@ -1,4 +1,4 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.tileentity.TileEntityNukeFleija;

View File

@ -1,6 +1,6 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.gui.SlotDiFurnace;
import com.hbm.inventory.SlotDiFurnace;
import com.hbm.tileentity.TileEntityNukeFurnace;
import net.minecraft.entity.player.EntityPlayer;

View File

@ -1,4 +1,4 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.tileentity.TileEntityNukeGadget;

View File

@ -1,4 +1,4 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.tileentity.TileEntityNukeMan;

View File

@ -1,4 +1,4 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.tileentity.TileEntityNukeMike;

View File

@ -1,4 +1,4 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.tileentity.TileEntityNukePrototype;

View File

@ -1,4 +1,4 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.tileentity.TileEntityNukeTsar;

View File

@ -1,6 +1,6 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.gui.SlotDiFurnace;
import com.hbm.inventory.SlotDiFurnace;
import com.hbm.tileentity.TileEntityMachinePuF6Tank;
import net.minecraft.entity.player.EntityPlayer;

View File

@ -1,6 +1,6 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.gui.SlotDiFurnace;
import com.hbm.inventory.SlotDiFurnace;
import com.hbm.tileentity.TileEntityMachineReactor;
import net.minecraft.entity.player.EntityPlayer;

View File

@ -1,4 +1,4 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.tileentity.TileEntityMachineGenerator;
import com.hbm.tileentity.TileEntityReactorMultiblock;

View File

@ -1,4 +1,4 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.tileentity.TileEntityReactorMultiblock;
import com.hbm.tileentity.TileEntityReiXMainframe;

View File

@ -1,6 +1,6 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.gui.SlotDiFurnace;
import com.hbm.inventory.SlotDiFurnace;
import com.hbm.tileentity.TileEntityRtgFurnace;
import net.minecraft.entity.player.EntityPlayer;

View File

@ -1,4 +1,4 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.tileentity.TileEntityTestNuke;

View File

@ -1,6 +1,6 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.gui.SlotDiFurnace;
import com.hbm.inventory.SlotDiFurnace;
import com.hbm.tileentity.TileEntityMachineUF6Tank;
import net.minecraft.entity.player.EntityPlayer;

View File

@ -1,4 +1,4 @@
package com.hbm.gui.container;
package com.hbm.inventory.container;
import com.hbm.tileentity.TileEntityFusionMultiblock;
import com.hbm.tileentity.TileEntityWatzCore;

View File

@ -1,8 +1,8 @@
package com.hbm.gui.gui;
package com.hbm.inventory.gui;
import org.lwjgl.opengl.GL11;
import com.hbm.gui.container.ContainerBombMulti;
import com.hbm.inventory.container.ContainerBombMulti;
import com.hbm.lib.RefStrings;
import com.hbm.tileentity.TileEntityBombMulti;

View File

@ -1,8 +1,8 @@
package com.hbm.gui.gui;
package com.hbm.inventory.gui;
import org.lwjgl.opengl.GL11;
import com.hbm.gui.container.ContainerConverterHeRf;
import com.hbm.inventory.container.ContainerConverterHeRf;
import com.hbm.lib.RefStrings;
import com.hbm.tileentity.TileEntityConverterHeRf;

View File

@ -1,8 +1,8 @@
package com.hbm.gui.gui;
package com.hbm.inventory.gui;
import org.lwjgl.opengl.GL11;
import com.hbm.gui.container.ContainerConverterRfHe;
import com.hbm.inventory.container.ContainerConverterRfHe;
import com.hbm.lib.RefStrings;
import com.hbm.tileentity.TileEntityConverterRfHe;

View File

@ -1,8 +1,8 @@
package com.hbm.gui.gui;
package com.hbm.inventory.gui;
import org.lwjgl.opengl.GL11;
import com.hbm.gui.container.ContainerCoreAdvanced;
import com.hbm.inventory.container.ContainerCoreAdvanced;
import com.hbm.lib.RefStrings;
import com.hbm.tileentity.TileEntityCoreAdvanced;
import com.hbm.tileentity.TileEntityCoreTitanium;

View File

@ -1,8 +1,8 @@
package com.hbm.gui.gui;
package com.hbm.inventory.gui;
import org.lwjgl.opengl.GL11;
import com.hbm.gui.container.ContainerCoreTitanium;
import com.hbm.inventory.container.ContainerCoreTitanium;
import com.hbm.lib.RefStrings;
import com.hbm.tileentity.TileEntityCoreTitanium;
import com.hbm.tileentity.TileEntityMachineGenerator;

View File

@ -1,8 +1,8 @@
package com.hbm.gui.gui;
package com.hbm.inventory.gui;
import org.lwjgl.opengl.GL11;
import com.hbm.gui.container.ContainerFWatzCore;
import com.hbm.inventory.container.ContainerFWatzCore;
import com.hbm.lib.RefStrings;
import com.hbm.tileentity.TileEntityFWatzCore;
import com.hbm.tileentity.TileEntityFusionMultiblock;

View File

@ -1,8 +1,8 @@
package com.hbm.gui.gui;
package com.hbm.inventory.gui;
import org.lwjgl.opengl.GL11;
import com.hbm.gui.container.ContainerFusionMultiblock;
import com.hbm.inventory.container.ContainerFusionMultiblock;
import com.hbm.lib.RefStrings;
import com.hbm.tileentity.TileEntityFusionMultiblock;
import com.hbm.tileentity.TileEntityReactorMultiblock;

View File

@ -1,11 +1,11 @@
package com.hbm.gui.gui;
package com.hbm.inventory.gui;
import org.lwjgl.opengl.GL11;
import com.hbm.gui.container.ContainerIGenerator;
import com.hbm.gui.container.ContainerReiXMainframe;
import com.hbm.inventory.container.ContainerIGenerator;
import com.hbm.inventory.container.ContainerReiXMainframe;
import com.hbm.lib.RefStrings;
import com.hbm.tileentity.TileEntityIGenerator;
import com.hbm.tileentity.TileEntityMachineIGenerator;
import com.hbm.tileentity.TileEntityReiXMainframe;
import net.minecraft.client.Minecraft;
@ -17,9 +17,9 @@ import net.minecraft.util.ResourceLocation;
public class GUIIGenerator extends GuiContainer {
private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/gui_igenerator.png");
private TileEntityIGenerator diFurnace;
private TileEntityMachineIGenerator diFurnace;
public GUIIGenerator(InventoryPlayer invPlayer, TileEntityIGenerator tedf) {
public GUIIGenerator(InventoryPlayer invPlayer, TileEntityMachineIGenerator tedf) {
super(new ContainerIGenerator(invPlayer, tedf));
diFurnace = tedf;

View File

@ -1,4 +1,4 @@
package com.hbm.gui.gui;
package com.hbm.inventory.gui;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.inventory.GuiContainer;
@ -8,7 +8,7 @@ import net.minecraft.util.ResourceLocation;
import org.lwjgl.opengl.GL11;
import com.hbm.gui.container.ContainerLaunchPadTier1;
import com.hbm.inventory.container.ContainerLaunchPadTier1;
import com.hbm.lib.RefStrings;
import com.hbm.tileentity.TileEntityLaunchPad;

View File

@ -1,4 +1,4 @@
package com.hbm.gui.gui;
package com.hbm.inventory.gui;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.inventory.GuiContainer;
@ -8,7 +8,7 @@ import net.minecraft.util.ResourceLocation;
import org.lwjgl.opengl.GL11;
import com.hbm.gui.container.ContainerMachineBattery;
import com.hbm.inventory.container.ContainerMachineBattery;
import com.hbm.lib.RefStrings;
import com.hbm.tileentity.TileEntityMachineBattery;

View File

@ -1,8 +1,8 @@
package com.hbm.gui.gui;
package com.hbm.inventory.gui;
import org.lwjgl.opengl.GL11;
import com.hbm.gui.container.ContainerMachineCMBFactory;
import com.hbm.inventory.container.ContainerMachineCMBFactory;
import com.hbm.lib.RefStrings;
import com.hbm.tileentity.TileEntityMachineCMBFactory;
import com.hbm.tileentity.TileEntityMachineShredder;

View File

@ -1,8 +1,8 @@
package com.hbm.gui.gui;
package com.hbm.inventory.gui;
import org.lwjgl.opengl.GL11;
import com.hbm.gui.container.ContainerCentrifuge;
import com.hbm.inventory.container.ContainerCentrifuge;
import com.hbm.lib.RefStrings;
import com.hbm.tileentity.TileEntityMachineCentrifuge;

View File

@ -1,4 +1,4 @@
package com.hbm.gui.gui;
package com.hbm.inventory.gui;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.inventory.GuiContainer;
@ -8,7 +8,7 @@ import net.minecraft.util.ResourceLocation;
import org.lwjgl.opengl.GL11;
import com.hbm.gui.container.ContainerMachineCoal;
import com.hbm.inventory.container.ContainerMachineCoal;
import com.hbm.lib.RefStrings;
import com.hbm.tileentity.TileEntityMachineCoal;

View File

@ -0,0 +1,50 @@
package com.hbm.inventory.gui;
import org.lwjgl.opengl.GL11;
import com.hbm.inventory.container.ContainerMachineCyclotron;
import com.hbm.inventory.container.ContainerMachineDeuterium;
import com.hbm.lib.RefStrings;
import com.hbm.tileentity.TileEntityMachineCyclotron;
import com.hbm.tileentity.TileEntityMachineDeuterium;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.inventory.GuiContainer;
import net.minecraft.client.resources.I18n;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.util.ResourceLocation;
public class GUIMachineCyclotron extends GuiContainer {
private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/gui_cyclotron.png");
private TileEntityMachineCyclotron diFurnace;
public GUIMachineCyclotron(InventoryPlayer invPlayer, TileEntityMachineCyclotron tedf) {
super(new ContainerMachineCyclotron(invPlayer, tedf));
diFurnace = tedf;
this.xSize = 176;
this.ySize = 222;
}
@Override
protected void drawGuiContainerForegroundLayer(int i, int j) {
String name = this.diFurnace.hasCustomInventoryName() ? this.diFurnace.getInventoryName() : I18n.format(this.diFurnace.getInventoryName());
this.fontRendererObj.drawString(name, this.xSize / 2 - this.fontRendererObj.getStringWidth(name) / 2, 6, 4210752);
this.fontRendererObj.drawString(I18n.format("container.inventory"), 8, this.ySize - 96 + 2, 4210752);
}
@Override
protected void drawGuiContainerBackgroundLayer(float p_146976_1_, int p_146976_2_, int p_146976_3_) {
GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
Minecraft.getMinecraft().getTextureManager().bindTexture(texture);
drawTexturedModalRect(guiLeft, guiTop, 0, 0, xSize, ySize);
int k = diFurnace.getPowerScaled(88);
drawTexturedModalRect(guiLeft + 152, guiTop + 106 - k, 212, 88 - k, 16, k);
int l = diFurnace.getProgressScaled(36);
drawTexturedModalRect(guiLeft + 61, guiTop + 26, 176, 0, l, 36);
}
}

View File

@ -1,4 +1,4 @@
package com.hbm.gui.gui;
package com.hbm.inventory.gui;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.inventory.GuiContainer;
@ -8,7 +8,7 @@ import net.minecraft.util.ResourceLocation;
import org.lwjgl.opengl.GL11;
import com.hbm.gui.container.ContainerMachineDeuterium;
import com.hbm.inventory.container.ContainerMachineDeuterium;
import com.hbm.lib.RefStrings;
import com.hbm.tileentity.TileEntityMachineDeuterium;

View File

@ -1,8 +1,8 @@
package com.hbm.gui.gui;
package com.hbm.inventory.gui;
import org.lwjgl.opengl.GL11;
import com.hbm.gui.container.ContainerMachineDiesel;
import com.hbm.inventory.container.ContainerMachineDiesel;
import com.hbm.lib.RefStrings;
import com.hbm.tileentity.TileEntityMachineCoal;
import com.hbm.tileentity.TileEntityMachineDiesel;

View File

@ -1,4 +1,4 @@
package com.hbm.gui.gui;
package com.hbm.inventory.gui;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.inventory.GuiContainer;
@ -8,7 +8,7 @@ import net.minecraft.util.ResourceLocation;
import org.lwjgl.opengl.GL11;
import com.hbm.gui.container.ContainerElectricFurnace;
import com.hbm.inventory.container.ContainerElectricFurnace;
import com.hbm.lib.RefStrings;
import com.hbm.tileentity.TileEntityMachineElectricFurnace;

Some files were not shown because too many files have changed in this diff Show More