Use TimeUnit for time calculations
This commit is contained in:
@@ -38,6 +38,9 @@ import tools.StringUtil;
|
||||
import java.util.*;
|
||||
import java.util.Map.Entry;
|
||||
|
||||
import static java.util.concurrent.TimeUnit.HOURS;
|
||||
import static java.util.concurrent.TimeUnit.SECONDS;
|
||||
|
||||
/**
|
||||
* @author Matze
|
||||
* @author Ronan - support for medal quests
|
||||
@@ -204,7 +207,7 @@ public class Quest {
|
||||
}
|
||||
|
||||
IntervalRequirement ir = (IntervalRequirement) startReqs.get(QuestRequirementType.INTERVAL);
|
||||
return ir.getInterval() < YamlConfig.config.server.QUEST_POINT_REPEATABLE_INTERVAL * 60 * 60 * 1000;
|
||||
return ir.getInterval() < HOURS.toMillis(YamlConfig.config.server.QUEST_POINT_REPEATABLE_INTERVAL);
|
||||
}
|
||||
|
||||
public boolean canStartQuestByStatus(Character chr) {
|
||||
@@ -343,7 +346,7 @@ public class Quest {
|
||||
newStatus.setCompleted(chr.getQuest(this).getCompleted());
|
||||
|
||||
if (timeLimit > 0) {
|
||||
newStatus.setExpirationTime(System.currentTimeMillis() + (timeLimit * 1000));
|
||||
newStatus.setExpirationTime(System.currentTimeMillis() + SECONDS.toMillis(timeLimit));
|
||||
chr.questTimeLimit(this, timeLimit);
|
||||
}
|
||||
if (timeLimit2 > 0) {
|
||||
|
||||
@@ -42,6 +42,8 @@ import java.util.Collections;
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
|
||||
import static java.util.concurrent.TimeUnit.MINUTES;
|
||||
|
||||
/**
|
||||
* @author Tyler (Twdtwd)
|
||||
* @author Ronan
|
||||
@@ -152,7 +154,7 @@ public class ItemAction extends AbstractQuestAction {
|
||||
for (ItemData iEntry : giveItem) {
|
||||
int itemid = iEntry.getId(), count = iEntry.getCount(), period = iEntry.getPeriod(); // thanks Vcoc for noticing quest milestone item not getting removed from inventory after a while
|
||||
|
||||
InventoryManipulator.addById(chr.getClient(), itemid, (short) count, "", -1, period > 0 ? (System.currentTimeMillis() + period * 60 * 1000) : -1);
|
||||
InventoryManipulator.addById(chr.getClient(), itemid, (short) count, "", -1, period > 0 ? (System.currentTimeMillis() + MINUTES.toMillis(period)) : -1);
|
||||
chr.sendPacket(PacketCreator.getShowItemGain(itemid, (short) count, true));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -28,11 +28,14 @@ import provider.DataTool;
|
||||
import server.quest.Quest;
|
||||
import server.quest.QuestRequirementType;
|
||||
|
||||
import static java.util.concurrent.TimeUnit.HOURS;
|
||||
import static java.util.concurrent.TimeUnit.MINUTES;
|
||||
|
||||
/**
|
||||
* @author Tyler (Twdtwd)
|
||||
*/
|
||||
public class IntervalRequirement extends AbstractQuestRequirement {
|
||||
private int interval = -1;
|
||||
private long interval = -1;
|
||||
private final int questID;
|
||||
|
||||
public IntervalRequirement(Quest quest, Data data) {
|
||||
@@ -41,13 +44,13 @@ public class IntervalRequirement extends AbstractQuestRequirement {
|
||||
processData(data);
|
||||
}
|
||||
|
||||
public int getInterval() {
|
||||
public long getInterval() {
|
||||
return interval;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void processData(Data data) {
|
||||
interval = DataTool.getInt(data) * 60 * 1000;
|
||||
interval = MINUTES.toMillis(DataTool.getInt(data));
|
||||
}
|
||||
|
||||
private static String getIntervalTimeLeft(Character chr, IntervalRequirement r) {
|
||||
@@ -57,21 +60,21 @@ public class IntervalRequirement extends AbstractQuestRequirement {
|
||||
long leftTime = futureTime - System.currentTimeMillis();
|
||||
|
||||
byte mode = 0;
|
||||
if (leftTime / (60 * 1000) > 0) {
|
||||
if (leftTime / MINUTES.toMillis(1) > 0) {
|
||||
mode++; //counts minutes
|
||||
|
||||
if (leftTime / (60 * 60 * 1000) > 0) {
|
||||
if (leftTime / HOURS.toMillis(1) > 0) {
|
||||
mode++; //counts hours
|
||||
}
|
||||
}
|
||||
|
||||
switch (mode) {
|
||||
case 2:
|
||||
int hours = (int) ((leftTime / (1000 * 60 * 60)));
|
||||
int hours = (int) ((leftTime / HOURS.toMillis(1)));
|
||||
str.append(hours + " hours, ");
|
||||
|
||||
case 1:
|
||||
int minutes = (int) ((leftTime / (1000 * 60)) % 60);
|
||||
int minutes = (int) ((leftTime / MINUTES.toMillis(1)) % 60);
|
||||
str.append(minutes + " minutes, ");
|
||||
|
||||
default:
|
||||
|
||||
Reference in New Issue
Block a user