/[projects]/miscJava/bukkit-minecraft-plugins/HoerupUtils/src/dk/thoerup/bukkit/hoeruputils/PowerMiner.java
ViewVC logotype

Diff of /miscJava/bukkit-minecraft-plugins/HoerupUtils/src/dk/thoerup/bukkit/hoeruputils/PowerMiner.java

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1386 by torben, Sun Apr 24 10:35:30 2011 UTC revision 1390 by torben, Mon Apr 25 20:10:53 2011 UTC
# Line 44  public class PowerMiner extends BlockLis Line 44  public class PowerMiner extends BlockLis
44          }          }
45    
46                    
47          protected int getDropBlock(Block b) {          protected ItemStack getDropItems(Block b) {
48                  switch (b.getTypeId()) {                  switch (b.getTypeId()) {
49                  case 1: //stone drops cobblestone                  case 1: //stone drops cobblestone
50                          return 4;                          return new ItemStack(4,1);
51                  case 2:                  case 2:
52                  case 3:                                  case 3:                
53                          return 0; //instabreak already drops dirt                          return null; //instabreak already drops dirt
54                    case 12:
55                            return null; //instabreak drops sand
56                  case 13:                  case 13:
57                          return 0; //don't drop gravel                                    return null; //don't drop gravel                
58                  case 16: //coal ore drops coal                  case 16: //coal ore drops coal                  
59                          return 263;                              return new ItemStack(263,1);
60                    case 17:
61                            return null; //instabreak drops wood
62                    case 18:
63                            return (rand.nextInt(16) == 0) ? new ItemStack(6,1,(short)0, (byte)rand.nextInt(4) ) : null;  //leaves has 6.25% chance of dropping sapplings - the sappling type is randomized
64                    case 21: //lapis lazuli
65                            int count = rand.nextInt(5) + 4;
66                            return new ItemStack(351,count,(short)0, (byte)4);
67                  case 56: //diamond ore drops diamond                  case 56: //diamond ore drops diamond
68                          return 264;                              return new ItemStack(264,1);
69                    case 73:
70                    case 74:
71                            return new ItemStack(331,4); //redstone ore (both glowing and non-glowing) drops 4 redstone    
72                  default:                  default:
73                          return b.getTypeId(); //don't throw any others                          return new ItemStack(b.getTypeId(), 1);
74                  }                  }
75          }          }
76                    
# Line 70  public class PowerMiner extends BlockLis Line 82  public class PowerMiner extends BlockLis
82                                    
83                  if ( miners.contains(p.getName()) ) {                  if ( miners.contains(p.getName()) ) {
84                          if (p.getItemInHand().getType() == Material.FEATHER) {                          if (p.getItemInHand().getType() == Material.FEATHER) {
                                 event.setInstaBreak(true);  
85                                                                    
86                                  Block b = event.getBlock();                                  Block b = event.getBlock();
                                 int blockid = getDropBlock(b);  
87                                                                    
88                                  if (blockid != 0) {                                                              if (b.getTypeId() == 7) //don't remove bedrock
89                                          ItemStack stack = new ItemStack(blockid, 1);                                          return;
90                                          b.getWorld().dropItemNaturally(b.getLocation(), stack);                                  
91                                    event.setInstaBreak(true);
92                                    
93    
94                                    ItemStack items = getDropItems(b);
95                                    
96                                    
97                                    if (items != null) {                            
98                                            b.getWorld().dropItemNaturally(b.getLocation(), items);
99                                  }                                  }
100                                                                    
101                          }                          }
102                  }                  }
103                                    
104          }          }
105            public PlayerQuitListener getPlayerQuitListener() {
106                    return new PlayerQuitListener();
107            }
108            
109                    
110          public class PlayerQuitListener extends PlayerListener {          public class PlayerQuitListener extends PlayerListener {
111                  @Override                  @Override

Legend:
Removed from v.1386  
changed lines
  Added in v.1390

  ViewVC Help
Powered by ViewVC 1.1.20