Skip to content

Commit 334d508

Browse files
committed
Changelog:
- Adding the Ctrl override in inventories
1 parent a164679 commit 334d508

3 files changed

Lines changed: 31 additions & 2 deletions

File tree

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ minecraft_version=1.16.5
66
yarn_mappings=1.16.5+build.5
77
loader_version=0.11.2
88
# Mod Properties
9-
mod_version=1.1
9+
mod_version=1.2
1010
maven_group=me.PolishKrowa
1111
archives_base_name=ctrl-q
1212
# Dependencies
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
package me.polishkrowa.ctrlq.mixin;
2+
3+
import net.minecraft.client.MinecraftClient;
4+
import net.minecraft.client.gui.screen.ingame.HandledScreen;
5+
import net.minecraft.client.util.InputUtil;
6+
import net.minecraft.screen.slot.Slot;
7+
import net.minecraft.screen.slot.SlotActionType;
8+
import org.jetbrains.annotations.Nullable;
9+
import org.spongepowered.asm.mixin.Mixin;
10+
import org.spongepowered.asm.mixin.Shadow;
11+
import org.spongepowered.asm.mixin.injection.At;
12+
import org.spongepowered.asm.mixin.injection.Inject;
13+
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
14+
15+
@Mixin(HandledScreen.class)
16+
public class MixinHandledScreen {
17+
@Shadow @Nullable public Slot focusedSlot;
18+
19+
@Inject(method = "keyPressed", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/gui/screen/ingame/HandledScreen;hasControlDown()Z"), cancellable = true)
20+
private void injected(int keyCode, int scanCode, int modifiers, CallbackInfoReturnable<Boolean> cir) {
21+
this.onMouseClick(this.focusedSlot, this.focusedSlot.id, InputUtil.isKeyPressed(MinecraftClient.getInstance().getWindow().getHandle(), 341) || InputUtil.isKeyPressed(MinecraftClient.getInstance().getWindow().getHandle(), 345) ? 1 : 0, SlotActionType.THROW);
22+
23+
cir.setReturnValue(true);
24+
}
25+
26+
@Shadow(aliases = {"onMouseClick"})
27+
private void onMouseClick(Slot focusedSlot, int id, int i, SlotActionType aThrow) {}
28+
29+
}

src/main/resources/ctrl-q.mixins.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
"compatibilityLevel": "JAVA_8",
66
"mixins": [
77
],
8-
"client": ["MixinMinecraftClient"],
8+
"client": ["MixinMinecraftClient","MixinHandledScreen"],
99
"injectors": {
1010
"defaultRequire": 1
1111
}

0 commit comments

Comments
 (0)