Updated dependencies, removed EpicBoss support

Build is stable with CB 1.7.2
This commit is contained in:
Blackvein 2013-12-24 15:57:06 -08:00
parent aad9022ad9
commit 07f436018b
15 changed files with 213 additions and 654 deletions

Binary file not shown.

BIN
lib/EpicBossRecoded.jar Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
lib/rpgitems2.jar Normal file

Binary file not shown.

19
pom.xml
View File

@ -30,14 +30,14 @@
<dependency> <dependency>
<groupId>net.citizensnpcs</groupId> <groupId>net.citizensnpcs</groupId>
<artifactId>citizens</artifactId> <artifactId>citizens</artifactId>
<version>2.0.9-SNAPSHOT</version> <version>2.0.11</version>
<scope>system</scope> <scope>system</scope>
<systemPath>${project.basedir}/lib/citizensapi-2.0.11-SNAPSHOT.jar</systemPath> <systemPath>${project.basedir}/lib/citizensapi-2.0.11-SNAPSHOT.jar</systemPath>
</dependency> </dependency>
<dependency> <dependency>
<groupId>net.aufdemrand</groupId> <groupId>net.aufdemrand</groupId>
<artifactId>denizen</artifactId> <artifactId>denizen</artifactId>
<version>0.9.2-SNAPSHOT</version> <version>0.9.3-SNAPSHOT</version>
<scope>system</scope> <scope>system</scope>
<systemPath>${project.basedir}/lib/denizen-0.9.3-SNAPSHOT.jar</systemPath> <systemPath>${project.basedir}/lib/denizen-0.9.3-SNAPSHOT.jar</systemPath>
</dependency> </dependency>
@ -57,17 +57,10 @@
</dependency> </dependency>
<dependency> <dependency>
<groupId>think.rpgitems</groupId> <groupId>think.rpgitems</groupId>
<artifactId>RPGItems</artifactId> <artifactId>RPGItems2</artifactId>
<version>3.3</version> <version>3.0.4</version>
<scope>system</scope> <scope>system</scope>
<systemPath>${project.basedir}/lib/rpgitems.jar</systemPath> <systemPath>${project.basedir}/lib/rpgitems2.jar</systemPath>
</dependency>
<dependency>
<groupId>me.ThaH3lper</groupId>
<artifactId>EpicBossGoldEdition</artifactId>
<version>0.0.6</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/EpicBossGoldEdition.jar</systemPath>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.herocraftonline</groupId> <groupId>com.herocraftonline</groupId>
@ -84,7 +77,7 @@
<systemPath>${project.basedir}/lib/PhatLoots.jar</systemPath> <systemPath>${project.basedir}/lib/PhatLoots.jar</systemPath>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.sk89q.worldguard</groupId> <groupId>com.sk89q.worldedit</groupId>
<artifactId>WorldEdit</artifactId> <artifactId>WorldEdit</artifactId>
<version>5.5.8</version> <version>5.5.8</version>
<scope>system</scope> <scope>system</scope>

View File

@ -12,6 +12,7 @@ import java.util.Map.Entry;
import me.blackvein.quests.prompts.ItemStackPrompt; import me.blackvein.quests.prompts.ItemStackPrompt;
import me.blackvein.quests.util.CK; import me.blackvein.quests.util.CK;
import static me.blackvein.quests.util.ColorUtil.PURPLE;
import me.blackvein.quests.util.ItemUtil; import me.blackvein.quests.util.ItemUtil;
import me.blackvein.quests.util.Lang; import me.blackvein.quests.util.Lang;
import me.blackvein.quests.util.QuestMob; import me.blackvein.quests.util.QuestMob;
@ -218,7 +219,7 @@ public class EventFactory implements ConversationAbandonedListener, ColorUtil{
context.setSessionData(CK.E_CLEAR_INVENTORY, "Yes"); context.setSessionData(CK.E_CLEAR_INVENTORY, "Yes");
else else
context.setSessionData(CK.E_CLEAR_INVENTORY, "No"); context.setSessionData(CK.E_CLEAR_INVENTORY, "No");
if (event.failQuest == true) if (event.failQuest == true)
context.setSessionData(CK.E_FAIL_QUEST, "Yes"); context.setSessionData(CK.E_FAIL_QUEST, "Yes");
else else
@ -512,7 +513,7 @@ public class EventFactory implements ConversationAbandonedListener, ColorUtil{
if (context.getSessionData(CK.E_CLEAR_INVENTORY) == null) { if (context.getSessionData(CK.E_CLEAR_INVENTORY) == null) {
context.setSessionData(CK.E_CLEAR_INVENTORY, "No"); context.setSessionData(CK.E_CLEAR_INVENTORY, "No");
} }
if (context.getSessionData(CK.E_FAIL_QUEST) == null) { if (context.getSessionData(CK.E_FAIL_QUEST) == null) {
context.setSessionData(CK.E_FAIL_QUEST, "No"); context.setSessionData(CK.E_FAIL_QUEST, "No");
} }
@ -696,9 +697,9 @@ public class EventFactory implements ConversationAbandonedListener, ColorUtil{
} }
return new CreateMenuPrompt(); return new CreateMenuPrompt();
} else if (input.equalsIgnoreCase("4")) { } else if (input.equalsIgnoreCase("4")) {
String s = (String) context.getSessionData(CK.E_FAIL_QUEST); String s = (String) context.getSessionData(CK.E_FAIL_QUEST);
if (s.equalsIgnoreCase("Yes")) { if (s.equalsIgnoreCase("Yes")) {
context.setSessionData(CK.E_FAIL_QUEST, "No"); context.setSessionData(CK.E_FAIL_QUEST, "No");
@ -989,7 +990,7 @@ public class EventFactory implements ConversationAbandonedListener, ColorUtil{
if(s.equalsIgnoreCase("Yes")) if(s.equalsIgnoreCase("Yes"))
section.set("clear-inventory", true); section.set("clear-inventory", true);
} }
if (context.getSessionData(CK.E_FAIL_QUEST) != null) { if (context.getSessionData(CK.E_FAIL_QUEST) != null) {
String s = getCString(context, CK.E_FAIL_QUEST); String s = getCString(context, CK.E_FAIL_QUEST);
if (s.equalsIgnoreCase("Yes")) if (s.equalsIgnoreCase("Yes"))
@ -2172,6 +2173,7 @@ public class EventFactory implements ConversationAbandonedListener, ColorUtil{
mobs += PURPLE + "EnderDragon, "; mobs += PURPLE + "EnderDragon, ";
mobs += PURPLE + "Ghast, "; mobs += PURPLE + "Ghast, ";
mobs += PURPLE + "Giant, "; mobs += PURPLE + "Giant, ";
mobs += PURPLE + "Horse, ";
mobs += PURPLE + "IronGolem, "; mobs += PURPLE + "IronGolem, ";
mobs += PURPLE + "MagmaCube, "; mobs += PURPLE + "MagmaCube, ";
mobs += PURPLE + "MushroomCow, "; mobs += PURPLE + "MushroomCow, ";
@ -2332,7 +2334,7 @@ public class EventFactory implements ConversationAbandonedListener, ColorUtil{
@Override @Override
public Prompt acceptInput(ConversationContext context, String input) { public Prompt acceptInput(ConversationContext context, String input) {
float chance; float chance;
if (input.equalsIgnoreCase(Lang.get("cmdCancel"))) { if (input.equalsIgnoreCase(Lang.get("cmdCancel"))) {

View File

@ -1,8 +1,6 @@
package me.blackvein.quests; package me.blackvein.quests;
import java.io.File; import java.io.File;
import me.ThaH3lper.com.Mobs.EpicMobs;
import me.ThaH3lper.com.Mobs.MobCommon;
import net.citizensnpcs.api.CitizensAPI; import net.citizensnpcs.api.CitizensAPI;
import org.bukkit.ChatColor; import org.bukkit.ChatColor;
import org.bukkit.Location; import org.bukkit.Location;
@ -443,11 +441,6 @@ public class PlayerListener implements Listener {
quester.killMob(evt.getEntity().getLocation(), evt.getEntity().getType()); quester.killMob(evt.getEntity().getLocation(), evt.getEntity().getType());
} }
if(quester.hasObjective("killBoss") && Quests.epicBoss.allMobs.contains(evt.getEntity().getUniqueId())) {
EpicMobs em = MobCommon.getEpicMob(evt.getEntity());
quester.killBoss(em.cmdName);
}
} }
} }
@ -469,11 +462,6 @@ public class PlayerListener implements Listener {
quester.killMob(evt.getEntity().getLocation(), evt.getEntity().getType()); quester.killMob(evt.getEntity().getLocation(), evt.getEntity().getType());
} }
if(quester.hasObjective("killBoss") && Quests.epicBoss.allMobs.contains(evt.getEntity().getUniqueId())) {
EpicMobs em = MobCommon.getEpicMob(evt.getEntity());
quester.killBoss(em.cmdName);
}
} }
} }

View File

@ -1,7 +1,6 @@
package me.blackvein.quests; package me.blackvein.quests;
import com.sk89q.worldguard.protection.managers.RegionManager; import com.sk89q.worldguard.protection.managers.RegionManager;
import com.sk89q.worldguard.protection.regions.ProtectedRegion;
import me.blackvein.quests.util.ColorUtil; import me.blackvein.quests.util.ColorUtil;
@ -219,9 +218,9 @@ public class QuestFactory implements ConversationAbandonedListener, ColorUtil {
} }
} }
if(Quests.worldGuard != null){ if(Quests.worldGuard != null){
if (context.getSessionData(CK.Q_REGION) == null){ if (context.getSessionData(CK.Q_REGION) == null){
if (quests.citizens != null) { if (quests.citizens != null) {
@ -241,15 +240,15 @@ public class QuestFactory implements ConversationAbandonedListener, ColorUtil {
} }
} }
}else { }else {
if (quests.citizens != null) { if (quests.citizens != null) {
text += GRAY + "7 - Set Region (WorldGuard not installed)\n"; text += GRAY + "7 - Set Region (WorldGuard not installed)\n";
} else { } else {
text += GRAY + "6 - Set Region (WorldGuard not installed)\n"; text += GRAY + "6 - Set Region (WorldGuard not installed)\n";
} }
} }
if (context.getSessionData(CK.Q_INITIAL_EVENT) == null) { if (context.getSessionData(CK.Q_INITIAL_EVENT) == null) {
@ -396,13 +395,13 @@ public class QuestFactory implements ConversationAbandonedListener, ColorUtil {
} }
} else if (input.equalsIgnoreCase("13")) { } else if (input.equalsIgnoreCase("13")) {
if (quests.citizens != null) { if (quests.citizens != null) {
return new ExitPrompt(); return new ExitPrompt();
}else{ }else{
return new CreateMenuPrompt(); return new CreateMenuPrompt();
} }
} }
return null; return null;
@ -766,7 +765,7 @@ public class QuestFactory implements ConversationAbandonedListener, ColorUtil {
} }
} }
private class RegionPrompt extends StringPrompt { private class RegionPrompt extends StringPrompt {
@Override @Override
@ -774,19 +773,19 @@ public class QuestFactory implements ConversationAbandonedListener, ColorUtil {
String text = DARKGREEN + "- Quest Region -\n"; String text = DARKGREEN + "- Quest Region -\n";
boolean any = false; boolean any = false;
for(World world : quests.getServer().getWorlds()){ for(World world : quests.getServer().getWorlds()){
RegionManager rm = Quests.worldGuard.getRegionManager(world); RegionManager rm = Quests.worldGuard.getRegionManager(world);
for(String region : rm.getRegions().keySet()){ for(String region : rm.getRegions().keySet()){
any = true; any = true;
text += GREEN + region + ", "; text += GREEN + region + ", ";
} }
} }
if(any) { if(any) {
text = text.substring(0, text.length() - 2); text = text.substring(0, text.length() - 2);
text += "\n\n"; text += "\n\n";
@ -807,9 +806,9 @@ public class QuestFactory implements ConversationAbandonedListener, ColorUtil {
String found = null; String found = null;
boolean done = false; boolean done = false;
for(World world : quests.getServer().getWorlds()){ for(World world : quests.getServer().getWorlds()){
RegionManager rm = Quests.worldGuard.getRegionManager(world); RegionManager rm = Quests.worldGuard.getRegionManager(world);
for(String region : rm.getRegions().keySet()){ for(String region : rm.getRegions().keySet()){
@ -867,14 +866,14 @@ public class QuestFactory implements ConversationAbandonedListener, ColorUtil {
} catch (NumberFormatException e) { } catch (NumberFormatException e) {
delay = MiscUtil.getTimeFromString(input); delay = MiscUtil.getTimeFromString(input);
} }
if (delay < -1) { if (delay < -1) {
context.getForWhom().sendRawMessage(ChatColor.RED + Lang.get("questEditorPositiveAmount")); context.getForWhom().sendRawMessage(ChatColor.RED + Lang.get("questEditorPositiveAmount"));
} else if (delay == 0) { } else if (delay == 0) {
context.setSessionData(CK.Q_REDO_DELAY, null); context.setSessionData(CK.Q_REDO_DELAY, null);
} else if (delay != -1) { } else if (delay != -1) {
context.setSessionData(CK.Q_REDO_DELAY, delay); context.setSessionData(CK.Q_REDO_DELAY, delay);
} }
return new CreateMenuPrompt(); return new CreateMenuPrompt();
@ -1095,7 +1094,7 @@ public class QuestFactory implements ConversationAbandonedListener, ColorUtil {
if (cc.getSessionData(CK.Q_INITIAL_EVENT) != null) { if (cc.getSessionData(CK.Q_INITIAL_EVENT) != null) {
initialEvent = (String) cc.getSessionData(CK.Q_INITIAL_EVENT); initialEvent = (String) cc.getSessionData(CK.Q_INITIAL_EVENT);
} }
if (cc.getSessionData(CK.Q_REGION) != null) { if (cc.getSessionData(CK.Q_REGION) != null) {
region = (String) cc.getSessionData(CK.Q_REGION); region = (String) cc.getSessionData(CK.Q_REGION);
} }
@ -1147,7 +1146,7 @@ public class QuestFactory implements ConversationAbandonedListener, ColorUtil {
heroesClassRews = (LinkedList<String>) cc.getSessionData(CK.REW_HEROES_CLASSES); heroesClassRews = (LinkedList<String>) cc.getSessionData(CK.REW_HEROES_CLASSES);
heroesExpRews = (LinkedList<Double>) cc.getSessionData(CK.REW_HEROES_AMOUNTS); heroesExpRews = (LinkedList<Double>) cc.getSessionData(CK.REW_HEROES_AMOUNTS);
} }
if (cc.getSessionData(CK.REW_PHAT_LOOTS) != null) { if (cc.getSessionData(CK.REW_PHAT_LOOTS) != null) {
phatLootRews = (LinkedList<String>) cc.getSessionData(CK.REW_PHAT_LOOTS); phatLootRews = (LinkedList<String>) cc.getSessionData(CK.REW_PHAT_LOOTS);
} }
@ -1226,9 +1225,6 @@ public class QuestFactory implements ConversationAbandonedListener, ColorUtil {
LinkedList<Integer> npcKillIds; LinkedList<Integer> npcKillIds;
LinkedList<Integer> npcKillAmounts; LinkedList<Integer> npcKillAmounts;
LinkedList<String> bossIds;
LinkedList<Integer> bossAmounts;
LinkedList<String> mobs; LinkedList<String> mobs;
LinkedList<Integer> mobAmounts; LinkedList<Integer> mobAmounts;
LinkedList<String> mobLocs; LinkedList<String> mobLocs;
@ -1293,9 +1289,6 @@ public class QuestFactory implements ConversationAbandonedListener, ColorUtil {
npcKillIds = null; npcKillIds = null;
npcKillAmounts = null; npcKillAmounts = null;
bossIds = null;
bossAmounts = null;
mobs = null; mobs = null;
mobAmounts = null; mobAmounts = null;
mobLocs = null; mobLocs = null;
@ -1378,11 +1371,6 @@ public class QuestFactory implements ConversationAbandonedListener, ColorUtil {
npcKillAmounts = (LinkedList<Integer>) cc.getSessionData(pref + CK.S_NPCS_TO_KILL_AMOUNTS); npcKillAmounts = (LinkedList<Integer>) cc.getSessionData(pref + CK.S_NPCS_TO_KILL_AMOUNTS);
} }
if (cc.getSessionData(pref + CK.S_BOSS_IDS) != null) {
bossIds = (LinkedList<String>) cc.getSessionData(pref + CK.S_BOSS_IDS);
bossAmounts = (LinkedList<Integer>) cc.getSessionData(pref + CK.S_BOSS_AMOUNTS);
}
if (cc.getSessionData(pref + CK.S_MOB_TYPES) != null) { if (cc.getSessionData(pref + CK.S_MOB_TYPES) != null) {
mobs = (LinkedList<String>) cc.getSessionData(pref + CK.S_MOB_TYPES); mobs = (LinkedList<String>) cc.getSessionData(pref + CK.S_MOB_TYPES);
mobAmounts = (LinkedList<Integer>) cc.getSessionData(pref + CK.S_MOB_AMOUNTS); mobAmounts = (LinkedList<Integer>) cc.getSessionData(pref + CK.S_MOB_AMOUNTS);
@ -1491,8 +1479,6 @@ public class QuestFactory implements ConversationAbandonedListener, ColorUtil {
stage.set("npc-ids-to-talk-to", npcTalkIds); stage.set("npc-ids-to-talk-to", npcTalkIds);
stage.set("npc-ids-to-kill", npcKillIds); stage.set("npc-ids-to-kill", npcKillIds);
stage.set("npc-kill-amounts", npcKillAmounts); stage.set("npc-kill-amounts", npcKillAmounts);
stage.set("boss-ids-to-kill", bossIds);
stage.set("boss-amounts-to-kill", bossAmounts);
stage.set("mobs-to-kill", mobs); stage.set("mobs-to-kill", mobs);
stage.set("mob-amounts", mobAmounts); stage.set("mob-amounts", mobAmounts);
stage.set("locations-to-kill", mobLocs); stage.set("locations-to-kill", mobLocs);
@ -1559,7 +1545,7 @@ public class QuestFactory implements ConversationAbandonedListener, ColorUtil {
if (q.initialEvent != null) { if (q.initialEvent != null) {
cc.setSessionData(CK.Q_INITIAL_EVENT, q.initialEvent.getName()); cc.setSessionData(CK.Q_INITIAL_EVENT, q.initialEvent.getName());
} }
if(q.region != null) { if(q.region != null) {
cc.setSessionData(CK.Q_REGION, q.region); cc.setSessionData(CK.Q_REGION, q.region);
} }
@ -1654,7 +1640,7 @@ public class QuestFactory implements ConversationAbandonedListener, ColorUtil {
cc.setSessionData(CK.REW_HEROES_CLASSES, q.heroesClasses); cc.setSessionData(CK.REW_HEROES_CLASSES, q.heroesClasses);
cc.setSessionData(CK.REW_HEROES_AMOUNTS, q.heroesAmounts); cc.setSessionData(CK.REW_HEROES_AMOUNTS, q.heroesAmounts);
} }
if(q.phatLootRewards.isEmpty() == false) { if(q.phatLootRewards.isEmpty() == false) {
cc.setSessionData(CK.REW_PHAT_LOOTS, q.phatLootRewards); cc.setSessionData(CK.REW_PHAT_LOOTS, q.phatLootRewards);
} }
@ -1824,13 +1810,6 @@ public class QuestFactory implements ConversationAbandonedListener, ColorUtil {
} }
if (stage.bossesToKill.isEmpty() == false) {
cc.setSessionData(pref + CK.S_BOSS_IDS, stage.bossesToKill);
cc.setSessionData(pref + CK.S_BOSS_AMOUNTS, stage.bossAmountsToKill);
}
if (stage.mobsToKill.isEmpty() == false) { if (stage.mobsToKill.isEmpty() == false) {
LinkedList<String> mobs = new LinkedList<String>(); LinkedList<String> mobs = new LinkedList<String>();

View File

@ -58,8 +58,6 @@ public class Quester {
Map<Integer, Boolean> citizensInteracted = new HashMap<Integer, Boolean>(); Map<Integer, Boolean> citizensInteracted = new HashMap<Integer, Boolean>();
LinkedList<Integer> citizensKilled = new LinkedList<Integer>(); LinkedList<Integer> citizensKilled = new LinkedList<Integer>();
LinkedList<Integer> citizenNumKilled = new LinkedList<Integer>(); LinkedList<Integer> citizenNumKilled = new LinkedList<Integer>();
LinkedList<String> bossesKilled = new LinkedList<String>();
LinkedList<Integer> bossAmountsKilled = new LinkedList<Integer>();
LinkedList<Location> locationsReached = new LinkedList<Location>(); LinkedList<Location> locationsReached = new LinkedList<Location>();
LinkedList<Boolean> hasReached = new LinkedList<Boolean>(); LinkedList<Boolean> hasReached = new LinkedList<Boolean>();
LinkedList<Integer> radiiToReachWithin = new LinkedList<Integer>(); LinkedList<Integer> radiiToReachWithin = new LinkedList<Integer>();
@ -427,22 +425,6 @@ public class Quester {
} }
for (String boss : currentStage.bossesToKill) {
String bossName = ChatColor.stripColor(Quests.getBoss(boss).Display);
if (bossAmountsKilled.get(bossesKilled.indexOf(boss)) < currentStage.bossAmountsToKill.get(currentStage.bossesToKill.indexOf(boss))) {
unfinishedObjectives.add(ChatColor.GREEN + "Kill " + ChatColor.ITALIC + bossName + ChatColor.RESET + ChatColor.GREEN + " " + bossAmountsKilled.get(currentStage.bossesToKill.indexOf(boss)) + "/" + currentStage.bossAmountsToKill.get(currentStage.bossesToKill.indexOf(boss)));
} else {
unfinishedObjectives.add(ChatColor.GRAY + "Kill " + ChatColor.ITALIC + bossName + ChatColor.RESET + ChatColor.GRAY + " " + currentStage.bossAmountsToKill.get(currentStage.bossesToKill.indexOf(boss)) + "/" + currentStage.bossAmountsToKill.get(currentStage.bossesToKill.indexOf(boss)));
}
}
for (Entry<EntityType, Integer> e : currentStage.mobsToTame.entrySet()) { for (Entry<EntityType, Integer> e : currentStage.mobsToTame.entrySet()) {
for (Entry<EntityType, Integer> e2 : mobsTamed.entrySet()) { for (Entry<EntityType, Integer> e2 : mobsTamed.entrySet()) {
@ -558,9 +540,6 @@ public class Quester {
} else if (s.equalsIgnoreCase("killNPC")) { } else if (s.equalsIgnoreCase("killNPC")) {
return !currentStage.citizensToKill.isEmpty(); return !currentStage.citizensToKill.isEmpty();
} else if (s.equalsIgnoreCase("killBoss")) {
return !currentStage.bossesToKill.isEmpty();
} else if (s.equalsIgnoreCase("tameMob")) { } else if (s.equalsIgnoreCase("tameMob")) {
return !currentStage.mobsToTame.isEmpty(); return !currentStage.mobsToTame.isEmpty();
@ -586,7 +565,7 @@ public class Quester {
blocksDamaged.put(m, (i + 1)); blocksDamaged.put(m, (i + 1));
if (blocksDamaged.get(m).equals(currentStage.blocksToDamage.get(m))) { if (blocksDamaged.get(m).equals(currentStage.blocksToDamage.get(m))) {
finishObjective("damageBlock", m, null, null, null, null, null, null, null, null); finishObjective("damageBlock", m, null, null, null, null, null, null, null);
} }
} }
@ -604,7 +583,7 @@ public class Quester {
blocksBroken.put(m, (i + 1)); blocksBroken.put(m, (i + 1));
if (blocksBroken.get(m).equals(currentStage.blocksToBreak.get(m))) { if (blocksBroken.get(m).equals(currentStage.blocksToBreak.get(m))) {
finishObjective("breakBlock", m, null, null, null, null, null, null, null, null); finishObjective("breakBlock", m, null, null, null, null, null, null, null);
} }
} }
@ -621,7 +600,7 @@ public class Quester {
blocksPlaced.put(m, (i + 1)); blocksPlaced.put(m, (i + 1));
if (blocksPlaced.get(m).equals(currentStage.blocksToPlace.get(m))) { if (blocksPlaced.get(m).equals(currentStage.blocksToPlace.get(m))) {
finishObjective("placeBlock", m, null, null, null, null, null, null, null, null); finishObjective("placeBlock", m, null, null, null, null, null, null, null);
} }
} }
@ -638,7 +617,7 @@ public class Quester {
blocksUsed.put(m, (i + 1)); blocksUsed.put(m, (i + 1));
if (blocksUsed.get(m).equals(currentStage.blocksToUse.get(m))) { if (blocksUsed.get(m).equals(currentStage.blocksToUse.get(m))) {
finishObjective("useBlock", m, null, null, null, null, null, null, null, null); finishObjective("useBlock", m, null, null, null, null, null, null, null);
} }
} }
@ -656,7 +635,7 @@ public class Quester {
blocksCut.put(m, (i + 1)); blocksCut.put(m, (i + 1));
if (blocksCut.get(m).equals(currentStage.blocksToCut.get(m))) { if (blocksCut.get(m).equals(currentStage.blocksToCut.get(m))) {
finishObjective("cutBlock", m, null, null, null, null, null, null, null, null); finishObjective("cutBlock", m, null, null, null, null, null, null, null);
} }
} }
@ -671,7 +650,7 @@ public class Quester {
fishCaught++; fishCaught++;
if (((Integer) fishCaught).equals(currentStage.fishToCatch)) { if (((Integer) fishCaught).equals(currentStage.fishToCatch)) {
finishObjective("catchFish", null, null, null, null, null, null, null, null, null); finishObjective("catchFish", null, null, null, null, null, null, null, null);
} }
} }
@ -694,7 +673,7 @@ public class Quester {
itemsEnchanted.put(entry.getKey(), num); itemsEnchanted.put(entry.getKey(), num);
if (num.equals(entry2.getValue())) { if (num.equals(entry2.getValue())) {
finishObjective("enchantItem", m, null, e, null, null, null, null, null, null); finishObjective("enchantItem", m, null, e, null, null, null, null, null);
} }
} }
@ -735,7 +714,7 @@ public class Quester {
mobNumKilled.set(index, numKilledInteger); mobNumKilled.set(index, numKilledInteger);
if ((numKilledInteger).equals(currentStage.mobNumToKill.get(index))) { if ((numKilledInteger).equals(currentStage.mobNumToKill.get(index))) {
finishObjective("killMob", null, null, null, e, null, null, null, null, null); finishObjective("killMob", null, null, null, e, null, null, null, null);
} }
} }
@ -753,7 +732,7 @@ public class Quester {
mobNumKilled.set(mobsKilled.indexOf(e), mobNumKilled.get(mobsKilled.indexOf(e)) + 1); mobNumKilled.set(mobsKilled.indexOf(e), mobNumKilled.get(mobsKilled.indexOf(e)) + 1);
if ((mobNumKilled.get(mobsKilled.indexOf(e))).equals(currentStage.mobNumToKill.get(mobsKilled.indexOf(e)))) { if ((mobNumKilled.get(mobsKilled.indexOf(e))).equals(currentStage.mobNumToKill.get(mobsKilled.indexOf(e)))) {
finishObjective("killMob", null, null, null, e, null, null, null, null, null); finishObjective("killMob", null, null, null, e, null, null, null, null);
} }
} }
@ -787,7 +766,7 @@ public class Quester {
playersKilled++; playersKilled++;
if (((Integer) playersKilled).equals(currentStage.playersToKill)) { if (((Integer) playersKilled).equals(currentStage.playersToKill)) {
finishObjective("killPlayer", null, null, null, null, null, null, null, null, null); finishObjective("killPlayer", null, null, null, null, null, null, null, null);
} }
} }
@ -800,7 +779,7 @@ public class Quester {
if (citizensInteracted.get(n.getId()) == false) { if (citizensInteracted.get(n.getId()) == false) {
citizensInteracted.put(n.getId(), true); citizensInteracted.put(n.getId(), true);
finishObjective("talkToNPC", null, null, null, null, null, n, null, null, null); finishObjective("talkToNPC", null, null, null, null, null, n, null, null);
} }
} }
@ -815,7 +794,7 @@ public class Quester {
if (citizenNumKilled.get(index) < currentStage.citizenNumToKill.get(index)) { if (citizenNumKilled.get(index) < currentStage.citizenNumToKill.get(index)) {
citizenNumKilled.set(index, citizenNumKilled.get(index) + 1); citizenNumKilled.set(index, citizenNumKilled.get(index) + 1);
if (citizenNumKilled.get(index) == currentStage.citizenNumToKill.get(index)) { if (citizenNumKilled.get(index) == currentStage.citizenNumToKill.get(index)) {
finishObjective("killNPC", null, null, null, null, null, n, null, null, null); finishObjective("killNPC", null, null, null, null, null, n, null, null);
} }
} }
@ -823,26 +802,6 @@ public class Quester {
} }
public void killBoss(String boss) {
for(String s : bossesKilled){
if (s.equalsIgnoreCase(boss)) {
int index = bossesKilled.indexOf(s);
if (bossAmountsKilled.get(index) < currentStage.bossAmountsToKill.get(index)) {
bossAmountsKilled.set(index, bossAmountsKilled.get(index) + 1);
if (bossAmountsKilled.get(index) == currentStage.bossAmountsToKill.get(index)) {
finishObjective("killBoss", null, null, null, null, null, null, null, null, boss);
}
}
}
}
}
public void reachLocation(Location l) { public void reachLocation(Location l) {
for (Location location : locationsReached) { for (Location location : locationsReached) {
@ -859,7 +818,7 @@ public class Quester {
if (hasReached.get(index) == false) { if (hasReached.get(index) == false) {
hasReached.set(index, true); hasReached.set(index, true);
finishObjective("reachLocation", null, null, null, null, null, null, location, null, null); finishObjective("reachLocation", null, null, null, null, null, null, location, null);
} }
@ -880,7 +839,7 @@ public class Quester {
mobsTamed.put(entity, (mobsTamed.get(entity) + 1)); mobsTamed.put(entity, (mobsTamed.get(entity) + 1));
if (mobsTamed.get(entity).equals(currentStage.mobsToTame.get(entity))) { if (mobsTamed.get(entity).equals(currentStage.mobsToTame.get(entity))) {
finishObjective("tameMob", null, null, null, entity, null, null, null, null, null); finishObjective("tameMob", null, null, null, entity, null, null, null, null);
} }
} }
@ -894,7 +853,7 @@ public class Quester {
sheepSheared.put(color, (sheepSheared.get(color) + 1)); sheepSheared.put(color, (sheepSheared.get(color) + 1));
if (sheepSheared.get(color).equals(currentStage.sheepToShear.get(color))) { if (sheepSheared.get(color).equals(currentStage.sheepToShear.get(color))) {
finishObjective("shearSheep", null, null, null, null, null, null, null, color, null); finishObjective("shearSheep", null, null, null, null, null, null, null, color);
} }
} }
@ -929,14 +888,14 @@ public class Quester {
i.setAmount(i.getAmount() - (req - amount)); //Take away the remaining amount needed to be delivered from the item stack i.setAmount(i.getAmount() - (req - amount)); //Take away the remaining amount needed to be delivered from the item stack
player.getInventory().setItem(index, i); player.getInventory().setItem(index, i);
player.updateInventory(); player.updateInventory();
finishObjective("deliverItem", null, found, null, null, null, null, null, null, null); finishObjective("deliverItem", null, found, null, null, null, null, null, null);
} else if ((i.getAmount() + amount) == req) { } else if ((i.getAmount() + amount) == req) {
itemsDelivered.put(found, req); itemsDelivered.put(found, req);
player.getInventory().setItem(player.getInventory().first(i), null); player.getInventory().setItem(player.getInventory().first(i), null);
player.updateInventory(); player.updateInventory();
finishObjective("deliverItem", null, found, null, null, null, null, null, null, null); finishObjective("deliverItem", null, found, null, null, null, null, null, null);
} else { } else {
@ -954,7 +913,7 @@ public class Quester {
} }
public void finishObjective(String objective, Material material, ItemStack itemstack, Enchantment enchantment, EntityType mob, String player, NPC npc, Location location, DyeColor color, String boss) { public void finishObjective(String objective, Material material, ItemStack itemstack, Enchantment enchantment, EntityType mob, String player, NPC npc, Location location, DyeColor color) {
Player p = plugin.getServer().getPlayerExact(name); Player p = plugin.getServer().getPlayerExact(name);
@ -1074,15 +1033,6 @@ public class Quester {
currentQuest.nextStage(this); currentQuest.nextStage(this);
} }
} else if (objective.equalsIgnoreCase("killBoss")) {
String message = ChatColor.GREEN + "(Completed) Kill " + ChatColor.ITALIC + boss + ChatColor.RESET + ChatColor.GREEN;
message = message + " " + currentStage.bossAmountsToKill.get(currentStage.bossesToKill.indexOf(boss)) + "/" + currentStage.bossAmountsToKill.get(currentStage.bossesToKill.indexOf(boss));
p.sendMessage(message);
if (testComplete()) {
currentQuest.nextStage(this);
}
} else if (objective.equalsIgnoreCase("tameMob")) { } else if (objective.equalsIgnoreCase("tameMob")) {
String message = ChatColor.GREEN + "(Completed) Tame " + getCapitalized(mob.getName()); String message = ChatColor.GREEN + "(Completed) Tame " + getCapitalized(mob.getName());
@ -1221,15 +1171,6 @@ public class Quester {
} }
} }
if (currentStage.bossesToKill.isEmpty() == false) {
for (String s : currentStage.bossesToKill) {
bossesKilled.add(s);
bossAmountsKilled.add(0);
}
}
if (currentStage.blocksToCut.isEmpty() == false) { if (currentStage.blocksToCut.isEmpty() == false) {
for (Material m : currentStage.blocksToCut.keySet()) { for (Material m : currentStage.blocksToCut.keySet()) {
@ -1289,8 +1230,6 @@ public class Quester {
radiiToReachWithin.clear(); radiiToReachWithin.clear();
mobsTamed.clear(); mobsTamed.clear();
sheepSheared.clear(); sheepSheared.clear();
bossesKilled.clear();
bossAmountsKilled.clear();
} }
@ -1811,13 +1750,6 @@ public class Quester {
} }
if (bossesKilled.isEmpty() == false) {
data.set("bosses-killed", bossesKilled);
data.set("boss-amounts-killed", bossAmountsKilled);
}
if (locationsReached.isEmpty() == false) { if (locationsReached.isEmpty() == false) {
LinkedList<String> locations = new LinkedList<String>(); LinkedList<String> locations = new LinkedList<String>();
@ -2325,20 +2257,6 @@ public class Quester {
} }
if (data.contains("bosses-killed")) {
List<String> ids = data.getStringList("bosses-killed");
List<Integer> num = data.getIntegerList("boss-amounts-killed");
for (String s : ids) {
bossesKilled.add(s);
bossAmountsKilled.add(num.get(ids.indexOf(s)));
}
}
if (data.contains("locations-to-reach")) { if (data.contains("locations-to-reach")) {
LinkedList<Location> locations = new LinkedList<Location>(); LinkedList<Location> locations = new LinkedList<Location>();

View File

@ -21,8 +21,6 @@ import java.util.Map.Entry;
import java.util.logging.Level; import java.util.logging.Level;
import java.util.logging.Logger; import java.util.logging.Logger;
import me.ThaH3lper.com.EpicBoss;
import me.ThaH3lper.com.Mobs.EpicMobs;
import me.blackvein.quests.exceptions.InvalidStageException; import me.blackvein.quests.exceptions.InvalidStageException;
import me.blackvein.quests.prompts.QuestAcceptPrompt; import me.blackvein.quests.prompts.QuestAcceptPrompt;
import me.blackvein.quests.util.ColorUtil; import me.blackvein.quests.util.ColorUtil;
@ -94,7 +92,6 @@ public class Quests extends JavaPlugin implements ConversationAbandonedListener,
public static Permission permission = null; public static Permission permission = null;
public static WorldGuardPlugin worldGuard = null; public static WorldGuardPlugin worldGuard = null;
public static mcMMO mcmmo = null; public static mcMMO mcmmo = null;
public static EpicBoss epicBoss = null;
public static Plugin rpgItems = null; public static Plugin rpgItems = null;
public static Heroes heroes = null; public static Heroes heroes = null;
public static PhatLoots phatLoots = null; public static PhatLoots phatLoots = null;
@ -187,10 +184,6 @@ public class Quests extends JavaPlugin implements ConversationAbandonedListener,
rpgItems = (Plugin) getServer().getPluginManager().getPlugin("RPG Items"); rpgItems = (Plugin) getServer().getPluginManager().getPlugin("RPG Items");
} }
if (getServer().getPluginManager().getPlugin("EpicBoss Gold Edition") != null) {
epicBoss = (EpicBoss) getServer().getPluginManager().getPlugin("EpicBoss Gold Edition");
}
if (getServer().getPluginManager().getPlugin("Heroes") != null) { if (getServer().getPluginManager().getPlugin("Heroes") != null) {
heroes = (Heroes) getServer().getPluginManager().getPlugin("Heroes"); heroes = (Heroes) getServer().getPluginManager().getPlugin("Heroes");
} }
@ -1238,9 +1231,9 @@ public class Quests extends JavaPlugin implements ConversationAbandonedListener,
cs.sendMessage(RED + "You do not have access to that command."); cs.sendMessage(RED + "You do not have access to that command.");
} }
} else if (args[0].equalsIgnoreCase("setstage")) { } else if (args[0].equalsIgnoreCase("setstage")) {
if (cs.hasPermission("quests.admin.setstage")) { if (cs.hasPermission("quests.admin.setstage")) {
Player target = null; Player target = null;
@ -1254,11 +1247,11 @@ public class Quests extends JavaPlugin implements ConversationAbandonedListener,
} }
} }
if (target == null) { if (target == null) {
// //
for (Player p : getServer().getOnlinePlayers()) { for (Player p : getServer().getOnlinePlayers()) {
if (p.getName().toLowerCase().contains(args[1].toLowerCase())) { if (p.getName().toLowerCase().contains(args[1].toLowerCase())) {
target = p; target = p;
break; break;
@ -1267,7 +1260,7 @@ public class Quests extends JavaPlugin implements ConversationAbandonedListener,
} }
int stage = -1; int stage = -1;
if (args.length > 2) { if (args.length > 2) {
try { try {
stage = Integer.parseInt(args[2]); stage = Integer.parseInt(args[2]);
} catch (NumberFormatException e) { } catch (NumberFormatException e) {
cs.sendMessage(YELLOW + "Invalid number"); cs.sendMessage(YELLOW + "Invalid number");
@ -1276,7 +1269,7 @@ public class Quests extends JavaPlugin implements ConversationAbandonedListener,
cs.sendMessage(YELLOW + "Enter a stage"); cs.sendMessage(YELLOW + "Enter a stage");
return true; return true;
} }
if (target == null) { if (target == null) {
cs.sendMessage(YELLOW + "Player not found."); cs.sendMessage(YELLOW + "Player not found.");
@ -2720,60 +2713,6 @@ public class Quests extends JavaPlugin implements ConversationAbandonedListener,
} }
List<String> bossIdsToKill;
List<Integer> bossKillAmounts;
if (config.contains("quests." + s + ".stages.ordered." + s2 + ".boss-ids-to-kill")) {
if (checkList(config.getList("quests." + s + ".stages.ordered." + s2 + ".boss-ids-to-kill"), String.class)) {
if (config.contains("quests." + s + ".stages.ordered." + s2 + ".boss-amounts-to-kill")) {
if (checkList(config.getList("quests." + s + ".stages.ordered." + s2 + ".boss-amounts-to-kill"), Integer.class)) {
bossIdsToKill = config.getStringList("quests." + s + ".stages.ordered." + s2 + ".boss-ids-to-kill");
bossKillAmounts = config.getIntegerList("quests." + s + ".stages.ordered." + s2 + ".boss-amounts-to-kill");
for (String boss : bossIdsToKill) {
if (Quests.getBoss(boss) != null) {
if (bossKillAmounts.get(bossIdsToKill.indexOf(boss)) > 0) {
oStage.bossesToKill.add(boss);
oStage.bossAmountsToKill.add(bossKillAmounts.get(bossIdsToKill.indexOf(boss)));
} else {
printSevere("[Quests] " + bossKillAmounts.get(bossIdsToKill.indexOf(boss)) + GOLD + " inside boss-amounts-to-kill: inside Stage " + s2 + " of Quest " + quest.name + " is not a positive number!");
stageFailed = true;
break;
}
} else {
printSevere("[Quests] " + boss + " inside boss-ids-to-kill: inside Stage " + s2 + " of Quest " + quest.name + " is not a valid EpicBoss name!");
stageFailed = true;
break;
}
}
} else {
printSevere("[Quests] boss-amounts-to-kill: in Stage " + s2 + " of Quest " + quest.name + " is not a list of numbers!");
stageFailed = true;
break;
}
} else {
printSevere("[Quests] Stage " + s2 + " of Quest " + quest.name + " is missing boss-amounts-to-kill:");
stageFailed = true;
break;
}
} else {
printSevere("[Quests] boss-ids-to-kill: in Stage " + s2 + " of Quest " + quest.name + " is not a list of IDs!");
stageFailed = true;
break;
}
}
if (config.contains("quests." + s + ".stages.ordered." + s2 + ".mobs-to-kill")) { if (config.contains("quests." + s + ".stages.ordered." + s2 + ".mobs-to-kill")) {
if (Quests.checkList(config.getList("quests." + s + ".stages.ordered." + s2 + ".mobs-to-kill"), String.class)) { if (Quests.checkList(config.getList("quests." + s + ".stages.ordered." + s2 + ".mobs-to-kill"), String.class)) {
@ -4822,19 +4761,7 @@ public class Quests extends JavaPlugin implements ConversationAbandonedListener,
return false; return false;
} }
public static EpicMobs getBoss(String name) {
for (EpicMobs em : Quests.epicBoss.listMobs) {
if (em.cmdName.equalsIgnoreCase(name)) {
return em;
}
}
return null;
}
public static int getMCMMOSkillLevel(SkillType st, String player) { public static int getMCMMOSkillLevel(SkillType st, String player) {
McMMOPlayer mPlayer = UserManager.getPlayer(player); McMMOPlayer mPlayer = UserManager.getPlayer(player);

View File

@ -106,9 +106,6 @@ public class Stage {
}; };
public LinkedList<Integer> citizenNumToKill = new LinkedList<Integer>(); public LinkedList<Integer> citizenNumToKill = new LinkedList<Integer>();
public LinkedList<String> bossesToKill = new LinkedList<String>();
public LinkedList<Integer> bossAmountsToKill = new LinkedList<Integer>();
public LinkedList<Location> locationsToReach = new LinkedList<Location>(); public LinkedList<Location> locationsToReach = new LinkedList<Location>();
public LinkedList<Integer> radiiToReachWithin = new LinkedList<Integer>(); public LinkedList<Integer> radiiToReachWithin = new LinkedList<Integer>();
public LinkedList<World> worldsToReachWithin = new LinkedList<World>(); public LinkedList<World> worldsToReachWithin = new LinkedList<World>();
@ -222,14 +219,6 @@ public class Stage {
return false; return false;
} }
if(other.bossesToKill.equals(bossesToKill) == false){
return false;
}
if(other.bossAmountsToKill.equals(bossAmountsToKill) == false){
return false;
}
if (other.locationsToReach.equals(locationsToReach) == false) { if (other.locationsToReach.equals(locationsToReach) == false) {
return false; return false;
} }

View File

@ -4,7 +4,6 @@ import java.util.Arrays;
import java.util.LinkedList; import java.util.LinkedList;
import java.util.List; import java.util.List;
import me.ThaH3lper.com.Mobs.EpicMobs;
import me.blackvein.quests.util.ColorUtil; import me.blackvein.quests.util.ColorUtil;
import me.blackvein.quests.Event; import me.blackvein.quests.Event;
import me.blackvein.quests.QuestFactory; import me.blackvein.quests.QuestFactory;
@ -31,7 +30,7 @@ import org.bukkit.inventory.ItemStack;
public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil { public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
private final int stageNum; private final int stageNum;
private final String pref; private final String pref;
private final CitizensPlugin citizens; private final CitizensPlugin citizens;
private final QuestFactory questFactory; private final QuestFactory questFactory;
@ -68,7 +67,6 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
} }
if (context.getSessionData(pref + CK.S_DAMAGE_IDS) == null) { if (context.getSessionData(pref + CK.S_DAMAGE_IDS) == null) {
text += PINK + "" + BOLD + "2 " + RESET + PURPLE + "- " + Lang.get("stageEditorDamageBlocks") + GRAY + " (" + Lang.get("noneSet") + ")\n"; text += PINK + "" + BOLD + "2 " + RESET + PURPLE + "- " + Lang.get("stageEditorDamageBlocks") + GRAY + " (" + Lang.get("noneSet") + ")\n";
} else { } else {
@ -83,7 +81,6 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
} }
if (context.getSessionData(pref + CK.S_PLACE_IDS) == null) { if (context.getSessionData(pref + CK.S_PLACE_IDS) == null) {
text += PINK + "" + BOLD + "3 " + RESET + PURPLE + "- " + Lang.get("stageEditorPlaceBlocks") + GRAY + " (" + Lang.get("noneSet") + ")\n"; text += PINK + "" + BOLD + "3 " + RESET + PURPLE + "- " + Lang.get("stageEditorPlaceBlocks") + GRAY + " (" + Lang.get("noneSet") + ")\n";
} else { } else {
@ -98,7 +95,6 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
} }
if (context.getSessionData(pref + CK.S_USE_IDS) == null) { if (context.getSessionData(pref + CK.S_USE_IDS) == null) {
text += PINK + "" + BOLD + "4 " + RESET + PURPLE + "- " + Lang.get("stageEditorUseBlocks") + GRAY + " (" + Lang.get("noneSet") + ")\n"; text += PINK + "" + BOLD + "4 " + RESET + PURPLE + "- " + Lang.get("stageEditorUseBlocks") + GRAY + " (" + Lang.get("noneSet") + ")\n";
} else { } else {
@ -113,7 +109,6 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
} }
if (context.getSessionData(pref + CK.S_CUT_IDS) == null) { if (context.getSessionData(pref + CK.S_CUT_IDS) == null) {
text += PINK + "" + BOLD + "5 " + RESET + PURPLE + "- " + Lang.get("stageEditorCutBlocks") + GRAY + " (" + Lang.get("noneSet") + ")\n"; text += PINK + "" + BOLD + "5 " + RESET + PURPLE + "- " + Lang.get("stageEditorCutBlocks") + GRAY + " (" + Lang.get("noneSet") + ")\n";
} else { } else {
@ -201,7 +196,7 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
if (context.getSessionData(pref + CK.S_NPCS_TO_KILL) == null) { if (context.getSessionData(pref + CK.S_NPCS_TO_KILL) == null) {
text += PINK + "" + BOLD + "11 " + RESET + PURPLE + "- " + Lang.get("stageEditorKillNPCs") + GRAY + " (" + Lang.get("noneSet") + ")\n"; text += PINK + "" + BOLD + "11 " + RESET + PURPLE + "- " + Lang.get("stageEditorKillNPCs") + GRAY + " (" + Lang.get("noneSet") + ")\n";
} else { } else {
text += PINK + "" + BOLD + "11 " + RESET + PURPLE + "- " + Lang.get("stageEditorKillNPCs") + "\n"; text += PINK + "" + BOLD + "11 " + RESET + PURPLE + "- " + Lang.get("stageEditorKillNPCs") + "\n";
LinkedList<Integer> npcs = (LinkedList<Integer>) context.getSessionData(pref + CK.S_NPCS_TO_KILL); LinkedList<Integer> npcs = (LinkedList<Integer>) context.getSessionData(pref + CK.S_NPCS_TO_KILL);
LinkedList<Integer> amounts = (LinkedList<Integer>) context.getSessionData(pref + CK.S_NPCS_TO_KILL_AMOUNTS); LinkedList<Integer> amounts = (LinkedList<Integer>) context.getSessionData(pref + CK.S_NPCS_TO_KILL_AMOUNTS);
@ -213,33 +208,13 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
} }
} else { } else {
text += GRAY + "" + BOLD + "11 " + RESET + GRAY + "- " + Lang.get("stageEditorKillNPCs") + GRAY + " (Citizens not installed)\n"; text += GRAY + "" + BOLD + "11 " + RESET + GRAY + "- " + Lang.get("stageEditorKillNPCs") + GRAY + " (Citizens not installed)\n";
}
if(Quests.epicBoss != null){
if (context.getSessionData(pref + CK.S_BOSS_IDS) == null) {
text += PINK + "" + BOLD + "12 " + RESET + PURPLE + "- " + Lang.get("stageEditorKillBosses") + GRAY + " (" + Lang.get("noneSet") + ")\n";
} else {
text += PINK + "" + BOLD + "12 " + RESET + PURPLE + "- " + Lang.get("stageEditorKillBosses") + "\n";
LinkedList<String> bosses = (LinkedList<String>) context.getSessionData(pref + CK.S_BOSS_IDS);
LinkedList<Integer> amnts = (LinkedList<Integer>) context.getSessionData(pref + CK.S_BOSS_AMOUNTS);
for (int i = 0; i < bosses.size(); i++) {
text += GRAY + " - " + ITALIC + AQUA + bosses.get(i) + RESET + GRAY + " x " + DARKAQUA + amnts.get(i) + "\n";
}
}
}else{
text += GRAY + "" + BOLD + "12 " + RESET + GRAY + "- " + Lang.get("stageEditorKillBosses") + GRAY + " (EpicBoss not installed)\n";
} }
if (context.getSessionData(pref + CK.S_MOB_TYPES) == null) { if (context.getSessionData(pref + CK.S_MOB_TYPES) == null) {
text += PINK + "" + BOLD + "13 " + RESET + PURPLE + "- " + Lang.get("stageEditorKillMobs") + GRAY + " (" + Lang.get("noneSet") + ")\n"; text += PINK + "" + BOLD + "12 " + RESET + PURPLE + "- " + Lang.get("stageEditorKillMobs") + GRAY + " (" + Lang.get("noneSet") + ")\n";
} else { } else {
text += PINK + "" + BOLD + "13 " + RESET + PURPLE + "- " + Lang.get("stageEditorKillMobs") + "\n"; text += PINK + "" + BOLD + "12 " + RESET + PURPLE + "- " + Lang.get("stageEditorKillMobs") + "\n";
LinkedList<String> mobs = (LinkedList<String>) context.getSessionData(pref + CK.S_MOB_TYPES); LinkedList<String> mobs = (LinkedList<String>) context.getSessionData(pref + CK.S_MOB_TYPES);
LinkedList<Integer> amnts = (LinkedList<Integer>) context.getSessionData(pref + CK.S_MOB_AMOUNTS); LinkedList<Integer> amnts = (LinkedList<Integer>) context.getSessionData(pref + CK.S_MOB_AMOUNTS);
@ -265,27 +240,25 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
} }
if (context.getSessionData(pref + CK.S_REACH_LOCATIONS) == null) { if (context.getSessionData(pref + CK.S_REACH_LOCATIONS) == null) {
text += PINK + "" + BOLD + "14 " + RESET + PURPLE + "- " + Lang.get("stageEditorReachLocs") + GRAY + " (" + Lang.get("noneSet") + ")\n"; text += PINK + "" + BOLD + "13 " + RESET + PURPLE + "- " + Lang.get("stageEditorReachLocs") + GRAY + " (" + Lang.get("noneSet") + ")\n";
} else { } else {
text += PINK + "" + BOLD + "14 " + RESET + PURPLE + "- " + Lang.get("stageEditorReachLocs") +"\n"; text += PINK + "" + BOLD + "13 " + RESET + PURPLE + "- " + Lang.get("stageEditorReachLocs") + "\n";
LinkedList<String> locations = (LinkedList<String>) context.getSessionData(pref + CK.S_REACH_LOCATIONS); LinkedList<String> locations = (LinkedList<String>) context.getSessionData(pref + CK.S_REACH_LOCATIONS);
LinkedList<Integer> radii = (LinkedList<Integer>) context.getSessionData(pref + CK.S_REACH_LOCATIONS_RADIUS); LinkedList<Integer> radii = (LinkedList<Integer>) context.getSessionData(pref + CK.S_REACH_LOCATIONS_RADIUS);
LinkedList<String> names = (LinkedList<String>) context.getSessionData(pref + CK.S_REACH_LOCATIONS_NAMES); LinkedList<String> names = (LinkedList<String>) context.getSessionData(pref + CK.S_REACH_LOCATIONS_NAMES);
for (int i = 0; i < locations.size(); i++) { for (int i = 0; i < locations.size(); i++) {
text += GRAY + " - " + Lang.get("stageEditorReachRadii1") +" " + BLUE + radii.get(i) + GRAY + " " + Lang.get("stageEditorReachRadii2")+ " " + AQUA + names.get(i) + GRAY + " (" + DARKAQUA + locations.get(i) + GRAY + ")\n"; text += GRAY + " - " + Lang.get("stageEditorReachRadii1") + " " + BLUE + radii.get(i) + GRAY + " " + Lang.get("stageEditorReachRadii2") + " " + AQUA + names.get(i) + GRAY + " (" + DARKAQUA + locations.get(i) + GRAY + ")\n";
} }
} }
if (context.getSessionData(pref + CK.S_TAME_TYPES) == null) { if (context.getSessionData(pref + CK.S_TAME_TYPES) == null) {
text += PINK + "" + BOLD + "15 " + RESET + PURPLE + "- " + Lang.get("stageEditorTameMobs") + GRAY + " (" + Lang.get("noneSet") + ")\n"; text += PINK + "" + BOLD + "14 " + RESET + PURPLE + "- " + Lang.get("stageEditorTameMobs") + GRAY + " (" + Lang.get("noneSet") + ")\n";
} else { } else {
text += PINK + "" + BOLD + "15 " + RESET + PURPLE + "- " + Lang.get("stageEditorTameMobs") +"\n"; text += PINK + "" + BOLD + "14 " + RESET + PURPLE + "- " + Lang.get("stageEditorTameMobs") + "\n";
LinkedList<String> mobs = (LinkedList<String>) context.getSessionData(pref + CK.S_TAME_TYPES); LinkedList<String> mobs = (LinkedList<String>) context.getSessionData(pref + CK.S_TAME_TYPES);
LinkedList<Integer> amounts = (LinkedList<Integer>) context.getSessionData(pref + CK.S_TAME_AMOUNTS); LinkedList<Integer> amounts = (LinkedList<Integer>) context.getSessionData(pref + CK.S_TAME_AMOUNTS);
@ -297,9 +270,9 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
} }
if (context.getSessionData(pref + CK.S_SHEAR_COLORS) == null) { if (context.getSessionData(pref + CK.S_SHEAR_COLORS) == null) {
text += PINK + "" + BOLD + "16 " + RESET + PURPLE + "- " + Lang.get("stageEditorShearSheep") + GRAY + " (" + Lang.get("noneSet") + ")\n"; text += PINK + "" + BOLD + "15 " + RESET + PURPLE + "- " + Lang.get("stageEditorShearSheep") + GRAY + " (" + Lang.get("noneSet") + ")\n";
} else { } else {
text += PINK + "" + BOLD + "16 " + RESET + PURPLE + "- " + Lang.get("stageEditorShearSheep") + "\n"; text += PINK + "" + BOLD + "15 " + RESET + PURPLE + "- " + Lang.get("stageEditorShearSheep") + "\n";
LinkedList<String> colors = (LinkedList<String>) context.getSessionData(pref + CK.S_SHEAR_COLORS); LinkedList<String> colors = (LinkedList<String>) context.getSessionData(pref + CK.S_SHEAR_COLORS);
LinkedList<Integer> amounts = (LinkedList<Integer>) context.getSessionData(pref + CK.S_SHEAR_AMOUNTS); LinkedList<Integer> amounts = (LinkedList<Integer>) context.getSessionData(pref + CK.S_SHEAR_AMOUNTS);
@ -310,50 +283,49 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
} }
text += PINK + "" + BOLD + "17 " + RESET + PURPLE + "- " + Lang.get("stageEditorEvents") + "\n"; text += PINK + "" + BOLD + "16 " + RESET + PURPLE + "- " + Lang.get("stageEditorEvents") + "\n";
if (context.getSessionData(pref + CK.S_DELAY) == null) { if (context.getSessionData(pref + CK.S_DELAY) == null) {
text += PINK + "" + BOLD + "18 " + RESET + PURPLE + "- " + Lang.get("delay") + GRAY + " (" + Lang.get("noneSet") + ")\n"; text += PINK + "" + BOLD + "17 " + RESET + PURPLE + "- " + Lang.get("delay") + GRAY + " (" + Lang.get("noneSet") + ")\n";
} else { } else {
long time = (Long) context.getSessionData(pref + CK.S_DELAY); long time = (Long) context.getSessionData(pref + CK.S_DELAY);
text += PINK + "" + BOLD + "18 " + RESET + PURPLE + "- " + Lang.get("delay") + GRAY + "(" + AQUA + Quests.getTime(time) + GRAY + ")\n"; text += PINK + "" + BOLD + "17 " + RESET + PURPLE + "- " + Lang.get("delay") + GRAY + "(" + AQUA + Quests.getTime(time) + GRAY + ")\n";
} }
if (context.getSessionData(pref + CK.S_DELAY) == null) { if (context.getSessionData(pref + CK.S_DELAY) == null) {
text += GRAY + "" + BOLD + "19 " + RESET + GRAY + "- " + Lang.get("stageEditorDelayMessage") + GRAY + " (" + Lang.get("noDelaySet") + ")\n"; text += GRAY + "" + BOLD + "18 " + RESET + GRAY + "- " + Lang.get("stageEditorDelayMessage") + GRAY + " (" + Lang.get("noDelaySet") + ")\n";
} else if (context.getSessionData(pref + CK.S_DELAY_MESSAGE) == null) { } else if (context.getSessionData(pref + CK.S_DELAY_MESSAGE) == null) {
text += PINK + "" + BOLD + "19 " + RESET + PURPLE + "- "+ Lang.get("stageEditorDelayMessage") + GRAY + " (" + Lang.get("noneSet") + ")\n"; text += PINK + "" + BOLD + "18 " + RESET + PURPLE + "- " + Lang.get("stageEditorDelayMessage") + GRAY + " (" + Lang.get("noneSet") + ")\n";
} else { } else {
text += PINK + "" + BOLD + "19 " + RESET + PURPLE + "- " + Lang.get("stageEditorDelayMessage") + GRAY + " (" + AQUA + "\"" + context.getSessionData(pref + CK.S_DELAY_MESSAGE) + "\"" + GRAY + ")\n"; text += PINK + "" + BOLD + "18 " + RESET + PURPLE + "- " + Lang.get("stageEditorDelayMessage") + GRAY + " (" + AQUA + "\"" + context.getSessionData(pref + CK.S_DELAY_MESSAGE) + "\"" + GRAY + ")\n";
} }
if (questFactory.quests.denizen == null) { if (questFactory.quests.denizen == null) {
text += GRAY + "" + BOLD + "19 " + RESET + GRAY + "- " + Lang.get("stageEditorDenizenScript") + GRAY + " (Denizen not installed)\n"; text += GRAY + "" + BOLD + "19 " + RESET + GRAY + "- " + Lang.get("stageEditorDenizenScript") + GRAY + " (Denizen not installed)\n";
} else { } else {
if (context.getSessionData(pref + CK.S_DENIZEN) == null) { if (context.getSessionData(pref + CK.S_DENIZEN) == null) {
text += PINK + "" + BOLD + "20 " + RESET + PURPLE + "- " + Lang.get("stageEditorDenizenScript") + GRAY + " (" + Lang.get("noneSet") + ")\n"; text += PINK + "" + BOLD + "19 " + RESET + PURPLE + "- " + Lang.get("stageEditorDenizenScript") + GRAY + " (" + Lang.get("noneSet") + ")\n";
} else { } else {
text += PINK + "" + BOLD + "20 " + RESET + PURPLE + "- " + Lang.get("stageEditorDenizenScript") + GRAY + " (" + AQUA + context.getSessionData(pref + CK.S_DENIZEN) + GRAY + "\n"; text += PINK + "" + BOLD + "19 " + RESET + PURPLE + "- " + Lang.get("stageEditorDenizenScript") + GRAY + " (" + AQUA + context.getSessionData(pref + CK.S_DENIZEN) + GRAY + "\n";
} }
} }
if (context.getSessionData(pref + CK.S_START_MESSAGE) == null) { if (context.getSessionData(pref + CK.S_START_MESSAGE) == null) {
text += PINK + "" + BOLD + "21 " + RESET + PURPLE + "- " + Lang.get("stageEditorStartMessage") + GRAY + " (" + Lang.get("noneSet") + ")\n"; text += PINK + "" + BOLD + "20 " + RESET + PURPLE + "- " + Lang.get("stageEditorStartMessage") + GRAY + " (" + Lang.get("noneSet") + ")\n";
} else { } else {
text += PINK + "" + BOLD + "21 " + RESET + PURPLE + "- " + Lang.get("stageEditorStartMessage") + GRAY + "(" + AQUA + "\"" + context.getSessionData(pref + CK.S_START_MESSAGE) + "\"" + GRAY + ")\n"; text += PINK + "" + BOLD + "20 " + RESET + PURPLE + "- " + Lang.get("stageEditorStartMessage") + GRAY + "(" + AQUA + "\"" + context.getSessionData(pref + CK.S_START_MESSAGE) + "\"" + GRAY + ")\n";
} }
if (context.getSessionData(pref + CK.S_COMPLETE_MESSAGE) == null) { if (context.getSessionData(pref + CK.S_COMPLETE_MESSAGE) == null) {
text += PINK + "" + BOLD + "22 " + RESET + PURPLE + "- " + Lang.get("stageEditorCompleteMessage") + GRAY + " (" + Lang.get("noneSet") + ")\n"; text += PINK + "" + BOLD + "21 " + RESET + PURPLE + "- " + Lang.get("stageEditorCompleteMessage") + GRAY + " (" + Lang.get("noneSet") + ")\n";
} else { } else {
text += PINK + "" + BOLD + "22 " + RESET + PURPLE + "- " + Lang.get("stageEditorCompleteMessage") + GRAY + "(" + AQUA + "\"" + context.getSessionData(pref + CK.S_COMPLETE_MESSAGE) + "\"" + GRAY + ")\n"; text += PINK + "" + BOLD + "21 " + RESET + PURPLE + "- " + Lang.get("stageEditorCompleteMessage") + GRAY + "(" + AQUA + "\"" + context.getSessionData(pref + CK.S_COMPLETE_MESSAGE) + "\"" + GRAY + ")\n";
} }
text += RED + "" + BOLD + "23 " + RESET + PURPLE + "- " + Lang.get("stageEditorDelete") + "\n"; text += RED + "" + BOLD + "22 " + RESET + PURPLE + "- " + Lang.get("stageEditorDelete") + "\n";
text += GREEN + "" + BOLD + "24 " + RESET + PURPLE + "- " + Lang.get("done") + "\n"; text += GREEN + "" + BOLD + "23 " + RESET + PURPLE + "- " + Lang.get("done") + "\n";
return text; return text;
@ -389,56 +361,49 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
if (questFactory.quests.citizens != null) { if (questFactory.quests.citizens != null) {
return new NPCIDsToTalkToPrompt(); return new NPCIDsToTalkToPrompt();
} else { } else {
context.getForWhom().sendRawMessage(RED + Lang.get("stageEditorNoCitizens")); context.getForWhom().sendRawMessage(RED + Lang.get("stageEditorNoCitizens"));
return new CreateStagePrompt(stageNum, questFactory, citizens); return new CreateStagePrompt(stageNum, questFactory, citizens);
} }
} else if (input.equalsIgnoreCase("11")) { } else if (input.equalsIgnoreCase("11")) {
if (questFactory.quests.citizens != null) { if (questFactory.quests.citizens != null) {
return new NPCKillListPrompt(); return new NPCKillListPrompt();
} else { } else {
context.getForWhom().sendRawMessage(RED + Lang.get("stageEditorNoCitizens")); context.getForWhom().sendRawMessage(RED + Lang.get("stageEditorNoCitizens"));
return new CreateStagePrompt(stageNum, questFactory, citizens); return new CreateStagePrompt(stageNum, questFactory, citizens);
} }
} else if (input.equalsIgnoreCase("12")) { } else if (input.equalsIgnoreCase("12")) {
if (Quests.epicBoss != null) {
return new EpicBossListPrompt();
} else {
context.getForWhom().sendRawMessage(RED + Lang.get("stageEditorNoEpicBoss"));
return new CreateStagePrompt(stageNum, questFactory, citizens);
}
} else if (input.equalsIgnoreCase("13")) {
return new MobListPrompt(); return new MobListPrompt();
} else if (input.equalsIgnoreCase("14")) { } else if (input.equalsIgnoreCase("13")) {
return new ReachListPrompt(); return new ReachListPrompt();
} else if (input.equalsIgnoreCase("15")) { } else if (input.equalsIgnoreCase("14")) {
return new TameListPrompt(); return new TameListPrompt();
} else if (input.equalsIgnoreCase("16")) { } else if (input.equalsIgnoreCase("15")) {
return new ShearListPrompt(); return new ShearListPrompt();
} else if (input.equalsIgnoreCase("17")) { } else if (input.equalsIgnoreCase("16")) {
return new EventListPrompt(); return new EventListPrompt();
} else if (input.equalsIgnoreCase("18")) { } else if (input.equalsIgnoreCase("17")) {
return new DelayPrompt(); return new DelayPrompt();
} else if (input.equalsIgnoreCase("19")) { } else if (input.equalsIgnoreCase("18")) {
if (context.getSessionData(pref + CK.S_DELAY) == null) { if (context.getSessionData(pref + CK.S_DELAY) == null) {
context.getForWhom().sendRawMessage(RED + Lang.get("stageEditorNoDelaySet")); context.getForWhom().sendRawMessage(RED + Lang.get("stageEditorNoDelaySet"));
return new CreateStagePrompt(stageNum, questFactory, citizens); return new CreateStagePrompt(stageNum, questFactory, citizens);
} else { } else {
return new DelayMessagePrompt(); return new DelayMessagePrompt();
} }
} else if (input.equalsIgnoreCase("20")) { } else if (input.equalsIgnoreCase("19")) {
if (questFactory.quests.denizen == null) { if (questFactory.quests.denizen == null) {
context.getForWhom().sendRawMessage(RED + Lang.get("stageEditorNoDenizen")); context.getForWhom().sendRawMessage(RED + Lang.get("stageEditorNoDenizen"));
return new CreateStagePrompt(stageNum, questFactory, citizens); return new CreateStagePrompt(stageNum, questFactory, citizens);
} else { } else {
return new DenizenPrompt(); return new DenizenPrompt();
} }
} else if (input.equalsIgnoreCase("20")) {
return new StartMessagePrompt();
} else if (input.equalsIgnoreCase("21")) { } else if (input.equalsIgnoreCase("21")) {
return new StartMessagePrompt(); return new CompleteMessagePrompt();
} else if (input.equalsIgnoreCase("22")) { } else if (input.equalsIgnoreCase("22")) {
return new CompleteMessagePrompt();
} else if (input.equalsIgnoreCase("23")) {
return new DeletePrompt(); return new DeletePrompt();
} else if (input.equalsIgnoreCase("24")) { } else if (input.equalsIgnoreCase("23")) {
return new StagesPrompt(questFactory); return new StagesPrompt(questFactory);
} else { } else {
return new CreateStagePrompt(stageNum, questFactory, citizens); return new CreateStagePrompt(stageNum, questFactory, citizens);
@ -485,7 +450,7 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
} }
text += BLUE + "" + BOLD + "3" + RESET + YELLOW + " - " + Lang.get("clear") +"\n"; text += BLUE + "" + BOLD + "3" + RESET + YELLOW + " - " + Lang.get("clear") + "\n";
text += BLUE + "" + BOLD + "4" + RESET + YELLOW + " - " + Lang.get("done"); text += BLUE + "" + BOLD + "4" + RESET + YELLOW + " - " + Lang.get("done");
} }
@ -772,7 +737,7 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
} }
} catch (NumberFormatException e) { } catch (NumberFormatException e) {
context.getForWhom().sendRawMessage(PINK + s + RED + Lang.get("stageEditorNotListofNumbers")); context.getForWhom().sendRawMessage(PINK + s + RED + Lang.get("stageEditorNotListofNumbers"));
return new DamageBlockIdsPrompt(); return new DamageBlockIdsPrompt();
} }
@ -963,7 +928,7 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
} }
} catch (NumberFormatException e) { } catch (NumberFormatException e) {
context.getForWhom().sendRawMessage( PINK + s + RED + Lang.get("stageEditorNotListofNumbers")); context.getForWhom().sendRawMessage(PINK + s + RED + Lang.get("stageEditorNotListofNumbers"));
return new PlaceBlockIdsPrompt(); return new PlaceBlockIdsPrompt();
} }
@ -1004,7 +969,7 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
} }
} catch (NumberFormatException e) { } catch (NumberFormatException e) {
context.getForWhom().sendRawMessage( PINK + s + RED + Lang.get("stageEditorNotListofNumbers")); context.getForWhom().sendRawMessage(PINK + s + RED + Lang.get("stageEditorNotListofNumbers"));
return new PlaceBlockAmountsPrompt(); return new PlaceBlockAmountsPrompt();
} }
@ -1154,7 +1119,7 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
} }
} catch (NumberFormatException e) { } catch (NumberFormatException e) {
context.getForWhom().sendRawMessage( PINK + s + RED + Lang.get("stageEditorNotListofNumbers")); context.getForWhom().sendRawMessage(PINK + s + RED + Lang.get("stageEditorNotListofNumbers"));
return new UseBlockIdsPrompt(); return new UseBlockIdsPrompt();
} }
@ -1195,7 +1160,7 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
} }
} catch (NumberFormatException e) { } catch (NumberFormatException e) {
context.getForWhom().sendRawMessage( PINK + s + RED + Lang.get("stageEditorNotListofNumbers")); context.getForWhom().sendRawMessage(PINK + s + RED + Lang.get("stageEditorNotListofNumbers"));
return new UseBlockAmountsPrompt(); return new UseBlockAmountsPrompt();
} }
@ -1295,7 +1260,7 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
if (one == two) { if (one == two) {
return new CreateStagePrompt(stageNum, questFactory, citizens); return new CreateStagePrompt(stageNum, questFactory, citizens);
} else { } else {
context.getForWhom().sendRawMessage(RED + Lang.get("stageEditorListNotSameSize")); context.getForWhom().sendRawMessage(RED + Lang.get("stageEditorListNotSameSize"));
return new CutBlockListPrompt(); return new CutBlockListPrompt();
} }
} }
@ -1345,7 +1310,7 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
} }
} catch (NumberFormatException e) { } catch (NumberFormatException e) {
context.getForWhom().sendRawMessage( PINK + s + RED + Lang.get("stageEditorNotListofNumbers")); context.getForWhom().sendRawMessage(PINK + s + RED + Lang.get("stageEditorNotListofNumbers"));
return new CutBlockIdsPrompt(); return new CutBlockIdsPrompt();
} }
@ -1386,7 +1351,7 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
} }
} catch (NumberFormatException e) { } catch (NumberFormatException e) {
context.getForWhom().sendRawMessage( PINK + s + RED + Lang.get("stageEditorNotListofNumbers")); context.getForWhom().sendRawMessage(PINK + s + RED + Lang.get("stageEditorNotListofNumbers"));
return new CutBlockAmountsPrompt(); return new CutBlockAmountsPrompt();
} }
@ -1442,8 +1407,8 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
Player player = (Player) context.getForWhom(); Player player = (Player) context.getForWhom();
if (num < -1) { if (num < -1) {
player.sendMessage(RED + Lang.get("stageEditorPositiveAmount")); player.sendMessage(RED + Lang.get("stageEditorPositiveAmount"));
return new KillPlayerPrompt(); return new KillPlayerPrompt();
} else if (num == 0) { } else if (num == 0) {
context.setSessionData(pref + CK.S_PLAYER_KILL, null); context.setSessionData(pref + CK.S_PLAYER_KILL, null);
} else if (num > 0) { } else if (num > 0) {
@ -1466,7 +1431,7 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
@Override @Override
public String getPromptText(ConversationContext context) { public String getPromptText(ConversationContext context) {
String text = GOLD + "- " + Lang.get("stageEditorEnchantItems") +" -\n"; String text = GOLD + "- " + Lang.get("stageEditorEnchantItems") + " -\n";
if (context.getSessionData(pref + CK.S_ENCHANT_TYPES) == null) { if (context.getSessionData(pref + CK.S_ENCHANT_TYPES) == null) {
text += BLUE + "" + BOLD + "1" + RESET + YELLOW + " - " + Lang.get("stageEditorSetEnchantments") + " (" + Lang.get("noneSet") + ")\n"; text += BLUE + "" + BOLD + "1" + RESET + YELLOW + " - " + Lang.get("stageEditorSetEnchantments") + " (" + Lang.get("noneSet") + ")\n";
text += GRAY + "2 - " + Lang.get("stageEditorSetItemIds") + " (" + Lang.get("stageEditorNoEnchantmentsSet") + ")\n"; text += GRAY + "2 - " + Lang.get("stageEditorSetItemIds") + " (" + Lang.get("stageEditorNoEnchantmentsSet") + ")\n";
@ -1685,7 +1650,7 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
} }
} catch (NumberFormatException e) { } catch (NumberFormatException e) {
context.getForWhom().sendRawMessage( PINK + s + RED + Lang.get("stageEditorNotListofNumbers")); context.getForWhom().sendRawMessage(PINK + s + RED + Lang.get("stageEditorNotListofNumbers"));
return new EnchantItemsPrompt(); return new EnchantItemsPrompt();
} }
@ -1726,7 +1691,7 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
} }
} catch (NumberFormatException e) { } catch (NumberFormatException e) {
context.getForWhom().sendRawMessage( PINK + s + RED + Lang.get("stageEditorNotListofNumbers")); context.getForWhom().sendRawMessage(PINK + s + RED + Lang.get("stageEditorNotListofNumbers"));
return new EnchantAmountsPrompt(); return new EnchantAmountsPrompt();
} }
@ -1753,12 +1718,12 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
public String getPromptText(ConversationContext context) { public String getPromptText(ConversationContext context) {
// Check/add newly made item // Check/add newly made item
if(context.getSessionData("newItem") != null){ if (context.getSessionData("newItem") != null) {
if(context.getSessionData(pref + CK.S_DELIVERY_ITEMS) != null){ if (context.getSessionData(pref + CK.S_DELIVERY_ITEMS) != null) {
List<ItemStack> itemRews = getItems(context); List<ItemStack> itemRews = getItems(context);
itemRews.add((ItemStack) context.getSessionData("tempStack")); itemRews.add((ItemStack) context.getSessionData("tempStack"));
context.setSessionData(pref + CK.S_DELIVERY_ITEMS, itemRews); context.setSessionData(pref + CK.S_DELIVERY_ITEMS, itemRews);
}else{ } else {
LinkedList<ItemStack> itemRews = new LinkedList<ItemStack>(); LinkedList<ItemStack> itemRews = new LinkedList<ItemStack>();
itemRews.add((ItemStack) context.getSessionData("tempStack")); itemRews.add((ItemStack) context.getSessionData("tempStack"));
context.setSessionData(pref + CK.S_DELIVERY_ITEMS, itemRews); context.setSessionData(pref + CK.S_DELIVERY_ITEMS, itemRews);
@ -1931,7 +1896,7 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
} catch (NumberFormatException e) { } catch (NumberFormatException e) {
context.getForWhom().sendRawMessage( PINK + s + RED + Lang.get("stageEditorNotListofNumbers")); context.getForWhom().sendRawMessage(PINK + s + RED + Lang.get("stageEditorNotListofNumbers"));
return new DeliveryNPCsPrompt(); return new DeliveryNPCsPrompt();
} }
@ -1954,7 +1919,7 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
public String getPromptText(ConversationContext context) { public String getPromptText(ConversationContext context) {
String note = GOLD + Lang.get("stageEditorNPCNote"); String note = GOLD + Lang.get("stageEditorNPCNote");
return YELLOW + Lang.get("stageEditorDeliveryMessagesPrompt")+ ".\n" + note; return YELLOW + Lang.get("stageEditorDeliveryMessagesPrompt") + ".\n" + note;
} }
@Override @Override
@ -2006,7 +1971,7 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
} catch (NumberFormatException e) { } catch (NumberFormatException e) {
context.getForWhom().sendRawMessage( PINK + s + RED + Lang.get("stageEditorNotListofNumbers")); context.getForWhom().sendRawMessage(PINK + s + RED + Lang.get("stageEditorNotListofNumbers"));
return new NPCIDsToTalkToPrompt(); return new NPCIDsToTalkToPrompt();
} }
@ -2022,7 +1987,6 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
} }
return new CreateStagePrompt(stageNum, questFactory, citizens); return new CreateStagePrompt(stageNum, questFactory, citizens);
} }
@ -2161,7 +2125,7 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
} catch (NumberFormatException e) { } catch (NumberFormatException e) {
context.getForWhom().sendRawMessage( PINK + s + RED + Lang.get("stageEditorNotListofNumbers")); context.getForWhom().sendRawMessage(PINK + s + RED + Lang.get("stageEditorNotListofNumbers"));
return new NpcIdsToKillPrompt(); return new NpcIdsToKillPrompt();
} }
@ -2204,7 +2168,7 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
} }
} catch (NumberFormatException e) { } catch (NumberFormatException e) {
context.getForWhom().sendRawMessage( PINK + s + RED + Lang.get("stageEditorNotListofNumbers")); context.getForWhom().sendRawMessage(PINK + s + RED + Lang.get("stageEditorNotListofNumbers"));
return new NpcAmountsToKillPrompt(); return new NpcAmountsToKillPrompt();
} }
@ -2407,7 +2371,6 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
return new MobListPrompt(); return new MobListPrompt();
} }
} else { } else {
return new CreateStagePrompt(stageNum, questFactory, citizens); return new CreateStagePrompt(stageNum, questFactory, citizens);
} }
@ -2460,6 +2423,7 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
mobs += PURPLE + "EnderDragon, "; mobs += PURPLE + "EnderDragon, ";
mobs += PURPLE + "Ghast, "; mobs += PURPLE + "Ghast, ";
mobs += PURPLE + "Giant, "; mobs += PURPLE + "Giant, ";
mobs += PURPLE + "Horse, ";
mobs += PURPLE + "IronGolem, "; mobs += PURPLE + "IronGolem, ";
mobs += PURPLE + "MagmaCube, "; mobs += PURPLE + "MagmaCube, ";
mobs += PURPLE + "MushroomCow, "; mobs += PURPLE + "MushroomCow, ";
@ -2542,7 +2506,6 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
mobAmounts.add(i); mobAmounts.add(i);
} catch (NumberFormatException e) { } catch (NumberFormatException e) {
player.sendMessage(PINK + input + " " + RED + Lang.get("stageEditorInvalidNumber")); player.sendMessage(PINK + input + " " + RED + Lang.get("stageEditorInvalidNumber"));
return new MobAmountsPrompt(); return new MobAmountsPrompt();
@ -2640,7 +2603,6 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
radii.add(i); radii.add(i);
} catch (NumberFormatException e) { } catch (NumberFormatException e) {
player.sendMessage(PINK + input + " " + RED + Lang.get("stageEditorInvalidItemID")); player.sendMessage(PINK + input + " " + RED + Lang.get("stageEditorInvalidItemID"));
return new MobRadiiPrompt(); return new MobRadiiPrompt();
@ -2694,7 +2656,7 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
@Override @Override
public String getPromptText(ConversationContext context) { public String getPromptText(ConversationContext context) {
String text = GOLD + "- " + Lang.get("stageEditorReachLocs") + " -\n"; String text = GOLD + "- " + Lang.get("stageEditorReachLocs") + " -\n";
if (context.getSessionData(pref + CK.S_REACH_LOCATIONS) == null) { if (context.getSessionData(pref + CK.S_REACH_LOCATIONS) == null) {
text += BLUE + "" + BOLD + "1" + RESET + YELLOW + " - " + Lang.get("stageEditorSetLocations") + " (" + Lang.get("noneSet") + ")\n"; text += BLUE + "" + BOLD + "1" + RESET + YELLOW + " - " + Lang.get("stageEditorSetLocations") + " (" + Lang.get("noneSet") + ")\n";
text += GRAY + "2 - " + Lang.get("stageEditorSetLocationRadii") + " (" + Lang.get("stageEditorNoLocationsSet") + ")\n"; text += GRAY + "2 - " + Lang.get("stageEditorSetLocationRadii") + " (" + Lang.get("stageEditorNoLocationsSet") + ")\n";
@ -2802,7 +2764,6 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
return new ReachListPrompt(); return new ReachListPrompt();
} }
} else { } else {
return new ReachListPrompt(); return new ReachListPrompt();
} }
@ -2903,7 +2864,6 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
radii.add(i); radii.add(i);
} catch (NumberFormatException e) { } catch (NumberFormatException e) {
player.sendMessage(PINK + input + " " + RED + Lang.get("stageEditorInvalidNumber")); player.sendMessage(PINK + input + " " + RED + Lang.get("stageEditorInvalidNumber"));
return new ReachRadiiPrompt(); return new ReachRadiiPrompt();
@ -3372,7 +3332,7 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
private class EventListPrompt extends FixedSetPrompt { private class EventListPrompt extends FixedSetPrompt {
public EventListPrompt(){ public EventListPrompt() {
super("1", "2", "3", "4", "5", "6"); super("1", "2", "3", "4", "5", "6");
@ -3383,36 +3343,41 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
String text = GREEN + "- " + Lang.get("stageEditorStageEvents") + " -\n"; String text = GREEN + "- " + Lang.get("stageEditorStageEvents") + " -\n";
if(context.getSessionData(pref + CK.S_START_EVENT) == null) if (context.getSessionData(pref + CK.S_START_EVENT) == null) {
text += BLUE + "" + BOLD + "1" + RESET + YELLOW + " - " + Lang.get("stageEditorStartEvent") + " (" + Lang.get("noneSet") + ")\n"; text += BLUE + "" + BOLD + "1" + RESET + YELLOW + " - " + Lang.get("stageEditorStartEvent") + " (" + Lang.get("noneSet") + ")\n";
else } else {
text += BLUE + "" + BOLD + "1" + RESET + YELLOW + " - " + Lang.get("stageEditorStartEvent") + " (" + AQUA + ((String) context.getSessionData(pref + CK.S_START_EVENT)) + YELLOW + ")\n"; text += BLUE + "" + BOLD + "1" + RESET + YELLOW + " - " + Lang.get("stageEditorStartEvent") + " (" + AQUA + ((String) context.getSessionData(pref + CK.S_START_EVENT)) + YELLOW + ")\n";
}
if(context.getSessionData(pref + CK.S_FINISH_EVENT) == null) if (context.getSessionData(pref + CK.S_FINISH_EVENT) == null) {
text += BLUE + "" + BOLD + "2" + RESET + YELLOW + " - " + Lang.get("stageEditorFinishEvent") + " (" + Lang.get("noneSet") + ")\n"; text += BLUE + "" + BOLD + "2" + RESET + YELLOW + " - " + Lang.get("stageEditorFinishEvent") + " (" + Lang.get("noneSet") + ")\n";
else } else {
text += BLUE + "" + BOLD + "2" + RESET + YELLOW + " - " + Lang.get("stageEditorFinishEvent") + " (" + AQUA + ((String) context.getSessionData(pref + CK.S_FINISH_EVENT)) + YELLOW + ")\n"; text += BLUE + "" + BOLD + "2" + RESET + YELLOW + " - " + Lang.get("stageEditorFinishEvent") + " (" + AQUA + ((String) context.getSessionData(pref + CK.S_FINISH_EVENT)) + YELLOW + ")\n";
}
if(context.getSessionData(pref + CK.S_DEATH_EVENT) == null) if (context.getSessionData(pref + CK.S_DEATH_EVENT) == null) {
text += BLUE + "" + BOLD + "3" + RESET + YELLOW + " - " + Lang.get("stageEditorDeathEvent") + " (" + Lang.get("noneSet") + ")\n"; text += BLUE + "" + BOLD + "3" + RESET + YELLOW + " - " + Lang.get("stageEditorDeathEvent") + " (" + Lang.get("noneSet") + ")\n";
else } else {
text += BLUE + "" + BOLD + "3" + RESET + YELLOW + " - " + Lang.get("stageEditorDeathEvent") + " (" + AQUA + ((String) context.getSessionData(pref + CK.S_DEATH_EVENT)) + YELLOW + ")\n"; text += BLUE + "" + BOLD + "3" + RESET + YELLOW + " - " + Lang.get("stageEditorDeathEvent") + " (" + AQUA + ((String) context.getSessionData(pref + CK.S_DEATH_EVENT)) + YELLOW + ")\n";
}
if(context.getSessionData(pref + CK.S_DISCONNECT_EVENT) == null) if (context.getSessionData(pref + CK.S_DISCONNECT_EVENT) == null) {
text += BLUE + "" + BOLD + "4" + RESET + YELLOW + " - " + Lang.get("stageEditorDisconnectEvent") + " (" + Lang.get("noneSet") + ")\n"; text += BLUE + "" + BOLD + "4" + RESET + YELLOW + " - " + Lang.get("stageEditorDisconnectEvent") + " (" + Lang.get("noneSet") + ")\n";
else } else {
text += BLUE + "" + BOLD + "4" + RESET + YELLOW + " - " + Lang.get("stageEditorDisconnectEvent") + " (" + AQUA + ((String) context.getSessionData(pref + CK.S_DISCONNECT_EVENT)) + YELLOW + ")\n"; text += BLUE + "" + BOLD + "4" + RESET + YELLOW + " - " + Lang.get("stageEditorDisconnectEvent") + " (" + AQUA + ((String) context.getSessionData(pref + CK.S_DISCONNECT_EVENT)) + YELLOW + ")\n";
}
if(context.getSessionData(pref + CK.S_CHAT_EVENTS) == null) if (context.getSessionData(pref + CK.S_CHAT_EVENTS) == null) {
text += BLUE + "" + BOLD + "5" + RESET + YELLOW + " - " + Lang.get("stageEditorChatEvents") + " (" + Lang.get("noneSet") + ")\n"; text += BLUE + "" + BOLD + "5" + RESET + YELLOW + " - " + Lang.get("stageEditorChatEvents") + " (" + Lang.get("noneSet") + ")\n";
else{ } else {
text += BLUE + "" + BOLD + "5" + RESET + YELLOW + " - " + Lang.get("stageEditorChatEvents") + "\n"; text += BLUE + "" + BOLD + "5" + RESET + YELLOW + " - " + Lang.get("stageEditorChatEvents") + "\n";
LinkedList<String> chatEvents = (LinkedList<String>) context.getSessionData(pref + CK.S_CHAT_EVENTS); LinkedList<String> chatEvents = (LinkedList<String>) context.getSessionData(pref + CK.S_CHAT_EVENTS);
LinkedList<String> chatEventTriggers = (LinkedList<String>) context.getSessionData(pref + CK.S_CHAT_EVENT_TRIGGERS); LinkedList<String> chatEventTriggers = (LinkedList<String>) context.getSessionData(pref + CK.S_CHAT_EVENT_TRIGGERS);
for(String event : chatEvents) for (String event : chatEvents) {
text += AQUA + " - " + event + BLUE + " (" + Lang.get("stageEditorTriggeredBy") + ": \"" + chatEventTriggers.get(chatEvents.indexOf(event)) + "\")\n"; text += AQUA + " - " + event + BLUE + " (" + Lang.get("stageEditorTriggeredBy") + ": \"" + chatEventTriggers.get(chatEvents.indexOf(event)) + "\")\n";
}
} }
@ -3422,31 +3387,31 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
} }
/* /*
en.put("stageEditorStageEvents", "Stage Events"); en.put("stageEditorStageEvents", "Stage Events");
en.put("stageEditorStartEvent", "Start Event"); en.put("stageEditorStartEvent", "Start Event");
en.put("stageEditorFinishEvent", "Finish Event"); en.put("stageEditorFinishEvent", "Finish Event");
en.put("stageEditorChatEvents", "Chat Events"); en.put("stageEditorChatEvents", "Chat Events");
en.put("stageEditorDeathEvent", "Death Event"); en.put("stageEditorDeathEvent", "Death Event");
en.put("stageEditorDisconnectEvent", "Disconnect Event"); en.put("stageEditorDisconnectEvent", "Disconnect Event");
*/ */
@Override @Override
protected Prompt acceptValidatedInput(ConversationContext context, String input) { protected Prompt acceptValidatedInput(ConversationContext context, String input) {
if(input.equalsIgnoreCase("1")) if (input.equalsIgnoreCase("1")) {
return new StartEventPrompt(); return new StartEventPrompt();
else if(input.equalsIgnoreCase("2")) } else if (input.equalsIgnoreCase("2")) {
return new FinishEventPrompt(); return new FinishEventPrompt();
else if(input.equalsIgnoreCase("3")) } else if (input.equalsIgnoreCase("3")) {
return new DeathEventPrompt(); return new DeathEventPrompt();
else if(input.equalsIgnoreCase("4")) } else if (input.equalsIgnoreCase("4")) {
return new DisconnectEventPrompt(); return new DisconnectEventPrompt();
else if(input.equalsIgnoreCase("5")) } else if (input.equalsIgnoreCase("5")) {
return new ChatEventPrompt(); return new ChatEventPrompt();
else if(input.equalsIgnoreCase("6")) } else if (input.equalsIgnoreCase("6")) {
return new CreateStagePrompt(stageNum, questFactory, citizens); return new CreateStagePrompt(stageNum, questFactory, citizens);
else } else {
return new EventListPrompt(); return new EventListPrompt();
}
} }
@ -3457,7 +3422,7 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
@Override @Override
public String getPromptText(ConversationContext context) { public String getPromptText(ConversationContext context) {
String text = DARKGREEN + "- " + Lang.get("stageEditorStartEvent") + " -\n"; String text = DARKGREEN + "- " + Lang.get("stageEditorStartEvent") + " -\n";
if (questFactory.quests.events.isEmpty()) { if (questFactory.quests.events.isEmpty()) {
text += RED + "- None"; text += RED + "- None";
} else { } else {
@ -3514,7 +3479,7 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
@Override @Override
public String getPromptText(ConversationContext context) { public String getPromptText(ConversationContext context) {
String text = DARKGREEN + "- " + Lang.get("stageEditorFinishEvent") + " -\n"; String text = DARKGREEN + "- " + Lang.get("stageEditorFinishEvent") + " -\n";
if (questFactory.quests.events.isEmpty()) { if (questFactory.quests.events.isEmpty()) {
text += RED + "- None"; text += RED + "- None";
} else { } else {
@ -3571,7 +3536,7 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
@Override @Override
public String getPromptText(ConversationContext context) { public String getPromptText(ConversationContext context) {
String text = DARKGREEN + "- " + Lang.get("stageEditorDeathEvent") + " -\n"; String text = DARKGREEN + "- " + Lang.get("stageEditorDeathEvent") + " -\n";
if (questFactory.quests.events.isEmpty()) { if (questFactory.quests.events.isEmpty()) {
text += RED + "- None"; text += RED + "- None";
} else { } else {
@ -3628,7 +3593,7 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
@Override @Override
public String getPromptText(ConversationContext context) { public String getPromptText(ConversationContext context) {
String text = DARKGREEN + "- " + Lang.get("stageEditorDisconnectEvent") + " -\n"; String text = DARKGREEN + "- " + Lang.get("stageEditorDisconnectEvent") + " -\n";
if (questFactory.quests.events.isEmpty()) { if (questFactory.quests.events.isEmpty()) {
text += RED + "- None"; text += RED + "- None";
} else { } else {
@ -3685,7 +3650,7 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
@Override @Override
public String getPromptText(ConversationContext context) { public String getPromptText(ConversationContext context) {
String text = DARKGREEN + "- " + Lang.get("stageEditorChatEvents") + " -\n"; String text = DARKGREEN + "- " + Lang.get("stageEditorChatEvents") + " -\n";
if (questFactory.quests.events.isEmpty()) { if (questFactory.quests.events.isEmpty()) {
text += RED + "- None"; text += RED + "- None";
} else { } else {
@ -3745,7 +3710,7 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
String tempEvent = (String) context.getSessionData(pref + CK.S_CHAT_TEMP_EVENT); String tempEvent = (String) context.getSessionData(pref + CK.S_CHAT_TEMP_EVENT);
String text = GOLD + "- " + Lang.get("stageEditorChatTrigger") + " -\n"; String text = GOLD + "- " + Lang.get("stageEditorChatTrigger") + " -\n";
text += YELLOW + Lang.get("stageEditorChatEventsTriggerPromptA") + " " + AQUA + tempEvent + " " + YELLOW + Lang.get("stageEditorChatEventsTriggerPromptB"); text += YELLOW + Lang.get("stageEditorChatEventsTriggerPromptA") + " " + AQUA + tempEvent + " " + YELLOW + Lang.get("stageEditorChatEventsTriggerPromptB");
return text; return text;
@ -3756,7 +3721,7 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
if (input.equalsIgnoreCase(Lang.get("cmdCancel")) == false) { if (input.equalsIgnoreCase(Lang.get("cmdCancel")) == false) {
if(context.getSessionData(pref + CK.S_CHAT_EVENTS) == null){ if (context.getSessionData(pref + CK.S_CHAT_EVENTS) == null) {
LinkedList<String> chatEvents = new LinkedList<String>(); LinkedList<String> chatEvents = new LinkedList<String>();
LinkedList<String> chatEventTriggers = new LinkedList<String>(); LinkedList<String> chatEventTriggers = new LinkedList<String>();
@ -3771,7 +3736,7 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
return new EventListPrompt(); return new EventListPrompt();
}else { } else {
LinkedList<String> chatEvents = (LinkedList<String>) context.getSessionData(pref + CK.S_CHAT_EVENTS); LinkedList<String> chatEvents = (LinkedList<String>) context.getSessionData(pref + CK.S_CHAT_EVENTS);
LinkedList<String> chatEventTriggers = (LinkedList<String>) context.getSessionData(pref + CK.S_CHAT_EVENT_TRIGGERS); LinkedList<String> chatEventTriggers = (LinkedList<String>) context.getSessionData(pref + CK.S_CHAT_EVENT_TRIGGERS);
@ -3810,39 +3775,38 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
public Prompt acceptInput(ConversationContext context, String input) { public Prompt acceptInput(ConversationContext context, String input) {
Player player = (Player) context.getForWhom(); Player player = (Player) context.getForWhom();
if (input.equalsIgnoreCase(Lang.get("cmdCancel"))) { if (input.equalsIgnoreCase(Lang.get("cmdCancel"))) {
return new CreateStagePrompt(stageNum, questFactory, citizens); return new CreateStagePrompt(stageNum, questFactory, citizens);
} }
if (input.equalsIgnoreCase(Lang.get("cmdClear"))) { if (input.equalsIgnoreCase(Lang.get("cmdClear"))) {
context.setSessionData(pref + CK.S_DELAY, null); context.setSessionData(pref + CK.S_DELAY, null);
player.sendMessage(GREEN + "Delay cleared."); player.sendMessage(GREEN + "Delay cleared.");
return new CreateStagePrompt(stageNum, questFactory, citizens); return new CreateStagePrompt(stageNum, questFactory, citizens);
} }
long l; long l;
try { try {
l = Long.parseLong(input); l = Long.parseLong(input);
} catch (NumberFormatException e) { } catch (NumberFormatException e) {
//returns -1 if incorrect input //returns -1 if incorrect input
l = MiscUtil.getTimeFromString(input); l = MiscUtil.getTimeFromString(input);
if (l == -1) { if (l == -1) {
player.sendMessage(RED + Lang.get("stageEditorNoNumber")); player.sendMessage(RED + Lang.get("stageEditorNoNumber"));
return new DelayPrompt(); return new DelayPrompt();
} }
} }
if (l < 1000) { if (l < 1000) {
player.sendMessage(RED + Lang.get("stageEditorInvalidDelay")); player.sendMessage(RED + Lang.get("stageEditorInvalidDelay"));
return new DelayPrompt(); return new DelayPrompt();
} else { } else {
context.setSessionData(pref + CK.S_DELAY, l); context.setSessionData(pref + CK.S_DELAY, l);
return new CreateStagePrompt(stageNum, questFactory, citizens); return new CreateStagePrompt(stageNum, questFactory, citizens);
} }
} }
@ -3917,199 +3881,9 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
player.sendMessage(YELLOW + "Denizen script cleared."); player.sendMessage(YELLOW + "Denizen script cleared.");
return new CreateStagePrompt(stageNum, questFactory, citizens); return new CreateStagePrompt(stageNum, questFactory, citizens);
} else { } else {
return new CreateStagePrompt(stageNum, questFactory, citizens);
}
}
}
private class EpicBossListPrompt extends FixedSetPrompt {
public EpicBossListPrompt() {
super("1", "2", "3", "4");
}
@Override
public String getPromptText(ConversationContext cc) {
String text = GOLD + "- " + DARKRED + Lang.get("stageEditorKillBosses") + GOLD + " -\n";
if (cc.getSessionData(pref + "bossIds") == null) {
text += BOLD + "" + RED + "1 " + RESET + RED + "- " + Lang.get("stageEditorSetBosses") + " (" + Lang.get("noneSet") + ")\n";
} else {
text += BOLD + "" + RED + "1 " + RESET + RED + "- " + Lang.get("stageEditorSetBosses") + "\n";
LinkedList<String> ids = (LinkedList<String>) cc.getSessionData(pref + "bossIds");
for (String id : ids) {
for (EpicMobs em : Quests.epicBoss.listMobs) {
if (em.cmdName.equalsIgnoreCase(id)) {
text += GOLD + " - " + YELLOW + em.cmdName + "\n";
break;
}
}
}
}
if (cc.getSessionData(pref + "bossAmounts") == null) {
text += BOLD + "" + RED + "2 " + RESET + RED + "- " + Lang.get("stageEditorSetKillAmounts") + " (" + Lang.get("noneSet") + ")\n";
} else {
text += BOLD + "" + RED + "2 " + RESET + RED + "- " + Lang.get("stageEditorSetKillAmounts") + "\n";
LinkedList<Integer> amounts = (LinkedList<Integer>) cc.getSessionData(pref + "bossAmounts");
for (int amount : amounts) {
text += GOLD + " - " + YELLOW + amount + "\n";
}
}
text += BOLD + "" + RED + "3 " + RESET + RED + "- " + Lang.get("clear") + "\n";
text += BOLD + "" + RED + "4 " + RESET + GREEN + "- " + Lang.get("done");
return text;
}
@Override
protected Prompt acceptValidatedInput(ConversationContext cc, String input) {
if (input.equalsIgnoreCase("1")) {
return new EpicBossIDListPrompt();
}else if(input.equalsIgnoreCase("2")) {
return new EpicBossAmountListPrompt();
}else if(input.equalsIgnoreCase("3")) {
cc.setSessionData(pref + "bossIds", null);
cc.setSessionData(pref + "bossAmounts", null);
cc.getForWhom().sendRawMessage(YELLOW + Lang.get("stageEditorBossesCleared"));
return new EpicBossListPrompt();
}else if(input.equalsIgnoreCase("4")) {
int idNum = 0;
int amountNum = 0;
if(cc.getSessionData(pref + "bossIds") != null)
idNum = ((LinkedList<String>) cc.getSessionData(pref + "bossIds")).size();
if(cc.getSessionData(pref + "bossAmounts") != null)
amountNum = ((LinkedList<Integer>) cc.getSessionData(pref + "bossAmounts")).size();
if(idNum != amountNum){
cc.getForWhom().sendRawMessage(RED + Lang.get("stageEditorBossesNotSameSize"));
return new EpicBossListPrompt();
}
return new CreateStagePrompt(stageNum, questFactory, citizens); return new CreateStagePrompt(stageNum, questFactory, citizens);
} }
return new EpicBossListPrompt();
}
}
private class EpicBossIDListPrompt extends StringPrompt {
@Override
public String getPromptText(ConversationContext cc) {
String text = GOLD + "- " + DARKRED + Lang.get("stageEditorBosses") + GOLD + " -\n";
if (Quests.epicBoss.listMobs.isEmpty()) {
text += RED + "- " + Lang.get("none") + "\n";
} else {
for (EpicMobs em : Quests.epicBoss.listMobs) {
text += RED + " - " + em.cmdName + "\n";
}
}
text += "\n";
text += YELLOW + Lang.get("stageEditorBossNamePrompt");
return text;
}
@Override
public Prompt acceptInput(ConversationContext cc, String input) {
if (input.equalsIgnoreCase(Lang.get("cmdCancel")) == false) {
String[] ids = input.split(" ");
LinkedList<String> idList = new LinkedList<String>();
for (String id : ids) {
EpicMobs found = null;
for (EpicMobs em : Quests.epicBoss.listMobs) {
if (em.cmdName.equalsIgnoreCase(id)) {
found = em;
break;
}
}
if (found == null) {
cc.getForWhom().sendRawMessage(RED + Lang.get("stageEditorInvalidBoss") + " " + id + "!");
return new EpicBossIDListPrompt();
} else {
if (idList.contains(found.cmdName)) {
cc.getForWhom().sendRawMessage(RED + Lang.get("stageEditorContainsDuplicates"));
return new EpicBossIDListPrompt();
} else {
idList.add(found.cmdName);
}
}
}
cc.setSessionData(pref + "bossIds", idList);
}
return new EpicBossListPrompt();
}
}
private class EpicBossAmountListPrompt extends StringPrompt {
@Override
public String getPromptText(ConversationContext cc) {
String text = YELLOW + Lang.get("stageEditorBossAmountPrompt");
return text;
}
@Override
public Prompt acceptInput(ConversationContext cc, String input) {
if (input.equalsIgnoreCase(Lang.get("cmdCancel")) == false) {
String[] amounts = input.split(" ");
LinkedList<Integer> amountList = new LinkedList<Integer>();
for (String amount : amounts) {
try {
int i = Integer.parseInt(amount);
if(i < 1){
cc.getForWhom().sendRawMessage(RED + amount + " " + Lang.get("stageEditorNotGreaterThanZero"));
return new EpicBossAmountListPrompt();
}
amountList.add(i);
} catch (NumberFormatException e) {
cc.getForWhom().sendRawMessage(RED + amount + " " + Lang.get("stageEditorInvalidNumber"));
return new EpicBossAmountListPrompt();
}
}
cc.setSessionData(pref + "bossAmounts", amountList);
}
return new EpicBossListPrompt();
} }
} }
@ -4145,59 +3919,59 @@ public class CreateStagePrompt extends FixedSetPrompt implements ColorUtil {
private class StartMessagePrompt extends StringPrompt { private class StartMessagePrompt extends StringPrompt {
@Override @Override
public String getPromptText(ConversationContext context) { public String getPromptText(ConversationContext context) {
return YELLOW + Lang.get("stageEditorStartMessagePrompt"); return YELLOW + Lang.get("stageEditorStartMessagePrompt");
} }
@Override @Override
public Prompt acceptInput(ConversationContext context, String input) { public Prompt acceptInput(ConversationContext context, String input) {
Player player = (Player) context.getForWhom(); Player player = (Player) context.getForWhom();
if (input.equalsIgnoreCase(Lang.get("cmdCancel")) == false && input.equalsIgnoreCase(Lang.get("cmdClear")) == false) { if (input.equalsIgnoreCase(Lang.get("cmdCancel")) == false && input.equalsIgnoreCase(Lang.get("cmdClear")) == false) {
context.setSessionData(pref + CK.S_START_MESSAGE, input); context.setSessionData(pref + CK.S_START_MESSAGE, input);
return new CreateStagePrompt(stageNum, questFactory, citizens); return new CreateStagePrompt(stageNum, questFactory, citizens);
} else if (input.equalsIgnoreCase(Lang.get("cmdClear"))) { } else if (input.equalsIgnoreCase(Lang.get("cmdClear"))) {
context.setSessionData(pref + CK.S_START_MESSAGE, null); context.setSessionData(pref + CK.S_START_MESSAGE, null);
player.sendMessage(YELLOW + Lang.get("stageEditorStartMessageCleared")); player.sendMessage(YELLOW + Lang.get("stageEditorStartMessageCleared"));
return new CreateStagePrompt(stageNum, questFactory, citizens); return new CreateStagePrompt(stageNum, questFactory, citizens);
} else { } else {
return new CreateStagePrompt(stageNum, questFactory, citizens); return new CreateStagePrompt(stageNum, questFactory, citizens);
} }
} }
} }
private class CompleteMessagePrompt extends StringPrompt { private class CompleteMessagePrompt extends StringPrompt {
@Override @Override
public String getPromptText(ConversationContext context) { public String getPromptText(ConversationContext context) {
return YELLOW + Lang.get("Enter complete message, or enter \"clear\" to clear the message, or \"cancel\" to return"); return YELLOW + Lang.get("Enter complete message, or enter \"clear\" to clear the message, or \"cancel\" to return");
} }
@Override @Override
public Prompt acceptInput(ConversationContext context, String input) { public Prompt acceptInput(ConversationContext context, String input) {
Player player = (Player) context.getForWhom(); Player player = (Player) context.getForWhom();
if (input.equalsIgnoreCase(Lang.get("cmdCancel")) == false && input.equalsIgnoreCase(Lang.get("cmdClear")) == false) { if (input.equalsIgnoreCase(Lang.get("cmdCancel")) == false && input.equalsIgnoreCase(Lang.get("cmdClear")) == false) {
context.setSessionData(pref + CK.S_COMPLETE_MESSAGE, input); context.setSessionData(pref + CK.S_COMPLETE_MESSAGE, input);
return new CreateStagePrompt(stageNum, questFactory, citizens); return new CreateStagePrompt(stageNum, questFactory, citizens);
} else if (input.equalsIgnoreCase(Lang.get("cmdClear"))) { } else if (input.equalsIgnoreCase(Lang.get("cmdClear"))) {
context.setSessionData(pref + CK.S_COMPLETE_MESSAGE, null); context.setSessionData(pref + CK.S_COMPLETE_MESSAGE, null);
player.sendMessage(YELLOW + Lang.get("stageEditorCompleteMessageCleared")); player.sendMessage(YELLOW + Lang.get("stageEditorCompleteMessageCleared"));
return new CreateStagePrompt(stageNum, questFactory, citizens); return new CreateStagePrompt(stageNum, questFactory, citizens);
} else { } else {
return new CreateStagePrompt(stageNum, questFactory, citizens); return new CreateStagePrompt(stageNum, questFactory, citizens);
} }
} }
} }
} }

View File

@ -67,8 +67,6 @@ public class CK {
public static final String S_NPCS_TO_TALK_TO = "npcIdsToTalkTo"; public static final String S_NPCS_TO_TALK_TO = "npcIdsToTalkTo";
public static final String S_NPCS_TO_KILL = "npcIdsToKill"; public static final String S_NPCS_TO_KILL = "npcIdsToKill";
public static final String S_NPCS_TO_KILL_AMOUNTS = "npcAmountsToKill"; public static final String S_NPCS_TO_KILL_AMOUNTS = "npcAmountsToKill";
public static final String S_BOSS_IDS = "bossIds";
public static final String S_BOSS_AMOUNTS = "bossAmounts";
public static final String S_MOB_TYPES = "mobTypes"; public static final String S_MOB_TYPES = "mobTypes";
public static final String S_MOB_AMOUNTS = "mobAmounts"; public static final String S_MOB_AMOUNTS = "mobAmounts";
public static final String S_MOB_KILL_LOCATIONS = "killLocations"; public static final String S_MOB_KILL_LOCATIONS = "killLocations";

View File

@ -108,7 +108,6 @@ public class Lang {
en.put("stageEditorDeliverItems", "Deliver Items"); en.put("stageEditorDeliverItems", "Deliver Items");
en.put("stageEditorTalkToNPCs", "Talk to NPCs"); en.put("stageEditorTalkToNPCs", "Talk to NPCs");
en.put("stageEditorKillNPCs", "Kill NPCs"); en.put("stageEditorKillNPCs", "Kill NPCs");
en.put("stageEditorKillBosses", "Kill Bosses");
en.put("stageEditorKillMobs", "Kill Mobs"); en.put("stageEditorKillMobs", "Kill Mobs");
en.put("stageEditorReachLocs", "Reach locations"); en.put("stageEditorReachLocs", "Reach locations");
en.put("stageEditorReachRadii1", "Reach within"); en.put("stageEditorReachRadii1", "Reach within");
@ -159,7 +158,6 @@ public class Lang {
en.put("stageEditorSetTameAmounts", "Set tame amounts"); en.put("stageEditorSetTameAmounts", "Set tame amounts");
en.put("stageEditorSetShearColors", "Set sheep colors"); en.put("stageEditorSetShearColors", "Set sheep colors");
en.put("stageEditorSetShearAmounts", "Set shear amounts"); en.put("stageEditorSetShearAmounts", "Set shear amounts");
en.put("stageEditorSetBosses", "Set Bosses");
en.put("stageEditorEnterBlockIds", "Enter block IDs, separating each one by a space, or enter \'cancel\' to return."); en.put("stageEditorEnterBlockIds", "Enter block IDs, separating each one by a space, or enter \'cancel\' to return.");
en.put("stageEditorBreakBlocksPrompt", "Enter block amounts (numbers), separating each one by a space, or enter \'cancel\' to return."); en.put("stageEditorBreakBlocksPrompt", "Enter block amounts (numbers), separating each one by a space, or enter \'cancel\' to return.");
@ -194,8 +192,6 @@ public class Lang {
en.put("stageEditorDelayPrompt", "Enter time (in milliseconds), or enter \"clear\" to clear the delay, or \"cancel\" to return"); en.put("stageEditorDelayPrompt", "Enter time (in milliseconds), or enter \"clear\" to clear the delay, or \"cancel\" to return");
en.put("stageEditorDelayMessagePrompt", "Enter delay message, or enter \"clear\" to clear the message, or \"cancel\" to return"); en.put("stageEditorDelayMessagePrompt", "Enter delay message, or enter \"clear\" to clear the message, or \"cancel\" to return");
en.put("stageEditorScriptPrompt", "Enter script name, or enter \"clear\" to clear the script, or \"cancel\" to return"); en.put("stageEditorScriptPrompt", "Enter script name, or enter \"clear\" to clear the script, or \"cancel\" to return");
en.put("stageEditorBossNamePrompt", "Enter Boss names, separating each one by a space, or \"cancel\" to return.");
en.put("stageEditorBossAmountPrompt", "Enter kill amounts (numbers), separating each one by a space, or \"cancel\" to return.");
en.put("stageEditorStartMessagePrompt", "Enter start message, or enter \"clear\" to clear the message, or \"cancel\" to return"); en.put("stageEditorStartMessagePrompt", "Enter start message, or enter \"clear\" to clear the message, or \"cancel\" to return");
en.put("stageEditorCompleteMessagePrompt", "Enter complete message, or enter \"clear\" to clear the message, or \"cancel\" to return"); en.put("stageEditorCompleteMessagePrompt", "Enter complete message, or enter \"clear\" to clear the message, or \"cancel\" to return");
@ -215,10 +211,8 @@ public class Lang {
en.put("stageEditorDuplicateEvent", "Event is already in the list!"); en.put("stageEditorDuplicateEvent", "Event is already in the list!");
en.put("stageEditorInvalidDelay", "Delay must be at least one second!"); en.put("stageEditorInvalidDelay", "Delay must be at least one second!");
en.put("stageEditorInvalidScript", "Denizen script not found!"); en.put("stageEditorInvalidScript", "Denizen script not found!");
en.put("stageEditorInvalidBoss", "Could not find Boss with the name:");
en.put("stageEditorNoCitizens", "Citizens is not installed!"); en.put("stageEditorNoCitizens", "Citizens is not installed!");
en.put("stageEditorNoEpicBoss", "EpicBoss is not installed!");
en.put("stageEditorNoDenizen", "Denizen is not installed!"); en.put("stageEditorNoDenizen", "Denizen is not installed!");
en.put("stageEditorPositiveAmount", "You must enter a positive number!"); en.put("stageEditorPositiveAmount", "You must enter a positive number!");
@ -250,7 +244,6 @@ public class Lang {
en.put("stageEditorMobTypesNotSameSize", "The mob types list and the mob amounts list are not the same size!"); en.put("stageEditorMobTypesNotSameSize", "The mob types list and the mob amounts list are not the same size!");
en.put("stageEditorTameMobsNotSameSize", "The mob types list and the tame amounts list are not the same size!"); en.put("stageEditorTameMobsNotSameSize", "The mob types list and the tame amounts list are not the same size!");
en.put("stageEditorShearNotSameSize", "The sheep colors list and the shear amounts list are not the same size!"); en.put("stageEditorShearNotSameSize", "The sheep colors list and the shear amounts list are not the same size!");
en.put("stageEditorBossesNotSameSize", "The Boss IDs list and the Boss amounts list are not the same size!");
en.put("stageEditorListContainsDuplicates", " List contains duplicates!"); en.put("stageEditorListContainsDuplicates", " List contains duplicates!");
@ -265,7 +258,6 @@ public class Lang {
en.put("stageEditorKillMobsCleared", "Kill Mobs objective cleared."); en.put("stageEditorKillMobsCleared", "Kill Mobs objective cleared.");
en.put("stageEditorTameCleared", "Tame Mobs objective cleared."); en.put("stageEditorTameCleared", "Tame Mobs objective cleared.");
en.put("stageEditorShearCleared", "Shear Sheep objective cleared."); en.put("stageEditorShearCleared", "Shear Sheep objective cleared.");
en.put("stageEditorBossesCleared", "Kill Bosses objective cleared.");
en.put("stageEditorStartMessageCleared", "Start message cleared."); en.put("stageEditorStartMessageCleared", "Start message cleared.");
en.put("stageEditorCompleteMessageCleared", "Complete message cleared."); en.put("stageEditorCompleteMessageCleared", "Complete message cleared.");
@ -277,7 +269,6 @@ public class Lang {
en.put("stageEditorNPCNote", "Note: You may specify the name of the NPC with <npc>"); en.put("stageEditorNPCNote", "Note: You may specify the name of the NPC with <npc>");
en.put("stageEditorOptional", "Optional"); en.put("stageEditorOptional", "Optional");
en.put("stageEditorColors", "Sheep Colors"); en.put("stageEditorColors", "Sheep Colors");
en.put("stageEditorBosses", "Bosses");
//Events //Events