Advertisement
Guest User

Untitled

a guest
Aug 23rd, 2017
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.90 KB | None | 0 0
  1. package fr.venusiamc.traque.commands;
  2.  
  3. import java.util.ArrayList;
  4. import java.util.List;
  5. import java.util.Random;
  6.  
  7. import org.bukkit.Bukkit;
  8. import org.bukkit.command.Command;
  9. import org.bukkit.command.CommandExecutor;
  10. import org.bukkit.command.CommandSender;
  11. import org.bukkit.entity.Player;
  12. import org.bukkit.inventory.ItemStack;
  13.  
  14. import fr.venusiamc.traque.VenusiaTraque;
  15. import fr.venusiamc.traque.events.PlayerKillEvents;
  16. import fr.venusiamc.traque.utils.ItemStackList;
  17.  
  18. public class TraqueCMD implements CommandExecutor {
  19.    
  20.     PlayerKillEvents pkevents;
  21.    
  22.     private static VenusiaTraque vtraque = VenusiaTraque.getInstance();
  23.    
  24.     private long cooldownTime = 5*60*60*1000L;
  25.    
  26.     List<Player> onlinePlayers = new ArrayList<>(Bukkit.getOnlinePlayers());
  27.    
  28.     @Override
  29.     public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
  30.        
  31.             Player p = (Player) sender;
  32.  
  33.             String random = onlinePlayers.get(new Random().nextInt(onlinePlayers.size())).getName();  
  34.            
  35.             ItemStack paper = ItemStackList.getPaper(random);
  36.            
  37.             if(random == p.getName()){
  38.                
  39.                 return false;
  40.                
  41.             }
  42.            
  43.             if(Bukkit.getOnlinePlayers().size() < 2){
  44.                
  45.                 p.sendMessage("§cIl n'a pas assez de joueurs connectés pour pouvoir utiliser cette commande !");
  46.                
  47.             } else if(sender instanceof Player){
  48.                
  49.                 p.getInventory().addItem(paper);
  50.                 vtraque.playerTarget.put(p, Bukkit.getPlayer(random));
  51.                 p.sendMessage("§f§m--------------------------------------------");
  52.                 p.sendMessage(" ");
  53.                 p.sendMessage("§cSuivez§c§l " + random + "§c jusqu'à sa§c§l mort !");
  54.                 p.sendMessage("§eCette commande est disponible tout les§e§l 5 heures !");
  55.                 p.sendMessage(" ");
  56.                 p.sendMessage("§f§m--------------------------------------------");
  57.                
  58.             }
  59.            
  60.             if(!vtraque.commandCooldown.containsKey(p.getName())){
  61.  
  62.                 executeCommand(p);
  63.                
  64.             } else if((vtraque.commandCooldown.get(p.getName()) + cooldownTime) >= System.currentTimeMillis()){
  65.  
  66.                 vtraque.commandCooldown.remove(p.getName());
  67.                
  68.                 executeCommand(p);
  69.                
  70.             } else {
  71.  
  72.                 long timeRemaining = (vtraque.commandCooldown.get(p.getName()) + cooldownTime) - System.currentTimeMillis();
  73.                
  74.                 long seconds = (timeRemaining / 1000) % 60;
  75.                 long minutes = (timeRemaining / (1000*60)) % 60;
  76.                 long hours = (timeRemaining / (1000*60*60)) % 24;
  77.      
  78.                 p.sendMessage("§cIl reste " + String.format("%02dh%02dm%02ds", hours, minutes, seconds) + " avant que tu puisses refaire la commande");
  79.             }
  80.             return true;
  81.         }
  82.      
  83.         public void executeCommand(Player p){
  84.            
  85.             vtraque.commandCooldown.put(p.getName(), System.currentTimeMillis());
  86.    
  87.     }
  88. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement