Skip to content

Commit 5e07043

Browse files
authored
More flexible Creative Tab API for MetaItems (#1527)
* More flexible Creative Tab API for MetaItems * Include search tab * Fix IntelliJ derp * Address suggestions
1 parent 92b8432 commit 5e07043

File tree

3 files changed

+104
-71
lines changed

3 files changed

+104
-71
lines changed

src/main/java/gregtech/api/items/materialitem/MetaPrefixItem.java

Lines changed: 1 addition & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
import gregtech.api.GregTechAPI;
55
import gregtech.api.damagesources.DamageSources;
66
import gregtech.api.items.armor.ArmorMetaItem;
7-
import gregtech.api.items.metaitem.MetaItem;
87
import gregtech.api.items.metaitem.StandardMetaItem;
98
import gregtech.api.unification.OreDictUnifier;
109
import gregtech.api.unification.material.Material;
@@ -21,13 +20,11 @@
2120
import net.minecraft.client.renderer.block.model.ModelBakery;
2221
import net.minecraft.client.renderer.block.model.ModelResourceLocation;
2322
import net.minecraft.client.util.ITooltipFlag;
24-
import net.minecraft.creativetab.CreativeTabs;
2523
import net.minecraft.entity.Entity;
2624
import net.minecraft.entity.EntityLivingBase;
2725
import net.minecraft.entity.item.EntityItem;
2826
import net.minecraft.inventory.EntityEquipmentSlot;
2927
import net.minecraft.item.ItemStack;
30-
import net.minecraft.util.NonNullList;
3128
import net.minecraft.util.ResourceLocation;
3229
import net.minecraft.util.math.BlockPos;
3330
import net.minecraft.world.World;
@@ -55,6 +52,7 @@ public class MetaPrefixItem extends StandardMetaItem {
5552
public MetaPrefixItem(OrePrefix orePrefix) {
5653
super();
5754
this.prefix = orePrefix;
55+
this.setCreativeTab(GregTechAPI.TAB_GREGTECH_MATERIALS);
5856
}
5957

6058
@Override
@@ -146,18 +144,6 @@ public int getItemStackLimit(@Nonnull ItemStack stack) {
146144
return prefix.maxStackSize;
147145
}
148146

149-
@Override
150-
@SideOnly(Side.CLIENT)
151-
public void getSubItems(@Nonnull CreativeTabs tab, @Nonnull NonNullList<ItemStack> subItems) {
152-
if (tab == GregTechAPI.TAB_GREGTECH_MATERIALS || tab == CreativeTabs.SEARCH) {
153-
for (MetaItem<?>.MetaValueItem enabledItem : metaItems.values()) {
154-
if (!enabledItem.isVisible()) continue;
155-
ItemStack itemStack = enabledItem.getStackForm();
156-
enabledItem.getSubItemHandler().getSubItems(itemStack, tab, subItems);
157-
}
158-
}
159-
}
160-
161147
@Override
162148
public void onUpdate(@Nonnull ItemStack itemStack, @Nonnull World worldIn, @Nonnull Entity entityIn, int itemSlot, boolean isSelected) {
163149
super.onUpdate(itemStack, worldIn, entityIn, itemSlot, isSelected);

src/main/java/gregtech/api/items/metaitem/MetaItem.java

Lines changed: 63 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
import gregtech.client.utils.TooltipHelper;
2828
import gregtech.common.ConfigHolder;
2929
import it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap;
30+
import it.unimi.dsi.fastutil.objects.ObjectArraySet;
3031
import it.unimi.dsi.fastutil.shorts.Short2ObjectLinkedOpenHashMap;
3132
import it.unimi.dsi.fastutil.shorts.Short2ObjectMap;
3233
import it.unimi.dsi.fastutil.shorts.Short2ObjectOpenHashMap;
@@ -61,6 +62,7 @@
6162
import net.minecraftforge.fml.relauncher.SideOnly;
6263
import net.minecraftforge.items.ItemHandlerHelper;
6364
import net.minecraftforge.oredict.OreDictionary;
65+
import org.apache.commons.lang3.ArrayUtils;
6466
import org.apache.commons.lang3.Validate;
6567
import org.apache.commons.lang3.builder.ToStringBuilder;
6668

@@ -99,6 +101,9 @@ public static List<MetaItem<?>> getMetaItems() {
99101

100102
protected final short metaItemOffset;
101103

104+
private CreativeTabs[] defaultCreativeTabs = new CreativeTabs[]{GregTechAPI.TAB_GREGTECH};
105+
private final Set<CreativeTabs> additionalCreativeTabs = new ObjectArraySet<>();
106+
102107
public MetaItem(short metaItemOffset) {
103108
setTranslationKey("meta_item");
104109
setHasSubtypes(true);
@@ -340,7 +345,6 @@ public void onPlayerStoppedUsing(@Nonnull ItemStack stack, @Nonnull World world,
340345
}
341346
}
342347

343-
@Nullable
344348
@Override
345349
public ItemStack onItemUseFinish(@Nonnull ItemStack stack, @Nonnull World world, @Nonnull EntityLivingBase player) {
346350
if (player instanceof EntityPlayer) {
@@ -641,20 +645,44 @@ public ItemStack getContainerItem(@Nonnull ItemStack itemStack) {
641645
@Nonnull
642646
@Override
643647
public CreativeTabs[] getCreativeTabs() {
644-
return new CreativeTabs[]{GregTechAPI.TAB_GREGTECH, GregTechAPI.TAB_GREGTECH_MATERIALS};
648+
if (additionalCreativeTabs.isEmpty()) return defaultCreativeTabs; // short circuit
649+
Set<CreativeTabs> tabs = new ObjectArraySet<>(additionalCreativeTabs);
650+
tabs.addAll(Arrays.asList(defaultCreativeTabs));
651+
return tabs.toArray(new CreativeTabs[0]);
645652
}
646653

647654
@Override
648-
@SideOnly(Side.CLIENT)
649-
public void getSubItems(@Nonnull CreativeTabs tab, @Nonnull NonNullList<ItemStack> subItems) {
650-
if (tab != GregTechAPI.TAB_GREGTECH && tab != CreativeTabs.SEARCH) {
651-
return;
655+
public MetaItem<T> setCreativeTab(CreativeTabs tab) {
656+
this.defaultCreativeTabs = new CreativeTabs[]{tab};
657+
return this;
658+
}
659+
660+
public MetaItem<T> setCreativeTabs(CreativeTabs... tabs) {
661+
this.defaultCreativeTabs = tabs;
662+
return this;
663+
}
664+
665+
public void addAdditionalCreativeTabs(CreativeTabs... tabs) {
666+
for (CreativeTabs tab : tabs) {
667+
if (!ArrayUtils.contains(defaultCreativeTabs, tab) && tab != CreativeTabs.SEARCH) {
668+
additionalCreativeTabs.add(tab);
669+
}
652670
}
653-
for (T enabledItem : metaItems.values()) {
654-
if (!enabledItem.isVisible())
655-
continue;
656-
ItemStack itemStack = enabledItem.getStackForm();
657-
enabledItem.getSubItemHandler().getSubItems(itemStack, tab, subItems);
671+
}
672+
673+
@Override
674+
protected boolean isInCreativeTab(CreativeTabs tab) {
675+
return tab == CreativeTabs.SEARCH ||
676+
ArrayUtils.contains(defaultCreativeTabs, tab) ||
677+
additionalCreativeTabs.contains(tab);
678+
}
679+
680+
@Override
681+
public void getSubItems(@Nonnull CreativeTabs tab, @Nonnull NonNullList<ItemStack> subItems) {
682+
if (!isInCreativeTab(tab)) return;
683+
for (T item : metaItems.values()) {
684+
if (!item.isInCreativeTab(tab)) continue;
685+
item.getSubItemHandler().getSubItems(item.getStackForm(), tab, subItems);
658686
}
659687
}
660688

@@ -696,10 +724,12 @@ public MetaItem<T> getMetaItem() {
696724
private EnumRarity rarity;
697725

698726
private int burnValue = 0;
699-
private boolean visible = true;
700727
private int maxStackSize = 64;
701728
private int modelAmount = 1;
702729

730+
@Nullable
731+
private CreativeTabs[] creativeTabsOverride;
732+
703733
protected MetaValueItem(int metaValue, String unlocalizedName) {
704734
this.metaValue = metaValue;
705735
this.unlocalizedName = unlocalizedName;
@@ -737,13 +767,27 @@ public MetaValueItem addOreDict(OreDictNames oreDictName) {
737767
return this;
738768
}
739769

770+
public MetaValueItem setCreativeTabs(CreativeTabs... tabs) {
771+
this.creativeTabsOverride = tabs;
772+
MetaItem.this.addAdditionalCreativeTabs(tabs);
773+
return this;
774+
}
775+
776+
/**
777+
* @deprecated Use {@link MetaValueItem#setInvisibleIf(boolean)} instead
778+
*/
779+
@Deprecated
740780
public MetaValueItem setInvisible(boolean isVisible) {
741-
this.visible = isVisible;
781+
return setInvisibleIf(!isVisible);
782+
}
783+
784+
public MetaValueItem setInvisibleIf(boolean hide) {
785+
if (hide) this.creativeTabsOverride = new CreativeTabs[0];
742786
return this;
743787
}
744788

745789
public MetaValueItem setInvisible() {
746-
this.visible = false;
790+
this.creativeTabsOverride = new CreativeTabs[0];
747791
return this;
748792
}
749793

@@ -886,7 +930,7 @@ public int getMaxStackSize(ItemStack stack) {
886930
}
887931

888932
public boolean isVisible() {
889-
return visible;
933+
return creativeTabsOverride == null || creativeTabsOverride.length > 0;
890934
}
891935

892936
public int getModelAmount() {
@@ -971,6 +1015,10 @@ public ItemStack getChargedStackWithOverride(IElectricItem source) {
9711015
return itemStack;
9721016
}
9731017

1018+
public boolean isInCreativeTab(CreativeTabs tab) {
1019+
return tab == CreativeTabs.SEARCH || ArrayUtils.contains(creativeTabsOverride != null ? creativeTabsOverride : MetaItem.this.defaultCreativeTabs, tab);
1020+
}
1021+
9741022
@Override
9751023
public String toString() {
9761024
return new ToStringBuilder(this)
@@ -979,5 +1027,4 @@ public String toString() {
9791027
.toString();
9801028
}
9811029
}
982-
9831030
}

src/main/java/gregtech/common/items/MetaItem1.java

Lines changed: 40 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -185,11 +185,11 @@ public void registerSubItems() {
185185
ELECTRIC_MOTOR_LuV = addItem(132, "electric.motor.luv");
186186
ELECTRIC_MOTOR_ZPM = addItem(133, "electric.motor.zpm");
187187
ELECTRIC_MOTOR_UV = addItem(134, "electric.motor.uv");
188-
ELECTRIC_MOTOR_UHV = addItem(135, "electric.motor.uhv").setInvisible(GTValues.HT);
189-
ELECTRIC_MOTOR_UEV = addItem(136, "electric.motor.uev").setInvisible(GTValues.HT);
190-
ELECTRIC_MOTOR_UIV = addItem(137, "electric.motor.uiv").setInvisible(GTValues.HT);
191-
ELECTRIC_MOTOR_UXV = addItem(138, "electric.motor.uxv").setInvisible(GTValues.HT);
192-
ELECTRIC_MOTOR_OpV = addItem(139, "electric.motor.opv").setInvisible(GTValues.HT);
188+
ELECTRIC_MOTOR_UHV = addItem(135, "electric.motor.uhv").setInvisibleIf(!GTValues.HT);
189+
ELECTRIC_MOTOR_UEV = addItem(136, "electric.motor.uev").setInvisibleIf(!GTValues.HT);
190+
ELECTRIC_MOTOR_UIV = addItem(137, "electric.motor.uiv").setInvisibleIf(!GTValues.HT);
191+
ELECTRIC_MOTOR_UXV = addItem(138, "electric.motor.uxv").setInvisibleIf(!GTValues.HT);
192+
ELECTRIC_MOTOR_OpV = addItem(139, "electric.motor.opv").setInvisibleIf(!GTValues.HT);
193193

194194
// Pumps: ID 141-155
195195
ELECTRIC_PUMP_LV = addItem(142, "electric.pump.lv").addComponents(new TooltipBehavior(lines -> {
@@ -227,23 +227,23 @@ public void registerSubItems() {
227227
ELECTRIC_PUMP_UHV = addItem(150, "electric.pump.uhv").addComponents(new TooltipBehavior(lines -> {
228228
lines.add(I18n.format("metaitem.electric.pump.tooltip"));
229229
lines.add(I18n.format("gregtech.universal.tooltip.fluid_transfer_rate", 1280 * 64 * 64 * 4 / 20));
230-
})).setInvisible(GTValues.HT);
230+
})).setInvisibleIf(!GTValues.HT);
231231
ELECTRIC_PUMP_UEV = addItem(151, "electric.pump.uev").addComponents(new TooltipBehavior(lines -> {
232232
lines.add(I18n.format("metaitem.electric.pump.tooltip"));
233233
lines.add(I18n.format("gregtech.universal.tooltip.fluid_transfer_rate", 1280 * 64 * 64 * 4 / 20));
234-
})).setInvisible(GTValues.HT);
234+
})).setInvisibleIf(!GTValues.HT);
235235
ELECTRIC_PUMP_UIV = addItem(152, "electric.pump.uiv").addComponents(new TooltipBehavior(lines -> {
236236
lines.add(I18n.format("metaitem.electric.pump.tooltip"));
237237
lines.add(I18n.format("gregtech.universal.tooltip.fluid_transfer_rate", 1280 * 64 * 64 * 4 / 20));
238-
})).setInvisible(GTValues.HT);
238+
})).setInvisibleIf(!GTValues.HT);
239239
ELECTRIC_PUMP_UXV = addItem(153, "electric.pump.uxv").addComponents(new TooltipBehavior(lines -> {
240240
lines.add(I18n.format("metaitem.electric.pump.tooltip"));
241241
lines.add(I18n.format("gregtech.universal.tooltip.fluid_transfer_rate", 1280 * 64 * 64 * 4 / 20));
242-
})).setInvisible(GTValues.HT);
242+
})).setInvisibleIf(!GTValues.HT);
243243
ELECTRIC_PUMP_OpV = addItem(154, "electric.pump.opv").addComponents(new TooltipBehavior(lines -> {
244244
lines.add(I18n.format("metaitem.electric.pump.tooltip"));
245245
lines.add(I18n.format("gregtech.universal.tooltip.fluid_transfer_rate", 1280 * 64 * 64 * 4 / 20));
246-
})).setInvisible(GTValues.HT);
246+
})).setInvisibleIf(!GTValues.HT);
247247

248248
// Conveyors: ID 156-170
249249
CONVEYOR_MODULE_LV = addItem(157, "conveyor.module.lv").addComponents(new TooltipBehavior(lines -> {
@@ -281,23 +281,23 @@ public void registerSubItems() {
281281
CONVEYOR_MODULE_UHV = addItem(165, "conveyor.module.uhv").addComponents(new TooltipBehavior(lines -> {
282282
lines.add(I18n.format("metaitem.conveyor.module.tooltip"));
283283
lines.add(I18n.format("gregtech.universal.tooltip.item_transfer_rate_stacks", 16));
284-
})).setInvisible(GTValues.HT);
284+
})).setInvisibleIf(!GTValues.HT);
285285
CONVEYOR_MODULE_UEV = addItem(166, "conveyor.module.uev").addComponents(new TooltipBehavior(lines -> {
286286
lines.add(I18n.format("metaitem.conveyor.module.tooltip"));
287287
lines.add(I18n.format("gregtech.universal.tooltip.item_transfer_rate_stacks", 16));
288-
})).setInvisible(GTValues.HT);
288+
})).setInvisibleIf(!GTValues.HT);
289289
CONVEYOR_MODULE_UIV = addItem(167, "conveyor.module.uiv").addComponents(new TooltipBehavior(lines -> {
290290
lines.add(I18n.format("metaitem.conveyor.module.tooltip"));
291291
lines.add(I18n.format("gregtech.universal.tooltip.item_transfer_rate_stacks", 16));
292-
})).setInvisible(GTValues.HT);
292+
})).setInvisibleIf(!GTValues.HT);
293293
CONVEYOR_MODULE_UXV = addItem(168, "conveyor.module.uxv").addComponents(new TooltipBehavior(lines -> {
294294
lines.add(I18n.format("metaitem.conveyor.module.tooltip"));
295295
lines.add(I18n.format("gregtech.universal.tooltip.item_transfer_rate_stacks", 16));
296-
})).setInvisible(GTValues.HT);
296+
})).setInvisibleIf(!GTValues.HT);
297297
CONVEYOR_MODULE_OpV = addItem(169, "conveyor.module.opv").addComponents(new TooltipBehavior(lines -> {
298298
lines.add(I18n.format("metaitem.conveyor.module.tooltip"));
299299
lines.add(I18n.format("gregtech.universal.tooltip.item_transfer_rate_stacks", 16));
300-
})).setInvisible(GTValues.HT);
300+
})).setInvisibleIf(!GTValues.HT);
301301

302302
// Pistons: ID 171-185
303303
ELECTRIC_PISTON_LV = addItem(172, "electric.piston.lv");
@@ -308,11 +308,11 @@ public void registerSubItems() {
308308
ELECTRIC_PISTON_LUV = addItem(177, "electric.piston.luv");
309309
ELECTRIC_PISTON_ZPM = addItem(178, "electric.piston.zpm");
310310
ELECTRIC_PISTON_UV = addItem(179, "electric.piston.uv");
311-
ELECTRIC_PISTON_UHV = addItem(180, "electric.piston.uhv").setInvisible(GTValues.HT);
312-
ELECTRIC_PISTON_UEV = addItem(181, "electric.piston.uev").setInvisible(GTValues.HT);
313-
ELECTRIC_PISTON_UIV = addItem(182, "electric.piston.uiv").setInvisible(GTValues.HT);
314-
ELECTRIC_PISTON_UXV = addItem(183, "electric.piston.uxv").setInvisible(GTValues.HT);
315-
ELECTRIC_PISTON_OpV = addItem(184, "electric.piston.opv").setInvisible(GTValues.HT);
311+
ELECTRIC_PISTON_UHV = addItem(180, "electric.piston.uhv").setInvisibleIf(!GTValues.HT);
312+
ELECTRIC_PISTON_UEV = addItem(181, "electric.piston.uev").setInvisibleIf(!GTValues.HT);
313+
ELECTRIC_PISTON_UIV = addItem(182, "electric.piston.uiv").setInvisibleIf(!GTValues.HT);
314+
ELECTRIC_PISTON_UXV = addItem(183, "electric.piston.uxv").setInvisibleIf(!GTValues.HT);
315+
ELECTRIC_PISTON_OpV = addItem(184, "electric.piston.opv").setInvisibleIf(!GTValues.HT);
316316

317317
// Robot Arms: ID 186-200
318318
ROBOT_ARM_LV = addItem(187, "robot.arm.lv").addComponents(new TooltipBehavior(lines -> {
@@ -350,23 +350,23 @@ public void registerSubItems() {
350350
ROBOT_ARM_UHV = addItem(195, "robot.arm.uhv").addComponents(new TooltipBehavior(lines -> {
351351
lines.add(I18n.format("metaitem.robot.arm.tooltip"));
352352
lines.add(I18n.format("gregtech.universal.tooltip.item_transfer_rate_stacks", 16));
353-
})).setInvisible(GTValues.HT);
353+
})).setInvisibleIf(!GTValues.HT);
354354
ROBOT_ARM_UEV = addItem(196, "robot.arm.uev").addComponents(new TooltipBehavior(lines -> {
355355
lines.add(I18n.format("metaitem.robot.arm.tooltip"));
356356
lines.add(I18n.format("gregtech.universal.tooltip.item_transfer_rate_stacks", 16));
357-
})).setInvisible(GTValues.HT);
357+
})).setInvisibleIf(!GTValues.HT);
358358
ROBOT_ARM_UIV = addItem(197, "robot.arm.uiv").addComponents(new TooltipBehavior(lines -> {
359359
lines.add(I18n.format("metaitem.robot.arm.tooltip"));
360360
lines.add(I18n.format("gregtech.universal.tooltip.item_transfer_rate_stacks", 16));
361-
})).setInvisible(GTValues.HT);
361+
})).setInvisibleIf(!GTValues.HT);
362362
ROBOT_ARM_UXV = addItem(198, "robot.arm.uxv").addComponents(new TooltipBehavior(lines -> {
363363
lines.add(I18n.format("metaitem.robot.arm.tooltip"));
364364
lines.add(I18n.format("gregtech.universal.tooltip.item_transfer_rate_stacks", 16));
365-
})).setInvisible(GTValues.HT);
365+
})).setInvisibleIf(!GTValues.HT);
366366
ROBOT_ARM_OpV = addItem(199, "robot.arm.opv").addComponents(new TooltipBehavior(lines -> {
367367
lines.add(I18n.format("metaitem.robot.arm.tooltip"));
368368
lines.add(I18n.format("gregtech.universal.tooltip.item_transfer_rate_stacks", 16));
369-
})).setInvisible(GTValues.HT);
369+
})).setInvisibleIf(!GTValues.HT);
370370

371371
// Field Generators: ID 201-215
372372
FIELD_GENERATOR_LV = addItem(202, "field.generator.lv");
@@ -377,11 +377,11 @@ public void registerSubItems() {
377377
FIELD_GENERATOR_LuV = addItem(207, "field.generator.luv");
378378
FIELD_GENERATOR_ZPM = addItem(208, "field.generator.zpm");
379379
FIELD_GENERATOR_UV = addItem(209, "field.generator.uv");
380-
FIELD_GENERATOR_UHV = addItem(210, "field.generator.uhv").setInvisible(GTValues.HT);
381-
FIELD_GENERATOR_UEV = addItem(211, "field.generator.uev").setInvisible(GTValues.HT);
382-
FIELD_GENERATOR_UIV = addItem(212, "field.generator.uiv").setInvisible(GTValues.HT);
383-
FIELD_GENERATOR_UXV = addItem(213, "field.generator.uxv").setInvisible(GTValues.HT);
384-
FIELD_GENERATOR_OpV = addItem(214, "field.generator.opv").setInvisible(GTValues.HT);
380+
FIELD_GENERATOR_UHV = addItem(210, "field.generator.uhv").setInvisibleIf(!GTValues.HT);
381+
FIELD_GENERATOR_UEV = addItem(211, "field.generator.uev").setInvisibleIf(!GTValues.HT);
382+
FIELD_GENERATOR_UIV = addItem(212, "field.generator.uiv").setInvisibleIf(!GTValues.HT);
383+
FIELD_GENERATOR_UXV = addItem(213, "field.generator.uxv").setInvisibleIf(!GTValues.HT);
384+
FIELD_GENERATOR_OpV = addItem(214, "field.generator.opv").setInvisibleIf(!GTValues.HT);
385385

386386
// Emitters: ID 216-230
387387
EMITTER_LV = addItem(217, "emitter.lv");
@@ -392,11 +392,11 @@ public void registerSubItems() {
392392
EMITTER_LuV = addItem(222, "emitter.luv");
393393
EMITTER_ZPM = addItem(223, "emitter.zpm");
394394
EMITTER_UV = addItem(224, "emitter.uv");
395-
EMITTER_UHV = addItem(225, "emitter.uhv").setInvisible(GTValues.HT);
396-
EMITTER_UEV = addItem(226, "emitter.uev").setInvisible(GTValues.HT);
397-
EMITTER_UIV = addItem(227, "emitter.uiv").setInvisible(GTValues.HT);
398-
EMITTER_UXV = addItem(228, "emitter.uxv").setInvisible(GTValues.HT);
399-
EMITTER_OpV = addItem(229, "emitter.opv").setInvisible(GTValues.HT);
395+
EMITTER_UHV = addItem(225, "emitter.uhv").setInvisibleIf(!GTValues.HT);
396+
EMITTER_UEV = addItem(226, "emitter.uev").setInvisibleIf(!GTValues.HT);
397+
EMITTER_UIV = addItem(227, "emitter.uiv").setInvisibleIf(!GTValues.HT);
398+
EMITTER_UXV = addItem(228, "emitter.uxv").setInvisibleIf(!GTValues.HT);
399+
EMITTER_OpV = addItem(229, "emitter.opv").setInvisibleIf(!GTValues.HT);
400400

401401
// Sensors: ID 231-245
402402
SENSOR_LV = addItem(232, "sensor.lv");
@@ -407,11 +407,11 @@ public void registerSubItems() {
407407
SENSOR_LuV = addItem(237, "sensor.luv");
408408
SENSOR_ZPM = addItem(238, "sensor.zpm");
409409
SENSOR_UV = addItem(239, "sensor.uv");
410-
SENSOR_UHV = addItem(240, "sensor.uhv").setInvisible(GTValues.HT);
411-
SENSOR_UEV = addItem(241, "sensor.uev").setInvisible(GTValues.HT);
412-
SENSOR_UIV = addItem(242, "sensor.uiv").setInvisible(GTValues.HT);
413-
SENSOR_UXV = addItem(243, "sensor.uxv").setInvisible(GTValues.HT);
414-
SENSOR_OpV = addItem(244, "sensor.opv").setInvisible(GTValues.HT);
410+
SENSOR_UHV = addItem(240, "sensor.uhv").setInvisibleIf(!GTValues.HT);
411+
SENSOR_UEV = addItem(241, "sensor.uev").setInvisibleIf(!GTValues.HT);
412+
SENSOR_UIV = addItem(242, "sensor.uiv").setInvisibleIf(!GTValues.HT);
413+
SENSOR_UXV = addItem(243, "sensor.uxv").setInvisibleIf(!GTValues.HT);
414+
SENSOR_OpV = addItem(244, "sensor.opv").setInvisibleIf(!GTValues.HT);
415415

416416
// Fluid Regulators: ID 246-260
417417
FLUID_REGULATOR_LV = addItem(247, "fluid.regulator.lv").addComponents(new TooltipBehavior(lines -> {

0 commit comments

Comments
 (0)