Advertisement
Guest User

Bukkit | Player HashMap

a guest
Dec 14th, 2014
314
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.69 KB | None | 0 0
  1. import java.util.HashMap;
  2.  
  3. import org.bukkit.Bukkit;
  4. import org.bukkit.entity.Player;
  5. import org.bukkit.event.EventHandler;
  6. import org.bukkit.event.Listener;
  7. import org.bukkit.event.player.PlayerJoinEvent;
  8. import org.bukkit.scheduler.BukkitRunnable;
  9.  
  10. public class JoinListener implements Listener{
  11.    
  12.     private Main plugin;
  13.    
  14.     private HashMap<Player, Integer> tasks = new HashMap<>();
  15.     private HashMap<Player, Integer> tasks1 = new HashMap<>();
  16.  
  17.     public JoinListener(Main main) {
  18.         this.plugin = main;
  19.     }
  20.    
  21.     @EventHandler
  22.     public void onJoin(PlayerJoinEvent e){
  23.         Player p = e.getPlayer();
  24.         e.setJoinMessage("§b" + p.getName() + " §3hat den Server betreten und ist in §e30 §3Sekunden angreifbar");
  25.        
  26.         Join(p);
  27.     }
  28.     @SuppressWarnings("deprecation")
  29.     public void Join(final Player p){
  30.    
  31.  
  32.         this.tasks.put(p, Bukkit.getScheduler().scheduleSyncRepeatingTask(plugin, new BukkitRunnable() {
  33.            
  34.            public void run() {
  35.                 if(plugin.JoinTime == 25 ||
  36.                         plugin.JoinTime == 20 ||
  37.                         plugin.JoinTime == 15 ||
  38.                         plugin.JoinTime == 10 ||
  39.                         plugin.JoinTime == 5 ||
  40.                         plugin.JoinTime == 4 ||
  41.                         plugin.JoinTime == 3 ||
  42.                         plugin.JoinTime == 2 ||
  43.                         plugin.JoinTime == 1 ){      
  44.                    
  45.               Bukkit.broadcastMessage("§b" + p.getName() + " §3ist in §e" + plugin.JoinTime + "§3 " + (plugin.JoinTime == 1 ? "Sekunde" : "Sekunden") +  " angreifbar");
  46.  
  47.                 }
  48.                 if(plugin.JoinTime <= 0){
  49.                       Bukkit.getScheduler().cancelTask(tasks.get(p.getName()));
  50.                       tasks.remove(p.getName());
  51.                       p.sendMessage("§cDu bist nun verwundbar!");
  52.                       return;
  53.                 }
  54.            
  55.                 plugin.JoinTime--;
  56.            }
  57.         }, 0L, 20L));
  58.        
  59.    
  60.         this.tasks1.put(p, Bukkit.getScheduler().scheduleSyncRepeatingTask(plugin, new BukkitRunnable() {
  61.            
  62.             @Override
  63.             public void run() {
  64.                 if(plugin.StayTime == 15 ||
  65.                         plugin.StayTime == 14 ||
  66.                         plugin.StayTime == 13 ||
  67.                         plugin.StayTime == 12 ||
  68.                         plugin.StayTime == 11 ||
  69.                         plugin.StayTime == 10 ||
  70.                         plugin.StayTime == 5 ||
  71.                         plugin.StayTime == 4 ||
  72.                         plugin.StayTime == 3 ||
  73.                         plugin.StayTime == 2 ||
  74.                         plugin.StayTime == 1 ){
  75.                        
  76.                     Bukkit.broadcastMessage("§b" + p.getName() + " §3wird in §e " + plugin.StayTime + " §3Sekunden gekickt");
  77.                       Bukkit.getScheduler().cancelTask(tasks1.get(p.getName()));
  78.                       tasks1.remove(p.getName());
  79.                       return;
  80.                    
  81.                 }
  82.                 if(plugin.StayTime <= 0){
  83.                     p.kickPlayer("§4Deine Zeit ist aufgebraucht. §cDu wurdest deshalb gekickt.");
  84.                 }
  85.                 plugin.StayTime--;
  86.             }
  87.            
  88.         }, 0L, 20L));
  89.        
  90.    
  91.     }
  92.    
  93. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement