Skip to content

Commit 390c4df

Browse files
committed
Update mappings for 26.1
1 parent 1aaa728 commit 390c4df

19 files changed

Lines changed: 252 additions & 265 deletions

build.gradle

Lines changed: 19 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,54 +1,55 @@
11
plugins {
2-
id 'fabric-loom'
2+
id 'net.fabricmc.fabric-loom' version "${loom_version}"
33
id 'maven-publish'
44
}
55

66
version = project.mod_version
77
group = project.maven_group
88

9+
base {
10+
archivesName = project.archives_base_name
11+
}
12+
913
repositories {
1014
maven { url "https://maven.terraformersmc.com/" }
1115
}
1216

1317
dependencies {
1418
minecraft "com.mojang:minecraft:${project.minecraft_version}"
15-
mappings "net.fabricmc:yarn:${project.yarn_mappings}:v2"
16-
modImplementation "net.fabricmc:fabric-loader:${project.loader_version}"
17-
18-
modImplementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_version}"
1919

20-
modImplementation("com.terraformersmc:modmenu:${project.modmenu_version}") {
21-
exclude module: "fabric-api"
22-
}
23-
}
20+
implementation "net.fabricmc:fabric-loader:${project.loader_version}"
21+
implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}"
22+
implementation "com.terraformersmc:modmenu:${project.modmenu_version}"
2423

25-
base {
26-
archivesName = project.archives_base_name
24+
// modImplementation("com.terraformersmc:modmenu:${project.modmenu_version}") {
25+
// exclude module: "fabric-api"
26+
// }
2727
}
2828

2929
processResources {
3030
inputs.property "version", project.version
3131

3232
filesMatching("fabric.mod.json") {
33-
expand "version": project.version
33+
expand "version": inputs.properties.version
3434
}
3535
}
3636

3737
tasks.withType(JavaCompile).configureEach {
38-
it.options.encoding = "UTF-8"
39-
it.options.release = 21
38+
it.options.release = 25
4039
}
4140

4241
java {
4342
withSourcesJar()
4443

45-
sourceCompatibility = JavaVersion.VERSION_21
46-
targetCompatibility = JavaVersion.VERSION_21
44+
sourceCompatibility = JavaVersion.VERSION_25
45+
targetCompatibility = JavaVersion.VERSION_25
4746
}
4847

4948
jar {
50-
from("LICENSE.md") {
51-
rename { "${it}_${base.archivesName.get()}"}
49+
inputs.property "archivesName", project.base.archivesName
50+
51+
from("LICENSE") {
52+
rename { "${it}_${inputs.properties.archivesName}" }
5253
}
5354
}
5455

gradle.properties

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,17 @@ org.gradle.jvmargs=-Xmx4G
22

33
# Fabric Properties
44
# Check these on https://fabricmc.net/develop/
5-
minecraft_version=1.21.10
6-
yarn_mappings=1.21.10+build.3
7-
loader_version=0.18.2
5+
minecraft_version=26.1-snapshot-6
6+
loader_version=0.18.4
87

98
# Fabric API
10-
fabric_version=0.138.3+1.21.10
11-
loom_version=1.14-SNAPSHOT
9+
fabric_api_version=0.143.2+26.1
10+
loom_version=1.15-SNAPSHOT
1211

1312
# Mod Properties
14-
mod_version=2.0.0-beta.2
13+
mod_version=2.0.0-rc.1
1514
maven_group=net.immortaldevs
1615
archives_base_name=fabric-bind-cmd
1716

1817
# Dependencies
19-
modmenu_version=16.0.0-rc.1
18+
modmenu_version=18.0.0-alpha.5

settings.gradle

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,7 @@ pluginManagement {
44
name = 'Fabric'
55
url = 'https://maven.fabricmc.net/'
66
}
7+
mavenCentral()
78
gradlePluginPortal()
89
}
9-
10-
plugins {
11-
id 'fabric-loom' version loom_version
12-
}
13-
}
10+
}

src/main/java/net/immortaldevs/bindcmd/BindCmdClient.java

Lines changed: 16 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -6,35 +6,34 @@
66
import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking;
77
import net.fabricmc.fabric.api.networking.v1.PayloadTypeRegistry;
88
import net.immortaldevs.bindcmd.config.Config;
9-
import net.minecraft.client.MinecraftClient;
9+
import net.minecraft.client.Minecraft;
1010

1111
public final class BindCmdClient implements ClientModInitializer {
1212
private static long lastKeyPress = 0L;
1313
private static final long COOLDOWN = 200L;
1414

1515
@Override
1616
public void onInitializeClient() {
17-
PayloadTypeRegistry.playS2C().register(
18-
ConfigS2CPayload.ID, ConfigS2CPayload.CODEC
19-
);
17+
PayloadTypeRegistry.clientboundPlay().register(ConfigPayload.ID, ConfigPayload.CODEC);
18+
PayloadTypeRegistry.clientboundConfiguration().register(ConfigPayload.ID, ConfigPayload.CODEC);
2019

2120
Config.load();
2221

2322
ClientTickEvents.END_CLIENT_TICK.register(BindCmdClient::onEndClientTick);
24-
ClientPlayConnectionEvents.JOIN.register((handler, sender, client) -> onPlayerJoin(client));
25-
ClientPlayConnectionEvents.DISCONNECT.register((handler, client) -> onPlayerDisconnect());
23+
ClientPlayConnectionEvents.JOIN.register((_, _, client) -> onPlayerJoin(client));
24+
ClientPlayConnectionEvents.DISCONNECT.register((_, _) -> onPlayerDisconnect());
2625

2726
ClientPlayNetworking.registerGlobalReceiver(
28-
ConfigS2CPayload.ID,
29-
(payload, context) -> Config.setServerBindings(payload.config())
27+
ConfigPayload.ID,
28+
(payload, _) -> Config.setServerBindings(payload.config())
3029
);
3130
}
3231

33-
private static void onPlayerJoin(MinecraftClient client) {
32+
private static void onPlayerJoin(Minecraft client) {
3433
Config.clearServerBindings();
35-
if (client.getServer() != null && client.getServer().isSingleplayer()) {
36-
var server = client.getServer();
37-
var dir = server.session.getDirectory().path();
34+
if (client.getSingleplayerServer() != null && client.getSingleplayerServer().isSingleplayer()) {
35+
var server = client.getSingleplayerServer();
36+
var dir = server.storageSource.getLevelDirectory().path();
3837
Config.loadWorldConfig(dir);
3938
}
4039
}
@@ -43,15 +42,15 @@ private static void onPlayerDisconnect() {
4342
Config.clearServerBindings();
4443
}
4544

46-
private static void onEndClientTick(MinecraftClient client) {
45+
private static void onEndClientTick(Minecraft client) {
4746
if (System.currentTimeMillis() - lastKeyPress < COOLDOWN) return;
4847
for (CommandBinding binding : Config.getBindings()) {
4948
handleBinding(client, binding);
5049
}
5150
}
5251

53-
private static void handleBinding(MinecraftClient client, CommandBinding binding) {
54-
var networkHandler = client.getNetworkHandler();
52+
private static void handleBinding(Minecraft client, CommandBinding binding) {
53+
var networkHandler = client.getConnection();
5554

5655
if (binding.isUnknown() || networkHandler == null) {
5756
return;
@@ -66,8 +65,8 @@ private static void handleBinding(MinecraftClient client, CommandBinding binding
6665
for (String command : commands) {
6766
Command cmd = new Command(command);
6867
switch (cmd.getType()) {
69-
case COMMAND -> networkHandler.sendChatCommand(cmd.getCommand());
70-
case MESSAGE -> networkHandler.sendChatMessage(cmd.getCommand());
68+
case COMMAND -> networkHandler.sendCommand(cmd.getCommand());
69+
case MESSAGE -> networkHandler.sendChat(cmd.getCommand());
7170
case NONE -> {
7271
return;
7372
}

src/main/java/net/immortaldevs/bindcmd/BindCmdServer.java

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
import net.immortaldevs.bindcmd.config.ConfigEntry;
99
import net.immortaldevs.bindcmd.config.ConfigLoader;
1010
import net.minecraft.server.MinecraftServer;
11-
import net.minecraft.server.network.ServerPlayerEntity;
11+
import net.minecraft.server.level.ServerPlayer;
1212

1313
import java.util.List;
1414

@@ -17,18 +17,17 @@ public final class BindCmdServer implements DedicatedServerModInitializer {
1717

1818
@Override
1919
public void onInitializeServer() {
20-
PayloadTypeRegistry.playS2C().register(
21-
ConfigS2CPayload.ID, ConfigS2CPayload.CODEC
22-
);
20+
PayloadTypeRegistry.clientboundPlay().register(ConfigPayload.ID, ConfigPayload.CODEC);
21+
PayloadTypeRegistry.clientboundConfiguration().register(ConfigPayload.ID, ConfigPayload.CODEC);
2322

2423
ServerLifecycleEvents.SERVER_STARTED.register((MinecraftServer minecraftServer) -> {
25-
ConfigLoader loader = new ConfigLoader(minecraftServer.getRunDirectory().toFile());
24+
ConfigLoader loader = new ConfigLoader(minecraftServer.getServerDirectory().toFile());
2625
bindings = loader.read();
2726
});
2827

29-
ServerEntityEvents.ENTITY_LOAD.register((entity, world) -> {
30-
if (!(entity instanceof ServerPlayerEntity player)) return;
31-
ConfigS2CPayload payload = new ConfigS2CPayload(bindings);
28+
ServerEntityEvents.ENTITY_LOAD.register((entity, _) -> {
29+
if (!(entity instanceof ServerPlayer player)) return;
30+
ConfigPayload payload = new ConfigPayload(bindings);
3231
ServerPlayNetworking.send(player, payload);
3332
});
3433
}

src/main/java/net/immortaldevs/bindcmd/Command.java

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
package net.immortaldevs.bindcmd;
22

3-
import net.minecraft.client.MinecraftClient;
4-
import net.minecraft.client.network.ClientPlayerEntity;
5-
import net.minecraft.util.collection.ArrayListDeque;
3+
import net.minecraft.client.Minecraft;
4+
import net.minecraft.client.player.LocalPlayer;
5+
import net.minecraft.util.ArrayListDeque;
66

77
import java.util.*;
88
import java.util.regex.Matcher;
@@ -57,11 +57,9 @@ private String getLastMessage(String command) {
5757
}
5858

5959
private ArrayListDeque<String> getChatHistory() {
60-
var inGameHud = MinecraftClient.getInstance().inGameHud;
61-
if (inGameHud == null) return new ArrayListDeque<>();
62-
var chatHud = inGameHud.getChatHud();
63-
if (chatHud == null) return new ArrayListDeque<>();
64-
return chatHud.getMessageHistory();
60+
var inGameHud = Minecraft.getInstance().gui;
61+
var chatHud = inGameHud.getChat();
62+
return chatHud.getRecentChat();
6563
}
6664

6765
private String processMessage(String message) {
@@ -88,15 +86,15 @@ private String processMessage(String message) {
8886
}
8987

9088
private String replaceVariables(String expression) {
91-
MinecraftClient client = MinecraftClient.getInstance();
92-
ClientPlayerEntity player = client.player;
89+
Minecraft client = Minecraft.getInstance();
90+
LocalPlayer player = client.player;
9391
if (player == null) return expression;
9492

9593
Map<String, String> variables = Map.of(
9694
"username", player.getName().getString(),
9795
"maxHealth", String.valueOf(player.getMaxHealth()),
9896
"health", String.valueOf(player.getHealth()),
99-
"hunger", String.valueOf(player.getHungerManager().getFoodLevel()),
97+
"hunger", String.valueOf(player.getFoodData().getFoodLevel()),
10098
"x", String.valueOf(player.getBlockX()),
10199
"y", String.valueOf(player.getBlockY()),
102100
"z", String.valueOf(player.getBlockZ())
Lines changed: 23 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,41 @@
11
package net.immortaldevs.bindcmd;
22

3-
import net.minecraft.client.input.KeyInput;
4-
import net.minecraft.client.option.KeyBinding;
5-
import net.minecraft.client.util.InputUtil;
6-
import net.minecraft.util.Identifier;
3+
import com.mojang.blaze3d.platform.InputConstants;
4+
import net.minecraft.client.KeyMapping;
5+
import net.minecraft.client.input.KeyEvent;
6+
import net.minecraft.resources.Identifier;
77

88
public class CommandBinding {
9-
private static final KeyBinding.Category CATEGORY = new KeyBinding.Category(
10-
Identifier.of("bindcmd", "category")
9+
private static final KeyMapping.Category CATEGORY = new KeyMapping.Category(
10+
Identifier.fromNamespaceAndPath("bindcmd", "category")
1111
);
1212

1313
public boolean wasPressed = false;
1414
public String command;
1515

1616
private BindSource source = BindSource.CLIENT;
17-
private KeyBinding key;
17+
private KeyMapping key;
1818

19-
public CommandBinding(String command, KeyBinding key) {
19+
public CommandBinding(String command, KeyMapping key) {
2020
this.command = command;
2121
this.key = key;
2222
}
2323

2424
public CommandBinding(String command) {
25-
this(command, new KeyBinding("key.keyboard.unknown", -1, CATEGORY));
25+
this(command, new KeyMapping("key.keyboard.unknown", -1, CATEGORY));
2626
}
2727

2828
public CommandBinding(String command, String translationKey, BindSource source) {
2929
this(command);
3030
this.command = command;
3131
this.source = source;
32-
InputUtil.Key keyFromTranslation = InputUtil.fromTranslationKey(translationKey);
33-
int keyCode = keyFromTranslation.getCode();
34-
InputUtil.Type type = translationKey.startsWith("key.mouse") ? InputUtil.Type.MOUSE : InputUtil.Type.KEYSYM;
35-
this.key = new KeyBinding(translationKey, type, keyCode, CATEGORY);
32+
InputConstants.Key keyFromTranslation = InputConstants.getKey(translationKey);
33+
int keyCode = keyFromTranslation.getValue();
34+
InputConstants.Type type = translationKey.startsWith("key.mouse") ? InputConstants.Type.MOUSE : InputConstants.Type.KEYSYM;
35+
this.key = new KeyMapping(translationKey, type, keyCode, CATEGORY);
3636
}
3737

38-
public KeyBinding getKey() {
38+
public KeyMapping getKey() {
3939
return this.key;
4040
}
4141

@@ -44,31 +44,31 @@ public BindSource getSource() {
4444
}
4545

4646
public String getTranslationKey() {
47-
return this.key.getBoundKeyTranslationKey();
47+
return this.key.saveString();
4848
}
4949

5050
public boolean isUnknown() {
5151
return getTranslationKey().endsWith("unknown");
5252
}
5353

5454
public boolean isPressed() {
55-
return key.isPressed();
55+
return key.isDown();
5656
}
5757

58-
public void setBoundKey(KeyInput keyInput) {
58+
public void setBoundKey(KeyEvent keyInput) {
5959
unbind();
60-
InputUtil.Key inpuKey = keyInput.isEscape() ? InputUtil.UNKNOWN_KEY : InputUtil.fromKeyCode(keyInput);
61-
key = new KeyBinding(inpuKey.getTranslationKey(), inpuKey.getCode(), CATEGORY);
60+
InputConstants.Key inpuKey = keyInput.isEscape() ? InputConstants.UNKNOWN : InputConstants.getKey(keyInput);
61+
key = new KeyMapping(inpuKey.getName(), inpuKey.getValue(), CATEGORY);
6262
}
6363

6464
public void setBoundMouse(int button) {
6565
unbind();
66-
InputUtil.Key inpuKey = InputUtil.Type.MOUSE.createFromCode(button);
67-
key = new KeyBinding(inpuKey.getTranslationKey(), InputUtil.Type.MOUSE, inpuKey.getCode(), CATEGORY);
66+
InputConstants.Key inpuKey = InputConstants.Type.MOUSE.getOrCreate(button);
67+
key = new KeyMapping(inpuKey.getName(), InputConstants.Type.MOUSE, inpuKey.getValue(), CATEGORY);
6868
}
6969

7070
public void unbind() {
71-
KeyBinding.KEYS_BY_ID.remove(getTranslationKey());
72-
KeyBinding.updateKeysByCode();
71+
KeyMapping.ALL.remove(getTranslationKey());
72+
KeyMapping.resetMapping();
7373
}
7474
}

0 commit comments

Comments
 (0)