Mirror von
https://github.com/ViaVersion/ViaVersion.git
synchronisiert 2024-12-28 17:10:13 +01:00
Don't load mappings in 1.19.4 protocol
Dieser Commit ist enthalten in:
Ursprung
64b3771899
Commit
93654b8eaf
@ -18,21 +18,19 @@
|
|||||||
package com.viaversion.viaversion.protocols.protocol1_19_4to1_19_3;
|
package com.viaversion.viaversion.protocols.protocol1_19_4to1_19_3;
|
||||||
|
|
||||||
import com.viaversion.viaversion.api.connection.UserConnection;
|
import com.viaversion.viaversion.api.connection.UserConnection;
|
||||||
import com.viaversion.viaversion.api.data.MappingData;
|
|
||||||
import com.viaversion.viaversion.api.data.MappingDataBase;
|
|
||||||
import com.viaversion.viaversion.api.minecraft.entities.Entity1_19_3Types;
|
import com.viaversion.viaversion.api.minecraft.entities.Entity1_19_3Types;
|
||||||
import com.viaversion.viaversion.api.protocol.AbstractProtocol;
|
import com.viaversion.viaversion.api.protocol.AbstractProtocol;
|
||||||
import com.viaversion.viaversion.api.protocol.packet.PacketWrapper;
|
import com.viaversion.viaversion.api.protocol.packet.PacketWrapper;
|
||||||
import com.viaversion.viaversion.api.type.Type;
|
import com.viaversion.viaversion.api.type.Type;
|
||||||
import com.viaversion.viaversion.data.entity.EntityTrackerBase;
|
import com.viaversion.viaversion.data.entity.EntityTrackerBase;
|
||||||
import com.viaversion.viaversion.protocols.protocol1_19_3to1_19_1.ClientboundPackets1_19_3;
|
import com.viaversion.viaversion.protocols.protocol1_19_3to1_19_1.ClientboundPackets1_19_3;
|
||||||
|
import com.viaversion.viaversion.protocols.protocol1_19_3to1_19_1.Protocol1_19_3To1_19_1;
|
||||||
import com.viaversion.viaversion.protocols.protocol1_19_3to1_19_1.ServerboundPackets1_19_3;
|
import com.viaversion.viaversion.protocols.protocol1_19_3to1_19_1.ServerboundPackets1_19_3;
|
||||||
import com.viaversion.viaversion.protocols.protocol1_19_4to1_19_3.data.EntityPackets;
|
import com.viaversion.viaversion.protocols.protocol1_19_4to1_19_3.packets.EntityPackets;
|
||||||
import com.viaversion.viaversion.rewriter.CommandRewriter;
|
import com.viaversion.viaversion.rewriter.CommandRewriter;
|
||||||
|
|
||||||
public final class Protocol1_19_4To1_19_3 extends AbstractProtocol<ClientboundPackets1_19_3, ClientboundPackets1_19_4, ServerboundPackets1_19_3, ServerboundPackets1_19_4> {
|
public final class Protocol1_19_4To1_19_3 extends AbstractProtocol<ClientboundPackets1_19_3, ClientboundPackets1_19_4, ServerboundPackets1_19_3, ServerboundPackets1_19_4> {
|
||||||
|
|
||||||
private static final MappingData MAPPINGS = new MappingDataBase("1.19.3", "1.19.3");
|
|
||||||
private final EntityPackets entityRewriter = new EntityPackets(this);
|
private final EntityPackets entityRewriter = new EntityPackets(this);
|
||||||
|
|
||||||
public Protocol1_19_4To1_19_3() {
|
public Protocol1_19_4To1_19_3() {
|
||||||
@ -53,6 +51,16 @@ public final class Protocol1_19_4To1_19_3 extends AbstractProtocol<ClientboundPa
|
|||||||
super.handleArgument(wrapper, argumentType);
|
super.handleArgument(wrapper, argumentType);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected String argumentType(final int argumentTypeId) {
|
||||||
|
return Protocol1_19_3To1_19_1.MAPPINGS.getArgumentTypeMappings().mappedIdentifier(argumentTypeId);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected int mappedArgumentTypeId(final String mappedArgumentType) {
|
||||||
|
return Protocol1_19_3To1_19_1.MAPPINGS.getArgumentTypeMappings().mappedId(mappedArgumentType);
|
||||||
|
}
|
||||||
};
|
};
|
||||||
commandRewriter.registerDeclareCommands1_19(ClientboundPackets1_19_3.DECLARE_COMMANDS);
|
commandRewriter.registerDeclareCommands1_19(ClientboundPackets1_19_3.DECLARE_COMMANDS);
|
||||||
}
|
}
|
||||||
@ -61,9 +69,4 @@ public final class Protocol1_19_4To1_19_3 extends AbstractProtocol<ClientboundPa
|
|||||||
public void init(final UserConnection user) {
|
public void init(final UserConnection user) {
|
||||||
addEntityTracker(user, new EntityTrackerBase(user, Entity1_19_3Types.PLAYER));
|
addEntityTracker(user, new EntityTrackerBase(user, Entity1_19_3Types.PLAYER));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public MappingData getMappingData() {
|
|
||||||
return MAPPINGS;
|
|
||||||
}
|
|
||||||
}
|
}
|
@ -15,7 +15,7 @@
|
|||||||
* You should have received a copy of the GNU General Public License
|
* You should have received a copy of the GNU General Public License
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
package com.viaversion.viaversion.protocols.protocol1_19_4to1_19_3.data;
|
package com.viaversion.viaversion.protocols.protocol1_19_4to1_19_3.packets;
|
||||||
|
|
||||||
import com.github.steveice10.opennbt.tag.builtin.ByteTag;
|
import com.github.steveice10.opennbt.tag.builtin.ByteTag;
|
||||||
import com.github.steveice10.opennbt.tag.builtin.CompoundTag;
|
import com.github.steveice10.opennbt.tag.builtin.CompoundTag;
|
@ -23,8 +23,6 @@ import com.viaversion.viaversion.api.protocol.packet.ClientboundPacketType;
|
|||||||
import com.viaversion.viaversion.api.protocol.packet.PacketWrapper;
|
import com.viaversion.viaversion.api.protocol.packet.PacketWrapper;
|
||||||
import com.viaversion.viaversion.api.protocol.remapper.PacketRemapper;
|
import com.viaversion.viaversion.api.protocol.remapper.PacketRemapper;
|
||||||
import com.viaversion.viaversion.api.type.Type;
|
import com.viaversion.viaversion.api.type.Type;
|
||||||
import org.checkerframework.checker.nullness.qual.Nullable;
|
|
||||||
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
@ -82,13 +80,6 @@ public class CommandRewriter {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
public void handleArgument(PacketWrapper wrapper, String argumentType) throws Exception {
|
|
||||||
CommandArgumentConsumer handler = parserHandlers.get(argumentType);
|
|
||||||
if (handler != null) {
|
|
||||||
handler.accept(wrapper);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void registerDeclareCommands(ClientboundPacketType packetType) {
|
public void registerDeclareCommands(ClientboundPacketType packetType) {
|
||||||
protocol.registerClientbound(packetType, new PacketRemapper() {
|
protocol.registerClientbound(packetType, new PacketRemapper() {
|
||||||
@Override
|
@Override
|
||||||
@ -149,10 +140,10 @@ public class CommandRewriter {
|
|||||||
|
|
||||||
if (nodeType == 2) { // Argument node
|
if (nodeType == 2) { // Argument node
|
||||||
int argumentTypeId = wrapper.read(Type.VAR_INT);
|
int argumentTypeId = wrapper.read(Type.VAR_INT);
|
||||||
String argumentType = protocol.getMappingData().getArgumentTypeMappings().identifier(argumentTypeId);
|
String argumentType = argumentType(argumentTypeId);
|
||||||
String newArgumentType = handleArgumentType(argumentType);
|
String newArgumentType = handleArgumentType(argumentType);
|
||||||
Preconditions.checkArgument(newArgumentType != null, "No mapping for argument type " + argumentType);
|
Preconditions.checkNotNull(newArgumentType, "No mapping for argument type %s", argumentType);
|
||||||
wrapper.write(Type.VAR_INT, protocol.getMappingData().getArgumentTypeMappings().mappedId(newArgumentType));
|
wrapper.write(Type.VAR_INT, mappedArgumentTypeId(newArgumentType));
|
||||||
|
|
||||||
// Always call the handler using the previous name
|
// Always call the handler using the previous name
|
||||||
handleArgument(wrapper, argumentType);
|
handleArgument(wrapper, argumentType);
|
||||||
@ -169,19 +160,34 @@ public class CommandRewriter {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void handleArgument(PacketWrapper wrapper, String argumentType) throws Exception {
|
||||||
|
CommandArgumentConsumer handler = parserHandlers.get(argumentType);
|
||||||
|
if (handler != null) {
|
||||||
|
handler.accept(wrapper);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Can be overridden if needed.
|
* Can be overridden if needed.
|
||||||
*
|
*
|
||||||
* @param argumentType argument type
|
* @param argumentType argument type
|
||||||
* @return new argument type, or null if it should be removed
|
* @return mapped argument type
|
||||||
*/
|
*/
|
||||||
public @Nullable String handleArgumentType(String argumentType) {
|
public String handleArgumentType(String argumentType) {
|
||||||
if (protocol.getMappingData() != null && protocol.getMappingData().getArgumentTypeMappings() != null) {
|
if (protocol.getMappingData() != null && protocol.getMappingData().getArgumentTypeMappings() != null) {
|
||||||
return protocol.getMappingData().getArgumentTypeMappings().mappedIdentifier(argumentType);
|
return protocol.getMappingData().getArgumentTypeMappings().mappedIdentifier(argumentType);
|
||||||
}
|
}
|
||||||
return argumentType;
|
return argumentType;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected String argumentType(int argumentTypeId) {
|
||||||
|
return protocol.getMappingData().getArgumentTypeMappings().identifier(argumentTypeId);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected int mappedArgumentTypeId(String mappedArgumentType) {
|
||||||
|
return protocol.getMappingData().getArgumentTypeMappings().mappedId(mappedArgumentType);
|
||||||
|
}
|
||||||
|
|
||||||
@FunctionalInterface
|
@FunctionalInterface
|
||||||
public interface CommandArgumentConsumer {
|
public interface CommandArgumentConsumer {
|
||||||
|
|
||||||
|
Laden…
In neuem Issue referenzieren
Einen Benutzer sperren