Compare commits

..
5 Commits
Author SHA1 Message Date
Nassim Jahnke 58442ec177 4.5.1 Release 2022-12-11 14:40:34 +01:00
Nassim Jahnke 2a49fc0bf8 Fix chat command decode
Fixes #3161
2022-12-09 13:15:42 +01:00
Nassim Jahnke 7fb8675271 Thank you gradle, very cool 2022-12-09 11:18:26 +01:00
Myles 57a8744a53 Use scheduleSend for enabled features packet 2022-12-07 22:16:50 +00:00
Myles 09222f1024 4.5.1-SNAPSHOT 2022-12-07 22:14:14 +00:00
9 changed files with 38 additions and 32 deletions

No files matched your search

@@ -55,6 +55,8 @@ public final class Protocol1_19_3To1_19_1 extends AbstractProtocol<ClientboundPa
public static final MappingData MAPPINGS = new MappingDataBase("1.19", "1.19.3", true);
private static final ByteArrayType.OptionalByteArrayType OPTIONAL_MESSAGE_SIGNATURE_BYTES_TYPE = new ByteArrayType.OptionalByteArrayType(256);
private static final ByteArrayType MESSAGE_SIGNATURE_BYTES_TYPE = new ByteArrayType(256);
private static final BitSetType ACKNOWLEDGED_BIT_SET_TYPE = new BitSetType(20);
private static final UUID ZERO_UUID = new UUID(0, 0);
private static final byte[] EMPTY_BYTES = new byte[0];
private final EntityPackets entityRewriter = new EntityPackets(this);
@@ -218,7 +220,7 @@ public final class Protocol1_19_3To1_19_1 extends AbstractProtocol<ClientboundPa
wrapper.write(Type.VAR_INT, 0);
for (int i = 0; i < signatures; i++) {
wrapper.read(Type.STRING); // Argument name
wrapper.read(OPTIONAL_MESSAGE_SIGNATURE_BYTES_TYPE); // Signature
wrapper.read(MESSAGE_SIGNATURE_BYTES_TYPE); // Signature
}
wrapper.write(Type.BOOLEAN, false); // No signed preview
@@ -229,7 +231,7 @@ public final class Protocol1_19_3To1_19_1 extends AbstractProtocol<ClientboundPa
wrapper.write(Type.OPTIONAL_PLAYER_MESSAGE_SIGNATURE, null); // No last unacknowledged
});
read(Type.VAR_INT); // Offset
read(new BitSetType(20)); // Acknowledged
read(ACKNOWLEDGED_BIT_SET_TYPE); // Acknowledged
}
});
registerServerbound(ServerboundPackets1_19_3.CHAT_MESSAGE, new PacketRemapper() {
@@ -252,7 +254,7 @@ public final class Protocol1_19_3To1_19_1 extends AbstractProtocol<ClientboundPa
wrapper.write(Type.OPTIONAL_PLAYER_MESSAGE_SIGNATURE, null); // No last unacknowledged
});
read(Type.VAR_INT); // Offset
read(new BitSetType(20)); // Acknowledged
read(ACKNOWLEDGED_BIT_SET_TYPE); // Acknowledged
}
});
@@ -53,25 +53,25 @@ public enum ServerboundPackets1_19_3 implements ServerboundPacketType {
ENTITY_ACTION, // 0x1D
STEER_VEHICLE, // 0x1E
PONG, // 0x1F
CHAT_SESSION_UPDATE,
RECIPE_BOOK_DATA, // 0x20
SEEN_RECIPE, // 0x21
RENAME_ITEM, // 0x22
RESOURCE_PACK_STATUS, // 0x23
ADVANCEMENT_TAB, // 0x24
SELECT_TRADE, // 0x25
SET_BEACON_EFFECT, // 0x26
HELD_ITEM_CHANGE, // 0x27
UPDATE_COMMAND_BLOCK, // 0x28
UPDATE_COMMAND_BLOCK_MINECART, // 0x29
CREATIVE_INVENTORY_ACTION, // 0x2A
UPDATE_JIGSAW_BLOCK, // 0x2B
UPDATE_STRUCTURE_BLOCK, // 0x2C
UPDATE_SIGN, // 0x2D
ANIMATION, // 0x2E
SPECTATE, // 0x2F
PLAYER_BLOCK_PLACEMENT, // 0x30
USE_ITEM; // 0x31
CHAT_SESSION_UPDATE, // 0x20
RECIPE_BOOK_DATA, // 0x21
SEEN_RECIPE, // 0x22
RENAME_ITEM, // 0x23
RESOURCE_PACK_STATUS, // 0x24
ADVANCEMENT_TAB, // 0x25
SELECT_TRADE, // 0x26
SET_BEACON_EFFECT, // 0x27
HELD_ITEM_CHANGE, // 0x28
UPDATE_COMMAND_BLOCK, // 0x29
UPDATE_COMMAND_BLOCK_MINECART, // 0x2A
CREATIVE_INVENTORY_ACTION, // 0x2B
UPDATE_JIGSAW_BLOCK, // 0x2C
UPDATE_STRUCTURE_BLOCK, // 0x2D
UPDATE_SIGN, // 0x2E
ANIMATION, // 0x2F
SPECTATE, // 0x30
PLAYER_BLOCK_PLACEMENT, // 0x31
USE_ITEM; // 0x32
@Override
public int getId() {
@@ -67,7 +67,7 @@ public final class EntityPackets extends EntityRewriter<Protocol1_19_3To1_19_1>
final PacketWrapper enableFeaturesPacket = wrapper.create(ClientboundPackets1_19_3.UPDATE_ENABLED_FEATURES);
enableFeaturesPacket.write(Type.VAR_INT, 1);
enableFeaturesPacket.write(Type.STRING, "minecraft:vanilla");
enableFeaturesPacket.send(Protocol1_19_3To1_19_1.class);
enableFeaturesPacket.scheduleSend(Protocol1_19_3To1_19_1.class);
});
}
});
@@ -53,16 +53,14 @@ public class SoundRewriter {
@Override
public void registerMap() {
handler(wrapper -> {
int soundId = wrapper.read(Type.VAR_INT);
final int soundId = wrapper.read(Type.VAR_INT);
if (soundId == 0) {
// Is followed by the resource loation
wrapper.write(Type.VAR_INT, 0);
return;
}
// The id needs to be normalized
soundId--;
final int mappedId = idRewriter.rewrite(soundId);
final int mappedId = idRewriter.rewrite(soundId - 1); // Normalize sound id
if (mappedId == -1) {
wrapper.cancel();
return;
+1 -1
View File
@@ -1,5 +1,5 @@
# Project properties - we put these here so they can be modified without causing a recompile of the build scripts
projectVersion=4.5.0
projectVersion=4.5.1
# Gradle properties
org.gradle.daemon=true
Binary file not shown.
+1
View File
@@ -1,5 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-7.6-bin.zip
networkTimeout=10000
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
Vendored
+8 -4
View File
@@ -55,7 +55,7 @@
# Darwin, MinGW, and NonStop.
#
# (3) This script is generated from the Groovy template
# https://github.com/gradle/gradle/blob/master/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
# within the Gradle project.
#
# You can find Gradle at https://github.com/gradle/gradle/.
@@ -80,10 +80,10 @@ do
esac
done
APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit
APP_NAME="Gradle"
# This is normally unused
# shellcheck disable=SC2034
APP_BASE_NAME=${0##*/}
APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
@@ -143,12 +143,16 @@ fi
if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
case $MAX_FD in #(
max*)
# In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked.
# shellcheck disable=SC3045
MAX_FD=$( ulimit -H -n ) ||
warn "Could not query maximum file descriptor limit"
esac
case $MAX_FD in #(
'' | soft) :;; #(
*)
# In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked.
# shellcheck disable=SC3045
ulimit -n "$MAX_FD" ||
warn "Could not set maximum file descriptor limit to $MAX_FD"
esac
Vendored
+1
View File
@@ -26,6 +26,7 @@ if "%OS%"=="Windows_NT" setlocal
set DIRNAME=%~dp0
if "%DIRNAME%"=="" set DIRNAME=.
@rem This is normally unused
set APP_BASE_NAME=%~n0
set APP_HOME=%DIRNAME%