summaryrefslogtreecommitdiffstats
path: root/src/main/java/org/bukkit/craftbukkit/block/CraftContainer.java
blob: 6aad6663dbebe3465f6957ff84671ee9f8239d4f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
package org.bukkit.craftbukkit.block;

import net.minecraft.server.ChestLock;
import net.minecraft.server.ITileInventory;
import net.minecraft.server.TileEntityContainer;
import org.bukkit.Material;
import org.bukkit.block.Block;
import org.bukkit.block.Lockable;
import org.bukkit.craftbukkit.CraftWorld;

public class CraftContainer extends CraftBlockState implements Lockable {

    private final ITileInventory container;

    public CraftContainer(Block block) {
        super(block);

        container = (TileEntityContainer) ((CraftWorld) block.getWorld()).getTileEntityAt(block.getX(), block.getY(), block.getZ());
    }

    public CraftContainer(final Material material, ITileInventory tileEntity) {
        super(material);

        container = tileEntity;
    }

    @Override
    public boolean isLocked() {
        return container.isLocked();
    }

    @Override
    public String getLock() {
        return container.getLock().getKey();
    }

    @Override
    public void setLock(String key) {
        container.setLock(key == null ? ChestLock.a : new ChestLock(key));
    }
}