1 |
torben |
3222 |
package dk.thoerup.bukkit.hoeruputils;
|
2 |
|
|
|
3 |
|
|
import java.util.Set;
|
4 |
|
|
|
5 |
|
|
import org.bukkit.Material;
|
6 |
|
|
import org.bukkit.World;
|
7 |
|
|
import org.bukkit.block.Block;
|
8 |
|
|
import org.bukkit.block.Chest;
|
9 |
|
|
import org.bukkit.block.Dispenser;
|
10 |
|
|
import org.bukkit.block.Hopper;
|
11 |
|
|
import org.bukkit.command.Command;
|
12 |
|
|
import org.bukkit.command.CommandExecutor;
|
13 |
|
|
import org.bukkit.command.CommandSender;
|
14 |
|
|
import org.bukkit.entity.Player;
|
15 |
|
|
import org.bukkit.inventory.Inventory;
|
16 |
|
|
import org.bukkit.inventory.ItemStack;
|
17 |
|
|
|
18 |
|
|
public class ChestFiller implements CommandExecutor {
|
19 |
|
|
|
20 |
|
|
@Override
|
21 |
|
|
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
|
22 |
|
|
if (! (sender instanceof Player) ) {
|
23 |
|
|
sender.sendMessage("this is not a console command!");
|
24 |
|
|
return true;
|
25 |
|
|
}
|
26 |
|
|
|
27 |
|
|
Player player = (Player) sender;
|
28 |
|
|
World world = player.getWorld();
|
29 |
|
|
if ( ! world.getName().equals("creative")) {
|
30 |
|
|
sender.sendMessage("May ONLY be used in creative");
|
31 |
|
|
return true;
|
32 |
|
|
}
|
33 |
|
|
|
34 |
|
|
Block b = player.getTargetBlock( (Set<Material>)null, 30);
|
35 |
|
|
Material mat = b.getType();
|
36 |
|
|
|
37 |
|
|
if (mat != Material.CHEST && mat != Material.HOPPER && mat != Material.DISPENSER) {
|
38 |
|
|
player.sendMessage("[Chest] Please look at the chest/hopper/dispenser you want to fill");
|
39 |
|
|
return true;
|
40 |
|
|
}
|
41 |
torben |
3239 |
|
42 |
|
|
ItemStack items = new ItemStack(Material.SNOWBALL, 16);
|
43 |
torben |
3222 |
Inventory inv = null;
|
44 |
|
|
|
45 |
|
|
if (b.getType() == Material.CHEST) {
|
46 |
|
|
Chest chest = (Chest) b.getState();
|
47 |
|
|
inv = chest.getInventory();
|
48 |
|
|
}
|
49 |
|
|
|
50 |
|
|
if (b.getType() == Material.HOPPER) {
|
51 |
|
|
Hopper hopper = (Hopper) b.getState();
|
52 |
|
|
inv = hopper.getInventory();
|
53 |
|
|
}
|
54 |
|
|
if (b.getType() == Material.DISPENSER) {
|
55 |
|
|
Dispenser dispenser = (Dispenser) b.getState();
|
56 |
|
|
inv = dispenser.getInventory();
|
57 |
|
|
}
|
58 |
|
|
|
59 |
|
|
for (int i = 0; i< inv.getSize(); i++) {
|
60 |
|
|
inv.setItem(i, items);
|
61 |
|
|
}
|
62 |
|
|
|
63 |
|
|
|
64 |
|
|
return true;
|
65 |
|
|
}
|
66 |
|
|
|
67 |
|
|
}
|