Merge pull request #26 from ViaVersion/fix/vv-usage

Updated VV API usage
This commit is contained in:
RK_01 2024-01-13 11:26:31 +01:00 committed by GitHub
commit d9be3ff729
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 21 additions and 53 deletions

View File

@ -34,10 +34,10 @@ import net.raphimc.viaaprilfools.protocols.protocol1_14to3D_Shareware.storage.Ch
public class Protocol1_14to3D_Shareware extends BackwardsProtocol<ClientboundPackets3D_Shareware, ClientboundPackets1_14, ServerboundPackets3D_Shareware, ServerboundPackets1_14> {
public static final BackwardsMappings MAPPINGS = new BackwardsMappings("3D_Shareware", "1.14");
public static final BackwardsMappings MAPPINGS = new BackwardsMappings("3D_Shareware", "1.14", Protocol1_14To1_13_2.class);
private static final int SERVERSIDE_VIEW_DISTANCE = 64;
private BlockItemPackets3D_Shareware blockItemPackets;
private final BlockItemPackets3D_Shareware blockItemPackets = new BlockItemPackets3D_Shareware(this);
public Protocol1_14to3D_Shareware() {
super(ClientboundPackets3D_Shareware.class, ClientboundPackets1_14.class, ServerboundPackets3D_Shareware.class, ServerboundPackets1_14.class);
@ -45,10 +45,8 @@ public class Protocol1_14to3D_Shareware extends BackwardsProtocol<ClientboundPac
@Override
protected void registerPackets() {
executeAsyncAfterLoaded(Protocol1_14To1_13_2.class, MAPPINGS::load);
super.registerPackets();
this.blockItemPackets = new BlockItemPackets3D_Shareware(this);
this.blockItemPackets.register();
new EntityPackets3D_Shareware(this).registerPackets();
final SoundRewriter<ClientboundPackets3D_Shareware> soundRewriter = new SoundRewriter<>(this);
soundRewriter.registerSound(ClientboundPackets3D_Shareware.SOUND);

View File

@ -42,12 +42,12 @@ import java.util.UUID;
public class Protocol1_16to20w14infinite extends BackwardsProtocol<ClientboundPackets20w14infinite, ClientboundPackets1_16, ServerboundPackets20w14infinite, ServerboundPackets1_16> {
public static final BackwardsMappings MAPPINGS = new BackwardsMappings("20w14infinite", "1.16");
public static final BackwardsMappings MAPPINGS = new BackwardsMappings("20w14infinite", "1.16", Protocol1_16To1_15_2.class);
private static final UUID ZERO_UUID = new UUID(0, 0);
private BlockItemPackets20w14infinite blockItemPackets;
private TagRewriter<ClientboundPackets20w14infinite> tagRewriter;
private MetadataRewriter1_16to20w14infinite metadataRewriter;
private final BlockItemPackets20w14infinite blockItemPackets = new BlockItemPackets20w14infinite(this);
private final MetadataRewriter1_16to20w14infinite metadataRewriter = new MetadataRewriter1_16to20w14infinite(this);
private final TagRewriter<ClientboundPackets20w14infinite> tagRewriter = new TagRewriter<>(this);
public Protocol1_16to20w14infinite() {
super(ClientboundPackets20w14infinite.class, ClientboundPackets1_16.class, ServerboundPackets20w14infinite.class, ServerboundPackets1_16.class);
@ -55,19 +55,10 @@ public class Protocol1_16to20w14infinite extends BackwardsProtocol<ClientboundPa
@Override
protected void registerPackets() {
this.metadataRewriter = new MetadataRewriter1_16to20w14infinite(this);
metadataRewriter.register();
tagRewriter = new TagRewriter<>(this);
this.executeAsyncAfterLoaded(Protocol1_16To1_15_2.class, () -> {
MAPPINGS.load();
this.onMappingDataLoaded();
});
super.registerPackets();
tagRewriter.register(ClientboundPackets20w14infinite.TAGS, RegistryType.ENTITY);
new StatisticsRewriter<>(this).register(ClientboundPackets20w14infinite.STATISTICS);
this.blockItemPackets = new BlockItemPackets20w14infinite(this);
this.blockItemPackets.register();
EntityPackets20w14infinite.register(this);
final SoundRewriter<ClientboundPackets20w14infinite> soundRewriter = new SoundRewriter<>(this);
soundRewriter.registerSound(ClientboundPackets20w14infinite.SOUND);

View File

@ -17,18 +17,13 @@
*/
package net.raphimc.viaaprilfools.protocols.protocol1_16to20w14infinite.metadata;
import com.viaversion.viaversion.api.connection.UserConnection;
import com.viaversion.viaversion.api.minecraft.Particle;
import com.viaversion.viaversion.api.minecraft.entities.EntityType;
import com.viaversion.viaversion.api.minecraft.entities.EntityTypes1_16;
import com.viaversion.viaversion.api.minecraft.metadata.Metadata;
import com.viaversion.viaversion.api.type.types.version.Types1_14;
import com.viaversion.viaversion.rewriter.EntityRewriter;
import net.raphimc.viaaprilfools.protocols.protocol1_16to20w14infinite.ClientboundPackets20w14infinite;
import net.raphimc.viaaprilfools.protocols.protocol1_16to20w14infinite.Protocol1_16to20w14infinite;
import java.util.List;
public class MetadataRewriter1_16to20w14infinite extends EntityRewriter<ClientboundPackets20w14infinite, Protocol1_16to20w14infinite> {
public MetadataRewriter1_16to20w14infinite(Protocol1_16to20w14infinite protocol) {
@ -37,38 +32,22 @@ public class MetadataRewriter1_16to20w14infinite extends EntityRewriter<Clientbo
mapTypes(Entity20w14infiniteTypes.values(), EntityTypes1_16.class);
}
@Override
protected void registerRewrites() {
registerMetaTypeHandler(Types1_14.META_TYPES.itemType, Types1_14.META_TYPES.blockStateType, null, Types1_14.META_TYPES.particleType);
filter().type(EntityTypes1_16.MINECART_ABSTRACT).index(10).handler((event, meta) -> {
// Convert to new block id
int data = (int) meta.getValue();
meta.setValue(protocol.getMappingData().getNewBlockStateId(data));
});
filter().type(EntityTypes1_16.ABSTRACT_ARROW).removeIndex(8);
}
@Override
public EntityType typeFromId(int type) {
return EntityTypes1_16.getTypeFromId(type);
}
@Override
public void handleMetadata(int entityId, EntityType type, Metadata metadata, List<Metadata> metadatas, UserConnection connection) {
if (metadata.metaType() == Types1_14.META_TYPES.itemType) {
metadata.setValue(this.protocol.getItemRewriter().handleItemToClient(metadata.value()));
} else if (metadata.metaType() == Types1_14.META_TYPES.blockStateType) {
int data = (int) metadata.getValue();
metadata.setValue(protocol.getMappingData().getNewBlockStateId(data));
} else if (metadata.metaType() == Types1_14.META_TYPES.particleType) {
rewriteParticle((Particle) metadata.getValue());
}
if (type == null) return;
if (type.isOrHasParent(EntityTypes1_16.MINECART_ABSTRACT)
&& metadata.id() == 10) {
// Convert to new block id
int data = (int) metadata.getValue();
metadata.setValue(protocol.getMappingData().getNewBlockStateId(data));
}
if (type.isOrHasParent(EntityTypes1_16.ABSTRACT_ARROW)) {
if (metadata.id() == 8) {
metadatas.remove(metadata);
} else if (metadata.id() > 8) {
metadata.setId(metadata.id() - 1);
}
}
}
}