From cb4c94f3ab35d608dae323fc10f9753558792049 Mon Sep 17 00:00:00 2001 From: Ceikry Date: Wed, 31 May 2023 08:58:40 +0000 Subject: [PATCH] Improved lamp xp calculation Improved shop restrictions Fixed bugged Cyclops room teleport --- Server/src/main/content/global/handlers/item/LampPlugin.java | 2 +- .../burthorpe/handlers/wguild/cyclopes/CyclopesRoom.java | 4 ++-- Server/src/main/core/game/shops/Shop.kt | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Server/src/main/content/global/handlers/item/LampPlugin.java b/Server/src/main/content/global/handlers/item/LampPlugin.java index 1ad518ffd..32a091c3d 100644 --- a/Server/src/main/content/global/handlers/item/LampPlugin.java +++ b/Server/src/main/content/global/handlers/item/LampPlugin.java @@ -48,7 +48,7 @@ public final class LampPlugin extends OptionHandler { } else { if(player.getInventory().remove((Item) player.getAttribute("lamp"))) { if (lamp == Lamps.GENIE_LAMP) { - player.getSkills().addExperience(skill, player.getSkills().getLevel(skill) * 10); + player.getSkills().addExperience(skill, player.getSkills().getStaticLevel(skill) * 10); } else { player.getSkills().addExperience(skill, lamp.getExp()); } diff --git a/Server/src/main/content/region/asgarnia/burthorpe/handlers/wguild/cyclopes/CyclopesRoom.java b/Server/src/main/content/region/asgarnia/burthorpe/handlers/wguild/cyclopes/CyclopesRoom.java index 0782a28d4..cc8872e31 100644 --- a/Server/src/main/content/region/asgarnia/burthorpe/handlers/wguild/cyclopes/CyclopesRoom.java +++ b/Server/src/main/content/region/asgarnia/burthorpe/handlers/wguild/cyclopes/CyclopesRoom.java @@ -102,13 +102,13 @@ public final class CyclopesRoom extends MapZone implements Plugin { @Override public boolean leave(Entity e, boolean logout) { - if (e instanceof Player && PLAYERS.contains(e)) { + if (e instanceof Player) { leave((Player) e); PLAYERS.remove(e); if (logout) { e.setLocation(Location.create(2846, 3540, 2)); } - clearLogoutListener((Player) e, "cyclopes"); + clearLogoutListener((Player) e, "cyclopes"); } return super.leave(e, logout); } diff --git a/Server/src/main/core/game/shops/Shop.kt b/Server/src/main/core/game/shops/Shop.kt index eff96dfc6..3a22e35b0 100644 --- a/Server/src/main/core/game/shops/Shop.kt +++ b/Server/src/main/core/game/shops/Shop.kt @@ -272,7 +272,7 @@ class Shop(val title: String, val stock: Array, val general: Boolean = return TransactionStatus.Failure("Shop item out of stock.") } - if(isMainStock && inStock.amount > stock[slot].amount && !getServerConfig().getBoolean(Shops.personalizedShops, false) && player.ironmanManager.isIronman) + if(isMainStock && inStock.amount > stock[slot].amount && (!getServerConfig().getBoolean(Shops.personalizedShops, false) || forceShared) && player.ironmanManager.isIronman) { sendDialogue(player, "As an ironman, you cannot buy overstocked items from shops.") return TransactionStatus.Failure("Ironman overstock purchase")