diff options
Diffstat (limited to 'src/main/java/de/hysky/skyblocker/mixins/PingMeasureMixin.java')
-rw-r--r-- | src/main/java/de/hysky/skyblocker/mixins/PingMeasureMixin.java | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/main/java/de/hysky/skyblocker/mixins/PingMeasureMixin.java b/src/main/java/de/hysky/skyblocker/mixins/PingMeasureMixin.java new file mode 100644 index 00000000..0e9c5e13 --- /dev/null +++ b/src/main/java/de/hysky/skyblocker/mixins/PingMeasureMixin.java @@ -0,0 +1,23 @@ +package de.hysky.skyblocker.mixins; + +import de.hysky.skyblocker.skyblock.crimson.dojo.DojoManager; +import de.hysky.skyblocker.utils.Location; +import de.hysky.skyblocker.utils.Utils; +import net.minecraft.client.network.PingMeasurer; +import net.minecraft.network.packet.s2c.query.PingResultS2CPacket; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(PingMeasurer.class) +public class PingMeasureMixin { + + @Inject(method = "onPingResult", at = @At("RETURN")) + private void skyblocker$onPingResult(PingResultS2CPacket packet, CallbackInfo ci) { + if (Utils.getLocation() == Location.CRIMSON_ISLE) { + long ping = System.currentTimeMillis() - packet.startTime(); + DojoManager.onPingResult(ping); + } + } +} |