From 8de8b619a0cefef30b5e3287c8dc6406edc8e653 Mon Sep 17 00:00:00 2001 From: Danial Date: Fri, 25 Oct 2019 07:42:02 +1300 Subject: [PATCH] Rebase magic teleports, fix superheat (#92) * rebase teleport spells * fix superheat rune requirements * fixup ardougne laws required --- .../combat/magic/CastRequirements.java | 46 +++-- .../content/combat/magic/MagicTeleports.java | 165 ++++-------------- .../content/skills/smithing/Superheat.java | 7 +- .../content/skills/smithing/Superheat.class | Bin 3144 -> 3322 bytes 4 files changed, 56 insertions(+), 162 deletions(-) diff --git a/2006Redone Server/src/redone/game/content/combat/magic/CastRequirements.java b/2006Redone Server/src/redone/game/content/combat/magic/CastRequirements.java index c078fe92..ee316a0e 100644 --- a/2006Redone Server/src/redone/game/content/combat/magic/CastRequirements.java +++ b/2006Redone Server/src/redone/game/content/combat/magic/CastRequirements.java @@ -6,7 +6,7 @@ public class CastRequirements { public static boolean hasRunes(Client c, int[] runes, int[] amount) { for (int i = 0; i < runes.length; i++) { - if (c.getItemAssistant().playerHasItem(runes[i], amount[i])) { + if (c.getItemAssistant().playerHasItem(runes[i], amount[i]) || MagicRequirements.wearingStaff(c, runes[i])) { return true; } } @@ -16,25 +16,19 @@ public class CastRequirements { } public static boolean hasRunes(Client c, int[][] runes) { - int hasRunes = 0; for (int[] rune : runes) { - if (c.getItemAssistant().playerHasItem(rune[0], rune[1])) { - hasRunes++; + // if player doesn't have the required amount of runes or a staff for that rune + if (!c.getItemAssistant().playerHasItem(rune[0], rune[1]) && !MagicRequirements.wearingStaff(c, rune[0])) { + return false; } } - if (hasRunes == runes.length) { - deleteRunes(c, runes); - return true; - } - c.getActionSender().sendMessage( - "You don't have the required runes to cast this spell."); - return false; + return true; } public static void deleteRunes(Client c, int[][] runes) { for (int[] rune : runes) { if (!MagicRequirements.wearingStaff(c, rune[0])) { - c.getItemAssistant().deleteItem(rune[0], rune[1]); + c.getItemAssistant().deleteItem2(rune[0], rune[1]); } } } @@ -50,18 +44,18 @@ public class CastRequirements { return c.playerLevel[6] >= i; } - public static final int FIRE = 554; - public static final int WATER = 555; - public static final int AIR = 556; - public static final int EARTH = 557; - public static final int MIND = 558; - public static final int BODY = 559; - public static final int DEATH = 560; - public static final int NATURE = 561; - public static final int CHAOS = 562; - public static final int LAW = 563; - public static final int COSMIC = 564; - public static final int BLOOD = 565; - public static final int SOUL = 566; - public static final int ASTRAL = 9075; + public static final int FIRE = 554, + WATER = 555, + AIR = 556, + EARTH = 557, + MIND = 558, + BODY = 559, + DEATH = 560, + NATURE = 561, + CHAOS = 562, + LAW = 563, + COSMIC = 564, + BLOOD = 565, + SOUL = 566, + ASTRAL = 9075; } diff --git a/2006Redone Server/src/redone/game/content/combat/magic/MagicTeleports.java b/2006Redone Server/src/redone/game/content/combat/magic/MagicTeleports.java index b0eb0c36..3f173b33 100644 --- a/2006Redone Server/src/redone/game/content/combat/magic/MagicTeleports.java +++ b/2006Redone Server/src/redone/game/content/combat/magic/MagicTeleports.java @@ -50,50 +50,6 @@ public class MagicTeleports { public static final int GHORROCK_X = 2977, GHORROCK_Y = 3873; public static final boolean MAGIC_LEVEL_REQUIRED = true, RUNES_REQUIRED = true; - - public static boolean hasRuneStaff(Client player, int rune) { - if (rune == 556) {//Air - if (player.playerEquipment[player.playerWeapon] == 1381//Staff of air - || player.playerEquipment[player.playerWeapon] == 1397//Air battlestaff - || player.playerEquipment[player.playerWeapon] == 1405) {//Mystic air staff - return true; - } - } - if (rune == 555) {//Water - if (player.playerEquipment[player.playerWeapon] == 1383//Staff of water - || player.playerEquipment[player.playerWeapon] == 1395//Water battlestaff - || player.playerEquipment[player.playerWeapon] == 6562//Mud battlestaff - || player.playerEquipment[player.playerWeapon] == 6563//Mystic mud staff - || player.playerEquipment[player.playerWeapon] == 11736//Steam battlestaff - || player.playerEquipment[player.playerWeapon] == 11738//Mystic steam staff - || player.playerEquipment[player.playerWeapon] == 1403) {//Mystic water staff - return true; - } - } - if (rune == 557) {//Earth - if (player.playerEquipment[player.playerWeapon] == 1385//Staff of earth - || player.playerEquipment[player.playerWeapon] == 1399//Earth battlestaff - || player.playerEquipment[player.playerWeapon] == 3053//Lava battlestaff - || player.playerEquipment[player.playerWeapon] == 3054//Mystic lava staff - || player.playerEquipment[player.playerWeapon] == 6562//Mud battlestaff - || player.playerEquipment[player.playerWeapon] == 6563//Mystic mud staff - || player.playerEquipment[player.playerWeapon] == 1407) {//Mystic earth staff - return true; - } - } - if (rune == 554) {//Fire - if (player.playerEquipment[player.playerWeapon] == 1387//Staff of fire - || player.playerEquipment[player.playerWeapon] == 1393//Fire battlestaff - || player.playerEquipment[player.playerWeapon] == 3053//Lava battlestaff - || player.playerEquipment[player.playerWeapon] == 3054//Mystic lava staff - || player.playerEquipment[player.playerWeapon] == 11736//Steam battlestaff - || player.playerEquipment[player.playerWeapon] == 11738//Mystic steam staff - || player.playerEquipment[player.playerWeapon] == 1401) {//Mystic fire staff - return true; - } - } - return false; - } public static void paddewwaTeleport(Client player) { if (System.currentTimeMillis() - player.lastCast < 5000) { @@ -101,7 +57,7 @@ public class MagicTeleports { } RandomEventHandler.addRandom(player); if (RUNES_REQUIRED) { - if (!player.getItemAssistant().playerHasItem(LAW_RUNE, 2) || !player.getItemAssistant().playerHasItem(FIRE_RUNE, 1) && hasRuneStaff(player, FIRE_RUNE) == false || !player.getItemAssistant().playerHasItem(FIRE_RUNE, 1) && hasRuneStaff(player, AIR_RUNE) == false) { + if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {FIRE_RUNE, 1}, {AIR_RUNE, 1}})) { player.getActionSender().sendMessage("You don't have the required runes to cast this spell."); return; } @@ -112,12 +68,7 @@ public class MagicTeleports { return; } } - player.getItemAssistant().deleteItem2(LAW_RUNE, 2); - if (hasRuneStaff(player, FIRE_RUNE) == false) { - player.getItemAssistant().deleteItem2(FIRE_RUNE, 1); - } else if (hasRuneStaff(player, AIR_RUNE) == false) { - player.getItemAssistant().deleteItem2(AIR_RUNE, 1); - } + 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.lastCast = System.currentTimeMillis(); player.getPlayerAssistant().addSkillXP(64, player.playerMagic); @@ -129,7 +80,7 @@ public class MagicTeleports { } RandomEventHandler.addRandom(player); if (RUNES_REQUIRED) { - if (!player.getItemAssistant().playerHasItem(LAW_RUNE, 2) || !player.getItemAssistant().playerHasItem(SOUL_RUNE, 1)) { + if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {SOUL_RUNE, 1}})) { player.getActionSender().sendMessage("You don't have the required runes to cast this spell."); return; } @@ -140,8 +91,7 @@ public class MagicTeleports { return; } } - player.getItemAssistant().deleteItem2(LAW_RUNE, 2); - player.getItemAssistant().deleteItem2(SOUL_RUNE, 1); + 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.lastCast = System.currentTimeMillis(); player.getPlayerAssistant().addSkillXP(70, player.playerMagic); @@ -153,7 +103,7 @@ public class MagicTeleports { } RandomEventHandler.addRandom(player); if (RUNES_REQUIRED) { - if (!player.getItemAssistant().playerHasItem(LAW_RUNE, 2) || !player.getItemAssistant().playerHasItem(BLOOD_RUNE, 1)) { + if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {BLOOD_RUNE, 1}})) { player.getActionSender().sendMessage("You don't have the required runes to cast this spell."); return; } @@ -164,8 +114,7 @@ public class MagicTeleports { return; } } - player.getItemAssistant().deleteItem2(LAW_RUNE, 2); - player.getItemAssistant().deleteItem2(BLOOD_RUNE, 1); + CastRequirements.deleteRunes(player, new int[][]{{LAW_RUNE, 2}, {BLOOD_RUNE, 1}}); player.getPlayerAssistant().startTeleport(KHARYRLL_X, KHARYRLL_Y, 0, "ancient"); player.lastCast = System.currentTimeMillis(); player.getPlayerAssistant().addSkillXP(76, player.playerMagic); @@ -177,7 +126,7 @@ public class MagicTeleports { } RandomEventHandler.addRandom(player); if (RUNES_REQUIRED) { - if (!player.getItemAssistant().playerHasItem(LAW_RUNE, 2) || !player.getItemAssistant().playerHasItem(WATER_RUNE, 4) && hasRuneStaff(player, WATER_RUNE) == false) { + if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {WATER_RUNE, 4}})) { player.getActionSender().sendMessage("You don't have the required runes to cast this spell."); return; } @@ -188,10 +137,7 @@ public class MagicTeleports { return; } } - player.getItemAssistant().deleteItem2(LAW_RUNE, 2); - if (hasRuneStaff(player, WATER_RUNE) == false) { - player.getItemAssistant().deleteItem2(WATER_RUNE, 4); - } + 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.lastCast = System.currentTimeMillis(); player.getPlayerAssistant().addSkillXP(82, player.playerMagic); @@ -203,7 +149,7 @@ public class MagicTeleports { } RandomEventHandler.addRandom(player); if (RUNES_REQUIRED) { - if (!player.getItemAssistant().playerHasItem(LAW_RUNE, 2) || !player.getItemAssistant().playerHasItem(FIRE_RUNE, 3) && hasRuneStaff(player, FIRE_RUNE) == false || !player.getItemAssistant().playerHasItem(AIR_RUNE, 2) && hasRuneStaff(player, AIR_RUNE) == false) { + if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {FIRE_RUNE, 3}, {AIR_RUNE, 2}})) { player.getActionSender().sendMessage("You don't have the required runes to cast this spell."); return; } @@ -214,13 +160,7 @@ public class MagicTeleports { return; } } - player.getItemAssistant().deleteItem2(LAW_RUNE, 2); - if (hasRuneStaff(player, FIRE_RUNE) == false) { - player.getItemAssistant().deleteItem2(FIRE_RUNE, 3); - } - if (hasRuneStaff(player, AIR_RUNE) == false) { - player.getItemAssistant().deleteItem2(AIR_RUNE, 2); - } + 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"); @@ -234,8 +174,7 @@ public class MagicTeleports { } RandomEventHandler.addRandom(player); if (RUNES_REQUIRED) { - if (!player.getItemAssistant().playerHasItem(SOUL_RUNE, 2) - || !player.getItemAssistant().playerHasItem(LAW_RUNE, 2)) { + if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {SOUL_RUNE, 2}})) { player.getActionSender() .sendMessage( "You don't have the required runes to cast this spell."); @@ -248,8 +187,7 @@ public class MagicTeleports { return; } } - player.getItemAssistant().deleteItem2(SOUL_RUNE, 2); - player.getItemAssistant().deleteItem2(LAW_RUNE, 2); + 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.lastCast = System.currentTimeMillis(); player.getPlayerAssistant().addSkillXP(94, player.playerMagic); @@ -261,7 +199,7 @@ public class MagicTeleports { } RandomEventHandler.addRandom(player); if (RUNES_REQUIRED) { - if (!player.getItemAssistant().playerHasItem(BLOOD_RUNE, 2) || !player.getItemAssistant().playerHasItem(LAW_RUNE, 2)) { + if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {BLOOD_RUNE, 2}})) { player.getActionSender().sendMessage("You don't have the required runes to cast this spell."); return; } @@ -272,8 +210,7 @@ public class MagicTeleports { return; } } - player.getItemAssistant().deleteItem2(BLOOD_RUNE, 2); - player.getItemAssistant().deleteItem2(LAW_RUNE, 2); + 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.lastCast = System.currentTimeMillis(); player.getPlayerAssistant().addSkillXP(100, player.playerMagic); @@ -285,7 +222,7 @@ public class MagicTeleports { } RandomEventHandler.addRandom(player); if (RUNES_REQUIRED) { - if (!player.getItemAssistant().playerHasItem(LAW_RUNE, 2) || !player.getItemAssistant().playerHasItem(WATER_RUNE, 8) && hasRuneStaff(player, WATER_RUNE) == false) { + if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {WATER_RUNE, 8}})) { player.getActionSender().sendMessage("You don't have the required runes to cast this spell."); return; } @@ -296,10 +233,7 @@ public class MagicTeleports { return; } } - player.getItemAssistant().deleteItem2(LAW_RUNE, 2); - if (hasRuneStaff(player, WATER_RUNE) == false) { - player.getItemAssistant().deleteItem2(WATER_RUNE, 8); - } + 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.lastCast = System.currentTimeMillis(); @@ -312,7 +246,7 @@ public class MagicTeleports { } RandomEventHandler.addRandom(player); if (RUNES_REQUIRED) { - if (!player.getItemAssistant().playerHasItem(LAW_RUNE, 1) || !player.getItemAssistant().playerHasItem(FIRE_RUNE, 1) && hasRuneStaff(player, FIRE_RUNE) == false || !player.getItemAssistant().playerHasItem(AIR_RUNE, 3) && hasRuneStaff(player, AIR_RUNE) == false) { + if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 1}, {FIRE_RUNE, 1}, {AIR_RUNE, 3}})) { player.getActionSender().sendMessage("You don't have the required runes to cast this spell."); return; } @@ -323,13 +257,7 @@ public class MagicTeleports { return; } } - player.getItemAssistant().deleteItem2(LAW_RUNE, 1); - if (hasRuneStaff(player, FIRE_RUNE) == false) { - player.getItemAssistant().deleteItem2(FIRE_RUNE, 1); - } - if (hasRuneStaff(player, AIR_RUNE) == false) { - player.getItemAssistant().deleteItem2(AIR_RUNE, 3); - } + 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.lastCast = System.currentTimeMillis(); player.getPlayerAssistant().addSkillXP(35, player.playerMagic); @@ -341,7 +269,7 @@ public class MagicTeleports { } RandomEventHandler.addRandom(player); if (RUNES_REQUIRED) { - if (!player.getItemAssistant().playerHasItem(LAW_RUNE, 1) || !player.getItemAssistant().playerHasItem(EARTH_RUNE, 1) && hasRuneStaff(player, EARTH_RUNE) == false || !player.getItemAssistant().playerHasItem(AIR_RUNE, 3) && hasRuneStaff(player, AIR_RUNE) == false) { + if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 1}, {EARTH_RUNE, 1}, {AIR_RUNE, 3}})) { player.getActionSender().sendMessage("You don't have the required runes to cast this spell."); return; } @@ -352,13 +280,7 @@ public class MagicTeleports { return; } } - player.getItemAssistant().deleteItem2(LAW_RUNE, 1); - if (hasRuneStaff(player, EARTH_RUNE) == false) { - player.getItemAssistant().deleteItem2(EARTH_RUNE, 1); - } - if (hasRuneStaff(player, AIR_RUNE) == false) { - player.getItemAssistant().deleteItem2(AIR_RUNE, 3); - } + CastRequirements.deleteRunes(player, new int[][]{{LAW_RUNE, 1}, {EARTH_RUNE, 1}, {AIR_RUNE, 3}}); player.getPlayerAssistant().startTeleport(LUMBRIDGE_X, LUMBRIDGE_Y, 0, "modern"); player.lastCast = System.currentTimeMillis(); player.getPlayerAssistant().addSkillXP(35, player.playerMagic); @@ -370,7 +292,7 @@ public class MagicTeleports { } RandomEventHandler.addRandom(player); if (RUNES_REQUIRED) { - if (!player.getItemAssistant().playerHasItem(LAW_RUNE, 1) || !player.getItemAssistant().playerHasItem(WATER_RUNE, 1) && hasRuneStaff(player, WATER_RUNE) == false || !player.getItemAssistant().playerHasItem(AIR_RUNE, 3) && hasRuneStaff(player, AIR_RUNE) == false) { + if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 1}, {WATER_RUNE, 1}, {AIR_RUNE, 3}})) { player.getActionSender().sendMessage("You don't have the required runes to cast this spell."); return; } @@ -381,13 +303,7 @@ public class MagicTeleports { return; } } - player.getItemAssistant().deleteItem2(LAW_RUNE, 1); - if (hasRuneStaff(player, WATER_RUNE) == false) { - player.getItemAssistant().deleteItem2(WATER_RUNE, 1); - } - if (hasRuneStaff(player, AIR_RUNE) == false) { - player.getItemAssistant().deleteItem2(AIR_RUNE, 3); - } + 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.lastCast = System.currentTimeMillis(); player.getPlayerAssistant().addSkillXP(48, player.playerMagic); @@ -399,7 +315,7 @@ public class MagicTeleports { } RandomEventHandler.addRandom(player); if (RUNES_REQUIRED) { - if (!player.getItemAssistant().playerHasItem(LAW_RUNE, 1) || !player.getItemAssistant().playerHasItem(AIR_RUNE, 5) && hasRuneStaff(player, AIR_RUNE) == false) { + if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 1}, {AIR_RUNE, 5}})) { player.getActionSender().sendMessage("You don't have the required runes to cast this spell."); return; } @@ -410,10 +326,7 @@ public class MagicTeleports { return; } } - player.getItemAssistant().deleteItem2(LAW_RUNE, 1); - if (hasRuneStaff(player, AIR_RUNE) == false) { - player.getItemAssistant().deleteItem2(AIR_RUNE, 5); - } + 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.lastCast = System.currentTimeMillis(); @@ -426,7 +339,7 @@ public class MagicTeleports { } RandomEventHandler.addRandom(player); if (RUNES_REQUIRED) { - if (!player.getItemAssistant().playerHasItem(LAW_RUNE, 2) || !player.getItemAssistant().playerHasItem(WATER_RUNE, 2) && hasRuneStaff(player, WATER_RUNE) == false) { + if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {WATER_RUNE, 2}})) { player.getActionSender().sendMessage("You don't have the required runes to cast this spell."); return; } @@ -437,10 +350,7 @@ public class MagicTeleports { return; } } - player.getItemAssistant().deleteItem2(LAW_RUNE, 2); - if (hasRuneStaff(player, WATER_RUNE) == false) { - player.getItemAssistant().deleteItem2(WATER_RUNE, 2); - } + 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.lastCast = System.currentTimeMillis(); @@ -453,7 +363,7 @@ public class MagicTeleports { } RandomEventHandler.addRandom(player); if (RUNES_REQUIRED) { - if (!player.getItemAssistant().playerHasItem(EARTH_RUNE, 2) && hasRuneStaff(player, EARTH_RUNE) == false || !player.getItemAssistant().playerHasItem(LAW_RUNE, 2)) { + if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {EARTH_RUNE, 2}})) { player.getActionSender().sendMessage("You don't have the required runes to cast this spell."); return; } @@ -465,10 +375,7 @@ public class MagicTeleports { return; } } - if (hasRuneStaff(player, EARTH_RUNE) == false) { - player.getItemAssistant().deleteItem2(EARTH_RUNE, 2); - } - player.getItemAssistant().deleteItem2(LAW_RUNE, 2); + CastRequirements.deleteRunes(player, new int[][]{{LAW_RUNE, 2}, {EARTH_RUNE, 2}}); player.getPlayerAssistant().startTeleport(WATCHTOWER_X, WATCHTOWER_Y, 1, "modern"); player.lastCast = System.currentTimeMillis(); player.getPlayerAssistant().addSkillXP(68, player.playerMagic); @@ -480,7 +387,7 @@ public class MagicTeleports { } RandomEventHandler.addRandom(player); if (RUNES_REQUIRED) { - if (!player.getItemAssistant().playerHasItem(FIRE_RUNE, 2) && hasRuneStaff(player, FIRE_RUNE) == false || !player.getItemAssistant().playerHasItem(LAW_RUNE, 2)) { + if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {FIRE_RUNE, 2}})) { player.getActionSender().sendMessage("You don't have the required runes to cast this spell."); return; } @@ -491,10 +398,7 @@ public class MagicTeleports { return; } } - if (hasRuneStaff(player, FIRE_RUNE) == false) { - player.getItemAssistant().deleteItem2(FIRE_RUNE, 2); - } - player.getItemAssistant().deleteItem2(LAW_RUNE, 2); + 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.lastCast = System.currentTimeMillis(); @@ -507,7 +411,7 @@ public class MagicTeleports { } RandomEventHandler.addRandom(player); if (RUNES_REQUIRED) { - if (!player.getItemAssistant().playerHasItem(LAW_RUNE, 2) || !player.getItemAssistant().playerHasItem(FIRE_RUNE, 2) && hasRuneStaff(player, FIRE_RUNE) == false || !player.getItemAssistant().playerHasItem(WATER_RUNE, 2) && hasRuneStaff(player, WATER_RUNE) == false || !player.getItemAssistant().playerHasItem(BANANA, 1)) { + if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {FIRE_RUNE, 2}, {WATER_RUNE, 2}}) || !player.getItemAssistant().playerHasItem(BANANA, 1)) { player.getActionSender().sendMessage("You don't have the required items to cast this spell."); return; } @@ -522,12 +426,7 @@ public class MagicTeleports { return; } } - if (hasRuneStaff(player, FIRE_RUNE) == false) { - player.getItemAssistant().deleteItem2(FIRE_RUNE, 2); - } else if (hasRuneStaff(player, WATER_RUNE) == false) { - player.getItemAssistant().deleteItem2(WATER_RUNE, 2); - } - player.getItemAssistant().deleteItem2(LAW_RUNE, 2); + CastRequirements.deleteRunes(player, new int[][]{{LAW_RUNE, 2}, {FIRE_RUNE, 2}, {WATER_RUNE, 2}}); player.getItemAssistant().deleteItem2(BANANA, 1); player.getPlayerAssistant().startTeleport(2798 + Misc.random(1), 2798 - Misc.random(1), 1, "modern"); player.lastCast = System.currentTimeMillis(); diff --git a/2006Redone Server/src/redone/game/content/skills/smithing/Superheat.java b/2006Redone Server/src/redone/game/content/skills/smithing/Superheat.java index cd1fa5c2..3ebad9bf 100644 --- a/2006Redone Server/src/redone/game/content/skills/smithing/Superheat.java +++ b/2006Redone Server/src/redone/game/content/skills/smithing/Superheat.java @@ -1,5 +1,7 @@ package redone.game.content.skills.smithing; +import redone.game.content.combat.magic.CastRequirements; +import redone.game.content.combat.magic.MagicRequirements; import redone.game.content.music.sound.SoundList; import redone.game.items.ItemAssistant; import redone.game.players.Client; @@ -33,7 +35,7 @@ public class Superheat { return false; } } - if (!c.getItemAssistant().playerHasItem(554, 4) || !c.getItemAssistant().playerHasItem(561, 1)) { + if (!CastRequirements.hasRunes(c, new int[][]{{554, 4}, {561, 1}})) { c.getActionSender().sendMessage("You don't have the correct runes to cast this spell."); return false; } @@ -57,8 +59,7 @@ public class Superheat { } c.getItemAssistant().deleteItem(itemID, 1); c.getItemAssistant().deleteItem(smelt[2], smelt[3]); - c.getItemAssistant().deleteItem2(554, 4); - c.getItemAssistant().deleteItem2(561, 1); + CastRequirements.deleteRunes(c, new int[][]{{554, 4}, {561, 1}}); c.getItemAssistant().addItem(smelt[4], 1); c.getPlayerAssistant().addSkillXP(53, c.playerMagic); c.startAnimation(722); diff --git a/CompiledServer/production/2006rebotted/redone/game/content/skills/smithing/Superheat.class b/CompiledServer/production/2006rebotted/redone/game/content/skills/smithing/Superheat.class index 46996bff951ecbd35dcf1543ed8c05c13cadbcca..697d73510e3c6b1a081ae5bfe351d31f4d53510b 100644 GIT binary patch delta 1331 zcma)4OHf;76#mY=x%qFd7fBE(DX)}bfq*wq+wg1)g<5J$QP9Q|UnxYu5}+hlwboRv zk6NwD#Rtr&4CBa#(Wx-EJ}5369i|I)95?NzE*)1cwK|OF2OKwDm^(S|^PThm|F@EN z!=Jvg`sFf!9hfo@M2iO%*lVB_Z3gz?E@|x-XgA9t2Y2Y5* zD^P2o3*9>I^Kje!QXG*05qI+;{}lhGW#|C|Q5=<`hut_um^g_i1)ehTG)@t+1F4ZfZ!DP#qy`3)f#hg>XlRRxXK+g3w25bt7C2+# zIXrKlRO(A#K&^?hXf*L6UNZ4A8U_b|EezFMiY)QrXZMuy{|{#YU&>Kz$Q#fMX@ z6USnyP$Jep*c)o)b-Usx#s|mZ2~H*n`amq%H9j0?v!r~&onwDMLhI={P;qqOJIzI& zo92$#Kez|d75wr5VY9qBwp6zHB3Xvm3$Z5FTJRF+A{z>-S-RJP8K_~~Tra?O+{vDY z*|d`*+^k%M&Xu6wK7-OxwY*ymyK-EGv-C|>j%#~^mhab8OP!%l?Jvabbk4pms?yqJ zWJXnO$%v{xCD<8tiO%k*Ys0T$-__auIlR-z3_8%Vd=74nsPp+gTAD#=a1mMjzs>Tg z`V4ZoB0HPaA~re5i_9TgM*NyrSnDx=g!N`=TO4&;vq)D+*stJ@UV_NVci>q|I4H;} zWXD0q`oN98BFkGjyRk~~M#h1f?{W}eAl0vFjO@0g`@c?>#+LOyVKGKYL@w;z$!P{UU9v5!TrRr~aBTxX zo#)p}t833Yfl_t~kc&bT@mGyvv><>slpukv7{NA7qYNLR93L}(mY6%=Gi$DMTv|jJwa_H9P=|V6Ray;bWZpHgQ;b_yVF(^Zf1_UT1BJ`H tVgFyaa0A94+^A#szYM2eAl3j@yq?RT%!T8|3g!IAaW7-;;Q|HC{{RS51&{y$ delta 1216 zcmZvb+f!Rr6vlu1oSdAKaBP!Epdru(21*-fY7ru&mP?DRtsvfGZLMO7(h5Q$C~7rT zv0kZ{c$xM=8D1D29H-)(j+fR4AH+U6zUh=Z?6FDydPvcy#cn-7i2H{g7kBnM*D3J1o6}BaJxPa>dc`acQD{Es3Ug<8R9O7 zy909l9&PT`h4=Y;2V&>tcR`2l5Apz6Z64I_VTXsLwud7QM|I#~hhv)g5p5pTW>}Lv zrpk0$Bx$iZ>GC9FHsdZ&G2t@Fsba)P zw@)$cl4r)|X_sf1Ra7SO6N%%))A>Yx^u%;xdNMaQR`2pGvo_DUJkROkoYB?z0%?~Q z$+#3anVr?I z^M=ct+PtN!-)7$B9P`DznR4FYU6=QmU-{f@F;=?#hO!RkbK`BroIP6DCNly>jc!zs zDOmazn-XuQoJvkBc?oq1WE~ynn>Iu;BmwHgXOx~RH$XKETyiT5s`6`xLKIYm}LpGKUH?u zTiK#BVMF&(f-%cZ2~K3Sx=@Eu*LsMwu<@((U!M%~fk%TD7Us9mi0RRo)eV38fBk3* zzekgAdCsSn){g12$W|?Fo#6K}fw?ThF-ybyh$g``R1s%0wKBvy`ULfpC@@Yv6Ew;e zHSr-^`B=W*FJwi2kmdMAR^l2vl|`GfX;)D?RGhThLZ_-Hqmt}aUEHer*`tQ&R!8Yk zC+StE=u@-oRcG0!=IK|TuwN~4Kz&Ay`jSKH8wS)*42qBuNQlZRRiuM7mR=rip;Po~ z)I~;CYqvNF+%Jf{Ap%ceOQuV@aXV}Eh_I>A4s(qYfPTde-TE-|cz0+(rCsjFC3 P(f`(XgK&0B-k|3nqMY48