FWatz, new liquids, CMB furnace

This commit is contained in:
HbmMods 2016-09-23 20:34:21 +02:00
parent 07828dfeb2
commit 639ef099e7
68 changed files with 2884 additions and 90 deletions

View File

@ -14,6 +14,8 @@ death.attack.tauBlast=%1$s lud die XVL1456 zu lange auf und wurde in Stücke ger
death.attack.chopperBullet=%1$s wurde von %2$s gerekt.
death.attack.cmb=%1$s wurde von %2$s pulverisiert.
death.attack.subAtomic=%1$s's Atome wurden von %2$s vernichtet.
death.attack.radiation=%1$s starb an Strahlenvergiftung.
death.attack.acid=%1$s fiel in Säure.
item.redstone_sword.name=Redstoneschwert
item.big_sword.name=Großes Schwert
@ -121,6 +123,7 @@ container.machineDiesel=Dieselgenerator
tile.machine_shredder.name=Shredder
container.machineShredder=Shredder
tile.machine_combine_factory.name=CMB-Stahl Hochofen
container.machineCMB=CMB-Stahl Hochofen
tile.factory_titanium_hull.name=Einfache Fabrikshülle
tile.factory_titanium_furnace.name=Einfache Fabrikzugriffsluke
@ -271,6 +274,9 @@ tile.brick_concrete.name=Betonziegel
tile.brick_obsidian.name=Obsidianziegel
tile.brick_light.name=Helle Ziegel
tile.cmb_brick.name=CMB-Stahlfliese
tile.cmb_brick_reinforced.name=Verstärkte CMB-Ziegel
item.nugget_uranium.name=Urannugget
item.nugget_plutonium.name=Plutoniumnugget
item.nugget_neptunium.name=Neptuniumnugget
@ -353,6 +359,8 @@ item.inf_tritium.name=Unendlicher Tritiumtank
item.inf_coolant.name=Unendlicher Kühlflüssigkeitstank
item.inf_sulfur.name=Unendlicher Schwefeltank
item.inf_diesel.name=Unendlicher Dieseltank
item.inf_antimatter.name=Unendlicher Antimaterietank
item.inf_antischrabidium.name=Unendlicher Antischrabidiumtank
item.canister_empty.name=Leerer Kanister
item.canister_fuel.name=Treibstoffkanister
@ -411,7 +419,7 @@ item.rod_waste.name=Atommüllstab
item.rod_dual_waste.name=Doppelter Atommüllstab
item.rod_quad_waste.name=Vierfacher Atommüllstab
item.gun_rpg.name=RPG
item.gun_rpg.name=Raketenwerfer
item.gun_rpg_ammo.name=Rakete
item.flame_pony.name=Bild eines Cartoon Ponys
@ -544,7 +552,7 @@ item.gun_revolver_cursed.name=Verfluchte Pistole
item.gun_fatman.name=M42 Nukleares Katapult "Fat Man"
item.gun_xvl1456.name=XVL1456 Tau-Kanone Prototyp
item.gun_osipr.name=Standartausrüstung für Sicherheitskräfte
item.gun_mp.name=Des Pazifistens Machinegewehr
item.gun_mp.name=Des Pazifistens Maschinengewehr
item.gun_zomg.name=Singularitätsbetriebener Paarvernichtungsstrahl "ZOMG Kanone"
item.gun_super_shotgun.name=Super Shotgun
item.gun_moist_nugget.name=Moisn-Nagant
@ -568,6 +576,10 @@ item.clip_revolver_schrabidium.name=Schrabidium-Muntionsbehälter
item.clip_rpg.name=Raketenbehälter
item.clip_xvl1456.name=Große Isotopenbox
item.clip_osipr.name=AR2 Magazin
item.clip_revolver_lead.name=Box voll Atompatronen
item.clip_revolver_cursed.name=Magazin der Standardpistole des Britannischen Militärs
item.clip_fatman.name=Miniatombomben im Sechserpack
item.clip_mp.name=Magazin des Standardsturmgewehrs des Britannischen Militärs
tile.block_schrabidium.name=Schrabidiumblock
item.plate_gold.name=Goldplatte
@ -706,6 +718,9 @@ item.wand_k.name=Konstruktions-Zauberstab
item.wand_s.name=Struktur-Zauberstab
item.wand_d.name=Debug-Zauberstab
item.screwdriver.name=Schraubenzieher
item.overfuse.name=Singularitätsschraubenzieher
item.steel_helmet.name=Stahlhelm
item.steel_plate.name=Stahlbrustpanzer
item.steel_legs.name=Stahlbeinschutz
@ -774,7 +789,14 @@ item.pellet_advanced.name=Fortgeschrittenes Watzaufwertugspellet
item.titanium_filter.name=Titanfilter
tile.mud_block.name=Giftiger Schlamm
fluid.mud_fluid=Giftiger Schlamm
item.bucket_mud.name=Eimer mit giftigem Schlamm
tile.acid_block.name=Säure
fluid.acid_fluid=Säure
item.bucket_acid.name=Säureeimer
tile.toxic_block.name=Stereotypischer grüner Schleim
fluid.toxic_fluid=Stereotypischer grüner Schleim
item.bucket_toxic.name=Eimer mit stereotypischem grünen Schleim
item.tank_waste_0.name=Schlammcontainer
item.tank_waste_1.name=Schlammcontainer
item.tank_waste_2.name=Schlammcontainer

View File

@ -14,6 +14,8 @@ death.attack.tauBlast=%1$s charged the XVL1456 for too long and was blown into p
death.attack.chopperBullet=%1$s was rekt by %2$s.
death.attack.cmb=%1$s was fizzeled by %2$s.
death.attack.subAtomic=%1$s's atoms were annihilated by %2$s.
death.attack.radiation=%1$s died from radiation poisoning.
death.attack.acid=%1$s fell into acid.
item.redstone_sword.name=Redstone Sword
item.big_sword.name=Great Sword
@ -121,6 +123,7 @@ container.machineDiesel=Diesel Generator
tile.machine_shredder.name=Shredder
container.machineShredder=Shredder
tile.machine_combine_factory.name=CMB Steel Furnace
container.machineCMB=CMB Steel Furnace
tile.factory_titanium_hull.name=Basic Factory Casing
tile.factory_titanium_furnace.name=Basic Factory Access Hatch
@ -271,6 +274,9 @@ tile.brick_concrete.name=Concrete Bricks
tile.brick_obsidian.name=Obsidian Bricks
tile.brick_light.name=Light Bricks
tile.cmb_brick.name=CMB Steel Tile
tile.cmb_brick_reinforced.name=Reinforced CMB Bricks
item.nugget_uranium.name=Uranium Nugget
item.nugget_plutonium.name=Plutonium Nugget
item.nugget_neptunium.name=Neptunium Nugget
@ -353,6 +359,8 @@ item.inf_tritium.name=Infinite Tritium Tank
item.inf_coolant.name=Infinite Coolant Tank
item.inf_sulfur.name=Infinite Sulfur Tank
item.inf_diesel.name=Infinite Diesel Tank
item.inf_antimatter.name=Infinite Antimatter Tank
item.inf_antischrabidium.name=Infinite Antischrabidium Tank
item.canister_empty.name=Empty Canister
item.canister_fuel.name=Fuel Canister
@ -411,7 +419,7 @@ item.rod_waste.name=Nuclear Waste Rod
item.rod_dual_waste.name=Nuclear Waste Dual Rod
item.rod_quad_waste.name=Nuclear Waste Quad Rod
item.gun_rpg.name=RPG
item.gun_rpg.name=Rocket Launcher
item.gun_rpg_ammo.name=Rocket
item.flame_pony.name=Painting of a Cartoon Pony
@ -568,6 +576,10 @@ item.clip_revolver_schrabidium.name=Schrabidium Ammo Container
item.clip_rpg.name=Rocket Container
item.clip_xvl1456.name=Large Isotope Box
item.clip_osipr.name=AR2 Magazine
item.clip_revolver_lead.name=Box of Nuclear Bullets
item.clip_revolver_cursed.name=Britannia Military Standard Issue Pisol Magazine
item.clip_fatman.name=Six Pack of Mini Nukes
item.clip_mp.name=Britannia Military Standard Issue Assult Rifle Magazine
tile.block_schrabidium.name=Block of Schrabidium
item.plate_gold.name=Gold Plate
@ -706,6 +718,9 @@ item.wand_k.name=Construction Wand
item.wand_s.name=Structure Wand
item.wand_d.name=Debug Wand
item.screwdriver.name=Screwdriver
item.overfuse.name=Singularity Screwdriver
item.steel_helmet.name=Steel Helmet
item.steel_plate.name=Steel Chestplate
item.steel_legs.name=Steel Leggings
@ -774,7 +789,14 @@ item.pellet_advanced.name=Advanced Watz Performance Improver
item.titanium_filter.name=Titanium Filter
tile.mud_block.name=Poisonous Mud
fluid.mud_fluid=Poisonous Mud
item.bucket_mud.name=Bucket of Poisonous Mud
tile.acid_block.name=Acid
fluid.acid_fluid=Acid
item.bucket_acid.name=Bucket of Acid
tile.toxic_block.name=Stereotypical Green Ooze
fluid.toxic_fluid=Stereotypical Green Ooze
item.bucket_toxic.name=Bucket of Stereotypical Green Ooze
item.tank_waste_0.name=Mud Container
item.tank_waste_1.name=Mud Container
item.tank_waste_2.name=Mud Container

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

View File

@ -0,0 +1,5 @@
{
"animation": {
"frametime": 3
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 KiB

View File

@ -0,0 +1,45 @@
{
"animation": {
"frametime": 2,
"frames": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
18,
17,
16,
15,
14,
13,
12,
11,
10,
9,
8,
7,
6,
5,
4,
3,
2,
1
]
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 327 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 374 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 432 B

After

Width:  |  Height:  |  Size: 468 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

View File

@ -0,0 +1,5 @@
{
"animation": {
"frametime": 3
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

View File

@ -0,0 +1,45 @@
{
"animation": {
"frametime": 2,
"frames": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
18,
17,
16,
15,
14,
13,
12,
11,
10,
9,
8,
7,
6,
5,
4,
3,
2,
1
]
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 331 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 330 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 264 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 278 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 278 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 272 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 334 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 275 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 275 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 385 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 282 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 339 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 973 B

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@ -0,0 +1,119 @@
package com.hbm.blocks;
import java.util.Random;
import com.hbm.entity.EntityNuclearCreeper;
import com.hbm.lib.Library;
import com.hbm.lib.ModDamageSource;
import com.hbm.lib.RefStrings;
import com.hbm.main.MainRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.monster.EntityCreeper;
import net.minecraft.entity.monster.EntityZombie;
import net.minecraft.entity.passive.EntityMooshroom;
import net.minecraft.entity.passive.EntityVillager;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Blocks;
import net.minecraft.potion.Potion;
import net.minecraft.potion.PotionEffect;
import net.minecraft.util.DamageSource;
import net.minecraft.util.IIcon;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
import net.minecraftforge.fluids.BlockFluidClassic;
import net.minecraftforge.fluids.Fluid;
public class AcidBlock extends BlockFluidClassic {
@SideOnly(Side.CLIENT)
public static IIcon stillIcon;
@SideOnly(Side.CLIENT)
public static IIcon flowingIcon;
public Random rand = new Random();
public static DamageSource damageSource;
public AcidBlock(Fluid fluid, Material material, DamageSource damage) {
super(fluid, material);
damageSource = damage;
setQuantaPerBlock(4);
setCreativeTab(null);
displacements.put(this, false);
}
@SideOnly(Side.CLIENT)
public IIcon getIcon(int side, int meta) {
return (side == 0 || side == 1) ? stillIcon : flowingIcon;
}
@SideOnly(Side.CLIENT)
public void registerBlockIcons(IIconRegister register) {
stillIcon = register.registerIcon(RefStrings.MODID + ":acid_still");
flowingIcon = register.registerIcon(RefStrings.MODID + ":acid_flowing");
}
@Override
public boolean canDisplace(IBlockAccess world, int x, int y, int z) {
if (world.getBlock(x, y, z).getMaterial().isLiquid()) {
return false;
}
return super.canDisplace(world, x, y, z);
}
@Override
public boolean displaceIfPossible(World world, int x, int y, int z) {
if (world.getBlock(x, y, z).getMaterial().isLiquid()) {
return false;
}
return super.displaceIfPossible(world, x, y, z);
}
public void onEntityCollidedWithBlock(World world, int x, int y, int z, Entity entity) {
entity.setInWeb();
entity.attackEntityFrom(ModDamageSource.acid, 10000F);
}
public void updateTick(World world, int x, int y, int z, Random rand) {
super.updateTick(world, x, y, z, rand);
reactToBlocks(world, x + 1, y, z);
reactToBlocks(world, x - 1, y, z);
reactToBlocks(world, x, y + 1, z);
reactToBlocks(world, x, y - 1, z);
reactToBlocks(world, x, y, z + 1);
reactToBlocks(world, x, y, z - 1);
}
@Override
public void onNeighborBlockChange(World world, int x, int y, int z, Block block)
{
super.onNeighborBlockChange(world, x, y, z, block);
reactToBlocks(world, x + 1, y, z);
reactToBlocks(world, x - 1, y, z);
reactToBlocks(world, x, y + 1, z);
reactToBlocks(world, x, y - 1, z);
reactToBlocks(world, x, y, z + 1);
reactToBlocks(world, x, y, z - 1);
}
public void reactToBlocks(World world, int x, int y, int z) {
if(world.getBlock(x, y, z) != ModBlocks.acid_block) {
world.setBlock(x, y, z, Blocks.air);
}
}
public int tickRate(World p_149738_1_) {
return 5;
}
}

View File

@ -0,0 +1,28 @@
package com.hbm.blocks;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.util.IIcon;
import net.minecraftforge.fluids.Fluid;
public class AcidFluid extends Fluid {
public AcidFluid() {
super("acid_fluid");
}
@SideOnly(Side.CLIENT)
public IIcon getIcon() {
return getStillIcon();
}
@SideOnly(Side.CLIENT)
public IIcon getStillIcon() {
return AcidBlock.stillIcon;
}
@SideOnly(Side.CLIENT)
public IIcon getFlowingIcon() {
return AcidBlock.flowingIcon;
}
}

View File

@ -5,6 +5,7 @@ import java.util.Random;
import com.hbm.entity.EntityNuclearCreeper;
import com.hbm.items.ModItems;
import com.hbm.lib.Library;
import com.hbm.lib.ModDamageSource;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@ -122,6 +123,7 @@ public class BlockOre extends Block {
} else if(!(entity instanceof EntityNuclearCreeper) && !(entity instanceof EntityMooshroom) && !(entity instanceof EntityZombie)) {
((EntityLivingBase) entity).addPotionEffect(new PotionEffect(Potion.poison.id, 3 * 60 * 20, 2));
((EntityLivingBase) entity).addPotionEffect(new PotionEffect(Potion.wither.id, 30 * 20, 0));
entity.attackEntityFrom(ModDamageSource.radiation, 0.5F);
}
}
if (entity instanceof EntityLivingBase && this == ModBlocks.block_waste)
@ -159,6 +161,7 @@ public class BlockOre extends Block {
((EntityLivingBase) entity).addPotionEffect(new PotionEffect(Potion.poison.id, 10 * 60 * 20, 4));
((EntityLivingBase) entity).addPotionEffect(new PotionEffect(Potion.moveSlowdown.id, 4 * 60 * 20, 2));
((EntityLivingBase) entity).addPotionEffect(new PotionEffect(Potion.wither.id, 3 * 60 * 20, 2));
entity.attackEntityFrom(ModDamageSource.radiation, 2.5F);
}
}
if (entity instanceof EntityLivingBase && (this == ModBlocks.waste_trinitite || this == ModBlocks.waste_trinitite_red))

View File

@ -1,7 +1,13 @@
package com.hbm.blocks;
import com.hbm.main.MainRegistry;
import com.hbm.tileentity.TileEntityFWatzCore;
import com.hbm.tileentity.TileEntityMachineBattery;
import cpw.mods.fml.common.network.internal.FMLNetworkHandler;
import net.minecraft.block.BlockContainer;
import net.minecraft.block.material.Material;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;
@ -13,7 +19,25 @@ public class FWatzCore extends BlockContainer {
@Override
public TileEntity createNewTileEntity(World p_149915_1_, int p_149915_2_) {
return null;
return new TileEntityFWatzCore();
}
@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())
{
TileEntityFWatzCore entity = (TileEntityFWatzCore) world.getTileEntity(x, y, z);
if(entity != null)
{
FMLNetworkHandler.openGui(player, MainRegistry.instance, ModBlocks.guiID_fwatz_multiblock, world, x, y, z);
}
return true;
} else {
return false;
}
}
}

View File

@ -4,6 +4,8 @@ import java.util.Random;
import com.hbm.lib.RefStrings;
import com.hbm.main.MainRegistry;
import com.hbm.tileentity.TileEntityFWatzCore;
import com.hbm.tileentity.TileEntityFusionMultiblock;
import cpw.mods.fml.common.network.internal.FMLNetworkHandler;
import cpw.mods.fml.relauncher.Side;
@ -108,4 +110,73 @@ public class FWatzHatch extends Block {
world.setBlockMetadataWithNotify(x, y, z, 4, 2);
}
}
@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())
{
if(world.getBlockMetadata(x, y, z) == 2)
{
if(world.getTileEntity(x, y + 11, z + 9) instanceof TileEntityFWatzCore)
{
if(((TileEntityFWatzCore)world.getTileEntity(x, y + 11, z + 9)).isStructureValid(world))
{
FMLNetworkHandler.openGui(player, MainRegistry.instance, ModBlocks.guiID_fwatz_multiblock, world, x, y + 11, z + 9);
} else {
player.addChatMessage(new ChatComponentText("[Fusionary Watz Plant] Error: Reactor Structure not valid!"));
}
} else {
player.addChatMessage(new ChatComponentText("[Fusionary Watz Plant] Error: Reactor Core not found!"));
}
}
if(world.getBlockMetadata(x, y, z) == 3)
{
if(world.getTileEntity(x, y + 11, z - 9) instanceof TileEntityFWatzCore)
{
if(((TileEntityFWatzCore)world.getTileEntity(x, y + 11, z - 9)).isStructureValid(world))
{
FMLNetworkHandler.openGui(player, MainRegistry.instance, ModBlocks.guiID_fwatz_multiblock, world, x, y + 11, z - 9);
} else {
player.addChatMessage(new ChatComponentText("[Fusionary Watz Plant] Error: Reactor Structure not valid!"));
}
} else {
player.addChatMessage(new ChatComponentText("[Fusionary Watz Plant] Error: Reactor Core not found!"));
}
}
if(world.getBlockMetadata(x, y, z) == 4)
{
if(world.getTileEntity(x + 9, y + 11, z) instanceof TileEntityFWatzCore)
{
if(((TileEntityFWatzCore)world.getTileEntity(x + 9, y + 11, z)).isStructureValid(world))
{
FMLNetworkHandler.openGui(player, MainRegistry.instance, ModBlocks.guiID_fwatz_multiblock, world, x + 9, y + 11, z);
} else {
player.addChatMessage(new ChatComponentText("[Fusionary Watz Plant] Error: Reactor Structure not valid!"));
}
} else {
player.addChatMessage(new ChatComponentText("[Fusionary Watz Plant] Error: Reactor Core not found!"));
}
}
if(world.getBlockMetadata(x, y, z) == 5)
{
if(world.getTileEntity(x - 9, y + 11, z) instanceof TileEntityFWatzCore)
{
if(((TileEntityFWatzCore)world.getTileEntity(x - 9, y + 11, z)).isStructureValid(world))
{
FMLNetworkHandler.openGui(player, MainRegistry.instance, ModBlocks.guiID_fwatz_multiblock, world, x - 9, y + 11, z);
} else {
player.addChatMessage(new ChatComponentText("[Fusionary Watz Plant] Error: Reactor Structure not valid!"));
}
} else {
player.addChatMessage(new ChatComponentText("[Fusionary Watz Plant] Error: Reactor Core not found!"));
}
}
return true;
} else {
return false;
}
}
}

View File

@ -77,6 +77,9 @@ public class ModBlocks {
public static Block brick_concrete;
public static Block brick_obsidian;
public static Block brick_light;
public static Block cmb_brick;
public static Block cmb_brick_reinforced;
public static Block block_meteor;
@ -281,6 +284,14 @@ public class ModBlocks {
public static Block mud_block;
public static Fluid mud_fluid;
public static final Material fluidmud = (new MaterialLiquid(MapColor.adobeColor));
public static Block acid_block;
public static Fluid acid_fluid;
public static final Material fluidacid = (new MaterialLiquid(MapColor.purpleColor));
public static Block toxic_block;
public static Fluid toxic_fluid;
public static final Material fluidtoxic = (new MaterialLiquid(MapColor.greenColor));
private static void initializeBlock() {
@ -342,6 +353,9 @@ public class ModBlocks {
brick_obsidian = new BlockGeneric(Material.rock).setBlockName("brick_obsidian").setCreativeTab(MainRegistry.tabBlock).setLightOpacity(15).setHardness(15.0F).setResistance(6000.0F).setBlockTextureName(RefStrings.MODID + ":brick_obsidian");
brick_light = new BlockGeneric(Material.rock).setBlockName("brick_light").setCreativeTab(MainRegistry.tabBlock).setLightOpacity(15).setHardness(15.0F).setResistance(60.0F).setBlockTextureName(RefStrings.MODID + ":brick_light");
cmb_brick = new BlockGeneric(Material.rock).setBlockName("cmb_brick").setCreativeTab(MainRegistry.tabBlock).setHardness(25.0F).setResistance(6000.0F).setBlockTextureName(RefStrings.MODID + ":cmb_brick");
cmb_brick_reinforced = new BlockGeneric(Material.rock).setBlockName("cmb_brick_reinforced").setCreativeTab(MainRegistry.tabBlock).setHardness(25.0F).setResistance(60000.0F).setBlockTextureName(RefStrings.MODID + ":cmb_brick_reinforced");
block_meteor = new BlockGeneric(Material.rock).setBlockName("block_meteor").setCreativeTab(MainRegistry.tabBlock).setHardness(15.0F).setResistance(6000.0F).setBlockTextureName(RefStrings.MODID + ":block_meteor");
tape_recorder = new DecoTapeRecorder(Material.rock).setBlockName("tape_recorder").setCreativeTab(MainRegistry.tabBlock).setHardness(15.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":deco_tape_recorder");
@ -502,6 +516,14 @@ public class ModBlocks {
mud_fluid = new MudFluid().setDensity(2500).setViscosity(3000).setLuminosity(5).setTemperature(2773).setUnlocalizedName("mud_fluid");
FluidRegistry.registerFluid(mud_fluid);
mud_block = new MudBlock(mud_fluid, fluidmud.setReplaceable(), ModDamageSource.mudPoisoning).setBlockName("mud_block").setResistance(500F);
acid_fluid = new AcidFluid().setDensity(2500).setViscosity(1500).setLuminosity(5).setTemperature(2773).setUnlocalizedName("mud_fluid");
FluidRegistry.registerFluid(acid_fluid);
acid_block = new AcidBlock(acid_fluid, fluidacid.setReplaceable(), ModDamageSource.acid).setBlockName("acid_block").setResistance(500F);
toxic_fluid = new ToxicFluid().setDensity(2500).setViscosity(2000).setLuminosity(15).setTemperature(2773).setUnlocalizedName("mud_fluid");
FluidRegistry.registerFluid(toxic_fluid);
toxic_block = new ToxicBlock(toxic_fluid, fluidtoxic.setReplaceable(), ModDamageSource.radiation).setBlockName("toxic_block").setResistance(500F);
}
private static void registerBlock() {
@ -565,6 +587,10 @@ public class ModBlocks {
GameRegistry.registerBlock(brick_obsidian, brick_obsidian.getUnlocalizedName());
GameRegistry.registerBlock(brick_light, brick_light.getUnlocalizedName());
//CMB Building Elements
GameRegistry.registerBlock(cmb_brick, cmb_brick.getUnlocalizedName());
GameRegistry.registerBlock(cmb_brick_reinforced, cmb_brick_reinforced.getUnlocalizedName());
//Decoration Blocks
GameRegistry.registerBlock(block_meteor, block_meteor.getUnlocalizedName());
GameRegistry.registerBlock(tape_recorder, tape_recorder.getUnlocalizedName());
@ -717,5 +743,7 @@ public class ModBlocks {
//Fluids
GameRegistry.registerBlock(mud_block, mud_block.getUnlocalizedName());
GameRegistry.registerBlock(acid_block, acid_block.getUnlocalizedName());
GameRegistry.registerBlock(toxic_block, toxic_block.getUnlocalizedName());
}
}

View File

@ -36,6 +36,7 @@ public class MudBlock extends BlockFluidClassic {
public static IIcon stillIcon;
@SideOnly(Side.CLIENT)
public static IIcon flowingIcon;
public Random rand = new Random();
public static DamageSource damageSource;
@ -111,6 +112,103 @@ public class MudBlock extends BlockFluidClassic {
public void updateTick(World world, int x, int y, int z, Random rand) {
super.updateTick(world, x, y, z, rand);
reactToBlocks2(world, x + 1, y, z);
reactToBlocks2(world, x - 1, y, z);
reactToBlocks2(world, x, y + 1, z);
reactToBlocks2(world, x, y - 1, z);
reactToBlocks2(world, x, y, z + 1);
reactToBlocks2(world, x, y, z - 1);
}
@Override
public void onNeighborBlockChange(World world, int x, int y, int z, Block block)
{
super.onNeighborBlockChange(world, x, y, z, block);
reactToBlocks(world, x + 1, y, z);
reactToBlocks(world, x - 1, y, z);
reactToBlocks(world, x, y + 1, z);
reactToBlocks(world, x, y - 1, z);
reactToBlocks(world, x, y, z + 1);
reactToBlocks(world, x, y, z - 1);
}
public void reactToBlocks(World world, int x, int y, int z) {
if(world.getBlock(x, y, z).getMaterial() != ModBlocks.fluidmud) {
Block block = world.getBlock(x, y, z);
if(block.getMaterial().isLiquid()) {
world.setBlock(x, y, z, Blocks.air);
}
}
}
public void reactToBlocks2(World world, int x, int y, int z) {
if(world.getBlock(x, y, z).getMaterial() != ModBlocks.fluidmud) {
Block block = world.getBlock(x, y, z);
if (block == Blocks.stone ||
block == Blocks.stone_brick_stairs ||
block == Blocks.stonebrick ||
block == Blocks.stone_slab ||
block == Blocks.stone) {
if(rand.nextInt(20) == 0)
world.setBlock(x, y, z, Blocks.cobblestone);
} else if (block == Blocks.cobblestone) {
if(rand.nextInt(15) == 0)
world.setBlock(x, y, z, Blocks.gravel);
} else if (block == Blocks.sandstone) {
if(rand.nextInt(5) == 0)
world.setBlock(x, y, z, Blocks.sand);
} else if (block == Blocks.hardened_clay ||
block == Blocks.stained_hardened_clay) {
if(rand.nextInt(10) == 0)
world.setBlock(x, y, z, Blocks.clay);
} else if (block.getMaterial() == Material.wood) {
world.setBlock(x, y, z, Blocks.air);
} else if (block.getMaterial() == Material.cactus) {
world.setBlock(x, y, z, Blocks.air);
} else if (block.getMaterial() == Material.cake) {
world.setBlock(x, y, z, Blocks.air);
} else if (block.getMaterial() == Material.circuits) {
world.setBlock(x, y, z, Blocks.air);
} else if (block.getMaterial() == Material.cloth) {
world.setBlock(x, y, z, Blocks.air);
} else if (block.getMaterial() == Material.coral) {
world.setBlock(x, y, z, Blocks.air);
} else if (block.getMaterial() == Material.craftedSnow) {
world.setBlock(x, y, z, Blocks.air);
} else if (block.getMaterial() == Material.glass) {
world.setBlock(x, y, z, Blocks.air);
} else if (block.getMaterial() == Material.gourd) {
world.setBlock(x, y, z, Blocks.air);
} else if (block.getMaterial() == Material.ice) {
world.setBlock(x, y, z, Blocks.air);
} else if (block.getMaterial() == Material.leaves) {
world.setBlock(x, y, z, Blocks.air);
} else if (block.getMaterial() == Material.packedIce) {
world.setBlock(x, y, z, Blocks.air);
} else if (block.getMaterial() == Material.piston) {
world.setBlock(x, y, z, Blocks.air);
} else if (block.getMaterial() == Material.plants) {
world.setBlock(x, y, z, Blocks.air);
} else if (block.getMaterial() == Material.portal) {
world.setBlock(x, y, z, Blocks.air);
} else if (block.getMaterial() == Material.redstoneLight) {
world.setBlock(x, y, z, Blocks.air);
} else if (block.getMaterial() == Material.snow) {
world.setBlock(x, y, z, Blocks.air);
} else if (block.getMaterial() == Material.sponge) {
world.setBlock(x, y, z, Blocks.air);
} else if (block.getMaterial() == Material.vine) {
world.setBlock(x, y, z, Blocks.air);
} else if (block.getMaterial() == Material.web) {
world.setBlock(x, y, z, Blocks.air);
} else if (block.getExplosionResistance(null) < 1.2F) {
world.setBlock(x, y, z, Blocks.air);
}
}
}
public int tickRate(World p_149738_1_) {

View File

@ -0,0 +1,145 @@
package com.hbm.blocks;
import java.util.Random;
import com.hbm.entity.EntityNuclearCreeper;
import com.hbm.lib.Library;
import com.hbm.lib.ModDamageSource;
import com.hbm.lib.RefStrings;
import com.hbm.main.MainRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.monster.EntityCreeper;
import net.minecraft.entity.monster.EntityZombie;
import net.minecraft.entity.passive.EntityMooshroom;
import net.minecraft.entity.passive.EntityVillager;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Blocks;
import net.minecraft.potion.Potion;
import net.minecraft.potion.PotionEffect;
import net.minecraft.util.DamageSource;
import net.minecraft.util.IIcon;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
import net.minecraftforge.fluids.BlockFluidClassic;
import net.minecraftforge.fluids.Fluid;
public class ToxicBlock extends BlockFluidClassic {
@SideOnly(Side.CLIENT)
public static IIcon stillIcon;
@SideOnly(Side.CLIENT)
public static IIcon flowingIcon;
public Random rand = new Random();
public static DamageSource damageSource;
public ToxicBlock(Fluid fluid, Material material, DamageSource damage) {
super(fluid, material);
damageSource = damage;
setQuantaPerBlock(4);
setCreativeTab(null);
displacements.put(this, false);
}
@SideOnly(Side.CLIENT)
public IIcon getIcon(int side, int meta) {
return (side == 0 || side == 1) ? stillIcon : flowingIcon;
}
@SideOnly(Side.CLIENT)
public void registerBlockIcons(IIconRegister register) {
stillIcon = register.registerIcon(RefStrings.MODID + ":toxic_still");
flowingIcon = register.registerIcon(RefStrings.MODID + ":toxic_flowing");
}
@Override
public boolean canDisplace(IBlockAccess world, int x, int y, int z) {
if (world.getBlock(x, y, z).getMaterial().isLiquid()) {
return false;
}
return super.canDisplace(world, x, y, z);
}
@Override
public boolean displaceIfPossible(World world, int x, int y, int z) {
if (world.getBlock(x, y, z).getMaterial().isLiquid()) {
return false;
}
return super.displaceIfPossible(world, x, y, z);
}
public void onEntityCollidedWithBlock(World world, int x, int y, int z, Entity entity) {
entity.setInWeb();
// if(entity instanceof EntityLivingBase)
// {
// entity.attackEntityFrom(ModDamageSource.mudPoisoning, 8);
// }
if (entity instanceof EntityPlayer && Library.checkForHazmat((EntityPlayer) entity)) {
/*
* Library.damageSuit(((EntityPlayer)entity), 0);
* Library.damageSuit(((EntityPlayer)entity), 1);
* Library.damageSuit(((EntityPlayer)entity), 2);
* Library.damageSuit(((EntityPlayer)entity), 3);
*/
} else if (entity instanceof EntityCreeper) {
EntityNuclearCreeper creep = new EntityNuclearCreeper(world);
creep.setLocationAndAngles(entity.posX, entity.posY, entity.posZ, entity.rotationYaw, entity.rotationPitch);
if (!entity.isDead)
if (!world.isRemote)
world.spawnEntityInWorld(creep);
entity.setDead();
} else if (entity instanceof EntityVillager) {
EntityZombie creep = new EntityZombie(world);
creep.setLocationAndAngles(entity.posX, entity.posY, entity.posZ, entity.rotationYaw, entity.rotationPitch);
entity.setDead();
if (!world.isRemote)
world.spawnEntityInWorld(creep);
} else if (entity instanceof EntityLivingBase && !(entity instanceof EntityNuclearCreeper)
&& !(entity instanceof EntityMooshroom) && !(entity instanceof EntityZombie)) {
entity.attackEntityFrom(ModDamageSource.radiation, 2.5F);
}
}
@Override
public void onNeighborBlockChange(World world, int x, int y, int z, Block block)
{
super.onNeighborBlockChange(world, x, y, z, block);
if(reactToBlocks(world, x + 1, y, z))
world.setBlock(x, y, z, ModBlocks.block_waste);
if(reactToBlocks(world, x - 1, y, z))
world.setBlock(x, y, z, ModBlocks.block_waste);
if(reactToBlocks(world, x, y + 1, z))
world.setBlock(x, y, z, ModBlocks.block_waste);
if(reactToBlocks(world, x, y - 1, z))
world.setBlock(x, y, z, ModBlocks.block_waste);
if(reactToBlocks(world, x, y, z + 1))
world.setBlock(x, y, z, ModBlocks.block_waste);
if(reactToBlocks(world, x, y, z - 1))
world.setBlock(x, y, z, ModBlocks.block_waste);
}
public boolean reactToBlocks(World world, int x, int y, int z) {
if(world.getBlock(x, y, z).getMaterial() != ModBlocks.fluidtoxic) {
if(world.getBlock(x, y, z).getMaterial().isLiquid()) {
return true;
}
}
return false;
}
public int tickRate(World p_149738_1_) {
return 15;
}
}

View File

@ -0,0 +1,28 @@
package com.hbm.blocks;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.util.IIcon;
import net.minecraftforge.fluids.Fluid;
public class ToxicFluid extends Fluid {
public ToxicFluid() {
super("toxic_fluid");
}
@SideOnly(Side.CLIENT)
public IIcon getIcon() {
return getStillIcon();
}
@SideOnly(Side.CLIENT)
public IIcon getStillIcon() {
return ToxicBlock.stillIcon;
}
@SideOnly(Side.CLIENT)
public IIcon getFlowingIcon() {
return ToxicBlock.flowingIcon;
}
}

View File

@ -17,6 +17,8 @@ import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
public class YellowBarrel extends BlockContainer {
Random rand = new Random();
protected YellowBarrel(Material p_i45386_1_) {
super(p_i45386_1_);
@ -37,7 +39,11 @@ public class YellowBarrel extends BlockContainer {
}
public void explode(World p_149695_1_, int x, int y, int z) {
p_149695_1_.createExplosion(null, x, y, z, 18.0F, true);
if(rand.nextInt(5) == 0) {
p_149695_1_.setBlock(x, y, z, ModBlocks.toxic_block);
} else {
p_149695_1_.createExplosion(null, x, y, z, 18.0F, true);
}
ExplosionNukeGeneric.waste(p_149695_1_, x, y, z, 35);
}

View File

@ -0,0 +1,172 @@
package com.hbm.gui;
import com.hbm.tileentity.TileEntityFWatzCore;
import com.hbm.tileentity.TileEntityFusionMultiblock;
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 ContainerFWatzCore extends Container {
private TileEntityFWatzCore diFurnace;
private int cool;
private int power;
private int amat;
private int aSchrab;
private boolean isRunning;
private int singularityType;
public ContainerFWatzCore(InventoryPlayer invPlayer, TileEntityFWatzCore tedf) {
diFurnace = tedf;
this.addSlotToContainer(new Slot(tedf, 0, 26, 108));
this.addSlotToContainer(new Slot(tedf, 1, 62, 90));
this.addSlotToContainer(new Slot(tedf, 2, 98, 90));
this.addSlotToContainer(new Slot(tedf, 3, 134, 108));
this.addSlotToContainer(new Slot(tedf, 4, 152, 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.diFurnace.cool);
crafting.sendProgressBarUpdate(this, 1, this.diFurnace.power);
crafting.sendProgressBarUpdate(this, 2, this.diFurnace.amat);
crafting.sendProgressBarUpdate(this, 3, this.diFurnace.aSchrab);
crafting.sendProgressBarUpdate(this, 4, isRunning ? 1 : 0);
crafting.sendProgressBarUpdate(this, 5, singularityType);
}
@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 <= 4) {
if (!this.mergeItemStack(var5, 5, this.inventorySlots.size(), true))
{
return null;
}
} else {
return null;
}
if (var5.stackSize == 0)
{
var4.putStack((ItemStack) null);
}
else
{
var4.onSlotChanged();
}
}
return var3;
}
@Override
public boolean canInteractWith(EntityPlayer player) {
return diFurnace.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.cool != this.diFurnace.cool)
{
par1.sendProgressBarUpdate(this, 0, this.diFurnace.cool);
}
if(this.power != this.diFurnace.power)
{
par1.sendProgressBarUpdate(this, 1, this.diFurnace.power);
}
if(this.amat != this.diFurnace.amat)
{
par1.sendProgressBarUpdate(this, 2, this.diFurnace.amat);
}
if(this.aSchrab != this.diFurnace.aSchrab)
{
par1.sendProgressBarUpdate(this, 3, this.diFurnace.aSchrab);
}
if(this.isRunning != this.diFurnace.isRunning())
{
par1.sendProgressBarUpdate(this, 4, this.diFurnace.isRunning() ? 1 : 0);
}
if(this.singularityType != this.diFurnace.getSingularityType())
{
par1.sendProgressBarUpdate(this, 5, this.diFurnace.getSingularityType());
}
}
this.cool = this.diFurnace.cool;
this.power = this.diFurnace.power;
this.amat = this.diFurnace.amat;
this.aSchrab = this.diFurnace.aSchrab;
this.isRunning = this.diFurnace.isRunning();
this.singularityType = this.diFurnace.getSingularityType();
}
@Override
public void updateProgressBar(int i, int j) {
if(i == 0)
{
diFurnace.cool = j;
}
if(i == 1)
{
diFurnace.power = j;
}
if(i == 2)
{
diFurnace.amat = j;
}
if(i == 3)
{
diFurnace.aSchrab = j;
}
if(i == 4)
{
if(j == 0)
{
diFurnace.emptyPlasma();
} else {
diFurnace.fillPlasma();
}
}
}
}

View File

@ -23,11 +23,11 @@ public class ContainerMachineCMBFactory extends Container {
diFurnace = tedf;
this.addSlotToContainer(new Slot(tedf, 0, 44, 18));
this.addSlotToContainer(new Slot(tedf, 1, 62, 18));
this.addSlotToContainer(new Slot(tedf, 2, 80, 18));
this.addSlotToContainer(new Slot(tedf, 3, 44, 36));
this.addSlotToContainer(new SlotDiFurnace(invPlayer.player, tedf, 4, 116, 18));
this.addSlotToContainer(new Slot(tedf, 0, 62, 17));
this.addSlotToContainer(new Slot(tedf, 1, 80, 17));
this.addSlotToContainer(new Slot(tedf, 2, 62, 53));
this.addSlotToContainer(new Slot(tedf, 3, 80, 53));
this.addSlotToContainer(new SlotDiFurnace(invPlayer.player, tedf, 4, 134, 35));
for(int i = 0; i < 3; i++)
{
@ -62,16 +62,15 @@ public class ContainerMachineCMBFactory extends Container {
ItemStack var5 = var4.getStack();
var3 = var5.copy();
if (par2 <= 29) {
if (!this.mergeItemStack(var5, 30, this.inventorySlots.size(), true))
if (par2 <= 4) {
if (!this.mergeItemStack(var5, 5, this.inventorySlots.size(), true))
{
return null;
}
}
else
{
if (!this.mergeItemStack(var5, 0, 9, false))
if (!this.mergeItemStack(var5, 27, 30, false))
if (!this.mergeItemStack(var5, 0, 4, false))
return null;
}

View File

@ -0,0 +1,60 @@
package com.hbm.gui;
import org.lwjgl.opengl.GL11;
import com.hbm.lib.RefStrings;
import com.hbm.tileentity.TileEntityFWatzCore;
import com.hbm.tileentity.TileEntityFusionMultiblock;
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 GUIFWatzCore extends GuiContainer {
private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/gui_fwatz_multiblock.png");
private TileEntityFWatzCore diFurnace;
public GUIFWatzCore(InventoryPlayer invPlayer, TileEntityFWatzCore tedf) {
super(new ContainerFWatzCore(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 i = diFurnace.getWaterScaled(88);
drawTexturedModalRect(guiLeft + 134, guiTop + 106 - i, 208, 88 - i, 16, i);
int j = diFurnace.getCoolantScaled(88);
drawTexturedModalRect(guiLeft + 8, guiTop + 106 - j, 176, 88 - j, 16, j);
int k = diFurnace.getPowerScaled(88);
drawTexturedModalRect(guiLeft + 26, guiTop + 106 - k, 192, 88 - k, 16, k);
int l = diFurnace.getHeatScaled(88);
drawTexturedModalRect(guiLeft + 152, guiTop + 106 - l, 224, 88 - l, 16, l);
if(diFurnace.isRunning())
drawTexturedModalRect(guiLeft + 64, guiTop + 29, 176, 88, 48, 48);
int m = diFurnace.getSingularityType();
drawTexturedModalRect(guiLeft + 98, guiTop + 109, 240, 4 * m, 16, 4);
}
}

View File

@ -38,10 +38,17 @@ public class GUIMachineCMBFactory extends GuiContainer {
GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
Minecraft.getMinecraft().getTextureManager().bindTexture(texture);
drawTexturedModalRect(guiLeft, guiTop, 0, 0, xSize, ySize);
if(diFurnace.power > 0) {
int i = diFurnace.getPowerScaled(88);
drawTexturedModalRect(guiLeft + 8, guiTop + 106 - i, 176, 160 - i, 16, i);
int i = diFurnace.getPowerScaled(52);
drawTexturedModalRect(guiLeft + 8, guiTop + 69 - i, 176, 52 - i, 16, i);
}
if(diFurnace.waste > 0) {
int i = diFurnace.getWasteScaled(52);
drawTexturedModalRect(guiLeft + 26, guiTop + 69 - i, 192, 52 - i, 16, i);
}
int j1 = diFurnace.getProgressScaled(24);
drawTexturedModalRect(guiLeft + 101, guiTop + 34, 208, 0, j1 + 1, 16);
}
}

View File

@ -6,7 +6,7 @@ import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
public class ItemBoy extends Item {
public class ItemBoy extends ItemRadioactive {
@Override
public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool)

View File

@ -84,6 +84,38 @@ public class ItemClip extends Item {
}
}
if(this == ModItems.clip_revolver_lead)
{
if (!player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_revolver_lead_ammo, 12)))
{
player.dropPlayerItemWithRandomChoice(new ItemStack(ModItems.gun_revolver_lead_ammo, 12), false);
}
}
if(this == ModItems.clip_revolver_cursed)
{
if (!player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_revolver_cursed_ammo, 17)))
{
player.dropPlayerItemWithRandomChoice(new ItemStack(ModItems.gun_revolver_cursed_ammo, 17), false);
}
}
if(this == ModItems.clip_fatman)
{
if (!player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_fatman_ammo, 6)))
{
player.dropPlayerItemWithRandomChoice(new ItemStack(ModItems.gun_fatman_ammo, 6), false);
}
}
if(this == ModItems.clip_mp)
{
if (!player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_mp_ammo, 30)))
{
player.dropPlayerItemWithRandomChoice(new ItemStack(ModItems.gun_mp_ammo, 30), false);
}
}
return stack;
}

View File

@ -2,12 +2,18 @@ package com.hbm.items;
import java.util.List;
import com.hbm.lib.ModDamageSource;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.EnumRarity;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.potion.Potion;
import net.minecraft.potion.PotionEffect;
public class ItemCustomLore extends Item {
public class ItemCustomLore extends ItemRadioactive {
@Override
public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool)
@ -346,6 +352,16 @@ public class ItemCustomLore extends Item {
{
list.add("It's super broken!");
}
if(this == ModItems.screwdriver)
{
list.add("Could be used instead of a fuse...");
}
if(this == ModItems.overfuse)
{
list.add("Say what?");
}
}
@Override

View File

@ -169,8 +169,8 @@ public class ItemDrop extends Item {
}
if (itemstack.getItem() != null && itemstack.getItem() == ModItems.black_hole) {
list.add("Contains a regular singularity");
list.add("in the center. Too small to");
list.add("stac stable. It's not the end");
list.add("in the center. Large enough to");
list.add("stay stable. It's not the end");
list.add("of the world as we know it,");
list.add("and I don't feel fine.");
}

View File

@ -7,7 +7,7 @@ import net.minecraft.item.EnumRarity;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
public class ItemFleija extends Item{
public class ItemFleija extends ItemRadioactive {
@Override
public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool)

View File

@ -6,7 +6,7 @@ import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
public class ItemFuelRod extends Item {
public class ItemFuelRod extends ItemRadioactive {
@Override
public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool)

View File

@ -6,7 +6,7 @@ import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
public class ItemGadget extends Item {
public class ItemGadget extends ItemRadioactive {
@Override
public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool)

View File

@ -6,7 +6,7 @@ import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
public class ItemManMike extends Item {
public class ItemManMike extends ItemRadioactive {
@Override
public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool)

View File

@ -6,7 +6,7 @@ import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
public class ItemMike extends Item {
public class ItemMike extends ItemRadioactive {
@Override
public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool)

View File

@ -0,0 +1,206 @@
package com.hbm.items;
import com.hbm.lib.Library;
import com.hbm.lib.ModDamageSource;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.potion.Potion;
import net.minecraft.potion.PotionEffect;
import net.minecraft.world.World;
public class ItemRadioactive extends Item {
public void onUpdate(ItemStack stack, World world, Entity entity, int i, boolean b) {
if((entity instanceof EntityPlayer && !Library.checkForHazmat((EntityPlayer)entity)) || !(entity instanceof EntityPlayer))
{
doRadiationDamage(entity);
}
}
public void doRadiationDamage(Entity entity) {
//Ultra Deadly: Watz Fuel
//Strong: U235, Pu239, Pu240, all fuels except Schrabidium
//Medium: Plutonium, Neptunium, Pu238, RTG Pellet
//Weak: Uranium, U238
//Incendiary: All radioactive powders
//Schrabidic: All Schrabidium related materials
if (entity instanceof EntityLivingBase) {
EntityLivingBase living = (EntityLivingBase)entity;
//Ultra Deadly
if (this == ModItems.pellet_hes ||
this == ModItems.pellet_les ||
this == ModItems.pellet_mes ||
this == ModItems.pellet_neptunium ||
this == ModItems.pellet_schrabidium) {
living.addPotionEffect(new PotionEffect(Potion.poison.id, 120 * 20, 4));
living.addPotionEffect(new PotionEffect(Potion.wither.id, 30 * 20, 2));
living.attackEntityFrom(ModDamageSource.radiation, 15);
}
//Strong
if (this == ModItems.ingot_u235 ||
this == ModItems.ingot_pu239 ||
this == ModItems.ingot_pu240 ||
this == ModItems.ingot_uranium_fuel ||
this == ModItems.ingot_plutonium_fuel ||
this == ModItems.ingot_mox_fuel ||
this == ModItems.rod_quad_u235 ||
this == ModItems.rod_dual_u235 ||
this == ModItems.rod_quad_pu239 ||
this == ModItems.rod_dual_pu239 ||
this == ModItems.rod_quad_pu240 ||
this == ModItems.rod_dual_pu240 ||
this == ModItems.rod_quad_uranium_fuel ||
this == ModItems.rod_dual_uranium_fuel ||
this == ModItems.rod_quad_plutonium_fuel ||
this == ModItems.rod_dual_plutonium_fuel ||
this == ModItems.rod_quad_mox_fuel ||
this == ModItems.rod_dual_mox_fuel ||
this == ModItems.rod_quad_uranium_fuel_depleted ||
this == ModItems.rod_dual_uranium_fuel_depleted ||
this == ModItems.rod_quad_plutonium_fuel_depleted ||
this == ModItems.rod_dual_plutonium_fuel_depleted ||
this == ModItems.rod_quad_mox_fuel_depleted ||
this == ModItems.rod_dual_mox_fuel_depleted ||
this == ModItems.boy_bullet ||
this == ModItems.boy_target ||
this == ModItems.gadget_core ||
this == ModItems.man_core) {
living.addPotionEffect(new PotionEffect(Potion.poison.id, 45 * 20, 4));
living.addPotionEffect(new PotionEffect(Potion.wither.id, 5 * 20, 2));
living.attackEntityFrom(ModDamageSource.radiation, 3);
}
//Strong Nuggets
if (this == ModItems.nugget_u235 ||
this == ModItems.nugget_pu239 ||
this == ModItems.nugget_pu240 ||
this == ModItems.nugget_uranium_fuel ||
this == ModItems.nugget_plutonium_fuel ||
this == ModItems.nugget_mox_fuel ||
this == ModItems.rod_u235 ||
this == ModItems.rod_pu239 ||
this == ModItems.rod_pu240 ||
this == ModItems.rod_uranium_fuel ||
this == ModItems.rod_plutonium_fuel ||
this == ModItems.rod_mox_fuel ||
this == ModItems.rod_uranium_fuel_depleted ||
this == ModItems.rod_plutonium_fuel_depleted ||
this == ModItems.rod_mox_fuel_depleted) {
living.addPotionEffect(new PotionEffect(Potion.poison.id, 35 * 20, 4));
living.addPotionEffect(new PotionEffect(Potion.wither.id, 1 * 20, 2));
living.attackEntityFrom(ModDamageSource.radiation, 1);
}
//Medium
if (this == ModItems.ingot_neptunium ||
this == ModItems.ingot_pu238 ||
this == ModItems.ingot_plutonium ||
this == ModItems.pellet_rtg ||
this == ModItems.rod_quad_neptunium ||
this == ModItems.rod_dual_neptunium ||
this == ModItems.rod_quad_pu238 ||
this == ModItems.rod_dual_pu238 ||
this == ModItems.rod_quad_plutonium ||
this == ModItems.rod_dual_plutonium ||
this == ModItems.mike_core ||
this == ModItems.tsar_core) {
living.addPotionEffect(new PotionEffect(Potion.poison.id, 25 * 20, 4));
living.attackEntityFrom(ModDamageSource.radiation, 1);
}
//Medium Nuggets
if (this == ModItems.nugget_neptunium ||
this == ModItems.nugget_pu238 ||
this == ModItems.nugget_plutonium ||
this == ModItems.rod_neptunium ||
this == ModItems.rod_pu238 ||
this == ModItems.rod_plutonium) {
living.addPotionEffect(new PotionEffect(Potion.poison.id, 15 * 20, 2));
}
//Weak
if (this == ModItems.ingot_uranium ||
this == ModItems.ingot_u238 ||
this == ModItems.rod_quad_uranium ||
this == ModItems.rod_dual_uranium ||
this == ModItems.rod_quad_u238 ||
this == ModItems.rod_dual_u238 ||
this == ModItems.rod_quad_pu238 ||
this == ModItems.rod_dual_pu238) {
living.addPotionEffect(new PotionEffect(Potion.poison.id, 15 * 20, 0));
}
//Weak Nuggets
if (this == ModItems.nugget_uranium ||
this == ModItems.nugget_u238 ||
this == ModItems.rod_uranium ||
this == ModItems.rod_u238 ||
this == ModItems.cell_tritium ||
this == ModItems.rod_tritium ||
this == ModItems.rod_dual_tritium ||
this == ModItems.rod_quad_tritium) {
living.addPotionEffect(new PotionEffect(Potion.poison.id, 5 * 20, 0));
}
//Powder
if (this == ModItems.powder_neptunium) {
living.addPotionEffect(new PotionEffect(Potion.poison.id, 25 * 20, 4));
living.attackEntityFrom(ModDamageSource.radiation, 1);
living.setFire(5);
}
if (this == ModItems.powder_uranium) {
living.addPotionEffect(new PotionEffect(Potion.poison.id, 15 * 20, 0));
living.setFire(5);
}
//Schrabidic
if (this == ModItems.ingot_schrabidium ||
this == ModItems.ingot_schrabidium_fuel ||
this == ModItems.ingot_hes ||
this == ModItems.ingot_les ||
this == ModItems.cell_sas3 ||
this == ModItems.fleija_propellant) {
living.addPotionEffect(new PotionEffect(Potion.blindness.id, 2 * 60 * 20, 0));
living.attackEntityFrom(ModDamageSource.radiation, 30);
}
if (this == ModItems.nugget_schrabidium ||
this == ModItems.nugget_schrabidium_fuel ||
this == ModItems.nugget_hes ||
this == ModItems.nugget_les) {
living.addPotionEffect(new PotionEffect(Potion.blindness.id, 2 * 60 * 20, 0));
living.attackEntityFrom(ModDamageSource.radiation, 10);
}
if (this == ModItems.plate_schrabidium) {
living.addPotionEffect(new PotionEffect(Potion.blindness.id, 2 * 60 * 20, 0));
living.attackEntityFrom(ModDamageSource.radiation, 15);
}
if (this == ModItems.powder_schrabidium) {
living.addPotionEffect(new PotionEffect(Potion.blindness.id, 2 * 60 * 20, 0));
living.attackEntityFrom(ModDamageSource.radiation, 30);
living.setFire(5);
}
}
}
}

View File

@ -6,7 +6,7 @@ import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
public class ItemTsar extends Item {
public class ItemTsar extends ItemRadioactive {
@Override
public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool)

View File

@ -3,6 +3,7 @@ package com.hbm.items;
import java.util.List;
import java.util.Random;
import com.hbm.world.FWatz;
import com.hbm.world.FactoryAdvanced;
import com.hbm.world.FactoryTitanium;
import com.hbm.world.FusionReactor;
@ -46,6 +47,9 @@ public class ItemWandS extends Item {
case 4:
list.add("Structure: Watz Power Plant");
break;
case 5:
list.add("Structure: Fusionary Watz Plant");
break;
}
}
}
@ -82,6 +86,9 @@ public class ItemWandS extends Item {
case 4:
new Watz().generate(world, rand, x, up ? y : y - 12, z);
break;
case 5:
new FWatz().generateHull(world, rand, x, up ? y : y - 18, z);
break;
}
}
@ -103,7 +110,7 @@ public class ItemWandS extends Item {
int i = stack.stackTagCompound.getInteger("building");
i++;
stack.stackTagCompound.setInteger("building", i);
if(i >= 5) {
if(i >= 6) {
stack.stackTagCompound.setInteger("building", 0);
}
@ -126,6 +133,9 @@ public class ItemWandS extends Item {
case 4:
player.addChatMessage(new ChatComponentText("Set Structure: Watz Power Plant"));
break;
case 5:
player.addChatMessage(new ChatComponentText("Set Structure: Fusionary Watz Plant"));
break;
default:
player.addChatMessage(new ChatComponentText("Set Structure: Titanium Factory"));
break;

View File

@ -250,6 +250,8 @@ public class ModItems {
public static Item inf_tritium;
public static Item inf_sulfur;
public static Item inf_diesel;
public static Item inf_antimatter;
public static Item inf_antischrabidium;
public static Item canister_empty;
public static Item canister_fuel;
@ -482,6 +484,8 @@ public class ModItems {
public static Item fuse;
public static Item redcoil_capacitor;
public static Item titanium_filter;
public static Item screwdriver;
public static Item overfuse;
public static Item tank_waste;
@ -592,9 +596,13 @@ public class ModItems {
public static Item clip_revolver_iron;
public static Item clip_revolver;
public static Item clip_revolver_gold;
public static Item clip_revolver_lead;
public static Item clip_revolver_schrabidium;
public static Item clip_revolver_cursed;
public static Item clip_rpg;
public static Item clip_fatman;
public static Item clip_osipr;
public static Item clip_mp;
public static Item clip_xvl1456;
public static Item igniter;
@ -603,6 +611,8 @@ public class ModItems {
public static Item remote;
public static Item bucket_mud;
public static Item bucket_acid;
public static Item bucket_toxic;
public static Item smoke1;
public static Item smoke2;
@ -641,25 +651,25 @@ public class ModItems {
test_nuke_tier1_target = new Item().setUnlocalizedName("test_nuke_tier1_target").setMaxStackSize(1).setCreativeTab(MainRegistry.tabTest).setTextureName(RefStrings.MODID + ":test_nuke_tier1_target");
test_nuke_tier2_target = new Item().setUnlocalizedName("test_nuke_tier2_target").setMaxStackSize(1).setCreativeTab(MainRegistry.tabTest).setTextureName(RefStrings.MODID + ":test_nuke_tier2_target");
ingot_uranium = new Item().setUnlocalizedName("ingot_uranium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_uranium");
ingot_u235 = new Item().setUnlocalizedName("ingot_u235").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_uranium");
ingot_u238 = new Item().setUnlocalizedName("ingot_u238").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_uranium");
ingot_plutonium = new Item().setUnlocalizedName("ingot_plutonium").setCreativeTab(MainRegistry.tabParts).setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_plutonium");
ingot_pu238 = new Item().setUnlocalizedName("ingot_pu238").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_plutonium");
ingot_pu239 = new Item().setUnlocalizedName("ingot_pu239").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_plutonium");
ingot_pu240 = new Item().setUnlocalizedName("ingot_pu240").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_plutonium");
ingot_uranium = new ItemRadioactive().setUnlocalizedName("ingot_uranium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_uranium");
ingot_u235 = new ItemRadioactive().setUnlocalizedName("ingot_u235").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_uranium");
ingot_u238 = new ItemRadioactive().setUnlocalizedName("ingot_u238").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_uranium");
ingot_plutonium = new ItemRadioactive().setUnlocalizedName("ingot_plutonium").setCreativeTab(MainRegistry.tabParts).setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_plutonium");
ingot_pu238 = new ItemRadioactive().setUnlocalizedName("ingot_pu238").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_plutonium");
ingot_pu239 = new ItemRadioactive().setUnlocalizedName("ingot_pu239").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_plutonium");
ingot_pu240 = new ItemRadioactive().setUnlocalizedName("ingot_pu240").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_plutonium");
ingot_neptunium = new ItemCustomLore().setUnlocalizedName("ingot_neptunium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_neptunium");
ingot_titanium = new Item().setUnlocalizedName("ingot_titanium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_titanium");
sulfur = new Item().setUnlocalizedName("sulfur").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":sulfur");
ingot_uranium_fuel = new Item().setUnlocalizedName("ingot_uranium_fuel").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_uranium");
ingot_plutonium_fuel = new Item().setUnlocalizedName("ingot_plutonium_fuel").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_plutonium");
ingot_mox_fuel = new Item().setUnlocalizedName("ingot_mox_fuel").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_mox_fuel");
ingot_schrabidium_fuel = new Item().setUnlocalizedName("ingot_schrabidium_fuel").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_schrabidium_fuel");
nugget_uranium_fuel = new Item().setUnlocalizedName("nugget_uranium_fuel").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_uranium");
nugget_plutonium_fuel = new Item().setUnlocalizedName("nugget_plutonium_fuel").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_plutonium");
nugget_mox_fuel = new Item().setUnlocalizedName("nugget_mox_fuel").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_mox_fuel");
nugget_schrabidium_fuel = new Item().setUnlocalizedName("nugget_schrabidium_fuel").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_schrabidium_fuel");
ingot_uranium_fuel = new ItemRadioactive().setUnlocalizedName("ingot_uranium_fuel").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_uranium");
ingot_plutonium_fuel = new ItemRadioactive().setUnlocalizedName("ingot_plutonium_fuel").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_plutonium");
ingot_mox_fuel = new ItemRadioactive().setUnlocalizedName("ingot_mox_fuel").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_mox_fuel");
ingot_schrabidium_fuel = new ItemRadioactive().setUnlocalizedName("ingot_schrabidium_fuel").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_schrabidium_fuel");
nugget_uranium_fuel = new ItemRadioactive().setUnlocalizedName("nugget_uranium_fuel").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_uranium");
nugget_plutonium_fuel = new ItemRadioactive().setUnlocalizedName("nugget_plutonium_fuel").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_plutonium");
nugget_mox_fuel = new ItemRadioactive().setUnlocalizedName("nugget_mox_fuel").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_mox_fuel");
nugget_schrabidium_fuel = new ItemRadioactive().setUnlocalizedName("nugget_schrabidium_fuel").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_schrabidium_fuel");
ingot_advanced_alloy = new Item().setUnlocalizedName("ingot_advanced_alloy").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_advanced_alloy");
niter = new Item().setUnlocalizedName("niter").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":salpeter");
@ -688,14 +698,14 @@ public class ModItems {
plate_mixed = new Item().setUnlocalizedName("plate_mixed").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":plate_mixed");
plate_paa = new ItemCustomLore().setUnlocalizedName("plate_paa").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":plate_paa");
nugget_uranium = new Item().setUnlocalizedName("nugget_uranium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_uranium");
nugget_u235 = new Item().setUnlocalizedName("nugget_u235").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_uranium");
nugget_u238 = new Item().setUnlocalizedName("nugget_u238").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_uranium");
nugget_plutonium = new Item().setUnlocalizedName("nugget_plutonium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_plutonium");
nugget_pu238 = new Item().setUnlocalizedName("nugget_pu238").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_plutonium");
nugget_pu239 = new Item().setUnlocalizedName("nugget_pu239").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_plutonium");
nugget_pu240 = new Item().setUnlocalizedName("nugget_pu240").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_plutonium");
nugget_neptunium = new Item().setUnlocalizedName("nugget_neptunium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_neptunium");
nugget_uranium = new ItemRadioactive().setUnlocalizedName("nugget_uranium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_uranium");
nugget_u235 = new ItemRadioactive().setUnlocalizedName("nugget_u235").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_uranium");
nugget_u238 = new ItemRadioactive().setUnlocalizedName("nugget_u238").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_uranium");
nugget_plutonium = new ItemRadioactive().setUnlocalizedName("nugget_plutonium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_plutonium");
nugget_pu238 = new ItemRadioactive().setUnlocalizedName("nugget_pu238").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_plutonium");
nugget_pu239 = new ItemRadioactive().setUnlocalizedName("nugget_pu239").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_plutonium");
nugget_pu240 = new ItemRadioactive().setUnlocalizedName("nugget_pu240").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_plutonium");
nugget_neptunium = new ItemRadioactive().setUnlocalizedName("nugget_neptunium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_neptunium");
plate_titanium = new Item().setUnlocalizedName("plate_titanium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":plate_titanium");
plate_aluminium = new Item().setUnlocalizedName("plate_aluminium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":plate_aluminium");
wire_red_copper = new Item().setUnlocalizedName("wire_red_copper").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":wire_red_copper");
@ -705,15 +715,15 @@ public class ModItems {
nugget_schrabidium = new ItemCustomLore().setUnlocalizedName("nugget_schrabidium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_schrabidium");
nugget_beryllium = new Item().setUnlocalizedName("nugget_beryllium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_beryllium");
hazmat_cloth = new Item().setUnlocalizedName("hazmat_cloth").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":hazmat_cloth");
ingot_hes = new Item().setUnlocalizedName("ingot_hes").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_hes");
ingot_les = new Item().setUnlocalizedName("ingot_les").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_les");
nugget_hes = new Item().setUnlocalizedName("nugget_hes").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_hes");
nugget_les = new Item().setUnlocalizedName("nugget_les").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_les");
ingot_hes = new ItemRadioactive().setUnlocalizedName("ingot_hes").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_hes");
ingot_les = new ItemRadioactive().setUnlocalizedName("ingot_les").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":ingot_les");
nugget_hes = new ItemRadioactive().setUnlocalizedName("nugget_hes").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_hes");
nugget_les = new ItemRadioactive().setUnlocalizedName("nugget_les").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":nugget_les");
plate_combine_steel = new Item().setUnlocalizedName("plate_combine_steel").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":plate_combine_steel");
powder_lead = new Item().setUnlocalizedName("powder_lead").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":powder_lead");
powder_neptunium = new ItemCustomLore().setUnlocalizedName("powder_neptunium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":powder_neptunium");
powder_schrabidium = new ItemCustomLore().setUnlocalizedName("powder_schrabidium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":powder_schrabidium");
powder_schrabidium = new ItemRadioactive().setUnlocalizedName("powder_schrabidium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":powder_schrabidium");
powder_aluminium = new Item().setUnlocalizedName("powder_aluminium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":powder_aluminium");
powder_beryllium = new Item().setUnlocalizedName("powder_beryllium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":powder_beryllium");
powder_copper = new Item().setUnlocalizedName("powder_copper").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":powder_copper");
@ -721,7 +731,7 @@ public class ModItems {
powder_iron = new Item().setUnlocalizedName("powder_iron").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":powder_iron");
powder_titanium = new Item().setUnlocalizedName("powder_titanium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":powder_titanium");
powder_tungsten = new Item().setUnlocalizedName("powder_tungsten").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":powder_tungsten");
powder_uranium = new Item().setUnlocalizedName("powder_uranium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":powder_uranium");
powder_uranium = new ItemRadioactive().setUnlocalizedName("powder_uranium").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":powder_uranium");
dust = new ItemCustomLore().setUnlocalizedName("dust").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":dust");
powder_advanced_alloy = new Item().setUnlocalizedName("powder_advanced_alloy").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":powder_advanced_alloy");
powder_coal = new Item().setUnlocalizedName("powder_coal").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":powder_coal");
@ -823,12 +833,12 @@ public class ModItems {
cell_puf6 = new Item().setUnlocalizedName("cell_puf6").setCreativeTab(MainRegistry.tabParts).setContainerItem(ModItems.cell_empty).setTextureName(RefStrings.MODID + ":cell_puf6");
cell_antimatter = new ItemDrop().setUnlocalizedName("cell_antimatter").setCreativeTab(MainRegistry.tabParts).setContainerItem(ModItems.cell_empty).setTextureName(RefStrings.MODID + ":cell_antimatter");
cell_deuterium = new Item().setUnlocalizedName("cell_deuterium").setCreativeTab(MainRegistry.tabParts).setContainerItem(ModItems.cell_empty).setTextureName(RefStrings.MODID + ":cell_deuterium");
cell_tritium = new Item().setUnlocalizedName("cell_tritium").setCreativeTab(MainRegistry.tabParts).setContainerItem(ModItems.cell_empty).setTextureName(RefStrings.MODID + ":cell_tritium");
cell_tritium = new ItemRadioactive().setUnlocalizedName("cell_tritium").setCreativeTab(MainRegistry.tabParts).setContainerItem(ModItems.cell_empty).setTextureName(RefStrings.MODID + ":cell_tritium");
cell_sas3 = new ItemCustomLore().setUnlocalizedName("cell_sas3").setCreativeTab(MainRegistry.tabParts).setContainerItem(ModItems.cell_empty).setTextureName(RefStrings.MODID + ":cell_sas3");
cell_anti_schrabidium = new ItemDrop().setUnlocalizedName("cell_anti_schrabidium").setCreativeTab(MainRegistry.tabParts).setContainerItem(ModItems.cell_empty).setTextureName(RefStrings.MODID + ":cell_anti_schrabidium");
singularity = new ItemDrop().setUnlocalizedName("singularity").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setContainerItem(ModItems.nuclear_waste).setTextureName(RefStrings.MODID + ":singularity");
singularity_counter_resonant = new ItemDrop().setUnlocalizedName("singularity_counter_resonant").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setContainerItem(ModItems.nuclear_waste).setTextureName(RefStrings.MODID + ":singularity_alt");
singularity_super_heated = new ItemDrop().setUnlocalizedName("singularity_super_heated").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setContainerItem(ModItems.nuclear_waste).setTextureName(RefStrings.MODID + ":singularity_3");
singularity_super_heated = new ItemDrop().setUnlocalizedName("singularity_super_heated").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setContainerItem(ModItems.nuclear_waste).setTextureName(RefStrings.MODID + ":singularity_5");
black_hole = new ItemDrop().setUnlocalizedName("black_hole").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setContainerItem(ModItems.nuclear_waste).setTextureName(RefStrings.MODID + ":singularity_4");
crystal_xen = new ItemDrop().setUnlocalizedName("crystal_xen").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":crystal_xen");
inf_water = new Item().setUnlocalizedName("inf_water").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":inf_water");
@ -837,6 +847,8 @@ public class ModItems {
inf_tritium = new Item().setUnlocalizedName("inf_tritium").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":inf_tritium");
inf_sulfur = new Item().setUnlocalizedName("inf_sulfur").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":inf_sulfur");
inf_diesel = new Item().setUnlocalizedName("inf_diesel").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":inf_diesel");
inf_antimatter = new Item().setUnlocalizedName("inf_antimatter").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":inf_antimatter");
inf_antischrabidium = new Item().setUnlocalizedName("inf_antischrabidium").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":inf_antischrabidium");
blades_aluminium = new ItemBlades(1 * 1200).setUnlocalizedName("blades_aluminium").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":blades_aluminium");
blades_gold = new ItemBlades(5 * 1200).setUnlocalizedName("blades_gold").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":blades_gold");
@ -1071,7 +1083,7 @@ public class ModItems {
battery_generic = new ItemBattery(50).setUnlocalizedName("battery_generic").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":battery_generic");
battery_advanced = new ItemBattery(200).setUnlocalizedName("battery_advanced").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":battery_advanced");
battery_schrabidium = new ItemBattery(1000).setUnlocalizedName("battery_schrabidium").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":battery_schrabidium");
battery_schrabidium = new ItemBattery(10000).setUnlocalizedName("battery_schrabidium").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":battery_schrabidium");
battery_creative = new Item().setUnlocalizedName("battery_creative").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":battery_creative");
fusion_core = new ItemBattery(5000).setUnlocalizedName("fusion_core").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":fusion_core");
@ -1079,6 +1091,8 @@ public class ModItems {
fuse = new ItemCustomLore().setUnlocalizedName("fuse").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":fuse");
redcoil_capacitor = new ItemCapacitor(10).setUnlocalizedName("redcoil_capacitor").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":redcoil_capacitor");
titanium_filter = new ItemCapacitor(72000).setUnlocalizedName("titanium_filter").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":titanium_filter");
screwdriver = new ItemCustomLore().setUnlocalizedName("screwdriver").setMaxStackSize(1).setFull3D().setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":screwdriver");
overfuse = new ItemCustomLore().setUnlocalizedName("overfuse").setMaxStackSize(1).setFull3D().setTextureName(RefStrings.MODID + ":overfuse");
factory_core_titanium = new ItemBattery(70400).setUnlocalizedName("factory_core_titanium").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":factory_core_titanium");
factory_core_advanced = new ItemBattery(41600).setUnlocalizedName("factory_core_advanced").setMaxStackSize(1).setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":factory_core_advanced");
@ -1107,9 +1121,13 @@ public class ModItems {
clip_revolver_iron = new ItemClip().setUnlocalizedName("clip_revolver_iron").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":clip_revolver_iron");
clip_revolver = new ItemClip().setUnlocalizedName("clip_revolver").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":clip_revolver");
clip_revolver_gold = new ItemClip().setUnlocalizedName("clip_revolver_gold").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":clip_revolver_gold");
clip_revolver_lead = new ItemClip().setUnlocalizedName("clip_revolver_lead").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":clip_revolver_lead");
clip_revolver_schrabidium = new ItemClip().setUnlocalizedName("clip_revolver_schrabidium").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":clip_revolver_schrabidium");
clip_revolver_cursed = new ItemClip().setUnlocalizedName("clip_revolver_cursed").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":clip_revolver_cursed");
clip_rpg = new ItemClip().setUnlocalizedName("clip_rpg").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":clip_rpg");
clip_fatman = new ItemClip().setUnlocalizedName("clip_fatman").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":clip_fatman");
clip_osipr = new ItemClip().setUnlocalizedName("clip_osipr").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":clip_osipr");
clip_mp = new ItemClip().setUnlocalizedName("clip_mp").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":clip_mp");
clip_xvl1456 = new ItemClip().setUnlocalizedName("clip_xvl1456").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":clip_xvl1456");
ingot_euphemium = new ItemCustomLore().setUnlocalizedName("ingot_euphemium").setTextureName(RefStrings.MODID + ":ingot_euphemium");
@ -1197,6 +1215,8 @@ public class ModItems {
crowbar = new ModSword(MainRegistry.enumToolMaterialSteel).setUnlocalizedName("crowbar").setFull3D().setTextureName(RefStrings.MODID + ":crowbar");
bucket_mud = new ItemModBucket(ModBlocks.mud_block).setUnlocalizedName("bucket_mud").setContainerItem(Items.bucket).setCreativeTab(MainRegistry.tabBlock).setTextureName(RefStrings.MODID + ":bucket_mud");
bucket_acid = new ItemModBucket(ModBlocks.acid_block).setUnlocalizedName("bucket_acid").setContainerItem(Items.bucket).setCreativeTab(MainRegistry.tabBlock).setTextureName(RefStrings.MODID + ":bucket_acid");
bucket_toxic = new ItemModBucket(ModBlocks.toxic_block).setUnlocalizedName("bucket_toxic").setContainerItem(Items.bucket).setCreativeTab(MainRegistry.tabBlock).setTextureName(RefStrings.MODID + ":bucket_toxic");
smoke1 = new Item().setUnlocalizedName("smoke1").setTextureName(RefStrings.MODID + ":smoke1");
smoke2 = new Item().setUnlocalizedName("smoke2").setTextureName(RefStrings.MODID + ":smoke2");
@ -1215,9 +1235,13 @@ public class ModItems {
b_smoke7 = new Item().setUnlocalizedName("b_smoke7").setTextureName(RefStrings.MODID + ":b_smoke7");
b_smoke8 = new Item().setUnlocalizedName("b_smoke8").setTextureName(RefStrings.MODID + ":b_smoke8");
energy_ball = new Item().setUnlocalizedName("energy_ball").setTextureName(RefStrings.MODID + ":energy_ball");
FluidContainerRegistry.registerFluidContainer(new FluidStack(ModBlocks.mud_fluid, 1000), new ItemStack(ModItems.bucket_mud));
FluidContainerRegistry.registerFluidContainer(new FluidStack(ModBlocks.acid_fluid, 1000), new ItemStack(ModItems.bucket_acid));
FluidContainerRegistry.registerFluidContainer(new FluidStack(ModBlocks.toxic_fluid, 1000), new ItemStack(ModItems.bucket_toxic));
BucketHandler.INSTANCE.buckets.put(ModBlocks.mud_block, ModItems.bucket_mud);
BucketHandler.INSTANCE.buckets.put(ModBlocks.acid_block, ModItems.bucket_acid);
BucketHandler.INSTANCE.buckets.put(ModBlocks.toxic_block, ModItems.bucket_toxic);
MinecraftForge.EVENT_BUS.register(BucketHandler.INSTANCE);
}
@ -1473,6 +1497,8 @@ public class ModItems {
GameRegistry.registerItem(inf_tritium, inf_tritium.getUnlocalizedName());
GameRegistry.registerItem(inf_sulfur, inf_sulfur.getUnlocalizedName());
GameRegistry.registerItem(inf_diesel, inf_diesel.getUnlocalizedName());
GameRegistry.registerItem(inf_antimatter, inf_antimatter.getUnlocalizedName());
GameRegistry.registerItem(inf_antischrabidium, inf_antischrabidium.getUnlocalizedName());
//Large Tanks
GameRegistry.registerItem(tank_waste, tank_waste.getUnlocalizedName());
@ -1494,6 +1520,8 @@ public class ModItems {
GameRegistry.registerItem(fuse, fuse.getUnlocalizedName());
GameRegistry.registerItem(redcoil_capacitor, redcoil_capacitor.getUnlocalizedName());
GameRegistry.registerItem(titanium_filter, titanium_filter.getUnlocalizedName());
GameRegistry.registerItem(screwdriver, screwdriver.getUnlocalizedName());
GameRegistry.registerItem(overfuse, overfuse.getUnlocalizedName());
//Shredder Blades
GameRegistry.registerItem(blades_aluminium, blades_aluminium.getUnlocalizedName());
@ -1661,10 +1689,14 @@ public class ModItems {
GameRegistry.registerItem(clip_revolver_iron, clip_revolver_iron.getUnlocalizedName());
GameRegistry.registerItem(clip_revolver, clip_revolver.getUnlocalizedName());
GameRegistry.registerItem(clip_revolver_gold, clip_revolver_gold.getUnlocalizedName());
GameRegistry.registerItem(clip_revolver_lead, clip_revolver_lead.getUnlocalizedName());
GameRegistry.registerItem(clip_revolver_schrabidium, clip_revolver_schrabidium.getUnlocalizedName());
GameRegistry.registerItem(clip_revolver_cursed, clip_revolver_cursed.getUnlocalizedName());
GameRegistry.registerItem(clip_rpg, clip_rpg.getUnlocalizedName());
GameRegistry.registerItem(clip_fatman, clip_fatman.getUnlocalizedName());
GameRegistry.registerItem(clip_xvl1456, clip_xvl1456.getUnlocalizedName());
GameRegistry.registerItem(clip_osipr, clip_osipr.getUnlocalizedName());
GameRegistry.registerItem(clip_mp, clip_mp.getUnlocalizedName());
//Grenades
GameRegistry.registerItem(grenade_generic, grenade_generic.getUnlocalizedName());
@ -1850,6 +1882,8 @@ public class ModItems {
//THIS is a bucket.
GameRegistry.registerItem(bucket_mud, bucket_mud.getUnlocalizedName());
GameRegistry.registerItem(bucket_acid, bucket_acid.getUnlocalizedName());
GameRegistry.registerItem(bucket_toxic, bucket_toxic.getUnlocalizedName());
//Technical Items
GameRegistry.registerItem(smoke1, smoke1.getUnlocalizedName());

View File

@ -6,7 +6,7 @@ import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
public class WatzFuel extends Item {
public class WatzFuel extends ItemRadioactive {
public int power;
public float powerMultiplier;

View File

@ -182,6 +182,10 @@ public class Library {
{
return true;
}
if(checkArmorPiece(player, ModItems.schrabidium_helmet, 3))
{
return true;
}
if(checkArmorPiece(player, ModItems.euphemium_helmet, 3))
{
return true;
@ -200,7 +204,8 @@ public class Library {
world.getBlock(x, y, z) == ModBlocks.reactor_conductor ||
world.getBlock(x, y, z) == ModBlocks.factory_titanium_conductor ||
world.getBlock(x, y, z) == ModBlocks.factory_advanced_conductor ||
world.getBlock(x, y, z) == ModBlocks.watz_conductor)
world.getBlock(x, y, z) == ModBlocks.watz_conductor ||
world.getBlock(x, y, z) == ModBlocks.fwatz_hatch)
{
return true;
}

View File

@ -13,9 +13,11 @@ public class ModDamageSource extends DamageSource {
public static DamageSource nuclearBlast = (new DamageSource("nuclearBlast")).setExplosion();
public static DamageSource mudPoisoning = (new DamageSource("mudPoisoning")).setDamageBypassesArmor();
public static DamageSource acid = (new DamageSource("acid")).setDamageBypassesArmor();
public static DamageSource euthanizedSelf = (new DamageSource("euthanizedSelf")).setDamageBypassesArmor();
public static DamageSource euthanizedSelf2 = (new DamageSource("euthanizedSelf2")).setDamageBypassesArmor();
public static DamageSource tauBlast = (new DamageSource("tauBlast")).setDamageBypassesArmor();
public static DamageSource radiation = (new DamageSource("radiation")).setDamageBypassesArmor();
public ModDamageSource(String p_i1566_1_) {
super(p_i1566_1_);

View File

@ -9,6 +9,7 @@ import com.hbm.gui.ContainerConverterRfHe;
import com.hbm.gui.ContainerCoreAdvanced;
import com.hbm.gui.ContainerCoreTitanium;
import com.hbm.gui.ContainerElectricFurnace;
import com.hbm.gui.ContainerFWatzCore;
import com.hbm.gui.ContainerFusionMultiblock;
import com.hbm.gui.ContainerGenerator;
import com.hbm.gui.ContainerLaunchPadTier1;
@ -39,6 +40,7 @@ import com.hbm.gui.GUIConverterHeRf;
import com.hbm.gui.GUIConverterRfHe;
import com.hbm.gui.GUICoreAdvanced;
import com.hbm.gui.GUICoreTitanium;
import com.hbm.gui.GUIFWatzCore;
import com.hbm.gui.GUIFusionMultiblock;
import com.hbm.gui.GUILaunchPadTier1;
import com.hbm.gui.GUIMachineBattery;
@ -73,6 +75,7 @@ import com.hbm.tileentity.TileEntityConverterRfHe;
import com.hbm.tileentity.TileEntityCoreAdvanced;
import com.hbm.tileentity.TileEntityCoreTitanium;
import com.hbm.tileentity.TileEntityDiFurnace;
import com.hbm.tileentity.TileEntityFWatzCore;
import com.hbm.tileentity.TileEntityFusionMultiblock;
import com.hbm.tileentity.TileEntityLaunchPad;
import com.hbm.tileentity.TileEntityMachineBattery;
@ -378,6 +381,14 @@ public class GUIHandler implements IGuiHandler {
return new ContainerMachineCMBFactory(player.inventory, (TileEntityMachineCMBFactory) entity);
}
}
case ModBlocks.guiID_fwatz_multiblock:
{
if(entity instanceof TileEntityFWatzCore)
{
return new ContainerFWatzCore(player.inventory, (TileEntityFWatzCore) entity);
}
}
}
return null;
}
@ -654,6 +665,14 @@ public class GUIHandler implements IGuiHandler {
return new GUIMachineCMBFactory(player.inventory, (TileEntityMachineCMBFactory) entity);
}
}
case ModBlocks.guiID_fwatz_multiblock:
{
if(entity instanceof TileEntityFWatzCore)
{
return new GUIFWatzCore(player.inventory, (TileEntityFWatzCore) entity);
}
}
}
}
return null;

View File

@ -96,9 +96,11 @@ import com.hbm.tileentity.TileEntityDecoPoleTop;
import com.hbm.tileentity.TileEntityDecoSteelPoles;
import com.hbm.tileentity.TileEntityDecoTapeRecorder;
import com.hbm.tileentity.TileEntityDiFurnace;
import com.hbm.tileentity.TileEntityFWatzCore;
import com.hbm.tileentity.TileEntityFusionMultiblock;
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.TileEntityMachineDeuterium;
@ -296,8 +298,10 @@ public class MainRegistry
GameRegistry.registerTileEntity(TileEntityConverterRfHe.class, "tileentity_converter_rfhe");
GameRegistry.registerTileEntity(TileEntityMachineSchrabidiumTransmutator.class, "tileentity_schrabidium_transmutator");
GameRegistry.registerTileEntity(TileEntityMachineDiesel.class, "tileentity_diesel_generator");
GameRegistry.registerTileEntity(TileEntityWatzCore.class, "tileentity_watz_powerplant");
GameRegistry.registerTileEntity(TileEntityWatzCore.class, "tileentity_watz_multiblock");
GameRegistry.registerTileEntity(TileEntityMachineShredder.class, "tileentity_machine_shredder");
GameRegistry.registerTileEntity(TileEntityMachineCMBFactory.class, "tileentity_machine_cmb");
GameRegistry.registerTileEntity(TileEntityFWatzCore.class, "tileentity_fwatz_multiblock");
EntityRegistry.registerModEntity(EntityRocket.class, "entity_rocket", 0, this, 250, 1, true);
EntityRegistry.registerModEntity(EntityNukeExplosion.class, "entity_nuke_explosion", 1, this, 250, 1, true);

View File

@ -0,0 +1,538 @@
package com.hbm.tileentity;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
import com.hbm.blocks.ModBlocks;
import com.hbm.calc.UnionOfTileEntitiesAndBooleans;
import com.hbm.entity.EntityNukeExplosionAdvanced;
import com.hbm.interfaces.IConductor;
import com.hbm.interfaces.IConsumer;
import com.hbm.interfaces.IReactor;
import com.hbm.interfaces.ISource;
import com.hbm.items.ModItems;
import com.hbm.items.WatzFuel;
import com.hbm.lib.Library;
import com.hbm.main.MainRegistry;
import com.hbm.world.FWatz;
import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.inventory.ISidedInventory;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;
public class TileEntityFWatzCore extends TileEntity implements ISidedInventory, IReactor, ISource {
public int cool;
public final static int maxCool = 100000000;
public int power;
public final static int maxPower = 100000000;
public int amat;
public final static int maxAmat = 100000000;
public int aSchrab;
public final static int maxASchrab = 100000000;
public boolean cooldown = false;
Random rand = new Random();
private ItemStack slots[];
public int age = 0;
public List<IConsumer> list = new ArrayList();
private String customName;
public TileEntityFWatzCore() {
slots = new ItemStack[5];
}
@Override
public int getSizeInventory() {
return slots.length;
}
@Override
public ItemStack getStackInSlot(int i) {
return slots[i];
}
@Override
public ItemStack getStackInSlotOnClosing(int i) {
if(slots[i] != null)
{
ItemStack itemStack = slots[i];
slots[i] = null;
return itemStack;
} else {
return null;
}
}
@Override
public void setInventorySlotContents(int i, ItemStack itemStack) {
slots[i] = itemStack;
if(itemStack != null && itemStack.stackSize > getInventoryStackLimit())
{
itemStack.stackSize = getInventoryStackLimit();
}
}
@Override
public String getInventoryName() {
return this.hasCustomInventoryName() ? this.customName : "container.fusionaryWatzPlant";
}
@Override
public boolean hasCustomInventoryName() {
return this.customName != null && this.customName.length() > 0;
}
public void setCustomName(String name) {
this.customName = name;
}
@Override
public int getInventoryStackLimit() {
return 64;
}
@Override
public boolean isUseableByPlayer(EntityPlayer player) {
if(worldObj.getTileEntity(xCoord, yCoord, zCoord) != this)
{
return false;
}else{
return true;
}
}
@Override
public void openInventory() {}
@Override
public void closeInventory() {}
@Override
public boolean isItemValidForSlot(int i, ItemStack itemStack) {
return true;
}
@Override
public ItemStack decrStackSize(int i, int j) {
if(slots[i] != null)
{
if(slots[i].stackSize <= j)
{
ItemStack itemStack = slots[i];
slots[i] = null;
return itemStack;
}
ItemStack itemStack1 = slots[i].splitStack(j);
if (slots[i].stackSize == 0)
{
slots[i] = null;
}
return itemStack1;
} else {
return null;
}
}
@Override
public int[] getAccessibleSlotsFromSide(int p_94128_1_) {
return null;
}
@Override
public boolean canInsertItem(int p_102007_1_, ItemStack p_102007_2_, int p_102007_3_) {
return false;
}
@Override
public boolean canExtractItem(int p_102008_1_, ItemStack p_102008_2_, int p_102008_3_) {
return false;
}
@Override
public void readFromNBT(NBTTagCompound nbt) {
super.readFromNBT(nbt);
NBTTagList list = nbt.getTagList("items", 10);
cool = nbt.getShort("cool") * 10000;
power = nbt.getShort("power") * 10000;
amat = nbt.getShort("amat") * 10000;
aSchrab = nbt.getShort("aSchrab") * 10000;
slots = new ItemStack[getSizeInventory()];
for(int i = 0; i < list.tagCount(); i++)
{
NBTTagCompound nbt1 = list.getCompoundTagAt(i);
byte b0 = nbt1.getByte("slot");
if(b0 >= 0 && b0 < slots.length)
{
slots[b0] = ItemStack.loadItemStackFromNBT(nbt1);
}
}
}
@Override
public void writeToNBT(NBTTagCompound nbt) {
super.writeToNBT(nbt);
nbt.setShort("cool", (short) (cool/10000));
nbt.setShort("power", (short) (power/10000));
nbt.setShort("amat", (short) (amat/10000));
nbt.setShort("aSchrab", (short) (aSchrab/10000));
NBTTagList list = new NBTTagList();
for(int i = 0; i < slots.length; i++)
{
if(slots[i] != null)
{
NBTTagCompound nbt1 = new NBTTagCompound();
nbt1.setByte("slot", (byte)i);
slots[i].writeToNBT(nbt1);
list.appendTag(nbt1);
}
}
nbt.setTag("items", list);
}
@Override
public boolean isStructureValid(World world) {
return FWatz.checkHull(world, this.xCoord, this.yCoord, this.zCoord);
}
@Override
public boolean isCoatingValid(World world) {
{
return true;
}
//return false;
}
@Override
public boolean hasFuse() {
return slots[1] != null && (slots[1].getItem() == ModItems.fuse || slots[1].getItem() == ModItems.screwdriver);
}
@Override
public int getCoolantScaled(int i) {
return (cool/100 * i) / (maxCool/100);
}
@Override
public int getPowerScaled(int i) {
return (power/100 * i) / (maxPower/100);
}
@Override
public int getWaterScaled(int i) {
return (amat/100 * i) / (maxAmat/100);
}
@Override
public int getHeatScaled(int i) {
return (aSchrab/100 * i) / (maxASchrab/100);
}
public int getSingularityType() {
if(slots[2] != null) {
Item item = slots[2].getItem();
if(item == ModItems.singularity)
return 1;
if(item == ModItems.singularity_counter_resonant)
return 2;
if(item == ModItems.singularity_super_heated)
return 3;
if(item == ModItems.black_hole)
return 4;
if(item == ModItems.overfuse)
return 5;
}
return 0;
}
@Override
public void updateEntity() {
if (this.isStructureValid(this.worldObj) && !this.worldObj.isRemote) {
age++;
if (age >= 20) {
age = 0;
}
if (age == 9 || age == 19)
ffgeuaInit();
if (hasFuse() && getSingularityType() > 0) {
if(cooldown) {
this.emptyPlasma();
int i = getSingularityType();
if(i == 1)
cool += 1500;
if(i == 2)
cool += 3000;
if(i == 3)
cool += 750;
if(i == 4)
cool += 7500;
if(i == 5)
cool += 150000;
if(cool >= maxCool) {
cooldown = false;
cool = maxCool;
}
} else {
int i = getSingularityType();
this.fillPlasma();
if(i == 1 && amat - 750 >= 0 && aSchrab - 750 >= 0) {
cool -= 150;
amat -= 750;
aSchrab -= 750;
power += 500000;
}
if(i == 2 && amat - 750 >= 0 && aSchrab - 350 >= 0) {
cool -= 75;
amat -= 350;
aSchrab -= 300;
power += 250000;
}
if(i == 3 && amat - 750 >= 0 && aSchrab - 1400 >= 0) {
cool -= 300;
amat -= 750;
aSchrab -= 1400;
power += 1000000;
}
if(i == 4 && amat - 1000 >= 0 && aSchrab - 1000 >= 0) {
cool -= 100;
amat -= 1000;
aSchrab -= 1000;
power += 1000000;
}
if(i == 5 && amat - 150 >= 0 && aSchrab - 150 >= 0) {
cool -= 150;
amat -= 150;
aSchrab -= 150;
power += 10000000;
}
if(power > maxPower)
power = maxPower;
if(cool <= 0) {
cooldown = true;
cool = 0;
}
}
}
if(power > maxPower)
power = maxPower;
if(power - 100 >= 0 && slots[0] != null && slots[0].getItem() == ModItems.battery_generic && slots[0].getItemDamage() > 0)
{
power -= 100;
slots[37].setItemDamage(slots[0].getItemDamage() - 1);
}
if(power - 100 >= 0 && slots[0] != null && slots[0].getItem() == ModItems.battery_advanced && slots[0].getItemDamage() > 0)
{
power -= 100;
slots[37].setItemDamage(slots[0].getItemDamage() - 1);
}
if(power - 100 >= 0 && slots[0] != null && slots[0].getItem() == ModItems.battery_schrabidium && slots[0].getItemDamage() > 0)
{
power -= 100;
slots[37].setItemDamage(slots[0].getItemDamage() - 1);
}
if(power - 100 >= 0 && slots[0] != null && slots[0].getItem() == ModItems.factory_core_titanium && slots[0].getItemDamage() > 0)
{
power -= 100;
slots[37].setItemDamage(slots[0].getItemDamage() - 1);
}
if(power - 100 >= 0 && slots[0] != null && slots[0].getItem() == ModItems.factory_core_advanced && slots[0].getItemDamage() > 0)
{
power -= 100;
slots[37].setItemDamage(slots[0].getItemDamage() - 1);
}
if(amat + 1000000 <= maxAmat && slots[3] != null && slots[3].getItem() == ModItems.cell_antimatter)
{
this.slots[3].stackSize--;
this.amat += 1000000;
if(this.slots[3].stackSize == 0)
{
this.slots[3] = null;
}
}
if(aSchrab + 1000000 <= maxASchrab && slots[4] != null && slots[4].getItem() == ModItems.cell_anti_schrabidium)
{
this.slots[4].stackSize--;
this.aSchrab += 1000000;
if(this.slots[4].stackSize == 0)
{
this.slots[4] = null;
}
}
if(slots[3] != null && slots[3].getItem() == ModItems.inf_antimatter)
{
this.amat = maxAmat;
}
if(slots[4] != null && slots[4].getItem() == ModItems.inf_antischrabidium)
{
this.aSchrab = maxASchrab;
}
}
}
public void fillPlasma() {
FWatz.fillPlasma(worldObj, this.xCoord, this.yCoord, this.zCoord);
}
public void emptyPlasma() {
FWatz.emptyPlasma(worldObj, this.xCoord, this.yCoord, this.zCoord);
}
public boolean isRunning() {
return FWatz.getPlasma(worldObj, this.xCoord, this.yCoord, this.zCoord) && this.isStructureValid(worldObj);
}
@Override
public void ffgeua(int x, int y, int z, boolean newTact) {
Block block = this.worldObj.getBlock(x, y, z);
TileEntity tileentity = this.worldObj.getTileEntity(x, y, z);
if(block == ModBlocks.factory_titanium_conductor && this.worldObj.getBlock(x, y + 1, z) == ModBlocks.factory_titanium_core)
{
tileentity = this.worldObj.getTileEntity(x, y + 1, z);
}
if(block == ModBlocks.factory_titanium_conductor && this.worldObj.getBlock(x, y - 1, z) == ModBlocks.factory_titanium_core)
{
tileentity = this.worldObj.getTileEntity(x, y - 1, z);
}
if(block == ModBlocks.factory_advanced_conductor && this.worldObj.getBlock(x, y + 1, z) == ModBlocks.factory_advanced_core)
{
tileentity = this.worldObj.getTileEntity(x, y + 1, z);
}
if(block == ModBlocks.factory_advanced_conductor && this.worldObj.getBlock(x, y - 1, z) == ModBlocks.factory_advanced_core)
{
tileentity = this.worldObj.getTileEntity(x, y - 1, z);
}
if(tileentity instanceof IConductor)
{
if(tileentity instanceof TileEntityCable)
{
if(Library.checkUnionList(((TileEntityCable)tileentity).uoteab, this))
{
for(int i = 0; i < ((TileEntityCable)tileentity).uoteab.size(); i++)
{
if(((TileEntityCable)tileentity).uoteab.get(i).source == this)
{
if(((TileEntityCable)tileentity).uoteab.get(i).ticked != newTact)
{
((TileEntityCable)tileentity).uoteab.get(i).ticked = newTact;
ffgeua(x, y + 1, z, getTact());
ffgeua(x, y - 1, z, getTact());
ffgeua(x - 1, y, z, getTact());
ffgeua(x + 1, y, z, getTact());
ffgeua(x, y, z - 1, getTact());
ffgeua(x, y, z + 1, getTact());
}
}
}
} else {
((TileEntityCable)tileentity).uoteab.add(new UnionOfTileEntitiesAndBooleans(this, newTact));
}
}
if(tileentity instanceof TileEntityWireCoated)
{
if(Library.checkUnionList(((TileEntityWireCoated)tileentity).uoteab, this))
{
for(int i = 0; i < ((TileEntityWireCoated)tileentity).uoteab.size(); i++)
{
if(((TileEntityWireCoated)tileentity).uoteab.get(i).source == this)
{
if(((TileEntityWireCoated)tileentity).uoteab.get(i).ticked != newTact)
{
((TileEntityWireCoated)tileentity).uoteab.get(i).ticked = newTact;
ffgeua(x, y + 1, z, getTact());
ffgeua(x, y - 1, z, getTact());
ffgeua(x - 1, y, z, getTact());
ffgeua(x + 1, y, z, getTact());
ffgeua(x, y, z - 1, getTact());
ffgeua(x, y, z + 1, getTact());
}
}
}
} else {
((TileEntityWireCoated)tileentity).uoteab.add(new UnionOfTileEntitiesAndBooleans(this, newTact));
}
}
}
if(tileentity instanceof IConsumer && newTact && !(tileentity instanceof TileEntityMachineBattery && ((TileEntityMachineBattery)tileentity).conducts))
{
list.add((IConsumer)tileentity);
}
if(!newTact)
{
int size = list.size();
if(size > 0)
{
int part = this.power / size;
for(IConsumer consume : list)
{
if(consume.getPower() < consume.getMaxPower())
{
if(consume.getMaxPower() - consume.getPower() >= part)
{
this.power -= part;
consume.setPower(consume.getPower() + part);
} else {
this.power -= consume.getMaxPower() - consume.getPower();
consume.setPower(consume.getMaxPower());
}
}
}
}
list.clear();
}
}
@Override
public void ffgeuaInit() {
ffgeua(this.xCoord + 10, this.yCoord - 11, this.zCoord, getTact());
ffgeua(this.xCoord - 10, this.yCoord - 11, this.zCoord, getTact());
ffgeua(this.xCoord, this.yCoord - 11, this.zCoord + 10, getTact());
ffgeua(this.xCoord, this.yCoord - 11, this.zCoord - 10, getTact());
}
public boolean getTact() {
if(age >= 0 && age < 10)
{
return true;
}
return false;
}
}

View File

@ -942,7 +942,7 @@ public class TileEntityFusionMultiblock extends TileEntity implements ISidedInve
@Override
public boolean hasFuse() {
return false;
return slots[8] != null && (slots[8].getItem() == ModItems.fuse || slots[8].getItem() == ModItems.screwdriver);
}
@Override
@ -1074,7 +1074,7 @@ public class TileEntityFusionMultiblock extends TileEntity implements ISidedInve
slots[5] != null && (slots[5].getItem() == ModItems.fusion_core || slots[5].getItem() == ModItems.energy_core) && slots[5].getItemDamage() == 0 &&
slots[6] != null && (slots[6].getItem() == ModItems.fusion_core || slots[6].getItem() == ModItems.energy_core) && slots[6].getItemDamage() == 0 &&
slots[7] != null && (slots[7].getItem() == ModItems.fusion_core || slots[7].getItem() == ModItems.energy_core) && slots[7].getItemDamage() == 0 &&
slots[8] != null && slots[8].getItem() == ModItems.fuse &&
hasFuse() &&
deut > 0 && trit > 0)
{
slots[4] = null;
@ -1148,7 +1148,7 @@ public class TileEntityFusionMultiblock extends TileEntity implements ISidedInve
}
public boolean isRunning() {
if(slots[8] != null && slots[8].getItem() == ModItems.fuse && (
if(hasFuse() && (
worldObj.getBlock(xCoord + 4, yCoord, zCoord - 3) == ModBlocks.plasma ||
worldObj.getBlock(xCoord + 4, yCoord, zCoord - 2) == ModBlocks.plasma ||
worldObj.getBlock(xCoord + 4, yCoord, zCoord - 1) == ModBlocks.plasma ||

View File

@ -210,7 +210,7 @@ public class TileEntityLaunchPad extends TileEntity implements ISidedInventory,
slots[2].setItemDamage(slots[2].getItemDamage() + 1);
}
if(power + 100 <= maxPower && slots[2] != null && slots[2].getItem() == ModItems.battery_schrabidium && slots[2].getItemDamage() < 1000)
if(power + 100 <= maxPower && slots[2] != null && slots[2].getItem() == ModItems.battery_schrabidium && slots[2].getItemDamage() < 10000)
{
power += 100;
slots[2].setItemDamage(slots[2].getItemDamage() + 1);

View File

@ -250,7 +250,7 @@ public class TileEntityMachineBattery extends TileEntity implements ISidedInvent
slots[0].setItemDamage(slots[0].getItemDamage() + 1);
}
if(power + 100 <= maxPower && slots[0] != null && slots[0].getItem() == ModItems.battery_schrabidium && slots[0].getItemDamage() < 1000)
if(power + 100 <= maxPower && slots[0] != null && slots[0].getItem() == ModItems.battery_schrabidium && slots[0].getItemDamage() < 10000)
{
power += 100;
slots[0].setItemDamage(slots[0].getItemDamage() + 1);

View File

@ -19,13 +19,14 @@ public class TileEntityMachineCMBFactory extends TileEntity implements ISidedInv
public int power = 0;
public int waste = 0;
public int process = 0;
public int soundCycle = 0;
public static final int maxFill = 1000;
public static final int maxPower = 10000;
public static final int processSpeed = 200;
private static final int[] slots_top = new int[] {3};
private static final int[] slots_bottom = new int[] {4, 0, 1};
private static final int[] slots_side = new int[] {0, 1, 2};
private static final int[] slots_top = new int[] {1, 3};
private static final int[] slots_bottom = new int[] {0, 2, 4};
private static final int[] slots_side = new int[] {0, 2};
private String customName;
@ -107,15 +108,15 @@ public class TileEntityMachineCMBFactory extends TileEntity implements ISidedInv
return true;
break;
case 1:
if(stack.getItem() == ModItems.rod_water || stack.getItem() == ModItems.rod_dual_water || stack.getItem() == ModItems.rod_quad_water || stack.getItem() == Items.water_bucket)
if(stack.getItem() == ModItems.ingot_magnetized_tungsten || stack.getItem() == ModItems.powder_magnetized_tungsten)
return true;
break;
case 2:
if(stack.getItem() == ModItems.sulfur)
if(stack.getItem() == ModItems.bucket_mud || (stack.getItem() == ModItems.tank_waste && stack.getItemDamage() > 0))
return true;
break;
case 3:
if(stack.getItem() == ModItems.cell_empty)
if(stack.getItem() == ModItems.ingot_advanced_alloy || stack.getItem() == ModItems.powder_advanced_alloy)
return true;
break;
}
@ -205,8 +206,8 @@ public class TileEntityMachineCMBFactory extends TileEntity implements ISidedInv
if(i == 0 && itemStack.getItem() instanceof ItemBattery)
if(itemStack.getItemDamage() == itemStack.getMaxDamage())
return true;
if(i == 1)
if(itemStack.getItem() == Items.bucket || itemStack.getItem() == ModItems.rod_empty || itemStack.getItem() == ModItems.rod_dual_empty || itemStack.getItem() == ModItems.rod_quad_empty)
if(i == 2)
if(itemStack.getItem() == Items.bucket || (itemStack.getItem() == ModItems.tank_waste && itemStack.getItemDamage() <= 0))
return true;
return false;
@ -225,7 +226,18 @@ public class TileEntityMachineCMBFactory extends TileEntity implements ISidedInv
}
public boolean canProcess() {
return false;
boolean b = false;
if(waste > 0 && power > 0 && slots[1] != null && slots[3] != null && (slots[4] == null || slots[4].stackSize <= 60))
{
boolean flag0 = slots[1].getItem() == ModItems.ingot_magnetized_tungsten || slots[1].getItem() == ModItems.powder_magnetized_tungsten;
boolean flag1 = slots[3].getItem() == ModItems.ingot_advanced_alloy || slots[3].getItem() == ModItems.powder_advanced_alloy;
b = flag0 && flag1;
}
return b;
}
public boolean isProcessing() {
@ -234,25 +246,28 @@ public class TileEntityMachineCMBFactory extends TileEntity implements ISidedInv
public void process() {
waste -= 1;
power -= 25;
power -= 3;
process++;
if(process >= processSpeed) {
slots[1].stackSize--;
if (slots[1].stackSize == 0) {
slots[1] = null;
}
slots[3].stackSize--;
if(slots[3].stackSize == 0)
{
if (slots[3].stackSize == 0) {
slots[3] = null;
}
if(slots[4] == null)
{
slots[4] = new ItemStack(ModItems.cell_deuterium);
slots[4] = new ItemStack(ModItems.ingot_combine_steel, 4);
} else {
slots[4].stackSize++;
slots[4].stackSize += 4;
}
process = 0;
@ -264,14 +279,58 @@ public class TileEntityMachineCMBFactory extends TileEntity implements ISidedInv
if (!worldObj.isRemote) {
if (power + 100 <= maxPower && slots[0] != null && slots[0].getItem() == ModItems.energy_core
if (slots[0] != null && slots[0].getItem() == ModItems.battery_creative) {
power = maxPower;
}
if (power + 100 <= maxPower && slots[0] != null && slots[0].getItem() == ModItems.battery_generic
&& slots[0].getItemDamage() < 50) {
power += 100;
slots[0].setItemDamage(slots[0].getItemDamage() + 1);
}
if (power + 100 <= maxPower && slots[0] != null && slots[0].getItem() == ModItems.battery_advanced
&& slots[0].getItemDamage() < 200) {
power += 100;
slots[0].setItemDamage(slots[0].getItemDamage() + 1);
}
if (power + 100 <= maxPower && slots[0] != null && slots[0].getItem() == ModItems.battery_schrabidium
&& slots[0].getItemDamage() < 1000) {
power += 100;
slots[0].setItemDamage(slots[0].getItemDamage() + 1);
}
if (power + 100 <= maxPower && slots[0] != null && slots[0].getItem() == ModItems.fusion_core
&& slots[0].getItemDamage() < 5000) {
power += 100;
slots[0].setItemDamage(slots[0].getItemDamage() + 1);
}
if (power + 100 <= maxPower && slots[0] != null && slots[0].getItem() == ModItems.energy_core
&& slots[0].getItemDamage() < 5000) {
power += 100;
slots[0].setItemDamage(slots[0].getItemDamage() + 1);
}
if(waste + 500 <= maxFill && slots[2] != null && slots[2].getItem() == ModItems.bucket_mud) {
waste += 500;
slots[2] = new ItemStack(slots[2].getItem().getContainerItem());
}
if(waste + 500 <= maxFill && slots[2] != null && slots[2].getItem() == ModItems.tank_waste && slots[2].getItemDamage() > 0) {
waste += 500;
slots[2].setItemDamage(slots[2].getItemDamage() - 1);
}
if (canProcess()) {
process();
if(soundCycle == 0)
this.worldObj.playSoundEffect(this.xCoord, this.yCoord, this.zCoord, "minecart.base", 1.0F, 1.5F);
soundCycle++;
if(soundCycle >= 25)
soundCycle = 0;
} else {
process = 0;
}

View File

@ -323,7 +323,7 @@ public class TileEntityMachineElectricFurnace extends TileEntity implements ISid
slots[0].setItemDamage(slots[0].getItemDamage() + 1);
}
if(power + 100 <= maxPower && slots[0] != null && slots[0].getItem() == ModItems.battery_schrabidium && slots[0].getItemDamage() < 1000)
if(power + 100 <= maxPower && slots[0] != null && slots[0].getItem() == ModItems.battery_schrabidium && slots[0].getItemDamage() < 10000)
{
power += 100;
slots[0].setItemDamage(slots[0].getItemDamage() + 1);

View File

@ -284,7 +284,7 @@ public class TileEntityMachineSchrabidiumTransmutator extends TileEntity impleme
}
if (power + 100 <= maxPower && slots[3] != null && slots[3].getItem() == ModItems.battery_schrabidium
&& slots[3].getItemDamage() < 1000) {
&& slots[3].getItemDamage() < 10000) {
power += 100;
slots[3].setItemDamage(slots[3].getItemDamage() + 1);
}

View File

@ -277,7 +277,7 @@ public class TileEntityMachineShredder extends TileEntity implements ISidedInven
slots[29].setItemDamage(slots[29].getItemDamage() + 1);
}
if(power + 100 <= maxPower && slots[29] != null && slots[29].getItem() == ModItems.battery_schrabidium && slots[29].getItemDamage() < 1000)
if(power + 100 <= maxPower && slots[29] != null && slots[29].getItem() == ModItems.battery_schrabidium && slots[29].getItemDamage() < 10000)
{
power += 100;
slots[29].setItemDamage(slots[29].getItemDamage() + 1);

View File

@ -308,7 +308,7 @@ public class TileEntityReactorMultiblock extends TileEntity implements ISidedInv
}
if(slots[33] != null && slots[33].getItem() == ModItems.fuse)
if(hasFuse())
{
for(int i = 0; i < 30; i++)
{
@ -741,7 +741,7 @@ public class TileEntityReactorMultiblock extends TileEntity implements ISidedInv
@Override
public boolean hasFuse() {
return false;
return slots[33] != null && (slots[33].getItem() == ModItems.fuse || slots[33].getItem() == ModItems.screwdriver);
}
public void attemptPower(int i) {

937
com/hbm/world/FWatz.java Normal file
View File

@ -0,0 +1,937 @@
package com.hbm.world;
import java.util.Random;
import com.hbm.blocks.ModBlocks;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.init.Blocks;
import net.minecraft.world.World;
import net.minecraft.world.gen.feature.WorldGenerator;
public class FWatz {
static String[][] fwatz = new String[19][19];
static String s0101 = " XXX ";
static String s0102 = " XXX ";
static String s0103 = " ";
static String s0104 = " ";
static String s0105 = " ";
static String s0106 = " ";
static String s0107 = " ";
static String s0108 = " SSSSS ";
static String s0109 = "XX SSSSS XX";
static String s0110 = "XX SSSSS XX";
static String s0111 = "XX SSSSS XX";
static String s0112 = " SSSSS ";
static String s0113 = " ";
static String s0114 = " ";
static String s0115 = " ";
static String s0116 = " ";
static String s0117 = " ";
static String s0118 = " XXX ";
static String s0119 = " XXX ";
static String s0201 = " XHX ";
static String s0202 = " XXX ";
static String s0203 = " ";
static String s0204 = " ";
static String s0205 = " ";
static String s0206 = " ";
static String s0207 = " ";
static String s0208 = " SSSSS ";
static String s0209 = "XX STTTS XX";
static String s0210 = "HX STTTS XH";
static String s0211 = "XX STTTS XX";
static String s0212 = " SSSSS ";
static String s0213 = " ";
static String s0214 = " ";
static String s0215 = " ";
static String s0216 = " ";
static String s0217 = " ";
static String s0218 = " XXX ";
static String s0219 = " XHX ";
static String s0301 = " XXX ";
static String s0302 = " XXX ";
static String s0303 = " ";
static String s0304 = " ";
static String s0305 = " ";
static String s0306 = " ";
static String s0307 = " ";
static String s0308 = " SSSSS ";
static String s0309 = "XX STTTS XX";
static String s0310 = "XX STTTS XX";
static String s0311 = "XX STTTS XX";
static String s0312 = " SSSSS ";
static String s0313 = " ";
static String s0314 = " ";
static String s0315 = " ";
static String s0316 = " ";
static String s0317 = " ";
static String s0318 = " XXX ";
static String s0319 = " XXX ";
static String s0401 = " ";
static String s0402 = " XXX ";
static String s0403 = " XXX ";
static String s0404 = " X ";
static String s0405 = " X ";
static String s0406 = " X ";
static String s0407 = " X ";
static String s0408 = " SSXSS ";
static String s0409 = " XX STTTS XX ";
static String s0410 = " XXXXXXXTTTXXXXXXX ";
static String s0411 = " XX STTTS XX ";
static String s0412 = " SSXSS ";
static String s0413 = " X ";
static String s0414 = " X ";
static String s0415 = " X ";
static String s0416 = " X ";
static String s0417 = " XXX ";
static String s0418 = " XXX ";
static String s0419 = " ";
static String s0501 = " ";
static String s0502 = " XXX ";
static String s0503 = " XXX ";
static String s0504 = " ";
static String s0505 = " ";
static String s0506 = " ";
static String s0507 = " ";
static String s0508 = " SSSSS ";
static String s0509 = " XX STTTS XX ";
static String s0510 = " XX STTTS XX ";
static String s0511 = " XX STTTS XX ";
static String s0512 = " SSSSS ";
static String s0513 = " ";
static String s0514 = " ";
static String s0515 = " ";
static String s0516 = " ";
static String s0517 = " XXX ";
static String s0518 = " XXX ";
static String s0519 = " ";
static String s0601 = " ";
static String s0602 = " XXX ";
static String s0603 = " XXX ";
static String s0604 = " ";
static String s0605 = " ";
static String s0606 = " ";
static String s0607 = " ";
static String s0608 = " SSSSS ";
static String s0609 = " XX STTTS XX ";
static String s0610 = " XX STTTS XX ";
static String s0611 = " XX STTTS XX ";
static String s0612 = " SSSSS ";
static String s0613 = " ";
static String s0614 = " ";
static String s0615 = " ";
static String s0616 = " ";
static String s0617 = " XXX ";
static String s0618 = " XXX ";
static String s0619 = " ";
static String s0701 = " ";
static String s0702 = " ";
static String s0703 = " XXX ";
static String s0704 = " XXX ";
static String s0705 = " ";
static String s0706 = " ";
static String s0707 = " ";
static String s0708 = " MMMMM ";
static String s0709 = " XX MMMMM XX ";
static String s0710 = " XX MMMMM XX ";
static String s0711 = " XX MMMMM XX ";
static String s0712 = " MMMMM ";
static String s0713 = " ";
static String s0714 = " ";
static String s0715 = " ";
static String s0716 = " XXX ";
static String s0717 = " XXX ";
static String s0718 = " ";
static String s0719 = " ";
static String s0801 = " ";
static String s0802 = " ";
static String s0803 = " XXX ";
static String s0804 = " XXX ";
static String s0805 = " XXX ";
static String s0806 = " MMMMM ";
static String s0807 = " MMMMMMM ";
static String s0808 = " MMMMMMMMM ";
static String s0809 = " XXXMMMMMMMMMXXX ";
static String s0810 = " XXXMMMMMMMMMXXX ";
static String s0811 = " XXXMMMMMMMMMXXX ";
static String s0812 = " MMMMMMMMM ";
static String s0813 = " MMMMMMM ";
static String s0814 = " MMMMM ";
static String s0815 = " XXX ";
static String s0816 = " XXX ";
static String s0817 = " XXX ";
static String s0818 = " ";
static String s0819 = " ";
static String s0901 = " ";
static String s0902 = " ";
static String s0903 = " XXX ";
static String s0904 = " XXX ";
static String s0905 = " MMMMM ";
static String s0906 = " MMMMMMM ";
static String s0907 = " MMMMMMMMM ";
static String s0908 = " MMMMPPPMMMM ";
static String s0909 = " XXMMMPPPPPMMMXX ";
static String s0910 = " XXMMMPPPPPMMMXX ";
static String s0911 = " XXMMMPPPPPMMMXX ";
static String s0912 = " MMMMPPPMMMM ";
static String s0913 = " MMMMMMMMM ";
static String s0914 = " MMMMMMM ";
static String s0915 = " MMMMM ";
static String s0916 = " XXX ";
static String s0917 = " XXX ";
static String s0918 = " ";
static String s0919 = " ";
static String s1001 = " ";
static String s1002 = " ";
static String s1003 = " ";
static String s1004 = " XXX ";
static String s1005 = " MMMMMMM ";
static String s1006 = " MMMMMMMMM ";
static String s1007 = " MMMMPPPMMMM ";
static String s1008 = " MMMPPPPPMMM ";
static String s1009 = " XMMPPPPPPPMMX ";
static String s1010 = " XMMPPPPPPPMMX ";
static String s1011 = " XMMPPPPPPPMMX ";
static String s1012 = " MMMPPPPPMMM ";
static String s1013 = " MMMMPPPMMMM ";
static String s1014 = " MMMMMMMMM ";
static String s1015 = " MMMMMMM ";
static String s1016 = " XXX ";
static String s1017 = " ";
static String s1018 = " ";
static String s1019 = " ";
static String s1101 = " ";
static String s1102 = " ";
static String s1103 = " ";
static String s1104 = " MMMMM ";
static String s1105 = " MMMMMMMMM ";
static String s1106 = " MMMMPPPMMMM ";
static String s1107 = " MMMPPPPPMMM ";
static String s1108 = " MMMPPPPPPPMMM ";
static String s1109 = " MMPPPMMMPPPMM ";
static String s1110 = " MMPPPMMMPPPMM ";
static String s1111 = " MMPPPMMMPPPMM ";
static String s1112 = " MMMPPPPPPPMMM ";
static String s1113 = " MMMPPPPPMMM ";
static String s1114 = " MMMMPPPMMMM ";
static String s1115 = " MMMMMMMMM ";
static String s1116 = " MMMMM ";
static String s1117 = " ";
static String s1118 = " ";
static String s1119 = " ";
static String s1201 = " ";
static String s1202 = " ";
static String s1203 = " ";
static String s1204 = " MMMMM ";
static String s1205 = " MMMMMMMMM ";
static String s1206 = " MMMPPPPPMMM ";
static String s1207 = " MMPPPPPPPMM ";
static String s1208 = " MMPPPMMMPPPMM ";
static String s1209 = " MMPPMMMMMPPMM ";
static String s1210 = " MMPPMMCMMPPMM ";
static String s1211 = " MMPPMMMMMPPMM ";
static String s1212 = " MMPPPMMMPPPMM ";
static String s1213 = " MMPPPPPPPMM ";
static String s1214 = " MMMPPPPPMMM ";
static String s1215 = " MMMMMMMMM ";
static String s1216 = " MMMMM ";
static String s1217 = " ";
static String s1218 = " ";
static String s1219 = " ";
static String s1301 = " ";
static String s1302 = " ";
static String s1303 = " ";
static String s1304 = " MMMMM ";
static String s1305 = " MMMMMMMMM ";
static String s1306 = " MMMPPPPPMMM ";
static String s1307 = " MMPPPPPPPMM ";
static String s1308 = " MMPPPMMMPPPMM ";
static String s1309 = " MMPPMMCMMPPMM ";
static String s1310 = " MMPPMC#CMPPMM ";
static String s1311 = " MMPPMMCMMPPMM ";
static String s1312 = " MMPPPMMMPPPMM ";
static String s1313 = " MMPPPPPPPMM ";
static String s1314 = " MMMPPPPPMMM ";
static String s1315 = " MMMMMMMMM ";
static String s1316 = " MMMMM ";
static String s1317 = " ";
static String s1318 = " ";
static String s1319 = " ";
static String s1401 = " ";
static String s1402 = " ";
static String s1403 = " ";
static String s1404 = " MMMMM ";
static String s1405 = " MMMMMMMMM ";
static String s1406 = " MMMPPPPPMMM ";
static String s1407 = " MMPPPPPPPMM ";
static String s1408 = " MMPPPMMMPPPMM ";
static String s1409 = " MMPPMMMMMPPMM ";
static String s1410 = " MMPPMMCMMPPMM ";
static String s1411 = " MMPPMMMMMPPMM ";
static String s1412 = " MMPPPMMMPPPMM ";
static String s1413 = " MMPPPPPPPMM ";
static String s1414 = " MMMPPPPPMMM ";
static String s1415 = " MMMMMMMMM ";
static String s1416 = " MMMMM ";
static String s1417 = " ";
static String s1418 = " ";
static String s1419 = " ";
static String s1501 = " ";
static String s1502 = " ";
static String s1503 = " ";
static String s1504 = " MMMMM ";
static String s1505 = " MMMMMMMMM ";
static String s1506 = " MMMMPPPMMMM ";
static String s1507 = " MMMPPPPPMMM ";
static String s1508 = " MMMPPPPPPPMMM ";
static String s1509 = " MMPPPMMMPPPMM ";
static String s1510 = " MMPPPMMMPPPMM ";
static String s1511 = " MMPPPMMMPPPMM ";
static String s1512 = " MMMPPPPPPPMMM ";
static String s1513 = " MMMPPPPPMMM ";
static String s1514 = " MMMMPPPMMMM ";
static String s1515 = " MMMMMMMMM ";
static String s1516 = " MMMMM ";
static String s1517 = " ";
static String s1518 = " ";
static String s1519 = " ";
static String s1601 = " ";
static String s1602 = " ";
static String s1603 = " ";
static String s1604 = " ";
static String s1605 = " MMMMMMM ";
static String s1606 = " MMMMMMMMM ";
static String s1607 = " MMMMPPPMMMM ";
static String s1608 = " MMMPPPPPMMM ";
static String s1609 = " MMPPPPPPPMM ";
static String s1610 = " MMPPPPPPPMM ";
static String s1611 = " MMPPPPPPPMM ";
static String s1612 = " MMMPPPPPMMM ";
static String s1613 = " MMMMPPPMMMM ";
static String s1614 = " MMMMMMMMM ";
static String s1615 = " MMMMMMM ";
static String s1616 = " ";
static String s1617 = " ";
static String s1618 = " ";
static String s1619 = " ";
static String s1701 = " ";
static String s1702 = " ";
static String s1703 = " ";
static String s1704 = " ";
static String s1705 = " MMMMM ";
static String s1706 = " MMMMMMM ";
static String s1707 = " MMMMMMMMM ";
static String s1708 = " MMMMPPPMMMM ";
static String s1709 = " MMMPPPPPMMM ";
static String s1710 = " MMMPPPPPMMM ";
static String s1711 = " MMMPPPPPMMM ";
static String s1712 = " MMMMPPPMMMM ";
static String s1713 = " MMMMMMMMM ";
static String s1714 = " MMMMMMM ";
static String s1715 = " MMMMM ";
static String s1716 = " ";
static String s1717 = " ";
static String s1718 = " ";
static String s1719 = " ";
static String s1801 = " ";
static String s1802 = " ";
static String s1803 = " ";
static String s1804 = " ";
static String s1805 = " ";
static String s1806 = " MMMMM ";
static String s1807 = " MMMMMMM ";
static String s1808 = " MMMMMMMMM ";
static String s1809 = " MMMMMMMMM ";
static String s1810 = " MMMMMMMMM ";
static String s1811 = " MMMMMMMMM ";
static String s1812 = " MMMMMMMMM ";
static String s1813 = " MMMMMMM ";
static String s1814 = " MMMMM ";
static String s1815 = " ";
static String s1816 = " ";
static String s1817 = " ";
static String s1818 = " ";
static String s1819 = " ";
static String s1901 = " ";
static String s1902 = " ";
static String s1903 = " ";
static String s1904 = " ";
static String s1905 = " ";
static String s1906 = " ";
static String s1907 = " ";
static String s1908 = " MMMMM ";
static String s1909 = " MMMMM ";
static String s1910 = " MMMMM ";
static String s1911 = " MMMMM ";
static String s1912 = " MMMMM ";
static String s1913 = " ";
static String s1914 = " ";
static String s1915 = " ";
static String s1916 = " ";
static String s1917 = " ";
static String s1918 = " ";
static String s1919 = " ";
public void generateHull(World world, Random rand, int x, int y, int z) {
x -= 9;
z -= 9;
uniteStructure();
for(int i = 0; i < 19; i++) {
for(int j = 0; j < 19; j++) {
for(int k = 0; k < 19; k++) {
String c = fwatz[j][i].substring(k, k + 1);
Block b = Blocks.air;
if(c.equals("X"))
b = ModBlocks.fwatz_scaffold;
if(c.equals("H"))
b = ModBlocks.fwatz_hatch;
if(c.equals("S"))
b = ModBlocks.fwatz_cooler;
if(c.equals("T"))
b = ModBlocks.fwatz_tank;
if(c.equals("M"))
b = ModBlocks.fwatz_conductor;
if(c.equals("C"))
b = ModBlocks.fwatz_computer;
if(c.equals("#"))
b = ModBlocks.fwatz_core;
world.setBlock(x + i, y + j, z + k, b);
}
}
}
world.setBlock(x + 0, y + 1, z + 9, ModBlocks.fwatz_hatch, 4, 3);
world.setBlock(x + 18, y + 1, z + 9, ModBlocks.fwatz_hatch, 5, 3);
world.setBlock(x + 9, y + 1, z + 18, ModBlocks.fwatz_hatch, 3, 3);
world.setBlock(x + 9, y + 1, z + 0, ModBlocks.fwatz_hatch, 2, 3);
}
public static boolean checkHull(World world, int x, int y, int z) {
x -= 9;
y -= 12;
z -= 9;
uniteStructure();
boolean flag = true;
for(int i = 0; i < 19; i++) {
for(int j = 0; j < 19; j++) {
for(int k = 0; k < 19; k++) {
String c = fwatz[j][i].substring(k, k + 1);
Block b = Blocks.air;
boolean flag2 = false;
if(c.equals("X")) {
b = ModBlocks.fwatz_scaffold;
flag2 = true;
}
if(c.equals("H")) {
b = ModBlocks.fwatz_hatch;
flag2 = true;
}
if(c.equals("S")) {
b = ModBlocks.fwatz_cooler;
flag2 = true;
}
if(c.equals("T")) {
b = ModBlocks.fwatz_tank;
flag2 = true;
}
if(c.equals("M")) {
b = ModBlocks.fwatz_conductor;
flag2 = true;
}
if(c.equals("C")) {
b = ModBlocks.fwatz_computer;
flag2 = true;
}
if(c.equals("#")) {
b = ModBlocks.fwatz_core;
flag2 = true;
}
if(flag2)
if(world.getBlock(x + i, y + j, z + k) != b)
flag = false;
}
}
}
return flag;
}
public static void fillPlasma(World world, int x, int y, int z) {
x -= 9;
y -= 12;
z -= 9;
uniteStructure();
for(int i = 0; i < 19; i++) {
for(int j = 0; j < 19; j++) {
for(int k = 0; k < 19; k++) {
String c = fwatz[j][i].substring(k, k + 1);
if(c.equals("P"))
world.setBlock(x + i, y + j, z + k, ModBlocks.fwatz_plasma);
}
}
}
}
public static void emptyPlasma(World world, int x, int y, int z) {
x -= 9;
y -= 12;
z -= 9;
uniteStructure();
for(int i = 0; i < 19; i++) {
for(int j = 0; j < 19; j++) {
for(int k = 0; k < 19; k++) {
String c = fwatz[j][i].substring(k, k + 1);
if(c.equals("P") && world.getBlock(x + i, y + j, z + k) == ModBlocks.fwatz_plasma)
world.setBlock(x + i, y + j, z + k, Blocks.air);
}
}
}
}
public static boolean getPlasma(World world, int x, int y, int z) {
x -= 9;
y -= 12;
z -= 9;
uniteStructure();
boolean flag = false;
for(int i = 0; i < 19; i++) {
for(int j = 0; j < 19; j++) {
for(int k = 0; k < 19; k++) {
String c = fwatz[j][i].substring(k, k + 1);
if(c == "P" && world.getBlock(x + i, y + j, z + k) == ModBlocks.plasma)
flag = true;
}
}
}
return flag;
}
public static void uniteStructure() {
int x = 0;
fwatz[x][0] = s0101;
fwatz[x][1] = s0102;
fwatz[x][2] = s0103;
fwatz[x][3] = s0104;
fwatz[x][4] = s0105;
fwatz[x][5] = s0106;
fwatz[x][6] = s0107;
fwatz[x][7] = s0108;
fwatz[x][8] = s0109;
fwatz[x][9] = s0110;
fwatz[x][10] = s0111;
fwatz[x][11] = s0112;
fwatz[x][12] = s0113;
fwatz[x][13] = s0114;
fwatz[x][14] = s0115;
fwatz[x][15] = s0116;
fwatz[x][16] = s0117;
fwatz[x][17] = s0118;
fwatz[x][18] = s0119;
x++;
fwatz[x][0] = s0201;
fwatz[x][1] = s0202;
fwatz[x][2] = s0203;
fwatz[x][3] = s0204;
fwatz[x][4] = s0205;
fwatz[x][5] = s0206;
fwatz[x][6] = s0207;
fwatz[x][7] = s0208;
fwatz[x][8] = s0209;
fwatz[x][9] = s0210;
fwatz[x][10] = s0211;
fwatz[x][11] = s0212;
fwatz[x][12] = s0213;
fwatz[x][13] = s0214;
fwatz[x][14] = s0215;
fwatz[x][15] = s0216;
fwatz[x][16] = s0217;
fwatz[x][17] = s0218;
fwatz[x][18] = s0219;
x++;
fwatz[x][0] = s0301;
fwatz[x][1] = s0302;
fwatz[x][2] = s0303;
fwatz[x][3] = s0304;
fwatz[x][4] = s0305;
fwatz[x][5] = s0306;
fwatz[x][6] = s0307;
fwatz[x][7] = s0308;
fwatz[x][8] = s0309;
fwatz[x][9] = s0310;
fwatz[x][10] = s0311;
fwatz[x][11] = s0312;
fwatz[x][12] = s0313;
fwatz[x][13] = s0314;
fwatz[x][14] = s0315;
fwatz[x][15] = s0316;
fwatz[x][16] = s0317;
fwatz[x][17] = s0318;
fwatz[x][18] = s0319;
x++;
fwatz[x][0] = s0401;
fwatz[x][1] = s0402;
fwatz[x][2] = s0403;
fwatz[x][3] = s0404;
fwatz[x][4] = s0405;
fwatz[x][5] = s0406;
fwatz[x][6] = s0407;
fwatz[x][7] = s0408;
fwatz[x][8] = s0409;
fwatz[x][9] = s0410;
fwatz[x][10] = s0411;
fwatz[x][11] = s0412;
fwatz[x][12] = s0413;
fwatz[x][13] = s0414;
fwatz[x][14] = s0415;
fwatz[x][15] = s0416;
fwatz[x][16] = s0417;
fwatz[x][17] = s0418;
fwatz[x][18] = s0419;
x++;
fwatz[x][0] = s0501;
fwatz[x][1] = s0502;
fwatz[x][2] = s0503;
fwatz[x][3] = s0504;
fwatz[x][4] = s0505;
fwatz[x][5] = s0506;
fwatz[x][6] = s0507;
fwatz[x][7] = s0508;
fwatz[x][8] = s0509;
fwatz[x][9] = s0510;
fwatz[x][10] = s0511;
fwatz[x][11] = s0512;
fwatz[x][12] = s0513;
fwatz[x][13] = s0514;
fwatz[x][14] = s0515;
fwatz[x][15] = s0516;
fwatz[x][16] = s0517;
fwatz[x][17] = s0518;
fwatz[x][18] = s0519;
x++;
fwatz[x][0] = s0601;
fwatz[x][1] = s0602;
fwatz[x][2] = s0603;
fwatz[x][3] = s0604;
fwatz[x][4] = s0605;
fwatz[x][5] = s0606;
fwatz[x][6] = s0607;
fwatz[x][7] = s0608;
fwatz[x][8] = s0609;
fwatz[x][9] = s0610;
fwatz[x][10] = s0611;
fwatz[x][11] = s0612;
fwatz[x][12] = s0613;
fwatz[x][13] = s0614;
fwatz[x][14] = s0615;
fwatz[x][15] = s0616;
fwatz[x][16] = s0617;
fwatz[x][17] = s0618;
fwatz[x][18] = s0619;
x++;
fwatz[x][0] = s0701;
fwatz[x][1] = s0702;
fwatz[x][2] = s0703;
fwatz[x][3] = s0704;
fwatz[x][4] = s0705;
fwatz[x][5] = s0706;
fwatz[x][6] = s0707;
fwatz[x][7] = s0708;
fwatz[x][8] = s0709;
fwatz[x][9] = s0710;
fwatz[x][10] = s0711;
fwatz[x][11] = s0712;
fwatz[x][12] = s0713;
fwatz[x][13] = s0714;
fwatz[x][14] = s0715;
fwatz[x][15] = s0716;
fwatz[x][16] = s0717;
fwatz[x][17] = s0718;
fwatz[x][18] = s0719;
x++;
fwatz[x][0] = s0801;
fwatz[x][1] = s0802;
fwatz[x][2] = s0803;
fwatz[x][3] = s0804;
fwatz[x][4] = s0805;
fwatz[x][5] = s0806;
fwatz[x][6] = s0807;
fwatz[x][7] = s0808;
fwatz[x][8] = s0809;
fwatz[x][9] = s0810;
fwatz[x][10] = s0811;
fwatz[x][11] = s0812;
fwatz[x][12] = s0813;
fwatz[x][13] = s0814;
fwatz[x][14] = s0815;
fwatz[x][15] = s0816;
fwatz[x][16] = s0817;
fwatz[x][17] = s0818;
fwatz[x][18] = s0819;
x++;
fwatz[x][0] = s0901;
fwatz[x][1] = s0902;
fwatz[x][2] = s0903;
fwatz[x][3] = s0904;
fwatz[x][4] = s0905;
fwatz[x][5] = s0906;
fwatz[x][6] = s0907;
fwatz[x][7] = s0908;
fwatz[x][8] = s0909;
fwatz[x][9] = s0910;
fwatz[x][10] = s0911;
fwatz[x][11] = s0912;
fwatz[x][12] = s0913;
fwatz[x][13] = s0914;
fwatz[x][14] = s0915;
fwatz[x][15] = s0916;
fwatz[x][16] = s0917;
fwatz[x][17] = s0918;
fwatz[x][18] = s0919;
x++;
fwatz[x][0] = s1001;
fwatz[x][1] = s1002;
fwatz[x][2] = s1003;
fwatz[x][3] = s1004;
fwatz[x][4] = s1005;
fwatz[x][5] = s1006;
fwatz[x][6] = s1007;
fwatz[x][7] = s1008;
fwatz[x][8] = s1009;
fwatz[x][9] = s1010;
fwatz[x][10] = s1011;
fwatz[x][11] = s1012;
fwatz[x][12] = s1013;
fwatz[x][13] = s1014;
fwatz[x][14] = s1015;
fwatz[x][15] = s1016;
fwatz[x][16] = s1017;
fwatz[x][17] = s1018;
fwatz[x][18] = s1019;
x++;
fwatz[x][0] = s1101;
fwatz[x][1] = s1102;
fwatz[x][2] = s1103;
fwatz[x][3] = s1104;
fwatz[x][4] = s1105;
fwatz[x][5] = s1106;
fwatz[x][6] = s1107;
fwatz[x][7] = s1108;
fwatz[x][8] = s1109;
fwatz[x][9] = s1110;
fwatz[x][10] = s1111;
fwatz[x][11] = s1112;
fwatz[x][12] = s1113;
fwatz[x][13] = s1114;
fwatz[x][14] = s1115;
fwatz[x][15] = s1116;
fwatz[x][16] = s1117;
fwatz[x][17] = s1118;
fwatz[x][18] = s1119;
x++;
fwatz[x][0] = s1201;
fwatz[x][1] = s1202;
fwatz[x][2] = s1203;
fwatz[x][3] = s1204;
fwatz[x][4] = s1205;
fwatz[x][5] = s1206;
fwatz[x][6] = s1207;
fwatz[x][7] = s1208;
fwatz[x][8] = s1209;
fwatz[x][9] = s1210;
fwatz[x][10] = s1211;
fwatz[x][11] = s1212;
fwatz[x][12] = s1213;
fwatz[x][13] = s1214;
fwatz[x][14] = s1215;
fwatz[x][15] = s1216;
fwatz[x][16] = s1217;
fwatz[x][17] = s1218;
fwatz[x][18] = s1219;
x++;
fwatz[x][0] = s1301;
fwatz[x][1] = s1302;
fwatz[x][2] = s1303;
fwatz[x][3] = s1304;
fwatz[x][4] = s1305;
fwatz[x][5] = s1306;
fwatz[x][6] = s1307;
fwatz[x][7] = s1308;
fwatz[x][8] = s1309;
fwatz[x][9] = s1310;
fwatz[x][10] = s1311;
fwatz[x][11] = s1312;
fwatz[x][12] = s1313;
fwatz[x][13] = s1314;
fwatz[x][14] = s1315;
fwatz[x][15] = s1316;
fwatz[x][16] = s1317;
fwatz[x][17] = s1318;
fwatz[x][18] = s1319;
x++;
fwatz[x][0] = s1401;
fwatz[x][1] = s1402;
fwatz[x][2] = s1403;
fwatz[x][3] = s1404;
fwatz[x][4] = s1405;
fwatz[x][5] = s1406;
fwatz[x][6] = s1407;
fwatz[x][7] = s1408;
fwatz[x][8] = s1409;
fwatz[x][9] = s1410;
fwatz[x][10] = s1411;
fwatz[x][11] = s1412;
fwatz[x][12] = s1413;
fwatz[x][13] = s1414;
fwatz[x][14] = s1415;
fwatz[x][15] = s1416;
fwatz[x][16] = s1417;
fwatz[x][17] = s1418;
fwatz[x][18] = s1419;
x++;
fwatz[x][0] = s1501;
fwatz[x][1] = s1502;
fwatz[x][2] = s1503;
fwatz[x][3] = s1504;
fwatz[x][4] = s1505;
fwatz[x][5] = s1506;
fwatz[x][6] = s1507;
fwatz[x][7] = s1508;
fwatz[x][8] = s1509;
fwatz[x][9] = s1510;
fwatz[x][10] = s1511;
fwatz[x][11] = s1512;
fwatz[x][12] = s1513;
fwatz[x][13] = s1514;
fwatz[x][14] = s1515;
fwatz[x][15] = s1516;
fwatz[x][16] = s1517;
fwatz[x][17] = s1518;
fwatz[x][18] = s1519;
x++;
fwatz[x][0] = s1601;
fwatz[x][1] = s1602;
fwatz[x][2] = s1603;
fwatz[x][3] = s1604;
fwatz[x][4] = s1605;
fwatz[x][5] = s1606;
fwatz[x][6] = s1607;
fwatz[x][7] = s1608;
fwatz[x][8] = s1609;
fwatz[x][9] = s1610;
fwatz[x][10] = s1611;
fwatz[x][11] = s1612;
fwatz[x][12] = s1613;
fwatz[x][13] = s1614;
fwatz[x][14] = s1615;
fwatz[x][15] = s1616;
fwatz[x][16] = s1617;
fwatz[x][17] = s1618;
fwatz[x][18] = s1619;
x++;
fwatz[x][0] = s1701;
fwatz[x][1] = s1702;
fwatz[x][2] = s1703;
fwatz[x][3] = s1704;
fwatz[x][4] = s1705;
fwatz[x][5] = s1706;
fwatz[x][6] = s1707;
fwatz[x][7] = s1708;
fwatz[x][8] = s1709;
fwatz[x][9] = s1710;
fwatz[x][10] = s1711;
fwatz[x][11] = s1712;
fwatz[x][12] = s1713;
fwatz[x][13] = s1714;
fwatz[x][14] = s1715;
fwatz[x][15] = s1716;
fwatz[x][16] = s1717;
fwatz[x][17] = s1718;
fwatz[x][18] = s1719;
x++;
fwatz[x][0] = s1801;
fwatz[x][1] = s1802;
fwatz[x][2] = s1803;
fwatz[x][3] = s1804;
fwatz[x][4] = s1805;
fwatz[x][5] = s1806;
fwatz[x][6] = s1807;
fwatz[x][7] = s1808;
fwatz[x][8] = s1809;
fwatz[x][9] = s1810;
fwatz[x][10] = s1811;
fwatz[x][11] = s1812;
fwatz[x][12] = s1813;
fwatz[x][13] = s1814;
fwatz[x][14] = s1815;
fwatz[x][15] = s1816;
fwatz[x][16] = s1817;
fwatz[x][17] = s1818;
fwatz[x][18] = s1819;
x++;
fwatz[x][0] = s1901;
fwatz[x][1] = s1902;
fwatz[x][2] = s1903;
fwatz[x][3] = s1904;
fwatz[x][4] = s1905;
fwatz[x][5] = s1906;
fwatz[x][6] = s1907;
fwatz[x][7] = s1908;
fwatz[x][8] = s1909;
fwatz[x][9] = s1910;
fwatz[x][10] = s1911;
fwatz[x][11] = s1912;
fwatz[x][12] = s1913;
fwatz[x][13] = s1914;
fwatz[x][14] = s1915;
fwatz[x][15] = s1916;
fwatz[x][16] = s1917;
fwatz[x][17] = s1918;
fwatz[x][18] = s1919;
}
}