diff --git a/http-service/src/main/java/net/runelite/http/service/worlds/WorldsService.java b/http-service/src/main/java/net/runelite/http/service/worlds/WorldsService.java index a3bd010430..fe85fb35dd 100644 --- a/http-service/src/main/java/net/runelite/http/service/worlds/WorldsService.java +++ b/http-service/src/main/java/net/runelite/http/service/worlds/WorldsService.java @@ -74,7 +74,7 @@ public class WorldsService .address(readString(buf)) .activity(readString(buf)) .location(buf.get() & 0xFF) - .players(buf.getShort() & 0xFFFF); + .players(buf.getShort()); worlds.add(worldBuilder.build()); } diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/worldhopper/WorldTableRow.java b/runelite-client/src/main/java/net/runelite/client/plugins/worldhopper/WorldTableRow.java index d67d5b6bb4..eb39459f32 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/worldhopper/WorldTableRow.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/worldhopper/WorldTableRow.java @@ -207,7 +207,12 @@ class WorldTableRow extends JPanel void updatePlayerCount(int playerCount) { this.updatedPlayerCount = playerCount; - playerCountField.setText(String.valueOf(playerCount)); + playerCountField.setText(playerCountString(playerCount)); + } + + private static String playerCountString(int playerCount) + { + return playerCount < 0 ? "OFF" : Integer.toString(playerCount); } void setPing(int ping) @@ -272,7 +277,7 @@ class WorldTableRow extends JPanel JPanel column = new JPanel(new BorderLayout()); column.setBorder(new EmptyBorder(0, 5, 0, 5)); - playerCountField = new JLabel(world.getPlayers() + ""); + playerCountField = new JLabel(playerCountString(world.getPlayers())); playerCountField.setFont(FontManager.getRunescapeSmallFont()); column.add(playerCountField, BorderLayout.WEST);