geforkt von Mirrors/Paper
SPIGOT-2706: Implement support for Lock NBT Tag
Containers may now implement the Lockable interface. By: Senmori <thesenmori@gmail.com>
Dieser Commit ist enthalten in:
Ursprung
5945e37165
Commit
a05a1330d3
@ -9,7 +9,7 @@ import org.bukkit.potion.PotionEffectType;
|
||||
/**
|
||||
* Represents a beacon.
|
||||
*/
|
||||
public interface Beacon extends BlockState, InventoryHolder {
|
||||
public interface Beacon extends BlockState, InventoryHolder, Lockable {
|
||||
|
||||
/**
|
||||
* Returns the list of players within the beacon's range of effect.
|
||||
|
@ -6,7 +6,7 @@ import org.bukkit.inventory.InventoryHolder;
|
||||
/**
|
||||
* Represents a brewing stand.
|
||||
*/
|
||||
public interface BrewingStand extends BlockState, InventoryHolder {
|
||||
public interface BrewingStand extends BlockState, InventoryHolder, Lockable {
|
||||
|
||||
/**
|
||||
* How much time is left in the brewing cycle
|
||||
|
@ -6,7 +6,7 @@ import org.bukkit.inventory.InventoryHolder;
|
||||
/**
|
||||
* Represents a chest.
|
||||
*/
|
||||
public interface Chest extends BlockState, InventoryHolder {
|
||||
public interface Chest extends BlockState, InventoryHolder, Lockable {
|
||||
|
||||
/**
|
||||
* Returns the chest's inventory. If this is a double chest, it returns
|
||||
|
@ -6,7 +6,7 @@ import org.bukkit.projectiles.BlockProjectileSource;
|
||||
/**
|
||||
* Represents a dispenser.
|
||||
*/
|
||||
public interface Dispenser extends BlockState, InventoryHolder {
|
||||
public interface Dispenser extends BlockState, InventoryHolder, Lockable {
|
||||
|
||||
/**
|
||||
* Gets the BlockProjectileSource object for this dispenser.
|
||||
|
@ -5,7 +5,7 @@ import org.bukkit.inventory.InventoryHolder;
|
||||
/**
|
||||
* Represents a dropper.
|
||||
*/
|
||||
public interface Dropper extends BlockState, InventoryHolder {
|
||||
public interface Dropper extends BlockState, InventoryHolder, Lockable {
|
||||
/**
|
||||
* Tries to drop a randomly selected item from the Dropper's inventory,
|
||||
* following the normal behavior of a Dropper.
|
||||
|
@ -6,7 +6,7 @@ import org.bukkit.inventory.InventoryHolder;
|
||||
/**
|
||||
* Represents a furnace.
|
||||
*/
|
||||
public interface Furnace extends BlockState, InventoryHolder {
|
||||
public interface Furnace extends BlockState, InventoryHolder, Lockable {
|
||||
|
||||
/**
|
||||
* Get burn time.
|
||||
|
@ -5,6 +5,6 @@ import org.bukkit.inventory.InventoryHolder;
|
||||
/**
|
||||
* Represents a hopper.
|
||||
*/
|
||||
public interface Hopper extends BlockState, InventoryHolder {
|
||||
public interface Hopper extends BlockState, InventoryHolder, Lockable {
|
||||
|
||||
}
|
||||
|
31
paper-api/src/main/java/org/bukkit/block/Lockable.java
Normale Datei
31
paper-api/src/main/java/org/bukkit/block/Lockable.java
Normale Datei
@ -0,0 +1,31 @@
|
||||
package org.bukkit.block;
|
||||
|
||||
/**
|
||||
* Represents a block (usually a container) that may be locked. When a lock is
|
||||
* active an item with a name corresponding to the key will be required to open
|
||||
* this block.
|
||||
*/
|
||||
public interface Lockable {
|
||||
|
||||
/**
|
||||
* Checks if the container has a valid (non empty) key.
|
||||
*
|
||||
* @return true if the key is valid.
|
||||
*/
|
||||
boolean isLocked();
|
||||
|
||||
/**
|
||||
* Gets the key needed to access the container.
|
||||
*
|
||||
* @return the key needed.
|
||||
*/
|
||||
String getLock();
|
||||
|
||||
/**
|
||||
* Sets the key required to access this container. Set to null (or empty
|
||||
* string) to remove key.
|
||||
*
|
||||
* @param key the key required to access the container.
|
||||
*/
|
||||
void setLock(String key);
|
||||
}
|
Laden…
In neuem Issue referenzieren
Einen Benutzer sperren