From 8377cdfccffac7f9845e220698aa3df31d3986e3 Mon Sep 17 00:00:00 2001 From: Shiewk Date: Sat, 24 May 2025 12:01:48 +0200 Subject: [PATCH] Fix ping calculation --- .../java/de/shiewk/widgets/widgets/PingWidget.java | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/main/java/de/shiewk/widgets/widgets/PingWidget.java b/src/main/java/de/shiewk/widgets/widgets/PingWidget.java index dc5fdec..cb5d40e 100644 --- a/src/main/java/de/shiewk/widgets/widgets/PingWidget.java +++ b/src/main/java/de/shiewk/widgets/widgets/PingWidget.java @@ -34,12 +34,19 @@ public class PingWidget extends BasicTextWidget { final int logLength = pingLog.getLength(); final int avgCompileLength = 3; long ping = 0; - for (int i = logLength-1; i > logLength-avgCompileLength; i--) { + int valuesRead = 0; + for (int i = logLength-1; i > logLength-avgCompileLength-1; i--) { if (i < 0) break; ping += pingLog.get(i); + valuesRead++; } - long avgPing = ping / avgCompileLength; - this.renderText = Text.of(avgPing + " ms"); + if (valuesRead == 0){ + this.renderText = Text.literal("??? ms"); + this.textColor = 0x00ff00; + return; + } + long avgPing = ping / valuesRead; + this.renderText = Text.literal(avgPing + " ms"); if (this.dynamicColor){ if (avgPing < 50){ this.textColor = 0x00ff00;