Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.elmakers.mine.bukkit.plugins.test;
- import java.util.HashMap;
- import java.util.Map;
- import org.bukkit.Bukkit;
- import org.bukkit.Effect;
- import org.bukkit.Location;
- import org.bukkit.Material;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.Listener;
- import org.bukkit.event.block.BlockBreakEvent;
- import org.bukkit.event.block.BlockPlaceEvent;
- import org.bukkit.plugin.PluginManager;
- import org.bukkit.plugin.java.JavaPlugin;
- import org.bukkit.scheduler.BukkitRunnable;
- import org.bukkit.scheduler.BukkitScheduler;
- public class TestPlugin extends JavaPlugin implements Listener {
- Map<Location, Integer> TDs = new HashMap<Location, Integer>();
- @EventHandler
- public void onBlockPlace(final BlockPlaceEvent event){
- //(event.getPlayer().hasPermission("SM.SnowMachine")) &&
- if (event.getBlock().getType().equals(Material.GLOWSTONE)) {
- Location Sml = event.getBlock().getLocation();
- getLogger().info("Broke block at " + Sml.getWorld() + ":" + Sml.getX() + "," + Sml.getY() + "," + Sml.getZ());
- this.SnowMachine(Sml);
- }
- }
- @EventHandler
- public void onBlockBreak(BlockBreakEvent event){
- // (event.getPlayer().hasPermission("SM.SnowMachine")) &&
- Location Sml3 = event.getBlock().getLocation();
- Location equivalent = new Location(Sml3.getWorld(), Sml3.getX(), Sml3.getY(), Sml3.getZ());
- if (event.getBlock().getType().equals(Material.GLOWSTONE)) {
- getLogger().info("Broke block at " + equivalent.getWorld() + ":" + equivalent.getX() + "," + equivalent.getY() + "," + equivalent.getZ());
- if(TDs.containsKey(equivalent)){
- int taskID = TDs.get(equivalent);
- getLogger().info("Cancelling task with id " + taskID);
- Bukkit.getScheduler().cancelTask(taskID);
- } else {
- Bukkit.broadcastMessage("I can't find that one! D': "+TDs.values().toString());
- Bukkit.broadcastMessage(""+equivalent); //Debug messages
- }
- }
- }
- public void SnowMachine(final Location Sml) {
- Location equivalent = new Location(Sml.getWorld(), Sml.getX(), Sml.getY(), Sml.getZ());
- BukkitScheduler scheduler = Bukkit.getServer().getScheduler();
- int taskID = scheduler.scheduleSyncRepeatingTask(this, new BukkitRunnable() {
- public void run() {
- Sml.getWorld().playEffect(Sml, Effect.SMOKE, 0);
- }
- }, 20, 5);
- TDs.put(equivalent, taskID);
- getLogger().info("Started task with id " + taskID);
- }
- public void onEnable() {
- PluginManager pm = getServer().getPluginManager();
- pm.registerEvents(this, this);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement