Multiple wood types, recipes, fixes, rendering, etc.
No files matched your search
@@ -0,0 +1,29 @@
|
||||
itemGroup.storageDrawers=Storage Drawers
|
||||
|
||||
tile.fullDrawers2.oak.name=Oak Drawers 1x2
|
||||
tile.fullDrawers2.spruce.name=Spruce Drawers 1x2
|
||||
tile.fullDrawers2.birch.name=Birch Drawers 1x2
|
||||
tile.fullDrawers2.jungle.name=Jungle Drawers 1x2
|
||||
tile.fullDrawers2.acacia.name=Acacia Drawers 1x2
|
||||
tile.fullDrawers2.big_oak.name=Dark Oak Drawers 1x2
|
||||
|
||||
tile.fullDrawers4.oak.name=Oak Drawers 2x2
|
||||
tile.fullDrawers4.spruce.name=Spruce Drawers 2x2
|
||||
tile.fullDrawers4.birch.name=Birch Drawers 2x2
|
||||
tile.fullDrawers4.jungle.name=Jungle Drawers 2x2
|
||||
tile.fullDrawers4.acacia.name=Acacia Drawers 2x2
|
||||
tile.fullDrawers4.big_oak.name=Dark Oak Drawers 2x2
|
||||
|
||||
tile.halfDrawers2.oak.name=Compact Oak Drawers 1x2
|
||||
tile.halfDrawers2.spruce.name=Compact Spruce Drawers 1x2
|
||||
tile.halfDrawers2.birch.name=Compact Birch Drawers 1x2
|
||||
tile.halfDrawers2.jungle.name=Compact Jungle Drawers 1x2
|
||||
tile.halfDrawers2.acacia.name=Compact Acacia Drawers 1x2
|
||||
tile.halfDrawers2.big_oak.name=Compact Dark Oak Drawers 1x2
|
||||
|
||||
tile.halfDrawers4.oak.name=Compact Oak Drawers 2x2
|
||||
tile.halfDrawers4.spruce.name=Compact Spruce Drawers 2x2
|
||||
tile.halfDrawers4.birch.name=Compact Birch Drawers 2x2
|
||||
tile.halfDrawers4.jungle.name=Compact Jungle Drawers 2x2
|
||||
tile.halfDrawers4.acacia.name=Compact Acacia Drawers 2x2
|
||||
tile.halfDrawers4.big_oak.name=Compact Dark Oak Drawers 2x2
|
||||
|
After Width: | Height: | Size: 478 B |
|
After Width: | Height: | Size: 520 B |
|
After Width: | Height: | Size: 393 B |
|
After Width: | Height: | Size: 403 B |
|
After Width: | Height: | Size: 410 B |
|
After Width: | Height: | Size: 451 B |
|
After Width: | Height: | Size: 473 B |
|
After Width: | Height: | Size: 367 B |
|
After Width: | Height: | Size: 387 B |
|
After Width: | Height: | Size: 395 B |
|
After Width: | Height: | Size: 499 B |
|
After Width: | Height: | Size: 545 B |
|
After Width: | Height: | Size: 406 B |
|
After Width: | Height: | Size: 421 B |
|
After Width: | Height: | Size: 422 B |
|
Before Width: | Height: | Size: 472 B |
|
Before Width: | Height: | Size: 499 B |
|
After Width: | Height: | Size: 484 B |
|
After Width: | Height: | Size: 520 B |
|
After Width: | Height: | Size: 384 B |
|
After Width: | Height: | Size: 404 B |
|
After Width: | Height: | Size: 405 B |
|
After Width: | Height: | Size: 577 B |
|
After Width: | Height: | Size: 596 B |
|
After Width: | Height: | Size: 452 B |
|
After Width: | Height: | Size: 481 B |
|
After Width: | Height: | Size: 477 B |
|
Before Width: | Height: | Size: 489 B |
|
After Width: | Height: | Size: 479 B |
|
After Width: | Height: | Size: 501 B |
|
After Width: | Height: | Size: 385 B |
|
After Width: | Height: | Size: 391 B |
|
After Width: | Height: | Size: 407 B |
@@ -1,8 +1,6 @@
|
||||
package com.jaquadro.minecraft.storagedrawers;
|
||||
|
||||
import com.jaquadro.minecraft.storagedrawers.core.CommonProxy;
|
||||
import com.jaquadro.minecraft.storagedrawers.core.ForgeEventHandler;
|
||||
import com.jaquadro.minecraft.storagedrawers.core.ModBlocks;
|
||||
import com.jaquadro.minecraft.storagedrawers.core.*;
|
||||
import com.jaquadro.minecraft.storagedrawers.network.BlockClickMessage;
|
||||
import cpw.mods.fml.common.Mod;
|
||||
import cpw.mods.fml.common.SidedProxy;
|
||||
@@ -23,6 +21,7 @@ public class StorageDrawers
|
||||
static final String SOURCE_PATH = "com.jaquadro.minecraft.storagedrawers.";
|
||||
|
||||
public static final ModBlocks blocks = new ModBlocks();
|
||||
public static final ModRecipes recipes = new ModRecipes();
|
||||
|
||||
public static SimpleNetworkWrapper network;
|
||||
|
||||
@@ -49,6 +48,6 @@ public class StorageDrawers
|
||||
|
||||
@Mod.EventHandler
|
||||
public void postInit (FMLPostInitializationEvent event) {
|
||||
|
||||
recipes.init();
|
||||
}
|
||||
}
|
||||
@@ -3,11 +3,13 @@ package com.jaquadro.minecraft.storagedrawers.block;
|
||||
import com.jaquadro.minecraft.storagedrawers.StorageDrawers;
|
||||
import com.jaquadro.minecraft.storagedrawers.block.tile.TileEntityDrawers;
|
||||
import com.jaquadro.minecraft.storagedrawers.core.ClientProxy;
|
||||
import com.jaquadro.minecraft.storagedrawers.core.ModCreativeTabs;
|
||||
import com.jaquadro.minecraft.storagedrawers.network.BlockClickMessage;
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.BlockContainer;
|
||||
import net.minecraft.block.BlockWood;
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
||||
@@ -34,13 +36,19 @@ public class BlockDrawers extends BlockContainer implements IExtendedBlockClickH
|
||||
public final int drawerCount;
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
private IIcon iconSide;
|
||||
private IIcon[] iconSide;
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
private IIcon iconFront2;
|
||||
private IIcon[] iconSideV;
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
private IIcon iconFront4;
|
||||
private IIcon[] iconSideH;
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
private IIcon[] iconFront2;
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
private IIcon[] iconFront4;
|
||||
|
||||
public BlockDrawers (String blockName, int drawerCount, boolean halfDepth) {
|
||||
super(Material.wood);
|
||||
@@ -48,7 +56,7 @@ public class BlockDrawers extends BlockContainer implements IExtendedBlockClickH
|
||||
this.drawerCount = drawerCount;
|
||||
this.halfDepth = halfDepth;
|
||||
|
||||
setCreativeTab(CreativeTabs.tabDecorations);
|
||||
setCreativeTab(ModCreativeTabs.tabStorageDrawers);
|
||||
setHardness(2.5f);
|
||||
setStepSound(Block.soundTypeWood);
|
||||
setBlockName(blockName);
|
||||
@@ -147,7 +155,7 @@ public class BlockDrawers extends BlockContainer implements IExtendedBlockClickH
|
||||
return false;
|
||||
|
||||
int slot = getDrawerSlot(side, hitX, hitY, hitZ);
|
||||
int countAdded = tileDrawers.putItemsIntoSlot(slot, item, 1);
|
||||
int countAdded = tileDrawers.putItemsIntoSlot(slot, item, item.stackSize);
|
||||
|
||||
//if (countAdded > 0)
|
||||
// world.markBlockForUpdate(x, y, z);
|
||||
@@ -202,9 +210,14 @@ public class BlockDrawers extends BlockContainer implements IExtendedBlockClickH
|
||||
if (tileDrawers.getDirection() != side)
|
||||
return;
|
||||
|
||||
int slot = (hitY > .5) ? 0 : 1;
|
||||
int slot = getDrawerSlot(side, hitX, hitY, hitZ);
|
||||
|
||||
ItemStack item = null;
|
||||
if (player.isSneaking())
|
||||
item = tileDrawers.takeItemsFromSlot(slot, tileDrawers.getStackSize(slot));
|
||||
else
|
||||
item = tileDrawers.takeItemsFromSlot(slot, 1);
|
||||
|
||||
ItemStack item = tileDrawers.takeItemsFromSlot(slot, 1);
|
||||
if (item != null && item.stackSize > 0) {
|
||||
dropItemStack(world, x, y, z, player, item);
|
||||
world.markBlockForUpdate(x, y, z);
|
||||
@@ -218,7 +231,7 @@ public class BlockDrawers extends BlockContainer implements IExtendedBlockClickH
|
||||
|
||||
@Override
|
||||
public boolean removedByPlayer (World world, EntityPlayer player, int x, int y, int z) {
|
||||
if (world.isRemote && player.capabilities.isCreativeMode && !player.isSneaking()) {
|
||||
if (world.isRemote && player.capabilities.isCreativeMode) {
|
||||
TileEntityDrawers tile = getTileEntity(world, x, y, z);
|
||||
MovingObjectPosition posn = Minecraft.getMinecraft().objectMouseOver;
|
||||
|
||||
@@ -251,24 +264,79 @@ public class BlockDrawers extends BlockContainer implements IExtendedBlockClickH
|
||||
return tile;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void getSubBlocks (Item item, CreativeTabs creativeTabs, List list) {
|
||||
for (int i = 0; i < BlockWood.field_150096_a.length; i++)
|
||||
list.add(new ItemStack(item, 1, i));
|
||||
}
|
||||
|
||||
@Override
|
||||
public IIcon getIcon (int side, int meta) {
|
||||
return drawerCount == 2 ? iconFront2 : iconFront4;
|
||||
meta %= BlockWood.field_150096_a.length;
|
||||
|
||||
switch (side) {
|
||||
case 0:
|
||||
case 1:
|
||||
return halfDepth ? iconSideV[meta] : iconSide[meta];
|
||||
case 2:
|
||||
case 3:
|
||||
return halfDepth ? iconSideV[meta] : iconSide[meta];
|
||||
case 4:
|
||||
return drawerCount == 2 ? iconFront2[meta] : iconFront4[meta];
|
||||
case 5:
|
||||
return iconSide[meta];
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public IIcon getIcon (IBlockAccess blockAccess, int x, int y, int z, int side) {
|
||||
int meta = blockAccess.getBlockMetadata(x, y, z) % BlockWood.field_150096_a.length;
|
||||
|
||||
TileEntityDrawers tile = getTileEntity(blockAccess, x, y, z);
|
||||
if (tile == null || side == tile.getDirection())
|
||||
return drawerCount == 2 ? iconFront2 : iconFront4;
|
||||
return drawerCount == 2 ? iconFront2[meta] : iconFront4[meta];
|
||||
|
||||
return iconSide;
|
||||
switch (side) {
|
||||
case 0:
|
||||
case 1:
|
||||
if (halfDepth) {
|
||||
switch (tile.getDirection()) {
|
||||
case 2:
|
||||
case 3:
|
||||
return iconSideH[meta];
|
||||
case 4:
|
||||
case 5:
|
||||
return iconSideV[meta];
|
||||
}
|
||||
}
|
||||
break;
|
||||
default:
|
||||
if (halfDepth)
|
||||
return iconSideV[meta];
|
||||
break;
|
||||
}
|
||||
|
||||
return iconSide[meta];
|
||||
}
|
||||
|
||||
@Override
|
||||
public void registerBlockIcons (IIconRegister register) {
|
||||
iconFront2 = register.registerIcon(StorageDrawers.MOD_ID + ":drawers_front_2");
|
||||
iconFront4 = register.registerIcon(StorageDrawers.MOD_ID + ":drawers_front_4");
|
||||
iconSide = register.registerIcon(StorageDrawers.MOD_ID + ":drawers_side");
|
||||
String[] subtex = BlockWood.field_150096_a;
|
||||
|
||||
iconSide = new IIcon[subtex.length];
|
||||
iconSideH = new IIcon[subtex.length];
|
||||
iconSideV = new IIcon[subtex.length];
|
||||
iconFront2 = new IIcon[subtex.length];
|
||||
iconFront4 = new IIcon[subtex.length];
|
||||
|
||||
for (int i = 0; i < subtex.length; i++) {
|
||||
iconFront2[i] = register.registerIcon(StorageDrawers.MOD_ID + ":drawers_" + subtex[i] + "_front_2");
|
||||
iconFront4[i] = register.registerIcon(StorageDrawers.MOD_ID + ":drawers_" + subtex[i] + "_front_4");
|
||||
iconSide[i] = register.registerIcon(StorageDrawers.MOD_ID + ":drawers_" + subtex[i] + "_side");
|
||||
iconSideV[i] = register.registerIcon(StorageDrawers.MOD_ID + ":drawers_" + subtex[i] + "_side_v");
|
||||
iconSideH[i] = register.registerIcon(StorageDrawers.MOD_ID + ":drawers_" + subtex[i] + "_side_h");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -66,7 +66,7 @@ public class TileEntityDrawers extends TileEntity
|
||||
}
|
||||
|
||||
public int stackCapacity () {
|
||||
return drawerCount * drawerCapacity;
|
||||
return level * drawerCapacity;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -113,6 +113,13 @@ public class TileEntityDrawers extends TileEntity
|
||||
return data[slot].meta;
|
||||
}
|
||||
|
||||
public int getStackSize (int slot) {
|
||||
if (data[slot].item == null)
|
||||
return 0;
|
||||
|
||||
return data[slot].item.getItemStackLimit(null);
|
||||
}
|
||||
|
||||
public ItemStack getSingleItemStack (int slot) {
|
||||
if (data[slot].item == null)
|
||||
return null;
|
||||
@@ -133,10 +140,11 @@ public class TileEntityDrawers extends TileEntity
|
||||
|
||||
ItemStack stack = new ItemStack(data[slot].item, 1, data[slot].meta);
|
||||
stack.stackSize = Math.min(stack.getMaxStackSize(), count);
|
||||
stack.stackSize = Math.min(stack.stackSize, data[slot].count);
|
||||
stack.setTagCompound(data[slot].attrs);
|
||||
|
||||
data[slot].count -= stack.stackSize;
|
||||
if (data[slot].count == 0)
|
||||
if (data[slot].count <= 0)
|
||||
data[slot].reset();
|
||||
|
||||
return stack;
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.jaquadro.minecraft.storagedrawers.client.renderer;
|
||||
|
||||
import com.jaquadro.minecraft.storagedrawers.block.BlockDrawers;
|
||||
import com.jaquadro.minecraft.storagedrawers.block.tile.TileEntityDrawers;
|
||||
import com.jaquadro.minecraft.storagedrawers.core.ClientProxy;
|
||||
import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.client.Minecraft;
|
||||
@@ -15,6 +16,7 @@ import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.Direction;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
import net.minecraftforge.common.util.ForgeDirection;
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
public class DrawersRenderer implements ISimpleBlockRenderingHandler
|
||||
{
|
||||
@@ -22,7 +24,32 @@ public class DrawersRenderer implements ISimpleBlockRenderingHandler
|
||||
|
||||
@Override
|
||||
public void renderInventoryBlock (Block block, int metadata, int modelId, RenderBlocks renderer) {
|
||||
if (!(block instanceof BlockDrawers))
|
||||
return;
|
||||
|
||||
renderInventoryBlock((BlockDrawers) block, metadata, modelId, renderer);
|
||||
}
|
||||
|
||||
private void renderInventoryBlock (BlockDrawers block, int metadata, int modelId, RenderBlocks renderer) {
|
||||
double unit = .0625;
|
||||
int side = 4;
|
||||
|
||||
boxRenderer.setUnit(unit);
|
||||
boxRenderer.setColor(ModularBoxRenderer.COLOR_WHITE);
|
||||
for (int i = 0; i < 6; i++)
|
||||
boxRenderer.setIcon(block.getIcon(i, metadata), i);
|
||||
|
||||
GL11.glRotatef(90, 0, 1, 0);
|
||||
GL11.glTranslatef(-.5f, -.5f, -.5f);
|
||||
|
||||
renderExterior(block, 0, 0, 0,side, renderer);
|
||||
|
||||
boxRenderer.setUnit(0);
|
||||
boxRenderer.setInteriorIcon(block.getIcon(side, metadata), ForgeDirection.OPPOSITES[side]);
|
||||
|
||||
renderInterior(block, 0, 0, 0, side, renderer);
|
||||
|
||||
GL11.glTranslatef(.5f, .5f, .5f);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -46,6 +73,17 @@ public class DrawersRenderer implements ISimpleBlockRenderingHandler
|
||||
for (int i = 0; i < 6; i++)
|
||||
boxRenderer.setIcon(block.getIcon(world, x, y, z, i), i);
|
||||
|
||||
renderExterior(block, x, y, z, side, renderer);
|
||||
|
||||
boxRenderer.setUnit(0);
|
||||
boxRenderer.setInteriorIcon(block.getIcon(world, x, y, z, side), ForgeDirection.OPPOSITES[side]);
|
||||
|
||||
renderInterior(block, x, y, z, side, renderer);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
private void renderExterior (BlockDrawers block, int x, int y, int z, int side, RenderBlocks renderer) {
|
||||
double depth = block.halfDepth ? .5 : 1;
|
||||
double xMin = 0, xMax = 0, zMin = 0, zMax = 0;
|
||||
|
||||
@@ -68,8 +106,34 @@ public class DrawersRenderer implements ISimpleBlockRenderingHandler
|
||||
break;
|
||||
}
|
||||
|
||||
boxRenderer.renderExterior(renderer, block, x, y, z, xMin, 0, zMin, xMax, .5, zMax, 0, ModularBoxRenderer.sideCut[side]);
|
||||
boxRenderer.renderExterior(renderer, block, x, y, z, xMin, .5, zMin, xMax, 1, zMax, 0, ModularBoxRenderer.sideCut[side]);
|
||||
if (block.drawerCount == 2) {
|
||||
boxRenderer.renderExterior(renderer, block, x, y, z, xMin, 0, zMin, xMax, .5, zMax, 0, ModularBoxRenderer.sideCut[side]);
|
||||
boxRenderer.renderExterior(renderer, block, x, y, z, xMin, .5, zMin, xMax, 1, zMax, 0, ModularBoxRenderer.sideCut[side]);
|
||||
}
|
||||
else if (block.drawerCount == 4) {
|
||||
switch (side) {
|
||||
case 2:
|
||||
case 3:
|
||||
boxRenderer.renderExterior(renderer, block, x, y, z, 0, 0, zMin, .5, .5, zMax, 0, ModularBoxRenderer.sideCut[side]);
|
||||
boxRenderer.renderExterior(renderer, block, x, y, z, 0, .5, zMin, .5, 1, zMax, 0, ModularBoxRenderer.sideCut[side]);
|
||||
boxRenderer.renderExterior(renderer, block, x, y, z, .5, 0, zMin, 1, .5, zMax, 0, ModularBoxRenderer.sideCut[side]);
|
||||
boxRenderer.renderExterior(renderer, block, x, y, z, .5, .5, zMin, 1, 1, zMax, 0, ModularBoxRenderer.sideCut[side]);
|
||||
break;
|
||||
case 4:
|
||||
case 5:
|
||||
boxRenderer.renderExterior(renderer, block, x, y, z, xMin, 0, 0, xMax, .5, .5, 0, ModularBoxRenderer.sideCut[side]);
|
||||
boxRenderer.renderExterior(renderer, block, x, y, z, xMin, .5, 0, xMax, 1, .5, 0, ModularBoxRenderer.sideCut[side]);
|
||||
boxRenderer.renderExterior(renderer, block, x, y, z, xMin, 0, .5, xMax, .5, 1, 0, ModularBoxRenderer.sideCut[side]);
|
||||
boxRenderer.renderExterior(renderer, block, x, y, z, xMin, .5, .5, xMax, 1, 1, 0, ModularBoxRenderer.sideCut[side]);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void renderInterior (BlockDrawers block, int x, int y, int z, int side, RenderBlocks renderer) {
|
||||
double unit = .0625;
|
||||
double depth = block.halfDepth ? .5 : 1;
|
||||
double xMin = 0, xMax = 0, zMin = 0, zMax = 0;
|
||||
|
||||
switch (side) {
|
||||
case 2:
|
||||
@@ -90,33 +154,37 @@ public class DrawersRenderer implements ISimpleBlockRenderingHandler
|
||||
break;
|
||||
}
|
||||
|
||||
boxRenderer.setUnit(0);
|
||||
boxRenderer.setInteriorIcon(block.getIcon(world, x, y, z, side), ForgeDirection.OPPOSITES[side]);
|
||||
boxRenderer.renderInterior(renderer, block, x, y, z, xMin, unit, zMin, xMax, unit * 7, zMax, 0, ModularBoxRenderer.sideCut[side]);
|
||||
boxRenderer.renderInterior(renderer, block, x, y, z, xMin, unit * 9, zMin, xMax, 1 - unit, zMax, 0, ModularBoxRenderer.sideCut[side]);
|
||||
|
||||
/*TileEntityDrawers tile = block.getTileEntity(world, x, y, z);
|
||||
if (tile != null) {
|
||||
ItemStack item = tile.getSingleItemStack(0);
|
||||
if (item != null) {
|
||||
EntityItem itemEnt = new EntityItem(Minecraft.getMinecraft().thePlayer.getEntityWorld(), 0, 0, 0, item);
|
||||
itemEnt.hoverStart = 0;
|
||||
RenderItem.renderInFrame = true;
|
||||
RenderManager.instance.renderEntityWithPosYaw(itemEnt, 0, 0, 0, 0, 0);
|
||||
RenderItem.renderInFrame = false;
|
||||
if (block.drawerCount == 2) {
|
||||
boxRenderer.renderInterior(renderer, block, x, y, z, xMin, unit, zMin, xMax, unit * 7, zMax, 0, ModularBoxRenderer.sideCut[side]);
|
||||
boxRenderer.renderInterior(renderer, block, x, y, z, xMin, unit * 9, zMin, xMax, 1 - unit, zMax, 0, ModularBoxRenderer.sideCut[side]);
|
||||
}
|
||||
else if (block.drawerCount == 4) {
|
||||
switch (side) {
|
||||
case 2:
|
||||
case 3:
|
||||
boxRenderer.renderInterior(renderer, block, x, y, z, unit, unit, zMin, .5 - unit, unit * 7, zMax, 0, ModularBoxRenderer.sideCut[side]);
|
||||
boxRenderer.renderInterior(renderer, block, x, y, z, unit, unit * 9, zMin, .5 - unit, 1 - unit, zMax, 0, ModularBoxRenderer.sideCut[side]);
|
||||
boxRenderer.renderInterior(renderer, block, x, y, z, .5 + unit, unit, zMin, 1 - unit, unit * 7, zMax, 0, ModularBoxRenderer.sideCut[side]);
|
||||
boxRenderer.renderInterior(renderer, block, x, y, z, .5 + unit, unit * 9, zMin, 1 - unit, 1 - unit, zMax, 0, ModularBoxRenderer.sideCut[side]);
|
||||
break;
|
||||
case 4:
|
||||
case 5:
|
||||
boxRenderer.renderInterior(renderer, block, x, y, z, xMin, unit, unit, xMax, unit * 7, .5 - unit, 0, ModularBoxRenderer.sideCut[side]);
|
||||
boxRenderer.renderInterior(renderer, block, x, y, z, xMin, unit * 9, unit, xMax, 1 - unit, .5 - unit, 0, ModularBoxRenderer.sideCut[side]);
|
||||
boxRenderer.renderInterior(renderer, block, x, y, z, xMin, unit, .5 + unit, xMax, unit * 7, 1 - unit, 0, ModularBoxRenderer.sideCut[side]);
|
||||
boxRenderer.renderInterior(renderer, block, x, y, z, xMin, unit * 9, .5 + unit, xMax, 1 - unit, 1 - unit, 0, ModularBoxRenderer.sideCut[side]);
|
||||
break;
|
||||
}
|
||||
}*/
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean shouldRender3DInInventory (int modelId) {
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getRenderId () {
|
||||
return 0;
|
||||
return ClientProxy.drawersRenderID;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
package com.jaquadro.minecraft.storagedrawers.core;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import net.minecraft.creativetab.CreativeTabs;
|
||||
import net.minecraft.item.Item;
|
||||
|
||||
public final class ModCreativeTabs
|
||||
{
|
||||
private ModCreativeTabs () { }
|
||||
|
||||
public static final CreativeTabs tabStorageDrawers = new CreativeTabs("storageDrawers") {
|
||||
@Override
|
||||
@SideOnly(Side.CLIENT)
|
||||
public Item getTabIconItem () {
|
||||
return Item.getItemFromBlock(ModBlocks.fullDrawers2);
|
||||
}
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
package com.jaquadro.minecraft.storagedrawers.core;
|
||||
|
||||
import cpw.mods.fml.common.registry.GameRegistry;
|
||||
import net.minecraft.block.BlockWood;
|
||||
import net.minecraft.init.Blocks;
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
public class ModRecipes
|
||||
{
|
||||
public void init () {
|
||||
for (int i = 0; i < BlockWood.field_150096_a.length; i++) {
|
||||
GameRegistry.addRecipe(new ItemStack(ModBlocks.fullDrawers2, 2, i), "xyx", "xxx", "xyx",
|
||||
'x', new ItemStack(Blocks.planks, 1, i), 'y', Blocks.chest);
|
||||
GameRegistry.addRecipe(new ItemStack(ModBlocks.halfDrawers2, 2, i), "xyx", "xxx", "xyx",
|
||||
'x', new ItemStack(Blocks.wooden_slab, 1, i), 'y', Blocks.chest);
|
||||
GameRegistry.addRecipe(new ItemStack(ModBlocks.fullDrawers4, 4, i), "yxy", "xxx", "yxy",
|
||||
'x', new ItemStack(Blocks.planks, 1, i), 'y', Blocks.chest);
|
||||
GameRegistry.addRecipe(new ItemStack(ModBlocks.halfDrawers4, 4, i), "yxy", "xxx", "yxy",
|
||||
'x', new ItemStack(Blocks.wooden_slab, 1, i), 'y', Blocks.chest);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -24,7 +24,7 @@ public class ItemDrawers extends ItemMultiTexture
|
||||
TileEntityDrawers tile = (TileEntityDrawers) world.getTileEntity(x, y, z);
|
||||
if (tile != null) {
|
||||
if (side > 1)
|
||||
tile.setDirection(ForgeDirection.OPPOSITES[side]);
|
||||
tile.setDirection(side);
|
||||
|
||||
BlockDrawers block = (BlockDrawers) field_150939_a;
|
||||
tile.setDrawerCount(block.drawerCount);
|
||||
|
||||