ClientboundSetExperiencePacket.java

net.minecraft.network.protocol.game.ClientboundSetExperiencePacket

信息

  • 全限定名:net.minecraft.network.protocol.game.ClientboundSetExperiencePacket
  • 类型:public class
  • 包:net.minecraft.network.protocol.game
  • 源码路径:src/main/java/net/minecraft/network/protocol/game/ClientboundSetExperiencePacket.java
  • 起始行号:L8
  • 实现:Packet
  • 职责:

    TODO

字段/常量

  • STREAM_CODEC

    • 类型: StreamCodec<FriendlyByteBuf,ClientboundSetExperiencePacket>
    • 修饰符: public static final
    • 源码定位: L9
    • 说明:

      TODO

  • experienceProgress

    • 类型: float
    • 修饰符: private final
    • 源码定位: L12
    • 说明:

      TODO

  • totalExperience

    • 类型: int
    • 修饰符: private final
    • 源码定位: L13
    • 说明:

      TODO

  • experienceLevel

    • 类型: int
    • 修饰符: private final
    • 源码定位: L14
    • 说明:

      TODO

内部类/嵌套类型

构造器

public ClientboundSetExperiencePacket(float experienceProgress, int totalExperience, int experienceLevel) @ L16

  • 构造器名:ClientboundSetExperiencePacket
  • 源码定位:L16
  • 修饰符:public

参数:

  • experienceProgress: float
  • totalExperience: int
  • experienceLevel: int

说明:

TODO

private ClientboundSetExperiencePacket(FriendlyByteBuf input) @ L22

  • 构造器名:ClientboundSetExperiencePacket
  • 源码定位:L22
  • 修饰符:private

参数:

  • input: FriendlyByteBuf

说明:

TODO

方法

下面的方法块按源码顺序生成。

private void write(FriendlyByteBuf output) @ L28

  • 方法名:write
  • 源码定位:L28
  • 返回类型:void
  • 修饰符:private

参数:

  • output: FriendlyByteBuf

说明:

TODO

public PacketType<ClientboundSetExperiencePacket> type() @ L34

  • 方法名:type
  • 源码定位:L34
  • 返回类型:PacketType
  • 修饰符:public

参数:

说明:

TODO

public void handle(ClientGamePacketListener listener) @ L39

  • 方法名:handle
  • 源码定位:L39
  • 返回类型:void
  • 修饰符:public

参数:

  • listener: ClientGamePacketListener

说明:

TODO

public float getExperienceProgress() @ L43

  • 方法名:getExperienceProgress
  • 源码定位:L43
  • 返回类型:float
  • 修饰符:public

参数:

说明:

TODO

public int getTotalExperience() @ L47

  • 方法名:getTotalExperience
  • 源码定位:L47
  • 返回类型:int
  • 修饰符:public

参数:

说明:

TODO

public int getExperienceLevel() @ L51

  • 方法名:getExperienceLevel
  • 源码定位:L51
  • 返回类型:int
  • 修饰符:public

参数:

说明:

TODO

代码

public class ClientboundSetExperiencePacket implements Packet<ClientGamePacketListener> {
    public static final StreamCodec<FriendlyByteBuf, ClientboundSetExperiencePacket> STREAM_CODEC = Packet.codec(
        ClientboundSetExperiencePacket::write, ClientboundSetExperiencePacket::new
    );
    private final float experienceProgress;
    private final int totalExperience;
    private final int experienceLevel;
 
    public ClientboundSetExperiencePacket(float experienceProgress, int totalExperience, int experienceLevel) {
        this.experienceProgress = experienceProgress;
        this.totalExperience = totalExperience;
        this.experienceLevel = experienceLevel;
    }
 
    private ClientboundSetExperiencePacket(FriendlyByteBuf input) {
        this.experienceProgress = input.readFloat();
        this.experienceLevel = input.readVarInt();
        this.totalExperience = input.readVarInt();
    }
 
    private void write(FriendlyByteBuf output) {
        output.writeFloat(this.experienceProgress);
        output.writeVarInt(this.experienceLevel);
        output.writeVarInt(this.totalExperience);
    }
 
    @Override
    public PacketType<ClientboundSetExperiencePacket> type() {
        return GamePacketTypes.CLIENTBOUND_SET_EXPERIENCE;
    }
 
    public void handle(ClientGamePacketListener listener) {
        listener.handleSetExperience(this);
    }
 
    public float getExperienceProgress() {
        return this.experienceProgress;
    }
 
    public int getTotalExperience() {
        return this.totalExperience;
    }
 
    public int getExperienceLevel() {
        return this.experienceLevel;
    }
}

引用的其他类