27 lines
895 B
Java
27 lines
895 B
Java
package net.minecraft.client.multiplayer;
|
|
|
|
import net.fabricmc.api.EnvType;
|
|
import net.fabricmc.api.Environment;
|
|
import net.minecraft.Util;
|
|
import net.minecraft.network.protocol.ping.ClientboundPongResponsePacket;
|
|
import net.minecraft.network.protocol.ping.ServerboundPingRequestPacket;
|
|
import net.minecraft.util.debugchart.LocalSampleLogger;
|
|
|
|
@Environment(EnvType.CLIENT)
|
|
public class PingDebugMonitor {
|
|
private final ClientPacketListener connection;
|
|
private final LocalSampleLogger delayTimer;
|
|
|
|
public PingDebugMonitor(ClientPacketListener connection, LocalSampleLogger delayTimer) {
|
|
this.connection = connection;
|
|
this.delayTimer = delayTimer;
|
|
}
|
|
|
|
public void tick() {
|
|
this.connection.send(new ServerboundPingRequestPacket(Util.getMillis()));
|
|
}
|
|
|
|
public void onPongReceived(ClientboundPongResponsePacket packet) {
|
|
this.delayTimer.logSample(Util.getMillis() - packet.time());
|
|
}
|
|
}
|