Set start time of booster to current time when it exits queue

This commit is contained in:
Teriuihi 2023-07-09 04:04:14 +02:00
parent 95030d8163
commit 4ec85a4079
2 changed files with 9 additions and 0 deletions

View File

@ -45,6 +45,10 @@ public class Booster implements Comparable<Booster> {
duration = duration.minus(elapsedTime);
}
public void updateTimeAfterReActivate() {
startingTime = Instant.now();
}
public double useMultiplier(double exp) {
return exp * (multiplier + 1);
}

View File

@ -108,6 +108,11 @@ public class BoosterCache {
list.removeIf(filterBooster -> filterBooster.getBoosterUUID().equals(booster.getBoosterUUID()));
boosters.put(boosterType, list);
updateOrder(boosterType);
LinkedList<Booster> updatedBoosterList = boosters.get(boosterType);
if (updatedBoosterList.size() > 0) {
Booster nextBooster = updatedBoosterList.get(0);
nextBooster.updateTimeAfterReActivate();
}
boosterFileStorage.saveBoosters(boosters.values().stream().flatMap(List::stream).collect(Collectors.toList()));
}