Advertisement
Guest User

Untitled

a guest
Jun 14th, 2017
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.67 KB | None | 0 0
  1. package me.Ruud.Apocalypse;
  2.  
  3. import org.bukkit.Bukkit;
  4. import org.bukkit.ChatColor;
  5. import org.bukkit.Location;
  6. import org.bukkit.Material;
  7. import org.bukkit.entity.Player;
  8. import org.bukkit.event.EventHandler;
  9. import org.bukkit.event.Listener;
  10. import org.bukkit.event.player.PlayerMoveEvent;
  11. import org.bukkit.plugin.Plugin;
  12. import org.bukkit.plugin.java.JavaPlugin;
  13. import org.bukkit.scheduler.BukkitRunnable;
  14. import org.bukkit.scheduler.BukkitTask;
  15.  
  16. import java.util.HashMap;
  17. import java.util.Iterator;
  18. import java.util.Map;
  19.  
  20. /**
  21.  * @author Ruud.
  22.  */
  23. public class Apocalypse extends JavaPlugin implements Listener{
  24.  
  25.     public static HashMap<Player, String> blockAbovePlayerStatus = new HashMap<>();
  26.  
  27.     Plugin plugin = this;
  28.  
  29.     @Override
  30.     public void onEnable() {
  31.         getServer().getPluginManager().registerEvents(this, this);
  32.         Bukkit.getScheduler().scheduleSyncRepeatingTask(this, new Runnable() {
  33.             @Override
  34.             public void run() {
  35.                 Iterator it = blockAbovePlayerStatus.entrySet().iterator();
  36.                 while(it.hasNext()) {
  37.                     Map.Entry pair = (Map.Entry)it.next();
  38.                     Player player = (Player) pair.getKey();
  39.                     player.sendMessage(player.getFireTicks() + "");
  40.                     player.sendMessage(blockAbovePlayerStatus.get(player));
  41.                     new BukkitRunnable() {
  42.                         public void run() {
  43.                             if (blockAbovePlayerStatus.get(player).equals("Moved from block")) {
  44.                                 if (blockAbovePlayerStatus.get(player).equals("Under block"))
  45.                                     cancel();
  46.                                 new BukkitRunnable() {
  47.                                     public void run() {
  48.                                         if (blockAbovePlayerStatus.get(player).equals("Moved from block")) {
  49.                                             blockAbovePlayerStatus.put(player, "In open");
  50.                                             cancel();
  51.                                         } else
  52.                                             cancel();
  53.                                     }
  54.                                 }.runTaskLater(plugin, 100);
  55.                             }
  56.                         }
  57.                     }.runTask(plugin);
  58.                     if (blockAbovePlayerStatus.get(player).equals("In open")) {
  59.                         if (player.getFireTicks() < 0) {
  60.                             player.setFireTicks(40);
  61.                         }
  62.                     }
  63.                 }
  64.             }
  65.         }, 0, 1);
  66.     }
  67.  
  68.     @Override
  69.     public void onDisable() {
  70.  
  71.     }
  72.  
  73.     @EventHandler
  74.     public void onMove(PlayerMoveEvent e) {
  75.         Player player = e.getPlayer();
  76.         Location location = player.getLocation();
  77.         int highestBlockY = player.getWorld().getHighestBlockYAt(location);
  78.         if (!blockAbovePlayerStatus.containsKey(player))
  79.             if ((int)(player.getLocation().getY() + 2) < highestBlockY)
  80.                 blockAbovePlayerStatus.put(player, "Under block");
  81.             else
  82.                 blockAbovePlayerStatus.put(player, "In open");
  83.         if ((int)(player.getLocation().getY() + 2) < highestBlockY && blockAbovePlayerStatus.get(player).equals("In open"))
  84.             blockAbovePlayerStatus.put(player, "Moved under block");
  85.         else if ((int)(player.getLocation().getY() + 2) < highestBlockY)
  86.             blockAbovePlayerStatus.put(player, "Under block");
  87.         else if (blockAbovePlayerStatus.get(player).equals("Under block"))
  88.             blockAbovePlayerStatus.put(player, "Moved from block");
  89.     }
  90.  
  91. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement