aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/common/blocks
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/common/blocks')
-rw-r--r--src/main/java/common/blocks/Block_IchorJar.java59
-rw-r--r--src/main/java/common/blocks/Block_ThaumiumReinforcedJar.java48
2 files changed, 89 insertions, 18 deletions
diff --git a/src/main/java/common/blocks/Block_IchorJar.java b/src/main/java/common/blocks/Block_IchorJar.java
index b5660f3d82..a575398dfc 100644
--- a/src/main/java/common/blocks/Block_IchorJar.java
+++ b/src/main/java/common/blocks/Block_IchorJar.java
@@ -1,13 +1,23 @@
package common.blocks;
+import java.util.ArrayList;
+import java.util.List;
+
import common.tileentities.TE_IchorJar;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import items.Item_ThaumiumReinforcedJarFilled;
import net.minecraft.client.renderer.texture.IIconRegister;
+import net.minecraft.creativetab.CreativeTabs;
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemStack;
+import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;
+import thaumcraft.api.aspects.AspectList;
import thaumcraft.common.blocks.BlockJar;
+import thaumcraft.common.tiles.TileJarFillableVoid;
public class Block_IchorJar extends BlockJar {
@@ -39,8 +49,55 @@ public class Block_IchorJar extends BlockJar {
}
@Override
+ @SideOnly(Side.CLIENT)
+ @SuppressWarnings({ "rawtypes", "unchecked" })
+ public void getSubBlocks(Item par1, CreativeTabs par2CreativeTabs, List par3List) {
+ par3List.add(new ItemStack(par1, 1, 0)); // Normal jar
+ par3List.add(new ItemStack(par1, 1, 3)); // Void jar
+ }
+
+ @Override
public TileEntity createTileEntity(World world, int meta) {
- return new TE_IchorJar();
+ if(meta == 0) {
+ return new TE_IchorJar();
+ } else if (meta == 3) {
+ return new TileJarFillableVoid();
+ } else {
+ return null;
+ }
}
+ @Override
+ public ArrayList<ItemStack> getDrops(World world, int x, int y, int z, int meta, int fortune) {
+ final ArrayList<ItemStack> drops = new ArrayList<>();
+
+ ItemStack drop;
+
+ final TileEntity te = world.getTileEntity(x, y, z);
+ if(te != null && te instanceof TE_IchorJar) {
+ drop = new ItemStack(Item_ThaumiumReinforcedJarFilled.getInstance());
+ // Empty and no label
+ if(((TE_IchorJar) te).amount <= 0 && ((TE_IchorJar) te).aspectFilter == null) {
+ drop = new ItemStack(this);
+ }
+ // If is void jar, set meta
+ if(te instanceof TileJarFillableVoid) {
+ drop.setItemDamage(3);
+ }
+ // Non empty, generate filled jar item with contents
+ if(((TE_IchorJar) te).amount > 0) {
+ ((Item_ThaumiumReinforcedJarFilled) drop.getItem()).setAspects(drop,
+ (new AspectList()).add(((TE_IchorJar) te).aspect, ((TE_IchorJar) te).amount));
+ }
+ // has label
+ if(((TE_IchorJar) te).aspectFilter != null) {
+ if(!drop.hasTagCompound()) {
+ drop.setTagCompound(new NBTTagCompound());
+ }
+ drop.stackTagCompound.setString("AspectFilter", ((TE_IchorJar) te).aspectFilter.getTag());
+ }
+ drops.add(drop);
+ }
+ return drops;
+ }
}
diff --git a/src/main/java/common/blocks/Block_ThaumiumReinforcedJar.java b/src/main/java/common/blocks/Block_ThaumiumReinforcedJar.java
index 246e3c9b05..d4777a8cfe 100644
--- a/src/main/java/common/blocks/Block_ThaumiumReinforcedJar.java
+++ b/src/main/java/common/blocks/Block_ThaumiumReinforcedJar.java
@@ -1,6 +1,7 @@
package common.blocks;
import java.util.ArrayList;
+import java.util.List;
import common.tileentities.TE_ThaumiumReinforcedJar;
import cpw.mods.fml.common.registry.GameRegistry;
@@ -8,14 +9,14 @@ import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import items.Item_ThaumiumReinforcedJarFilled;
import net.minecraft.client.renderer.texture.IIconRegister;
+import net.minecraft.creativetab.CreativeTabs;
+import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;
import thaumcraft.api.aspects.AspectList;
import thaumcraft.common.blocks.BlockJar;
-import thaumcraft.common.blocks.ItemJarFilled;
-import thaumcraft.common.tiles.TileJarFillable;
import thaumcraft.common.tiles.TileJarFillableVoid;
public class Block_ThaumiumReinforcedJar extends BlockJar {
@@ -40,30 +41,43 @@ public class Block_ThaumiumReinforcedJar extends BlockJar {
@SideOnly(Side.CLIENT)
public void registerBlockIcons(IIconRegister ir) {
super.iconLiquid = ir.registerIcon("thaumcraft:animatedglow");
- super.iconJarSide = ir.registerIcon("kekztech:jar_side");
- super.iconJarTop = ir.registerIcon("kekztech:jar_top");
- super.iconJarTopVoid = ir.registerIcon("kekztech:jar_top_void");
- super.iconJarSideVoid = ir.registerIcon("kekztech:jar_side_void");
- super.iconJarBottom = ir.registerIcon("kekztech:jar_bottom");
+ super.iconJarSide = ir.registerIcon("kekztech:thaumreinforced_jar_side");
+ super.iconJarTop = ir.registerIcon("kekztech:thaumreinforced_jar_top");
+ super.iconJarTopVoid = ir.registerIcon("kekztech:thaumreinforced_jar_top_void");
+ super.iconJarSideVoid = ir.registerIcon("kekztech:thaumreinforced_jar_side_void");
+ super.iconJarBottom = ir.registerIcon("kekztech:thaumreinforced_jar_bottom");
+ }
+
+ @Override
+ @SideOnly(Side.CLIENT)
+ @SuppressWarnings({ "rawtypes", "unchecked" })
+ public void getSubBlocks(Item par1, CreativeTabs par2CreativeTabs, List par3List) {
+ par3List.add(new ItemStack(par1, 1, 0)); // Normal jar
+ par3List.add(new ItemStack(par1, 1, 3)); // Void jar
}
@Override
public TileEntity createTileEntity(World world, int meta) {
- return new TE_ThaumiumReinforcedJar();
+ if(meta == 0) {
+ return new TE_ThaumiumReinforcedJar();
+ } else if (meta == 3) {
+ return new TileJarFillableVoid();
+ } else {
+ return null;
+ }
}
@Override
public ArrayList<ItemStack> getDrops(World world, int x, int y, int z, int meta, int fortune) {
final ArrayList<ItemStack> drops = new ArrayList<>();
- TileEntity te;
ItemStack drop;
- te = world.getTileEntity(x, y, z);
- if(te != null && te instanceof TileJarFillable) {
+ final TileEntity te = world.getTileEntity(x, y, z);
+ if(te != null && te instanceof TE_ThaumiumReinforcedJar) {
drop = new ItemStack(Item_ThaumiumReinforcedJarFilled.getInstance());
// Empty and no label
- if(((TileJarFillable) te).amount <= 0 && ((TileJarFillable) te).aspectFilter == null) {
+ if(((TE_ThaumiumReinforcedJar) te).amount <= 0 && ((TE_ThaumiumReinforcedJar) te).aspectFilter == null) {
drop = new ItemStack(this);
}
// If is void jar, set meta
@@ -71,16 +85,16 @@ public class Block_ThaumiumReinforcedJar extends BlockJar {
drop.setItemDamage(3);
}
// Non empty, generate filled jar item with contents
- if(((TileJarFillable) te).amount > 0) {
- ((ItemJarFilled) drop.getItem()).setAspects(drop,
- (new AspectList()).add(((TileJarFillable) te).aspect, ((TileJarFillable) te).amount));
+ if(((TE_ThaumiumReinforcedJar) te).amount > 0) {
+ ((Item_ThaumiumReinforcedJarFilled) drop.getItem()).setAspects(drop,
+ (new AspectList()).add(((TE_ThaumiumReinforcedJar) te).aspect, ((TE_ThaumiumReinforcedJar) te).amount));
}
// has label
- if(((TileJarFillable) te).aspectFilter != null) {
+ if(((TE_ThaumiumReinforcedJar) te).aspectFilter != null) {
if(!drop.hasTagCompound()) {
drop.setTagCompound(new NBTTagCompound());
}
- drop.stackTagCompound.setString("AspectFilter", ((TileJarFillable) te).aspectFilter.getTag());
+ drop.stackTagCompound.setString("AspectFilter", ((TE_ThaumiumReinforcedJar) te).aspectFilter.getTag());
}
drops.add(drop);
}