Navigation Menu

Skip to content

Commit

Permalink
Add sieve waila
Browse files Browse the repository at this point in the history
  • Loading branch information
NovaMachina committed Aug 23, 2020
1 parent ef7fae1 commit d01fcac
Show file tree
Hide file tree
Showing 7 changed files with 52 additions and 5 deletions.
Expand Up @@ -109,7 +109,7 @@ protected void spawnParticle(BarrelTile barrelTile) {
public List<ITextComponent> getWailaInfo(BarrelTile barrelTile) {
List<ITextComponent> 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;
}
Expand Down
Expand Up @@ -104,7 +104,7 @@ public List<ITextComponent> 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;
}
Expand Down
Expand Up @@ -100,7 +100,7 @@ protected void spawnParticle(BarrelTile barrelTile) {
public List<ITextComponent> getWailaInfo(BarrelTile barrelTile) {
List<ITextComponent> 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;
}
Expand Down
Expand Up @@ -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);
Expand All @@ -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 {
Expand Down
@@ -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;
Expand All @@ -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);
}
}
@@ -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<ITextComponent> 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()));
}
}
}
6 changes: 4 additions & 2 deletions src/main/resources/assets/exnihilosequentia/lang/en_us.json
Expand Up @@ -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"
}

0 comments on commit d01fcac

Please sign in to comment.