mirror of
https://github.com/GTNewHorizons/ForgeMultipart.git
synced 2026-11-12 16:37:38 +00:00
Moved cuboid render function to CCC-Public Fixed a redstone transmission bug Added Tick Scheduler
92 lines
1.8 KiB
Java
92 lines
1.8 KiB
Java
package codechicken.multipart.minecraft;
|
|
|
|
import codechicken.core.data.MCDataInput;
|
|
import codechicken.core.data.MCDataOutput;
|
|
import codechicken.core.lighting.LazyLightMatrix;
|
|
import codechicken.core.vec.BlockCoord;
|
|
import codechicken.core.vec.Vector3;
|
|
import net.minecraft.client.renderer.RenderBlocks;
|
|
import net.minecraft.nbt.NBTTagCompound;
|
|
import net.minecraft.world.World;
|
|
|
|
public abstract class McMetaPart extends McBlockPart implements IPartMeta
|
|
{
|
|
public byte meta;
|
|
|
|
public McMetaPart()
|
|
{
|
|
}
|
|
|
|
public McMetaPart(int meta)
|
|
{
|
|
this.meta = (byte)meta;
|
|
}
|
|
|
|
@Override
|
|
public void save(NBTTagCompound tag)
|
|
{
|
|
tag.setByte("meta", meta);
|
|
}
|
|
|
|
@Override
|
|
public void load(NBTTagCompound tag)
|
|
{
|
|
meta = tag.getByte("meta");
|
|
}
|
|
|
|
@Override
|
|
public void writeDesc(MCDataOutput packet)
|
|
{
|
|
packet.writeByte(meta);
|
|
}
|
|
|
|
@Override
|
|
public void readDesc(MCDataInput packet)
|
|
{
|
|
meta = packet.readByte();
|
|
}
|
|
|
|
@Override
|
|
public void read(MCDataInput packet)
|
|
{
|
|
readDesc(packet);
|
|
tile().markRender();
|
|
}
|
|
|
|
@Override
|
|
public World getWorld()
|
|
{
|
|
return getTile().worldObj;
|
|
}
|
|
|
|
@Override
|
|
public int getMetadata()
|
|
{
|
|
return meta;
|
|
}
|
|
|
|
@Override
|
|
public int getBlockId()
|
|
{
|
|
return getBlock().blockID;
|
|
}
|
|
|
|
@Override
|
|
public BlockCoord getPos()
|
|
{
|
|
return new BlockCoord(getTile());
|
|
}
|
|
|
|
@Override
|
|
public boolean doesTick()
|
|
{
|
|
return false;
|
|
}
|
|
|
|
@Override
|
|
public void renderStatic(Vector3 pos, LazyLightMatrix olm, int pass)
|
|
{
|
|
new RenderBlocks(new PartMetaAccess(this)).renderBlockByRenderType(getBlock(), getTile().xCoord, getTile().yCoord, getTile().zCoord);
|
|
}
|
|
}
|