mirror of
https://github.com/GTNewHorizons/DummyCore.git
synced 2026-10-26 14:24:24 +00:00
1.2 fixes and changes
MultiBlocks and MultiItems fixes
This commit is contained in:
1 parent
321814f613
commit
1e2fb7a529
7 files changed
+147
-42
No files matched your search
@@ -24,6 +24,8 @@ public class ItemMultiBlock extends ItemBlock{
|
||||
|
||||
public ItemMultiBlock(int par1) {
|
||||
super(par1);
|
||||
this.setMaxDamage(0);
|
||||
this.setHasSubtypes(true);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -31,7 +33,7 @@ public class ItemMultiBlock extends ItemBlock{
|
||||
{
|
||||
for(int i = 0; i < 1024; ++i)
|
||||
{
|
||||
if(MultiBlock.handler[i] != null)
|
||||
if(MultiBlock.handler[i] != null && i == par7ItemStack.getItemDamage())
|
||||
return MultiBlock.handler[i].canPlaceItemBlockOnSide(par1World, par2, par3, par4, par5, par6EntityPlayer, par7ItemStack);
|
||||
}
|
||||
return super.canPlaceItemBlockOnSide(par1World, par2, par3, par4, par5, par6EntityPlayer, par7ItemStack);
|
||||
@@ -94,7 +96,7 @@ public class ItemMultiBlock extends ItemBlock{
|
||||
{
|
||||
for(int i = 0; i < 1024; ++i)
|
||||
{
|
||||
if(MultiBlock.handler[i] != null)
|
||||
if(MultiBlock.handler[i] != null && i == par1ItemStack.getItemDamage())
|
||||
MultiBlock.handler[i].onItemBlockUpdate(par1ItemStack, par2World, par3Entity, par4, par5);
|
||||
}
|
||||
}
|
||||
@@ -102,10 +104,13 @@ public class ItemMultiBlock extends ItemBlock{
|
||||
@Override
|
||||
public void addInformation(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer, List par3List, boolean par4)
|
||||
{
|
||||
|
||||
for(int i = 0; i < 1024; ++i)
|
||||
{
|
||||
if(MultiBlock.handler[i] != null)
|
||||
MultiBlock.handler[i].addInformation(par1ItemStack, par2EntityPlayer, par3List, par4);
|
||||
if(MultiBlock.handler[i] != null && par1ItemStack.getItemDamage() == i)
|
||||
{
|
||||
par3List = MultiBlock.handler[i].addInformation(par1ItemStack, par2EntityPlayer, par3List, par4);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -114,10 +119,16 @@ public class ItemMultiBlock extends ItemBlock{
|
||||
{
|
||||
for(int i = 0; i < 1024; ++i)
|
||||
{
|
||||
if(MultiBlock.handler[i] != null)
|
||||
if(MultiBlock.handler[i] != null && par1ItemStack.getItemDamage() == i)
|
||||
return MultiBlock.handler[i].getRarity(par1ItemStack);
|
||||
}
|
||||
return EnumRarity.common;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMetadata(int par1)
|
||||
{
|
||||
return par1;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -29,14 +29,15 @@ public class MultiBlock extends Block{
|
||||
protected static List<String> blockNames = new ArrayList();
|
||||
protected static List<String> blockNamesUnlocalisedList = new ArrayList();
|
||||
protected static Hashtable<String,Integer> blockNamesUnlocalised = new Hashtable();
|
||||
protected static Hashtable<IDummyMultiBlock,Integer> mbHandlers = new Hashtable();
|
||||
protected static List<String> blockTextures = new ArrayList();
|
||||
protected static int id = -1;
|
||||
public static int blockuid;
|
||||
protected static Icon[] icon;
|
||||
public static Icon[] icon;
|
||||
protected static IDummyMultiBlock[] handler = new IDummyMultiBlock[1024];
|
||||
public static int blocks;
|
||||
public MultiBlock(int par1) {
|
||||
super(par1, Material.circuits);
|
||||
super(par1, Material.web);
|
||||
blockuid = par1;
|
||||
}
|
||||
|
||||
@@ -125,42 +126,50 @@ public class MultiBlock extends Block{
|
||||
{
|
||||
registerMultiBlock(unlocalisedName,inGameName,texturePath);
|
||||
handler[getMetadataByName(unlocalisedName)] = multiblockHandler;
|
||||
mbHandlers.put(multiblockHandler, getMetadataByName(unlocalisedName));
|
||||
}
|
||||
|
||||
@Override
|
||||
public float getBlockHardness(World par1World, int par2, int par3, int par4)
|
||||
{
|
||||
int meta = par1World.getBlockMetadata(par2, par3, par4);
|
||||
for(int i = 0; i < 1024; ++i)
|
||||
{
|
||||
if(handler[i] != null)
|
||||
if(handler[i] != null && i == meta)
|
||||
{
|
||||
return handler[i].getBlockHardness(MiscUtils.getBlock(par1World, par2, par3, par4),par1World, par2, par3, par4);
|
||||
}
|
||||
}
|
||||
return this.blockHardness;
|
||||
}
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
@Override
|
||||
public float getBlockBrightness(IBlockAccess par1IBlockAccess, int par2, int par3, int par4)
|
||||
public int getLightValue(IBlockAccess par1IBlockAccess, int par2, int par3, int par4)
|
||||
{
|
||||
int meta = par1IBlockAccess.getBlockMetadata(par2, par3, par4);
|
||||
for(int i = 0; i < 1024; ++i)
|
||||
{
|
||||
if(handler[i] != null)
|
||||
return handler[i].getBlockBrightness(MiscUtils.getBlock(par1IBlockAccess, par2, par3, par4),par1IBlockAccess, par2, par3, par4);
|
||||
if(handler[i] != null && i == meta)
|
||||
{
|
||||
return (int)( handler[i].getBlockBrightness(MiscUtils.getBlock(par1IBlockAccess, par2, par3, par4),par1IBlockAccess, par2, par3, par4)*15);
|
||||
}
|
||||
}
|
||||
return super.getBlockBrightness(par1IBlockAccess, par2, par3, par4);
|
||||
return super.getLightValue(par1IBlockAccess, par2, par3, par4);
|
||||
}
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
/*@SideOnly(Side.CLIENT)
|
||||
@Override
|
||||
public Icon getBlockTexture(IBlockAccess par1IBlockAccess, int par2, int par3, int par4, int par5)
|
||||
{
|
||||
int meta = par1IBlockAccess.getBlockMetadata(par2, par3, par4);
|
||||
for(int i = 0; i < 1024; ++i)
|
||||
{
|
||||
if(handler[i] != null)
|
||||
if(handler[i] != null && i == meta)
|
||||
return handler[i].getBlockTexture(MiscUtils.getBlock(par1IBlockAccess, par2, par3, par4), par1IBlockAccess, par2, par3, par4, par5);
|
||||
}
|
||||
return icon[par1IBlockAccess.getBlockMetadata(par2,par3,par4)];
|
||||
}
|
||||
}*/
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
@Override
|
||||
@@ -168,7 +177,7 @@ public class MultiBlock extends Block{
|
||||
{
|
||||
for(int i = 0; i < 1024; ++i)
|
||||
{
|
||||
if(handler[i] != null)
|
||||
if(handler[i] != null && i == par2)
|
||||
return handler[i].getIcon(par1, par2);
|
||||
}
|
||||
return this.icon[par2];
|
||||
@@ -178,9 +187,10 @@ public class MultiBlock extends Block{
|
||||
@Override
|
||||
public AxisAlignedBB getSelectedBoundingBoxFromPool(World par1World, int par2, int par3, int par4)
|
||||
{
|
||||
int meta = par1World.getBlockMetadata(par2, par3, par4);
|
||||
for(int i = 0; i < 1024; ++i)
|
||||
{
|
||||
if(handler[i] != null)
|
||||
if(handler[i] != null && i == meta)
|
||||
return handler[i].getSelectedBoundingBoxFromPool(MiscUtils.getBlock(par1World, par2, par3, par4), par1World, par2, par3, par4);
|
||||
}
|
||||
return super.getSelectedBoundingBoxFromPool(par1World, par2, par3, par4);
|
||||
@@ -194,9 +204,10 @@ public class MultiBlock extends Block{
|
||||
@Override
|
||||
public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, int par2, int par3, int par4)
|
||||
{
|
||||
int meta = par1World.getBlockMetadata(par2, par3, par4);
|
||||
for(int i = 0; i < 1024; ++i)
|
||||
{
|
||||
if(handler[i] != null)
|
||||
if(handler[i] != null && i == meta)
|
||||
return handler[i].getCollisionBoundingBoxFromPool(MiscUtils.getBlock(par1World, par2, par3, par4), par1World, par2, par3, par4);
|
||||
}
|
||||
return super.getCollisionBoundingBoxFromPool(par1World, par2, par3, par4);
|
||||
@@ -206,9 +217,10 @@ public class MultiBlock extends Block{
|
||||
@Override
|
||||
public void randomDisplayTick(World par1World, int par2, int par3, int par4, Random par5Random)
|
||||
{
|
||||
int meta = par1World.getBlockMetadata(par2, par3, par4);
|
||||
for(int i = 0; i < 1024; ++i)
|
||||
{
|
||||
if(handler[i] != null)
|
||||
if(handler[i] != null && i == meta)
|
||||
handler[i].randomDisplayTick(MiscUtils.getBlock(par1World, par2, par3, par4), par1World, par2, par3, par4, par5Random);
|
||||
}
|
||||
super.randomDisplayTick(par1World, par2, par3, par4, par5Random);
|
||||
@@ -217,9 +229,10 @@ public class MultiBlock extends Block{
|
||||
@Override
|
||||
public void onBlockDestroyedByPlayer(World par1World, int par2, int par3, int par4, int par5)
|
||||
{
|
||||
int meta = par1World.getBlockMetadata(par2, par3, par4);
|
||||
for(int i = 0; i < 1024; ++i)
|
||||
{
|
||||
if(handler[i] != null)
|
||||
if(handler[i] != null && i == meta)
|
||||
handler[i].onBlockDestroyedByPlayer(MiscUtils.getBlock(par1World, par2, par3, par4), par1World, par2, par3, par4, par5);
|
||||
}
|
||||
super.onBlockDestroyedByPlayer(par1World, par2, par3, par4, par5);
|
||||
@@ -228,9 +241,10 @@ public class MultiBlock extends Block{
|
||||
@Override
|
||||
public void onNeighborBlockChange(World par1World, int par2, int par3, int par4, int par5)
|
||||
{
|
||||
int meta = par1World.getBlockMetadata(par2, par3, par4);
|
||||
for(int i = 0; i < 1024; ++i)
|
||||
{
|
||||
if(handler[i] != null)
|
||||
if(handler[i] != null && i == meta)
|
||||
handler[i].onNeighborBlockChange(MiscUtils.getBlock(par1World, par2, par3, par4), par1World, par2, par3, par4, par5);
|
||||
}
|
||||
super.onNeighborBlockChange(par1World, par2, par3, par4, par5);
|
||||
@@ -239,9 +253,10 @@ public class MultiBlock extends Block{
|
||||
@Override
|
||||
public void onBlockAdded(World par1World, int par2, int par3, int par4)
|
||||
{
|
||||
int meta = par1World.getBlockMetadata(par2, par3, par4);
|
||||
for(int i = 0; i < 1024; ++i)
|
||||
{
|
||||
if(handler[i] != null)
|
||||
if(handler[i] != null && i == meta)
|
||||
handler[i].onBlockAdded(MiscUtils.getBlock(par1World, par2, par3, par4), par1World, par2, par3, par4);
|
||||
}
|
||||
super.onBlockAdded(par1World, par2, par3, par4);
|
||||
@@ -250,9 +265,10 @@ public class MultiBlock extends Block{
|
||||
@Override
|
||||
public boolean onBlockActivated(World par1World, int par2, int par3, int par4, EntityPlayer par5EntityPlayer, int par6, float par7, float par8, float par9)
|
||||
{
|
||||
int meta = par1World.getBlockMetadata(par2, par3, par4);
|
||||
for(int i = 0; i < 1024; ++i)
|
||||
{
|
||||
if(handler[i] != null)
|
||||
if(handler[i] != null && i == meta)
|
||||
return handler[i].onBlockActivated(MiscUtils.getBlock(par1World, par2, par3, par4), par1World, par2, par3, par4, par5EntityPlayer, par6, par7, par8, par9);
|
||||
}
|
||||
return super.onBlockActivated(par1World, par2, par3, par4, par5EntityPlayer, par6, par7, par8, par9);
|
||||
@@ -261,14 +277,27 @@ public class MultiBlock extends Block{
|
||||
@Override
|
||||
public void setBlockBoundsBasedOnState(IBlockAccess par1IBlockAccess, int par2, int par3, int par4)
|
||||
{
|
||||
int meta = par1IBlockAccess.getBlockMetadata(par2, par3, par4);
|
||||
for(int i = 0; i < 1024; ++i)
|
||||
{
|
||||
if(handler[i] != null)
|
||||
if(handler[i] != null && i == meta)
|
||||
handler[i].setBlockBoundsBasedOnState(MiscUtils.getBlock(par1IBlockAccess, par2, par3, par4), par1IBlockAccess, par2, par3, par4);
|
||||
}
|
||||
super.setBlockBoundsBasedOnState(par1IBlockAccess, par2, par3, par4);
|
||||
}
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
@Override
|
||||
public int getRenderColor(int par1)
|
||||
{
|
||||
for(int i = 0; i < 1024; ++i)
|
||||
{
|
||||
if(handler[i] != null && i == par1)
|
||||
return handler[i].getRenderColor(par1);
|
||||
}
|
||||
return 16777215;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int damageDropped(int par1)
|
||||
{
|
||||
|
||||
@@ -6,6 +6,8 @@ import java.util.List;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import DummyCore.Core.CoreInitialiser;
|
||||
import DummyCore.Utils.IDummyMultiBlock;
|
||||
import DummyCore.Utils.IDummyMultiItem;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.client.renderer.texture.IconRegister;
|
||||
@@ -29,6 +31,7 @@ public class MultiItem extends Item{
|
||||
private static List<String> itemNames = new ArrayList();
|
||||
private static List<String> itemNamesUnlocalisedList = new ArrayList();
|
||||
private static Hashtable<String,Integer> itemNamesUnlocalised = new Hashtable();
|
||||
protected static Hashtable<IDummyMultiItem,Integer> miHandlers = new Hashtable();
|
||||
private static List<String> itemTextures = new ArrayList();
|
||||
private static int id = -1;
|
||||
public static int itemuid;
|
||||
@@ -99,7 +102,7 @@ public class MultiItem extends Item{
|
||||
*/
|
||||
public static ItemStack getStackByName(String unlocalisedName, int size)
|
||||
{
|
||||
ItemStack s = new ItemStack(itemuid,getMetadataByName(unlocalisedName),size);
|
||||
ItemStack s = new ItemStack(CoreInitialiser.mItem,getMetadataByName(unlocalisedName),size);
|
||||
return s;
|
||||
}
|
||||
|
||||
@@ -140,18 +143,19 @@ public class MultiItem extends Item{
|
||||
{
|
||||
registerMultiItem(unlocalisedName,inGameName,texturePath);
|
||||
handler[getMetadataByName(unlocalisedName)] = multiItemHandler;
|
||||
miHandlers.put(multiItemHandler, getMetadataByName(unlocalisedName));
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onItemUse(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer, World par3World, int par4, int par5, int par6, int par7, float par8, float par9, float par10)
|
||||
{
|
||||
int meta = par1ItemStack.getItemDamage();
|
||||
for(int i = 0; i < 1024; ++i)
|
||||
{
|
||||
if(handler[i] != null)
|
||||
if(handler[i] != null && i == meta)
|
||||
{
|
||||
boolean result = handler[i].onItemUse(par1ItemStack, par2EntityPlayer, par3World, par4, par5, par6, par7, par8, par9, par10);
|
||||
if(result = true)
|
||||
return result;
|
||||
return result;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
@@ -160,12 +164,12 @@ public class MultiItem extends Item{
|
||||
@Override
|
||||
public ItemStack onItemRightClick(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer)
|
||||
{
|
||||
int meta = par1ItemStack.getItemDamage();
|
||||
for(int i = 0; i < 1024; ++i)
|
||||
{
|
||||
if(handler[i] != null)
|
||||
if(handler[i] != null && i == meta)
|
||||
{
|
||||
ItemStack result = handler[i].onItemRightClick(par1ItemStack, par2World, par3EntityPlayer);
|
||||
if(result != null)
|
||||
return result;
|
||||
}
|
||||
}
|
||||
@@ -175,12 +179,12 @@ public class MultiItem extends Item{
|
||||
@Override
|
||||
public boolean hitEntity(ItemStack par1ItemStack, EntityLivingBase par2EntityLivingBase, EntityLivingBase par3EntityLivingBase)
|
||||
{
|
||||
int meta = par1ItemStack.getItemDamage();
|
||||
for(int i = 0; i < 1024; ++i)
|
||||
{
|
||||
if(handler[i] != null)
|
||||
if(handler[i] != null && i == meta)
|
||||
{
|
||||
boolean result = handler[i].hitEntity(par1ItemStack, par2EntityLivingBase, par3EntityLivingBase);
|
||||
if(result != false)
|
||||
return result;
|
||||
}
|
||||
}
|
||||
@@ -190,12 +194,12 @@ public class MultiItem extends Item{
|
||||
@Override
|
||||
public boolean onBlockDestroyed(ItemStack par1ItemStack, World par2World, int par3, int par4, int par5, int par6, EntityLivingBase par7EntityLivingBase)
|
||||
{
|
||||
int meta = par1ItemStack.getItemDamage();
|
||||
for(int i = 0; i < 1024; ++i)
|
||||
{
|
||||
if(handler[i] != null)
|
||||
if(handler[i] != null && i == meta)
|
||||
{
|
||||
boolean result = handler[i].onBlockDestroyed(par1ItemStack, par2World, par3, par4, par5, par6, par7EntityLivingBase);
|
||||
if(result != false)
|
||||
return result;
|
||||
}
|
||||
}
|
||||
@@ -206,8 +210,9 @@ public class MultiItem extends Item{
|
||||
public void onUpdate(ItemStack par1ItemStack, World par2World, Entity par3Entity, int par4, boolean par5)
|
||||
{
|
||||
{
|
||||
for(int i = 0; i < 1024; ++i)
|
||||
if(handler[i] != null)
|
||||
int meta = par1ItemStack.getItemDamage();
|
||||
for(int i = 0; i < 1024; ++i)
|
||||
if(handler[i] != null && i == meta)
|
||||
handler[i].onUpdate(par1ItemStack, par2World, par3Entity, par4, par5);
|
||||
}
|
||||
}
|
||||
@@ -216,12 +221,12 @@ public class MultiItem extends Item{
|
||||
@SideOnly(Side.CLIENT)
|
||||
public int getColorFromItemStack(ItemStack par1ItemStack, int par2)
|
||||
{
|
||||
int meta = par1ItemStack.getItemDamage();
|
||||
for(int i = 0; i < 1024; ++i)
|
||||
{
|
||||
if(handler[i] != null)
|
||||
if(handler[i] != null && i == meta)
|
||||
{
|
||||
int result = handler[i].getColorFromItemStack(par1ItemStack, par2);
|
||||
if(result != -1)
|
||||
return result;
|
||||
}
|
||||
}
|
||||
@@ -231,9 +236,10 @@ public class MultiItem extends Item{
|
||||
@Override
|
||||
public void addInformation(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer, List par3List, boolean par4)
|
||||
{
|
||||
int meta = par1ItemStack.getItemDamage();
|
||||
for(int i = 0; i < 1024; ++i)
|
||||
{
|
||||
if(handler[i] != null)
|
||||
if(handler[i] != null && i == meta)
|
||||
handler[i].addInformation(par1ItemStack, par2EntityPlayer, par3List, par4);
|
||||
}
|
||||
}
|
||||
@@ -241,12 +247,12 @@ public class MultiItem extends Item{
|
||||
@Override
|
||||
public EnumRarity getRarity(ItemStack par1ItemStack)
|
||||
{
|
||||
int meta = par1ItemStack.getItemDamage();
|
||||
for(int i = 0; i < 1024; ++i)
|
||||
{
|
||||
if(handler[i] != null)
|
||||
if(handler[i] != null && i == meta)
|
||||
{
|
||||
EnumRarity result = handler[i].getRarity(par1ItemStack);
|
||||
if(result != EnumRarity.common)
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,53 @@
|
||||
package DummyCore.Utils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import net.minecraft.client.gui.Gui;
|
||||
import net.minecraft.inventory.Container;
|
||||
|
||||
public class GuiContainerLibrary {
|
||||
private static List<Gui> gui = new ArrayList();
|
||||
private static List<Container> container = new ArrayList();
|
||||
private static List<Integer> regInt = new ArrayList();
|
||||
|
||||
public static void registerGuiContainer(int id, Container c, Gui g)
|
||||
{
|
||||
regInt.add(id);
|
||||
container.add(c);
|
||||
gui.add(g);
|
||||
}
|
||||
|
||||
public static Container getContainerByID(int id)
|
||||
{
|
||||
int i = getListArg(id);
|
||||
if(i > 0)
|
||||
{
|
||||
return container.get(i);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public static Gui getGuiByID(int id)
|
||||
{
|
||||
int i = getListArg(id);
|
||||
if(i > 0)
|
||||
{
|
||||
return gui.get(i);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
private static int getListArg(int id)
|
||||
{
|
||||
if(regInt.contains(id))
|
||||
{
|
||||
for(int i = 0; i < regInt.size(); ++i)
|
||||
{
|
||||
if(regInt.get(i) == id)
|
||||
return regInt.get(i);
|
||||
}
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
@@ -27,7 +27,7 @@ public interface IDummyMultiBlock {
|
||||
|
||||
public void onItemBlockUpdate(ItemStack par1ItemStack, World par2World, Entity par3Entity, int par4, boolean par5);
|
||||
|
||||
public void addInformation(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer, List par3List, boolean par4);
|
||||
public List addInformation(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer, List par3List, boolean par4);
|
||||
|
||||
public EnumRarity getRarity(ItemStack par1ItemStack);
|
||||
|
||||
@@ -56,4 +56,6 @@ public interface IDummyMultiBlock {
|
||||
public void setBlockBoundsBasedOnState(Block b, IBlockAccess par1IBlockAccess, int par2, int par3, int par4);
|
||||
|
||||
public Icon getIcon(int par1, int par2);
|
||||
|
||||
public int getRenderColor(int par1);
|
||||
}
|
||||
@@ -20,6 +20,8 @@ public class MathUtils {
|
||||
*/
|
||||
public static int pixelatedTextureSize(int current, int max, int textureSize)
|
||||
{
|
||||
if(current > max)
|
||||
current = max;
|
||||
float m = (float)current/max*100;
|
||||
float n = m/100*textureSize;
|
||||
return (int)n;
|
||||
|
||||
@@ -10,6 +10,8 @@ import net.minecraft.nbt.NBTTagCompound;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraft.world.chunk.Chunk;
|
||||
import net.minecraft.world.chunk.storage.ExtendedBlockStorage;
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
|
||||
|
||||
Reference in new issue
Block a user