PaperMC/nms-patches/BlockOre.patch

46 lines
1.6 KiB
Diff
Raw Normal View History

2015-05-25 12:37:24 +02:00
--- a/net/minecraft/server/BlockOre.java
+++ b/net/minecraft/server/BlockOre.java
2018-07-15 02:00:00 +02:00
@@ -32,6 +32,7 @@
2018-07-15 02:00:00 +02:00
public void dropNaturally(IBlockData iblockdata, World world, BlockPosition blockposition, float f, int i) {
super.dropNaturally(iblockdata, world, blockposition, f, i);
+ /* CraftBukkit start - Delegated to getExpDrop
2018-07-15 02:00:00 +02:00
if (this.getDropType(iblockdata, world, blockposition, i) != this) {
int j = 0;
2018-07-15 02:00:00 +02:00
@@ -49,9 +50,34 @@
this.dropExperience(world, blockposition, j);
}
2015-02-26 23:41:06 +01:00
+ // */
}
+ @Override
2018-07-15 02:00:00 +02:00
+ public int getExpDrop(IBlockData iblockdata, World world, BlockPosition blockposition, int enchantmentLevel) {
+ if (this.getDropType(iblockdata, world, blockposition, enchantmentLevel) != this) {
+ int j = 0;
+
+ if (this == Blocks.COAL_ORE) {
+ j = MathHelper.nextInt(world.random, 0, 2);
+ } else if (this == Blocks.DIAMOND_ORE) {
+ j = MathHelper.nextInt(world.random, 3, 7);
+ } else if (this == Blocks.EMERALD_ORE) {
+ j = MathHelper.nextInt(world.random, 3, 7);
+ } else if (this == Blocks.LAPIS_ORE) {
+ j = MathHelper.nextInt(world.random, 2, 5);
2018-07-15 02:00:00 +02:00
+ } else if (this == Blocks.NETHER_QUARTZ_ORE) {
+ j = MathHelper.nextInt(world.random, 2, 5);
+ }
+
+ return j;
+ }
2015-02-26 23:41:06 +01:00
+
+ return 0;
+ // CraftBukkit end
2015-02-26 23:41:06 +01:00
+ }
+
2018-07-15 02:00:00 +02:00
public ItemStack a(IBlockAccess iblockaccess, BlockPosition blockposition, IBlockData iblockdata) {
2016-02-29 22:32:46 +01:00
return new ItemStack(this);
}