From cd730571142f593358ef2bb7ac58e0a6e1b31fcc Mon Sep 17 00:00:00 2001 From: Melledy <121644117+Melledy@users.noreply.github.com> Date: Fri, 29 Sep 2023 17:55:40 -0700 Subject: [PATCH] Add `/worldlevel` command --- .../lunarcore/commands/PlayerCommands.java | 20 +++++++++++++++++++ .../emu/lunarcore/game/player/Player.java | 6 ++++++ 2 files changed, 26 insertions(+) diff --git a/src/main/java/emu/lunarcore/commands/PlayerCommands.java b/src/main/java/emu/lunarcore/commands/PlayerCommands.java index 825260a..fbf7164 100644 --- a/src/main/java/emu/lunarcore/commands/PlayerCommands.java +++ b/src/main/java/emu/lunarcore/commands/PlayerCommands.java @@ -131,6 +131,26 @@ public class PlayerCommands { player.dropMessage("Giving you " + count + " of " + itemId); } } + + @Command(aliases = {"wl", "el"}, desc = "/worldlevel [world level]") + public static class WorldLevel extends PlayerCommand { + @Override + public void execute(Player player, String raw) { + int level = 0; + + try { + level = Integer.parseInt(raw); + } catch (Exception e) { + level = 0; + } + + level = Math.min(Math.max(level, 0), 6); + + // Set world level + player.setWorldLevel(level); + player.dropMessage("Set world level to " + level); + } + } /* Temporarily disabled as spawned monsters need @Command(desc = "/spawn [monster id] [count] - Creates {count} amount of {item id}") diff --git a/src/main/java/emu/lunarcore/game/player/Player.java b/src/main/java/emu/lunarcore/game/player/Player.java index 73a2e29..b388b60 100644 --- a/src/main/java/emu/lunarcore/game/player/Player.java +++ b/src/main/java/emu/lunarcore/game/player/Player.java @@ -150,6 +150,12 @@ public class Player { return 0; } + + public void setWorldLevel(int level) { + this.worldLevel = level; + this.save(); + this.sendPacket(new PacketPlayerSyncScNotify(this)); + } public boolean hasLoggedIn() { return this.getSession() != null && this.getSession().getState() != SessionState.WAITING_FOR_TOKEN;