Skip to content

Commit baf2652

Browse files
author
Circulate233
committed
fix #34
1 parent 59aaff3 commit baf2652

8 files changed

Lines changed: 101 additions & 35 deletions

File tree

dependencies.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,8 @@ dependencies {
1313
runtimeOnly(rfg.deobf("curse.maven:Cucumber-1.12.2-1.1.3-272335:2645867"))
1414
compileOnly(rfg.deobf("curse.maven:CodeChickenLib-1.12.2-3.2.4.1-universal-242818:2779848"))
1515
implementation(rfg.deobf("curse.maven:ae2-extended-life-570458:6302098"))
16-
implementation(rfg.deobf("curse.maven:ae2fluidcraft-rework-unofficial-1404390:7403081"))
17-
compileOnly(rfg.deobf("curse.maven:ae2-fluid-crafting-rework-623955:5504001"))
16+
compileOnly(rfg.deobf("curse.maven:ae2fluidcraft-rework-unofficial-1404390:7403081"))
17+
implementation(rfg.deobf("curse.maven:ae2-fluid-crafting-rework-623955:5504001"))
1818
compileOnly(rfg.deobf("curse.maven:baubles-227083:2518667"))
1919
compileOnly(rfg.deobf("curse.maven:not-enough-energistics-515565:5234732"))
2020
implementation(rfg.deobf("curse.maven:extended-crafting-nomifactory-edition-398267:5778512"))

src/main/java/com/circulation/random_complement/client/handler/ItemTooltipHandler.java

Lines changed: 26 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,16 @@
11
package com.circulation.random_complement.client.handler;
22

3-
import com.circulation.random_complement.RandomComplement;
43
import com.circulation.random_complement.client.ItemTooltipAdd;
54
import it.unimi.dsi.fastutil.objects.ObjectArrayList;
65
import it.unimi.dsi.fastutil.objects.Reference2ObjectLinkedOpenHashMap;
76
import net.minecraft.client.Minecraft;
87
import net.minecraft.client.gui.GuiScreen;
98
import net.minecraft.client.resources.I18n;
10-
import net.minecraftforge.client.event.GuiScreenEvent;
119
import net.minecraftforge.event.entity.player.ItemTooltipEvent;
1210
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
1311
import net.minecraftforge.fml.relauncher.Side;
1412
import net.minecraftforge.fml.relauncher.SideOnly;
1513

16-
import java.util.Collections;
1714
import java.util.List;
1815
import java.util.Map;
1916

@@ -57,31 +54,31 @@ public void onItemTooltip(ItemTooltipEvent event) {
5754
}
5855
}
5956
}
60-
61-
@SubscribeEvent
62-
public void onClientTooltip(GuiScreenEvent.DrawScreenEvent.Pre event) {
63-
if (RandomComplement.proxy.isMouseHasItem()) return;
64-
final var gui = Minecraft.getMinecraft().currentScreen;
65-
if (gui == null) return;
66-
if (GuiScreen.isAltKeyDown()) {
67-
for (var entry : map.entrySet()) {
68-
if (entry.getKey().isInstance(gui)) {
69-
for (var tooltip : entry.getValue()) {
70-
gui.drawHoveringText(tooltip.get(), GuiMouseHelper.getMouseX(), GuiMouseHelper.getMouseY());
71-
}
72-
}
73-
}
74-
} else {
75-
for (var entry : map.entrySet()) {
76-
if (entry.getKey().isInstance(gui)) {
77-
for (var tooltip : entry.getValue()) {
78-
if (tooltip.get().isEmpty()) continue;
79-
gui.drawHoveringText(Collections.singletonList(I18n.format("text.rc.tooltip.press_alt")), GuiMouseHelper.getMouseX(), GuiMouseHelper.getMouseY());
80-
break;
81-
}
82-
}
83-
}
84-
}
85-
}
57+
//
58+
// @SubscribeEvent
59+
// public void onClientTooltip(GuiScreenEvent.DrawScreenEvent.Pre event) {
60+
// if (RandomComplement.proxy.isMouseHasItem()) return;
61+
// final var gui = Minecraft.getMinecraft().currentScreen;
62+
// if (gui == null) return;
63+
// if (GuiScreen.isAltKeyDown()) {
64+
// for (var entry : map.entrySet()) {
65+
// if (entry.getKey().isInstance(gui)) {
66+
// for (var tooltip : entry.getValue()) {
67+
// gui.drawHoveringText(tooltip.get(), GuiMouseHelper.getMouseX(), GuiMouseHelper.getMouseY());
68+
// }
69+
// }
70+
// }
71+
// } else {
72+
// for (var entry : map.entrySet()) {
73+
// if (entry.getKey().isInstance(gui)) {
74+
// for (var tooltip : entry.getValue()) {
75+
// if (tooltip.get().isEmpty()) continue;
76+
// gui.drawHoveringText(Collections.singletonList(I18n.format("text.rc.tooltip.press_alt")), GuiMouseHelper.getMouseX(), GuiMouseHelper.getMouseY());
77+
// break;
78+
// }
79+
// }
80+
// }
81+
// }
82+
// }
8683

8784
}

src/main/java/com/circulation/random_complement/mixin/ae2/gui/MixinAEBaseGui.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ public MixinAEBaseGui(Container inventorySlotsIn) {
5252

5353
@Shadow
5454
public void drawSlot(@NotNull Slot s) {
55-
super.drawSlot(s);
55+
5656
}
5757

5858
@Unique

src/main/java/com/circulation/random_complement/mixin/ae2fc/gui/MixinGuiUltimateEncoder.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222
import org.jetbrains.annotations.NotNull;
2323
import org.lwjgl.input.Mouse;
2424
import org.spongepowered.asm.mixin.Final;
25-
import org.spongepowered.asm.mixin.Intrinsic;
2625
import org.spongepowered.asm.mixin.Mixin;
2726
import org.spongepowered.asm.mixin.Shadow;
2827
import org.spongepowered.asm.mixin.Unique;
@@ -33,7 +32,7 @@
3332
import java.util.Collection;
3433
import java.util.Set;
3534

36-
@Mixin(value = GuiUltimateEncoder.class, remap = false)
35+
@Mixin(value = GuiUltimateEncoder.class, remap = false, priority = 1001)
3736
public abstract class MixinGuiUltimateEncoder extends MixinAEBaseGui implements RCAECraftablesGui {
3837

3938
@Unique
@@ -73,7 +72,7 @@ protected void actionPerformedMixin(GuiButton btn, CallbackInfo ci) {
7372
}
7473
}
7574

76-
@Intrinsic
75+
@Override
7776
public void drawSlot(@NotNull Slot slot) {
7877
if (!this.randomComplement$craftableCache.isEmpty() && slot instanceof SlotFake slotFake) {
7978
if (!slotFake.shouldDisplay()) return;
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
package com.circulation.random_complement.mixin.ae2fc.news;
2+
3+
import appeng.container.slot.SlotFake;
4+
import com.circulation.random_complement.client.RCAECraftablesGui;
5+
import com.circulation.random_complement.common.util.MEHandler;
6+
import com.circulation.random_complement.mixin.ae2.gui.MixinAEBaseGui;
7+
import com.glodblock.github.client.GuiUltimateEncoder;
8+
import net.minecraft.inventory.Container;
9+
import net.minecraft.inventory.Slot;
10+
import org.jetbrains.annotations.NotNull;
11+
import org.spongepowered.asm.mixin.Mixin;
12+
13+
@Mixin(value = GuiUltimateEncoder.class, remap = false)
14+
public abstract class MixinGuiUltimateEncoder extends MixinAEBaseGui implements RCAECraftablesGui {
15+
16+
public MixinGuiUltimateEncoder(Container inventorySlotsIn) {
17+
super(inventorySlotsIn);
18+
}
19+
20+
@Override
21+
public void drawSlot(@NotNull Slot slot) {
22+
if (!this.r$getCraftablesCache().isEmpty() && slot instanceof SlotFake slotFake) {
23+
if (!slotFake.shouldDisplay()) return;
24+
var item = slotFake.getDisplayStack();
25+
if (!item.isEmpty()) {
26+
if (this.r$getCraftablesCache().contains(MEHandler.packAEItem(item))) {
27+
r$getPlusSlot().add(slotFake);
28+
}
29+
}
30+
}
31+
super.drawSlot(slot);
32+
}
33+
}
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
package com.circulation.random_complement.mixin.ae2fc.old;
2+
3+
import appeng.container.slot.SlotFake;
4+
import com.circulation.random_complement.client.RCAECraftablesGui;
5+
import com.circulation.random_complement.common.util.MEHandler;
6+
import com.circulation.random_complement.mixin.ae2.gui.MixinAEBaseGui;
7+
import com.glodblock.github.client.GuiUltimateEncoder;
8+
import net.minecraft.inventory.Container;
9+
import net.minecraft.inventory.Slot;
10+
import org.spongepowered.asm.mixin.Mixin;
11+
import org.spongepowered.asm.mixin.injection.At;
12+
import org.spongepowered.asm.mixin.injection.Inject;
13+
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
14+
15+
@Mixin(value = GuiUltimateEncoder.class, remap = false)
16+
public abstract class MixinGuiUltimateEncoder extends MixinAEBaseGui implements RCAECraftablesGui {
17+
18+
public MixinGuiUltimateEncoder(Container inventorySlotsIn) {
19+
super(inventorySlotsIn);
20+
}
21+
22+
@SuppressWarnings("UnresolvedMixinReference")
23+
@Inject(method = "drawSlot", at = @At("HEAD"), remap = false)
24+
public void drawSlot(Slot slot, CallbackInfo ci) {
25+
if (!this.r$getCraftablesCache().isEmpty() && slot instanceof SlotFake slotFake) {
26+
if (!slotFake.shouldDisplay()) return;
27+
var item = slotFake.getDisplayStack();
28+
if (!item.isEmpty()) {
29+
if (this.r$getCraftablesCache().contains(MEHandler.packAEItem(item))) {
30+
r$getPlusSlot().add(slotFake);
31+
}
32+
}
33+
}
34+
}
35+
}

src/main/resources/mixins.random_complement.ae2fc.new.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
"client": [
99
"MixinGuiExtendedFluidPatternTerminal",
1010
"MixinGuiFluidPatternTerminal",
11+
"MixinGuiUltimateEncoder",
1112
"MixinGuiWirelessFluidPatternTerminal"
1213
]
1314
}

src/main/resources/mixins.random_complement.ae2fc.old.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
"client": [
99
"MixinGuiExtendedFluidPatternTerminal",
1010
"MixinGuiFluidPatternTerminal",
11+
"MixinGuiUltimateEncoder",
1112
"MixinGuiWirelessFluidPatternTerminal"
1213
]
1314
}

0 commit comments

Comments
 (0)