Rewrite base blocks to be less weird

Added base ItemBlock classes for each base type (to be used later)
This commit is contained in:
Nicholas Ignoffo 2016-10-15 09:21:30 -07:00
parent ea43fbce7d
commit 3e0f3f5aa1
14 changed files with 265 additions and 209 deletions

View file

@ -0,0 +1,33 @@
package WayofTime.bloodmagic.item.block.base;
import WayofTime.bloodmagic.block.base.BlockEnum;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
import net.minecraft.util.IStringSerializable;
import net.minecraft.util.math.MathHelper;
public class ItemBlockEnum<E extends Enum<E> & IStringSerializable> extends ItemBlock {
public ItemBlockEnum(BlockEnum<E> block) {
super(block);
if (block.getTypes().length > 1)
setHasSubtypes(true);
}
@SuppressWarnings("unchecked")
@Override
public BlockEnum<E> getBlock() {
return (BlockEnum<E>) super.getBlock();
}
@Override
public String getUnlocalizedName(ItemStack stack) {
return getBlock().getUnlocalizedName() + "." + getBlock().getTypes()[MathHelper.clamp_int(stack.getItemDamage(), 0, 15)].getName();
}
@Override
public int getMetadata(int damage) {
return damage;
}
}

View file

@ -0,0 +1,31 @@
package WayofTime.bloodmagic.item.block.base;
import WayofTime.bloodmagic.block.base.BlockInteger;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
public class ItemBlockInteger extends ItemBlock {
public ItemBlockInteger(BlockInteger block) {
super(block);
if (block.getMaxMeta() > 1)
setHasSubtypes(true);
}
@SuppressWarnings("unchecked")
@Override
public BlockInteger getBlock() {
return (BlockInteger) super.getBlock();
}
@Override
public String getUnlocalizedName(ItemStack stack) {
return getBlock().getUnlocalizedName() + "." + stack.getItemDamage();
}
@Override
public int getMetadata(int damage) {
return damage;
}
}

View file

@ -0,0 +1,32 @@
package WayofTime.bloodmagic.item.block.base;
import WayofTime.bloodmagic.block.base.BlockString;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
import net.minecraft.util.math.MathHelper;
public class ItemBlockString extends ItemBlock {
public ItemBlockString(BlockString block) {
super(block);
if (block.getTypes().length> 1)
setHasSubtypes(true);
}
@SuppressWarnings("unchecked")
@Override
public BlockString getBlock() {
return (BlockString) super.getBlock();
}
@Override
public String getUnlocalizedName(ItemStack stack) {
return getBlock().getUnlocalizedName() + "." + getBlock().getTypes()[MathHelper.clamp_int(stack.getItemDamage(), 0, 15)];
}
@Override
public int getMetadata(int damage) {
return damage;
}
}