Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package ru.hyndo.cooldownsystem;
- import java.util.ArrayList;
- import java.util.UUID;
- public class CoolDownManager {
- ArrayList<CoolDown> cooldowns = new ArrayList<>();
- private static CoolDownManager manager = new CoolDownManager();
- public static CoolDownManager getManager(){
- return manager;
- }
- public void createCoolDown(UUID uuid, String cmd, long timeStart, long coolDownTime){
- CoolDown cd = new CoolDown(uuid, cmd, timeStart, coolDownTime);
- cooldowns.add(cd);
- }
- public boolean hasPlayerCoolDown(UUID uuid, String cmd){
- for(CoolDown cd : cooldowns){
- if(cd.getUUID().equals(uuid) && cd.getCommand().equals(cmd)) return true;
- }
- return false;
- }
- public boolean hasCoolDownPassed(UUID uuid, String cmd){
- for(CoolDown cd : cooldowns){
- if(cd.getUUID().equals(uuid) && cd.getCommand().equals(cmd)){
- if(System.currentTimeMillis() > (cd.getTimeStart() + cd.getCoolDownTime())) return true;
- }
- }
- return false;
- }
- public int howManySecondsLeft(UUID uuid, String cmd){
- for(CoolDown cd : cooldowns){
- if(cd.getUUID().equals(uuid) && cd.getCommand().equals(cmd)) {
- return (int) ((cd.getCoolDownTime() + cd.getTimeStart()) - System.currentTimeMillis());
- }
- }
- return 0;
- }
- public CoolDown getCoolDown(UUID uuid, String cmd){
- for(CoolDown cd : cooldowns){
- if(cd.getUUID().equals(uuid) && cd.getCommand().equals(cmd)) return cd;
- }
- return null;
- }
- public void removeCoolDown(CoolDown cd){
- cooldowns.remove(cd);
- }
- public void removeCoolDown(UUID uuid, String cmd){
- cooldowns.remove(CoolDownManager.getManager().getCoolDown(uuid, cmd));
- }
- }
Add Comment
Please, Sign In to add comment