mirror of
https://github.com/PikaMug/Quests.git
synced 2025-02-19 14:01:22 +01:00
Skip condition notice if objective override exists
This commit is contained in:
parent
3d82e95beb
commit
e68a8858e8
@ -21,6 +21,7 @@ import com.gmail.nossr50.datatypes.skills.SkillType;
|
|||||||
import com.gmail.nossr50.util.player.UserManager;
|
import com.gmail.nossr50.util.player.UserManager;
|
||||||
import com.herocraftonline.heroes.characters.Hero;
|
import com.herocraftonline.heroes.characters.Hero;
|
||||||
import me.blackvein.quests.actions.Action;
|
import me.blackvein.quests.actions.Action;
|
||||||
|
import me.blackvein.quests.conditions.Condition;
|
||||||
import me.blackvein.quests.events.quest.QuestUpdateCompassEvent;
|
import me.blackvein.quests.events.quest.QuestUpdateCompassEvent;
|
||||||
import me.blackvein.quests.events.quester.QuesterPostChangeStageEvent;
|
import me.blackvein.quests.events.quester.QuesterPostChangeStageEvent;
|
||||||
import me.blackvein.quests.events.quester.QuesterPostCompleteQuestEvent;
|
import me.blackvein.quests.events.quester.QuesterPostCompleteQuestEvent;
|
||||||
@ -32,8 +33,10 @@ import me.blackvein.quests.util.ConfigUtil;
|
|||||||
import me.blackvein.quests.util.InventoryUtil;
|
import me.blackvein.quests.util.InventoryUtil;
|
||||||
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.MiscUtil;
|
||||||
import me.blackvein.quests.util.RomanNumeral;
|
import me.blackvein.quests.util.RomanNumeral;
|
||||||
import me.clip.placeholderapi.PlaceholderAPI;
|
import me.clip.placeholderapi.PlaceholderAPI;
|
||||||
|
import net.citizensnpcs.api.CitizensAPI;
|
||||||
import net.citizensnpcs.api.npc.NPC;
|
import net.citizensnpcs.api.npc.NPC;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.ChatColor;
|
import org.bukkit.ChatColor;
|
||||||
@ -265,13 +268,79 @@ public class Quest implements Comparable<Quest> {
|
|||||||
updateCompass(quester, nextStage);
|
updateCompass(quester, nextStage);
|
||||||
if (player.isOnline()) {
|
if (player.isOnline()) {
|
||||||
final Player p = quester.getPlayer();
|
final Player p = quester.getPlayer();
|
||||||
final String msg = Lang.get(p, "objectives").replace("<quest>", name);
|
final String title = Lang.get(p, "objectives").replace("<quest>", name);
|
||||||
quester.sendMessage(ChatColor.GOLD + msg);
|
quester.sendMessage(ChatColor.GOLD + title);
|
||||||
plugin.showObjectives(this, quester, false);
|
plugin.showObjectives(this, quester, false);
|
||||||
final String stageStartMessage = quester.getCurrentStage(this).startMessage;
|
final String stageStartMessage = quester.getCurrentStage(this).startMessage;
|
||||||
if (stageStartMessage != null) {
|
if (stageStartMessage != null) {
|
||||||
p.sendMessage(ConfigUtil.parseStringWithPossibleLineBreaks(stageStartMessage, this, p));
|
p.sendMessage(ConfigUtil.parseStringWithPossibleLineBreaks(stageStartMessage, this, p));
|
||||||
}
|
}
|
||||||
|
final Condition c = nextStage.getCondition();
|
||||||
|
if (c != null && nextStage.getObjectiveOverrides().isEmpty()) {
|
||||||
|
p.sendMessage(ChatColor.LIGHT_PURPLE + Lang.get("stageEditorConditions"));
|
||||||
|
if (!c.getEntitiesWhileRiding().isEmpty()) {
|
||||||
|
final StringBuilder msg = new StringBuilder("- " + Lang.get("conditionEditorRideEntity"));
|
||||||
|
for (final String e : c.getEntitiesWhileRiding()) {
|
||||||
|
msg.append(ChatColor.AQUA).append("\n \u2515 ").append(e);
|
||||||
|
}
|
||||||
|
p.sendMessage(ChatColor.YELLOW + msg.toString());
|
||||||
|
} else if (!c.getNpcsWhileRiding().isEmpty()) {
|
||||||
|
final StringBuilder msg = new StringBuilder("- " + Lang.get("conditionEditorRideNPC"));
|
||||||
|
for (final int i : c.getNpcsWhileRiding()) {
|
||||||
|
if (plugin.getDependencies().getCitizens() != null) {
|
||||||
|
msg.append(ChatColor.AQUA).append("\n \u2515 ").append(CitizensAPI.getNPCRegistry()
|
||||||
|
.getById(i).getName());
|
||||||
|
} else {
|
||||||
|
msg.append(ChatColor.AQUA).append("\n \u2515 ").append(i);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
p.sendMessage(ChatColor.YELLOW + msg.toString());
|
||||||
|
} else if (!c.getPermissions().isEmpty()) {
|
||||||
|
final StringBuilder msg = new StringBuilder("- " + Lang.get("conditionEditorPermissions"));
|
||||||
|
for (final String e : c.getPermissions()) {
|
||||||
|
msg.append(ChatColor.AQUA).append("\n \u2515 ").append(e);
|
||||||
|
}
|
||||||
|
p.sendMessage(ChatColor.YELLOW + msg.toString());
|
||||||
|
} else if (!c.getItemsWhileHoldingMainHand().isEmpty()) {
|
||||||
|
final StringBuilder msg = new StringBuilder("- " + Lang.get("conditionEditorItemsInMainHand"));
|
||||||
|
for (final ItemStack is : c.getItemsWhileHoldingMainHand()) {
|
||||||
|
msg.append(ChatColor.AQUA).append("\n \u2515 ").append(ItemUtil.getPrettyItemName(is
|
||||||
|
.getType().name()));
|
||||||
|
}
|
||||||
|
p.sendMessage(ChatColor.YELLOW + msg.toString());
|
||||||
|
} else if (!c.getWorldsWhileStayingWithin().isEmpty()) {
|
||||||
|
final StringBuilder msg = new StringBuilder("- " + Lang.get("conditionEditorStayWithinWorld"));
|
||||||
|
for (final String w : c.getWorldsWhileStayingWithin()) {
|
||||||
|
msg.append(ChatColor.AQUA).append("\n \u2515 ").append(w);
|
||||||
|
}
|
||||||
|
p.sendMessage(ChatColor.YELLOW + msg.toString());
|
||||||
|
} else if (!c.getBiomesWhileStayingWithin().isEmpty()) {
|
||||||
|
final StringBuilder msg = new StringBuilder("- " + Lang.get("conditionEditorStayWithinBiome"));
|
||||||
|
for (final String b : c.getBiomesWhileStayingWithin()) {
|
||||||
|
msg.append(ChatColor.AQUA).append("\n \u2515 ").append(MiscUtil
|
||||||
|
.snakeCaseToUpperCamelCase(b));
|
||||||
|
}
|
||||||
|
p.sendMessage(ChatColor.YELLOW + msg.toString());
|
||||||
|
} else if (!c.getRegionsWhileStayingWithin().isEmpty()) {
|
||||||
|
final StringBuilder msg = new StringBuilder("- " + Lang.get("conditionEditorStayWithinRegion"));
|
||||||
|
for (final String r : c.getRegionsWhileStayingWithin()) {
|
||||||
|
msg.append(ChatColor.AQUA).append("\n \u2515 ").append(r);
|
||||||
|
}
|
||||||
|
p.sendMessage(ChatColor.YELLOW + msg.toString());
|
||||||
|
} else if (!c.getPlaceholdersCheckIdentifier().isEmpty()) {
|
||||||
|
final StringBuilder msg = new StringBuilder("- " + Lang.get("conditionEditorCheckPlaceholder"));
|
||||||
|
int index = 0;
|
||||||
|
for (final String r : c.getPlaceholdersCheckIdentifier()) {
|
||||||
|
if (c.getPlaceholdersCheckValue().size() > index) {
|
||||||
|
msg.append(ChatColor.AQUA).append("\n \u2515 ").append(r).append(ChatColor.GRAY)
|
||||||
|
.append(" = ").append(ChatColor.AQUA).append(c.getPlaceholdersCheckValue()
|
||||||
|
.get(index));
|
||||||
|
}
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
p.sendMessage(ChatColor.YELLOW + msg.toString());
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
quester.updateJournal();
|
quester.updateJournal();
|
||||||
if (player.isOnline()) {
|
if (player.isOnline()) {
|
||||||
|
@ -579,7 +579,7 @@ public class Quester implements Comparable<Quester> {
|
|||||||
p.sendMessage(ConfigUtil.parseStringWithPossibleLineBreaks(stageStartMessage, quest, getPlayer()));
|
p.sendMessage(ConfigUtil.parseStringWithPossibleLineBreaks(stageStartMessage, quest, getPlayer()));
|
||||||
}
|
}
|
||||||
final Condition c = stage.getCondition();
|
final Condition c = stage.getCondition();
|
||||||
if (c != null) {
|
if (c != null && stage.getObjectiveOverrides().isEmpty()) {
|
||||||
sendMessage(ChatColor.LIGHT_PURPLE + Lang.get("stageEditorConditions"));
|
sendMessage(ChatColor.LIGHT_PURPLE + Lang.get("stageEditorConditions"));
|
||||||
if (!c.getEntitiesWhileRiding().isEmpty()) {
|
if (!c.getEntitiesWhileRiding().isEmpty()) {
|
||||||
final StringBuilder msg = new StringBuilder("- " + Lang.get("conditionEditorRideEntity"));
|
final StringBuilder msg = new StringBuilder("- " + Lang.get("conditionEditorRideEntity"));
|
||||||
|
Loading…
Reference in New Issue
Block a user