Advertisement
TechManDylan

MorbidMarshes

May 11th, 2012
151
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. package me.TechManDylan.bukkit.MorbidMarshes;
  2.  
  3. import org.bukkit.Bukkit;
  4. import org.bukkit.ChatColor;
  5. import org.bukkit.Location;
  6. import org.bukkit.block.Biome;
  7. import org.bukkit.block.Block;
  8. import org.bukkit.entity.Player;
  9. import org.bukkit.event.EventHandler;
  10. import org.bukkit.event.EventPriority;
  11. import org.bukkit.event.Listener;
  12. import org.bukkit.event.player.PlayerMoveEvent;
  13. import org.bukkit.potion.PotionEffect;
  14. import org.bukkit.potion.PotionEffectType;
  15.  
  16. public class MorbidMarshesPoisoner implements Listener {
  17.     MorbidMarshes mmp;
  18.  
  19.     public MorbidMarshesPoisoner(MorbidMarshes instance) {
  20.         this.mmp = instance;
  21.     }
  22.  
  23.     @EventHandler(priority = EventPriority.NORMAL)
  24.     public void PoisonWater(final PlayerMoveEvent event) {
  25.         Player p = event.getPlayer();
  26.         Location locTo = event.getTo();
  27.         Location locFrom = event.getFrom();
  28.         Block l = event.getPlayer().getWorld().getBlockAt(event.getTo());
  29.         if (p.getWorld().getBiome(locTo.getBlockX(), locTo.getBlockZ()) == Biome.SWAMPLAND) {
  30.             // Issue warning.
  31.             p.sendMessage(ChatColor.RED + "WARNING:" + ChatColor.WHITE + " You've just entered a swamp biome be cautious the waters are deadly.");
  32.         } else {
  33.             if (p.getWorld().getBiome(locFrom.getBlockX(), locFrom.getBlockZ()) == Biome.SWAMPLAND) {
  34.                 //Don't Issue warning again
  35.             }
  36.             if (l.isLiquid()) {
  37.                 Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(mmp, new Runnable() {
  38.                             public void run() {
  39.                                 event.getPlayer().addPotionEffect(new PotionEffect(PotionEffectType.POISON, 5, 1));
  40.                             }
  41.                         }, 200L);
  42.             }
  43.         }
  44.     }
  45. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement