aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/de/hysky/skyblocker/mixins/PingMeasureMixin.java
blob: 0e9c5e13e962cf9f4baa3bd814d4dd410c7c3b40 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
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);
        }
    }
}