From 3e6b156bbad31cbe994827dee0127d0e58abfaa4 Mon Sep 17 00:00:00 2001 From: Avi Weinstock Date: Thu, 25 Aug 2022 12:49:48 +0000 Subject: [PATCH] Fixed incorrect wilderness level calculation --- .../world/map/zone/impl/WildernessZone.java | 32 ++++--------------- 1 file changed, 7 insertions(+), 25 deletions(-) diff --git a/Server/src/main/java/core/game/world/map/zone/impl/WildernessZone.java b/Server/src/main/java/core/game/world/map/zone/impl/WildernessZone.java index 9f27ecef6..6518c68b9 100644 --- a/Server/src/main/java/core/game/world/map/zone/impl/WildernessZone.java +++ b/Server/src/main/java/core/game/world/map/zone/impl/WildernessZone.java @@ -286,13 +286,6 @@ public final class WildernessZone extends MapZone { if (e instanceof Player && !e.asPlayer().isArtificial()) { Player p = (Player) e; p.getSkullManager().setLevel(getWilderness(p)); - Component overlay = p.getInterfaceManager().getOverlay(); - if (overlay == null || overlay.getId() != 381) { - show(p); - } - if (!p.getSkullManager().isWildernessDisabled()) { - p.getPacketDispatch().sendString("Level: " + p.getSkullManager().getLevel(), 381, 1); - } } } @@ -316,23 +309,12 @@ public final class WildernessZone extends MapZone { * @return the level. */ public static int getWilderness(Entity e) { - if (e.getLocation().getY() < 3524) { - return -1; - } - final int regionId = e.getViewport().getRegion().getId(); - int offsetY = 3524; - if (regionId == 12443 || e.getViewport().getRegion().getId() == 12444) { - offsetY = 9923; - } else if (regionId == 12193) { - offsetY = 10000 - 80; - } else if (regionId == 11937) { - offsetY = 9920; - } - int level = (int) Math.ceil((double) (e.getLocation().getY() - offsetY) / 8d); - if (level < 0) { - return 1; - } - return level; + int y = e.getLocation().getY(); + if(6400 < y) { + return ((y - 9920) / 8) + 1; + } else { + return ((y - 3520) / 8) + 1; + } } /** @@ -351,4 +333,4 @@ public final class WildernessZone extends MapZone { return INSTANCE; } -} \ No newline at end of file +}