Importers and Exporters support covers
This commit is contained in:
@@ -40,12 +40,6 @@ public class CableNetworkNode extends NetworkNode implements ICoverable {
|
|||||||
super.read(tag);
|
super.read(tag);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void update() {
|
|
||||||
super.update();
|
|
||||||
//WorldUtils.updateBlock(world, pos);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public CompoundNBT write(CompoundNBT tag) {
|
public CompoundNBT write(CompoundNBT tag) {
|
||||||
tag.put("Cover", this.coverManager.writeToNbt());
|
tag.put("Cover", this.coverManager.writeToNbt());
|
||||||
|
|||||||
@@ -1,9 +1,11 @@
|
|||||||
package com.refinedmods.refinedstorage.apiimpl.network.node;
|
package com.refinedmods.refinedstorage.apiimpl.network.node;
|
||||||
|
|
||||||
import com.refinedmods.refinedstorage.RS;
|
import com.refinedmods.refinedstorage.RS;
|
||||||
|
import com.refinedmods.refinedstorage.api.network.node.ICoverable;
|
||||||
import com.refinedmods.refinedstorage.api.util.Action;
|
import com.refinedmods.refinedstorage.api.util.Action;
|
||||||
import com.refinedmods.refinedstorage.api.util.IComparer;
|
import com.refinedmods.refinedstorage.api.util.IComparer;
|
||||||
import com.refinedmods.refinedstorage.apiimpl.API;
|
import com.refinedmods.refinedstorage.apiimpl.API;
|
||||||
|
import com.refinedmods.refinedstorage.apiimpl.network.node.cover.CoverManager;
|
||||||
import com.refinedmods.refinedstorage.inventory.fluid.FluidInventory;
|
import com.refinedmods.refinedstorage.inventory.fluid.FluidInventory;
|
||||||
import com.refinedmods.refinedstorage.inventory.item.BaseItemHandler;
|
import com.refinedmods.refinedstorage.inventory.item.BaseItemHandler;
|
||||||
import com.refinedmods.refinedstorage.inventory.item.UpgradeItemHandler;
|
import com.refinedmods.refinedstorage.inventory.item.UpgradeItemHandler;
|
||||||
@@ -27,7 +29,7 @@ import net.minecraftforge.items.IItemHandler;
|
|||||||
import net.minecraftforge.items.IItemHandlerModifiable;
|
import net.minecraftforge.items.IItemHandlerModifiable;
|
||||||
import net.minecraftforge.items.ItemHandlerHelper;
|
import net.minecraftforge.items.ItemHandlerHelper;
|
||||||
|
|
||||||
public class ExporterNetworkNode extends NetworkNode implements IComparable, IType {
|
public class ExporterNetworkNode extends NetworkNode implements IComparable, IType, ICoverable {
|
||||||
public static final ResourceLocation ID = new ResourceLocation(RS.ID, "exporter");
|
public static final ResourceLocation ID = new ResourceLocation(RS.ID, "exporter");
|
||||||
|
|
||||||
private static final String NBT_COMPARE = "Compare";
|
private static final String NBT_COMPARE = "Compare";
|
||||||
@@ -72,8 +74,11 @@ public class ExporterNetworkNode extends NetworkNode implements IComparable, ITy
|
|||||||
|
|
||||||
private int filterSlot;
|
private int filterSlot;
|
||||||
|
|
||||||
|
private CoverManager coverManager;
|
||||||
|
|
||||||
public ExporterNetworkNode(World world, BlockPos pos) {
|
public ExporterNetworkNode(World world, BlockPos pos) {
|
||||||
super(world, pos);
|
super(world, pos);
|
||||||
|
this.coverManager = new CoverManager(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -244,9 +249,8 @@ public class ExporterNetworkNode extends NetworkNode implements IComparable, ITy
|
|||||||
@Override
|
@Override
|
||||||
public CompoundNBT write(CompoundNBT tag) {
|
public CompoundNBT write(CompoundNBT tag) {
|
||||||
super.write(tag);
|
super.write(tag);
|
||||||
|
tag.put("Cover", this.coverManager.writeToNbt());
|
||||||
StackUtils.writeItems(upgrades, 1, tag);
|
StackUtils.writeItems(upgrades, 1, tag);
|
||||||
|
|
||||||
return tag;
|
return tag;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -267,7 +271,7 @@ public class ExporterNetworkNode extends NetworkNode implements IComparable, ITy
|
|||||||
@Override
|
@Override
|
||||||
public void read(CompoundNBT tag) {
|
public void read(CompoundNBT tag) {
|
||||||
super.read(tag);
|
super.read(tag);
|
||||||
|
if (tag.contains("Cover")) this.coverManager.readFromNbt(tag.getCompound("Cover"));
|
||||||
StackUtils.readItems(upgrades, 1, tag);
|
StackUtils.readItems(upgrades, 1, tag);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -320,4 +324,9 @@ public class ExporterNetworkNode extends NetworkNode implements IComparable, ITy
|
|||||||
public FluidInventory getFluidFilters() {
|
public FluidInventory getFluidFilters() {
|
||||||
return fluidFilters;
|
return fluidFilters;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public CoverManager getCoverManager() {
|
||||||
|
return coverManager;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,8 +1,10 @@
|
|||||||
package com.refinedmods.refinedstorage.apiimpl.network.node;
|
package com.refinedmods.refinedstorage.apiimpl.network.node;
|
||||||
|
|
||||||
import com.refinedmods.refinedstorage.RS;
|
import com.refinedmods.refinedstorage.RS;
|
||||||
|
import com.refinedmods.refinedstorage.api.network.node.ICoverable;
|
||||||
import com.refinedmods.refinedstorage.api.util.Action;
|
import com.refinedmods.refinedstorage.api.util.Action;
|
||||||
import com.refinedmods.refinedstorage.api.util.IComparer;
|
import com.refinedmods.refinedstorage.api.util.IComparer;
|
||||||
|
import com.refinedmods.refinedstorage.apiimpl.network.node.cover.CoverManager;
|
||||||
import com.refinedmods.refinedstorage.inventory.fluid.FluidInventory;
|
import com.refinedmods.refinedstorage.inventory.fluid.FluidInventory;
|
||||||
import com.refinedmods.refinedstorage.inventory.item.BaseItemHandler;
|
import com.refinedmods.refinedstorage.inventory.item.BaseItemHandler;
|
||||||
import com.refinedmods.refinedstorage.inventory.item.UpgradeItemHandler;
|
import com.refinedmods.refinedstorage.inventory.item.UpgradeItemHandler;
|
||||||
@@ -28,7 +30,7 @@ import net.minecraftforge.fluids.capability.IFluidHandler;
|
|||||||
import net.minecraftforge.items.IItemHandler;
|
import net.minecraftforge.items.IItemHandler;
|
||||||
import net.minecraftforge.items.IItemHandlerModifiable;
|
import net.minecraftforge.items.IItemHandlerModifiable;
|
||||||
|
|
||||||
public class ImporterNetworkNode extends NetworkNode implements IComparable, IWhitelistBlacklist, IType {
|
public class ImporterNetworkNode extends NetworkNode implements IComparable, IWhitelistBlacklist, IType, ICoverable {
|
||||||
public static final ResourceLocation ID = new ResourceLocation(RS.ID, "importer");
|
public static final ResourceLocation ID = new ResourceLocation(RS.ID, "importer");
|
||||||
|
|
||||||
private static final String NBT_COMPARE = "Compare";
|
private static final String NBT_COMPARE = "Compare";
|
||||||
@@ -47,8 +49,11 @@ public class ImporterNetworkNode extends NetworkNode implements IComparable, IWh
|
|||||||
|
|
||||||
private int currentSlot;
|
private int currentSlot;
|
||||||
|
|
||||||
|
private CoverManager coverManager;
|
||||||
|
|
||||||
public ImporterNetworkNode(World world, BlockPos pos) {
|
public ImporterNetworkNode(World world, BlockPos pos) {
|
||||||
super(world, pos);
|
super(world, pos);
|
||||||
|
this.coverManager = new CoverManager(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -148,7 +153,7 @@ public class ImporterNetworkNode extends NetworkNode implements IComparable, IWh
|
|||||||
@Override
|
@Override
|
||||||
public void read(CompoundNBT tag) {
|
public void read(CompoundNBT tag) {
|
||||||
super.read(tag);
|
super.read(tag);
|
||||||
|
if (tag.contains("Cover")) this.coverManager.readFromNbt(tag.getCompound("Cover"));
|
||||||
StackUtils.readItems(upgrades, 1, tag);
|
StackUtils.readItems(upgrades, 1, tag);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -160,7 +165,7 @@ public class ImporterNetworkNode extends NetworkNode implements IComparable, IWh
|
|||||||
@Override
|
@Override
|
||||||
public CompoundNBT write(CompoundNBT tag) {
|
public CompoundNBT write(CompoundNBT tag) {
|
||||||
super.write(tag);
|
super.write(tag);
|
||||||
|
tag.put("Cover", this.coverManager.writeToNbt());
|
||||||
StackUtils.writeItems(upgrades, 1, tag);
|
StackUtils.writeItems(upgrades, 1, tag);
|
||||||
|
|
||||||
return tag;
|
return tag;
|
||||||
@@ -234,4 +239,9 @@ public class ImporterNetworkNode extends NetworkNode implements IComparable, IWh
|
|||||||
public FluidInventory getFluidFilters() {
|
public FluidInventory getFluidFilters() {
|
||||||
return fluidFilters;
|
return fluidFilters;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public CoverManager getCoverManager() {
|
||||||
|
return coverManager;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -69,15 +69,16 @@ public class ExporterBlock extends CableBlock {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public VoxelShape getShape(BlockState state, IBlockReader world, BlockPos pos, ISelectionContext ctx) {
|
public VoxelShape getShape(BlockState state, IBlockReader world, BlockPos pos, ISelectionContext ctx) {
|
||||||
return ShapeCache.getOrCreate(state, s -> {
|
return ConstantsCable.addCoverVoxelShapes(ShapeCache.getOrCreate(state, s -> {
|
||||||
VoxelShape shape = getCableShape(s);
|
VoxelShape shape = getCableShape(s);
|
||||||
|
|
||||||
shape = VoxelShapes.or(shape, getLineShape(s));
|
shape = VoxelShapes.or(shape, getLineShape(s));
|
||||||
|
|
||||||
return ConstantsCable.addCoverVoxelShapes(shape, world, pos);
|
return shape;
|
||||||
});
|
}), world, pos);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private VoxelShape getLineShape(BlockState state) {
|
private VoxelShape getLineShape(BlockState state) {
|
||||||
Direction direction = state.get(getDirection().getProperty());
|
Direction direction = state.get(getDirection().getProperty());
|
||||||
|
|
||||||
|
|||||||
@@ -69,13 +69,13 @@ public class ImporterBlock extends CableBlock {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public VoxelShape getShape(BlockState state, IBlockReader world, BlockPos pos, ISelectionContext ctx) {
|
public VoxelShape getShape(BlockState state, IBlockReader world, BlockPos pos, ISelectionContext ctx) {
|
||||||
return ShapeCache.getOrCreate(state, s -> {
|
return ConstantsCable.addCoverVoxelShapes(ShapeCache.getOrCreate(state, s -> {
|
||||||
VoxelShape shape = getCableShape(s);
|
VoxelShape shape = getCableShape(s);
|
||||||
|
|
||||||
shape = VoxelShapes.or(shape, getLineShape(s));
|
shape = VoxelShapes.or(shape, getLineShape(s));
|
||||||
|
|
||||||
return ConstantsCable.addCoverVoxelShapes(shape, world, pos);
|
return shape;
|
||||||
});
|
}), world, pos);
|
||||||
}
|
}
|
||||||
|
|
||||||
private VoxelShape getLineShape(BlockState state) {
|
private VoxelShape getLineShape(BlockState state) {
|
||||||
|
|||||||
@@ -112,6 +112,8 @@ public class ClientSetup {
|
|||||||
new ResourceLocation(RS.ID, "block/disks/leds")
|
new ResourceLocation(RS.ID, "block/disks/leds")
|
||||||
));
|
));
|
||||||
bakedModelOverrideRegistry.add(new ResourceLocation(RS.ID, "cable"), (base, registry) -> new BakedModelCableCover(base));
|
bakedModelOverrideRegistry.add(new ResourceLocation(RS.ID, "cable"), (base, registry) -> new BakedModelCableCover(base));
|
||||||
|
bakedModelOverrideRegistry.add(new ResourceLocation(RS.ID, "exporter"), (base, registry) -> new BakedModelCableCover(base));
|
||||||
|
bakedModelOverrideRegistry.add(new ResourceLocation(RS.ID, "importer"), (base, registry) -> new BakedModelCableCover(base));
|
||||||
bakedModelOverrideRegistry.add(new ResourceLocation(RS.ID, "cover"), (base, registry) -> new BakedModelCover(ItemStack.EMPTY, CoverType.NORMAL));
|
bakedModelOverrideRegistry.add(new ResourceLocation(RS.ID, "cover"), (base, registry) -> new BakedModelCover(ItemStack.EMPTY, CoverType.NORMAL));
|
||||||
bakedModelOverrideRegistry.add(new ResourceLocation(RS.ID, "hollow_cover"), (base, registry) -> new BakedModelCover(ItemStack.EMPTY, CoverType.HOLLOW));
|
bakedModelOverrideRegistry.add(new ResourceLocation(RS.ID, "hollow_cover"), (base, registry) -> new BakedModelCover(ItemStack.EMPTY, CoverType.HOLLOW));
|
||||||
|
|
||||||
|
|||||||
@@ -30,8 +30,10 @@ import java.util.HashMap;
|
|||||||
|
|
||||||
public class CableTile extends NetworkNodeTile<CableNetworkNode> {
|
public class CableTile extends NetworkNodeTile<CableNetworkNode> {
|
||||||
|
|
||||||
public static final TileDataParameter<CompoundNBT, CableTile> COVER_MANAGER = new TileDataParameter<>(DataSerializers.COMPOUND_NBT, new CompoundNBT(), t -> t.getNode().getCoverManager().writeToNbt(), (t, v) -> t.getNode().getCoverManager().readFromNbt(v), (initial, p) -> Minecraft.getInstance().enqueue(() -> {
|
public static final TileDataParameter<CompoundNBT, CableTile> COVER_MANAGER = new TileDataParameter<>(DataSerializers.COMPOUND_NBT, new CompoundNBT(),
|
||||||
|
t -> t.getNode().getCoverManager().writeToNbt(),
|
||||||
|
(t, v) -> t.getNode().getCoverManager().readFromNbt(v),
|
||||||
|
(initial, p) -> Minecraft.getInstance().enqueue(() -> {
|
||||||
}));
|
}));
|
||||||
|
|
||||||
static {
|
static {
|
||||||
|
|||||||
@@ -2,23 +2,43 @@ package com.refinedmods.refinedstorage.tile;
|
|||||||
|
|
||||||
import com.refinedmods.refinedstorage.RSTiles;
|
import com.refinedmods.refinedstorage.RSTiles;
|
||||||
import com.refinedmods.refinedstorage.apiimpl.network.node.ExporterNetworkNode;
|
import com.refinedmods.refinedstorage.apiimpl.network.node.ExporterNetworkNode;
|
||||||
|
import com.refinedmods.refinedstorage.apiimpl.network.node.cover.CoverManager;
|
||||||
import com.refinedmods.refinedstorage.tile.config.IComparable;
|
import com.refinedmods.refinedstorage.tile.config.IComparable;
|
||||||
import com.refinedmods.refinedstorage.tile.config.IType;
|
import com.refinedmods.refinedstorage.tile.config.IType;
|
||||||
|
import com.refinedmods.refinedstorage.tile.data.TileDataManager;
|
||||||
import com.refinedmods.refinedstorage.tile.data.TileDataParameter;
|
import com.refinedmods.refinedstorage.tile.data.TileDataParameter;
|
||||||
|
import com.refinedmods.refinedstorage.util.WorldUtils;
|
||||||
|
import net.minecraft.client.Minecraft;
|
||||||
|
import net.minecraft.nbt.CompoundNBT;
|
||||||
|
import net.minecraft.network.datasync.DataSerializers;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
|
import net.minecraftforge.client.model.data.IModelData;
|
||||||
|
import net.minecraftforge.client.model.data.ModelDataMap;
|
||||||
|
|
||||||
import javax.annotation.Nonnull;
|
import javax.annotation.Nonnull;
|
||||||
|
|
||||||
public class ExporterTile extends NetworkNodeTile<ExporterNetworkNode> {
|
public class ExporterTile extends NetworkNodeTile<ExporterNetworkNode> {
|
||||||
|
|
||||||
|
public static final TileDataParameter<CompoundNBT, ExporterTile> COVER_MANAGER = new TileDataParameter<>(DataSerializers.COMPOUND_NBT, new CompoundNBT(),
|
||||||
|
t -> t.getNode().getCoverManager().writeToNbt(),
|
||||||
|
(t, v) -> t.getNode().getCoverManager().readFromNbt(v),
|
||||||
|
(initial, p) -> Minecraft.getInstance().enqueue(() -> {
|
||||||
|
}));
|
||||||
|
|
||||||
public static final TileDataParameter<Integer, ExporterTile> COMPARE = IComparable.createParameter();
|
public static final TileDataParameter<Integer, ExporterTile> COMPARE = IComparable.createParameter();
|
||||||
public static final TileDataParameter<Integer, ExporterTile> TYPE = IType.createParameter();
|
public static final TileDataParameter<Integer, ExporterTile> TYPE = IType.createParameter();
|
||||||
|
|
||||||
|
static {
|
||||||
|
TileDataManager.registerParameter(COVER_MANAGER);
|
||||||
|
}
|
||||||
|
|
||||||
public ExporterTile() {
|
public ExporterTile() {
|
||||||
super(RSTiles.EXPORTER);
|
super(RSTiles.EXPORTER);
|
||||||
|
|
||||||
dataManager.addWatchedParameter(COMPARE);
|
dataManager.addWatchedParameter(COMPARE);
|
||||||
dataManager.addWatchedParameter(TYPE);
|
dataManager.addWatchedParameter(TYPE);
|
||||||
|
dataManager.addWatchedParameter(COVER_MANAGER);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -26,4 +46,29 @@ public class ExporterTile extends NetworkNodeTile<ExporterNetworkNode> {
|
|||||||
public ExporterNetworkNode createNode(World world, BlockPos pos) {
|
public ExporterNetworkNode createNode(World world, BlockPos pos) {
|
||||||
return new ExporterNetworkNode(world, pos);
|
return new ExporterNetworkNode(world, pos);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Nonnull
|
||||||
|
@Override
|
||||||
|
public IModelData getModelData() {
|
||||||
|
return new ModelDataMap.Builder().withInitial(CoverManager.PROPERTY, this.getNode().getCoverManager()).build();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public CompoundNBT writeUpdate(CompoundNBT tag) {
|
||||||
|
super.writeUpdate(tag);
|
||||||
|
tag.put("Covers", this.getNode().getCoverManager().writeToNbt());
|
||||||
|
|
||||||
|
return tag;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void readUpdate(CompoundNBT tag) {
|
||||||
|
super.readUpdate(tag);
|
||||||
|
|
||||||
|
this.getNode().getCoverManager().readFromNbt(tag.getCompound("Covers"));
|
||||||
|
|
||||||
|
requestModelDataUpdate();
|
||||||
|
|
||||||
|
WorldUtils.updateBlock(world, pos);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,12 +2,20 @@ package com.refinedmods.refinedstorage.tile;
|
|||||||
|
|
||||||
import com.refinedmods.refinedstorage.RSTiles;
|
import com.refinedmods.refinedstorage.RSTiles;
|
||||||
import com.refinedmods.refinedstorage.apiimpl.network.node.ImporterNetworkNode;
|
import com.refinedmods.refinedstorage.apiimpl.network.node.ImporterNetworkNode;
|
||||||
|
import com.refinedmods.refinedstorage.apiimpl.network.node.cover.CoverManager;
|
||||||
import com.refinedmods.refinedstorage.tile.config.IComparable;
|
import com.refinedmods.refinedstorage.tile.config.IComparable;
|
||||||
import com.refinedmods.refinedstorage.tile.config.IType;
|
import com.refinedmods.refinedstorage.tile.config.IType;
|
||||||
import com.refinedmods.refinedstorage.tile.config.IWhitelistBlacklist;
|
import com.refinedmods.refinedstorage.tile.config.IWhitelistBlacklist;
|
||||||
|
import com.refinedmods.refinedstorage.tile.data.TileDataManager;
|
||||||
import com.refinedmods.refinedstorage.tile.data.TileDataParameter;
|
import com.refinedmods.refinedstorage.tile.data.TileDataParameter;
|
||||||
|
import com.refinedmods.refinedstorage.util.WorldUtils;
|
||||||
|
import net.minecraft.client.Minecraft;
|
||||||
|
import net.minecraft.nbt.CompoundNBT;
|
||||||
|
import net.minecraft.network.datasync.DataSerializers;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
|
import net.minecraftforge.client.model.data.IModelData;
|
||||||
|
import net.minecraftforge.client.model.data.ModelDataMap;
|
||||||
|
|
||||||
import javax.annotation.Nonnull;
|
import javax.annotation.Nonnull;
|
||||||
|
|
||||||
@@ -16,12 +24,24 @@ public class ImporterTile extends NetworkNodeTile<ImporterNetworkNode> {
|
|||||||
public static final TileDataParameter<Integer, ImporterTile> WHITELIST_BLACKLIST = IWhitelistBlacklist.createParameter();
|
public static final TileDataParameter<Integer, ImporterTile> WHITELIST_BLACKLIST = IWhitelistBlacklist.createParameter();
|
||||||
public static final TileDataParameter<Integer, ImporterTile> TYPE = IType.createParameter();
|
public static final TileDataParameter<Integer, ImporterTile> TYPE = IType.createParameter();
|
||||||
|
|
||||||
|
public static final TileDataParameter<CompoundNBT, ImporterTile> COVER_MANAGER = new TileDataParameter<>(DataSerializers.COMPOUND_NBT, new CompoundNBT(),
|
||||||
|
t -> t.getNode().getCoverManager().writeToNbt(),
|
||||||
|
(t, v) -> t.getNode().getCoverManager().readFromNbt(v),
|
||||||
|
(initial, p) -> Minecraft.getInstance().enqueue(() -> {
|
||||||
|
}));
|
||||||
|
|
||||||
|
static {
|
||||||
|
TileDataManager.registerParameter(COVER_MANAGER);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public ImporterTile() {
|
public ImporterTile() {
|
||||||
super(RSTiles.IMPORTER);
|
super(RSTiles.IMPORTER);
|
||||||
|
|
||||||
dataManager.addWatchedParameter(COMPARE);
|
dataManager.addWatchedParameter(COMPARE);
|
||||||
dataManager.addWatchedParameter(WHITELIST_BLACKLIST);
|
dataManager.addWatchedParameter(WHITELIST_BLACKLIST);
|
||||||
dataManager.addWatchedParameter(TYPE);
|
dataManager.addWatchedParameter(TYPE);
|
||||||
|
dataManager.addWatchedParameter(COVER_MANAGER);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -29,4 +49,30 @@ public class ImporterTile extends NetworkNodeTile<ImporterNetworkNode> {
|
|||||||
public ImporterNetworkNode createNode(World world, BlockPos pos) {
|
public ImporterNetworkNode createNode(World world, BlockPos pos) {
|
||||||
return new ImporterNetworkNode(world, pos);
|
return new ImporterNetworkNode(world, pos);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Nonnull
|
||||||
|
@Override
|
||||||
|
public IModelData getModelData() {
|
||||||
|
return new ModelDataMap.Builder().withInitial(CoverManager.PROPERTY, this.getNode().getCoverManager()).build();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public CompoundNBT writeUpdate(CompoundNBT tag) {
|
||||||
|
super.writeUpdate(tag);
|
||||||
|
tag.put("Covers", this.getNode().getCoverManager().writeToNbt());
|
||||||
|
|
||||||
|
return tag;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void readUpdate(CompoundNBT tag) {
|
||||||
|
super.readUpdate(tag);
|
||||||
|
|
||||||
|
this.getNode().getCoverManager().readFromNbt(tag.getCompound("Covers"));
|
||||||
|
|
||||||
|
requestModelDataUpdate();
|
||||||
|
|
||||||
|
WorldUtils.updateBlock(world, pos);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user