geforkt von Mirrors/Paper
Add Destroy Speed API
Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
Dieser Commit ist enthalten in:
Ursprung
7ee931eaf2
Commit
72ab93ca8a
@ -690,4 +690,31 @@ public interface Block extends Metadatable, Translatable, net.kyori.adventure.tr
|
|||||||
@Deprecated(forRemoval = true)
|
@Deprecated(forRemoval = true)
|
||||||
String getTranslationKey();
|
String getTranslationKey();
|
||||||
// Paper end
|
// Paper end
|
||||||
|
|
||||||
|
// Paper start - destroy speed API
|
||||||
|
/**
|
||||||
|
* Gets the speed at which this block will be destroyed by a given {@link ItemStack}
|
||||||
|
* <p>
|
||||||
|
* Default value is 1.0
|
||||||
|
*
|
||||||
|
* @param itemStack {@link ItemStack} used to mine this Block
|
||||||
|
* @return the speed that this Block will be mined by the given {@link ItemStack}
|
||||||
|
*/
|
||||||
|
default float getDestroySpeed(final @NotNull ItemStack itemStack) {
|
||||||
|
return this.getBlockData().getDestroySpeed(itemStack);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the speed at which this block will be destroyed by a given {@link ItemStack}
|
||||||
|
* <p>
|
||||||
|
* Default value is 1.0
|
||||||
|
*
|
||||||
|
* @param itemStack {@link ItemStack} used to mine this Block
|
||||||
|
* @param considerEnchants true to look at enchants on the itemstack
|
||||||
|
* @return the speed that this Block will be mined by the given {@link ItemStack}
|
||||||
|
*/
|
||||||
|
default float getDestroySpeed(@NotNull ItemStack itemStack, boolean considerEnchants) {
|
||||||
|
return this.getBlockData().getDestroySpeed(itemStack, considerEnchants);
|
||||||
|
}
|
||||||
|
// Paper end - destroy speed API
|
||||||
}
|
}
|
||||||
|
@ -266,4 +266,33 @@ public interface BlockData extends Cloneable {
|
|||||||
@NotNull
|
@NotNull
|
||||||
@ApiStatus.Experimental
|
@ApiStatus.Experimental
|
||||||
BlockState createBlockState();
|
BlockState createBlockState();
|
||||||
|
|
||||||
|
// Paper start - destroy speed API
|
||||||
|
/**
|
||||||
|
* Gets the speed at which this block will be destroyed by a given {@link ItemStack}
|
||||||
|
* <p>
|
||||||
|
* Default value is 1.0
|
||||||
|
*
|
||||||
|
* @param itemStack {@link ItemStack} used to mine this Block
|
||||||
|
* @return the speed that this Block will be mined by the given {@link ItemStack}
|
||||||
|
* @apiNote this method assumes default player state and hence, e.g., does not take into account changed
|
||||||
|
* player attributes or potion effects.
|
||||||
|
*/
|
||||||
|
default float getDestroySpeed(final @NotNull ItemStack itemStack) {
|
||||||
|
return this.getDestroySpeed(itemStack, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the speed at which this block will be destroyed by a given {@link ItemStack}
|
||||||
|
* <p>
|
||||||
|
* Default value is 1.0
|
||||||
|
*
|
||||||
|
* @param itemStack {@link ItemStack} used to mine this Block
|
||||||
|
* @param considerEnchants true to look at enchants on the itemstack
|
||||||
|
* @return the speed that this Block will be mined by the given {@link ItemStack}
|
||||||
|
* @apiNote this method assumes default player state and hence, e.g., does not take into account changed
|
||||||
|
* player attributes or potion effects.
|
||||||
|
*/
|
||||||
|
float getDestroySpeed(@NotNull ItemStack itemStack, boolean considerEnchants);
|
||||||
|
// Paper end - destroy speed API
|
||||||
}
|
}
|
||||||
|
Laden…
In neuem Issue referenzieren
Einen Benutzer sperren