Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.nappo.bukkit;
- import java.util.ArrayList;
- import org.bukkit.Material;
- import org.bukkit.block.Block;
- import org.bukkit.command.Command;
- import org.bukkit.command.CommandExecutor;
- import org.bukkit.command.CommandSender;
- import org.bukkit.entity.Player;
- import org.bukkit.event.Event;
- import org.bukkit.event.Event.Priority;
- import org.bukkit.event.player.PlayerListener;
- import org.bukkit.event.player.PlayerMoveEvent;
- import org.bukkit.plugin.PluginManager;
- import org.bukkit.plugin.java.JavaPlugin;
- /**
- * Allows players to fly.
- * @author Canownueasy
- */
- public class FlyPlugin extends JavaPlugin {
- private ArrayList<Player> flyers = new ArrayList<Player>();
- @Override
- public void onDisable() { flyers.clear(); }
- @Override
- public void onEnable() {
- PluginManager pm = getServer().getPluginManager();
- pm.registerEvent(Event.Type.PLAYER_MOVE, new PlayerListener() {
- @Override
- public void onPlayerMove(PlayerMoveEvent event) {
- Player player = event.getPlayer();
- if(flyers.contains(player)) {
- Block to = player.getWorld().getBlockAt(event.getTo());
- if(to.getType().equals(Material.AIR)) to.setType(Material.WATER);
- Block from = player.getWorld().getBlockAt(event.getFrom());
- if(from.getType().equals(Material.WATER)) from.setType(Material.AIR);
- }
- }
- }, Priority.Normal, this);
- getCommand("fly").setExecutor(new CommandExecutor() {
- @Override
- public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
- if(sender instanceof Player) {
- if(flyers.contains((Player)sender)) {
- if(flyers.remove((Player)sender)) sender.sendMessage("You have stopped flying!"); return true;
- }
- if(flyers.add((Player)sender)) sender.sendMessage("You are now flying!"); return true;
- }
- return false;
- }
- });
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement