From 1b5f18594462836f14649814f2f764f9d6e169ec Mon Sep 17 00:00:00 2001 From: DavidVarbit <49006668+DavidVarbit@users.noreply.github.com> Date: Mon, 30 Dec 2019 18:53:09 -0500 Subject: [PATCH] * Fix: Runes are consumed even if you cant tele from wildy after level 20 #337 (#340) * Cleaned up Spell teleports --- .../content/combat/magic/MagicTeleports.java | 398 +----------------- .../content/combat/magic/SpellTeleport.java | 82 ++++ .../game/players/PlayerAssistant.java | 15 +- .../net/packets/impl/ClickingButtons.java | 90 +--- 4 files changed, 129 insertions(+), 456 deletions(-) create mode 100644 2006Redone Server/src/com/rebotted/game/content/combat/magic/SpellTeleport.java diff --git a/2006Redone Server/src/com/rebotted/game/content/combat/magic/MagicTeleports.java b/2006Redone Server/src/com/rebotted/game/content/combat/magic/MagicTeleports.java index c986d3f9..61c45d11 100644 --- a/2006Redone Server/src/com/rebotted/game/content/combat/magic/MagicTeleports.java +++ b/2006Redone Server/src/com/rebotted/game/content/combat/magic/MagicTeleports.java @@ -2,15 +2,9 @@ package com.rebotted.game.content.combat.magic; import com.rebotted.game.content.randomevents.RandomEventHandler; import com.rebotted.game.players.Player; -import com.rebotted.util.Misc; public class MagicTeleports { - public static final int AIR_RUNE = 556, FIRE_RUNE = 554, - WATER_RUNE = 555, EARTH_RUNE = 557, - LAW_RUNE = 563, BLOOD_RUNE = 565, - SOUL_RUNE = 566, BANANA = 1963; - public static void handleLoginText(Player player) { player.getPacketSender().sendFrame126("Level 25: Varrock Teleport", 1300); player.getPacketSender().sendFrame126("Level 31: Lumbridge Teleport", 1325); @@ -24,402 +18,44 @@ public class MagicTeleports { player.getPacketSender().sendFrame126("Level 78: Dareeyak Teleport", 13071); } - /** - * Modern Teleports - */ - public static final int VARROCK_X = 3213, VARROCK_Y = 3423; - public static final int LUMBRIDGE_X = 3222, LUMBRIDGE_Y = 3218; - public static final int FALADOR_X = 2964, FALADOR_Y = 3378; - public static final int CAMELOT_X = 2757, CAMELOT_Y = 3479; - public static final int ARDOUGNE_X = 2662, ARDOUGNE_Y = 3305; - public static final int WATCHTOWER_X = 2547, WATCHTOWER_Y = 3112; - public static final int TROLLHEIM_X = 2910, TROLLHEIM_Y = 3612; - public static final int APE_ATOLL_X = 2754, APE_ATOLL_Y = 2784; - - /** - * Ancient Teleports - */ - public static final int PADDEWWA_X = 3098, PADDEWWA_Y = 9884; - public static final int SENNTISTEN_X = 3321, SENNTISTEN_Y = 3335; - public static final int KHARYRLL_X = 3493, KHARYRLL_Y = 3472; - public static final int LASSAR_X = 3006, LASSAR_Y = 3471; - public static final int DAREEYAK_X = 3161, DAREEYAK_Y = 3671; - public static final int CARRALLANGAR_X = 3157, CARRALLANGAR_Y = 3669; - public static final int ANNAKARL_X = 3286, ANNAKARL_Y = 3884; - public static final int GHORROCK_X = 2977, GHORROCK_Y = 3873; - public static final boolean MAGIC_LEVEL_REQUIRED = true, RUNES_REQUIRED = true; - public static boolean teleportCheck(Player player) { + public static void handleSpellTeleport(Player player, SpellTeleport teleport) { if (player.teleTimer > 0) { - return false; + return; } - return true; - } - - public static void paddewwaTeleport(Player player) { - if (!teleportCheck(player)) { + if (player.wildLevel > 20) { + player.getPacketSender().sendMessage("You can't teleport above level 20 wilderness."); + return; + } + if (player.playerLevel[player.playerMagic] < teleport.getRequiredLevel()) { + player.getPacketSender().sendMessage("You need a magic level of " + teleport.getRequiredLevel() + " to cast this spell."); + return; + } + if (!CastRequirements.hasRunes(player, teleport.getRequiredRunes())) { + player.getPacketSender().sendMessage("You don't have the required runes to cast this spell."); return; } RandomEventHandler.addRandom(player); - if (RUNES_REQUIRED) { - if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {FIRE_RUNE, 1}, {AIR_RUNE, 1}})) { - player.getPacketSender().sendMessage("You don't have the required runes to cast this spell."); - return; - } - } - if (MAGIC_LEVEL_REQUIRED) { - if (player.playerLevel[player.playerMagic] < 54) { - player.getPacketSender().sendMessage("You need a magic level of 54 to cast this spell."); - return; - } - } - CastRequirements.deleteRunes(player, new int[][]{{LAW_RUNE, 2}, {FIRE_RUNE, 1}, {AIR_RUNE, 1}}); - player.getPlayerAssistant().startTeleport(PADDEWWA_X + Misc.random(2), PADDEWWA_Y - Misc.random(2), 0, "ancient"); - player.getPlayerAssistant().addSkillXP(64, player.playerMagic); + CastRequirements.deleteRunes(player, teleport.getRequiredRunes()); + player.getPlayerAssistant().startTeleport(teleport.getDestX(), teleport.getDestY(), teleport.getDestZ(), teleport.getType()); + player.getPlayerAssistant().addSkillXP(teleport.getExperienceGained(), player.playerMagic); } - public static void senntisenTeleport(Player player) { - if (!teleportCheck(player)) { - return; - } - RandomEventHandler.addRandom(player); - if (RUNES_REQUIRED) { - if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {SOUL_RUNE, 1}})) { - player.getPacketSender().sendMessage("You don't have the required runes to cast this spell."); - return; - } - } - if (MAGIC_LEVEL_REQUIRED) { - if (player.playerLevel[player.playerMagic] < 60) { - player.getPacketSender().sendMessage("You need a magic level of 60 to cast this spell."); - return; - } - } - CastRequirements.deleteRunes(player, new int[][]{{LAW_RUNE, 2}, {SOUL_RUNE, 1}}); - player.getPlayerAssistant().startTeleport(SENNTISTEN_X + Misc.random(1), SENNTISTEN_Y - Misc.random(1), 0, "ancient"); - player.getPlayerAssistant().addSkillXP(70, player.playerMagic); - } - public static void kharyllTeleport(Player player) { - if (!teleportCheck(player)) { - return; - } - RandomEventHandler.addRandom(player); - if (RUNES_REQUIRED) { - if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {BLOOD_RUNE, 1}})) { - player.getPacketSender().sendMessage("You don't have the required runes to cast this spell."); - return; - } - } - if (MAGIC_LEVEL_REQUIRED) { - if (player.playerLevel[player.playerMagic] < 66) { - player.getPacketSender().sendMessage("You need a magic level of 66 to cast this spell."); - return; - } - } - CastRequirements.deleteRunes(player, new int[][]{{LAW_RUNE, 2}, {BLOOD_RUNE, 1}}); - player.getPlayerAssistant().startTeleport(KHARYRLL_X, KHARYRLL_Y, 0, "ancient"); - player.getPlayerAssistant().addSkillXP(76, player.playerMagic); - } - public static void lassarTeleport(Player player) { - if (!teleportCheck(player)) { - return; - } - RandomEventHandler.addRandom(player); - if (RUNES_REQUIRED) { - if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {WATER_RUNE, 4}})) { - player.getPacketSender().sendMessage("You don't have the required runes to cast this spell."); - return; - } - } - if (MAGIC_LEVEL_REQUIRED) { - if (player.playerLevel[player.playerMagic] < 72) { - player.getPacketSender().sendMessage("You need a magic level of 72 to cast this spell."); - return; - } - } - CastRequirements.deleteRunes(player, new int[][]{{LAW_RUNE, 2}, {WATER_RUNE, 4}}); - player.getPlayerAssistant().startTeleport(LASSAR_X + Misc.random(2), LASSAR_Y - Misc.random(2), 0, "ancient"); - player.getPlayerAssistant().addSkillXP(82, player.playerMagic); - } - public static void dareeyakTeleport(Player player) { - if (!teleportCheck(player)) { - return; - } - RandomEventHandler.addRandom(player); - if (RUNES_REQUIRED) { - if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {FIRE_RUNE, 3}, {AIR_RUNE, 2}})) { - player.getPacketSender().sendMessage("You don't have the required runes to cast this spell."); - return; - } - } - if (MAGIC_LEVEL_REQUIRED) { - if (player.playerLevel[player.playerMagic] < 78) { - player.getPacketSender().sendMessage("You need a magic level of 78 to cast this spell."); - return; - } - } - CastRequirements.deleteRunes(player, new int[][]{{LAW_RUNE, 2}, {FIRE_RUNE, 3}, {AIR_RUNE, 2}}); - player.getPlayerAssistant().startTeleport( - DAREEYAK_X + Misc.random(1), - DAREEYAK_Y - Misc.random(1), 0, "ancient"); - player.getPlayerAssistant().addSkillXP(88, player.playerMagic); - } - public static void carrallangarTeleport(Player player) { - if (!teleportCheck(player)) { - return; - } - RandomEventHandler.addRandom(player); - if (RUNES_REQUIRED) { - if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {SOUL_RUNE, 2}})) { - player.getPacketSender() - .sendMessage( - "You don't have the required runes to cast this spell."); - return; - } - } - if (MAGIC_LEVEL_REQUIRED) { - if (player.playerLevel[player.playerMagic] < 84) { - player.getPacketSender().sendMessage("You need a magic level of 84 to cast this spell."); - return; - } - } - CastRequirements.deleteRunes(player, new int[][]{{LAW_RUNE, 2}, {SOUL_RUNE, 2}}); - player.getPlayerAssistant().startTeleport(CARRALLANGAR_X + Misc.random(2), CARRALLANGAR_Y - Misc.random(2), 0, "ancient"); - player.getPlayerAssistant().addSkillXP(94, player.playerMagic); - } - public static void annakarlTeleport(Player player) { - if (!teleportCheck(player)) { - return; - } - RandomEventHandler.addRandom(player); - if (RUNES_REQUIRED) { - if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {BLOOD_RUNE, 2}})) { - player.getPacketSender().sendMessage("You don't have the required runes to cast this spell."); - return; - } - } - if (MAGIC_LEVEL_REQUIRED) { - if (player.playerLevel[player.playerMagic] < 90) { - player.getPacketSender().sendMessage("You need a magic level of 90 to cast this spell."); - return; - } - } - CastRequirements.deleteRunes(player, new int[][]{{LAW_RUNE, 2}, {BLOOD_RUNE, 2}}); - player.getPlayerAssistant().startTeleport(ANNAKARL_X + Misc.random(1), ANNAKARL_Y - Misc.random(1), 0, "ancient"); - player.getPlayerAssistant().addSkillXP(100, player.playerMagic); - } - public static void ghorrockTeleport(Player player) { - if (!teleportCheck(player)) { - return; - } - RandomEventHandler.addRandom(player); - if (RUNES_REQUIRED) { - if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {WATER_RUNE, 8}})) { - player.getPacketSender().sendMessage("You don't have the required runes to cast this spell."); - return; - } - } - if (MAGIC_LEVEL_REQUIRED) { - if (player.playerLevel[player.playerMagic] < 96) { - player.getPacketSender().sendMessage("You need a magic level of 96 to cast this spell."); - return; - } - } - CastRequirements.deleteRunes(player, new int[][]{{LAW_RUNE, 2}, {WATER_RUNE, 8}}); - player.getPlayerAssistant().startTeleport(GHORROCK_X + Misc.random(3), - GHORROCK_Y - Misc.random(3), 0, "ancient"); - player.getPlayerAssistant().addSkillXP(106, player.playerMagic); - } - public static void varrockTeleport(Player player) { - if (!teleportCheck(player)) { - return; - } - RandomEventHandler.addRandom(player); - if (RUNES_REQUIRED) { - if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 1}, {FIRE_RUNE, 1}, {AIR_RUNE, 3}})) { - player.getPacketSender().sendMessage("You don't have the required runes to cast this spell."); - return; - } - } - if (MAGIC_LEVEL_REQUIRED) { - if (player.playerLevel[player.playerMagic] < 25) { - player.getPacketSender().sendMessage("You need a magic level of 25 to cast this spell."); - return; - } - } - CastRequirements.deleteRunes(player, new int[][]{{LAW_RUNE, 1}, {FIRE_RUNE, 1}, {AIR_RUNE, 3}}); - player.getPlayerAssistant().startTeleport(VARROCK_X + Misc.random(2), VARROCK_Y - Misc.random(2), 0, "modern"); - player.getPlayerAssistant().addSkillXP(35, player.playerMagic); - } - public static void lumbridgeTeleport(Player player) { - if (!teleportCheck(player)) { - return; - } - RandomEventHandler.addRandom(player); - if (RUNES_REQUIRED) { - if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 1}, {EARTH_RUNE, 1}, {AIR_RUNE, 3}})) { - player.getPacketSender().sendMessage("You don't have the required runes to cast this spell."); - return; - } - } - if (MAGIC_LEVEL_REQUIRED) { - if (player.playerLevel[player.playerMagic] < 31) { - player.getPacketSender().sendMessage("You need a magic level of 31 to cast this spell."); - return; - } - } - CastRequirements.deleteRunes(player, new int[][]{{LAW_RUNE, 1}, {EARTH_RUNE, 1}, {AIR_RUNE, 3}}); - player.getPlayerAssistant().startTeleport(LUMBRIDGE_X, LUMBRIDGE_Y, 0, "modern"); - player.getPlayerAssistant().addSkillXP(35, player.playerMagic); - } - public static void faladorTeleport(Player player) { - /*if (!teleportCheck(player)) { - return; - }*/ - RandomEventHandler.addRandom(player); - if (RUNES_REQUIRED) { - if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 1}, {WATER_RUNE, 1}, {AIR_RUNE, 3}})) { - player.getPacketSender().sendMessage("You don't have the required runes to cast this spell."); - return; - } - } - if (MAGIC_LEVEL_REQUIRED) { - if (player.playerLevel[player.playerMagic] < 37) { - player.getPacketSender().sendMessage("You need a magic level of 37 to cast this spell."); - return; - } - } - CastRequirements.deleteRunes(player, new int[][]{{LAW_RUNE, 1}, {WATER_RUNE, 1}, {AIR_RUNE, 3}}); - player.getPlayerAssistant().startTeleport(FALADOR_X + Misc.random(4), FALADOR_Y - Misc.random(4), 0, "modern"); - player.getPlayerAssistant().addSkillXP(48, player.playerMagic); - } - public static void camelotTeleport(Player player) { - if (!teleportCheck(player)) { - return; - } - RandomEventHandler.addRandom(player); - if (RUNES_REQUIRED) { - if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 1}, {AIR_RUNE, 5}})) { - player.getPacketSender().sendMessage("You don't have the required runes to cast this spell."); - return; - } - } - if (MAGIC_LEVEL_REQUIRED) { - if (player.playerLevel[player.playerMagic] < 45) { - player.getPacketSender().sendMessage("You need a magic level of 45 to cast this spell."); - return; - } - } - CastRequirements.deleteRunes(player, new int[][]{{LAW_RUNE, 1}, {AIR_RUNE, 5}}); - // 2757, 3479 - player.getPlayerAssistant().startTeleport(CAMELOT_X + Misc.random(1), CAMELOT_Y - Misc.random(1), 0, "modern"); - player.getPlayerAssistant().addSkillXP(55.5, player.playerMagic); - } - public static void ardougneTeleport(Player player) { - if (!teleportCheck(player)) { - return; - } - RandomEventHandler.addRandom(player); - if (RUNES_REQUIRED) { - if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {WATER_RUNE, 2}})) { - player.getPacketSender().sendMessage("You don't have the required runes to cast this spell."); - return; - } - } - if (MAGIC_LEVEL_REQUIRED) { - if (player.playerLevel[player.playerMagic] < 51) { - player.getPacketSender().sendMessage("You need a magic level of 51 to cast this spell."); - return; - } - } - CastRequirements.deleteRunes(player, new int[][]{{LAW_RUNE, 2}, {WATER_RUNE, 2}}); - player.getPlayerAssistant().startTeleport(ARDOUGNE_X + Misc.random(4), - ARDOUGNE_Y - Misc.random(4), 0, "modern"); - player.getPlayerAssistant().addSkillXP(61, player.playerMagic); - } - public static void watchTowerTeleport(Player player) { - if (!teleportCheck(player)) { - return; - } - RandomEventHandler.addRandom(player); - if (RUNES_REQUIRED) { - if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {EARTH_RUNE, 2}})) { - player.getPacketSender().sendMessage("You don't have the required runes to cast this spell."); - return; - } - } - if (MAGIC_LEVEL_REQUIRED) { - if (player.playerLevel[player.playerMagic] < 58) { - player.getPacketSender().sendMessage( - "You need a magic level of 58 to cast this spell."); - return; - } - } - CastRequirements.deleteRunes(player, new int[][]{{LAW_RUNE, 2}, {EARTH_RUNE, 2}}); - player.getPlayerAssistant().startTeleport(WATCHTOWER_X, WATCHTOWER_Y, 1, "modern"); - player.getPlayerAssistant().addSkillXP(68, player.playerMagic); - } - public static void trollhiemTeleport(Player player) { - if (!teleportCheck(player)) { - return; - } - RandomEventHandler.addRandom(player); - if (RUNES_REQUIRED) { - if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {FIRE_RUNE, 2}})) { - player.getPacketSender().sendMessage("You don't have the required runes to cast this spell."); - return; - } - } - if (MAGIC_LEVEL_REQUIRED) { - if (player.playerLevel[player.playerMagic] < 61) { - player.getPacketSender().sendMessage("You need a magic level of 61 to cast this spell."); - return; - } - } - CastRequirements.deleteRunes(player, new int[][]{{LAW_RUNE, 2}, {FIRE_RUNE, 2}}); - player.getPlayerAssistant().startTeleport(2892 + Misc.random(2), - 3679 - Misc.random(2), 0, "modern"); - player.getPlayerAssistant().addSkillXP(68, player.playerMagic); - } - public static void apeAtollTeleport(Player player) { - if (!teleportCheck(player)) { - return; - } - RandomEventHandler.addRandom(player); - if (RUNES_REQUIRED) { - if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {FIRE_RUNE, 2}, {WATER_RUNE, 2}}) || !player.getItemAssistant().playerHasItem(BANANA, 1)) { - player.getPacketSender().sendMessage("You don't have the required items to cast this spell."); - return; - } - } - if (player.questPoints < 19) { - player.getPacketSender().sendMessage("You need " + 19 + " quest points to teleport here."); - return; - } - if (MAGIC_LEVEL_REQUIRED) { - if (player.playerLevel[player.playerMagic] < 64) { - player.getPacketSender().sendMessage("You need a magic level of 64 to cast this spell."); - return; - } - } - CastRequirements.deleteRunes(player, new int[][]{{LAW_RUNE, 2}, {FIRE_RUNE, 2}, {WATER_RUNE, 2}}); - player.getItemAssistant().deleteItem(BANANA, 1); - player.getPlayerAssistant().startTeleport(2798 + Misc.random(1), 2798 - Misc.random(1), 1, "modern"); - player.getPlayerAssistant().addSkillXP(76, player.playerMagic); - } + + } \ No newline at end of file diff --git a/2006Redone Server/src/com/rebotted/game/content/combat/magic/SpellTeleport.java b/2006Redone Server/src/com/rebotted/game/content/combat/magic/SpellTeleport.java new file mode 100644 index 00000000..a3ec161e --- /dev/null +++ b/2006Redone Server/src/com/rebotted/game/content/combat/magic/SpellTeleport.java @@ -0,0 +1,82 @@ +package com.rebotted.game.content.combat.magic; + +public enum SpellTeleport { + + VARROCK(25, 4140, 35, 3213, 3422, 0, new int[][]{{563, 1}, {554, 1}, {556, 3}}, "modern"), + LUMBRIDGE(31,4143, 41, 3222, 3218, 0, new int[][]{{563, 1}, {557, 1}, {556, 3}}, "modern"), + FALADOR(37, 4146, 48, 2965, 3378, 0, new int[][]{{563, 1}, {555, 1}, {556, 3}}, "modern"), + CAMELOT(45, 4150, 55.5, 2757, 3479, 0, new int[][]{{563, 1}, {556, 5}}, "modern"), + ARDOUGNE(51, 6004, 61, 2262, 3304, 0, new int[][]{{563, 2}, {555, 2}}, "modern"), + WATCHTOWER(58, 6005, 68, 2547, 3112, 1, new int[][]{{563, 2}, {557, 2}}, "modern"), + TROLLHEIM(61, 29031, 68, 2893, 3679, 0, new int[][]{{563, 2}, {554, 2}}, "modern"), + APE_ATOLL(64, 72038, 74, 2798, 2798, 1, new int[][]{{563, 2}, {554, 2}, {555, 2}, {1963, 1}}, "modern"), + PADDEWWA(54, 50235, 64, 3098, 9884, 0, new int[][] {{563, 2}, {554, 1}, {556, 1}}, "ancient"), + SENNTISTEN(60, 50245, 70, 3321, 3335, 0, new int[][] {{566, 1}, {563, 2}}, "ancient"), + KHARYLL(66, 50253, 76, 3493, 3472, 0, new int[][] {{565, 1}, {563, 2}}, "ancient"), + LASSAR(72, 51005, 82, 3006, 3471, 0, new int[][] {{563, 2}, {555, 4}}, "ancient"), + DAREEYAK(78, 51013, 88, 3161, 3671, 0, new int[][] {{563, 2}, {554, 3}, {556, 2}}, "ancient"), + CARRALLANGAR(84, 51023, 94, 3157, 3669, 0, new int[][] {{566, 2}, {563, 2}}, "ancient"), + ANNAKARL(90, 51031, 100, 3286, 3884, 0, new int[][] {{565, 2}, {563, 2}}, "ancient"), + GHORROCK(96, 51039, 106, 2977, 3873, 0, new int[][] {{563, 2}, {555, 8}}, "ancient"); + + int requiredLevel, buttonId, destX, destY, destZ; + double experienceGained; + int[][] requiredRunes; + String type; + + SpellTeleport(int requiredLevel, int buttonId, double experienceGained, int destX, int destY, int destZ, int[][] requiredRunes, String type) { + this.requiredLevel = requiredLevel; + this.buttonId = buttonId; + this.experienceGained = experienceGained; + this.destX = destX; + this.destY = destY; + this.destZ = destZ; + this.requiredRunes = requiredRunes; + this.type = type; + } + + public int getRequiredLevel() { + return requiredLevel; + } + + public int getButtonId() { + return buttonId; + } + + public int getDestX() { + return destX; + } + + public int getDestY() { + return destY; + } + + public int getDestZ(){ + return destZ; + } + + public int[][] getRequiredRunes() { + return requiredRunes; + } + + public double getExperienceGained() { + return experienceGained; + } + + public String getType() { + return type; + } + + public static SpellTeleport forButtonId(int id) { + for (SpellTeleport t : values()) { + if (t != null) { + if (t.getButtonId() == id) { + return t; + } + } + } + return null; + } + + +} diff --git a/2006Redone Server/src/com/rebotted/game/players/PlayerAssistant.java b/2006Redone Server/src/com/rebotted/game/players/PlayerAssistant.java index fc7be68a..6783f857 100644 --- a/2006Redone Server/src/com/rebotted/game/players/PlayerAssistant.java +++ b/2006Redone Server/src/com/rebotted/game/players/PlayerAssistant.java @@ -693,6 +693,13 @@ public class PlayerAssistant { player.getPacketSender().sendMessage("You can't teleport from a Fight pits Game!"); return; } + if (player.inWild() && player.wildLevel > GameConstants.NO_TELEPORT_WILD_LEVEL) { + player.getPacketSender().sendMessage( + "You can't teleport above level " + + GameConstants.NO_TELEPORT_WILD_LEVEL + + " in the wilderness."); + return; + } if (player.tutorialProgress < 36) { player.getPacketSender().sendMessage("You can't teleport from tutorial island!"); return; @@ -719,14 +726,6 @@ public class PlayerAssistant { player.getPacketSender().sendMessage("This feature is curently disabled."); return; } - if (player.inWild() - && player.wildLevel > GameConstants.NO_TELEPORT_WILD_LEVEL) { - player.getPacketSender().sendMessage( - "You can't teleport above level " - + GameConstants.NO_TELEPORT_WILD_LEVEL - + " in the wilderness."); - return; - } if (System.currentTimeMillis() - player.teleBlockDelay < player.teleBlockLength) { player.getPacketSender().sendMessage( "You are teleblocked and can't teleport."); diff --git a/2006Redone Server/src/com/rebotted/net/packets/impl/ClickingButtons.java b/2006Redone Server/src/com/rebotted/net/packets/impl/ClickingButtons.java index c4f4ce1f..2e6aeedc 100644 --- a/2006Redone Server/src/com/rebotted/net/packets/impl/ClickingButtons.java +++ b/2006Redone Server/src/com/rebotted/net/packets/impl/ClickingButtons.java @@ -2,14 +2,13 @@ package com.rebotted.net.packets.impl; import com.rebotted.game.content.combat.CombatConstants; import com.rebotted.game.content.combat.Specials; -import com.rebotted.game.content.combat.magic.CastOnOther; -import com.rebotted.game.content.combat.magic.MagicData; -import com.rebotted.game.content.combat.magic.MagicTeleports; +import com.rebotted.game.content.combat.magic.*; import com.rebotted.game.content.combat.prayer.ActivatePrayers; import com.rebotted.game.content.music.Music; import com.rebotted.game.content.music.sound.SoundList; import com.rebotted.game.content.quests.QuestAssistant; import com.rebotted.game.content.random.PartyRoom; +import com.rebotted.game.content.randomevents.RandomEventHandler; import com.rebotted.game.content.randomevents.SandwhichLady; import com.rebotted.game.content.skills.cooking.Cooking; import com.rebotted.game.content.skills.cooking.CookingTutorialIsland; @@ -92,73 +91,30 @@ public class ClickingButtons implements PacketType { player.droppedItem = -1; break; - case 50235: - MagicTeleports.paddewwaTeleport(player); - break; - case 50245: - MagicTeleports.senntisenTeleport(player); - break; + /** + * Spellbook Teleports + */ - case 50253: - MagicTeleports.kharyllTeleport(player); - break; + case 50235: + case 50245: + case 50253: + case 51005: + case 51013: + case 51023: + case 51031: + case 51039: + case 4140: + case 4143: + case 4146: + case 4150: + case 6004: + case 6005: + case 29031: + case 72038: + MagicTeleports.handleSpellTeleport(player, SpellTeleport.forButtonId(actionButtonId)); + break; - case 51005: - MagicTeleports.lassarTeleport(player); - break; - - case 51013: - MagicTeleports.dareeyakTeleport(player); - break; - - case 51023: - MagicTeleports.carrallangarTeleport(player); - break; - - case 51031: - MagicTeleports.annakarlTeleport(player); - break; - - case 51039: - MagicTeleports.ghorrockTeleport(player); - break; - - case 4140: - MagicTeleports.varrockTeleport(player); - break; - - case 4143: - MagicTeleports.lumbridgeTeleport(player); - break; - - case 4146: - MagicTeleports.faladorTeleport(player); - break; - - case 4150: - MagicTeleports.camelotTeleport(player); - break; - - case 6004: - MagicTeleports.ardougneTeleport(player); - break; - - case 6005: - MagicTeleports.watchTowerTeleport(player); - break; - - case 29031: - MagicTeleports.trollhiemTeleport(player); - break; - - case 72038: - MagicTeleports.apeAtollTeleport(player); - break; - - /** - * End of Modern Teleports - */ case 4135: if (player.inTrade) {