在切换载具座位时同步乘客信息

This commit is contained in:
Light_Quanta 2025-03-06 21:24:06 +08:00
parent fb514ecfad
commit 4a25df74a1
No known key found for this signature in database
GPG key ID: 11A39A1B8C890959

View file

@ -20,6 +20,7 @@ import net.minecraft.core.BlockPos;
import net.minecraft.core.Holder;
import net.minecraft.core.particles.ParticleTypes;
import net.minecraft.nbt.CompoundTag;
import net.minecraft.network.protocol.game.ClientboundSetPassengersPacket;
import net.minecraft.network.protocol.game.ClientboundSoundPacket;
import net.minecraft.network.syncher.EntityDataAccessor;
import net.minecraft.network.syncher.EntityDataSerializers;
@ -183,6 +184,11 @@ public abstract class VehicleEntity extends Entity {
orderedPassengers.set(orderedPassengers.indexOf(entity), null);
orderedPassengers.set(index, entity);
// 在服务端运行时向所有玩家同步载具座位信息
if (!this.level().isClientSide) {
ModUtils.PACKET_HANDLER.send(PacketDistributor.ALL.noArg(), new ClientboundSetPassengersPacket(this));
}
return true;
}