whitelist / blacklist on external storage and storage block
This commit is contained in:
@@ -19,11 +19,12 @@ import storagecraft.storage.NBTStorage;
|
||||
import storagecraft.storage.StorageItem;
|
||||
import storagecraft.util.InventoryUtils;
|
||||
|
||||
public class TileStorage extends TileMachine implements IStorageProvider, IStorage, IStorageGui, ICompareSetting
|
||||
public class TileStorage extends TileMachine implements IStorageProvider, IStorage, IStorageGui, ICompareSetting, IWhitelistBlacklistSetting
|
||||
{
|
||||
public static final String NBT_STORAGE = "Storage";
|
||||
public static final String NBT_PRIORITY = "Priority";
|
||||
public static final String NBT_COMPARE = "Compare";
|
||||
public static final String NBT_MODE = "Mode";
|
||||
|
||||
private InventorySimple inventory = new InventorySimple("storage", 9);
|
||||
|
||||
@@ -31,6 +32,7 @@ public class TileStorage extends TileMachine implements IStorageProvider, IStora
|
||||
|
||||
private int priority = 0;
|
||||
private int compare = 0;
|
||||
private int mode = 0;
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
private int stored;
|
||||
@@ -73,6 +75,11 @@ public class TileStorage extends TileMachine implements IStorageProvider, IStora
|
||||
{
|
||||
compare = nbt.getInteger(NBT_COMPARE);
|
||||
}
|
||||
|
||||
if (nbt.hasKey(NBT_MODE))
|
||||
{
|
||||
mode = nbt.getInteger(NBT_MODE);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -85,6 +92,7 @@ public class TileStorage extends TileMachine implements IStorageProvider, IStora
|
||||
nbt.setTag(NBT_STORAGE, tag);
|
||||
nbt.setInteger(NBT_PRIORITY, priority);
|
||||
nbt.setInteger(NBT_COMPARE, compare);
|
||||
nbt.setInteger(NBT_MODE, mode);
|
||||
}
|
||||
|
||||
public EnumStorageType getType()
|
||||
@@ -100,6 +108,7 @@ public class TileStorage extends TileMachine implements IStorageProvider, IStora
|
||||
buf.writeInt(NBTStorage.getStored(tag));
|
||||
buf.writeInt(priority);
|
||||
buf.writeInt(compare);
|
||||
buf.writeInt(mode);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -110,6 +119,7 @@ public class TileStorage extends TileMachine implements IStorageProvider, IStora
|
||||
stored = buf.readInt();
|
||||
priority = buf.readInt();
|
||||
compare = buf.readInt();
|
||||
mode = buf.readInt();
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -156,6 +166,30 @@ public class TileStorage extends TileMachine implements IStorageProvider, IStora
|
||||
this.compare = compare;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isWhitelist()
|
||||
{
|
||||
return mode == 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isBlacklist()
|
||||
{
|
||||
return mode == 1;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setToWhitelist()
|
||||
{
|
||||
this.mode = 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setToBlacklist()
|
||||
{
|
||||
this.mode = 1;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getName()
|
||||
{
|
||||
@@ -180,6 +214,12 @@ public class TileStorage extends TileMachine implements IStorageProvider, IStora
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public IWhitelistBlacklistSetting getWhitelistBlacklistSetting()
|
||||
{
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public IPriorityHandler getPriorityHandler()
|
||||
{
|
||||
|
Reference in New Issue
Block a user