ClientboundInitializeBorderPacket.java

net.minecraft.network.protocol.game.ClientboundInitializeBorderPacket

信息

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

    TODO

字段/常量

  • STREAM_CODEC

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

      TODO

  • newCenterX

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

      TODO

  • newCenterZ

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

      TODO

  • oldSize

    • 类型: double
    • 修饰符: private final
    • 源码定位: L15
    • 说明:

      TODO

  • newSize

    • 类型: double
    • 修饰符: private final
    • 源码定位: L16
    • 说明:

      TODO

  • lerpTime

    • 类型: long
    • 修饰符: private final
    • 源码定位: L17
    • 说明:

      TODO

  • newAbsoluteMaxSize

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

      TODO

  • warningBlocks

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

      TODO

  • warningTime

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

      TODO

内部类/嵌套类型

构造器

private ClientboundInitializeBorderPacket(FriendlyByteBuf input) @ L22

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

参数:

  • input: FriendlyByteBuf

说明:

TODO

public ClientboundInitializeBorderPacket(WorldBorder border) @ L33

  • 构造器名:ClientboundInitializeBorderPacket
  • 源码定位:L33
  • 修饰符:public

参数:

  • border: WorldBorder

说明:

TODO

方法

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

private void write(FriendlyByteBuf output) @ L44

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

参数:

  • output: FriendlyByteBuf

说明:

TODO

public PacketType<ClientboundInitializeBorderPacket> type() @ L55

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

参数:

说明:

TODO

public void handle(ClientGamePacketListener listener) @ L60

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

参数:

  • listener: ClientGamePacketListener

说明:

TODO

public double getNewCenterX() @ L64

  • 方法名:getNewCenterX
  • 源码定位:L64
  • 返回类型:double
  • 修饰符:public

参数:

说明:

TODO

public double getNewCenterZ() @ L68

  • 方法名:getNewCenterZ
  • 源码定位:L68
  • 返回类型:double
  • 修饰符:public

参数:

说明:

TODO

public double getNewSize() @ L72

  • 方法名:getNewSize
  • 源码定位:L72
  • 返回类型:double
  • 修饰符:public

参数:

说明:

TODO

public double getOldSize() @ L76

  • 方法名:getOldSize
  • 源码定位:L76
  • 返回类型:double
  • 修饰符:public

参数:

说明:

TODO

public long getLerpTime() @ L80

  • 方法名:getLerpTime
  • 源码定位:L80
  • 返回类型:long
  • 修饰符:public

参数:

说明:

TODO

public int getNewAbsoluteMaxSize() @ L84

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

参数:

说明:

TODO

public int getWarningTime() @ L88

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

参数:

说明:

TODO

public int getWarningBlocks() @ L92

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

参数:

说明:

TODO

代码

public class ClientboundInitializeBorderPacket implements Packet<ClientGamePacketListener> {
    public static final StreamCodec<FriendlyByteBuf, ClientboundInitializeBorderPacket> STREAM_CODEC = Packet.codec(
        ClientboundInitializeBorderPacket::write, ClientboundInitializeBorderPacket::new
    );
    private final double newCenterX;
    private final double newCenterZ;
    private final double oldSize;
    private final double newSize;
    private final long lerpTime;
    private final int newAbsoluteMaxSize;
    private final int warningBlocks;
    private final int warningTime;
 
    private ClientboundInitializeBorderPacket(FriendlyByteBuf input) {
        this.newCenterX = input.readDouble();
        this.newCenterZ = input.readDouble();
        this.oldSize = input.readDouble();
        this.newSize = input.readDouble();
        this.lerpTime = input.readVarLong();
        this.newAbsoluteMaxSize = input.readVarInt();
        this.warningBlocks = input.readVarInt();
        this.warningTime = input.readVarInt();
    }
 
    public ClientboundInitializeBorderPacket(WorldBorder border) {
        this.newCenterX = border.getCenterX();
        this.newCenterZ = border.getCenterZ();
        this.oldSize = border.getSize();
        this.newSize = border.getLerpTarget();
        this.lerpTime = border.getLerpTime();
        this.newAbsoluteMaxSize = border.getAbsoluteMaxSize();
        this.warningBlocks = border.getWarningBlocks();
        this.warningTime = border.getWarningTime();
    }
 
    private void write(FriendlyByteBuf output) {
        output.writeDouble(this.newCenterX);
        output.writeDouble(this.newCenterZ);
        output.writeDouble(this.oldSize);
        output.writeDouble(this.newSize);
        output.writeVarLong(this.lerpTime);
        output.writeVarInt(this.newAbsoluteMaxSize);
        output.writeVarInt(this.warningBlocks);
        output.writeVarInt(this.warningTime);
    }
 
    @Override
    public PacketType<ClientboundInitializeBorderPacket> type() {
        return GamePacketTypes.CLIENTBOUND_INITIALIZE_BORDER;
    }
 
    public void handle(ClientGamePacketListener listener) {
        listener.handleInitializeBorder(this);
    }
 
    public double getNewCenterX() {
        return this.newCenterX;
    }
 
    public double getNewCenterZ() {
        return this.newCenterZ;
    }
 
    public double getNewSize() {
        return this.newSize;
    }
 
    public double getOldSize() {
        return this.oldSize;
    }
 
    public long getLerpTime() {
        return this.lerpTime;
    }
 
    public int getNewAbsoluteMaxSize() {
        return this.newAbsoluteMaxSize;
    }
 
    public int getWarningTime() {
        return this.warningTime;
    }
 
    public int getWarningBlocks() {
        return this.warningBlocks;
    }
}

引用的其他类