mirror of
https://github.com/PikaMug/Quests.git
synced 2025-02-06 23:51:20 +01:00
Finished Stage time delay
Remove system prints
This commit is contained in:
parent
028e33f7cf
commit
bcf8cee6fe
@ -101,6 +101,8 @@ public class Quester {
|
||||
|
||||
public LinkedList<String> getObjectives() {
|
||||
|
||||
if(delayStartTime == 0){
|
||||
|
||||
LinkedList<String> unfinishedObjectives = new LinkedList<String>();
|
||||
LinkedList<String> finishedObjectives = new LinkedList<String>();
|
||||
LinkedList<String> objectives = new LinkedList<String>();
|
||||
@ -491,6 +493,32 @@ public class Quester {
|
||||
|
||||
return objectives;
|
||||
|
||||
}else{
|
||||
|
||||
long time;
|
||||
if(delayTimeLeft > -1)
|
||||
time = delayTimeLeft - (System.currentTimeMillis() - delayStartTime);
|
||||
else
|
||||
time = currentStage.delay - (System.currentTimeMillis() - delayStartTime);
|
||||
|
||||
LinkedList<String> obj = new LinkedList<String>();
|
||||
String s;
|
||||
|
||||
if(currentStage.delayMessage != null){
|
||||
|
||||
s = currentStage.delayMessage;
|
||||
|
||||
s = plugin.parseString(s, currentQuest);
|
||||
s = s.replaceAll("<time>", Quests.getTime(time));
|
||||
|
||||
}else
|
||||
s = ChatColor.YELLOW + "Wait " + ChatColor.DARK_PURPLE + Quests.getTime(time) + ChatColor.YELLOW + ".";
|
||||
|
||||
obj.add(s);
|
||||
return obj;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public boolean hasObjective(String s) {
|
||||
@ -2571,11 +2599,14 @@ public class Quester {
|
||||
|
||||
public void startStageTimer(){
|
||||
|
||||
if(delayTimeLeft > -1)
|
||||
plugin.getServer().getScheduler().scheduleSyncDelayedTask(plugin, new StageTimer(plugin, this), delayTimeLeft*50);
|
||||
else
|
||||
plugin.getServer().getScheduler().scheduleSyncDelayedTask(plugin, new StageTimer(plugin, this), currentStage.delay);
|
||||
|
||||
if(delayTimeLeft > -1){
|
||||
System.out.println("Starting a new timer.");
|
||||
plugin.getServer().getScheduler().scheduleSyncDelayedTask(plugin, new StageTimer(plugin, this), delayTimeLeft/50);
|
||||
}else{
|
||||
System.out.println("Resuming timer.");
|
||||
System.out.println("Delay: " + currentStage.delay/50 + " ticks. (" + (currentStage.delay/1000) + " seconds)");
|
||||
plugin.getServer().getScheduler().scheduleSyncDelayedTask(plugin, new StageTimer(plugin, this), currentStage.delay/50);
|
||||
}
|
||||
delayStartTime = System.currentTimeMillis();
|
||||
|
||||
}
|
||||
|
@ -295,6 +295,7 @@ public class Quests extends JavaPlugin implements ConversationAbandonedListener
|
||||
|
||||
if (getQuester(cs.getName()).currentQuest != null) {
|
||||
|
||||
if(getQuester(cs.getName()).delayStartTime == 0)
|
||||
cs.sendMessage(ChatColor.GOLD + "---(Objectives)---");
|
||||
|
||||
for (String s : getQuester(cs.getName()).getObjectives()) {
|
||||
|
@ -88,7 +88,7 @@ public class Stage {
|
||||
String script;
|
||||
Event event;
|
||||
long delay = -1;
|
||||
String delayMessage = "";
|
||||
String delayMessage = null;
|
||||
|
||||
@Override
|
||||
public boolean equals(Object o) {
|
||||
@ -238,8 +238,15 @@ public class Stage {
|
||||
if(other.delay != delay)
|
||||
return false;
|
||||
|
||||
if(other.delayMessage.equalsIgnoreCase(delayMessage) == false)
|
||||
if (other.delayMessage != null && delayMessage != null) {
|
||||
if (other.delayMessage.equals(delayMessage) == false) {
|
||||
return false;
|
||||
}
|
||||
} else if (other.delayMessage != null && delayMessage == null) {
|
||||
return false;
|
||||
} else if (other.delayMessage == null && delayMessage != null) {
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
@ -18,12 +18,15 @@ public class StageTimer implements Runnable{
|
||||
@Override
|
||||
public void run(){
|
||||
|
||||
System.out.println("Running.");
|
||||
if(quester.delayOver){
|
||||
|
||||
System.out.println("Delay is over.");
|
||||
Player player = plugin.getServer().getPlayerExact(quester.name);
|
||||
|
||||
if(quester.currentQuest.stages.indexOf(quester.currentStage) == (quester.currentQuest.stages.size() - 1)){
|
||||
|
||||
System.out.println("Quester is finished Quest.");
|
||||
if(quester.currentStage.script != null)
|
||||
plugin.trigger.parseQuestTaskTrigger(quester.currentStage.script, player);
|
||||
if(quester.currentStage.event != null)
|
||||
@ -33,6 +36,7 @@ public class StageTimer implements Runnable{
|
||||
|
||||
}else {
|
||||
|
||||
System.out.println("Quester is not finished Quest.");
|
||||
quester.reset();
|
||||
player.sendMessage(plugin.parseString(quester.currentStage.finished, quester.currentQuest));
|
||||
if(quester.currentStage.script != null)
|
||||
@ -41,6 +45,8 @@ public class StageTimer implements Runnable{
|
||||
quester.currentStage.event.happen(player);
|
||||
quester.currentStage = quester.currentQuest.stages.get(quester.currentQuest.stages.indexOf(quester.currentStage) + 1);
|
||||
quester.addEmpties();
|
||||
quester.delayStartTime = 0;
|
||||
quester.delayTimeLeft = -1;
|
||||
|
||||
player.sendMessage(ChatColor.GOLD + "---(Objectives)---");
|
||||
for(String s : quester.getObjectives()){
|
||||
@ -51,8 +57,7 @@ public class StageTimer implements Runnable{
|
||||
|
||||
}
|
||||
|
||||
quester.delayStartTime = 0;
|
||||
quester.delayTimeLeft = -1;
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user