Search in sources :

Example 1 with LogisticsItemCard

use of logisticspipes.items.LogisticsItemCard in project LogisticsPipes by RS485.

the class LogisticsPipes method initItems.

private void initItems(Side side) {
    boolean isClient = side == Side.CLIENT;
    Object renderer = null;
    if (isClient) {
        renderer = new FluidContainerRenderer();
    }
    LogisticsPipes.LogisticsItemCard = new LogisticsItemCard();
    LogisticsPipes.LogisticsItemCard.setUnlocalizedName("logisticsItemCard");
    GameRegistry.registerItem(LogisticsPipes.LogisticsItemCard, LogisticsPipes.LogisticsItemCard.getUnlocalizedName());
    if (isClient) {
        MinecraftForgeClient.registerItemRenderer(LogisticsPipes.LogisticsItemCard, (FluidContainerRenderer) renderer);
    }
    LogisticsPipes.LogisticsRemoteOrderer = new RemoteOrderer();
    LogisticsPipes.LogisticsRemoteOrderer.setUnlocalizedName("remoteOrdererItem");
    GameRegistry.registerItem(LogisticsPipes.LogisticsRemoteOrderer, LogisticsPipes.LogisticsRemoteOrderer.getUnlocalizedName());
    ItemPipeSignCreator.registerPipeSignTypes();
    LogisticsPipes.LogisticsCraftingSignCreator = new ItemPipeSignCreator();
    LogisticsPipes.LogisticsCraftingSignCreator.setUnlocalizedName("ItemPipeSignCreator");
    GameRegistry.registerItem(LogisticsPipes.LogisticsCraftingSignCreator, LogisticsPipes.LogisticsCraftingSignCreator.getUnlocalizedName());
    int renderIndex;
    if (isClient) {
        renderIndex = RenderingRegistry.addNewArmourRendererPrefix("LogisticsHUD");
    } else {
        renderIndex = 0;
    }
    LogisticsPipes.LogisticsHUDArmor = new ItemHUDArmor(renderIndex);
    LogisticsPipes.LogisticsHUDArmor.setUnlocalizedName("logisticsHUDGlasses");
    GameRegistry.registerItem(LogisticsPipes.LogisticsHUDArmor, LogisticsPipes.LogisticsHUDArmor.getUnlocalizedName());
    LogisticsPipes.LogisticsParts = new ItemParts();
    LogisticsPipes.LogisticsParts.setUnlocalizedName("logisticsParts");
    GameRegistry.registerItem(LogisticsPipes.LogisticsParts, LogisticsPipes.LogisticsParts.getUnlocalizedName());
    SimpleServiceLocator.buildCraftProxy.registerTrigger();
    LogisticsPipes.ModuleItem = new ItemModule();
    LogisticsPipes.ModuleItem.setUnlocalizedName("itemModule");
    LogisticsPipes.ModuleItem.loadModules();
    GameRegistry.registerItem(LogisticsPipes.ModuleItem, LogisticsPipes.ModuleItem.getUnlocalizedName());
    LogisticsPipes.LogisticsItemDisk = new ItemDisk();
    LogisticsPipes.LogisticsItemDisk.setUnlocalizedName("itemDisk");
    GameRegistry.registerItem(LogisticsPipes.LogisticsItemDisk, LogisticsPipes.LogisticsItemDisk.getUnlocalizedName());
    LogisticsPipes.UpgradeItem = new ItemUpgrade();
    LogisticsPipes.UpgradeItem.setUnlocalizedName("itemUpgrade");
    LogisticsPipes.UpgradeItem.loadUpgrades();
    GameRegistry.registerItem(LogisticsPipes.UpgradeItem, LogisticsPipes.UpgradeItem.getUnlocalizedName());
    LogisticsPipes.LogisticsFluidContainer = new LogisticsFluidContainer();
    LogisticsPipes.LogisticsFluidContainer.setUnlocalizedName("logisticsFluidContainer");
    if (isClient) {
        MinecraftForgeClient.registerItemRenderer(LogisticsPipes.LogisticsFluidContainer, (FluidContainerRenderer) renderer);
    }
    GameRegistry.registerItem(LogisticsPipes.LogisticsFluidContainer, LogisticsPipes.LogisticsFluidContainer.getUnlocalizedName());
    LogisticsPipes.LogisticsBrokenItem = new LogisticsBrokenItem();
    LogisticsPipes.LogisticsBrokenItem.setUnlocalizedName("brokenItem");
    GameRegistry.registerItem(LogisticsPipes.LogisticsBrokenItem, LogisticsPipes.LogisticsBrokenItem.getUnlocalizedName());
    LogisticsPipes.LogisticsPipeControllerItem = new ItemPipeController();
    LogisticsPipes.LogisticsPipeControllerItem.setUnlocalizedName("pipeController");
    GameRegistry.registerItem(LogisticsPipes.LogisticsPipeControllerItem, LogisticsPipes.LogisticsPipeControllerItem.getUnlocalizedName());
    //Blocks
    LogisticsPipes.LogisticsSolidBlock = new LogisticsSolidBlock();
    GameRegistry.registerBlock(LogisticsPipes.LogisticsSolidBlock, LogisticsSolidBlockItem.class, "logisticsSolidBlock");
    LogisticsPipes.LogisticsPipeBlock = new LogisticsBlockGenericPipe();
    GameRegistry.registerBlock(LogisticsPipes.LogisticsPipeBlock, "logisticsPipeBlock");
    LogisticsPipes.LogisticsSubMultiBlock = new LogisticsBlockGenericSubMultiBlock();
    GameRegistry.registerBlock(LogisticsPipes.LogisticsSubMultiBlock, "logisticsSubMultiBlock");
    LogisticsChips = new ItemLogisticsChips();
    LogisticsChips.setUnlocalizedName("logisticsChips");
    GameRegistry.registerItem(LogisticsChips, LogisticsChips.getUnlocalizedName());
    registerPipes(side);
}
Also used : ItemHUDArmor(logisticspipes.items.ItemHUDArmor) FluidContainerRenderer(logisticspipes.renderer.FluidContainerRenderer) ItemUpgrade(logisticspipes.items.ItemUpgrade) ItemPipeController(logisticspipes.items.ItemPipeController) LogisticsBlockGenericPipe(logisticspipes.pipes.basic.LogisticsBlockGenericPipe) LogisticsItemCard(logisticspipes.items.LogisticsItemCard) RemoteOrderer(logisticspipes.items.RemoteOrderer) ItemDisk(logisticspipes.items.ItemDisk) LogisticsFluidContainer(logisticspipes.items.LogisticsFluidContainer) LogisticsBrokenItem(logisticspipes.items.LogisticsBrokenItem) LogisticsSolidBlock(logisticspipes.blocks.LogisticsSolidBlock) ItemPipeSignCreator(logisticspipes.items.ItemPipeSignCreator) ItemParts(logisticspipes.items.ItemParts) ItemLogisticsChips(logisticspipes.items.ItemLogisticsChips) ItemModule(logisticspipes.items.ItemModule) LogisticsBlockGenericSubMultiBlock(logisticspipes.pipes.basic.LogisticsBlockGenericSubMultiBlock)

Example 2 with LogisticsItemCard

use of logisticspipes.items.LogisticsItemCard in project LogisticsPipes by RS485.

the class FluidContainerRenderer method renderItem.

@Override
public void renderItem(ItemRenderType type, ItemStack item, Object... data) {
    if (FluidContainerRenderer.skipNext) {
        FluidContainerRenderer.skipNext = false;
        return;
    }
    GL11.glPushMatrix();
    Minecraft mc = FMLClientHandler.instance().getClient();
    if (item.getItem() instanceof LogisticsFluidContainer) {
        FluidStack liquid = SimpleServiceLocator.logisticsFluidManager.getFluidFromContainer(ItemIdentifierStack.getFromStack(item));
        if ((type != ItemRenderType.INVENTORY && type != ItemRenderType.ENTITY) || liquid == null) {
            doRenderItem(item, mc, type, data);
            GL11.glPopMatrix();
            return;
        }
        doRenderFluid(liquid, mc, type, data);
        doRenderItem(item, mc, type, data);
    } else if (item.getItem() instanceof LogisticsItemCard) {
        doRenderItem(item, mc, type, data);
        NBTTagCompound nbt = item.getTagCompound();
        if (nbt == null || !nbt.hasKey("colors")) {
            GL11.glPopMatrix();
            return;
        }
        NBTTagCompound colors = nbt.getCompoundTag("colors");
        if (colors == null) {
            GL11.glPopMatrix();
            return;
        }
        if (type == ItemRenderType.ENTITY) {
            GL11.glScaled(0.07, 0.07, 1);
            GL11.glTranslated(-3, 3.5, -0.025);
        }
        for (int i = 0; i < 6; i++) {
            int colorCode = colors.getInteger("color:" + i);
            MinecraftColor color = MinecraftColor.values()[colorCode];
            int x = i / 3;
            int y = i % 3;
            if (type == ItemRenderType.INVENTORY) {
                Gui.drawRect(x * 5 + 4, y * 3 + 3, x * 5 + 7, y * 3 + 5, color.getColorCode());
            }
            if (type == ItemRenderType.ENTITY) {
                Gui.drawRect(-x * 5 + 4, -y * 3 + 3, -x * 5 + 7, -y * 3 + 5, color.getColorCode());
                GL11.glRotatef(180, 1, 0, 0);
                Gui.drawRect(-x * 5 + 4, -y * 3 + 3, -x * 5 + 7, -y * 3 + 5, color.getColorCode());
                GL11.glRotatef(180, 1, 0, 0);
            }
        }
    }
    GL11.glPopMatrix();
}
Also used : MinecraftColor(logisticspipes.utils.MinecraftColor) LogisticsFluidContainer(logisticspipes.items.LogisticsFluidContainer) FluidStack(net.minecraftforge.fluids.FluidStack) NBTTagCompound(net.minecraft.nbt.NBTTagCompound) Minecraft(net.minecraft.client.Minecraft) LogisticsItemCard(logisticspipes.items.LogisticsItemCard)

Aggregations

LogisticsFluidContainer (logisticspipes.items.LogisticsFluidContainer)2 LogisticsItemCard (logisticspipes.items.LogisticsItemCard)2 LogisticsSolidBlock (logisticspipes.blocks.LogisticsSolidBlock)1 ItemDisk (logisticspipes.items.ItemDisk)1 ItemHUDArmor (logisticspipes.items.ItemHUDArmor)1 ItemLogisticsChips (logisticspipes.items.ItemLogisticsChips)1 ItemModule (logisticspipes.items.ItemModule)1 ItemParts (logisticspipes.items.ItemParts)1 ItemPipeController (logisticspipes.items.ItemPipeController)1 ItemPipeSignCreator (logisticspipes.items.ItemPipeSignCreator)1 ItemUpgrade (logisticspipes.items.ItemUpgrade)1 LogisticsBrokenItem (logisticspipes.items.LogisticsBrokenItem)1 RemoteOrderer (logisticspipes.items.RemoteOrderer)1 LogisticsBlockGenericPipe (logisticspipes.pipes.basic.LogisticsBlockGenericPipe)1 LogisticsBlockGenericSubMultiBlock (logisticspipes.pipes.basic.LogisticsBlockGenericSubMultiBlock)1 FluidContainerRenderer (logisticspipes.renderer.FluidContainerRenderer)1 MinecraftColor (logisticspipes.utils.MinecraftColor)1 Minecraft (net.minecraft.client.Minecraft)1 NBTTagCompound (net.minecraft.nbt.NBTTagCompound)1 FluidStack (net.minecraftforge.fluids.FluidStack)1