Skip to content

Commit 9a9b557

Browse files
authored
switch grid overlays to UITexture (#4719)
1 parent d534954 commit 9a9b557

15 files changed

Lines changed: 140 additions & 115 deletions

File tree

src/main/java/com/gregtechceu/gtceu/api/blockentity/PipeBlockEntity.java

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,21 +7,20 @@
77
import com.gregtechceu.gtceu.api.cover.CoverBehavior;
88
import com.gregtechceu.gtceu.api.data.chemical.material.Material;
99
import com.gregtechceu.gtceu.api.data.tag.TagPrefix;
10-
import com.gregtechceu.gtceu.api.gui.GuiTextures;
1110
import com.gregtechceu.gtceu.api.item.tool.GTToolType;
1211
import com.gregtechceu.gtceu.api.item.tool.IToolGridHighlight;
1312
import com.gregtechceu.gtceu.api.machine.TickableSubscription;
13+
import com.gregtechceu.gtceu.api.mui.drawable.UITexture;
1414
import com.gregtechceu.gtceu.api.pipenet.*;
1515
import com.gregtechceu.gtceu.api.sync_system.ManagedSyncBlockEntity;
1616
import com.gregtechceu.gtceu.api.sync_system.annotations.RerenderOnChanged;
1717
import com.gregtechceu.gtceu.api.sync_system.annotations.SaveField;
1818
import com.gregtechceu.gtceu.api.sync_system.annotations.SyncToClient;
1919
import com.gregtechceu.gtceu.common.data.GTMaterialBlocks;
2020
import com.gregtechceu.gtceu.common.data.GTMaterials;
21+
import com.gregtechceu.gtceu.common.mui.GTGuiTextures;
2122
import com.gregtechceu.gtceu.utils.GTUtil;
2223

23-
import com.lowdragmc.lowdraglib.gui.texture.ResourceTexture;
24-
2524
import net.minecraft.MethodsReturnNonnullByDefault;
2625
import net.minecraft.core.BlockPos;
2726
import net.minecraft.core.Direction;
@@ -329,13 +328,13 @@ public boolean shouldRenderGrid(Player player, BlockPos pos, BlockState state, I
329328
return false;
330329
}
331330

332-
public ResourceTexture getPipeTexture(boolean isBlock) {
333-
return isBlock ? GuiTextures.TOOL_PIPE_CONNECT : GuiTextures.TOOL_PIPE_BLOCK;
331+
public UITexture getPipeTexture(boolean isBlock) {
332+
return isBlock ? GTGuiTextures.TOOL_PIPE_CONNECT : GTGuiTextures.TOOL_PIPE_BLOCK;
334333
}
335334

336335
@Override
337-
public @Nullable ResourceTexture sideTips(Player player, BlockPos pos, BlockState state, Set<GTToolType> toolTypes,
338-
Direction side) {
336+
public @Nullable UITexture sideTips(Player player, BlockPos pos, BlockState state, Set<GTToolType> toolTypes,
337+
Direction side) {
339338
if (toolTypes.contains(getPipeTuneTool())) {
340339
if (player.isShiftKeyDown() && this.canHaveBlockedFaces()) {
341340
return getPipeTexture(isBlocked(side));

src/main/java/com/gregtechceu/gtceu/api/cover/CoverBehavior.java

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,20 +2,19 @@
22

33
import com.gregtechceu.gtceu.api.blockentity.ICopyable;
44
import com.gregtechceu.gtceu.api.capability.ICoverable;
5-
import com.gregtechceu.gtceu.api.gui.GuiTextures;
65
import com.gregtechceu.gtceu.api.gui.fancy.IFancyConfigurator;
76
import com.gregtechceu.gtceu.api.item.tool.GTToolType;
87
import com.gregtechceu.gtceu.api.item.tool.IToolGridHighlight;
98
import com.gregtechceu.gtceu.api.machine.MetaMachine;
9+
import com.gregtechceu.gtceu.api.mui.drawable.UITexture;
1010
import com.gregtechceu.gtceu.api.sync_system.ISyncManaged;
1111
import com.gregtechceu.gtceu.api.sync_system.SyncDataHolder;
1212
import com.gregtechceu.gtceu.api.sync_system.annotations.SaveField;
1313
import com.gregtechceu.gtceu.api.sync_system.annotations.SyncToClient;
1414
import com.gregtechceu.gtceu.api.transfer.fluid.IFluidHandlerModifiable;
1515
import com.gregtechceu.gtceu.client.renderer.cover.ICoverRenderer;
1616
import com.gregtechceu.gtceu.client.renderer.cover.IDynamicCoverRenderer;
17-
18-
import com.lowdragmc.lowdraglib.gui.texture.ResourceTexture;
17+
import com.gregtechceu.gtceu.common.mui.GTGuiTextures;
1918

2019
import net.minecraft.MethodsReturnNonnullByDefault;
2120
import net.minecraft.core.BlockPos;
@@ -191,13 +190,13 @@ public boolean shouldRenderGrid(Player player, BlockPos pos, BlockState state, I
191190
}
192191

193192
@Override
194-
public @Nullable ResourceTexture sideTips(Player player, BlockPos pos, BlockState state, Set<GTToolType> toolTypes,
195-
Direction side) {
193+
public @Nullable UITexture sideTips(Player player, BlockPos pos, BlockState state, Set<GTToolType> toolTypes,
194+
Direction side) {
196195
if (toolTypes.contains(GTToolType.CROWBAR)) {
197-
return GuiTextures.TOOL_REMOVE_COVER;
196+
return GTGuiTextures.TOOL_REMOVE_COVER;
198197
}
199198
if ((toolTypes.isEmpty() || toolTypes.contains(GTToolType.SCREWDRIVER)) && this instanceof IMuiCover) {
200-
return GuiTextures.TOOL_COVER_SETTINGS;
199+
return GTGuiTextures.TOOL_COVER_SETTINGS;
201200
}
202201
return null;
203202
}

src/main/java/com/gregtechceu/gtceu/api/item/tool/IToolGridHighlight.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package com.gregtechceu.gtceu.api.item.tool;
22

3-
import com.lowdragmc.lowdraglib.gui.texture.ResourceTexture;
3+
import com.gregtechceu.gtceu.api.mui.drawable.UITexture;
44

55
import net.minecraft.core.BlockPos;
66
import net.minecraft.core.Direction;
@@ -19,8 +19,8 @@ default boolean shouldRenderGrid(Player player, BlockPos pos, BlockState state,
1919
return true;
2020
}
2121

22-
default @Nullable ResourceTexture sideTips(Player player, BlockPos pos, BlockState state, Set<GTToolType> toolTypes,
23-
Direction side) {
22+
default @Nullable UITexture sideTips(Player player, BlockPos pos, BlockState state, Set<GTToolType> toolTypes,
23+
Direction side) {
2424
return null;
2525
}
2626
}

src/main/java/com/gregtechceu/gtceu/api/machine/MetaMachine.java

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
import com.gregtechceu.gtceu.api.machine.trait.feature.IInteractionTrait;
3030
import com.gregtechceu.gtceu.api.machine.trait.feature.IRenderingTrait;
3131
import com.gregtechceu.gtceu.api.misc.*;
32+
import com.gregtechceu.gtceu.api.mui.drawable.UITexture;
3233
import com.gregtechceu.gtceu.api.pattern.util.RelativeDirection;
3334
import com.gregtechceu.gtceu.api.sync_system.ManagedSyncBlockEntity;
3435
import com.gregtechceu.gtceu.api.sync_system.SyncDataHolder;
@@ -44,11 +45,11 @@
4445
import com.gregtechceu.gtceu.common.cover.data.ManualIOMode;
4546
import com.gregtechceu.gtceu.common.machine.owner.MachineOwner;
4647
import com.gregtechceu.gtceu.common.machine.owner.PlayerOwner;
48+
import com.gregtechceu.gtceu.common.mui.GTGuiTextures;
4749
import com.gregtechceu.gtceu.utils.GTUtil;
4850
import com.gregtechceu.gtceu.utils.data.TagCompatibilityFixer;
4951

5052
import com.lowdragmc.lowdraglib.gui.texture.IGuiTexture;
51-
import com.lowdragmc.lowdraglib.gui.texture.ResourceTexture;
5253
import com.lowdragmc.lowdraglib.utils.DummyWorld;
5354

5455
import net.minecraft.ChatFormatting;
@@ -80,7 +81,6 @@
8081
import net.minecraftforge.api.distmarker.Dist;
8182
import net.minecraftforge.api.distmarker.OnlyIn;
8283
import net.minecraftforge.client.model.data.ModelData;
83-
import net.minecraftforge.client.model.data.ModelProperty;
8484
import net.minecraftforge.common.capabilities.Capability;
8585
import net.minecraftforge.common.capabilities.ForgeCapabilities;
8686
import net.minecraftforge.common.util.LazyOptional;
@@ -103,9 +103,6 @@
103103
public class MetaMachine extends ManagedSyncBlockEntity implements IGregtechBlockEntity, IToolable, IToolGridHighlight,
104104
IFancyTooltip, IPaintable, IMachineFeature, ICopyable {
105105

106-
public static final ModelProperty<BlockAndTintGetter> MODEL_DATA_LEVEL = new ModelProperty<>();
107-
public static final ModelProperty<BlockPos> MODEL_DATA_POS = new ModelProperty<>();
108-
109106
@Getter
110107
protected final SyncDataHolder syncDataHolder = new SyncDataHolder(this);
111108

@@ -511,8 +508,8 @@ public boolean shouldRenderGrid(Player player, BlockPos pos, BlockState state, I
511508
}
512509

513510
@Override
514-
public @Nullable ResourceTexture sideTips(Player player, BlockPos pos, BlockState state, Set<GTToolType> toolTypes,
515-
Direction side) {
511+
public @Nullable UITexture sideTips(Player player, BlockPos pos, BlockState state, Set<GTToolType> toolTypes,
512+
Direction side) {
516513
var cover = coverContainer.getCoverAtSide(side);
517514
if (cover != null) {
518515
var tips = cover.sideTips(player, pos, state, toolTypes, side);
@@ -522,16 +519,16 @@ public boolean shouldRenderGrid(Player player, BlockPos pos, BlockState state, I
522519
if (toolTypes.contains(GTToolType.WRENCH)) {
523520
if (player.isShiftKeyDown()) {
524521
if (isFacingValid(side) || (allowExtendedFacing() && hasFrontFacing() && side == getFrontFacing())) {
525-
return GuiTextures.TOOL_FRONT_FACING_ROTATION;
522+
return GTGuiTextures.TOOL_FRONT_FACING_ROTATION;
526523
}
527524
}
528525
} else if (toolTypes.contains(GTToolType.SOFT_MALLET)) {
529526
if (this instanceof IControllable controllable) {
530-
return controllable.isWorkingEnabled() ? GuiTextures.TOOL_START : GuiTextures.TOOL_PAUSE;
527+
return controllable.isWorkingEnabled() ? GTGuiTextures.TOOL_START : GTGuiTextures.TOOL_PAUSE;
531528
}
532529
} else if (toolTypes.contains(GTToolType.HARD_HAMMER)) {
533530
if (this instanceof IMufflableMachine mufflableMachine) {
534-
return mufflableMachine.isMuffled() ? GuiTextures.TOOL_SOUND : GuiTextures.TOOL_MUTE;
531+
return mufflableMachine.isMuffled() ? GTGuiTextures.TOOL_SOUND : GTGuiTextures.TOOL_MUTE;
535532
}
536533
}
537534

@@ -630,7 +627,7 @@ public void setFrontFacing(Direction facing) {
630627
}
631628

632629
@Override
633-
public @NotNull ModelData getModelData() {
630+
public ModelData getModelData() {
634631
ModelData.Builder data = super.getModelData().derive();
635632
updateModelData(data);
636633
return data.build();
@@ -641,7 +638,7 @@ public Direction getUpwardsFacing() {
641638
Direction.NORTH;
642639
}
643640

644-
public void setUpwardsFacing(@NotNull Direction upwardsFacing) {
641+
public void setUpwardsFacing(Direction upwardsFacing) {
645642
if (!getDefinition().isAllowExtendedFacing()) {
646643
return;
647644
}

src/main/java/com/gregtechceu/gtceu/api/machine/steam/SteamWorkableMachine.java

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,19 +4,18 @@
44
import com.gregtechceu.gtceu.api.capability.recipe.IO;
55
import com.gregtechceu.gtceu.api.capability.recipe.IRecipeHandler;
66
import com.gregtechceu.gtceu.api.capability.recipe.RecipeCapability;
7-
import com.gregtechceu.gtceu.api.gui.GuiTextures;
87
import com.gregtechceu.gtceu.api.item.tool.GTToolType;
98
import com.gregtechceu.gtceu.api.machine.feature.IMufflableMachine;
109
import com.gregtechceu.gtceu.api.machine.feature.IRecipeLogicMachine;
1110
import com.gregtechceu.gtceu.api.machine.trait.*;
11+
import com.gregtechceu.gtceu.api.mui.drawable.UITexture;
1212
import com.gregtechceu.gtceu.api.recipe.GTRecipeType;
1313
import com.gregtechceu.gtceu.api.sync_system.annotations.RerenderOnChanged;
1414
import com.gregtechceu.gtceu.api.sync_system.annotations.SaveField;
1515
import com.gregtechceu.gtceu.api.sync_system.annotations.SyncToClient;
16+
import com.gregtechceu.gtceu.common.mui.GTGuiTextures;
1617
import com.gregtechceu.gtceu.utils.ISubscription;
1718

18-
import com.lowdragmc.lowdraglib.gui.texture.ResourceTexture;
19-
2019
import net.minecraft.MethodsReturnNonnullByDefault;
2120
import net.minecraft.core.BlockPos;
2221
import net.minecraft.core.Direction;
@@ -192,12 +191,12 @@ public void clientTick() {
192191
// ******* Rendering ********//
193192
//////////////////////////////////////
194193
@Override
195-
public @Nullable ResourceTexture sideTips(Player player, BlockPos pos, BlockState state, Set<GTToolType> toolTypes,
196-
Direction side) {
194+
public @Nullable UITexture sideTips(Player player, BlockPos pos, BlockState state, Set<GTToolType> toolTypes,
195+
Direction side) {
197196
if (toolTypes.contains(GTToolType.WRENCH)) {
198197
if (!player.isShiftKeyDown()) {
199198
if (!hasFrontFacing() || side != getFrontFacing()) {
200-
return GuiTextures.TOOL_IO_FACING_ROTATION;
199+
return GTGuiTextures.TOOL_IO_FACING_ROTATION;
201200
}
202201
}
203202
}

src/main/java/com/gregtechceu/gtceu/api/machine/trait/AutoOutputTrait.java

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,21 @@
11
package com.gregtechceu.gtceu.api.machine.trait;
22

33
import com.gregtechceu.gtceu.api.capability.recipe.IO;
4-
import com.gregtechceu.gtceu.api.gui.GuiTextures;
54
import com.gregtechceu.gtceu.api.item.tool.GTToolType;
65
import com.gregtechceu.gtceu.api.machine.MetaMachine;
76
import com.gregtechceu.gtceu.api.machine.TickableSubscription;
87
import com.gregtechceu.gtceu.api.machine.trait.feature.IFrontFacingTrait;
98
import com.gregtechceu.gtceu.api.machine.trait.feature.IInteractionTrait;
109
import com.gregtechceu.gtceu.api.machine.trait.feature.IRenderingTrait;
10+
import com.gregtechceu.gtceu.api.mui.drawable.UITexture;
1111
import com.gregtechceu.gtceu.api.sync_system.annotations.RerenderOnChanged;
1212
import com.gregtechceu.gtceu.api.sync_system.annotations.SaveField;
1313
import com.gregtechceu.gtceu.api.sync_system.annotations.SyncToClient;
1414
import com.gregtechceu.gtceu.common.item.tool.behavior.ToolModeSwitchBehavior;
15+
import com.gregtechceu.gtceu.common.mui.GTGuiTextures;
1516
import com.gregtechceu.gtceu.utils.GTTransferUtils;
1617
import com.gregtechceu.gtceu.utils.ISubscription;
1718

18-
import com.lowdragmc.lowdraglib.gui.texture.ResourceTexture;
19-
2019
import net.minecraft.core.BlockPos;
2120
import net.minecraft.core.Direction;
2221
import net.minecraft.network.chat.Component;
@@ -300,8 +299,8 @@ public boolean shouldRenderGridOverlay(Player player, BlockPos pos, BlockState s
300299
}
301300

302301
@Override
303-
public @Nullable ResourceTexture getGridOverlayIcon(Player player, BlockPos pos, BlockState state,
304-
Set<GTToolType> toolTypes, Direction side) {
302+
public @Nullable UITexture getGridOverlayIcon(Player player, BlockPos pos, BlockState state,
303+
Set<GTToolType> toolTypes, Direction side) {
305304
if (toolTypes.contains(GTToolType.WRENCH)) {
306305
if (!player.isShiftKeyDown()) {
307306
if (!machine.hasFrontFacing() || side != machine.getFrontFacing()) {
@@ -310,14 +309,14 @@ public boolean shouldRenderGridOverlay(Player player, BlockPos pos, BlockState s
310309
var canSwitchFluidOutputToSide = supportsAutoOutputFluids() &&
311310
fluidOutputDirectionValidator.test(side) && side != getFluidOutputDirection();
312311
if (canSwitchItemOutputToSide || canSwitchFluidOutputToSide)
313-
return GuiTextures.TOOL_IO_FACING_ROTATION;
312+
return GTGuiTextures.TOOL_IO_FACING_ROTATION;
314313
}
315314
}
316315
}
317316
if (toolTypes.contains(GTToolType.SCREWDRIVER)) {
318317
if (side == getItemOutputDirection() || side == getFluidOutputDirection()) {
319-
if (player.isShiftKeyDown()) return GuiTextures.TOOL_ALLOW_INPUT;
320-
return GuiTextures.TOOL_AUTO_OUTPUT;
318+
if (player.isShiftKeyDown()) return GTGuiTextures.TOOL_ALLOW_INPUT;
319+
return GTGuiTextures.TOOL_AUTO_OUTPUT;
321320
}
322321
}
323322
return null;

src/main/java/com/gregtechceu/gtceu/api/machine/trait/feature/IRenderingTrait.java

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
package com.gregtechceu.gtceu.api.machine.trait.feature;
22

33
import com.gregtechceu.gtceu.api.item.tool.GTToolType;
4-
5-
import com.lowdragmc.lowdraglib.gui.texture.ResourceTexture;
4+
import com.gregtechceu.gtceu.api.mui.drawable.UITexture;
65

76
import net.minecraft.core.BlockPos;
87
import net.minecraft.core.Direction;
@@ -35,9 +34,9 @@ default boolean shouldRenderGridOverlay(Player player, BlockPos pos, BlockState
3534
* Called when the machine grid overlay is being rendered to determine the icon to be rendered within the grid
3635
* segment on a specifc side.
3736
*/
38-
default @Nullable ResourceTexture getGridOverlayIcon(Player player, BlockPos pos, BlockState state,
39-
Set<GTToolType> toolTypes,
40-
Direction side) {
37+
default @Nullable UITexture getGridOverlayIcon(Player player, BlockPos pos, BlockState state,
38+
Set<GTToolType> toolTypes,
39+
Direction side) {
4140
return null;
4241
}
4342

0 commit comments

Comments
 (0)