MinecraftManagerPlugin/src/main/java/xyz/etztech/minecraftmanager/objects/OreAlert.java

41 lines
1.1 KiB
Java

package xyz.etztech.minecraftmanager.objects;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.UUID;
public class OreAlert {
private HashMap<UUID, ArrayList<Date>> players;
public HashMap<UUID, ArrayList<Date>> getPlayers() {
return players;
}
public void setPlayers(HashMap<UUID, ArrayList<Date>> players) {
this.players = players;
}
public void addStrike(UUID uuid) {
ArrayList<Date> strikes = players.getOrDefault(uuid, new ArrayList<>());
strikes.add(new Date());
players.put(uuid, strikes);
}
public int getStrikes(UUID uuid) {
return players.getOrDefault(uuid, new ArrayList<>()).size();
}
public void purge(UUID uuid, int purge) {
Date cutoff = new Date();
// Cutoff to minutes, subtract purge, back to milliseconds
cutoff.setTime(((cutoff.getTime()/1000/60) - purge)*60*1000);
ArrayList<Date> purged = players.getOrDefault(uuid, new ArrayList<>());
purged.removeIf(date -> date.before(cutoff));
players.put(uuid, purged);
}
}