Search in sources :

Example 16 with Container

use of net.minecraft.server.v1_10_R1.Container in project PublicCrafters by BananaPuncher714.

the class CustomTileEntityContainerWorkbench method createMenu.

/**
 * This is an ITileEntityContainer method that returns a new container for whatever tile entity
 */
@Override
public Container createMenu(int id, PlayerInventory inv, EntityHuman ent) {
    CustomInventoryCrafting crafting = manager.benches.get(bloc);
    if (crafting == null) {
        crafting = new CustomInventoryCrafting(bloc, manager, new SelfContainer(id), 3, 3);
        manager.put(bloc, crafting);
    }
    IInventory inventory = crafting.resultInventory;
    InventoryCraftResult result;
    if (inventory instanceof InventoryCraftResult || inventory == null) {
        result = new InventoryCraftResult();
        crafting.resultInventory = result;
    } else {
        result = (InventoryCraftResult) inventory;
    }
    Container container = new CustomContainerWorkbench(id, ent.getBukkitEntity(), bloc, crafting, result);
    crafting.addContainer(container);
    return container;
}
Also used : IInventory(net.minecraft.server.v1_15_R1.IInventory) ITileEntityContainer(net.minecraft.server.v1_15_R1.ITileEntityContainer) SelfContainer(io.github.bananapuncher714.crafters.implementation.v1_15_R1.ContainerManager_v1_15_R1.SelfContainer) Container(net.minecraft.server.v1_15_R1.Container) SelfContainer(io.github.bananapuncher714.crafters.implementation.v1_15_R1.ContainerManager_v1_15_R1.SelfContainer) InventoryCraftResult(net.minecraft.server.v1_15_R1.InventoryCraftResult)

Example 17 with Container

use of net.minecraft.server.v1_10_R1.Container in project PublicCrafters by BananaPuncher714.

the class CustomInventoryCrafting method splitStack.

@Override
public ItemStack splitStack(int i, int j) {
    ItemStack itemstack = ContainerUtil.a(items, i, j);
    if (!itemstack.isEmpty()) {
        for (Container container : containers) {
            container.a(this);
        }
    }
    // Update the armorstand grid
    display.update();
    return itemstack;
}
Also used : Container(net.minecraft.server.v1_16_R1.Container) SelfContainer(io.github.bananapuncher714.crafters.implementation.v1_16_R1.ContainerManager_v1_16_R1.SelfContainer) ItemStack(net.minecraft.server.v1_16_R1.ItemStack) CraftItemStack(org.bukkit.craftbukkit.v1_16_R1.inventory.CraftItemStack)

Example 18 with Container

use of net.minecraft.server.v1_10_R1.Container in project PublicCrafters by BananaPuncher714.

the class CustomContainerWorkbench method b.

/**
 * This might be for when the inventory closes?
 */
@Override
public void b(EntityHuman entity) {
    super.b(entity);
    // Make sure the craft inventory stops watching this container
    craftInventory.removeContainer(this);
    if (craftInventory.transaction.isEmpty() && PublicCrafters.getInstance().isDropItem()) {
        if (!world.isClientSide) {
            for (int i = 0; i < 9; i++) {
                ItemStack itemstack = craftInventory.splitWithoutUpdate(i);
                if (itemstack != null) {
                    entity.drop(itemstack, false);
                }
            }
            setCraftResult();
            craftInventory.update();
        }
    }
}
Also used : ItemStack(net.minecraft.server.v1_10_R1.ItemStack)

Example 19 with Container

use of net.minecraft.server.v1_10_R1.Container in project PublicCrafters by BananaPuncher714.

the class CustomInventoryCrafting method splitStack.

@Override
public ItemStack splitStack(int i, int j) {
    if (items[i] != null) {
        if (items[i].count <= j) {
            ItemStack itemstack = this.items[i];
            items[i] = null;
            for (Container container : containers) {
                container.a(this);
            }
            display.update();
            return itemstack;
        }
        ItemStack itemstack = items[i].cloneAndSubtract(j);
        if (this.items[i].count == 0) {
            this.items[i] = null;
        }
        for (Container container : containers) {
            container.a(this);
        }
        display.update();
        return itemstack;
    }
    for (Container container : containers) {
        container.a(this);
    }
    display.update();
    return null;
}
Also used : SelfContainer(io.github.bananapuncher714.crafters.implementation.v1_10_R1.ContainerManager_v1_10_R1.SelfContainer) Container(net.minecraft.server.v1_10_R1.Container) CraftItemStack(org.bukkit.craftbukkit.v1_10_R1.inventory.CraftItemStack) ItemStack(net.minecraft.server.v1_10_R1.ItemStack)

Example 20 with Container

use of net.minecraft.server.v1_10_R1.Container in project PublicCrafters by BananaPuncher714.

the class CustomTileEntityContainerWorkbench method createMenu.

/**
 * This is an ITileEntityContainer method that returns a new container for whatever tile entity
 */
@Override
public Container createMenu(int id, PlayerInventory inv, EntityHuman ent) {
    CustomInventoryCrafting crafting = manager.benches.get(bloc);
    if (crafting == null) {
        crafting = new CustomInventoryCrafting(bloc, manager, new SelfContainer(id), 3, 3);
        manager.put(bloc, crafting);
    }
    IInventory inventory = crafting.resultInventory;
    InventoryCraftResult result;
    if (inventory instanceof InventoryCraftResult || inventory == null) {
        result = new InventoryCraftResult();
        crafting.resultInventory = result;
    } else {
        result = (InventoryCraftResult) inventory;
    }
    Container container = new CustomContainerWorkbench(id, ent.getBukkitEntity(), bloc, crafting, result);
    crafting.addContainer(container);
    return container;
}
Also used : IInventory(net.minecraft.server.v1_14_R1.IInventory) ITileEntityContainer(net.minecraft.server.v1_14_R1.ITileEntityContainer) Container(net.minecraft.server.v1_14_R1.Container) SelfContainer(io.github.bananapuncher714.crafters.implementation.v1_14_R1.ContainerManager_v1_14_R1.SelfContainer) SelfContainer(io.github.bananapuncher714.crafters.implementation.v1_14_R1.ContainerManager_v1_14_R1.SelfContainer) InventoryCraftResult(net.minecraft.server.v1_14_R1.InventoryCraftResult)

Aggregations

Container (org.flyte.api.v1.Container)9 HashMap (java.util.HashMap)5 Test (org.junit.Test)5 Tasks (flyteidl.core.Tasks)4 SelfContainer (io.github.bananapuncher714.crafters.implementation.v1_11_R1.ContainerManager_v1_11_R1.SelfContainer)4 ArrayList (java.util.ArrayList)4 App (mesosphere.marathon.client.model.v2.App)4 Container (mesosphere.marathon.client.model.v2.Container)4 Docker (mesosphere.marathon.client.model.v2.Docker)4 HealthCheck (mesosphere.marathon.client.model.v2.HealthCheck)4 Container (net.minecraft.server.v1_11_R1.Container)4 Container (net.minecraft.server.v1_12_R1.Container)4 Container (net.minecraft.server.v1_16_R3.Container)4 Container (net.minecraft.server.v1_8_R3.Container)4 TaskTemplate (org.flyte.api.v1.TaskTemplate)4 Test (org.junit.jupiter.api.Test)4 Container (org.opendaylight.yang.gen.v1.urn.test.opendaylight.mdsal298.rev180129.Container)4 ContainerBuilder (org.opendaylight.yang.gen.v1.urn.test.opendaylight.mdsal298.rev180129.ContainerBuilder)4 TileEntityContainer (com.bgsoftware.wildchests.objects.containers.TileEntityContainer)3 SelfContainer (io.github.bananapuncher714.crafters.implementation.v1_10_R1.ContainerManager_v1_10_R1.SelfContainer)3