Skip to content

Commit

Permalink
Merge pull request #479 from ferriarnus/tooltips
Browse files Browse the repository at this point in the history
Add Machine active tooltip
  • Loading branch information
Rover656 committed Nov 26, 2023
2 parents 47eb52d + 4ce6a15 commit b7f9850
Show file tree
Hide file tree
Showing 38 changed files with 498 additions and 59 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
package com.enderio.core.common.network.slot;

import net.minecraft.nbt.ListTag;
import net.minecraft.nbt.Tag;
import net.minecraft.network.FriendlyByteBuf;

import java.util.HashSet;
import java.util.Set;
import java.util.function.BiConsumer;
import java.util.function.Consumer;
import java.util.function.Function;
import java.util.function.Supplier;

public class SetNetworkDataSlot<T, V extends Tag> extends NetworkDataSlot<Set<T>> {

private final Function<T, V> serializer;
private final Function<V,T> deSerializer;
private final BiConsumer<T, FriendlyByteBuf> toBuffer;
private final Function<FriendlyByteBuf, T> fromBuffer;

public SetNetworkDataSlot(Supplier<Set<T>> getter, Consumer<Set<T>> setter,
Function<T, V> serializer, Function<V, T> deSerializer, BiConsumer<T, FriendlyByteBuf> toBuffer, Function<FriendlyByteBuf, T> fromBuffer) {
super(getter, setter);
this.serializer = serializer;
this.deSerializer = deSerializer;
this.toBuffer = toBuffer;
this.fromBuffer = fromBuffer;
}

@Override
public Tag serializeValueNBT(Set<T> value) {
ListTag listTag = new ListTag();
for (T t : value) {
listTag.add(serializer.apply(t));
}
return listTag;
}

@Override
protected Set<T> valueFromNBT(Tag nbt) {
if (nbt instanceof ListTag listTag) {
Set<T> set = new HashSet<>();
for (Tag tag : listTag) {
set.add(deSerializer.apply((V) tag));
}
return set;
} else {
throw new IllegalStateException("Invalid set tag was passed over the network.");
}
}

@Override
public void toBuffer(FriendlyByteBuf buf, Set<T> value) {
buf.writeInt(value.size());
for (T element: value) {
toBuffer.accept(element, buf);
}
}

@Override
protected Set<T> valueFromBuffer(FriendlyByteBuf buf) {
Set<T> set = new HashSet<>();
try {
int size = buf.readInt();
for (int i = 0; i < size; i++) {
set.add(fromBuffer.apply(buf));
}
return set;
} catch (Exception e) {
throw new IllegalStateException("Invalid list buffer was passed over the network.");
}
}
}
14 changes: 13 additions & 1 deletion src/generated/resources/assets/enderio/lang/en_ud.json
Original file line number Diff line number Diff line change
Expand Up @@ -235,10 +235,12 @@
"fluid.enderio.rocket_fuel": "ןǝnℲ ʇǝʞɔoᴚ",
"fluid.enderio.vapor_of_levity": "ʎʇıʌǝꞀ ɟO ɹodɐΛ",
"fluid.enderio.xp_juice": "ǝɔınſ ԀX",
"gui.enderio.active": "ǝʌıʇɔɐ sı ǝuıɥɔɐɯ ǝɥ⟘",
"gui.enderio.alloy_smelter.mode": "ǝpoW buıʇןǝɯS",
"gui.enderio.alloy_smelter.mode_all": "buıʇןǝɯS puɐ buıʎoןןⱯ",
"gui.enderio.alloy_smelter.mode_alloy": "ʎןuO sʎoןןⱯ",
"gui.enderio.alloy_smelter.mode_furnace": "ʎןuO ǝɔɐuɹnℲ",
"gui.enderio.blocked_redstone": "ǝuoʇspǝɹ ʎq pǝʞɔoןq sı ǝuıɥɔɐɯ ǝɥ⟘",
"gui.enderio.button.retrieve_10_level": "ԀX ɟo sןǝʌǝן 0Ɩ ǝʌǝıɹʇǝᴚ",
"gui.enderio.button.retrieve_1_level": "ԀX ɟo ןǝʌǝן Ɩ ǝʌǝıɹʇǝᴚ",
"gui.enderio.button.retrieve_all_level": "ԀX ɟo sןǝʌǝן ןןɐ ǝʌǝıɹʇǝᴚ",
Expand All @@ -256,20 +258,30 @@
"gui.enderio.conduit.extract": "ʇɔɐɹʇxƎ",
"gui.enderio.conduit.insert": "ʇɹǝsuI",
"gui.enderio.conduit_channel": "ןǝuuɐɥƆ-ʇınpuoƆ",
"gui.enderio.empty_tank": "ʎʇdɯǝ sı ʞuɐʇ ǝɥ⟘",
"gui.enderio.energy_equivalence": "˙ƎℲ oʇ ʇuǝןɐʌınbǝ 'ʎbɹǝuǝ ɟo ʇıun Ɐ",
"gui.enderio.filter": "ɹǝʇןıℲ",
"gui.enderio.fluid_conduit.change_fluid1": ":pınןℲ pǝʞɔoꞀ",
"gui.enderio.fluid_conduit.change_fluid2": "¡ʇǝsǝɹ oʇ ʞɔıןƆ",
"gui.enderio.fluid_conduit.change_fluid3": "%s :pınןℲ",
"gui.enderio.full_power": "ןןnɟ sı ǝbɐɹoʇs ʎbɹǝuǝ ǝɥ⟘",
"gui.enderio.full_tank": "ןןnɟ sı ʞuɐʇ ǝɥ⟘",
"gui.enderio.idle": "ʞɹoʍ oʇ ʎpɐǝɹ sı ǝuıɥɔɐɯ ǝɥ⟘",
"gui.enderio.input_empty": "ʇnduı ǝɥʇ uı ɯǝʇı ou sı ǝɹǝɥ⟘",
"gui.enderio.ioconfig": "uoıʇɐɹnbıɟuoƆ OI",
"gui.enderio.ioconfig.both": "ןןnԀ / ɥsnԀ",
"gui.enderio.ioconfig.disabled": "pǝןqɐsıᗡ",
"gui.enderio.ioconfig.neighbour": "sɹnoqɥbıǝN ǝpıH/ʍoɥS",
"gui.enderio.ioconfig.none": "ǝuoN",
"gui.enderio.ioconfig.pull": "ןןnԀ",
"gui.enderio.ioconfig.push": "ɥsnԀ",
"gui.enderio.no_capacitor": "ǝuıɥɔɐɯ ǝɥʇ ǝsn oʇ ǝןqɐ ǝq oʇ ɹoʇıɔɐdɐɔ ɐ ןןɐʇsuI",
"gui.enderio.no_power": "ǝuıɥɔɐɯ ǝɥʇ ǝsn oʇ ɹǝʍod ɥbnouǝ ʇou sı ǝɹǝɥ⟘",
"gui.enderio.no_soulbound": "ʇı ǝsn oʇ ǝןqɐ ǝq oʇ ɯǝʇı ǝɥʇ oʇ ןnos ɐ puıᗺ",
"gui.enderio.no_source": "ʞɹoʍ oʇ ʇı ɹǝpun ʞɔoןq ǝɔɹnos ɐ spǝǝu uıɐɹᗡ ǝɥ⟘",
"gui.enderio.nocap.desc": "¡ʞɹoʍ uɐɔ ǝuıɥɔɐɯ sıɥʇ \n os ɹoʇıɔɐdɐɔ ʎuɐ ʇɹǝsuI",
"gui.enderio.nocap.title": "buıssıW ɹoʇıɔɐdɐƆ",
"gui.enderio.output_full": "ʇndʇno ǝɥʇ ɹoɟ ɯooɹ ɥbnouǝ ʇou sı ǝɹǝɥ⟘",
"gui.enderio.progress": "%s%% ssǝɹboɹԀ",
"gui.enderio.range": "ǝbuɐᴚ",
"gui.enderio.range.hide": "ǝbuɐᴚ ǝpıH",
Expand All @@ -287,7 +299,7 @@
"gui.enderio.self_feed.disabled": "pǝןqɐsıᗡ pǝǝℲ ɟןǝS",
"gui.enderio.self_feed.enabled": "pǝןqɐuƎ pǝǝℲ ɟןǝS",
"gui.enderio.spawner.disabled": "bıɟuoɔ ʎq pǝןqɐsıᗡ",
"gui.enderio.spawner.other_mod": "poɯ ɹǝɥʇO",
"gui.enderio.spawner.other_mod": "poɯ ɹǝɥʇouɐ ʎq pǝʞɔoןᗺ",
"gui.enderio.spawner.too_many_mob": "sqoɯ ʎuɐɯ oo⟘",
"gui.enderio.spawner.too_many_spawner": "sɹǝuʍɐds ʎuɐɯ oo⟘",
"gui.enderio.spawner.unknown": "qoɯ uʍouʞu∩",
Expand Down
14 changes: 13 additions & 1 deletion src/generated/resources/assets/enderio/lang/en_us.json
Original file line number Diff line number Diff line change
Expand Up @@ -235,10 +235,12 @@
"fluid.enderio.rocket_fuel": "Rocket Fuel",
"fluid.enderio.vapor_of_levity": "Vapor Of Levity",
"fluid.enderio.xp_juice": "XP Juice",
"gui.enderio.active": "The machine is active",
"gui.enderio.alloy_smelter.mode": "Smelting Mode",
"gui.enderio.alloy_smelter.mode_all": "Alloying and Smelting",
"gui.enderio.alloy_smelter.mode_alloy": "Alloys Only",
"gui.enderio.alloy_smelter.mode_furnace": "Furnace Only",
"gui.enderio.blocked_redstone": "The machine is blocked by redstone",
"gui.enderio.button.retrieve_10_level": "Retrieve 10 levels of XP",
"gui.enderio.button.retrieve_1_level": "Retrieve 1 level of XP",
"gui.enderio.button.retrieve_all_level": "Retrieve all levels of XP",
Expand All @@ -256,20 +258,30 @@
"gui.enderio.conduit.extract": "Extract",
"gui.enderio.conduit.insert": "Insert",
"gui.enderio.conduit_channel": "Conduit-Channel",
"gui.enderio.empty_tank": "The tank is empty",
"gui.enderio.energy_equivalence": "A unit of energy, equivalent to FE.",
"gui.enderio.filter": "Filter",
"gui.enderio.fluid_conduit.change_fluid1": "Locked Fluid:",
"gui.enderio.fluid_conduit.change_fluid2": "Click to reset!",
"gui.enderio.fluid_conduit.change_fluid3": "Fluid: %s",
"gui.enderio.full_power": "The energy storage is full",
"gui.enderio.full_tank": "The tank is full",
"gui.enderio.idle": "The machine is ready to work",
"gui.enderio.input_empty": "There is no item in the input",
"gui.enderio.ioconfig": "IO Configuration",
"gui.enderio.ioconfig.both": "Push / Pull",
"gui.enderio.ioconfig.disabled": "Disabled",
"gui.enderio.ioconfig.neighbour": "Show/Hide Neighbours",
"gui.enderio.ioconfig.none": "None",
"gui.enderio.ioconfig.pull": "Pull",
"gui.enderio.ioconfig.push": "Push",
"gui.enderio.no_capacitor": "Install a capacitor to be able to use the machine",
"gui.enderio.no_power": "There is not enough power to use the machine",
"gui.enderio.no_soulbound": "Bind a soul to the item to be able to use it",
"gui.enderio.no_source": "The Drain needs a source block under it to work",
"gui.enderio.nocap.desc": "Insert any capacitor so \n this machine can work!",
"gui.enderio.nocap.title": "Capacitor Missing",
"gui.enderio.output_full": "There is not enough room for the output",
"gui.enderio.progress": "Progress %s%%",
"gui.enderio.range": "Range",
"gui.enderio.range.hide": "Hide Range",
Expand All @@ -287,7 +299,7 @@
"gui.enderio.self_feed.disabled": "Self Feed Disabled",
"gui.enderio.self_feed.enabled": "Self Feed Enabled",
"gui.enderio.spawner.disabled": "Disabled by config",
"gui.enderio.spawner.other_mod": "Other mod",
"gui.enderio.spawner.other_mod": "Blocked by another mod",
"gui.enderio.spawner.too_many_mob": "Too many mobs",
"gui.enderio.spawner.too_many_spawner": "Too many spawners",
"gui.enderio.spawner.unknown": "Unknown mob",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
import com.enderio.api.misc.Vector2i;
import com.enderio.base.common.lang.EIOLang;
import com.enderio.core.client.gui.widgets.EnumIconWidget;
import com.enderio.machines.client.gui.widget.ActiveWidget;
import com.enderio.machines.client.gui.widget.CapacitorEnergyWidget;
import com.enderio.machines.client.gui.widget.ProgressWidget;
import com.enderio.machines.client.gui.widget.ioconfig.IOConfigButton;
Expand Down Expand Up @@ -34,7 +35,9 @@ protected void init() {
addRenderableWidget(new EnumIconWidget<>(this, leftPos + imageWidth - 8 - 12, topPos + 6, () -> menu.getBlockEntity().getRedstoneControl(),
control -> menu.getBlockEntity().setRedstoneControl(control), EIOLang.REDSTONE_MODE));

addRenderableWidget(new EnumIconWidget<>(this, leftPos + imageWidth - 8 - 12, topPos + 6 + 16 * 3, () -> menu.getBlockEntity().getMode(), mode -> menu.getBlockEntity().setMode(mode), MachineLang.ALLOY_SMELTER_MODE));
addRenderableWidget(new ActiveWidget(this, menu.getBlockEntity()::getMachineStates, leftPos + imageWidth - 6 - 16, topPos + 16*4));

addRenderableWidget(new EnumIconWidget<>(this, leftPos + imageWidth - 8 - 12, topPos + 16 * 3, () -> menu.getBlockEntity().getMode(), mode -> menu.getBlockEntity().setMode(mode), MachineLang.ALLOY_SMELTER_MODE));

addRenderableWidget(new IOConfigButton<>(this, leftPos + imageWidth - 6 - 16, topPos + 22, 16, 16, menu, this::addRenderableWidget, font));
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
import com.enderio.api.misc.Vector2i;
import com.enderio.base.common.lang.EIOLang;
import com.enderio.core.client.gui.widgets.EnumIconWidget;
import com.enderio.machines.client.gui.widget.ActiveWidget;
import com.enderio.machines.client.gui.widget.CapacitorEnergyWidget;
import com.enderio.machines.client.gui.widget.ioconfig.IOConfigButton;
import com.enderio.machines.common.menu.CrafterMenu;
Expand All @@ -28,6 +29,7 @@ protected void init() {
control -> menu.getBlockEntity().setRedstoneControl(control), EIOLang.REDSTONE_MODE));

addRenderableWidget(new IOConfigButton<>(this, leftPos + imageWidth - 6 - 16, topPos + 22, 16, 16, menu, this::addRenderableWidget, font));
addRenderableWidget(new ActiveWidget(this, menu.getBlockEntity()::getMachineStates, leftPos + imageWidth - 6 - 16, topPos + 16*4));
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@
import com.enderio.base.common.lang.EIOLang;
import com.enderio.core.client.gui.widgets.EnumIconWidget;
import com.enderio.core.client.gui.widgets.ToggleImageButton;
import com.enderio.machines.client.gui.widget.ActiveWidget;
import com.enderio.machines.client.gui.widget.CapacitorEnergyWidget;
import com.enderio.machines.client.gui.widget.FluidStackWidget;
import com.enderio.machines.client.gui.widget.ioconfig.IOConfigButton;
import com.enderio.machines.common.menu.DrainMenu;
import net.minecraft.client.gui.GuiGraphics;
import net.minecraft.client.gui.components.ImageButton;
Expand All @@ -30,31 +30,30 @@ protected void init() {

addRenderableOnly(new CapacitorEnergyWidget(this, getMenu().getBlockEntity()::getEnergyStorage, getMenu().getBlockEntity()::isCapacitorInstalled, 16 + leftPos, 14 + topPos, 9, 42));

addRenderableWidget(new EnumIconWidget<>(this, leftPos + imageWidth - 8 - 12, topPos + 6, () -> menu.getBlockEntity().getRedstoneControl(),
addRenderableWidget(new EnumIconWidget<>(this, leftPos + imageWidth - 4 - 16, topPos + 6, () -> menu.getBlockEntity().getRedstoneControl(),
control -> menu.getBlockEntity().setRedstoneControl(control), EIOLang.REDSTONE_MODE));

addRenderableOnly(new FluidStackWidget(this, getMenu().getBlockEntity()::getFluidTank, 80 + leftPos, 21 + topPos, 16, 47));

addRenderableWidget(new ToggleImageButton<>(this, leftPos + imageWidth - 8 - 14, topPos + 22 + 2 + 16, 16, 16, 0, 0, 16, 0, RANGE_BUTTON_TEXTURE,
addRenderableWidget(new ToggleImageButton<>(this, leftPos + imageWidth - 6 - 16, topPos + 2*16, 16, 16, 0, 0, 16, 0, RANGE_BUTTON_TEXTURE,
() -> menu.getBlockEntity().isRangeVisible(), state -> menu.getBlockEntity().setIsRangeVisible(state),
() -> menu.getBlockEntity().isRangeVisible() ? EIOLang.HIDE_RANGE : EIOLang.SHOW_RANGE));
addRenderableWidget(new ImageButton(leftPos + imageWidth - 8 - 8, topPos + 66, 8, 8, 8, 0, 16, BUTTONS, (b) -> menu.getBlockEntity().increaseRange()));
addRenderableWidget(new ImageButton(leftPos + imageWidth - 8 - 8, topPos + 74, 8, 8, 8, 8, 16, BUTTONS, (b) -> menu.getBlockEntity().decreaseRange()));
addRenderableWidget(new ImageButton(leftPos + imageWidth - 2*16, topPos + 16*2, 8, 8, 8, 0, 16, BUTTONS, (b) -> menu.getBlockEntity().increaseRange()));
addRenderableWidget(new ImageButton(leftPos + imageWidth - 2*16, topPos + 16*2 + 8, 8, 8, 8, 8, 16, BUTTONS, (b) -> menu.getBlockEntity().decreaseRange()));


addRenderableWidget(new IOConfigButton<>(this, leftPos + imageWidth - 6 - 16, topPos + 22, 16, 16, menu, this::addRenderableWidget, font));
addRenderableWidget(new ActiveWidget(this, menu.getBlockEntity()::getMachineStates, leftPos + imageWidth - 6 - 16, topPos + 16*4));
}

@Override
protected void renderLabels(GuiGraphics guiGraphics, int pMouseX, int pMouseY) {
super.renderLabels(guiGraphics, pMouseX, pMouseY);
guiGraphics.drawString(font, EIOLang.RANGE, imageWidth - 8 - font.width(EIOLang.RANGE), 56, 4210752, false);
guiGraphics.drawString(font, EIOLang.RANGE, imageWidth - 8 - font.width(EIOLang.RANGE), 16 + 6, 4210752, false);
}

@Override
public void render(GuiGraphics guiGraphics, int pMouseX, int pMouseY, float pPartialTicks) {
super.render(guiGraphics, pMouseX, pMouseY, pPartialTicks);
guiGraphics.drawString(font, getMenu().getBlockEntity().getRange() + "", leftPos + imageWidth - 8 - font.width(getMenu().getBlockEntity().getRange() + "") - 10, topPos + 70, 0, false);
guiGraphics.drawString(font, getMenu().getBlockEntity().getRange() + "", leftPos + imageWidth - 8 - 16 - font.width(getMenu().getBlockEntity().getRange() + "") - 10, topPos + 16*2 + 4, 0, false);
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
import com.enderio.api.misc.Vector2i;
import com.enderio.base.common.lang.EIOLang;
import com.enderio.core.client.gui.widgets.EnumIconWidget;
import com.enderio.machines.client.gui.widget.ActiveWidget;
import com.enderio.machines.client.gui.widget.FluidStackWidget;
import com.enderio.machines.client.gui.widget.ioconfig.IOConfigButton;
import com.enderio.machines.common.menu.FluidTankMenu;
Expand All @@ -23,6 +24,7 @@ protected void init() {
addRenderableOnly(new FluidStackWidget(this, getMenu().getBlockEntity()::getFluidTank, 80 + leftPos, 21 + topPos, 16, 47));
addRenderableWidget(new EnumIconWidget<>(this, leftPos + imageWidth - 8 - 12, topPos + 6, () -> menu.getBlockEntity().getRedstoneControl(),
control -> menu.getBlockEntity().setRedstoneControl(control), EIOLang.REDSTONE_MODE));
addRenderableWidget(new ActiveWidget(this, menu.getBlockEntity()::getMachineStates, leftPos + imageWidth - 6 - 16, topPos + 16*4));
addRenderableWidget(new IOConfigButton<>(this, leftPos + imageWidth - 6 - 16, topPos + 22, 16, 16, menu, this::addRenderableWidget, font));
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
import com.enderio.api.misc.Vector2i;
import com.enderio.base.common.lang.EIOLang;
import com.enderio.core.client.gui.widgets.EnumIconWidget;
import com.enderio.machines.client.gui.widget.ActiveWidget;
import com.enderio.machines.client.gui.widget.CapacitorEnergyWidget;
import com.enderio.machines.client.gui.widget.ioconfig.IOConfigButton;
import com.enderio.machines.common.menu.ImpulseHopperMenu;
Expand All @@ -27,6 +28,8 @@ protected void init() {
addRenderableWidget(new EnumIconWidget<>(this, leftPos + imageWidth - 8 - 12, topPos + 6, () -> menu.getBlockEntity().getRedstoneControl(),
control -> menu.getBlockEntity().setRedstoneControl(control), EIOLang.REDSTONE_MODE));

addRenderableWidget(new ActiveWidget(this, menu.getBlockEntity()::getMachineStates, leftPos + imageWidth - 6 - 16, topPos + 16*4));

addRenderableWidget(new IOConfigButton<>(this, leftPos + imageWidth - 6 - 16, topPos + 22, 16, 16, menu, this::addRenderableWidget, font));
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
import com.enderio.api.misc.Vector2i;
import com.enderio.base.common.lang.EIOLang;
import com.enderio.core.client.gui.widgets.EnumIconWidget;
import com.enderio.machines.client.gui.widget.ActiveWidget;
import com.enderio.machines.client.gui.widget.CapacitorEnergyWidget;
import com.enderio.machines.client.gui.widget.ProgressWidget;
import com.enderio.machines.common.menu.PaintingMachineMenu;
Expand All @@ -26,6 +27,7 @@ protected void init() {
addRenderableOnly(addRenderableOnly(new CapacitorEnergyWidget(this, getMenu().getBlockEntity()::getEnergyStorage, getMenu().getBlockEntity()::isCapacitorInstalled, 16 + leftPos, 14 + topPos, 9, 42)));
addRenderableWidget(new EnumIconWidget<>(this, leftPos + imageWidth - 8 - 14, topPos + 52, () -> menu.getBlockEntity().getRedstoneControl(),
control -> menu.getBlockEntity().setRedstoneControl(control), EIOLang.REDSTONE_MODE));
addRenderableWidget(new ActiveWidget(this, menu.getBlockEntity()::getMachineStates, leftPos + imageWidth - 6 - 16, topPos + 16*4));

addRenderableOnly(new ProgressWidget.LeftRight(this, () -> menu.getBlockEntity().getCraftingProgress(), getGuiLeft() + 89, getGuiTop() + 35, 22, 16, 177, 14));
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
import com.enderio.base.common.lang.EIOLang;
import com.enderio.core.client.gui.widgets.EnumIconWidget;
import com.enderio.core.client.gui.widgets.ToggleImageButton;
import com.enderio.machines.client.gui.widget.ActiveWidget;
import com.enderio.machines.client.gui.widget.CapacitorEnergyWidget;
import com.enderio.machines.client.gui.widget.ProgressWidget;
import com.enderio.machines.common.blockentity.PoweredSpawnerBlockEntity;
Expand Down Expand Up @@ -40,6 +41,8 @@ protected void init() {
() -> menu.getBlockEntity().isRangeVisible(), state -> menu.getBlockEntity().setIsRangeVisible(state),
() -> menu.getBlockEntity().isRangeVisible() ? EIOLang.HIDE_RANGE : EIOLang.SHOW_RANGE));

addRenderableWidget(new ActiveWidget(this, menu.getBlockEntity()::getMachineStates, leftPos + imageWidth - 6 - 16, topPos + 16*4));

addRenderableOnly(new ProgressWidget.BottomUp(this, () -> menu.getBlockEntity().getSpawnProgress(), getGuiLeft() + 82, getGuiTop() + 38, 14, 14, 176, 0));

}
Expand All @@ -66,9 +69,5 @@ protected void renderLabels(GuiGraphics guiGraphics, int pMouseX, int pMouseY) {
guiGraphics.drawString(font, rl.get().toString(), imageWidth / 2f - font.width(rl.get().toString()) / 2f, 15, 4210752, false);
}
}
if (getMenu().getBlockEntity().getReason() != PoweredSpawnerBlockEntity.SpawnerBlockedReason.NONE) {
guiGraphics.drawString(font, getMenu().getBlockEntity().getReason().getComponent().getString(),
imageWidth / 2f - font.width(getMenu().getBlockEntity().getReason().getComponent().getString()) / 2f, 26, 0, false);
}
}
}

0 comments on commit b7f9850

Please sign in to comment.