Every tiledataparam needs a default value

This commit is contained in:
Raoul Van den Berge
2016-08-08 18:45:36 +02:00
parent 28cf57eb6b
commit 776c56f087
14 changed files with 34 additions and 38 deletions

View File

@@ -56,28 +56,28 @@ import java.util.*;
public class TileController extends TileBase implements INetworkMaster, IEnergyReceiver, IRedstoneConfigurable {
public static final TileDataParameter<Integer> REDSTONE_MODE = RedstoneMode.createParameter();
public static final TileDataParameter<Integer> ENERGY_USAGE = TileDataManager.createParameter(DataSerializers.VARINT, new ITileDataProducer<Integer, TileController>() {
public static final TileDataParameter<Integer> ENERGY_USAGE = TileDataManager.createParameter(DataSerializers.VARINT, 0, new ITileDataProducer<Integer, TileController>() {
@Override
public Integer getValue(TileController tile) {
return tile.getEnergyUsage();
}
});
public static final TileDataParameter<Integer> ENERGY_STORED = TileDataManager.createParameter(DataSerializers.VARINT, new ITileDataProducer<Integer, TileController>() {
public static final TileDataParameter<Integer> ENERGY_STORED = TileDataManager.createParameter(DataSerializers.VARINT, 0, new ITileDataProducer<Integer, TileController>() {
@Override
public Integer getValue(TileController tile) {
return tile.getEnergy().getEnergyStored();
}
});
public static final TileDataParameter<Integer> ENERGY_CAPACITY = TileDataManager.createParameter(DataSerializers.VARINT, new ITileDataProducer<Integer, TileController>() {
public static final TileDataParameter<Integer> ENERGY_CAPACITY = TileDataManager.createParameter(DataSerializers.VARINT, 0, new ITileDataProducer<Integer, TileController>() {
@Override
public Integer getValue(TileController tile) {
return tile.getEnergy().getMaxEnergyStored();
}
});
public static final TileDataParameter<List<ClientNode>> NODES = TileDataManager.createParameter(RefinedStorageSerializers.CLIENT_NODE_SERIALIZER, new ITileDataProducer<List<ClientNode>, TileController>() {
public static final TileDataParameter<List<ClientNode>> NODES = TileDataManager.createParameter(RefinedStorageSerializers.CLIENT_NODE_SERIALIZER, new ArrayList<>(), new ITileDataProducer<List<ClientNode>, TileController>() {
@Override
public List<ClientNode> getValue(TileController tile) {
List<ClientNode> nodes = new ArrayList<>();
@@ -110,7 +110,7 @@ public class TileController extends TileBase implements INetworkMaster, IEnergyR
return nodes;
}
}, new ArrayList<>());
});
public static final String NBT_ENERGY = "Energy";
public static final String NBT_ENERGY_CAPACITY = "EnergyCapacity";

View File

@@ -12,7 +12,7 @@ import java.util.List;
import java.util.stream.Collectors;
public class TileCraftingMonitor extends TileNode {
public static final TileDataParameter<List<ClientCraftingTask>> TASKS = TileDataManager.createParameter(RefinedStorageSerializers.CLIENT_CRAFTING_TASK_SERIALIZER, new ITileDataProducer<List<ClientCraftingTask>, TileCraftingMonitor>() {
public static final TileDataParameter<List<ClientCraftingTask>> TASKS = TileDataManager.createParameter(RefinedStorageSerializers.CLIENT_CRAFTING_TASK_SERIALIZER, new ArrayList<>(), new ITileDataProducer<List<ClientCraftingTask>, TileCraftingMonitor>() {
@Override
public List<ClientCraftingTask> getValue(TileCraftingMonitor tile) {
if (tile.connected) {
@@ -26,7 +26,7 @@ public class TileCraftingMonitor extends TileNode {
return Collections.emptyList();
}
}
}, new ArrayList<>());
});
public TileCraftingMonitor() {
dataManager.addParameter(TASKS);

View File

@@ -23,7 +23,7 @@ import refinedstorage.tile.data.TileDataParameter;
public class TileDetector extends TileNode implements IComparable {
public static final TileDataParameter<Integer> COMPARE = IComparable.createParameter();
public static final TileDataParameter<Integer> MODE = TileDataManager.createParameter(DataSerializers.VARINT, new ITileDataProducer<Integer, TileDetector>() {
public static final TileDataParameter<Integer> MODE = TileDataManager.createParameter(DataSerializers.VARINT, 0, new ITileDataProducer<Integer, TileDetector>() {
@Override
public Integer getValue(TileDetector tile) {
return tile.mode;
@@ -39,7 +39,7 @@ public class TileDetector extends TileNode implements IComparable {
}
});
public static final TileDataParameter<Integer> AMOUNT = TileDataManager.createParameter(DataSerializers.VARINT, new ITileDataProducer<Integer, TileDetector>() {
public static final TileDataParameter<Integer> AMOUNT = TileDataManager.createParameter(DataSerializers.VARINT, 0, new ITileDataProducer<Integer, TileDetector>() {
@Override
public Integer getValue(TileDetector tile) {
return tile.amount;
@@ -59,7 +59,7 @@ public class TileDetector extends TileNode implements IComparable {
((GuiDetector) gui).AMOUNT.setText(String.valueOf(parameter.getValue()));
}
}
}, 0);
});
private static final int SPEED = 5;

View File

@@ -17,21 +17,21 @@ import refinedstorage.tile.data.TileDataManager;
import refinedstorage.tile.data.TileDataParameter;
public class TileNetworkTransmitter extends TileNode {
public static final TileDataParameter<Integer> DISTANCE = TileDataManager.createParameter(DataSerializers.VARINT, new ITileDataProducer<Integer, TileNetworkTransmitter>() {
public static final TileDataParameter<Integer> DISTANCE = TileDataManager.createParameter(DataSerializers.VARINT, 0, new ITileDataProducer<Integer, TileNetworkTransmitter>() {
@Override
public Integer getValue(TileNetworkTransmitter tile) {
return (tile.receiver != null && tile.isSameDimension()) ? tile.getDistance() : -1;
}
});
public static final TileDataParameter<Integer> RECEIVER_DIMENSION = TileDataManager.createParameter(DataSerializers.VARINT, new ITileDataProducer<Integer, TileNetworkTransmitter>() {
public static final TileDataParameter<Integer> RECEIVER_DIMENSION = TileDataManager.createParameter(DataSerializers.VARINT, 0, new ITileDataProducer<Integer, TileNetworkTransmitter>() {
@Override
public Integer getValue(TileNetworkTransmitter tile) {
return tile.receiverDimension;
}
});
public static final TileDataParameter<Boolean> RECEIVER_DIMENSION_SUPPORTED = TileDataManager.createParameter(DataSerializers.BOOLEAN, new ITileDataProducer<Boolean, TileNetworkTransmitter>() {
public static final TileDataParameter<Boolean> RECEIVER_DIMENSION_SUPPORTED = TileDataManager.createParameter(DataSerializers.BOOLEAN, false, new ITileDataProducer<Boolean, TileNetworkTransmitter>() {
@Override
public Boolean getValue(TileNetworkTransmitter tile) {
return tile.isDimensionSupported();

View File

@@ -21,14 +21,14 @@ import refinedstorage.tile.data.TileDataManager;
import refinedstorage.tile.data.TileDataParameter;
public class TileSolderer extends TileNode {
public static final TileDataParameter<Integer> DURATION = TileDataManager.createParameter(DataSerializers.VARINT, new ITileDataProducer<Integer, TileSolderer>() {
public static final TileDataParameter<Integer> DURATION = TileDataManager.createParameter(DataSerializers.VARINT, 0, new ITileDataProducer<Integer, TileSolderer>() {
@Override
public Integer getValue(TileSolderer tile) {
return tile.recipe != null ? tile.recipe.getDuration() : 0;
}
});
public static final TileDataParameter<Integer> PROGRESS = TileDataManager.createParameter(DataSerializers.VARINT, new ITileDataProducer<Integer, TileSolderer>() {
public static final TileDataParameter<Integer> PROGRESS = TileDataManager.createParameter(DataSerializers.VARINT, 0, new ITileDataProducer<Integer, TileSolderer>() {
@Override
public Integer getValue(TileSolderer tile) {
return tile.progress;

View File

@@ -27,7 +27,7 @@ public class TileStorage extends TileNode implements IStorageProvider, IStorageG
public static final TileDataParameter<Integer> PRIORITY = IPrioritizable.createParameter();
public static final TileDataParameter<Integer> COMPARE = IComparable.createParameter();
public static final TileDataParameter<Integer> MODE = IFilterable.createParameter();
public static final TileDataParameter<Integer> STORED = TileDataManager.createParameter(DataSerializers.VARINT, new ITileDataProducer<Integer, TileStorage>() {
public static final TileDataParameter<Integer> STORED = TileDataManager.createParameter(DataSerializers.VARINT, 0, new ITileDataProducer<Integer, TileStorage>() {
@Override
public Integer getValue(TileStorage tile) {
return NBTStorage.getStoredFromNBT(tile.storageTag);

View File

@@ -17,7 +17,7 @@ import refinedstorage.tile.data.TileDataManager;
import refinedstorage.tile.data.TileDataParameter;
public class TileWirelessTransmitter extends TileNode implements IWirelessTransmitter {
public static final TileDataParameter<Integer> RANGE = TileDataManager.createParameter(DataSerializers.VARINT, new ITileDataProducer<Integer, TileWirelessTransmitter>() {
public static final TileDataParameter<Integer> RANGE = TileDataManager.createParameter(DataSerializers.VARINT, 0, new ITileDataProducer<Integer, TileWirelessTransmitter>() {
@Override
public Integer getValue(TileWirelessTransmitter tile) {
return tile.getRange();

View File

@@ -9,7 +9,7 @@ import refinedstorage.tile.data.TileDataParameter;
public interface IComparable {
static <T extends TileEntity> TileDataParameter<Integer> createParameter() {
return TileDataManager.createParameter(DataSerializers.VARINT, new ITileDataProducer<Integer, T>() {
return TileDataManager.createParameter(DataSerializers.VARINT, 0, new ITileDataProducer<Integer, T>() {
@Override
public Integer getValue(T tile) {
return ((IComparable) tile).getCompare();

View File

@@ -15,7 +15,7 @@ public interface IFilterable {
int BLACKLIST = 1;
static <T extends TileEntity> TileDataParameter<Integer> createParameter() {
return TileDataManager.createParameter(DataSerializers.VARINT, new ITileDataProducer<Integer, T>() {
return TileDataManager.createParameter(DataSerializers.VARINT, 0, new ITileDataProducer<Integer, T>() {
@Override
public Integer getValue(T tile) {
return ((IFilterable) tile).getMode();

View File

@@ -13,7 +13,7 @@ import refinedstorage.tile.data.TileDataParameter;
public interface IPrioritizable {
static <T extends TileEntity> TileDataParameter<Integer> createParameter() {
return TileDataManager.createParameter(DataSerializers.VARINT, new ITileDataProducer<Integer, T>() {
return TileDataManager.createParameter(DataSerializers.VARINT, 0, new ITileDataProducer<Integer, T>() {
@Override
public Integer getValue(T tile) {
return ((IPrioritizable) tile).getPriority();
@@ -27,7 +27,7 @@ public interface IPrioritizable {
if (FMLCommonHandler.instance().getEffectiveSide() == Side.CLIENT && Minecraft.getMinecraft().currentScreen instanceof GuiStorage) {
((GuiStorage) Minecraft.getMinecraft().currentScreen).updatePriority(parameter.getValue());
}
}, 0);
});
}
int getPriority();

View File

@@ -32,7 +32,7 @@ public enum RedstoneMode {
}
public static <T extends TileEntity> TileDataParameter<Integer> createParameter() {
return TileDataManager.createParameter(DataSerializers.VARINT, new ITileDataProducer<Integer, T>() {
return TileDataManager.createParameter(DataSerializers.VARINT, 0, new ITileDataProducer<Integer, T>() {
@Override
public Integer getValue(T tile) {
return ((IRedstoneConfigurable) tile).getRedstoneMode().ordinal();

View File

@@ -25,19 +25,15 @@ public class TileDataManager {
private List<TileDataParameter> watchedParameters = new ArrayList<>();
private List<Object> watchedParametersCache = new ArrayList<>();
public static <T> TileDataParameter<T> createParameter(DataSerializer<T> serializer, ITileDataProducer producer) {
return createParameter(serializer, producer, null, null, null);
public static <T> TileDataParameter<T> createParameter(DataSerializer<T> serializer, T defaultValue, ITileDataProducer producer) {
return createParameter(serializer, defaultValue, producer);
}
public static <T> TileDataParameter<T> createParameter(DataSerializer<T> serializer, ITileDataProducer producer, T defaultValue) {
return createParameter(serializer, producer, null, null, defaultValue);
public static <T> TileDataParameter<T> createParameter(DataSerializer<T> serializer, T defaultValue, ITileDataProducer producer, ITileDataConsumer consumer) {
return createParameter(serializer, defaultValue, producer, consumer);
}
public static <T> TileDataParameter<T> createParameter(DataSerializer<T> serializer, ITileDataProducer producer, ITileDataConsumer consumer) {
return createParameter(serializer, producer, consumer, null, null);
}
public static <T> TileDataParameter<T> createParameter(DataSerializer<T> serializer, ITileDataProducer producer, ITileDataConsumer consumer, ITileDataListener<T> listener, T defaultValue) {
public static <T> TileDataParameter<T> createParameter(DataSerializer<T> serializer, T defaultValue, ITileDataProducer producer, ITileDataConsumer consumer, ITileDataListener<T> listener) {
TileDataParameter<T> parameter = new TileDataParameter<>(PARAMETER_ID++, defaultValue, serializer, producer, consumer, listener);
PARAMETER_MAP.put(parameter.getId(), parameter);

View File

@@ -30,14 +30,14 @@ public class TileExternalStorage extends TileMultipartNode implements IStoragePr
public static final TileDataParameter<Integer> COMPARE = IComparable.createParameter();
public static final TileDataParameter<Integer> MODE = IFilterable.createParameter();
public static final TileDataParameter<Integer> STORED = TileDataManager.createParameter(DataSerializers.VARINT, new ITileDataProducer<Integer, TileExternalStorage>() {
public static final TileDataParameter<Integer> STORED = TileDataManager.createParameter(DataSerializers.VARINT, 0, new ITileDataProducer<Integer, TileExternalStorage>() {
@Override
public Integer getValue(TileExternalStorage tile) {
return tile.getStored();
}
});
public static final TileDataParameter<Integer> CAPACITY = TileDataManager.createParameter(DataSerializers.VARINT, new ITileDataProducer<Integer, TileExternalStorage>() {
public static final TileDataParameter<Integer> CAPACITY = TileDataManager.createParameter(DataSerializers.VARINT, 0, new ITileDataProducer<Integer, TileExternalStorage>() {
@Override
public Integer getValue(TileExternalStorage tile) {
return tile.getCapacity();

View File

@@ -39,7 +39,7 @@ import java.util.ArrayList;
import java.util.List;
public class TileGrid extends TileNode implements IGrid {
public static final TileDataParameter<Integer> VIEW_TYPE = TileDataManager.createParameter(DataSerializers.VARINT, new ITileDataProducer<Integer, TileGrid>() {
public static final TileDataParameter<Integer> VIEW_TYPE = TileDataManager.createParameter(DataSerializers.VARINT, 0, new ITileDataProducer<Integer, TileGrid>() {
@Override
public Integer getValue(TileGrid tile) {
return tile.viewType;
@@ -55,7 +55,7 @@ public class TileGrid extends TileNode implements IGrid {
}
});
public static final TileDataParameter<Integer> SORTING_DIRECTION = TileDataManager.createParameter(DataSerializers.VARINT, new ITileDataProducer<Integer, TileGrid>() {
public static final TileDataParameter<Integer> SORTING_DIRECTION = TileDataManager.createParameter(DataSerializers.VARINT, 0, new ITileDataProducer<Integer, TileGrid>() {
@Override
public Integer getValue(TileGrid tile) {
return tile.sortingDirection;
@@ -71,7 +71,7 @@ public class TileGrid extends TileNode implements IGrid {
}
});
public static final TileDataParameter<Integer> SORTING_TYPE = TileDataManager.createParameter(DataSerializers.VARINT, new ITileDataProducer<Integer, TileGrid>() {
public static final TileDataParameter<Integer> SORTING_TYPE = TileDataManager.createParameter(DataSerializers.VARINT, 0, new ITileDataProducer<Integer, TileGrid>() {
@Override
public Integer getValue(TileGrid tile) {
return tile.sortingType;
@@ -87,7 +87,7 @@ public class TileGrid extends TileNode implements IGrid {
}
});
public static final TileDataParameter<Integer> SEARCH_BOX_MODE = TileDataManager.createParameter(DataSerializers.VARINT, new ITileDataProducer<Integer, TileGrid>() {
public static final TileDataParameter<Integer> SEARCH_BOX_MODE = TileDataManager.createParameter(DataSerializers.VARINT, 0, new ITileDataProducer<Integer, TileGrid>() {
@Override
public Integer getValue(TileGrid tile) {
return tile.searchBoxMode;
@@ -105,7 +105,7 @@ public class TileGrid extends TileNode implements IGrid {
if (FMLCommonHandler.instance().getEffectiveSide() == Side.CLIENT && Minecraft.getMinecraft().currentScreen instanceof GuiGrid) {
((GuiGrid) Minecraft.getMinecraft().currentScreen).updateSearchFieldFocus(parameter.getValue());
}
}, 0);
});
public static final String NBT_VIEW_TYPE = "ViewType";
public static final String NBT_SORTING_DIRECTION = "SortingDirection";