diff --git a/src/main/java/com/novamachina/exnihilosequentia/common/tileentity/barrel/MobSpawnBarrelMode.java b/src/main/java/com/novamachina/exnihilosequentia/common/tileentity/barrel/MobSpawnBarrelMode.java index 96c20eb70..3d3a6cfec 100644 --- a/src/main/java/com/novamachina/exnihilosequentia/common/tileentity/barrel/MobSpawnBarrelMode.java +++ b/src/main/java/com/novamachina/exnihilosequentia/common/tileentity/barrel/MobSpawnBarrelMode.java @@ -109,7 +109,7 @@ protected void spawnParticle(BarrelTile barrelTile) { public List getWailaInfo(BarrelTile barrelTile) { List info = new ArrayList<>(); - info.add(new TranslationTextComponent("waila.barrel.progress", StringUtils.formatPercent((float)currentProgress / (Config.SECONDS_TO_SPAWN.get() * 20)))); + info.add(new TranslationTextComponent("waila.progress", StringUtils.formatPercent((float)currentProgress / (Config.SECONDS_TO_SPAWN.get() * 20)))); return info; } diff --git a/src/main/java/com/novamachina/exnihilosequentia/common/tileentity/barrel/compost/CompostBarrelMode.java b/src/main/java/com/novamachina/exnihilosequentia/common/tileentity/barrel/compost/CompostBarrelMode.java index 79cbdd264..10bd399fe 100644 --- a/src/main/java/com/novamachina/exnihilosequentia/common/tileentity/barrel/compost/CompostBarrelMode.java +++ b/src/main/java/com/novamachina/exnihilosequentia/common/tileentity/barrel/compost/CompostBarrelMode.java @@ -104,7 +104,7 @@ public List getWailaInfo(BarrelTile barrelTile) { if(currentProgress <= 0) { info.add(new TranslationTextComponent("waila.barrel.solidAmount", barrelTile.getSolidAmount(), BarrelTile.MAX_SOLID_AMOUNT)); } else { - info.add(new TranslationTextComponent("waila.barrel.progress", StringUtils.formatPercent((float)currentProgress / (Config.SECONDS_TO_COMPOST.get() * 20)))); + info.add(new TranslationTextComponent("waila.progress", StringUtils.formatPercent((float)currentProgress / (Config.SECONDS_TO_COMPOST.get() * 20)))); } return info; } diff --git a/src/main/java/com/novamachina/exnihilosequentia/common/tileentity/barrel/transform/FluidTransformBarrelMode.java b/src/main/java/com/novamachina/exnihilosequentia/common/tileentity/barrel/transform/FluidTransformBarrelMode.java index 609c0a998..a8525e6c3 100644 --- a/src/main/java/com/novamachina/exnihilosequentia/common/tileentity/barrel/transform/FluidTransformBarrelMode.java +++ b/src/main/java/com/novamachina/exnihilosequentia/common/tileentity/barrel/transform/FluidTransformBarrelMode.java @@ -100,7 +100,7 @@ protected void spawnParticle(BarrelTile barrelTile) { public List getWailaInfo(BarrelTile barrelTile) { List info = new ArrayList<>(); - info.add(new TranslationTextComponent("waila.barrel.progress", StringUtils.formatPercent((float)currentProgress / (Config.SECONDS_TO_FLUID_TRANSFORM.get() * 20)))); + info.add(new TranslationTextComponent("waila.progress", StringUtils.formatPercent((float)currentProgress / (Config.SECONDS_TO_FLUID_TRANSFORM.get() * 20)))); return info; } diff --git a/src/main/java/com/novamachina/exnihilosequentia/common/tileentity/sieve/SieveTile.java b/src/main/java/com/novamachina/exnihilosequentia/common/tileentity/sieve/SieveTile.java index 002c1b8f7..ed689b37e 100644 --- a/src/main/java/com/novamachina/exnihilosequentia/common/tileentity/sieve/SieveTile.java +++ b/src/main/java/com/novamachina/exnihilosequentia/common/tileentity/sieve/SieveTile.java @@ -169,6 +169,11 @@ public float getProgress() { @Override public SUpdateTileEntityPacket getUpdatePacket() { CompoundNBT nbt = new CompoundNBT(); + if (!meshStack.isEmpty()) { + CompoundNBT meshNBT = meshStack.write(new CompoundNBT()); + nbt.put("mesh", meshNBT); + } + if (!blockStack.isEmpty()) { CompoundNBT blockNbt = blockStack.write(new CompoundNBT()); nbt.put("block", blockNbt); @@ -181,6 +186,15 @@ public SUpdateTileEntityPacket getUpdatePacket() { @Override public void onDataPacket(NetworkManager net, SUpdateTileEntityPacket packet) { CompoundNBT nbt = packet.getNbtCompound(); + if (nbt.contains("mesh")) { + meshStack = ItemStack.read((CompoundNBT) nbt.get("mesh")); + if (meshStack.getItem() instanceof MeshItem) { + meshType = ((MeshItem) meshStack.getItem()).getMesh(); + } + } else { + meshStack = ItemStack.EMPTY; + } + if (nbt.contains("block")) { blockStack = ItemStack.read((CompoundNBT) nbt.get("block")); } else { diff --git a/src/main/java/com/novamachina/exnihilosequentia/common/waila/PluginWaila.java b/src/main/java/com/novamachina/exnihilosequentia/common/waila/PluginWaila.java index 85f86f243..3f6e16258 100644 --- a/src/main/java/com/novamachina/exnihilosequentia/common/waila/PluginWaila.java +++ b/src/main/java/com/novamachina/exnihilosequentia/common/waila/PluginWaila.java @@ -1,6 +1,7 @@ package com.novamachina.exnihilosequentia.common.waila; import com.novamachina.exnihilosequentia.common.block.BlockBarrel; +import com.novamachina.exnihilosequentia.common.block.BlockSieve; import com.novamachina.exnihilosequentia.common.utility.Constants; import mcp.mobius.waila.api.IRegistrar; import mcp.mobius.waila.api.IWailaPlugin; @@ -12,5 +13,6 @@ public class PluginWaila implements IWailaPlugin { @Override public void register(IRegistrar registrar) { registrar.registerComponentProvider(new BarrelComponentProvider(), TooltipPosition.BODY, BlockBarrel.class); + registrar.registerComponentProvider(new SieveComponentProvider(), TooltipPosition.BODY, BlockSieve.class); } } diff --git a/src/main/java/com/novamachina/exnihilosequentia/common/waila/SieveComponentProvider.java b/src/main/java/com/novamachina/exnihilosequentia/common/waila/SieveComponentProvider.java new file mode 100644 index 000000000..a5a8490f4 --- /dev/null +++ b/src/main/java/com/novamachina/exnihilosequentia/common/waila/SieveComponentProvider.java @@ -0,0 +1,29 @@ +package com.novamachina.exnihilosequentia.common.waila; + +import com.novamachina.exnihilosequentia.common.item.mesh.EnumMesh; +import com.novamachina.exnihilosequentia.common.tileentity.sieve.SieveTile; +import com.novamachina.exnihilosequentia.common.utility.StringUtils; +import mcp.mobius.waila.api.IComponentProvider; +import mcp.mobius.waila.api.IDataAccessor; +import mcp.mobius.waila.api.IPluginConfig; +import net.minecraft.client.resources.I18n; +import net.minecraft.util.text.ITextComponent; +import net.minecraft.util.text.TranslationTextComponent; + +import java.util.List; + +public class SieveComponentProvider implements IComponentProvider { + @Override + public void appendBody(List tooltip, IDataAccessor accessor, IPluginConfig config) { + SieveTile sieveTile = (SieveTile) accessor.getTileEntity(); + String block = I18n.format(sieveTile.getBlockStack().getTranslationKey()); + + if(!sieveTile.getBlockStack().isEmpty()) { + tooltip.add(new TranslationTextComponent("waila.progress", StringUtils.formatPercent(sieveTile.getProgress()/ 1.0F))); + tooltip.add(new TranslationTextComponent("waila.sieve.block", block)); + } + if(sieveTile.getMesh() != EnumMesh.NONE) { + tooltip.add(new TranslationTextComponent("waila.sieve.mesh", sieveTile.getMesh().getName())); + } + } +} diff --git a/src/main/resources/assets/exnihilosequentia/lang/en_us.json b/src/main/resources/assets/exnihilosequentia/lang/en_us.json index 91cf71012..4c50c8372 100644 --- a/src/main/resources/assets/exnihilosequentia/lang/en_us.json +++ b/src/main/resources/assets/exnihilosequentia/lang/en_us.json @@ -129,8 +129,10 @@ "jei.sieve.dropChance": "Drop Chance", - "waila.barrel.progress": "Progress: %s", + "waila.progress": "Progress: %s", "waila.barrel.fluidAmount": "Fluid: %s %s mb", "waila.barrel.solidAmount": "Solid Amount: %s / %s", - "waila.barrel.block": "Block: %s" + "waila.barrel.block": "Block: %s", + "waila.sieve.block": "Sifting: %s", + "waila.sieve.mesh": "Mesh: %s" } \ No newline at end of file