Update Slayer (#196)

* tidy up

* Update DialogueHandler.java

* Slayer master gives specific difficulty tasks

* int

* tidy up
This commit is contained in:
Danial
2019-11-19 06:01:03 +13:00
committed by Daniel Ginovker
parent 26ff191af3
commit e5a0f84fcc
2 changed files with 90 additions and 126 deletions
@@ -8,10 +8,17 @@ import redone.util.Misc;
public class Slayer { public class Slayer {
public static final int VERY_EASY_TASK = 0, EASY_TASK = 1, MEDIUM_TASK = 2, public static final int
HARD_TASK = 3, VERY_HARD_TASK = 4, VERY_EASY_AMOUNT = 15 + r(25), VERY_EASY_TASK = 0,
EASY_AMOUNT = 25 + r(25), MEDIUM_AMOUNT = 50 + r(25), EASY_TASK = 1,
HARD_AMOUNT = 100 + r(50), VERY_HARD_AMOUNT = 130 + r(70), MEDIUM_TASK = 2,
HARD_TASK = 3,
VERY_HARD_TASK = 4,
VERY_EASY_AMOUNT = 15 + r(25),
EASY_AMOUNT = 25 + r(25),
MEDIUM_AMOUNT = 50 + r(25),
HARD_AMOUNT = 100 + r(50),
VERY_HARD_AMOUNT = 130 + r(70),
DRAGON_AMOUNT = 10 + r(40); DRAGON_AMOUNT = 10 + r(40);
public static ArrayList<Integer> veryEasyTask = new ArrayList<Integer>(); public static ArrayList<Integer> veryEasyTask = new ArrayList<Integer>();
@@ -27,18 +34,19 @@ public class Slayer {
} }
public enum SlayerMasters { public enum SlayerMasters {
TURAEL(70, 1, "Taverly", "Turael"), MAZCHNA(1596, 20, "Canifis", TURAEL(70, 1, VERY_EASY_TASK,"Taverly", "Turael"),
"Mazchna"), VANNAKA(1597, 40, "Edgeville", "Vannaka"), CHAELDAR( MAZCHNA(1596, 20, EASY_TASK, "Canifis", "Mazchna"),
1598, 70, "Zanaris", "Chaeldar"), DURADEL(1599, 100, VANNAKA(1597, 40, MEDIUM_TASK, "Edgeville", "Vannaka"),
"Shilo Village", "Duradel"); CHAELDAR(1598, 70, HARD_TASK, "Zanaris", "Chaeldar"),
DURADEL(1599, 100, VERY_HARD_TASK, "Shilo Village", "Duradel");
private int masterId, combatReq; private int masterId, combatReq, diffuculty;
private String masterLocation, masterName; private String masterLocation, masterName;
private SlayerMasters(int masterId, int combatReq, private SlayerMasters(int masterId, int combatReq, int diffuculty, String masterLocation, String masterName) {
String masterLocation, String masterName) {
this.masterId = masterId; this.masterId = masterId;
this.combatReq = combatReq; this.combatReq = combatReq;
this.diffuculty = diffuculty;
this.masterLocation = masterLocation; this.masterLocation = masterLocation;
this.masterName = masterName; this.masterName = masterName;
} }
@@ -59,13 +67,17 @@ public class Slayer {
return masterName; return masterName;
} }
public int getDifficulty() {
return diffuculty;
}
} }
//dark beast, red dragon, skeleton //dark beast, red dragon, skeleton
public enum Task { public enum Task {
ABERRANT_SPECTRE(1604, 60, 90, 3, "Slayer Tower"), ABERRANT_SPECTRE(1604, 60, 90, 3, "Slayer Tower"),
ABYSSAL_DEMON(1615, 85, 150, 4, "Slayer Tower"), ABYSSAL_DEMON(1615, 85, 150, 4, "Slayer Tower"),
BANSHEE(1612, 15, 22, 0 + r(2), "Slayer Tower"), BANSHEE(1612, 15, 22, 0 + r(1), "Slayer Tower"),
BASILISK(1616, 40, 75, 2, "Fremennik Slayer Dungeon"), BASILISK(1616, 40, 75, 2, "Fremennik Slayer Dungeon"),
BAT(412, 1, 8, 1, "Road to Paterdomus"), BAT(412, 1, 8, 1, "Road to Paterdomus"),
BLACK_DEMON(84, 1, 157, 3, "Taverly Dungeon"), BLACK_DEMON(84, 1, 157, 3, "Taverly Dungeon"),
@@ -74,10 +86,10 @@ public class Slayer {
BLUE_DRAGON(55, 1, 107, 3, "Taverly Dungeon"), BLUE_DRAGON(55, 1, 107, 3, "Taverly Dungeon"),
BRONZE_DRAGON(1590, 1, 125, 3, "Brimhaven Dungeon"), BRONZE_DRAGON(1590, 1, 125, 3, "Brimhaven Dungeon"),
CAVE_CRAWLER(1600, 10, 22, 1, "Fremennik Slayer Dungeon"), CAVE_CRAWLER(1600, 10, 22, 1, "Fremennik Slayer Dungeon"),
COCKATRICE(1620, 25, 37, 2, "Fremennik Slayer Dungeon"), COCKATRICE(1620, 25, 37, 2, "Fremennik Slayer Dungeon"),
CRAWLING_HAND(1648, 5, 16 + r(3), 1 + r(1), "Slayer Tower"), CRAWLING_HAND(1648, 5, 16 + r(3), 1 + r(1), "Slayer Tower"),
DAGANNOTH_74(1338, 1, 70 + r(50), 3, "Lighthouse Basement"), DAGANNOTH_74(1338, 1, 70 + r(50), 3, "Lighthouse Basement"),
DAGANNOTH_92(1342, 1, 70 + r(50), 3, "Lighthouse Basement"), DAGANNOTH_92(1342, 1, 80 + r(50), 3, "Lighthouse Basement"),
DARK_BEAST(2783, 90, 180, 4, "Slayer Tower"), DARK_BEAST(2783, 90, 180, 4, "Slayer Tower"),
DUST_DEVIL(1624, 65, 105, 2, "Slayer Tower"), DUST_DEVIL(1624, 65, 105, 2, "Slayer Tower"),
EARTH_WARRIOR(124, 1, 54, 2, "Edgeville Dungeon"), EARTH_WARRIOR(124, 1, 54, 2, "Edgeville Dungeon"),
@@ -92,7 +104,7 @@ public class Slayer {
ICE_WARRIOR(125, 1, 59, 2, "Asgarnian Ice Caves or the Wilderness"), ICE_WARRIOR(125, 1, 59, 2, "Asgarnian Ice Caves or the Wilderness"),
SKELETAL_WYVERN(3068, 72, 210, 4, "Asgarnian Ice Caves"), SKELETAL_WYVERN(3068, 72, 210, 4, "Asgarnian Ice Caves"),
INFERNAL_MAGE(1643, 45, 60, 2, "Slayer Tower"), INFERNAL_MAGE(1643, 45, 60, 2, "Slayer Tower"),
IRON_DRAGON(1591, 1, (int) 173.2, 4, "Brimhaven Dungeon"), IRON_DRAGON(1591, 1, 174, 4, "Brimhaven Dungeon"),
JELLY(1637, 52, 75, 2, "Fremennik Slayer Dungeon"), JELLY(1637, 52, 75, 2, "Fremennik Slayer Dungeon"),
KALPHITE_WORKER(1156, 1, 40, 1 + r(1), "Kalphite Lair"), KALPHITE_WORKER(1156, 1, 40, 1 + r(1), "Kalphite Lair"),
KALPHITE_SOLDIER(1154, 1, 90, 3, "Kalphite Lair"), KALPHITE_SOLDIER(1154, 1, 90, 3, "Kalphite Lair"),
@@ -103,12 +115,12 @@ public class Slayer {
NECHRYAELS(1613, 80, 1, 3, "Slayer Tower"), NECHRYAELS(1613, 80, 1, 3, "Slayer Tower"),
PYREFIEND(1633, 30, 1, 1, "Fremennik Slayer Dungeon"), PYREFIEND(1633, 30, 1, 1, "Fremennik Slayer Dungeon"),
RED_DRAGON(53, 1, 120, 3, "Brimhaven Dungeon"), RED_DRAGON(53, 1, 120, 3, "Brimhaven Dungeon"),
ROCKSLUG(1622, 20, 27, 1, "Fremennik Slayer Dungeon"), ROCKSLUG(1622, 20, 27, 1, "Fremennik Slayer Dungeon"),
SKELETON(90, 1, 30, 0 + r(2), "Edgeville Dungeon or Taverly Dungeon"), SKELETON(90, 1, 30, 0 + r(2), "Edgeville Dungeon or Taverly Dungeon"),
KARAMAJA_SKELETON(91, 1, 30, 0 + r(2), "Karamaja"), KARAMAJA_SKELETON(91, 1, 30, 0 + r(2), "Karamaja"),
WILDERNESS_SKELETON(92, 1, 30, 0 + r(2), "Wilderness"), WILDERNESS_SKELETON(92, 1, 30, 0 + r(2), "Wilderness"),
STEEL_DRAGON(1592, 1, 221, 4, "Brimhaven Dungeon"), STEEL_DRAGON(1592, 1, 221, 4, "Brimhaven Dungeon"),
GRIZZLY_BEAR(105, 1, 27, 0, "Goblin Village"), BEAR(105, 1, 27, 0, "Goblin Village"),
GREEN_GOBLIN(298, 1, 6, 0, "Goblin Village"), GREEN_GOBLIN(298, 1, 6, 0, "Goblin Village"),
RED_GOBLIN(299, 1, 6, 0, "Goblin Village"), RED_GOBLIN(299, 1, 6, 0, "Goblin Village"),
SCORPION(107, 1, 17, 0, "Goblin Village"), SCORPION(107, 1, 17, 0, "Goblin Village"),
@@ -122,7 +134,7 @@ public class Slayer {
this.exp = exp; this.exp = exp;
this.levelReq = levelReq; this.levelReq = levelReq;
this.location = location; this.location = location;
diff = difficulty; this.diff = difficulty;
} }
public int getNpcId() { public int getNpcId() {
@@ -198,13 +210,11 @@ public class Slayer {
} }
} }
public boolean getMasterRequirment(int id) { public static boolean getMasterRequirment(Client c, int id) {
for (SlayerMasters slayermasters : SlayerMasters.values()) { for (SlayerMasters slayermasters : SlayerMasters.values()) {
if (c.combatLevel < slayermasters.getCombatRequirement() if (c.combatLevel < slayermasters.getCombatRequirement()
&& slayermasters.getId() == id) { && slayermasters.getId() == id) {
c.getActionSender().sendMessage( c.getActionSender().sendMessage("You need " + slayermasters.getCombatRequirement() + " combat to use this slayer master.");
"You need " + slayermasters.getCombatRequirement()
+ " combat to use this slayer master.");
return false; return false;
} }
} }
@@ -309,8 +319,7 @@ public class Slayer {
public void generateTask() { public void generateTask() {
if (hasTask() && !c.needsNewTask) { if (hasTask() && !c.needsNewTask) {
c.getDialogueHandler().sendDialogues(1226, c.npcType);// already have c.getDialogueHandler().sendDialogues(1226, c.npcType);// already have task
// task
return; return;
} }
if (hasTask() && c.needsNewTask) {// assigning new task if (hasTask() && c.needsNewTask) {// assigning new task
@@ -331,7 +340,7 @@ public class Slayer {
*/ */
} }
} }
int taskLevel = getSlayerDifficulty(); int taskLevel = getSlayerDifficulty(c);
// System.out.println("EASY :" + easyTask + "\nMEDIUM: " + mediumTask+ // System.out.println("EASY :" + easyTask + "\nMEDIUM: " + mediumTask+
// "\nHARD: " + hardTask + ""); // "\nHARD: " + hardTask + "");
for (Task slayerTask : Task.values()) { for (Task slayerTask : Task.values()) {
@@ -342,8 +351,7 @@ public class Slayer {
int task = getRandomTask(taskLevel); int task = getRandomTask(taskLevel);
for (int removedTask : c.removedTasks) { for (int removedTask : c.removedTasks) {
if (task == removedTask) { if (task == removedTask) {
c.getActionSender().sendMessage( c.getActionSender().sendMessage("Unavailable task: " + task);
"Unavailable task: " + task);
generateTask(); generateTask();
return; return;
} }
@@ -354,8 +362,7 @@ public class Slayer {
int task = getRandomTask(getDifficulty(taskLevel - 1)); int task = getRandomTask(getDifficulty(taskLevel - 1));
for (int removedTask : c.removedTasks) { for (int removedTask : c.removedTasks) {
if (task == removedTask) { if (task == removedTask) {
c.getActionSender().sendMessage( c.getActionSender().sendMessage("Unavailable task: " + task);
"Unavailable task: " + task);
generateTask(); generateTask();
return; return;
} }
@@ -364,12 +371,8 @@ public class Slayer {
c.taskAmount = getTaskAmount(getDifficulty(c.slayerTask) - 1); c.taskAmount = getTaskAmount(getDifficulty(c.slayerTask) - 1);
c.needsNewTask = false; c.needsNewTask = false;
} }
c.getDialogueHandler().sendDialogues(1237, c.npcType);// assign c.getDialogueHandler().sendDialogues(1237, c.npcType);// assign task
// task c.getActionSender().sendMessage("You have been assigned " + c.taskAmount + " " + getTaskName(c.slayerTask) + ", good luck " + c.playerName + ".");
c.getActionSender().sendMessage(
"You have been assigned " + c.taskAmount + " "
+ getTaskName(c.slayerTask)
+ ", good luck " + c.playerName + ".");
return; return;
} }
} }
@@ -392,18 +395,11 @@ public class Slayer {
return EASY_AMOUNT; return EASY_AMOUNT;
} }
public int getSlayerDifficulty() { public int getSlayerDifficulty(Client c) {
if (c.combatLevel > 0 && c.combatLevel < 20) { for(SlayerMasters master : SlayerMasters.values()){
return VERY_EASY_TASK; if (master.getId() == c.SlayerMaster)
} else if (c.combatLevel >= 20 && c.combatLevel < 40) { return master.getDifficulty();
return EASY_TASK; }
} else if (c.combatLevel >= 40 && c.combatLevel < 70) {
return MEDIUM_TASK;
} else if (c.combatLevel >= 70 && c.combatLevel < 100) {
return HARD_TASK;
} else if (c.combatLevel >= 100) {
return VERY_HARD_TASK;
}
return EASY_TASK; return EASY_TASK;
} }
@@ -424,16 +420,13 @@ public class Slayer {
public void handleInterface(String shop) { public void handleInterface(String shop) {
if (shop.equalsIgnoreCase("buy")) { if (shop.equalsIgnoreCase("buy")) {
c.getPlayerAssistant().sendFrame126( c.getPlayerAssistant().sendFrame126("Slayer Points: " + c.slayerPoints, 41011);
"Slayer Points: " + c.slayerPoints, 41011);
c.getPlayerAssistant().showInterface(41000); c.getPlayerAssistant().showInterface(41000);
} else if (shop.equalsIgnoreCase("learn")) { } else if (shop.equalsIgnoreCase("learn")) {
c.getPlayerAssistant().sendFrame126( c.getPlayerAssistant().sendFrame126("Slayer Points: " + c.slayerPoints, 41511);
"Slayer Points: " + c.slayerPoints, 41511);
c.getPlayerAssistant().showInterface(41500); c.getPlayerAssistant().showInterface(41500);
} else if (shop.equalsIgnoreCase("assignment")) { } else if (shop.equalsIgnoreCase("assignment")) {
c.getPlayerAssistant().sendFrame126( c.getPlayerAssistant().sendFrame126("Slayer Points: " + c.slayerPoints, 42011);
"Slayer Points: " + c.slayerPoints, 42011);
updateCurrentlyRemoved(); updateCurrentlyRemoved();
c.getPlayerAssistant().showInterface(42000); c.getPlayerAssistant().showInterface(42000);
} }
@@ -441,24 +434,18 @@ public class Slayer {
public void cancelTask() { public void cancelTask() {
if (!hasTask()) { if (!hasTask()) {
c.getActionSender().sendMessage( c.getActionSender().sendMessage("You must have a task to cancel first.");
"You must have a task to cancel first.");
return; return;
} }
if (c.slayerPoints < 30) { if (c.slayerPoints < 30) {
c.getActionSender() c.getActionSender().sendMessage("This requires atleast 30 slayer points, which you don't have.");
.sendMessage( c.getDialogueHandler().sendNpcChat1("This requires atleast 30 slayer points, which you don't have.",
"This requires atleast 30 slayer points, which you don't have."); c.npcType,
c.getDialogueHandler() NpcHandler.getNpcListName(c.talkingNpc));
.sendNpcChat1(
"This requires atleast 30 slayer points, which you don't have.",
c.npcType, NpcHandler.getNpcListName(c.talkingNpc));
c.nextChat = 0; c.nextChat = 0;
return; return;
} }
c.getActionSender().sendMessage( c.getActionSender().sendMessage("You have cancelled your current task of " + c.taskAmount + " " + getTaskName(c.slayerTask) + ".");
"You have cancelled your current task of " + c.taskAmount + " "
+ getTaskName(c.slayerTask) + ".");
c.slayerTask = -1; c.slayerTask = -1;
c.taskAmount = 0; c.taskAmount = 0;
c.slayerPoints -= 30; c.slayerPoints -= 30;
@@ -467,18 +454,14 @@ public class Slayer {
public void removeTask() { public void removeTask() {
int counter = 0; int counter = 0;
if (!hasTask()) { if (!hasTask()) {
c.getActionSender().sendMessage( c.getActionSender().sendMessage("You must have a task to remove first.");
"You must have a task to remove first.");
return; return;
} }
if (c.slayerPoints < 100) { if (c.slayerPoints < 100) {
c.getActionSender() c.getActionSender().sendMessage("This requires atleast 100 slayer points, which you don't have.");
.sendMessage( c.getDialogueHandler().sendNpcChat1("This requires atleast 100 slayer points, which you don't have.",
"This requires atleast 100 slayer points, which you don't have."); c.npcType,
c.getDialogueHandler() NpcHandler.getNpcListName(c.talkingNpc));
.sendNpcChat1(
"This requires atleast 100 slayer points, which you don't have.",
c.npcType, NpcHandler.getNpcListName(c.talkingNpc));
c.nextChat = 0; c.nextChat = 0;
return; return;
} }
@@ -487,8 +470,7 @@ public class Slayer {
counter++; counter++;
} }
if (counter == 4) { if (counter == 4) {
c.getActionSender().sendMessage( c.getActionSender().sendMessage("You don't have any open slots left to remove tasks.");
"You don't have any open slots left to remove tasks.");
return; return;
} }
if (c.removedTasks[i] == -1) { if (c.removedTasks[i] == -1) {
@@ -496,9 +478,7 @@ public class Slayer {
c.slayerPoints -= 100; c.slayerPoints -= 100;
c.slayerTask = -1; c.slayerTask = -1;
c.taskAmount = 0; c.taskAmount = 0;
c.getActionSender() c.getActionSender().sendMessage("Your current slayer task has been removed, you can't obtain this task again.");
.sendMessage(
"Your current slayer task has been removed, you can't obtain this task again.");
updateCurrentlyRemoved(); updateCurrentlyRemoved();
return; return;
} }
@@ -506,12 +486,9 @@ public class Slayer {
} }
public void updatePoints() { public void updatePoints() {
c.getPlayerAssistant().sendFrame126("Slayer Points: " + c.slayerPoints, c.getPlayerAssistant().sendFrame126("Slayer Points: " + c.slayerPoints, 41011);
41011); c.getPlayerAssistant().sendFrame126("Slayer Points: " + c.slayerPoints, 41511);
c.getPlayerAssistant().sendFrame126("Slayer Points: " + c.slayerPoints, c.getPlayerAssistant().sendFrame126("Slayer Points: " + c.slayerPoints, 42011);
41511);
c.getPlayerAssistant().sendFrame126("Slayer Points: " + c.slayerPoints,
42011);
} }
public void updateCurrentlyRemoved() { public void updateCurrentlyRemoved() {
@@ -531,17 +508,13 @@ public class Slayer {
return; return;
} }
if (c.slayerPoints < 50) { if (c.slayerPoints < 50) {
c.getActionSender() c.getActionSender().sendMessage( "You need at least 50 slayer points to gain 32,500 Experience.");
.sendMessage(
"You need at least 50 slayer points to gain 32,500 Experience.");
return; return;
} }
c.buySlayerTimer = System.currentTimeMillis(); c.buySlayerTimer = System.currentTimeMillis();
c.slayerPoints -= 50; c.slayerPoints -= 50;
c.getPlayerAssistant().addSkillXP(16250, 18); c.getPlayerAssistant().addSkillXP(32500, 18);
c.getActionSender() c.getActionSender().sendMessage("You spend 50 slayer points and gain 32,500 experience in slayer.");
.sendMessage(
"You spend 50 slayer points and gain 16,250 experience in slayer.");
updatePoints(); updatePoints();
} }
@@ -550,23 +523,19 @@ public class Slayer {
return; return;
} }
if (c.slayerPoints < 35) { if (c.slayerPoints < 35) {
c.getActionSender().sendMessage( c.getActionSender().sendMessage("You need at least 35 slayer points to buy Slayer darts.");
"You need at least 35 slayer points to buy Slayer darts.");
return; return;
} }
if (c.getItemAssistant().freeSlots() < 2 if (c.getItemAssistant().freeSlots() < 2
&& !c.getItemAssistant().playerHasItem(560) && !c.getItemAssistant().playerHasItem(560)
&& !c.getItemAssistant().playerHasItem(558)) { && !c.getItemAssistant().playerHasItem(558)) {
c.getActionSender().sendMessage( c.getActionSender().sendMessage("You need at least 2 free lots to purchase this.");
"You need at least 2 free lots to purchase this.");
return; return;
} }
c.buySlayerTimer = System.currentTimeMillis(); c.buySlayerTimer = System.currentTimeMillis();
c.slayerPoints -= 35; c.slayerPoints -= 35;
c.getActionSender() c.getActionSender().sendMessage("You spend 35 slayer points and aquire 250 casts of Slayer darts.");
.sendMessage(
"You spend 35 slayer points and aquire 250 casts of Slayer darts.");
c.getItemAssistant().addItem(558, 1000); c.getItemAssistant().addItem(558, 1000);
c.getItemAssistant().addItem(560, 250); c.getItemAssistant().addItem(560, 250);
updatePoints(); updatePoints();
@@ -577,20 +546,17 @@ public class Slayer {
return; return;
} }
if (c.slayerPoints < 25) { if (c.slayerPoints < 25) {
c.getActionSender().sendMessage( c.getActionSender().sendMessage("You need at least 25 slayer points to buy Broad arrows.");
"You need at least 25 slayer points to buy Broad arrows.");
return; return;
} }
if (c.getItemAssistant().freeSlots() < 1 if (c.getItemAssistant().freeSlots() < 1
&& !c.getItemAssistant().playerHasItem(4160)) { && !c.getItemAssistant().playerHasItem(4160)) {
c.getActionSender().sendMessage( c.getActionSender().sendMessage("You need at least 1 free lot to purchase this.");
"You need at least 1 free lot to purchase this.");
return; return;
} }
c.buySlayerTimer = System.currentTimeMillis(); c.buySlayerTimer = System.currentTimeMillis();
c.slayerPoints -= 25; c.slayerPoints -= 25;
c.getActionSender().sendMessage( c.getActionSender().sendMessage("You spend 35 slayer points and aquire 250 Broad arrows.");
"You spend 35 slayer points and aquire 250 Broad arrows.");
c.getItemAssistant().addItem(4160, 250); c.getItemAssistant().addItem(4160, 250);
updatePoints(); updatePoints();
} }
@@ -600,16 +566,12 @@ public class Slayer {
return; return;
} }
if (c.slayerPoints < 25) { if (c.slayerPoints < 25) {
c.getActionSender() c.getActionSender().sendMessage("You need at least 25 slayer points to buy Slayer's respite.");
.sendMessage(
"You need at least 25 slayer points to buy Slayer's respite.");
return; return;
} }
c.buySlayerTimer = System.currentTimeMillis(); c.buySlayerTimer = System.currentTimeMillis();
c.slayerPoints -= 25; c.slayerPoints -= 25;
c.getActionSender() c.getActionSender().sendMessage("You spend 25 slayer points and aquire a useful Slayer's respite.");
.sendMessage(
"You spend 25 slayer points and aquire a useful Slayer's respite.");
c.getItemAssistant().addItem(5841, 1); c.getItemAssistant().addItem(5841, 1);
updatePoints(); updatePoints();
} }
@@ -6,6 +6,7 @@ import redone.game.content.quests.QuestRewards;
import redone.game.content.randomevents.FreakyForester; import redone.game.content.randomevents.FreakyForester;
import redone.game.content.randomevents.RandomEventHandler; import redone.game.content.randomevents.RandomEventHandler;
import redone.game.content.skills.SkillHandler; import redone.game.content.skills.SkillHandler;
import redone.game.content.skills.slayer.Slayer;
import redone.game.content.traveling.Sailing; import redone.game.content.traveling.Sailing;
import redone.game.globalworldobjects.PassDoor; import redone.game.globalworldobjects.PassDoor;
import redone.game.items.ItemAssistant; import redone.game.items.ItemAssistant;
@@ -4221,6 +4222,7 @@ public class DialogueHandler {
sendNpcChat1("Hummph.", player.talkingNpc, "Saniboch"); sendNpcChat1("Hummph.", player.talkingNpc, "Saniboch");
player.nextChat = 0; player.nextChat = 0;
break; break;
// Slayer masters
case 1226: case 1226:
sendNpcChat2("You already have a slayer task", sendNpcChat2("You already have a slayer task",
"please finish it talk to me again.", player.talkingNpc, "please finish it talk to me again.", player.talkingNpc,
@@ -4235,10 +4237,13 @@ public class DialogueHandler {
player.nextChat = 0; player.nextChat = 0;
break; break;
case 1228: case 1228:
sendNpcChat1("'Ello and what are you after then?", if (!Slayer.getMasterRequirment(player, player.talkingNpc)) {
player.talkingNpc, sendNpcChat1("Increase your combat level then come back.", player.talkingNpc, NpcHandler.getNpcListName(player.talkingNpc));
NpcHandler.getNpcListName(player.talkingNpc)); player.nextChat = 0;
player.nextChat = 1229; } else {
sendNpcChat1("'Ello and what are you after then?", player.talkingNpc, NpcHandler.getNpcListName(player.talkingNpc));
player.nextChat = 1229;
}
break; break;
case 1229: case 1229:
sendOption4("I need another assignement.", sendOption4("I need another assignement.",
@@ -4267,14 +4272,11 @@ public class DialogueHandler {
break; break;
case 1235: case 1235:
if (player.getSlayer().hasTask()) { if (player.getSlayer().hasTask()) {
sendNpcChat1("Your Slayer Task is located at " sendNpcChat1("Your Slayer Task is located at " + player.getSlayer().getLocation(player.slayerTask) + ".", player.talkingNpc, NpcHandler.getNpcListName(player.talkingNpc));
+ player.getSlayer().getLocation(player.slayerTask)
+ ".", player.talkingNpc,
NpcHandler.getNpcListName(player.talkingNpc));
player.nextChat = 0; player.nextChat = 0;
} else { } else {
sendNpcChat2("You don't have a slayer task", sendNpcChat2("You don't have a slayer task",
"if you wish to get one talk to a slayer mask.", "if you wish to get one talk to a slayer master.",
player.talkingNpc, player.talkingNpc,
NpcHandler.getNpcListName(player.talkingNpc)); NpcHandler.getNpcListName(player.talkingNpc));
player.nextChat = 0; player.nextChat = 0;
@@ -4285,9 +4287,9 @@ public class DialogueHandler {
player.nextChat = 0; player.nextChat = 0;
break; break;
case 1237: case 1237:
sendNpcChat2("You have been assigned " + player.taskAmount + " " sendNpcChat2("You have been assigned " + player.taskAmount + " " + player.getSlayer().getTaskName(player.slayerTask) + ",",
+ player.getSlayer().getTaskName(player.slayerTask) + ",", "Good luck " + player.playerName + ".",
"Good luck " + player.playerName + ".", player.talkingNpc, player.talkingNpc,
NpcHandler.getNpcListName(player.talkingNpc)); NpcHandler.getNpcListName(player.talkingNpc));
player.nextChat = 0; player.nextChat = 0;
break; break;