Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package fr.futurixel.zencore;
- import java.util.ArrayList;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Map;
- import org.bukkit.Bukkit;
- import org.bukkit.command.Command;
- import org.bukkit.command.CommandExecutor;
- import org.bukkit.command.CommandSender;
- import org.bukkit.entity.Player;
- public class FlyTimer implements CommandExecutor {
- private zencore main;
- public int task;
- public Map<Player,Integer> tasks = new HashMap<Player,Integer>();
- public Map<Player,Integer> map = new HashMap<Player,Integer>();
- public List<Player> timeruse = new ArrayList<>();
- public List<Player> timerused = new ArrayList<>();
- public List<Player> timerpause = new ArrayList<>();
- public FlyTimer(zencore zencore) {
- this.main = zencore;
- }
- @Override
- public boolean onCommand(CommandSender sender, Command cmd, String msg, String[] args) {
- Player p = (Player) sender;
- if(timerused.contains(p)){
- p.sendMessage("§cVous avez déjà utiliser votre crédit de Fly aujourd'hui ! \nLes crédits sont reset tout les jours à 4h30 du matin !");
- return true;
- }else if(!timerpause.contains(p) && timeruse.contains(p)){
- timerpause.add(p);
- map.put(p, map.get(p));
- Bukkit.getScheduler().cancelTask(tasks.get(p));
- p.sendMessage("§aFly mis en pause ! Il vous reste §e" + map.get(p) + "s §fde temps de crédit");
- p.setAllowFlight(false);
- p.setFlying(false);
- main.title.sendTitle(p, "", "§cFly mis en pause", 20);
- return true;
- }
- main.title.sendTitle(p, "", "§aFly activé", 20);
- timeruse.add(p);
- if(timerpause.contains(p)){
- timerpause.remove(p);
- map.put(p, map.get(p));
- }else if(!timerpause.contains(p)){ map.put(p, 20); }
- tasks.put(p, Bukkit.getScheduler().scheduleSyncRepeatingTask(main, new Runnable() {
- @Override
- public void run() {
- if (map.get(p) > 0) {
- map.put(p, map.get(p)-1) ;
- String timer = String.valueOf(map.get(p));
- main.title.sendActionBar(p, "§9Temps restant de fly: §e"+ timer + "s");
- p.setAllowFlight(true);
- }
- if (map.get(p) == 0) {
- Bukkit.getScheduler().cancelTask(tasks.get(p));
- p.setAllowFlight(false);
- p.setFlying(false);
- main.title.sendTitle(p, "", "§cFly terminé", 20);
- timeruse.remove(p);
- timerused.add(p);
- }
- }
- }, 20, 20));
- return false;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement