C:\minecraft\server\PetWolf2\src\com\javaminecraft\PetWolf2.java
  1 package com.javaminecraft; 
  2  
  3 import java.util.HashMap;
  4 import java.util.logging.*;
  5 import org.bukkit.*;
  6 import org.bukkit.block.Block;
  7 import org.bukkit.command.*;
  8 import org.bukkit.entity.*;
  9 import org.bukkit.event.EventHandler;
 10 import org.bukkit.event.Listener;
 11 import org.bukkit.event.block.BlockBreakEvent;
 12 import org.bukkit.event.block.BlockDispenseEvent;
 13 import org.bukkit.event.player.PlayerJoinEvent;
 14 import org.bukkit.inventory.ItemStack;
 15 import org.bukkit.inventory.meta.ItemMeta;
 16 import org.bukkit.plugin.java.*;
 17  
 18 public class PetWolf2 extends JavaPlugin implements Listener { 
 19     public static final Logger LOG = Logger.getLogger("Minecraft");
 20     HashMap<String, Integer> one = new HashMap<String, Integer>();
 21     private ItemStack item;
 22     private ItemMeta meta;
 23    
 24     public void onEnable()
 25     {
 26       getServer().getPluginManager().registerEvents(this, this);
 27     }
 28     
 29     //EventHandler
 30     public void onPlayerJoin(PlayerJoinEvent join){
 31         Player player = join.getPlayer();
 32         one.put(player.getDisplayName(), null);
 33     }
 34     //@EventHandler
 35     public void onDispense(BlockDispenseEvent event) {
 36      event.getItem().getType();
 37      if (Material.LAVA_BUCKET != null) {
 38         event.setCancelled(true);
 39      }
 40     }
 41     public void onBlockBreak(BlockBreakEvent event) {
 42         if (event.getBlock().getType() == Material.DIAMOND_ORE) {
 43           getServer().broadcastMessage(ChatColor.AQUA + "Hrac " + ChatColor.GOLD + event.getPlayer().getDisplayName() + ChatColor.AQUA + " prave nasel diamanty!");
 44         }    
 45         if (event.getBlock().getType() == Material.STONE) {
 46           getServer().broadcastMessage(ChatColor.AQUA + "Hrac " + ChatColor.GOLD + event.getPlayer().getDisplayName() + ChatColor.AQUA + " prave nasel kameni!");
 47         }
 48         getServer().broadcastMessage(ChatColor.AQUA + "Hrac " + ChatColor.GOLD + event.getPlayer().getDisplayName() + ChatColor.AQUA + " prave nasel"+event.getBlock().getType()+" kameni!");
 49     }
 50     
 51     public void ItemBuilder(String name){
 52         item = new ItemStack( Material.STONE );
 53         meta = item.getItemMeta();
 54         if(name != null){
 55             meta.setDisplayName( name );
 56             item.setItemMeta( meta );
 57         }
 58     }
 59     
 60     public boolean onCommand(CommandSender sender, Command command, 
 61         String label, String[] arguments) {
 62          
 63         if (sender instanceof Player) { 
 64             if (label.equalsIgnoreCase("petwolf")) { 
 65                 // get the player
 66                 Player me = (Player) sender;
 67                 // get the player's current location
 68                 Location spot = me.getLocation();
 69                 // get the game world
 70                 World world = me.getWorld();
 71  
 72                 // spawn one wolf
 73                 Wolf wolf = world.spawn(spot, Wolf.class);
 74                 // set the color of its collar
 75                 wolf.setCollarColor(DyeColor.PINK);
 76                 LOG.info("[PetWolf] Howl!");
 77                 
 78                 Location spot1 = me.getLocation();
 79                 spot1.setX(spot1.getX()+2);
 80                 Chicken chicken = world.spawn(spot1, Chicken.class);
 81 
 82                 getServer().broadcastMessage(ChatColor.AQUA + "Hrac " + ChatColor.GOLD + me.getPlayer().getDisplayName() + ChatColor.AQUA + " prave vytvoril vlka a slepici!!");
 83 
 84                 
 85                 return true;
 86             }
 87             if (label.equalsIgnoreCase("wall")) { 
 88                 // get the player
 89                 Player me = (Player) sender;
 90                 // get the player's current location
 91                 Location spot = me.getLocation();
 92                 // get the game world
 93                 World world = me.getWorld();
 94  
 95                 int spotX = spot.getBlockX();
 96                 int spotY = spot.getBlockY()-1;
 97                 int spotZ = spot.getBlockZ();
 98         
 99                 for (int k = 0; k < 20; k++) {
100                     spot.setZ(spotZ+k);
101                     spot.setY(spotY);
102                     for (int i = 0; i < 5; i++) {
103                         spot.setX(spotX+i);
104                         Block here = spot.getBlock();
105                         here.setType(Material.COAL_ORE);
106                     }
107                     spot.setY(spotY+1);
108                     for (int i = 0; i < 4; i++) {
109                         spot.setX(spotX+i);
110                         Block here = spot.getBlock();
111                         here.setType(Material.AIR);
112                     }
113                     spot.setY(spotY+2);
114                     for (int i = 0; i < 5; i++) {
115                         spot.setX(spotX+i);
116                         Block here = spot.getBlock();
117                         here.setType(Material.AIR);
118                     }
119                     spot.setY(spotY+3);
120                     for (int i = 0; i < 5; i++) {
121                         spot.setX(spotX+i);
122                         Block here = spot.getBlock();
123                         here.setType(Material.GLASS);
124                     }
125                     spot.setY(spotY-1);
126                     for (int i = 0; i < 5; i++) {
127                         spot.setX(spotX+i);
128                         Block here = spot.getBlock();
129                         here.setType(Material.GLASS);
130                     }
131 
132                 }
133                 Location spot1 = me.getLocation();
134                 spot1.setX(spot1.getX()+2);
135                 spot1.setY(spot1.getY()+2);
136                 Chicken chicken = world.spawn(spot1, Chicken.class);
137                 
138                 Location spot2 = me.getLocation();
139                 spot2.setX(spot2.getX()+3);
140                 spot2.setY(spot2.getY()+1);
141                 Block here = spot2.getBlock();
142                 here.setType(Material.TORCH);
143                 //here.setTypeIdAndData( Material.TORCH.getId(), (byte)1, true/false );
144                 
145                 spot2.setX(spot2.getX()+1);
146                 here = spot2.getBlock();
147                 here.setType(Material.WOOD);
148                 
149                 //block.setType( Material.TORCH );
150                 //System.out.println( block.getType() ); // prints "AIR"
151                 // anything done here wouldn't have an effect since the torch has already disconnected
152                 //b.setTypeIdAndData( Material.Torch.getId(), (byte)1, true/false ); // true/false doesn't seem to affect it
153                 
154                 getServer().broadcastMessage(ChatColor.AQUA + "Hrac " + ChatColor.GOLD + me.getPlayer().getDisplayName() + ChatColor.AQUA + " prave vytvoril slepici!!");
155 
156                 
157                 return true;
158             }
159         }
160         return false;
161     }
162 }