aboutsummaryrefslogtreecommitdiff
path: root/azalea-block/src
diff options
context:
space:
mode:
authormat <27899617+mat-1@users.noreply.github.com>2023-07-14 22:20:40 -0500
committerGitHub <noreply@github.com>2023-07-14 22:20:40 -0500
commit7405427199e5a994d4a6a706f84434a69cb7a7d9 (patch)
treeca537e5d761bc053187d952fced0915c850b92aa /azalea-block/src
parentd1afd02aa84e7b4450c1607277f078eb2a0f1bf3 (diff)
downloadazalea-drasl-7405427199e5a994d4a6a706f84434a69cb7a7d9.tar.xz
Mining (#95)
* more mining stuff * initialize azalea-tags crate * more mining stuff 2 * mining in ecs * well technically mining works but no codegen for how long it takes to mine each block yet * rename downloads to __cache__ it was bothering me since it's not *just* downloads * codegen block behavior * fix not sending packet to finish breaking block * mining animation 🎉 * clippy * cleanup, move Client::mine into a client extension * add azalea/src/mining.rs --------- Co-authored-by: mat <git@matdoes.dev>
Diffstat (limited to 'azalea-block/src')
-rwxr-xr-xazalea-block/src/behavior.rs36
-rwxr-xr-xazalea-block/src/generated.rs2012
-rwxr-xr-xazalea-block/src/lib.rs80
3 files changed, 1104 insertions, 1024 deletions
diff --git a/azalea-block/src/behavior.rs b/azalea-block/src/behavior.rs
index 18854fff..498ba06f 100755
--- a/azalea-block/src/behavior.rs
+++ b/azalea-block/src/behavior.rs
@@ -1,35 +1,55 @@
pub struct BlockBehavior {
- pub has_collision: bool,
pub friction: f32,
pub jump_factor: f32,
+ pub destroy_time: f32,
+ pub explosion_resistance: f32,
+ pub requires_correct_tool_for_drops: bool,
}
impl Default for BlockBehavior {
fn default() -> Self {
Self {
- has_collision: true,
friction: 0.6,
jump_factor: 1.0,
+ destroy_time: 0.,
+ explosion_resistance: 0.,
+ requires_correct_tool_for_drops: false,
}
}
}
impl BlockBehavior {
- #[inline]
- pub fn no_collision(mut self) -> Self {
- self.has_collision = false;
- self
+ pub fn new() -> Self {
+ Self::default()
}
- #[inline]
pub fn friction(mut self, friction: f32) -> Self {
self.friction = friction;
self
}
- #[inline]
pub fn jump_factor(mut self, jump_factor: f32) -> Self {
self.jump_factor = jump_factor;
self
}
+
+ pub fn destroy_time(mut self, destroy_time: f32) -> Self {
+ self.destroy_time = destroy_time;
+ self
+ }
+
+ pub fn explosion_resistance(mut self, explosion_resistance: f32) -> Self {
+ self.explosion_resistance = f32::max(0., explosion_resistance);
+ self
+ }
+
+ pub fn strength(self, destroy_time: f32, explosion_resistance: f32) -> Self {
+ self.destroy_time(destroy_time)
+ .explosion_resistance(explosion_resistance)
+ }
+
+ pub fn requires_correct_tool_for_drops(mut self) -> Self {
+ self.requires_correct_tool_for_drops = true;
+ self
+ }
}
diff --git a/azalea-block/src/generated.rs b/azalea-block/src/generated.rs
index e2faed85..f5c8eee5 100755
--- a/azalea-block/src/generated.rs
+++ b/azalea-block/src/generated.rs
@@ -1506,7 +1506,7 @@ make_block_states! {
_1,
_2,
},
- "age" => SnifferEggAge {
+ "hatch" => SnifferEggHatch {
_0,
_1,
_2,
@@ -1928,414 +1928,414 @@ make_block_states! {
"cracked" => bool,
},
Blocks => {
- air => BlockBehavior::default(), {},
- stone => BlockBehavior::default(), {},
- granite => BlockBehavior::default(), {},
- polished_granite => BlockBehavior::default(), {},
- diorite => BlockBehavior::default(), {},
- polished_diorite => BlockBehavior::default(), {},
- andesite => BlockBehavior::default(), {},
- polished_andesite => BlockBehavior::default(), {},
- grass_block => BlockBehavior::default(), {
+ air => BlockBehavior::new(), {},
+ stone => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {},
+ granite => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {},
+ polished_granite => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {},
+ diorite => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {},
+ polished_diorite => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {},
+ andesite => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {},
+ polished_andesite => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {},
+ grass_block => BlockBehavior::new().strength(0.6, 0.6), {
snowy: false,
},
- dirt => BlockBehavior::default(), {},
- coarse_dirt => BlockBehavior::default(), {},
- podzol => BlockBehavior::default(), {
+ dirt => BlockBehavior::new().strength(0.5, 0.5), {},
+ coarse_dirt => BlockBehavior::new().strength(0.5, 0.5), {},
+ podzol => BlockBehavior::new().strength(0.5, 0.5), {
snowy: false,
},
- cobblestone => BlockBehavior::default(), {},
- oak_planks => BlockBehavior::default(), {},
- spruce_planks => BlockBehavior::default(), {},
- birch_planks => BlockBehavior::default(), {},
- jungle_planks => BlockBehavior::default(), {},
- acacia_planks => BlockBehavior::default(), {},
- cherry_planks => BlockBehavior::default(), {},
- dark_oak_planks => BlockBehavior::default(), {},
- mangrove_planks => BlockBehavior::default(), {},
- bamboo_planks => BlockBehavior::default(), {},
- bamboo_mosaic => BlockBehavior::default(), {},
- oak_sapling => BlockBehavior::default(), {
+ cobblestone => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {},
+ oak_planks => BlockBehavior::new().strength(2.0, 3.0), {},
+ spruce_planks => BlockBehavior::new().strength(2.0, 3.0), {},
+ birch_planks => BlockBehavior::new().strength(2.0, 3.0), {},
+ jungle_planks => BlockBehavior::new().strength(2.0, 3.0), {},
+ acacia_planks => BlockBehavior::new().strength(2.0, 3.0), {},
+ cherry_planks => BlockBehavior::new().strength(2.0, 3.0), {},
+ dark_oak_planks => BlockBehavior::new().strength(2.0, 3.0), {},
+ mangrove_planks => BlockBehavior::new().strength(2.0, 3.0), {},
+ bamboo_planks => BlockBehavior::new().strength(2.0, 3.0), {},
+ bamboo_mosaic => BlockBehavior::new().strength(2.0, 3.0), {},
+ oak_sapling => BlockBehavior::new(), {
stage: OakSaplingStage::_0,
},
- spruce_sapling => BlockBehavior::default(), {
+ spruce_sapling => BlockBehavior::new(), {
stage: SpruceSaplingStage::_0,
},
- birch_sapling => BlockBehavior::default(), {
+ birch_sapling => BlockBehavior::new(), {
stage: BirchSaplingStage::_0,
},
- jungle_sapling => BlockBehavior::default(), {
+ jungle_sapling => BlockBehavior::new(), {
stage: JungleSaplingStage::_0,
},
- acacia_sapling => BlockBehavior::default(), {
+ acacia_sapling => BlockBehavior::new(), {
stage: AcaciaSaplingStage::_0,
},
- cherry_sapling => BlockBehavior::default(), {
+ cherry_sapling => BlockBehavior::new(), {
stage: CherrySaplingStage::_0,
},
- dark_oak_sapling => BlockBehavior::default(), {
+ dark_oak_sapling => BlockBehavior::new(), {
stage: DarkOakSaplingStage::_0,
},
- mangrove_propagule => BlockBehavior::default(), {
+ mangrove_propagule => BlockBehavior::new(), {
age: MangrovePropaguleAge::_0,
hanging: false,
stage: MangrovePropaguleStage::_0,
waterlogged: false,
},
- bedrock => BlockBehavior::default(), {},
- water => BlockBehavior::default(), {
+ bedrock => BlockBehavior::new().strength(-1.0, 3600000.0), {},
+ water => BlockBehavior::new().strength(100.0, 100.0), {
level: WaterLevel::_0,
},
- lava => BlockBehavior::default(), {
+ lava => BlockBehavior::new().strength(100.0, 100.0), {
level: LavaLevel::_0,
},
- sand => BlockBehavior::default(), {},
- suspicious_sand => BlockBehavior::default(), {
+ sand => BlockBehavior::new().strength(0.5, 0.5), {},
+ suspicious_sand => BlockBehavior::new().strength(0.25, 0.25), {
dusted: SuspiciousSandDusted::_0,
},
- red_sand => BlockBehavior::default(), {},
- gravel => BlockBehavior::default(), {},
- suspicious_gravel => BlockBehavior::default(), {
+ red_sand => BlockBehavior::new().strength(0.5, 0.5), {},
+ gravel => BlockBehavior::new().strength(0.6, 0.6), {},
+ suspicious_gravel => BlockBehavior::new().strength(0.25, 0.25), {
dusted: SuspiciousGravelDusted::_0,
},
- gold_ore => BlockBehavior::default(), {},
- deepslate_gold_ore => BlockBehavior::default(), {},
- iron_ore => BlockBehavior::default(), {},
- deepslate_iron_ore => BlockBehavior::default(), {},
- coal_ore => BlockBehavior::default(), {},
- deepslate_coal_ore => BlockBehavior::default(), {},
- nether_gold_ore => BlockBehavior::default(), {},
- oak_log => BlockBehavior::default(), {
+ gold_ore => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 3.0), {},
+ deepslate_gold_ore => BlockBehavior::new().requires_correct_tool_for_drops().strength(4.5, 3.0), {},
+ iron_ore => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 3.0), {},
+ deepslate_iron_ore => BlockBehavior::new().requires_correct_tool_for_drops().strength(4.5, 3.0), {},
+ coal_ore => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 3.0), {},
+ deepslate_coal_ore => BlockBehavior::new().requires_correct_tool_for_drops().strength(4.5, 3.0), {},
+ nether_gold_ore => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 3.0), {},
+ oak_log => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- spruce_log => BlockBehavior::default(), {
+ spruce_log => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- birch_log => BlockBehavior::default(), {
+ birch_log => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- jungle_log => BlockBehavior::default(), {
+ jungle_log => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- acacia_log => BlockBehavior::default(), {
+ acacia_log => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- cherry_log => BlockBehavior::default(), {
+ cherry_log => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- dark_oak_log => BlockBehavior::default(), {
+ dark_oak_log => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- mangrove_log => BlockBehavior::default(), {
+ mangrove_log => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- mangrove_roots => BlockBehavior::default(), {
+ mangrove_roots => BlockBehavior::new().strength(0.7, 0.7), {
waterlogged: false,
},
- muddy_mangrove_roots => BlockBehavior::default(), {
+ muddy_mangrove_roots => BlockBehavior::new().strength(0.7, 0.7), {
axis: Axis::Y,
},
- bamboo_block => BlockBehavior::default(), {
+ bamboo_block => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- stripped_spruce_log => BlockBehavior::default(), {
+ stripped_spruce_log => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- stripped_birch_log => BlockBehavior::default(), {
+ stripped_birch_log => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- stripped_jungle_log => BlockBehavior::default(), {
+ stripped_jungle_log => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- stripped_acacia_log => BlockBehavior::default(), {
+ stripped_acacia_log => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- stripped_cherry_log => BlockBehavior::default(), {
+ stripped_cherry_log => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- stripped_dark_oak_log => BlockBehavior::default(), {
+ stripped_dark_oak_log => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- stripped_oak_log => BlockBehavior::default(), {
+ stripped_oak_log => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- stripped_mangrove_log => BlockBehavior::default(), {
+ stripped_mangrove_log => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- stripped_bamboo_block => BlockBehavior::default(), {
+ stripped_bamboo_block => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- oak_wood => BlockBehavior::default(), {
+ oak_wood => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- spruce_wood => BlockBehavior::default(), {
+ spruce_wood => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- birch_wood => BlockBehavior::default(), {
+ birch_wood => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- jungle_wood => BlockBehavior::default(), {
+ jungle_wood => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- acacia_wood => BlockBehavior::default(), {
+ acacia_wood => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- cherry_wood => BlockBehavior::default(), {
+ cherry_wood => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- dark_oak_wood => BlockBehavior::default(), {
+ dark_oak_wood => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- mangrove_wood => BlockBehavior::default(), {
+ mangrove_wood => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- stripped_oak_wood => BlockBehavior::default(), {
+ stripped_oak_wood => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- stripped_spruce_wood => BlockBehavior::default(), {
+ stripped_spruce_wood => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- stripped_birch_wood => BlockBehavior::default(), {
+ stripped_birch_wood => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- stripped_jungle_wood => BlockBehavior::default(), {
+ stripped_jungle_wood => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- stripped_acacia_wood => BlockBehavior::default(), {
+ stripped_acacia_wood => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- stripped_cherry_wood => BlockBehavior::default(), {
+ stripped_cherry_wood => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- stripped_dark_oak_wood => BlockBehavior::default(), {
+ stripped_dark_oak_wood => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- stripped_mangrove_wood => BlockBehavior::default(), {
+ stripped_mangrove_wood => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- oak_leaves => BlockBehavior::default(), {
+ oak_leaves => BlockBehavior::new().strength(0.2, 0.2), {
distance: OakLeavesDistance::_7,
persistent: false,
waterlogged: false,
},
- spruce_leaves => BlockBehavior::default(), {
+ spruce_leaves => BlockBehavior::new().strength(0.2, 0.2), {
distance: SpruceLeavesDistance::_7,
persistent: false,
waterlogged: false,
},
- birch_leaves => BlockBehavior::default(), {
+ birch_leaves => BlockBehavior::new().strength(0.2, 0.2), {
distance: BirchLeavesDistance::_7,
persistent: false,
waterlogged: false,
},
- jungle_leaves => BlockBehavior::default(), {
+ jungle_leaves => BlockBehavior::new().strength(0.2, 0.2), {
distance: JungleLeavesDistance::_7,
persistent: false,
waterlogged: false,
},
- acacia_leaves => BlockBehavior::default(), {
+ acacia_leaves => BlockBehavior::new().strength(0.2, 0.2), {
distance: AcaciaLeavesDistance::_7,
persistent: false,
waterlogged: false,
},
- cherry_leaves => BlockBehavior::default(), {
+ cherry_leaves => BlockBehavior::new().strength(0.2, 0.2), {
distance: CherryLeavesDistance::_7,
persistent: false,
waterlogged: false,
},
- dark_oak_leaves => BlockBehavior::default(), {
+ dark_oak_leaves => BlockBehavior::new().strength(0.2, 0.2), {
distance: DarkOakLeavesDistance::_7,
persistent: false,
waterlogged: false,
},
- mangrove_leaves => BlockBehavior::default(), {
+ mangrove_leaves => BlockBehavior::new().strength(0.2, 0.2), {
distance: MangroveLeavesDistance::_7,
persistent: false,
waterlogged: false,
},
- azalea_leaves => BlockBehavior::default(), {
+ azalea_leaves => BlockBehavior::new().strength(0.2, 0.2), {
distance: AzaleaLeavesDistance::_7,
persistent: false,
waterlogged: false,
},
- flowering_azalea_leaves => BlockBehavior::default(), {
+ flowering_azalea_leaves => BlockBehavior::new().strength(0.2, 0.2), {
distance: FloweringAzaleaLeavesDistance::_7,
persistent: false,
waterlogged: false,
},
- sponge => BlockBehavior::default(), {},
- wet_sponge => BlockBehavior::default(), {},
- glass => BlockBehavior::default(), {},
- lapis_ore => BlockBehavior::default(), {},
- deepslate_lapis_ore => BlockBehavior::default(), {},
- lapis_block => BlockBehavior::default(), {},
- dispenser => BlockBehavior::default(), {
+ sponge => BlockBehavior::new().strength(0.6, 0.6), {},
+ wet_sponge => BlockBehavior::new().strength(0.6, 0.6), {},
+ glass => BlockBehavior::new().strength(0.3, 0.3), {},
+ lapis_ore => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 3.0), {},
+ deepslate_lapis_ore => BlockBehavior::new().requires_correct_tool_for_drops().strength(4.5, 3.0), {},
+ lapis_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 3.0), {},
+ dispenser => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 3.5), {
facing: FacingCubic::North,
triggered: false,
},
- sandstone => BlockBehavior::default(), {},
- chiseled_sandstone => BlockBehavior::default(), {},
- cut_sandstone => BlockBehavior::default(), {},
- note_block => BlockBehavior::default(), {
+ sandstone => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.8, 0.8), {},
+ chiseled_sandstone => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.8, 0.8), {},
+ cut_sandstone => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.8, 0.8), {},
+ note_block => BlockBehavior::new().strength(0.8, 0.8), {
instrument: Sound::Harp,
note: NoteBlockNote::_0,
powered: false,
},
- white_bed => BlockBehavior::default(), {
+ white_bed => BlockBehavior::new().strength(0.2, 0.2), {
facing: FacingCardinal::North,
occupied: false,
part: Part::Foot,
},
- orange_bed => BlockBehavior::default(), {
+ orange_bed => BlockBehavior::new().strength(0.2, 0.2), {
facing: FacingCardinal::North,
occupied: false,
part: Part::Foot,
},
- magenta_bed => BlockBehavior::default(), {
+ magenta_bed => BlockBehavior::new().strength(0.2, 0.2), {
facing: FacingCardinal::North,
occupied: false,
part: Part::Foot,
},
- light_blue_bed => BlockBehavior::default(), {
+ light_blue_bed => BlockBehavior::new().strength(0.2, 0.2), {
facing: FacingCardinal::North,
occupied: false,
part: Part::Foot,
},
- yellow_bed => BlockBehavior::default(), {
+ yellow_bed => BlockBehavior::new().strength(0.2, 0.2), {
facing: FacingCardinal::North,
occupied: false,
part: Part::Foot,
},
- lime_bed => BlockBehavior::default(), {
+ lime_bed => BlockBehavior::new().strength(0.2, 0.2), {
facing: FacingCardinal::North,
occupied: false,
part: Part::Foot,
},
- pink_bed => BlockBehavior::default(), {
+ pink_bed => BlockBehavior::new().strength(0.2, 0.2), {
facing: FacingCardinal::North,
occupied: false,
part: Part::Foot,
},
- gray_bed => BlockBehavior::default(), {
+ gray_bed => BlockBehavior::new().strength(0.2, 0.2), {
facing: FacingCardinal::North,
occupied: false,
part: Part::Foot,
},
- light_gray_bed => BlockBehavior::default(), {
+ light_gray_bed => BlockBehavior::new().strength(0.2, 0.2), {
facing: FacingCardinal::North,
occupied: false,
part: Part::Foot,
},
- cyan_bed => BlockBehavior::default(), {
+ cyan_bed => BlockBehavior::new().strength(0.2, 0.2), {
facing: FacingCardinal::North,
occupied: false,
part: Part::Foot,
},
- purple_bed => BlockBehavior::default(), {
+ purple_bed => BlockBehavior::new().strength(0.2, 0.2), {
facing: FacingCardinal::North,
occupied: false,
part: Part::Foot,
},
- blue_bed => BlockBehavior::default(), {
+ blue_bed => BlockBehavior::new().strength(0.2, 0.2), {
facing: FacingCardinal::North,
occupied: false,
part: Part::Foot,
},
- brown_bed => BlockBehavior::default(), {
+ brown_bed => BlockBehavior::new().strength(0.2, 0.2), {
facing: FacingCardinal::North,
occupied: false,
part: Part::Foot,
},
- green_bed => BlockBehavior::default(), {
+ green_bed => BlockBehavior::new().strength(0.2, 0.2), {
facing: FacingCardinal::North,
occupied: false,
part: Part::Foot,
},
- red_bed => BlockBehavior::default(), {
+ red_bed => BlockBehavior::new().strength(0.2, 0.2), {
facing: FacingCardinal::North,
occupied: false,
part: Part::Foot,
},
- black_bed => BlockBehavior::default(), {
+ black_bed => BlockBehavior::new().strength(0.2, 0.2), {
facing: FacingCardinal::North,
occupied: false,
part: Part::Foot,
},
- powered_rail => BlockBehavior::default(), {
+ powered_rail => BlockBehavior::new().strength(0.7, 0.7), {
powered: false,
shape: RailShape::NorthSouth,
waterlogged: false,
},
- detector_rail => BlockBehavior::default(), {
+ detector_rail => BlockBehavior::new().strength(0.7, 0.7), {
powered: false,
shape: RailShape::NorthSouth,
waterlogged: false,
},
- sticky_piston => BlockBehavior::default(), {
+ sticky_piston => BlockBehavior::new().strength(1.5, 1.5), {
extended: false,
facing: FacingCubic::North,
},
- cobweb => BlockBehavior::default(), {},
- grass => BlockBehavior::default(), {},
- fern => BlockBehavior::default(), {},
- dead_bush => BlockBehavior::default(), {},
- seagrass => BlockBehavior::default(), {},
- tall_seagrass => BlockBehavior::default(), {
+ cobweb => BlockBehavior::new().requires_correct_tool_for_drops().strength(4.0, 4.0), {},
+ grass => BlockBehavior::new(), {},
+ fern => BlockBehavior::new(), {},
+ dead_bush => BlockBehavior::new(), {},
+ seagrass => BlockBehavior::new(), {},
+ tall_seagrass => BlockBehavior::new(), {
half: Half::Lower,
},
- piston => BlockBehavior::default(), {
+ piston => BlockBehavior::new().strength(1.5, 1.5), {
extended: false,
facing: FacingCubic::North,
},
- piston_head => BlockBehavior::default(), {
+ piston_head => BlockBehavior::new().strength(1.5, 1.5), {
kind: PistonType::Normal,
facing: FacingCubic::North,
short: false,
},
- white_wool => BlockBehavior::default(), {},
- orange_wool => BlockBehavior::default(), {},
- magenta_wool => BlockBehavior::default(), {},
- light_blue_wool => BlockBehavior::default(), {},
- yellow_wool => BlockBehavior::default(), {},
- lime_wool => BlockBehavior::default(), {},
- pink_wool => BlockBehavior::default(), {},
- gray_wool => BlockBehavior::default(), {},
- light_gray_wool => BlockBehavior::default(), {},
- cyan_wool => BlockBehavior::default(), {},
- purple_wool => BlockBehavior::default(), {},
- blue_wool => BlockBehavior::default(), {},
- brown_wool => BlockBehavior::default(), {},
- green_wool => BlockBehavior::default(), {},
- red_wool => BlockBehavior::default(), {},
- black_wool => BlockBehavior::default(), {},
- moving_piston => BlockBehavior::default(), {
+ white_wool => BlockBehavior::new().strength(0.8, 0.8), {},
+ orange_wool => BlockBehavior::new().strength(0.8, 0.8), {},
+ magenta_wool => BlockBehavior::new().strength(0.8, 0.8), {},
+ light_blue_wool => BlockBehavior::new().strength(0.8, 0.8), {},
+ yellow_wool => BlockBehavior::new().strength(0.8, 0.8), {},
+ lime_wool => BlockBehavior::new().strength(0.8, 0.8), {},
+ pink_wool => BlockBehavior::new().strength(0.8, 0.8), {},
+ gray_wool => BlockBehavior::new().strength(0.8, 0.8), {},
+ light_gray_wool => BlockBehavior::new().strength(0.8, 0.8), {},
+ cyan_wool => BlockBehavior::new().strength(0.8, 0.8), {},
+ purple_wool => BlockBehavior::new().strength(0.8, 0.8), {},
+ blue_wool => BlockBehavior::new().strength(0.8, 0.8), {},
+ brown_wool => BlockBehavior::new().strength(0.8, 0.8), {},
+ green_wool => BlockBehavior::new().strength(0.8, 0.8), {},
+ red_wool => BlockBehavior::new().strength(0.8, 0.8), {},
+ black_wool => BlockBehavior::new().strength(0.8, 0.8), {},
+ moving_piston => BlockBehavior::new().destroy_time(-1.0), {
kind: PistonType::Normal,
facing: FacingCubic::North,
},
- dandelion => BlockBehavior::default(), {},
- torchflower => BlockBehavior::default(), {},
- poppy => BlockBehavior::default(), {},
- blue_orchid => BlockBehavior::default(), {},
- allium => BlockBehavior::default(), {},
- azure_bluet => BlockBehavior::default(), {},
- red_tulip => BlockBehavior::default(), {},
- orange_tulip => BlockBehavior::default(), {},
- white_tulip => BlockBehavior::default(), {},
- pink_tulip => BlockBehavior::default(), {},
- oxeye_daisy => BlockBehavior::default(), {},
- cornflower => BlockBehavior::default(), {},
- wither_rose => BlockBehavior::default(), {},
- lily_of_the_valley => BlockBehavior::default(), {},
- brown_mushroom => BlockBehavior::default(), {},
- red_mushroom => BlockBehavior::default(), {},
- gold_block => BlockBehavior::default(), {},
- iron_block => BlockBehavior::default(), {},
- bricks => BlockBehavior::default(), {},
- tnt => BlockBehavior::default(), {
+ dandelion => BlockBehavior::new(), {},
+ torchflower => BlockBehavior::new(), {},
+ poppy => BlockBehavior::new(), {},
+ blue_orchid => BlockBehavior::new(), {},
+ allium => BlockBehavior::new(), {},
+ azure_bluet => BlockBehavior::new(), {},
+ red_tulip => BlockBehavior::new(), {},
+ orange_tulip => BlockBehavior::new(), {},
+ white_tulip => BlockBehavior::new(), {},
+ pink_tulip => BlockBehavior::new(), {},
+ oxeye_daisy => BlockBehavior::new(), {},
+ cornflower => BlockBehavior::new(), {},
+ wither_rose => BlockBehavior::new(), {},
+ lily_of_the_valley => BlockBehavior::new(), {},
+ brown_mushroom => BlockBehavior::new(), {},
+ red_mushroom => BlockBehavior::new(), {},
+ gold_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {},
+ iron_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 6.0), {},
+ bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {},
+ tnt => BlockBehavior::new(), {
unstable: false,
},
- bookshelf => BlockBehavior::default(), {},
- chiseled_bookshelf => BlockBehavior::default(), {
+ bookshelf => BlockBehavior::new().strength(1.5, 1.5), {},
+ chiseled_bookshelf => BlockBehavior::new().strength(1.5, 1.5), {
facing: FacingCardinal::North,
slot_0_occupied: false,
slot_1_occupied: false,
@@ -2344,13 +2344,13 @@ make_block_states! {
slot_4_occupied: false,
slot_5_occupied: false,
},
- mossy_cobblestone => BlockBehavior::default(), {},
- obsidian => BlockBehavior::default(), {},
- torch => BlockBehavior::default(), {},
- wall_torch => BlockBehavior::default(), {
+ mossy_cobblestone => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {},
+ obsidian => BlockBehavior::new().requires_correct_tool_for_drops().strength(50.0, 1200.0), {},
+ torch => BlockBehavior::new(), {},
+ wall_torch => BlockBehavior::new(), {
facing: FacingCardinal::North,
},
- fire => BlockBehavior::default(), {
+ fire => BlockBehavior::new(), {
age: FireAge::_0,
east: false,
north: false,
@@ -2358,439 +2358,439 @@ make_block_states! {
up: false,
west: false,
},
- soul_fire => BlockBehavior::default(), {},
- spawner => BlockBehavior::default(), {},
- oak_stairs => BlockBehavior::default(), {
+ soul_fire => BlockBehavior::new(), {},
+ spawner => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 5.0), {},
+ oak_stairs => BlockBehavior::new().strength(2.0, 3.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- chest => BlockBehavior::default(), {
+ chest => BlockBehavior::new().strength(2.5, 2.5), {
kind: ChestType::Single,
facing: FacingCardinal::North,
waterlogged: false,
},
- redstone_wire => BlockBehavior::default(), {
+ redstone_wire => BlockBehavior::new(), {
east: WireEast::None,
north: WireNorth::None,
power: RedstoneWirePower::_0,
south: WireSouth::None,
west: WireWest::None,
},
- diamond_ore => BlockBehavior::default(), {},
- deepslate_diamond_ore => BlockBehavior::default(), {},
- diamond_block => BlockBehavior::default(), {},
- crafting_table => BlockBehavior::default(), {},
- wheat => BlockBehavior::default(), {
+ diamond_ore => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 3.0), {},
+ deepslate_diamond_ore => BlockBehavior::new().requires_correct_tool_for_drops().strength(4.5, 3.0), {},
+ diamond_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 6.0), {},
+ crafting_table => BlockBehavior::new().strength(2.5, 2.5), {},
+ wheat => BlockBehavior::new(), {
age: WheatAge::_0,
},
- farmland => BlockBehavior::default(), {
+ farmland => BlockBehavior::new().strength(0.6, 0.6), {
moisture: FarmlandMoisture::_0,
},
- furnace => BlockBehavior::default(), {
+ furnace => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 3.5), {
facing: FacingCardinal::North,
lit: false,
},
- oak_sign => BlockBehavior::default(), {
+ oak_sign => BlockBehavior::new().strength(1.0, 1.0), {
rotation: OakSignRotation::_0,
waterlogged: false,
},
- spruce_sign => BlockBehavior::default(), {
+ spruce_sign => BlockBehavior::new().strength(1.0, 1.0), {
rotation: SpruceSignRotation::_0,
waterlogged: false,
},
- birch_sign => BlockBehavior::default(), {
+ birch_sign => BlockBehavior::new().strength(1.0, 1.0), {
rotation: BirchSignRotation::_0,
waterlogged: false,
},
- acacia_sign => BlockBehavior::default(), {
+ acacia_sign => BlockBehavior::new().strength(1.0, 1.0), {
rotation: AcaciaSignRotation::_0,
waterlogged: false,
},
- cherry_sign => BlockBehavior::default(), {
+ cherry_sign => BlockBehavior::new().strength(1.0, 1.0), {
rotation: CherrySignRotation::_0,
waterlogged: false,
},
- jungle_sign => BlockBehavior::default(), {
+ jungle_sign => BlockBehavior::new().strength(1.0, 1.0), {
rotation: JungleSignRotation::_0,
waterlogged: false,
},
- dark_oak_sign => BlockBehavior::default(), {
+ dark_oak_sign => BlockBehavior::new().strength(1.0, 1.0), {
rotation: DarkOakSignRotation::_0,
waterlogged: false,
},
- mangrove_sign => BlockBehavior::default(), {
+ mangrove_sign => BlockBehavior::new().strength(1.0, 1.0), {
rotation: MangroveSignRotation::_0,
waterlogged: false,
},
- bamboo_sign => BlockBehavior::default(), {
+ bamboo_sign => BlockBehavior::new().strength(1.0, 1.0), {
rotation: BambooSignRotation::_0,
waterlogged: false,
},
- oak_door => BlockBehavior::default(), {
+ oak_door => BlockBehavior::new().strength(3.0, 3.0), {
facing: FacingCardinal::North,
half: Half::Lower,
hinge: Hinge::Left,
open: false,
powered: false,
},
- ladder => BlockBehavior::default(), {
+ ladder => BlockBehavior::new().strength(0.4, 0.4), {
facing: FacingCardinal::North,
waterlogged: false,
},
- rail => BlockBehavior::default(), {
+ rail => BlockBehavior::new().strength(0.7, 0.7), {
shape: Shape::NorthSouth,
waterlogged: false,
},
- cobblestone_stairs => BlockBehavior::default(), {
+ cobblestone_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- oak_wall_sign => BlockBehavior::default(), {
+ oak_wall_sign => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
waterlogged: false,
},
- spruce_wall_sign => BlockBehavior::default(), {
+ spruce_wall_sign => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
waterlogged: false,
},
- birch_wall_sign => BlockBehavior::default(), {
+ birch_wall_sign => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
waterlogged: false,
},
- acacia_wall_sign => BlockBehavior::default(), {
+ acacia_wall_sign => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
waterlogged: false,
},
- cherry_wall_sign => BlockBehavior::default(), {
+ cherry_wall_sign => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
waterlogged: false,
},
- jungle_wall_sign => BlockBehavior::default(), {
+ jungle_wall_sign => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
waterlogged: false,
},
- dark_oak_wall_sign => BlockBehavior::default(), {
+ dark_oak_wall_sign => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
waterlogged: false,
},
- mangrove_wall_sign => BlockBehavior::default(), {
+ mangrove_wall_sign => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
waterlogged: false,
},
- bamboo_wall_sign => BlockBehavior::default(), {
+ bamboo_wall_sign => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
waterlogged: false,
},
- oak_hanging_sign => BlockBehavior::default(), {
+ oak_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), {
attached: false,
rotation: OakHangingSignRotation::_0,
waterlogged: false,
},
- spruce_hanging_sign => BlockBehavior::default(), {
+ spruce_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), {
attached: false,
rotation: SpruceHangingSignRotation::_0,
waterlogged: false,
},
- birch_hanging_sign => BlockBehavior::default(), {
+ birch_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), {
attached: false,
rotation: BirchHangingSignRotation::_0,
waterlogged: false,
},
- acacia_hanging_sign => BlockBehavior::default(), {
+ acacia_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), {
attached: false,
rotation: AcaciaHangingSignRotation::_0,
waterlogged: false,
},
- cherry_hanging_sign => BlockBehavior::default(), {
+ cherry_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), {
attached: false,
rotation: CherryHangingSignRotation::_0,
waterlogged: false,
},
- jungle_hanging_sign => BlockBehavior::default(), {
+ jungle_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), {
attached: false,
rotation: JungleHangingSignRotation::_0,
waterlogged: false,
},
- dark_oak_hanging_sign => BlockBehavior::default(), {
+ dark_oak_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), {
attached: false,
rotation: DarkOakHangingSignRotation::_0,
waterlogged: false,
},
- crimson_hanging_sign => BlockBehavior::default(), {
+ crimson_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), {
attached: false,
rotation: CrimsonHangingSignRotation::_0,
waterlogged: false,
},
- warped_hanging_sign => BlockBehavior::default(), {
+ warped_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), {
attached: false,
rotation: WarpedHangingSignRotation::_0,
waterlogged: false,
},
- mangrove_hanging_sign => BlockBehavior::default(), {
+ mangrove_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), {
attached: false,
rotation: MangroveHangingSignRotation::_0,
waterlogged: false,
},
- bamboo_hanging_sign => BlockBehavior::default(), {
+ bamboo_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), {
attached: false,
rotation: BambooHangingSignRotation::_0,
waterlogged: false,
},
- oak_wall_hanging_sign => BlockBehavior::default(), {
+ oak_wall_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
waterlogged: false,
},
- spruce_wall_hanging_sign => BlockBehavior::default(), {
+ spruce_wall_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
waterlogged: false,
},
- birch_wall_hanging_sign => BlockBehavior::default(), {
+ birch_wall_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
waterlogged: false,
},
- acacia_wall_hanging_sign => BlockBehavior::default(), {
+ acacia_wall_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
waterlogged: false,
},
- cherry_wall_hanging_sign => BlockBehavior::default(), {
+ cherry_wall_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
waterlogged: false,
},
- jungle_wall_hanging_sign => BlockBehavior::default(), {
+ jungle_wall_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
waterlogged: false,
},
- dark_oak_wall_hanging_sign => BlockBehavior::default(), {
+ dark_oak_wall_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
waterlogged: false,
},
- mangrove_wall_hanging_sign => BlockBehavior::default(), {
+ mangrove_wall_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
waterlogged: false,
},
- crimson_wall_hanging_sign => BlockBehavior::default(), {
+ crimson_wall_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
waterlogged: false,
},
- warped_wall_hanging_sign => BlockBehavior::default(), {
+ warped_wall_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
waterlogged: false,
},
- bamboo_wall_hanging_sign => BlockBehavior::default(), {
+ bamboo_wall_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
waterlogged: false,
},
- lever => BlockBehavior::default(), {
+ lever => BlockBehavior::new().strength(0.5, 0.5), {
face: Face::Wall,
facing: FacingCardinal::North,
powered: false,
},
- stone_pressure_plate => BlockBehavior::default(), {
+ stone_pressure_plate => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.5, 0.5), {
powered: false,
},
- iron_door => BlockBehavior::default(), {
+ iron_door => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 5.0), {
facing: FacingCardinal::North,
half: Half::Lower,
hinge: Hinge::Left,
open: false,
powered: false,
},
- oak_pressure_plate => BlockBehavior::default(), {
+ oak_pressure_plate => BlockBehavior::new().strength(0.5, 0.5), {
powered: false,
},
- spruce_pressure_plate => BlockBehavior::default(), {
+ spruce_pressure_plate => BlockBehavior::new().strength(0.5, 0.5), {
powered: false,
},
- birch_pressure_plate => BlockBehavior::default(), {
+ birch_pressure_plate => BlockBehavior::new().strength(0.5, 0.5), {
powered: false,
},
- jungle_pressure_plate => BlockBehavior::default(), {
+ jungle_pressure_plate => BlockBehavior::new().strength(0.5, 0.5), {
powered: false,
},
- acacia_pressure_plate => BlockBehavior::default(), {
+ acacia_pressure_plate => BlockBehavior::new().strength(0.5, 0.5), {
powered: false,
},
- cherry_pressure_plate => BlockBehavior::default(), {
+ cherry_pressure_plate => BlockBehavior::new().strength(0.5, 0.5), {
powered: false,
},
- dark_oak_pressure_plate => BlockBehavior::default(), {
+ dark_oak_pressure_plate => BlockBehavior::new().strength(0.5, 0.5), {
powered: false,
},
- mangrove_pressure_plate => BlockBehavior::default(), {
+ mangrove_pressure_plate => BlockBehavior::new().strength(0.5, 0.5), {
powered: false,
},
- bamboo_pressure_plate => BlockBehavior::default(), {
+ bamboo_pressure_plate => BlockBehavior::new().strength(0.5, 0.5), {
powered: false,
},
- redstone_ore => BlockBehavior::default(), {
+ redstone_ore => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 3.0), {
lit: false,
},
- deepslate_redstone_ore => BlockBehavior::default(), {
+ deepslate_redstone_ore => BlockBehavior::new().requires_correct_tool_for_drops().strength(4.5, 3.0), {
lit: false,
},
- redstone_torch => BlockBehavior::default(), {
+ redstone_torch => BlockBehavior::new(), {
lit: true,
},
- redstone_wall_torch => BlockBehavior::default(), {
+ redstone_wall_torch => BlockBehavior::new(), {
facing: FacingCardinal::North,
lit: true,
},
- stone_button => BlockBehavior::default(), {
+ stone_button => BlockBehavior::new().strength(0.5, 0.5), {
face: Face::Wall,
facing: FacingCardinal::North,
powered: false,
},
- snow => BlockBehavior::default(), {
+ snow => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.1, 0.1), {
layers: SnowLayers::_1,
},
- ice => BlockBehavior::default(), {},
- snow_block => BlockBehavior::default(), {},
- cactus => BlockBehavior::default(), {
+ ice => BlockBehavior::new().strength(0.5, 0.5).friction(0.98), {},
+ snow_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.2, 0.2), {},
+ cactus => BlockBehavior::new().strength(0.4, 0.4), {
age: CactusAge::_0,
},
- clay => BlockBehavior::default(), {},
- sugar_cane => BlockBehavior::default(), {
+ clay => BlockBehavior::new().strength(0.6, 0.6), {},
+ sugar_cane => BlockBehavior::new(), {
age: SugarCaneAge::_0,
},
- jukebox => BlockBehavior::default(), {
+ jukebox => BlockBehavior::new().strength(2.0, 6.0), {
has_record: false,
},
- oak_fence => BlockBehavior::default(), {
+ oak_fence => BlockBehavior::new().strength(2.0, 3.0), {
east: false,
north: false,
south: false,
waterlogged: false,
west: false,
},
- pumpkin => BlockBehavior::default(), {},
- netherrack => BlockBehavior::default(), {},
- soul_sand => BlockBehavior::default(), {},
- soul_soil => BlockBehavior::default(), {},
- basalt => BlockBehavior::default(), {
+ pumpkin => BlockBehavior::new().strength(1.0, 1.0), {},
+ netherrack => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.4, 0.4), {},
+ soul_sand => BlockBehavior::new().strength(0.5, 0.5), {},
+ soul_soil => BlockBehavior::new().strength(0.5, 0.5), {},
+ basalt => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.25, 4.2), {
axis: Axis::Y,
},
- polished_basalt => BlockBehavior::default(), {
+ polished_basalt => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.25, 4.2), {
axis: Axis::Y,
},
- soul_torch => BlockBehavior::default(), {},
- soul_wall_torch => BlockBehavior::default(), {
+ soul_torch => BlockBehavior::new(), {},
+ soul_wall_torch => BlockBehavior::new(), {
facing: FacingCardinal::North,
},
- glowstone => BlockBehavior::default(), {},
- nether_portal => BlockBehavior::default(), {
+ glowstone => BlockBehavior::new().strength(0.3, 0.3), {},
+ nether_portal => BlockBehavior::new().destroy_time(-1.0), {
axis: AxisXZ::X,
},
- carved_pumpkin => BlockBehavior::default(), {
+ carved_pumpkin => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
},
- jack_o_lantern => BlockBehavior::default(), {
+ jack_o_lantern => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
},
- cake => BlockBehavior::default(), {
+ cake => BlockBehavior::new().strength(0.5, 0.5), {
bites: CakeBites::_0,
},
- repeater => BlockBehavior::default(), {
+ repeater => BlockBehavior::new(), {
delay: RepeaterDelay::_1,
facing: FacingCardinal::North,
locked: false,
powered: false,
},
- white_stained_glass => BlockBehavior::default(), {},
- orange_stained_glass => BlockBehavior::default(), {},
- magenta_stained_glass => BlockBehavior::default(), {},
- light_blue_stained_glass => BlockBehavior::default(), {},
- yellow_stained_glass => BlockBehavior::default(), {},
- lime_stained_glass => BlockBehavior::default(), {},
- pink_stained_glass => BlockBehavior::default(), {},
- gray_stained_glass => BlockBehavior::default(), {},
- light_gray_stained_glass => BlockBehavior::default(), {},
- cyan_stained_glass => BlockBehavior::default(), {},
- purple_stained_glass => BlockBehavior::default(), {},
- blue_stained_glass => BlockBehavior::default(), {},
- brown_stained_glass => BlockBehavior::default(), {},
- green_stained_glass => BlockBehavior::default(), {},
- red_stained_glass => BlockBehavior::default(), {},
- black_stained_glass => BlockBehavior::default(), {},
- oak_trapdoor => BlockBehavior::default(), {
+ white_stained_glass => BlockBehavior::new().strength(0.3, 0.3), {},
+ orange_stained_glass => BlockBehavior::new().strength(0.3, 0.3), {},
+ magenta_stained_glass => BlockBehavior::new().strength(0.3, 0.3), {},
+ light_blue_stained_glass => BlockBehavior::new().strength(0.3, 0.3), {},
+ yellow_stained_glass => BlockBehavior::new().strength(0.3, 0.3), {},
+ lime_stained_glass => BlockBehavior::new().strength(0.3, 0.3), {},
+ pink_stained_glass => BlockBehavior::new().strength(0.3, 0.3), {},
+ gray_stained_glass => BlockBehavior::new().strength(0.3, 0.3), {},
+ light_gray_stained_glass => BlockBehavior::new().strength(0.3, 0.3), {},
+ cyan_stained_glass => BlockBehavior::new().strength(0.3, 0.3), {},
+ purple_stained_glass => BlockBehavior::new().strength(0.3, 0.3), {},
+ blue_stained_glass => BlockBehavior::new().strength(0.3, 0.3), {},
+ brown_stained_glass => BlockBehavior::new().strength(0.3, 0.3), {},
+ green_stained_glass => BlockBehavior::new().strength(0.3, 0.3), {},
+ red_stained_glass => BlockBehavior::new().strength(0.3, 0.3), {},
+ black_stained_glass => BlockBehavior::new().strength(0.3, 0.3), {},
+ oak_trapdoor => BlockBehavior::new().strength(3.0, 3.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
open: false,
powered: false,
waterlogged: false,
},
- spruce_trapdoor => BlockBehavior::default(), {
+ spruce_trapdoor => BlockBehavior::new().strength(3.0, 3.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
open: false,
powered: false,
waterlogged: false,
},
- birch_trapdoor => BlockBehavior::default(), {
+ birch_trapdoor => BlockBehavior::new().strength(3.0, 3.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
open: false,
powered: false,
waterlogged: false,
},
- jungle_trapdoor => BlockBehavior::default(), {
+ jungle_trapdoor => BlockBehavior::new().strength(3.0, 3.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
open: false,
powered: false,
waterlogged: false,
},
- acacia_trapdoor => BlockBehavior::default(), {
+ acacia_trapdoor => BlockBehavior::new().strength(3.0, 3.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
open: false,
powered: false,
waterlogged: false,
},
- cherry_trapdoor => BlockBehavior::default(), {
+ cherry_trapdoor => BlockBehavior::new().strength(3.0, 3.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
open: false,
powered: false,
waterlogged: false,
},
- dark_oak_trapdoor => BlockBehavior::default(), {
+ dark_oak_trapdoor => BlockBehavior::new().strength(3.0, 3.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
open: false,
powered: false,
waterlogged: false,
},
- mangrove_trapdoor => BlockBehavior::default(), {
+ mangrove_trapdoor => BlockBehavior::new().strength(3.0, 3.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
open: false,
powered: false,
waterlogged: false,
},
- bamboo_trapdoor => BlockBehavior::default(), {
+ bamboo_trapdoor => BlockBehavior::new().strength(3.0, 3.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
open: false,
powered: false,
waterlogged: false,
},
- stone_bricks => BlockBehavior::default(), {},
- mossy_stone_bricks => BlockBehavior::default(), {},
- cracked_stone_bricks => BlockBehavior::default(), {},
- chiseled_stone_bricks => BlockBehavior::default(), {},
- packed_mud => BlockBehavior::default(), {},
- mud_bricks => BlockBehavior::default(), {},
- infested_stone => BlockBehavior::default(), {},
- infested_cobblestone => BlockBehavior::default(), {},
- infested_stone_bricks => BlockBehavior::default(), {},
- infested_mossy_stone_bricks => BlockBehavior::default(), {},
- infested_cracked_stone_bricks => BlockBehavior::default(), {},
- infested_chiseled_stone_bricks => BlockBehavior::default(), {},
- brown_mushroom_block => BlockBehavior::default(), {
+ stone_bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {},
+ mossy_stone_bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {},
+ cracked_stone_bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {},
+ chiseled_stone_bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {},
+ packed_mud => BlockBehavior::new().strength(1.0, 3.0), {},
+ mud_bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 3.0), {},
+ infested_stone => BlockBehavior::new().strength(0.75, 0.75), {},
+ infested_cobblestone => BlockBehavior::new().strength(1.0, 0.75), {},
+ infested_stone_bricks => BlockBehavior::new().strength(0.75, 0.75), {},
+ infested_mossy_stone_bricks => BlockBehavior::new().strength(0.75, 0.75), {},
+ infested_cracked_stone_bricks => BlockBehavior::new().strength(0.75, 0.75), {},
+ infested_chiseled_stone_bricks => BlockBehavior::new().strength(0.75, 0.75), {},
+ brown_mushroom_block => BlockBehavior::new().strength(0.2, 0.2), {
down: true,
east: true,
north: true,
@@ -2798,7 +2798,7 @@ make_block_states! {
up: true,
west: true,
},
- red_mushroom_block => BlockBehavior::default(), {
+ red_mushroom_block => BlockBehavior::new().strength(0.2, 0.2), {
down: true,
east: true,
north: true,
@@ -2806,7 +2806,7 @@ make_block_states! {
up: true,
west: true,
},
- mushroom_stem => BlockBehavior::default(), {
+ mushroom_stem => BlockBehavior::new().strength(0.2, 0.2), {
down: true,
east: true,
north: true,
@@ -2814,45 +2814,45 @@ make_block_states! {
up: true,
west: true,
},
- iron_bars => BlockBehavior::default(), {
+ iron_bars => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 6.0), {
east: false,
north: false,
south: false,
waterlogged: false,
west: false,
},
- chain => BlockBehavior::default(), {
+ chain => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 6.0), {
axis: Axis::Y,
waterlogged: false,
},
- glass_pane => BlockBehavior::default(), {
+ glass_pane => BlockBehavior::new().strength(0.3, 0.3), {
east: false,
north: false,
south: false,
waterlogged: false,
west: false,
},
- melon => BlockBehavior::default(), {},
- attached_pumpkin_stem => BlockBehavior::default(), {
+ melon => BlockBehavior::new().strength(1.0, 1.0), {},
+ attached_pumpkin_stem => BlockBehavior::new(), {
facing: FacingCardinal::North,
},
- attached_melon_stem => BlockBehavior::default(), {
+ attached_melon_stem => BlockBehavior::new(), {
facing: FacingCardinal::North,
},
- pumpkin_stem => BlockBehavior::default(), {
+ pumpkin_stem => BlockBehavior::new(), {
age: PumpkinStemAge::_0,
},
- melon_stem => BlockBehavior::default(), {
+ melon_stem => BlockBehavior::new(), {
age: MelonStemAge::_0,
},
- vine => BlockBehavior::default(), {
+ vine => BlockBehavior::new().strength(0.2, 0.2), {
east: false,
north: false,
south: false,
up: false,
west: false,
},
- glow_lichen => BlockBehavior::default(), {
+ glow_lichen => BlockBehavior::new().strength(0.2, 0.2), {
down: false,
east: false,
north: false,
@@ -2861,97 +2861,97 @@ make_block_states! {
waterlogged: false,
west: false,
},
- oak_fence_gate => BlockBehavior::default(), {
+ oak_fence_gate => BlockBehavior::new().strength(2.0, 3.0), {
facing: FacingCardinal::North,
in_wall: false,
open: false,
powered: false,
},
- brick_stairs => BlockBehavior::default(), {
+ brick_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- stone_brick_stairs => BlockBehavior::default(), {
+ stone_brick_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- mud_brick_stairs => BlockBehavior::default(), {
+ mud_brick_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 3.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- mycelium => BlockBehavior::default(), {
+ mycelium => BlockBehavior::new().strength(0.6, 0.6), {
snowy: false,
},
- lily_pad => BlockBehavior::default(), {},
- nether_bricks => BlockBehavior::default(), {},
- nether_brick_fence => BlockBehavior::default(), {
+ lily_pad => BlockBehavior::new(), {},
+ nether_bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {},
+ nether_brick_fence => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
east: false,
north: false,
south: false,
waterlogged: false,
west: false,
},
- nether_brick_stairs => BlockBehavior::default(), {
+ nether_brick_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- nether_wart => BlockBehavior::default(), {
+ nether_wart => BlockBehavior::new(), {
age: NetherWartAge::_0,
},
- enchanting_table => BlockBehavior::default(), {},
- brewing_stand => BlockBehavior::default(), {
+ enchanting_table => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 1200.0), {},
+ brewing_stand => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.5, 0.5), {
has_bottle: false,
has_bottle: false,
has_bottle: false,
},
- cauldron => BlockBehavior::default(), {},
- water_cauldron => BlockBehavior::default(), {
+ cauldron => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 2.0), {},
+ water_cauldron => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 2.0), {
level: WaterCauldronLevel::_1,
},
- lava_cauldron => BlockBehavior::default(), {},
- powder_snow_cauldron => BlockBehavior::default(), {
+ lava_cauldron => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 2.0), {},
+ powder_snow_cauldron => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 2.0), {
level: PowderSnowCauldronLevel::_1,
},
- end_portal => BlockBehavior::default(), {},
- end_portal_frame => BlockBehavior::default(), {
+ end_portal => BlockBehavior::new().strength(-1.0, 3600000.0), {},
+ end_portal_frame => BlockBehavior::new().strength(-1.0, 3600000.0), {
eye: false,
facing: FacingCardinal::North,
},
- end_stone => BlockBehavior::default(), {},
- dragon_egg => BlockBehavior::default(), {},
- redstone_lamp => BlockBehavior::default(), {
+ end_stone => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 9.0), {},
+ dragon_egg => BlockBehavior::new().strength(3.0, 9.0), {},
+ redstone_lamp => BlockBehavior::new().strength(0.3, 0.3), {
lit: false,
},
- cocoa => BlockBehavior::default(), {
+ cocoa => BlockBehavior::new().strength(0.2, 3.0), {
age: CocoaAge::_0,
facing: FacingCardinal::North,
},
- sandstone_stairs => BlockBehavior::default(), {
+ sandstone_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.8, 0.8), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- emerald_ore => BlockBehavior::default(), {},
- deepslate_emerald_ore => BlockBehavior::default(), {},
- ender_chest => BlockBehavior::default(), {
+ emerald_ore => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 3.0), {},
+ deepslate_emerald_ore => BlockBehavior::new().requires_correct_tool_for_drops().strength(4.5, 3.0), {},
+ ender_chest => BlockBehavior::new().requires_correct_tool_for_drops().strength(22.5, 600.0), {
facing: FacingCardinal::North,
waterlogged: false,
},
- tripwire_hook => BlockBehavior::default(), {
+ tripwire_hook => BlockBehavior::new(), {
attached: false,
facing: FacingCardinal::North,
powered: false,
},
- tripwire => BlockBehavior::default(), {
+ tripwire => BlockBehavior::new(), {
attached: false,
disarmed: false,
east: false,
@@ -2960,31 +2960,31 @@ make_block_states! {
south: false,
west: false,
},
- emerald_block => BlockBehavior::default(), {},
- spruce_stairs => BlockBehavior::default(), {
+ emerald_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 6.0), {},
+ spruce_stairs => BlockBehavior::new().strength(2.0, 3.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- birch_stairs => BlockBehavior::default(), {
+ birch_stairs => BlockBehavior::new().strength(2.0, 3.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- jungle_stairs => BlockBehavior::default(), {
+ jungle_stairs => BlockBehavior::new().strength(2.0, 3.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- command_block => BlockBehavior::default(), {
+ command_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(-1.0, 3600000.0), {
conditional: false,
facing: FacingCubic::North,
},
- beacon => BlockBehavior::default(), {},
- cobblestone_wall => BlockBehavior::default(), {
+ beacon => BlockBehavior::new().strength(3.0, 3.0), {},
+ cobblestone_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
east: EastWall::None,
north: NorthWall::None,
south: SouthWall::None,
@@ -2992,7 +2992,7 @@ make_block_states! {
waterlogged: false,
west: WestWall::None,
},
- mossy_cobblestone_wall => BlockBehavior::default(), {
+ mossy_cobblestone_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
east: EastWall::None,
north: NorthWall::None,
south: SouthWall::None,
@@ -3000,802 +3000,802 @@ make_block_states! {
waterlogged: false,
west: WestWall::None,
},
- flower_pot => BlockBehavior::default(), {},
- potted_torchflower => BlockBehavior::default(), {},
- potted_oak_sapling => BlockBehavior::default(), {},
- potted_spruce_sapling => BlockBehavior::default(), {},
- potted_birch_sapling => BlockBehavior::default(), {},
- potted_jungle_sapling => BlockBehavior::default(), {},
- potted_acacia_sapling => BlockBehavior::default(), {},
- potted_cherry_sapling => BlockBehavior::default(), {},
- potted_dark_oak_sapling => BlockBehavior::default(), {},
- potted_mangrove_propagule => BlockBehavior::default(), {},
- potted_fern => BlockBehavior::default(), {},
- potted_dandelion => BlockBehavior::default(), {},
- potted_poppy => BlockBehavior::default(), {},
- potted_blue_orchid => BlockBehavior::default(), {},
- potted_allium => BlockBehavior::default(), {},
- potted_azure_bluet => BlockBehavior::default(), {},
- potted_red_tulip => BlockBehavior::default(), {},
- potted_orange_tulip => BlockBehavior::default(), {},
- potted_white_tulip => BlockBehavior::default(), {},
- potted_pink_tulip => BlockBehavior::default(), {},
- potted_oxeye_daisy => BlockBehavior::default(), {},
- potted_cornflower => BlockBehavior::default(), {},
- potted_lily_of_the_valley => BlockBehavior::default(), {},
- potted_wither_rose => BlockBehavior::default(), {},
- potted_red_mushroom => BlockBehavior::default(), {},
- potted_brown_mushroom => BlockBehavior::default(), {},
- potted_dead_bush => BlockBehavior::default(), {},
- potted_cactus => BlockBehavior::default(), {},
- carrots => BlockBehavior::default(), {
+ flower_pot => BlockBehavior::new(), {},
+ potted_torchflower => BlockBehavior::new(), {},
+ potted_oak_sapling => BlockBehavior::new(), {},
+ potted_spruce_sapling => BlockBehavior::new(), {},
+ potted_birch_sapling => BlockBehavior::new(), {},
+ potted_jungle_sapling => BlockBehavior::new(), {},
+ potted_acacia_sapling => BlockBehavior::new(), {},
+ potted_cherry_sapling => BlockBehavior::new(), {},
+ potted_dark_oak_sapling => BlockBehavior::new(), {},
+ potted_mangrove_propagule => BlockBehavior::new(), {},
+ potted_fern => BlockBehavior::new(), {},
+ potted_dandelion => BlockBehavior::new(), {},
+ potted_poppy => BlockBehavior::new(), {},
+ potted_blue_orchid => BlockBehavior::new(), {},
+ potted_allium => BlockBehavior::new(), {},
+ potted_azure_bluet => BlockBehavior::new(), {},
+ potted_red_tulip => BlockBehavior::new(), {},
+ potted_orange_tulip => BlockBehavior::new(), {},
+ potted_white_tulip => BlockBehavior::new(), {},
+ potted_pink_tulip => BlockBehavior::new(), {},
+ potted_oxeye_daisy => BlockBehavior::new(), {},
+ potted_cornflower => BlockBehavior::new(), {},
+ potted_lily_of_the_valley => BlockBehavior::new(), {},
+ potted_wither_rose => BlockBehavior::new(), {},
+ potted_red_mushroom => BlockBehavior::new(), {},
+ potted_brown_mushroom => BlockBehavior::new(), {},
+ potted_dead_bush => BlockBehavior::new(), {},
+ potted_cactus => BlockBehavior::new(), {},
+ carrots => BlockBehavior::new(), {
age: CarrotsAge::_0,
},
- potatoes => BlockBehavior::default(), {
+ potatoes => BlockBehavior::new(), {
age: PotatoesAge::_0,
},
- oak_button => BlockBehavior::default(), {
+ oak_button => BlockBehavior::new().strength(0.5, 0.5), {
face: Face::Wall,
facing: FacingCardinal::North,
powered: false,
},
- spruce_button => BlockBehavior::default(), {
+ spruce_button => BlockBehavior::new().strength(0.5, 0.5), {
face: Face::Wall,
facing: FacingCardinal::North,
powered: false,
},
- birch_button => BlockBehavior::default(), {
+ birch_button => BlockBehavior::new().strength(0.5, 0.5), {
face: Face::Wall,
facing: FacingCardinal::North,
powered: false,
},
- jungle_button => BlockBehavior::default(), {
+ jungle_button => BlockBehavior::new().strength(0.5, 0.5), {
face: Face::Wall,
facing: FacingCardinal::North,
powered: false,
},
- acacia_button => BlockBehavior::default(), {
+ acacia_button => BlockBehavior::new().strength(0.5, 0.5), {
face: Face::Wall,
facing: FacingCardinal::North,
powered: false,
},
- cherry_button => BlockBehavior::default(), {
+ cherry_button => BlockBehavior::new().strength(0.5, 0.5), {
face: Face::Wall,
facing: FacingCardinal::North,
powered: false,
},
- dark_oak_button => BlockBehavior::default(), {
+ dark_oak_button => BlockBehavior::new().strength(0.5, 0.5), {
face: Face::Wall,
facing: FacingCardinal::North,
powered: false,
},
- mangrove_button => BlockBehavior::default(), {
+ mangrove_button => BlockBehavior::new().strength(0.5, 0.5), {
face: Face::Wall,
facing: FacingCardinal::North,
powered: false,
},
- bamboo_button => BlockBehavior::default(), {
+ bamboo_button => BlockBehavior::new().strength(0.5, 0.5), {
face: Face::Wall,
facing: FacingCardinal::North,
powered: false,
},
- skeleton_skull => BlockBehavior::default(), {
+ skeleton_skull => BlockBehavior::new().strength(1.0, 1.0), {
rotation: SkeletonSkullRotation::_0,
},
- skeleton_wall_skull => BlockBehavior::default(), {
+ skeleton_wall_skull => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
},
- wither_skeleton_skull => BlockBehavior::default(), {
+ wither_skeleton_skull => BlockBehavior::new().strength(1.0, 1.0), {
rotation: WitherSkeletonSkullRotation::_0,
},
- wither_skeleton_wall_skull => BlockBehavior::default(), {
+ wither_skeleton_wall_skull => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
},
- zombie_head => BlockBehavior::default(), {
+ zombie_head => BlockBehavior::new().strength(1.0, 1.0), {
rotation: ZombieHeadRotation::_0,
},
- zombie_wall_head => BlockBehavior::default(), {
+ zombie_wall_head => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
},
- player_head => BlockBehavior::default(), {
+ player_head => BlockBehavior::new().strength(1.0, 1.0), {
rotation: PlayerHeadRotation::_0,
},
- player_wall_head => BlockBehavior::default(), {
+ player_wall_head => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
},
- creeper_head => BlockBehavior::default(), {
+ creeper_head => BlockBehavior::new().strength(1.0, 1.0), {
rotation: CreeperHeadRotation::_0,
},
- creeper_wall_head => BlockBehavior::default(), {
+ creeper_wall_head => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
},
- dragon_head => BlockBehavior::default(), {
+ dragon_head => BlockBehavior::new().strength(1.0, 1.0), {
rotation: DragonHeadRotation::_0,
},
- dragon_wall_head => BlockBehavior::default(), {
+ dragon_wall_head => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
},
- piglin_head => BlockBehavior::default(), {
+ piglin_head => BlockBehavior::new().strength(1.0, 1.0), {
rotation: PiglinHeadRotation::_0,
},
- piglin_wall_head => BlockBehavior::default(), {
+ piglin_wall_head => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
},
- anvil => BlockBehavior::default(), {
+ anvil => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 1200.0), {
facing: FacingCardinal::North,
},
- chipped_anvil => BlockBehavior::default(), {
+ chipped_anvil => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 1200.0), {
facing: FacingCardinal::North,
},
- damaged_anvil => BlockBehavior::default(), {
+ damaged_anvil => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 1200.0), {
facing: FacingCardinal::North,
},
- trapped_chest => BlockBehavior::default(), {
+ trapped_chest => BlockBehavior::new().strength(2.5, 2.5), {
kind: ChestType::Single,
facing: FacingCardinal::North,
waterlogged: false,
},
- light_weighted_pressure_plate => BlockBehavior::default(), {
+ light_weighted_pressure_plate => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.5, 0.5), {
power: LightWeightedPressurePlatePower::_0,
},
- heavy_weighted_pressure_plate => BlockBehavior::default(), {
+ heavy_weighted_pressure_plate => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.5, 0.5), {
power: HeavyWeightedPressurePlatePower::_0,
},
- comparator => BlockBehavior::default(), {
+ comparator => BlockBehavior::new(), {
facing: FacingCardinal::North,
mode: ComparatorType::Compare,
powered: false,
},
- daylight_detector => BlockBehavior::default(), {
+ daylight_detector => BlockBehavior::new().strength(0.2, 0.2), {
inverted: false,
power: DaylightDetectorPower::_0,
},
- redstone_block => BlockBehavior::default(), {},
- nether_quartz_ore => BlockBehavior::default(), {},
- hopper => BlockBehavior::default(), {
+ redstone_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 6.0), {},
+ nether_quartz_ore => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 3.0), {},
+ hopper => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 4.8), {
enabled: true,
facing: Facing::Down,
},
- quartz_block => BlockBehavior::default(), {},
- chiseled_quartz_block => BlockBehavior::default(), {},
- quartz_pillar => BlockBehavior::default(), {
+ quartz_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.8, 0.8), {},
+ chiseled_quartz_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.8, 0.8), {},
+ quartz_pillar => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.8, 0.8), {
axis: Axis::Y,
},
- quartz_stairs => BlockBehavior::default(), {
+ quartz_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.8, 0.8), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- activator_rail => BlockBehavior::default(), {
+ activator_rail => BlockBehavior::new().strength(0.7, 0.7), {
powered: false,
shape: RailShape::NorthSouth,
waterlogged: false,
},
- dropper => BlockBehavior::default(), {
+ dropper => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 3.5), {
facing: FacingCubic::North,
triggered: false,
},
- white_terracotta => BlockBehavior::default(), {},
- orange_terracotta => BlockBehavior::default(), {},
- magenta_terracotta => BlockBehavior::default(), {},
- light_blue_terracotta => BlockBehavior::default(), {},
- yellow_terracotta => BlockBehavior::default(), {},
- lime_terracotta => BlockBehavior::default(), {},
- pink_terracotta => BlockBehavior::default(), {},
- gray_terracotta => BlockBehavior::default(), {},
- light_gray_terracotta => BlockBehavior::default(), {},
- cyan_terracotta => BlockBehavior::default(), {},
- purple_terracotta => BlockBehavior::default(), {},
- blue_terracotta => BlockBehavior::default(), {},
- brown_terracotta => BlockBehavior::default(), {},
- green_terracotta => BlockBehavior::default(), {},
- red_terracotta => BlockBehavior::default(), {},
- black_terracotta => BlockBehavior::default(), {},
- white_stained_glass_pane => BlockBehavior::default(), {
+ white_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.25, 4.2), {},
+ orange_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.25, 4.2), {},
+ magenta_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.25, 4.2), {},
+ light_blue_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.25, 4.2), {},
+ yellow_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.25, 4.2), {},
+ lime_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.25, 4.2), {},
+ pink_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.25, 4.2), {},
+ gray_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.25, 4.2), {},
+ light_gray_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.25, 4.2), {},
+ cyan_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.25, 4.2), {},
+ purple_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.25, 4.2), {},
+ blue_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.25, 4.2), {},
+ brown_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.25, 4.2), {},
+ green_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.25, 4.2), {},
+ red_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.25, 4.2), {},
+ black_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.25, 4.2), {},
+ white_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), {
east: false,
north: false,
south: false,
waterlogged: false,
west: false,
},
- orange_stained_glass_pane => BlockBehavior::default(), {
+ orange_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), {
east: false,
north: false,
south: false,
waterlogged: false,
west: false,
},
- magenta_stained_glass_pane => BlockBehavior::default(), {
+ magenta_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), {
east: false,
north: false,
south: false,
waterlogged: false,
west: false,
},
- light_blue_stained_glass_pane => BlockBehavior::default(), {
+ light_blue_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), {
east: false,
north: false,
south: false,
waterlogged: false,
west: false,
},
- yellow_stained_glass_pane => BlockBehavior::default(), {
+ yellow_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), {
east: false,
north: false,
south: false,
waterlogged: false,
west: false,
},
- lime_stained_glass_pane => BlockBehavior::default(), {
+ lime_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), {
east: false,
north: false,
south: false,
waterlogged: false,
west: false,
},
- pink_stained_glass_pane => BlockBehavior::default(), {
+ pink_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), {
east: false,
north: false,
south: false,
waterlogged: false,
west: false,
},
- gray_stained_glass_pane => BlockBehavior::default(), {
+ gray_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), {
east: false,
north: false,
south: false,
waterlogged: false,
west: false,
},
- light_gray_stained_glass_pane => BlockBehavior::default(), {
+ light_gray_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), {
east: false,
north: false,
south: false,
waterlogged: false,
west: false,
},
- cyan_stained_glass_pane => BlockBehavior::default(), {
+ cyan_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), {
east: false,
north: false,
south: false,
waterlogged: false,
west: false,
},
- purple_stained_glass_pane => BlockBehavior::default(), {
+ purple_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), {
east: false,
north: false,
south: false,
waterlogged: false,
west: false,
},
- blue_stained_glass_pane => BlockBehavior::default(), {
+ blue_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), {
east: false,
north: false,
south: false,
waterlogged: false,
west: false,
},
- brown_stained_glass_pane => BlockBehavior::default(), {
+ brown_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), {
east: false,
north: false,
south: false,
waterlogged: false,
west: false,
},
- green_stained_glass_pane => BlockBehavior::default(), {
+ green_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), {
east: false,
north: false,
south: false,
waterlogged: false,
west: false,
},
- red_stained_glass_pane => BlockBehavior::default(), {
+ red_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), {
east: false,
north: false,
south: false,
waterlogged: false,
west: false,
},
- black_stained_glass_pane => BlockBehavior::default(), {
+ black_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), {
east: false,
north: false,
south: false,
waterlogged: false,
west: false,
},
- acacia_stairs => BlockBehavior::default(), {
+ acacia_stairs => BlockBehavior::new().strength(2.0, 3.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- cherry_stairs => BlockBehavior::default(), {
+ cherry_stairs => BlockBehavior::new().strength(2.0, 3.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- dark_oak_stairs => BlockBehavior::default(), {
+ dark_oak_stairs => BlockBehavior::new().strength(2.0, 3.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- mangrove_stairs => BlockBehavior::default(), {
+ mangrove_stairs => BlockBehavior::new().strength(2.0, 3.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- bamboo_stairs => BlockBehavior::default(), {
+ bamboo_stairs => BlockBehavior::new().strength(2.0, 3.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- bamboo_mosaic_stairs => BlockBehavior::default(), {
+ bamboo_mosaic_stairs => BlockBehavior::new().strength(2.0, 3.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- slime_block => BlockBehavior::default(), {},
- barrier => BlockBehavior::default(), {},
- light => BlockBehavior::default(), {
+ slime_block => BlockBehavior::new().friction(0.8), {},
+ barrier => BlockBehavior::new().strength(-1.0, 3600000.8), {},
+ light => BlockBehavior::new().strength(-1.0, 3600000.8), {
level: LightLevel::_15,
waterlogged: false,
},
- iron_trapdoor => BlockBehavior::default(), {
+ iron_trapdoor => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 5.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
open: false,
powered: false,
waterlogged: false,
},
- prismarine => BlockBehavior::default(), {},
- prismarine_bricks => BlockBehavior::default(), {},
- dark_prismarine => BlockBehavior::default(), {},
- prismarine_stairs => BlockBehavior::default(), {
+ prismarine => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {},
+ prismarine_bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {},
+ dark_prismarine => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {},
+ prismarine_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- prismarine_brick_stairs => BlockBehavior::default(), {
+ prismarine_brick_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- dark_prismarine_stairs => BlockBehavior::default(), {
+ dark_prismarine_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- prismarine_slab => BlockBehavior::default(), {
+ prismarine_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- prismarine_brick_slab => BlockBehavior::default(), {
+ prismarine_brick_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- dark_prismarine_slab => BlockBehavior::default(), {
+ dark_prismarine_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- sea_lantern => BlockBehavior::default(), {},
- hay_block => BlockBehavior::default(), {
+ sea_lantern => BlockBehavior::new().strength(0.3, 0.3), {},
+ hay_block => BlockBehavior::new().strength(0.5, 0.5), {
axis: Axis::Y,
},
- white_carpet => BlockBehavior::default(), {},
- orange_carpet => BlockBehavior::default(), {},
- magenta_carpet => BlockBehavior::default(), {},
- light_blue_carpet => BlockBehavior::default(), {},
- yellow_carpet => BlockBehavior::default(), {},
- lime_carpet => BlockBehavior::default(), {},
- pink_carpet => BlockBehavior::default(), {},
- gray_carpet => BlockBehavior::default(), {},
- light_gray_carpet => BlockBehavior::default(), {},
- cyan_carpet => BlockBehavior::default(), {},
- purple_carpet => BlockBehavior::default(), {},
- blue_carpet => BlockBehavior::default(), {},
- brown_carpet => BlockBehavior::default(), {},
- green_carpet => BlockBehavior::default(), {},
- red_carpet => BlockBehavior::default(), {},
- black_carpet => BlockBehavior::default(), {},
- terracotta => BlockBehavior::default(), {},
- coal_block => BlockBehavior::default(), {},
- packed_ice => BlockBehavior::default(), {},
- sunflower => BlockBehavior::default(), {
+ white_carpet => BlockBehavior::new().strength(0.1, 0.1), {},
+ orange_carpet => BlockBehavior::new().strength(0.1, 0.1), {},
+ magenta_carpet => BlockBehavior::new().strength(0.1, 0.1), {},
+ light_blue_carpet => BlockBehavior::new().strength(0.1, 0.1), {},
+ yellow_carpet => BlockBehavior::new().strength(0.1, 0.1), {},
+ lime_carpet => BlockBehavior::new().strength(0.1, 0.1), {},
+ pink_carpet => BlockBehavior::new().strength(0.1, 0.1), {},
+ gray_carpet => BlockBehavior::new().strength(0.1, 0.1), {},
+ light_gray_carpet => BlockBehavior::new().strength(0.1, 0.1), {},
+ cyan_carpet => BlockBehavior::new().strength(0.1, 0.1), {},
+ purple_carpet => BlockBehavior::new().strength(0.1, 0.1), {},
+ blue_carpet => BlockBehavior::new().strength(0.1, 0.1), {},
+ brown_carpet => BlockBehavior::new().strength(0.1, 0.1), {},
+ green_carpet => BlockBehavior::new().strength(0.1, 0.1), {},
+ red_carpet => BlockBehavior::new().strength(0.1, 0.1), {},
+ black_carpet => BlockBehavior::new().strength(0.1, 0.1), {},
+ terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.25, 4.2), {},
+ coal_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 6.0), {},
+ packed_ice => BlockBehavior::new().strength(0.5, 0.5).friction(0.98), {},
+ sunflower => BlockBehavior::new(), {
half: Half::Lower,
},
- lilac => BlockBehavior::default(), {
+ lilac => BlockBehavior::new(), {
half: Half::Lower,
},
- rose_bush => BlockBehavior::default(), {
+ rose_bush => BlockBehavior::new(), {
half: Half::Lower,
},
- peony => BlockBehavior::default(), {
+ peony => BlockBehavior::new(), {
half: Half::Lower,
},
- tall_grass => BlockBehavior::default(), {
+ tall_grass => BlockBehavior::new(), {
half: Half::Lower,
},
- large_fern => BlockBehavior::default(), {
+ large_fern => BlockBehavior::new(), {
half: Half::Lower,
},
- white_banner => BlockBehavior::default(), {
+ white_banner => BlockBehavior::new().strength(1.0, 1.0), {
rotation: WhiteBannerRotation::_0,
},
- orange_banner => BlockBehavior::default(), {
+ orange_banner => BlockBehavior::new().strength(1.0, 1.0), {
rotation: OrangeBannerRotation::_0,
},
- magenta_banner => BlockBehavior::default(), {
+ magenta_banner => BlockBehavior::new().strength(1.0, 1.0), {
rotation: MagentaBannerRotation::_0,
},
- light_blue_banner => BlockBehavior::default(), {
+ light_blue_banner => BlockBehavior::new().strength(1.0, 1.0), {
rotation: LightBlueBannerRotation::_0,
},
- yellow_banner => BlockBehavior::default(), {
+ yellow_banner => BlockBehavior::new().strength(1.0, 1.0), {
rotation: YellowBannerRotation::_0,
},
- lime_banner => BlockBehavior::default(), {
+ lime_banner => BlockBehavior::new().strength(1.0, 1.0), {
rotation: LimeBannerRotation::_0,
},
- pink_banner => BlockBehavior::default(), {
+ pink_banner => BlockBehavior::new().strength(1.0, 1.0), {
rotation: PinkBannerRotation::_0,
},
- gray_banner => BlockBehavior::default(), {
+ gray_banner => BlockBehavior::new().strength(1.0, 1.0), {
rotation: GrayBannerRotation::_0,
},
- light_gray_banner => BlockBehavior::default(), {
+ light_gray_banner => BlockBehavior::new().strength(1.0, 1.0), {
rotation: LightGrayBannerRotation::_0,
},
- cyan_banner => BlockBehavior::default(), {
+ cyan_banner => BlockBehavior::new().strength(1.0, 1.0), {
rotation: CyanBannerRotation::_0,
},
- purple_banner => BlockBehavior::default(), {
+ purple_banner => BlockBehavior::new().strength(1.0, 1.0), {
rotation: PurpleBannerRotation::_0,
},
- blue_banner => BlockBehavior::default(), {
+ blue_banner => BlockBehavior::new().strength(1.0, 1.0), {
rotation: BlueBannerRotation::_0,
},
- brown_banner => BlockBehavior::default(), {
+ brown_banner => BlockBehavior::new().strength(1.0, 1.0), {
rotation: BrownBannerRotation::_0,
},
- green_banner => BlockBehavior::default(), {
+ green_banner => BlockBehavior::new().strength(1.0, 1.0), {
rotation: GreenBannerRotation::_0,
},
- red_banner => BlockBehavior::default(), {
+ red_banner => BlockBehavior::new().strength(1.0, 1.0), {
rotation: RedBannerRotation::_0,
},
- black_banner => BlockBehavior::default(), {
+ black_banner => BlockBehavior::new().strength(1.0, 1.0), {
rotation: BlackBannerRotation::_0,
},
- white_wall_banner => BlockBehavior::default(), {
+ white_wall_banner => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
},
- orange_wall_banner => BlockBehavior::default(), {
+ orange_wall_banner => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
},
- magenta_wall_banner => BlockBehavior::default(), {
+ magenta_wall_banner => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
},
- light_blue_wall_banner => BlockBehavior::default(), {
+ light_blue_wall_banner => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
},
- yellow_wall_banner => BlockBehavior::default(), {
+ yellow_wall_banner => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
},
- lime_wall_banner => BlockBehavior::default(), {
+ lime_wall_banner => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
},
- pink_wall_banner => BlockBehavior::default(), {
+ pink_wall_banner => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
},
- gray_wall_banner => BlockBehavior::default(), {
+ gray_wall_banner => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
},
- light_gray_wall_banner => BlockBehavior::default(), {
+ light_gray_wall_banner => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
},
- cyan_wall_banner => BlockBehavior::default(), {
+ cyan_wall_banner => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
},
- purple_wall_banner => BlockBehavior::default(), {
+ purple_wall_banner => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
},
- blue_wall_banner => BlockBehavior::default(), {
+ blue_wall_banner => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
},
- brown_wall_banner => BlockBehavior::default(), {
+ brown_wall_banner => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
},
- green_wall_banner => BlockBehavior::default(), {
+ green_wall_banner => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
},
- red_wall_banner => BlockBehavior::default(), {
+ red_wall_banner => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
},
- black_wall_banner => BlockBehavior::default(), {
+ black_wall_banner => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
},
- red_sandstone => BlockBehavior::default(), {},
- chiseled_red_sandstone => BlockBehavior::default(), {},
- cut_red_sandstone => BlockBehavior::default(), {},
- red_sandstone_stairs => BlockBehavior::default(), {
+ red_sandstone => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.8, 0.8), {},
+ chiseled_red_sandstone => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.8, 0.8), {},
+ cut_red_sandstone => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.8, 0.8), {},
+ red_sandstone_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.8, 0.8), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- oak_slab => BlockBehavior::default(), {
+ oak_slab => BlockBehavior::new().strength(2.0, 3.0), {
kind: Type::Bottom,
waterlogged: false,
},
- spruce_slab => BlockBehavior::default(), {
+ spruce_slab => BlockBehavior::new().strength(2.0, 3.0), {
kind: Type::Bottom,
waterlogged: false,
},
- birch_slab => BlockBehavior::default(), {
+ birch_slab => BlockBehavior::new().strength(2.0, 3.0), {
kind: Type::Bottom,
waterlogged: false,
},
- jungle_slab => BlockBehavior::default(), {
+ jungle_slab => BlockBehavior::new().strength(2.0, 3.0), {
kind: Type::Bottom,
waterlogged: false,
},
- acacia_slab => BlockBehavior::default(), {
+ acacia_slab => BlockBehavior::new().strength(2.0, 3.0), {
kind: Type::Bottom,
waterlogged: false,
},
- cherry_slab => BlockBehavior::default(), {
+ cherry_slab => BlockBehavior::new().strength(2.0, 3.0), {
kind: Type::Bottom,
waterlogged: false,
},
- dark_oak_slab => BlockBehavior::default(), {
+ dark_oak_slab => BlockBehavior::new().strength(2.0, 3.0), {
kind: Type::Bottom,
waterlogged: false,
},
- mangrove_slab => BlockBehavior::default(), {
+ mangrove_slab => BlockBehavior::new().strength(2.0, 3.0), {
kind: Type::Bottom,
waterlogged: false,
},
- bamboo_slab => BlockBehavior::default(), {
+ bamboo_slab => BlockBehavior::new().strength(2.0, 3.0), {
kind: Type::Bottom,
waterlogged: false,
},
- bamboo_mosaic_slab => BlockBehavior::default(), {
+ bamboo_mosaic_slab => BlockBehavior::new().strength(2.0, 3.0), {
kind: Type::Bottom,
waterlogged: false,
},
- stone_slab => BlockBehavior::default(), {
+ stone_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- smooth_stone_slab => BlockBehavior::default(), {
+ smooth_stone_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- sandstone_slab => BlockBehavior::default(), {
+ sandstone_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- cut_sandstone_slab => BlockBehavior::default(), {
+ cut_sandstone_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- petrified_oak_slab => BlockBehavior::default(), {
+ petrified_oak_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- cobblestone_slab => BlockBehavior::default(), {
+ cobblestone_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- brick_slab => BlockBehavior::default(), {
+ brick_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- stone_brick_slab => BlockBehavior::default(), {
+ stone_brick_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- mud_brick_slab => BlockBehavior::default(), {
+ mud_brick_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 3.0), {
kind: Type::Bottom,
waterlogged: false,
},
- nether_brick_slab => BlockBehavior::default(), {
+ nether_brick_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- quartz_slab => BlockBehavior::default(), {
+ quartz_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- red_sandstone_slab => BlockBehavior::default(), {
+ red_sandstone_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- cut_red_sandstone_slab => BlockBehavior::default(), {
+ cut_red_sandstone_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- purpur_slab => BlockBehavior::default(), {
+ purpur_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- smooth_stone => BlockBehavior::default(), {},
- smooth_sandstone => BlockBehavior::default(), {},
- smooth_quartz => BlockBehavior::default(), {},
- smooth_red_sandstone => BlockBehavior::default(), {},
- spruce_fence_gate => BlockBehavior::default(), {
+ smooth_stone => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {},
+ smooth_sandstone => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {},
+ smooth_quartz => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {},
+ smooth_red_sandstone => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {},
+ spruce_fence_gate => BlockBehavior::new().strength(2.0, 3.0), {
facing: FacingCardinal::North,
in_wall: false,
open: false,
powered: false,
},
- birch_fence_gate => BlockBehavior::default(), {
+ birch_fence_gate => BlockBehavior::new().strength(2.0, 3.0), {
facing: FacingCardinal::North,
in_wall: false,
open: false,
powered: false,
},
- jungle_fence_gate => BlockBehavior::default(), {
+ jungle_fence_gate => BlockBehavior::new().strength(2.0, 3.0), {
facing: FacingCardinal::North,
in_wall: false,
open: false,
powered: false,
},
- acacia_fence_gate => BlockBehavior::default(), {
+ acacia_fence_gate => BlockBehavior::new().strength(2.0, 3.0), {
facing: FacingCardinal::North,
in_wall: false,
open: false,
powered: false,
},
- cherry_fence_gate => BlockBehavior::default(), {
+ cherry_fence_gate => BlockBehavior::new().strength(2.0, 3.0), {
facing: FacingCardinal::North,
in_wall: false,
open: false,
powered: false,
},
- dark_oak_fence_gate => BlockBehavior::default(), {
+ dark_oak_fence_gate => BlockBehavior::new().strength(2.0, 3.0), {
facing: FacingCardinal::North,
in_wall: false,
open: false,
powered: false,
},
- mangrove_fence_gate => BlockBehavior::default(), {
+ mangrove_fence_gate => BlockBehavior::new().strength(2.0, 3.0), {
facing: FacingCardinal::North,
in_wall: false,
open: false,
powered: false,
},
- bamboo_fence_gate => BlockBehavior::default(), {
+ bamboo_fence_gate => BlockBehavior::new().strength(2.0, 3.0), {
facing: FacingCardinal::North,
in_wall: false,
open: false,
powered: false,
},
- spruce_fence => BlockBehavior::default(), {
+ spruce_fence => BlockBehavior::new().strength(2.0, 3.0), {
east: false,
north: false,
south: false,
waterlogged: false,
west: false,
},
- birch_fence => BlockBehavior::default(), {
+ birch_fence => BlockBehavior::new().strength(2.0, 3.0), {
east: false,
north: false,
south: false,
waterlogged: false,
west: false,
},
- jungle_fence => BlockBehavior::default(), {
+ jungle_fence => BlockBehavior::new().strength(2.0, 3.0), {
east: false,
north: false,
south: false,
waterlogged: false,
west: false,
},
- acacia_fence => BlockBehavior::default(), {
+ acacia_fence => BlockBehavior::new().strength(2.0, 3.0), {
east: false,
north: false,
south: false,
waterlogged: false,
west: false,
},
- cherry_fence => BlockBehavior::default(), {
+ cherry_fence => BlockBehavior::new().strength(2.0, 3.0), {
east: false,
north: false,
south: false,
waterlogged: false,
west: false,
},
- dark_oak_fence => BlockBehavior::default(), {
+ dark_oak_fence => BlockBehavior::new().strength(2.0, 3.0), {
east: false,
north: false,
south: false,
waterlogged: false,
west: false,
},
- mangrove_fence => BlockBehavior::default(), {
+ mangrove_fence => BlockBehavior::new().strength(2.0, 3.0), {
east: false,
north: false,
south: false,
waterlogged: false,
west: false,
},
- bamboo_fence => BlockBehavior::default(), {
+ bamboo_fence => BlockBehavior::new().strength(2.0, 3.0), {
east: false,
north: false,
south: false,
waterlogged: false,
west: false,
},
- spruce_door => BlockBehavior::default(), {
+ spruce_door => BlockBehavior::new().strength(3.0, 3.0), {
facing: FacingCardinal::North,
half: Half::Lower,
hinge: Hinge::Left,
open: false,
powered: false,
},
- birch_door => BlockBehavior::default(), {
+ birch_door => BlockBehavior::new().strength(3.0, 3.0), {
facing: FacingCardinal::North,
half: Half::Lower,
hinge: Hinge::Left,
open: false,
powered: false,
},
- jungle_door => BlockBehavior::default(), {
+ jungle_door => BlockBehavior::new().strength(3.0, 3.0), {
facing: FacingCardinal::North,
half: Half::Lower,
hinge: Hinge::Left,
open: false,
powered: false,
},
- acacia_door => BlockBehavior::default(), {
+ acacia_door => BlockBehavior::new().strength(3.0, 3.0), {
facing: FacingCardinal::North,
half: Half::Lower,
hinge: Hinge::Left,
open: false,
powered: false,
},
- cherry_door => BlockBehavior::default(), {
+ cherry_door => BlockBehavior::new().strength(3.0, 3.0), {
facing: FacingCardinal::North,
half: Half::Lower,
hinge: Hinge::Left,
open: false,
powered: false,
},
- dark_oak_door => BlockBehavior::default(), {
+ dark_oak_door => BlockBehavior::new().strength(3.0, 3.0), {
facing: FacingCardinal::North,
half: Half::Lower,
hinge: Hinge::Left,
open: false,
powered: false,
},
- mangrove_door => BlockBehavior::default(), {
+ mangrove_door => BlockBehavior::new().strength(3.0, 3.0), {
facing: FacingCardinal::North,
half: Half::Lower,
hinge: Hinge::Left,
open: false,
powered: false,
},
- bamboo_door => BlockBehavior::default(), {
+ bamboo_door => BlockBehavior::new().strength(3.0, 3.0), {
facing: FacingCardinal::North,
half: Half::Lower,
hinge: Hinge::Left,
open: false,
powered: false,
},
- end_rod => BlockBehavior::default(), {
+ end_rod => BlockBehavior::new(), {
facing: FacingCubic::Up,
},
- chorus_plant => BlockBehavior::default(), {
+ chorus_plant => BlockBehavior::new().strength(0.4, 0.4), {
down: false,
east: false,
north: false,
@@ -3803,467 +3803,467 @@ make_block_states! {
up: false,
west: false,
},
- chorus_flower => BlockBehavior::default(), {
+ chorus_flower => BlockBehavior::new().strength(0.4, 0.4), {
age: ChorusFlowerAge::_0,
},
- purpur_block => BlockBehavior::default(), {},
- purpur_pillar => BlockBehavior::default(), {
+ purpur_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {},
+ purpur_pillar => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
axis: Axis::Y,
},
- purpur_stairs => BlockBehavior::default(), {
+ purpur_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- end_stone_bricks => BlockBehavior::default(), {},
- torchflower_crop => BlockBehavior::default(), {
+ end_stone_bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 9.0), {},
+ torchflower_crop => BlockBehavior::new(), {
age: TorchflowerCropAge::_0,
},
- pitcher_crop => BlockBehavior::default(), {
+ pitcher_crop => BlockBehavior::new(), {
age: _0_1_2_3_4::_0,
half: UpperLower::Lower,
},
- pitcher_plant => BlockBehavior::default(), {
+ pitcher_plant => BlockBehavior::new(), {
half: Half::Lower,
},
- beetroots => BlockBehavior::default(), {
+ beetroots => BlockBehavior::new(), {
age: BeetrootsAge::_0,
},
- dirt_path => BlockBehavior::default(), {},
- end_gateway => BlockBehavior::default(), {},
- repeating_command_block => BlockBehavior::default(), {
+ dirt_path => BlockBehavior::new().strength(0.65, 0.65), {},
+ end_gateway => BlockBehavior::new().strength(-1.0, 3600000.0), {},
+ repeating_command_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(-1.0, 3600000.0), {
conditional: false,
facing: FacingCubic::North,
},
- chain_command_block => BlockBehavior::default(), {
+ chain_command_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(-1.0, 3600000.0), {
conditional: false,
facing: FacingCubic::North,
},
- frosted_ice => BlockBehavior::default(), {
+ frosted_ice => BlockBehavior::new().strength(0.5, 0.5).friction(0.98), {
age: FrostedIceAge::_0,
},
- magma_block => BlockBehavior::default(), {},
- nether_wart_block => BlockBehavior::default(), {},
- red_nether_bricks => BlockBehavior::default(), {},
- bone_block => BlockBehavior::default(), {
+ magma_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.5, 0.5), {},
+ nether_wart_block => BlockBehavior::new().strength(1.0, 1.0), {},
+ red_nether_bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {},
+ bone_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 2.0), {
axis: Axis::Y,
},
- structure_void => BlockBehavior::default(), {},
- observer => BlockBehavior::default(), {
+ structure_void => BlockBehavior::new(), {},
+ observer => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 3.0), {
facing: FacingCubic::South,
powered: false,
},
- shulker_box => BlockBehavior::default(), {
+ shulker_box => BlockBehavior::new().strength(2.0, 2.0), {
facing: FacingCubic::Up,
},
- white_shulker_box => BlockBehavior::default(), {
+ white_shulker_box => BlockBehavior::new().strength(2.0, 2.0), {
facing: FacingCubic::Up,
},
- orange_shulker_box => BlockBehavior::default(), {
+ orange_shulker_box => BlockBehavior::new().strength(2.0, 2.0), {
facing: FacingCubic::Up,
},
- magenta_shulker_box => BlockBehavior::default(), {
+ magenta_shulker_box => BlockBehavior::new().strength(2.0, 2.0), {
facing: FacingCubic::Up,
},
- light_blue_shulker_box => BlockBehavior::default(), {
+ light_blue_shulker_box => BlockBehavior::new().strength(2.0, 2.0), {
facing: FacingCubic::Up,
},
- yellow_shulker_box => BlockBehavior::default(), {
+ yellow_shulker_box => BlockBehavior::new().strength(2.0, 2.0), {
facing: FacingCubic::Up,
},
- lime_shulker_box => BlockBehavior::default(), {
+ lime_shulker_box => BlockBehavior::new().strength(2.0, 2.0), {
facing: FacingCubic::Up,
},
- pink_shulker_box => BlockBehavior::default(), {
+ pink_shulker_box => BlockBehavior::new().strength(2.0, 2.0), {
facing: FacingCubic::Up,
},
- gray_shulker_box => BlockBehavior::default(), {
+ gray_shulker_box => BlockBehavior::new().strength(2.0, 2.0), {
facing: FacingCubic::Up,
},
- light_gray_shulker_box => BlockBehavior::default(), {
+ light_gray_shulker_box => BlockBehavior::new().strength(2.0, 2.0), {
facing: FacingCubic::Up,
},
- cyan_shulker_box => BlockBehavior::default(), {
+ cyan_shulker_box => BlockBehavior::new().strength(2.0, 2.0), {
facing: FacingCubic::Up,
},
- purple_shulker_box => BlockBehavior::default(), {
+ purple_shulker_box => BlockBehavior::new().strength(2.0, 2.0), {
facing: FacingCubic::Up,
},
- blue_shulker_box => BlockBehavior::default(), {
+ blue_shulker_box => BlockBehavior::new().strength(2.0, 2.0), {
facing: FacingCubic::Up,
},
- brown_shulker_box => BlockBehavior::default(), {
+ brown_shulker_box => BlockBehavior::new().strength(2.0, 2.0), {
facing: FacingCubic::Up,
},
- green_shulker_box => BlockBehavior::default(), {
+ green_shulker_box => BlockBehavior::new().strength(2.0, 2.0), {
facing: FacingCubic::Up,
},
- red_shulker_box => BlockBehavior::default(), {
+ red_shulker_box => BlockBehavior::new().strength(2.0, 2.0), {
facing: FacingCubic::Up,
},
- black_shulker_box => BlockBehavior::default(), {
+ black_shulker_box => BlockBehavior::new().strength(2.0, 2.0), {
facing: FacingCubic::Up,
},
- white_glazed_terracotta => BlockBehavior::default(), {
+ white_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), {
facing: FacingCardinal::North,
},
- orange_glazed_terracotta => BlockBehavior::default(), {
+ orange_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), {
facing: FacingCardinal::North,
},
- magenta_glazed_terracotta => BlockBehavior::default(), {
+ magenta_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), {
facing: FacingCardinal::North,
},
- light_blue_glazed_terracotta => BlockBehavior::default(), {
+ light_blue_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), {
facing: FacingCardinal::North,
},
- yellow_glazed_terracotta => BlockBehavior::default(), {
+ yellow_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), {
facing: FacingCardinal::North,
},
- lime_glazed_terracotta => BlockBehavior::default(), {
+ lime_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), {
facing: FacingCardinal::North,
},
- pink_glazed_terracotta => BlockBehavior::default(), {
+ pink_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), {
facing: FacingCardinal::North,
},
- gray_glazed_terracotta => BlockBehavior::default(), {
+ gray_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), {
facing: FacingCardinal::North,
},
- light_gray_glazed_terracotta => BlockBehavior::default(), {
+ light_gray_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), {
facing: FacingCardinal::North,
},
- cyan_glazed_terracotta => BlockBehavior::default(), {
+ cyan_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), {
facing: FacingCardinal::North,
},
- purple_glazed_terracotta => BlockBehavior::default(), {
+ purple_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), {
facing: FacingCardinal::North,
},
- blue_glazed_terracotta => BlockBehavior::default(), {
+ blue_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), {
facing: FacingCardinal::North,
},
- brown_glazed_terracotta => BlockBehavior::default(), {
+ brown_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), {
facing: FacingCardinal::North,
},
- green_glazed_terracotta => BlockBehavior::default(), {
+ green_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), {
facing: FacingCardinal::North,
},
- red_glazed_terracotta => BlockBehavior::default(), {
+ red_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), {
facing: FacingCardinal::North,
},
- black_glazed_terracotta => BlockBehavior::default(), {
+ black_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), {
facing: FacingCardinal::North,
},
- white_concrete => BlockBehavior::default(), {},
- orange_concrete => BlockBehavior::default(), {},
- magenta_concrete => BlockBehavior::default(), {},
- light_blue_concrete => BlockBehavior::default(), {},
- yellow_concrete => BlockBehavior::default(), {},
- lime_concrete => BlockBehavior::default(), {},
- pink_concrete => BlockBehavior::default(), {},
- gray_concrete => BlockBehavior::default(), {},
- light_gray_concrete => BlockBehavior::default(), {},
- cyan_concrete => BlockBehavior::default(), {},
- purple_concrete => BlockBehavior::default(), {},
- blue_concrete => BlockBehavior::default(), {},
- brown_concrete => BlockBehavior::default(), {},
- green_concrete => BlockBehavior::default(), {},
- red_concrete => BlockBehavior::default(), {},
- black_concrete => BlockBehavior::default(), {},
- white_concrete_powder => BlockBehavior::default(), {},
- orange_concrete_powder => BlockBehavior::default(), {},
- magenta_concrete_powder => BlockBehavior::default(), {},
- light_blue_concrete_powder => BlockBehavior::default(), {},
- yellow_concrete_powder => BlockBehavior::default(), {},
- lime_concrete_powder => BlockBehavior::default(), {},
- pink_concrete_powder => BlockBehavior::default(), {},
- gray_concrete_powder => BlockBehavior::default(), {},
- light_gray_concrete_powder => BlockBehavior::default(), {},
- cyan_concrete_powder => BlockBehavior::default(), {},
- purple_concrete_powder => BlockBehavior::default(), {},
- blue_concrete_powder => BlockBehavior::default(), {},
- brown_concrete_powder => BlockBehavior::default(), {},
- green_concrete_powder => BlockBehavior::default(), {},
- red_concrete_powder => BlockBehavior::default(), {},
- black_concrete_powder => BlockBehavior::default(), {},
- kelp => BlockBehavior::default(), {
+ white_concrete => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.8, 1.8), {},
+ orange_concrete => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.8, 1.8), {},
+ magenta_concrete => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.8, 1.8), {},
+ light_blue_concrete => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.8, 1.8), {},
+ yellow_concrete => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.8, 1.8), {},
+ lime_concrete => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.8, 1.8), {},
+ pink_concrete => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.8, 1.8), {},
+ gray_concrete => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.8, 1.8), {},
+ light_gray_concrete => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.8, 1.8), {},
+ cyan_concrete => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.8, 1.8), {},
+ purple_concrete => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.8, 1.8), {},
+ blue_concrete => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.8, 1.8), {},
+ brown_concrete => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.8, 1.8), {},
+ green_concrete => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.8, 1.8), {},
+ red_concrete => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.8, 1.8), {},
+ black_concrete => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.8, 1.8), {},
+ white_concrete_powder => BlockBehavior::new().strength(0.5, 0.5), {},
+ orange_concrete_powder => BlockBehavior::new().strength(0.5, 0.5), {},
+ magenta_concrete_powder => BlockBehavior::new().strength(0.5, 0.5), {},
+ light_blue_concrete_powder => BlockBehavior::new().strength(0.5, 0.5), {},
+ yellow_concrete_powder => BlockBehavior::new().strength(0.5, 0.5), {},
+ lime_concrete_powder => BlockBehavior::new().strength(0.5, 0.5), {},
+ pink_concrete_powder => BlockBehavior::new().strength(0.5, 0.5), {},
+ gray_concrete_powder => BlockBehavior::new().strength(0.5, 0.5), {},
+ light_gray_concrete_powder => BlockBehavior::new().strength(0.5, 0.5), {},
+ cyan_concrete_powder => BlockBehavior::new().strength(0.5, 0.5), {},
+ purple_concrete_powder => BlockBehavior::new().strength(0.5, 0.5), {},
+ blue_concrete_powder => BlockBehavior::new().strength(0.5, 0.5), {},
+ brown_concrete_powder => BlockBehavior::new().strength(0.5, 0.5), {},
+ green_concrete_powder => BlockBehavior::new().strength(0.5, 0.5), {},
+ red_concrete_powder => BlockBehavior::new().strength(0.5, 0.5), {},
+ black_concrete_powder => BlockBehavior::new().strength(0.5, 0.5), {},
+ kelp => BlockBehavior::new(), {
age: KelpAge::_0,
},
- kelp_plant => BlockBehavior::default(), {},
- dried_kelp_block => BlockBehavior::default(), {},
- turtle_egg => BlockBehavior::default(), {
+ kelp_plant => BlockBehavior::new(), {},
+ dried_kelp_block => BlockBehavior::new().strength(0.5, 2.5), {},
+ turtle_egg => BlockBehavior::new().strength(0.5, 0.5), {
eggs: TurtleEggEggs::_1,
hatch: TurtleEggHatch::_0,
},
- sniffer_egg => BlockBehavior::default(), {
- age: SnifferEggAge::_0,
- },
- dead_tube_coral_block => BlockBehavior::default(), {},
- dead_brain_coral_block => BlockBehavior::default(), {},
- dead_bubble_coral_block => BlockBehavior::default(), {},
- dead_fire_coral_block => BlockBehavior::default(), {},
- dead_horn_coral_block => BlockBehavior::default(), {},
- tube_coral_block => BlockBehavior::default(), {},
- brain_coral_block => BlockBehavior::default(), {},
- bubble_coral_block => BlockBehavior::default(), {},
- fire_coral_block => BlockBehavior::default(), {},
- horn_coral_block => BlockBehavior::default(), {},
- dead_tube_coral => BlockBehavior::default(), {
+ sniffer_egg => BlockBehavior::new().strength(0.5, 0.5), {
+ hatch: SnifferEggHatch::_0,
+ },
+ dead_tube_coral_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {},
+ dead_brain_coral_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {},
+ dead_bubble_coral_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {},
+ dead_fire_coral_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {},
+ dead_horn_coral_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {},
+ tube_coral_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {},
+ brain_coral_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {},
+ bubble_coral_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {},
+ fire_coral_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {},
+ horn_coral_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {},
+ dead_tube_coral => BlockBehavior::new().requires_correct_tool_for_drops(), {
waterlogged: true,
},
- dead_brain_coral => BlockBehavior::default(), {
+ dead_brain_coral => BlockBehavior::new().requires_correct_tool_for_drops(), {
waterlogged: true,
},
- dead_bubble_coral => BlockBehavior::default(), {
+ dead_bubble_coral => BlockBehavior::new().requires_correct_tool_for_drops(), {
waterlogged: true,
},
- dead_fire_coral => BlockBehavior::default(), {
+ dead_fire_coral => BlockBehavior::new().requires_correct_tool_for_drops(), {
waterlogged: true,
},
- dead_horn_coral => BlockBehavior::default(), {
+ dead_horn_coral => BlockBehavior::new().requires_correct_tool_for_drops(), {
waterlogged: true,
},
- tube_coral => BlockBehavior::default(), {
+ tube_coral => BlockBehavior::new(), {
waterlogged: true,
},
- brain_coral => BlockBehavior::default(), {
+ brain_coral => BlockBehavior::new(), {
waterlogged: true,
},
- bubble_coral => BlockBehavior::default(), {
+ bubble_coral => BlockBehavior::new(), {
waterlogged: true,
},
- fire_coral => BlockBehavior::default(), {
+ fire_coral => BlockBehavior::new(), {
waterlogged: true,
},
- horn_coral => BlockBehavior::default(), {
+ horn_coral => BlockBehavior::new(), {
waterlogged: true,
},
- dead_tube_coral_fan => BlockBehavior::default(), {
+ dead_tube_coral_fan => BlockBehavior::new().requires_correct_tool_for_drops(), {
waterlogged: true,
},
- dead_brain_coral_fan => BlockBehavior::default(), {
+ dead_brain_coral_fan => BlockBehavior::new().requires_correct_tool_for_drops(), {
waterlogged: true,
},
- dead_bubble_coral_fan => BlockBehavior::default(), {
+ dead_bubble_coral_fan => BlockBehavior::new().requires_correct_tool_for_drops(), {
waterlogged: true,
},
- dead_fire_coral_fan => BlockBehavior::default(), {
+ dead_fire_coral_fan => BlockBehavior::new().requires_correct_tool_for_drops(), {
waterlogged: true,
},
- dead_horn_coral_fan => BlockBehavior::default(), {
+ dead_horn_coral_fan => BlockBehavior::new().requires_correct_tool_for_drops(), {
waterlogged: true,
},
- tube_coral_fan => BlockBehavior::default(), {
+ tube_coral_fan => BlockBehavior::new(), {
waterlogged: true,
},
- brain_coral_fan => BlockBehavior::default(), {
+ brain_coral_fan => BlockBehavior::new(), {
waterlogged: true,
},
- bubble_coral_fan => BlockBehavior::default(), {
+ bubble_coral_fan => BlockBehavior::new(), {
waterlogged: true,
},
- fire_coral_fan => BlockBehavior::default(), {
+ fire_coral_fan => BlockBehavior::new(), {
waterlogged: true,
},
- horn_coral_fan => BlockBehavior::default(), {
+ horn_coral_fan => BlockBehavior::new(), {
waterlogged: true,
},
- dead_tube_coral_wall_fan => BlockBehavior::default(), {
+ dead_tube_coral_wall_fan => BlockBehavior::new().requires_correct_tool_for_drops(), {
facing: FacingCardinal::North,
waterlogged: true,
},
- dead_brain_coral_wall_fan => BlockBehavior::default(), {
+ dead_brain_coral_wall_fan => BlockBehavior::new().requires_correct_tool_for_drops(), {
facing: FacingCardinal::North,
waterlogged: true,
},
- dead_bubble_coral_wall_fan => BlockBehavior::default(), {
+ dead_bubble_coral_wall_fan => BlockBehavior::new().requires_correct_tool_for_drops(), {
facing: FacingCardinal::North,
waterlogged: true,
},
- dead_fire_coral_wall_fan => BlockBehavior::default(), {
+ dead_fire_coral_wall_fan => BlockBehavior::new().requires_correct_tool_for_drops(), {
facing: FacingCardinal::North,
waterlogged: true,
},
- dead_horn_coral_wall_fan => BlockBehavior::default(), {
+ dead_horn_coral_wall_fan => BlockBehavior::new().requires_correct_tool_for_drops(), {
facing: FacingCardinal::North,
waterlogged: true,
},
- tube_coral_wall_fan => BlockBehavior::default(), {
+ tube_coral_wall_fan => BlockBehavior::new(), {
facing: FacingCardinal::North,
waterlogged: true,
},
- brain_coral_wall_fan => BlockBehavior::default(), {
+ brain_coral_wall_fan => BlockBehavior::new(), {
facing: FacingCardinal::North,
waterlogged: true,
},
- bubble_coral_wall_fan => BlockBehavior::default(), {
+ bubble_coral_wall_fan => BlockBehavior::new(), {
facing: FacingCardinal::North,
waterlogged: true,
},
- fire_coral_wall_fan => BlockBehavior::default(), {
+ fire_coral_wall_fan => BlockBehavior::new(), {
facing: FacingCardinal::North,
waterlogged: true,
},
- horn_coral_wall_fan => BlockBehavior::default(), {
+ horn_coral_wall_fan => BlockBehavior::new(), {
facing: FacingCardinal::North,
waterlogged: true,
},
- sea_pickle => BlockBehavior::default(), {
+ sea_pickle => BlockBehavior::new(), {
pickles: SeaPicklePickles::_1,
waterlogged: true,
},
- blue_ice => BlockBehavior::default(), {},
- conduit => BlockBehavior::default(), {
+ blue_ice => BlockBehavior::new().strength(2.8, 2.8).friction(0.989), {},
+ conduit => BlockBehavior::new().strength(3.0, 3.0), {
waterlogged: true,
},
- bamboo_sapling => BlockBehavior::default(), {},
- bamboo => BlockBehavior::default(), {
+ bamboo_sapling => BlockBehavior::new().strength(1.0, 1.0), {},
+ bamboo => BlockBehavior::new().strength(1.0, 1.0), {
age: BambooAge::_0,
leaves: Leaves::None,
stage: BambooStage::_0,
},
- potted_bamboo => BlockBehavior::default(), {},
- void_air => BlockBehavior::default(), {},
- cave_air => BlockBehavior::default(), {},
- bubble_column => BlockBehavior::default(), {
+ potted_bamboo => BlockBehavior::new(), {},
+ void_air => BlockBehavior::new(), {},
+ cave_air => BlockBehavior::new(), {},
+ bubble_column => BlockBehavior::new(), {
drag: true,
},
- polished_granite_stairs => BlockBehavior::default(), {
+ polished_granite_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- smooth_red_sandstone_stairs => BlockBehavior::default(), {
+ smooth_red_sandstone_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- mossy_stone_brick_stairs => BlockBehavior::default(), {
+ mossy_stone_brick_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- polished_diorite_stairs => BlockBehavior::default(), {
+ polished_diorite_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- mossy_cobblestone_stairs => BlockBehavior::default(), {
+ mossy_cobblestone_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- end_stone_brick_stairs => BlockBehavior::default(), {
+ end_stone_brick_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 9.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- stone_stairs => BlockBehavior::default(), {
+ stone_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- smooth_sandstone_stairs => BlockBehavior::default(), {
+ smooth_sandstone_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- smooth_quartz_stairs => BlockBehavior::default(), {
+ smooth_quartz_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- granite_stairs => BlockBehavior::default(), {
+ granite_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- andesite_stairs => BlockBehavior::default(), {
+ andesite_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- red_nether_brick_stairs => BlockBehavior::default(), {
+ red_nether_brick_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- polished_andesite_stairs => BlockBehavior::default(), {
+ polished_andesite_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- diorite_stairs => BlockBehavior::default(), {
+ diorite_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- polished_granite_slab => BlockBehavior::default(), {
+ polished_granite_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- smooth_red_sandstone_slab => BlockBehavior::default(), {
+ smooth_red_sandstone_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- mossy_stone_brick_slab => BlockBehavior::default(), {
+ mossy_stone_brick_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- polished_diorite_slab => BlockBehavior::default(), {
+ polished_diorite_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- mossy_cobblestone_slab => BlockBehavior::default(), {
+ mossy_cobblestone_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- end_stone_brick_slab => BlockBehavior::default(), {
+ end_stone_brick_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 9.0), {
kind: Type::Bottom,
waterlogged: false,
},
- smooth_sandstone_slab => BlockBehavior::default(), {
+ smooth_sandstone_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- smooth_quartz_slab => BlockBehavior::default(), {
+ smooth_quartz_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- granite_slab => BlockBehavior::default(), {
+ granite_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- andesite_slab => BlockBehavior::default(), {
+ andesite_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- red_nether_brick_slab => BlockBehavior::default(), {
+ red_nether_brick_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- polished_andesite_slab => BlockBehavior::default(), {
+ polished_andesite_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- diorite_slab => BlockBehavior::default(), {
+ diorite_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- brick_wall => BlockBehavior::default(), {
+ brick_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
east: EastWall::None,
north: NorthWall::None,
south: SouthWall::None,
@@ -4271,7 +4271,7 @@ make_block_states! {
waterlogged: false,
west: WestWall::None,
},
- prismarine_wall => BlockBehavior::default(), {
+ prismarine_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
east: EastWall::None,
north: NorthWall::None,
south: SouthWall::None,
@@ -4279,7 +4279,7 @@ make_block_states! {
waterlogged: false,
west: WestWall::None,
},
- red_sandstone_wall => BlockBehavior::default(), {
+ red_sandstone_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.8, 0.8), {
east: EastWall::None,
north: NorthWall::None,
south: SouthWall::None,
@@ -4287,7 +4287,7 @@ make_block_states! {
waterlogged: false,
west: WestWall::None,
},
- mossy_stone_brick_wall => BlockBehavior::default(), {
+ mossy_stone_brick_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
east: EastWall::None,
north: NorthWall::None,
south: SouthWall::None,
@@ -4295,7 +4295,7 @@ make_block_states! {
waterlogged: false,
west: WestWall::None,
},
- granite_wall => BlockBehavior::default(), {
+ granite_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
east: EastWall::None,
north: NorthWall::None,
south: SouthWall::None,
@@ -4303,7 +4303,7 @@ make_block_states! {
waterlogged: false,
west: WestWall::None,
},
- stone_brick_wall => BlockBehavior::default(), {
+ stone_brick_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
east: EastWall::None,
north: NorthWall::None,
south: SouthWall::None,
@@ -4311,7 +4311,7 @@ make_block_states! {
waterlogged: false,
west: WestWall::None,
},
- mud_brick_wall => BlockBehavior::default(), {
+ mud_brick_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 3.0), {
east: EastWall::None,
north: NorthWall::None,
south: SouthWall::None,
@@ -4319,7 +4319,7 @@ make_block_states! {
waterlogged: false,
west: WestWall::None,
},
- nether_brick_wall => BlockBehavior::default(), {
+ nether_brick_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
east: EastWall::None,
north: NorthWall::None,
south: SouthWall::None,
@@ -4327,7 +4327,7 @@ make_block_states! {
waterlogged: false,
west: WestWall::None,
},
- andesite_wall => BlockBehavior::default(), {
+ andesite_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
east: EastWall::None,
north: NorthWall::None,
south: SouthWall::None,
@@ -4335,7 +4335,7 @@ make_block_states! {
waterlogged: false,
west: WestWall::None,
},
- red_nether_brick_wall => BlockBehavior::default(), {
+ red_nether_brick_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
east: EastWall::None,
north: NorthWall::None,
south: SouthWall::None,
@@ -4343,7 +4343,7 @@ make_block_states! {
waterlogged: false,
west: WestWall::None,
},
- sandstone_wall => BlockBehavior::default(), {
+ sandstone_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.8, 0.8), {
east: EastWall::None,
north: NorthWall::None,
south: SouthWall::None,
@@ -4351,7 +4351,7 @@ make_block_states! {
waterlogged: false,
west: WestWall::None,
},
- end_stone_brick_wall => BlockBehavior::default(), {
+ end_stone_brick_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 9.0), {
east: EastWall::None,
north: NorthWall::None,
south: SouthWall::None,
@@ -4359,7 +4359,7 @@ make_block_states! {
waterlogged: false,
west: WestWall::None,
},
- diorite_wall => BlockBehavior::default(), {
+ diorite_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
east: EastWall::None,
north: NorthWall::None,
south: SouthWall::None,
@@ -4367,259 +4367,259 @@ make_block_states! {
waterlogged: false,
west: WestWall::None,
},
- scaffolding => BlockBehavior::default(), {
+ scaffolding => BlockBehavior::new(), {
bottom: false,
distance: ScaffoldingDistance::_7,
waterlogged: false,
},
- loom => BlockBehavior::default(), {
+ loom => BlockBehavior::new().strength(2.5, 2.5), {
facing: FacingCardinal::North,
},
- barrel => BlockBehavior::default(), {
+ barrel => BlockBehavior::new().strength(2.5, 2.5), {
facing: FacingCubic::North,
open: false,
},
- smoker => BlockBehavior::default(), {
+ smoker => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 3.5), {
facing: FacingCardinal::North,
lit: false,
},
- blast_furnace => BlockBehavior::default(), {
+ blast_furnace => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 3.5), {
facing: FacingCardinal::North,
lit: false,
},
- cartography_table => BlockBehavior::default(), {},
- fletching_table => BlockBehavior::default(), {},
- grindstone => BlockBehavior::default(), {
+ cartography_table => BlockBehavior::new().strength(2.5, 2.5), {},
+ fletching_table => BlockBehavior::new().strength(2.5, 2.5), {},
+ grindstone => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
face: Face::Wall,
facing: FacingCardinal::North,
},
- lectern => BlockBehavior::default(), {
+ lectern => BlockBehavior::new().strength(2.5, 2.5), {
facing: FacingCardinal::North,
has_book: false,
powered: false,
},
- smithing_table => BlockBehavior::default(), {},
- stonecutter => BlockBehavior::default(), {
+ smithing_table => BlockBehavior::new().strength(2.5, 2.5), {},
+ stonecutter => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 3.5), {
facing: FacingCardinal::North,
},
- bell => BlockBehavior::default(), {
+ bell => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 5.0), {
attachment: Attachment::Floor,
facing: FacingCardinal::North,
powered: false,
},
- lantern => BlockBehavior::default(), {
+ lantern => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 3.5), {
hanging: false,
waterlogged: false,
},
- soul_lantern => BlockBehavior::default(), {
+ soul_lantern => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 3.5), {
hanging: false,
waterlogged: false,
},
- campfire => BlockBehavior::default(), {
+ campfire => BlockBehavior::new().strength(2.0, 2.0), {
facing: FacingCardinal::North,
lit: true,
signal_fire: false,
waterlogged: false,
},
- soul_campfire => BlockBehavior::default(), {
+ soul_campfire => BlockBehavior::new().strength(2.0, 2.0), {
facing: FacingCardinal::North,
lit: true,
signal_fire: false,
waterlogged: false,
},
- sweet_berry_bush => BlockBehavior::default(), {
+ sweet_berry_bush => BlockBehavior::new(), {
age: SweetBerryBushAge::_0,
},
- warped_stem => BlockBehavior::default(), {
+ warped_stem => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- stripped_warped_stem => BlockBehavior::default(), {
+ stripped_warped_stem => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- warped_hyphae => BlockBehavior::default(), {
+ warped_hyphae => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- stripped_warped_hyphae => BlockBehavior::default(), {
+ stripped_warped_hyphae => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- warped_nylium => BlockBehavior::default(), {},
- warped_fungus => BlockBehavior::default(), {},
- warped_wart_block => BlockBehavior::default(), {},
- warped_roots => BlockBehavior::default(), {},
- nether_sprouts => BlockBehavior::default(), {},
- crimson_stem => BlockBehavior::default(), {
+ warped_nylium => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.4, 0.4), {},
+ warped_fungus => BlockBehavior::new(), {},
+ warped_wart_block => BlockBehavior::new().strength(1.0, 1.0), {},
+ warped_roots => BlockBehavior::new(), {},
+ nether_sprouts => BlockBehavior::new(), {},
+ crimson_stem => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- stripped_crimson_stem => BlockBehavior::default(), {
+ stripped_crimson_stem => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- crimson_hyphae => BlockBehavior::default(), {
+ crimson_hyphae => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- stripped_crimson_hyphae => BlockBehavior::default(), {
+ stripped_crimson_hyphae => BlockBehavior::new().strength(2.0, 2.0), {
axis: Axis::Y,
},
- crimson_nylium => BlockBehavior::default(), {},
- crimson_fungus => BlockBehavior::default(), {},
- shroomlight => BlockBehavior::default(), {},
- weeping_vines => BlockBehavior::default(), {
+ crimson_nylium => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.4, 0.4), {},
+ crimson_fungus => BlockBehavior::new(), {},
+ shroomlight => BlockBehavior::new().strength(1.0, 1.0), {},
+ weeping_vines => BlockBehavior::new(), {
age: WeepingVinesAge::_0,
},
- weeping_vines_plant => BlockBehavior::default(), {},
- twisting_vines => BlockBehavior::default(), {
+ weeping_vines_plant => BlockBehavior::new(), {},
+ twisting_vines => BlockBehavior::new(), {
age: TwistingVinesAge::_0,
},
- twisting_vines_plant => BlockBehavior::default(), {},
- crimson_roots => BlockBehavior::default(), {},
- crimson_planks => BlockBehavior::default(), {},
- warped_planks => BlockBehavior::default(), {},
- crimson_slab => BlockBehavior::default(), {
+ twisting_vines_plant => BlockBehavior::new(), {},
+ crimson_roots => BlockBehavior::new(), {},
+ crimson_planks => BlockBehavior::new().strength(2.0, 3.0), {},
+ warped_planks => BlockBehavior::new().strength(2.0, 3.0), {},
+ crimson_slab => BlockBehavior::new().strength(2.0, 3.0), {
kind: Type::Bottom,
waterlogged: false,
},
- warped_slab => BlockBehavior::default(), {
+ warped_slab => BlockBehavior::new().strength(2.0, 3.0), {
kind: Type::Bottom,
waterlogged: false,
},
- crimson_pressure_plate => BlockBehavior::default(), {
+ crimson_pressure_plate => BlockBehavior::new().strength(0.5, 0.5), {
powered: false,
},
- warped_pressure_plate => BlockBehavior::default(), {
+ warped_pressure_plate => BlockBehavior::new().strength(0.5, 0.5), {
powered: false,
},
- crimson_fence => BlockBehavior::default(), {
+ crimson_fence => BlockBehavior::new().strength(2.0, 3.0), {
east: false,
north: false,
south: false,
waterlogged: false,
west: false,
},
- warped_fence => BlockBehavior::default(), {
+ warped_fence => BlockBehavior::new().strength(2.0, 3.0), {
east: false,
north: false,
south: false,
waterlogged: false,
west: false,
},
- crimson_trapdoor => BlockBehavior::default(), {
+ crimson_trapdoor => BlockBehavior::new().strength(3.0, 3.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
open: false,
powered: false,
waterlogged: false,
},
- warped_trapdoor => BlockBehavior::default(), {
+ warped_trapdoor => BlockBehavior::new().strength(3.0, 3.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
open: false,
powered: false,
waterlogged: false,
},
- crimson_fence_gate => BlockBehavior::default(), {
+ crimson_fence_gate => BlockBehavior::new().strength(2.0, 3.0), {
facing: FacingCardinal::North,
in_wall: false,
open: false,
powered: false,
},
- warped_fence_gate => BlockBehavior::default(), {
+ warped_fence_gate => BlockBehavior::new().strength(2.0, 3.0), {
facing: FacingCardinal::North,
in_wall: false,
open: false,
powered: false,
},
- crimson_stairs => BlockBehavior::default(), {
+ crimson_stairs => BlockBehavior::new().strength(2.0, 3.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- warped_stairs => BlockBehavior::default(), {
+ warped_stairs => BlockBehavior::new().strength(2.0, 3.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- crimson_button => BlockBehavior::default(), {
+ crimson_button => BlockBehavior::new().strength(0.5, 0.5), {
face: Face::Wall,
facing: FacingCardinal::North,
powered: false,
},
- warped_button => BlockBehavior::default(), {
+ warped_button => BlockBehavior::new().strength(0.5, 0.5), {
face: Face::Wall,
facing: FacingCardinal::North,
powered: false,
},
- crimson_door => BlockBehavior::default(), {
+ crimson_door => BlockBehavior::new().strength(3.0, 3.0), {
facing: FacingCardinal::North,
half: Half::Lower,
hinge: Hinge::Left,
open: false,
powered: false,
},
- warped_door => BlockBehavior::default(), {
+ warped_door => BlockBehavior::new().strength(3.0, 3.0), {
facing: FacingCardinal::North,
half: Half::Lower,
hinge: Hinge::Left,
open: false,
powered: false,
},
- crimson_sign => BlockBehavior::default(), {
+ crimson_sign => BlockBehavior::new().strength(1.0, 1.0), {
rotation: CrimsonSignRotation::_0,
waterlogged: false,
},
- warped_sign => BlockBehavior::default(), {
+ warped_sign => BlockBehavior::new().strength(1.0, 1.0), {
rotation: WarpedSignRotation::_0,
waterlogged: false,
},
- crimson_wall_sign => BlockBehavior::default(), {
+ crimson_wall_sign => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
waterlogged: false,
},
- warped_wall_sign => BlockBehavior::default(), {
+ warped_wall_sign => BlockBehavior::new().strength(1.0, 1.0), {
facing: FacingCardinal::North,
waterlogged: false,
},
- structure_block => BlockBehavior::default(), {
+ structure_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(-1.0, 3600000.0), {
mode: Mode::Load,
},
- jigsaw => BlockBehavior::default(), {
+ jigsaw => BlockBehavior::new().requires_correct_tool_for_drops().strength(-1.0, 3600000.0), {
orientation: Orientation::NorthUp,
},
- composter => BlockBehavior::default(), {
+ composter => BlockBehavior::new().strength(0.6, 0.6), {
level: ComposterLevel::_0,
},
- target => BlockBehavior::default(), {
+ target => BlockBehavior::new().strength(0.5, 0.5), {
power: TargetOutputPower::_0,
},
- bee_nest => BlockBehavior::default(), {
+ bee_nest => BlockBehavior::new().strength(0.3, 0.3), {
facing: FacingCardinal::North,
honey_level: BeeNestHoneyLevel::_0,
},
- beehive => BlockBehavior::default(), {
+ beehive => BlockBehavior::new().strength(0.6, 0.6), {
facing: FacingCardinal::North,
honey_level: BeehiveHoneyLevel::_0,
},
- honey_block => BlockBehavior::default(), {},
- honeycomb_block => BlockBehavior::default(), {},
- netherite_block => BlockBehavior::default(), {},
- ancient_debris => BlockBehavior::default(), {},
- crying_obsidian => BlockBehavior::default(), {},
- respawn_anchor => BlockBehavior::default(), {
+ honey_block => BlockBehavior::new(), {},
+ honeycomb_block => BlockBehavior::new().strength(0.6, 0.6), {},
+ netherite_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(50.0, 1200.0), {},
+ ancient_debris => BlockBehavior::new().requires_correct_tool_for_drops().strength(30.0, 1200.0), {},
+ crying_obsidian => BlockBehavior::new().requires_correct_tool_for_drops().strength(50.0, 1200.0), {},
+ respawn_anchor => BlockBehavior::new().requires_correct_tool_for_drops().strength(50.0, 1200.0), {
charges: RespawnAnchorCharge::_0,
},
- potted_crimson_fungus => BlockBehavior::default(), {},
- potted_warped_fungus => BlockBehavior::default(), {},
- potted_crimson_roots => BlockBehavior::default(), {},
- potted_warped_roots => BlockBehavior::default(), {},
- lodestone => BlockBehavior::default(), {},
- blackstone => BlockBehavior::default(), {},
- blackstone_stairs => BlockBehavior::default(), {
+ potted_crimson_fungus => BlockBehavior::new(), {},
+ potted_warped_fungus => BlockBehavior::new(), {},
+ potted_crimson_roots => BlockBehavior::new(), {},
+ potted_warped_roots => BlockBehavior::new(), {},
+ lodestone => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 3.5), {},
+ blackstone => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {},
+ blackstone_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- blackstone_wall => BlockBehavior::default(), {
+ blackstone_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
east: EastWall::None,
north: NorthWall::None,
south: SouthWall::None,
@@ -4627,25 +4627,25 @@ make_block_states! {
waterlogged: false,
west: WestWall::None,
},
- blackstone_slab => BlockBehavior::default(), {
+ blackstone_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- polished_blackstone => BlockBehavior::default(), {},
- polished_blackstone_bricks => BlockBehavior::default(), {},
- cracked_polished_blackstone_bricks => BlockBehavior::default(), {},
- chiseled_polished_blackstone => BlockBehavior::default(), {},
- polished_blackstone_brick_slab => BlockBehavior::default(), {
+ polished_blackstone => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {},
+ polished_blackstone_bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {},
+ cracked_polished_blackstone_bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {},
+ chiseled_polished_blackstone => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {},
+ polished_blackstone_brick_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- polished_blackstone_brick_stairs => BlockBehavior::default(), {
+ polished_blackstone_brick_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- polished_blackstone_brick_wall => BlockBehavior::default(), {
+ polished_blackstone_brick_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {
east: EastWall::None,
north: NorthWall::None,
south: SouthWall::None,
@@ -4653,26 +4653,26 @@ make_block_states! {
waterlogged: false,
west: WestWall::None,
},
- gilded_blackstone => BlockBehavior::default(), {},
- polished_blackstone_stairs => BlockBehavior::default(), {
+ gilded_blackstone => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {},
+ polished_blackstone_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- polished_blackstone_slab => BlockBehavior::default(), {
+ polished_blackstone_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- polished_blackstone_pressure_plate => BlockBehavior::default(), {
+ polished_blackstone_pressure_plate => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.5, 0.5), {
powered: false,
},
- polished_blackstone_button => BlockBehavior::default(), {
+ polished_blackstone_button => BlockBehavior::new().strength(0.5, 0.5), {
face: Face::Wall,
facing: FacingCardinal::North,
powered: false,
},
- polished_blackstone_wall => BlockBehavior::default(), {
+ polished_blackstone_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {
east: EastWall::None,
north: NorthWall::None,
south: SouthWall::None,
@@ -4680,180 +4680,180 @@ make_block_states! {
waterlogged: false,
west: WestWall::None,
},
- chiseled_nether_bricks => BlockBehavior::default(), {},
- cracked_nether_bricks => BlockBehavior::default(), {},
- quartz_bricks => BlockBehavior::default(), {},
- candle => BlockBehavior::default(), {
+ chiseled_nether_bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {},
+ cracked_nether_bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {},
+ quartz_bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.8, 0.8), {},
+ candle => BlockBehavior::new().strength(0.1, 0.1), {
candles: CandleCandles::_1,
lit: false,
waterlogged: false,
},
- white_candle => BlockBehavior::default(), {
+ white_candle => BlockBehavior::new().strength(0.1, 0.1), {
candles: WhiteCandleCandles::_1,
lit: false,
waterlogged: false,
},
- orange_candle => BlockBehavior::default(), {
+ orange_candle => BlockBehavior::new().strength(0.1, 0.1), {
candles: OrangeCandleCandles::_1,
lit: false,
waterlogged: false,
},
- magenta_candle => BlockBehavior::default(), {
+ magenta_candle => BlockBehavior::new().strength(0.1, 0.1), {
candles: MagentaCandleCandles::_1,
lit: false,
waterlogged: false,
},
- light_blue_candle => BlockBehavior::default(), {
+ light_blue_candle => BlockBehavior::new().strength(0.1, 0.1), {
candles: LightBlueCandleCandles::_1,
lit: false,
waterlogged: false,
},
- yellow_candle => BlockBehavior::default(), {
+ yellow_candle => BlockBehavior::new().strength(0.1, 0.1), {
candles: YellowCandleCandles::_1,
lit: false,
waterlogged: false,
},
- lime_candle => BlockBehavior::default(), {
+ lime_candle => BlockBehavior::new().strength(0.1, 0.1), {
candles: LimeCandleCandles::_1,
lit: false,
waterlogged: false,
},
- pink_candle => BlockBehavior::default(), {
+ pink_candle => BlockBehavior::new().strength(0.1, 0.1), {
candles: PinkCandleCandles::_1,
lit: false,
waterlogged: false,
},
- gray_candle => BlockBehavior::default(), {
+ gray_candle => BlockBehavior::new().strength(0.1, 0.1), {
candles: GrayCandleCandles::_1,
lit: false,
waterlogged: false,
},
- light_gray_candle => BlockBehavior::default(), {
+ light_gray_candle => BlockBehavior::new().strength(0.1, 0.1), {
candles: LightGrayCandleCandles::_1,
lit: false,
waterlogged: false,
},
- cyan_candle => BlockBehavior::default(), {
+ cyan_candle => BlockBehavior::new().strength(0.1, 0.1), {
candles: CyanCandleCandles::_1,
lit: false,
waterlogged: false,
},
- purple_candle => BlockBehavior::default(), {
+ purple_candle => BlockBehavior::new().strength(0.1, 0.1), {
candles: PurpleCandleCandles::_1,
lit: false,
waterlogged: false,
},
- blue_candle => BlockBehavior::default(), {
+ blue_candle => BlockBehavior::new().strength(0.1, 0.1), {
candles: BlueCandleCandles::_1,
lit: false,
waterlogged: false,
},
- brown_candle => BlockBehavior::default(), {
+ brown_candle => BlockBehavior::new().strength(0.1, 0.1), {
candles: BrownCandleCandles::_1,
lit: false,
waterlogged: false,
},
- green_candle => BlockBehavior::default(), {
+ green_candle => BlockBehavior::new().strength(0.1, 0.1), {
candles: GreenCandleCandles::_1,
lit: false,
waterlogged: false,
},
- red_candle => BlockBehavior::default(), {
+ red_candle => BlockBehavior::new().strength(0.1, 0.1), {
candles: RedCandleCandles::_1,
lit: false,
waterlogged: false,
},
- black_candle => BlockBehavior::default(), {
+ black_candle => BlockBehavior::new().strength(0.1, 0.1), {
candles: BlackCandleCandles::_1,
lit: false,
waterlogged: false,
},
- candle_cake => BlockBehavior::default(), {
+ candle_cake => BlockBehavior::new().strength(0.5, 0.5), {
lit: false,
},
- white_candle_cake => BlockBehavior::default(), {
+ white_candle_cake => BlockBehavior::new().strength(0.5, 0.5), {
lit: false,
},
- orange_candle_cake => BlockBehavior::default(), {
+ orange_candle_cake => BlockBehavior::new().strength(0.5, 0.5), {
lit: false,
},
- magenta_candle_cake => BlockBehavior::default(), {
+ magenta_candle_cake => BlockBehavior::new().strength(0.5, 0.5), {
lit: false,
},
- light_blue_candle_cake => BlockBehavior::default(), {
+ light_blue_candle_cake => BlockBehavior::new().strength(0.5, 0.5), {
lit: false,
},
- yellow_candle_cake => BlockBehavior::default(), {
+ yellow_candle_cake => BlockBehavior::new().strength(0.5, 0.5), {
lit: false,
},
- lime_candle_cake => BlockBehavior::default(), {
+ lime_candle_cake => BlockBehavior::new().strength(0.5, 0.5), {
lit: false,
},
- pink_candle_cake => BlockBehavior::default(), {
+ pink_candle_cake => BlockBehavior::new().strength(0.5, 0.5), {
lit: false,
},
- gray_candle_cake => BlockBehavior::default(), {
+ gray_candle_cake => BlockBehavior::new().strength(0.5, 0.5), {
lit: false,
},
- light_gray_candle_cake => BlockBehavior::default(), {
+ light_gray_candle_cake => BlockBehavior::new().strength(0.5, 0.5), {
lit: false,
},
- cyan_candle_cake => BlockBehavior::default(), {
+ cyan_candle_cake => BlockBehavior::new().strength(0.5, 0.5), {
lit: false,
},
- purple_candle_cake => BlockBehavior::default(), {
+ purple_candle_cake => BlockBehavior::new().strength(0.5, 0.5), {
lit: false,
},
- blue_candle_cake => BlockBehavior::default(), {
+ blue_candle_cake => BlockBehavior::new().strength(0.5, 0.5), {
lit: false,
},
- brown_candle_cake => BlockBehavior::default(), {
+ brown_candle_cake => BlockBehavior::new().strength(0.5, 0.5), {
lit: false,
},
- green_candle_cake => BlockBehavior::default(), {
+ green_candle_cake => BlockBehavior::new().strength(0.5, 0.5), {
lit: false,
},
- red_candle_cake => BlockBehavior::default(), {
+ red_candle_cake => BlockBehavior::new().strength(0.5, 0.5), {
lit: false,
},
- black_candle_cake => BlockBehavior::default(), {
+ black_candle_cake => BlockBehavior::new().strength(0.5, 0.5), {
lit: false,
},
- amethyst_block => BlockBehavior::default(), {},
- budding_amethyst => BlockBehavior::default(), {},
- amethyst_cluster => BlockBehavior::default(), {
+ amethyst_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 1.5), {},
+ budding_amethyst => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 1.5), {},
+ amethyst_cluster => BlockBehavior::new().strength(1.5, 1.5), {
facing: FacingCubic::Up,
waterlogged: false,
},
- large_amethyst_bud => BlockBehavior::default(), {
+ large_amethyst_bud => BlockBehavior::new().strength(1.5, 1.5), {
facing: FacingCubic::Up,
waterlogged: false,
},
- medium_amethyst_bud => BlockBehavior::default(), {
+ medium_amethyst_bud => BlockBehavior::new().strength(1.5, 1.5), {
facing: FacingCubic::Up,
waterlogged: false,
},
- small_amethyst_bud => BlockBehavior::default(), {
+ small_amethyst_bud => BlockBehavior::new().strength(1.5, 1.5), {
facing: FacingCubic::Up,
waterlogged: false,
},
- tuff => BlockBehavior::default(), {},
- calcite => BlockBehavior::default(), {},
- tinted_glass => BlockBehavior::default(), {},
- powder_snow => BlockBehavior::default(), {},
- sculk_sensor => BlockBehavior::default(), {
+ tuff => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {},
+ calcite => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.75, 0.75), {},
+ tinted_glass => BlockBehavior::new().strength(0.3, 0.3), {},
+ powder_snow => BlockBehavior::new().strength(0.25, 0.25), {},
+ sculk_sensor => BlockBehavior::new().strength(1.5, 1.5), {
power: SculkSensorPower::_0,
sculk_sensor_phase: Phase::Inactive,
waterlogged: false,
},
- calibrated_sculk_sensor => BlockBehavior::default(), {
+ calibrated_sculk_sensor => BlockBehavior::new().strength(1.5, 1.5), {
facing: FacingCardinal::North,
power: CalibratedSculkSensorPower::_0,
sculk_sensor_phase: Phase::Inactive,
waterlogged: false,
},
- sculk => BlockBehavior::default(), {},
- sculk_vein => BlockBehavior::default(), {
+ sculk => BlockBehavior::new().strength(0.2, 0.2), {},
+ sculk_vein => BlockBehavior::new().strength(0.2, 0.2), {
down: false,
east: false,
north: false,
@@ -4862,173 +4862,173 @@ make_block_states! {
waterlogged: false,
west: false,
},
- sculk_catalyst => BlockBehavior::default(), {
+ sculk_catalyst => BlockBehavior::new().strength(3.0, 3.0), {
bloom: false,
},
- sculk_shrieker => BlockBehavior::default(), {
+ sculk_shrieker => BlockBehavior::new().strength(3.0, 3.0), {
can_summon: false,
shrieking: false,
waterlogged: false,
},
- oxidized_copper => BlockBehavior::default(), {},
- weathered_copper => BlockBehavior::default(), {},
- exposed_copper => BlockBehavior::default(), {},
- copper_block => BlockBehavior::default(), {},
- copper_ore => BlockBehavior::default(), {},
- deepslate_copper_ore => BlockBehavior::default(), {},
- oxidized_cut_copper => BlockBehavior::default(), {},
- weathered_cut_copper => BlockBehavior::default(), {},
- exposed_cut_copper => BlockBehavior::default(), {},
- cut_copper => BlockBehavior::default(), {},
- oxidized_cut_copper_stairs => BlockBehavior::default(), {
+ oxidized_copper => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {},
+ weathered_copper => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {},
+ exposed_copper => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {},
+ copper_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {},
+ copper_ore => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 3.0), {},
+ deepslate_copper_ore => BlockBehavior::new().requires_correct_tool_for_drops().strength(4.5, 3.0), {},
+ oxidized_cut_copper => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {},
+ weathered_cut_copper => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {},
+ exposed_cut_copper => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {},
+ cut_copper => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {},
+ oxidized_cut_copper_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- weathered_cut_copper_stairs => BlockBehavior::default(), {
+ weathered_cut_copper_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- exposed_cut_copper_stairs => BlockBehavior::default(), {
+ exposed_cut_copper_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- cut_copper_stairs => BlockBehavior::default(), {
+ cut_copper_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- oxidized_cut_copper_slab => BlockBehavior::default(), {
+ oxidized_cut_copper_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- weathered_cut_copper_slab => BlockBehavior::default(), {
+ weathered_cut_copper_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- exposed_cut_copper_slab => BlockBehavior::default(), {
+ exposed_cut_copper_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- cut_copper_slab => BlockBehavior::default(), {
+ cut_copper_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- waxed_copper_block => BlockBehavior::default(), {},
- waxed_weathered_copper => BlockBehavior::default(), {},
- waxed_exposed_copper => BlockBehavior::default(), {},
- waxed_oxidized_copper => BlockBehavior::default(), {},
- waxed_oxidized_cut_copper => BlockBehavior::default(), {},
- waxed_weathered_cut_copper => BlockBehavior::default(), {},
- waxed_exposed_cut_copper => BlockBehavior::default(), {},
- waxed_cut_copper => BlockBehavior::default(), {},
- waxed_oxidized_cut_copper_stairs => BlockBehavior::default(), {
+ waxed_copper_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {},
+ waxed_weathered_copper => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {},
+ waxed_exposed_copper => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {},
+ waxed_oxidized_copper => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {},
+ waxed_oxidized_cut_copper => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {},
+ waxed_weathered_cut_copper => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {},
+ waxed_exposed_cut_copper => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {},
+ waxed_cut_copper => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {},
+ waxed_oxidized_cut_copper_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- waxed_weathered_cut_copper_stairs => BlockBehavior::default(), {
+ waxed_weathered_cut_copper_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- waxed_exposed_cut_copper_stairs => BlockBehavior::default(), {
+ waxed_exposed_cut_copper_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- waxed_cut_copper_stairs => BlockBehavior::default(), {
+ waxed_cut_copper_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- waxed_oxidized_cut_copper_slab => BlockBehavior::default(), {
+ waxed_oxidized_cut_copper_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- waxed_weathered_cut_copper_slab => BlockBehavior::default(), {
+ waxed_weathered_cut_copper_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- waxed_exposed_cut_copper_slab => BlockBehavior::default(), {
+ waxed_exposed_cut_copper_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- waxed_cut_copper_slab => BlockBehavior::default(), {
+ waxed_cut_copper_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- lightning_rod => BlockBehavior::default(), {
+ lightning_rod => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {
facing: FacingCubic::Up,
powered: false,
waterlogged: false,
},
- pointed_dripstone => BlockBehavior::default(), {
+ pointed_dripstone => BlockBehavior::new().strength(1.5, 3.0), {
thickness: Thickness::Tip,
vertical_direction: TipDirection::Up,
waterlogged: false,
},
- dripstone_block => BlockBehavior::default(), {},
- cave_vines => BlockBehavior::default(), {
+ dripstone_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 1.0), {},
+ cave_vines => BlockBehavior::new(), {
age: CaveVinesAge::_0,
berries: false,
},
- cave_vines_plant => BlockBehavior::default(), {
+ cave_vines_plant => BlockBehavior::new(), {
berries: false,
},
- spore_blossom => BlockBehavior::default(), {},
- azalea => BlockBehavior::default(), {},
- flowering_azalea => BlockBehavior::default(), {},
- moss_carpet => BlockBehavior::default(), {},
- pink_petals => BlockBehavior::default(), {
+ spore_blossom => BlockBehavior::new(), {},
+ azalea => BlockBehavior::new(), {},
+ flowering_azalea => BlockBehavior::new(), {},
+ moss_carpet => BlockBehavior::new().strength(0.1, 0.1), {},
+ pink_petals => BlockBehavior::new(), {
facing: FacingCardinal::North,
flower_amount: PinkPetalsAmount::_1,
},
- moss_block => BlockBehavior::default(), {},
- big_dripleaf => BlockBehavior::default(), {
+ moss_block => BlockBehavior::new().strength(0.1, 0.1), {},
+ big_dripleaf => BlockBehavior::new().strength(0.1, 0.1), {
facing: FacingCardinal::North,
tilt: Tilt::None,
waterlogged: false,
},
- big_dripleaf_stem => BlockBehavior::default(), {
+ big_dripleaf_stem => BlockBehavior::new().strength(0.1, 0.1), {
facing: FacingCardinal::North,
waterlogged: false,
},
- small_dripleaf => BlockBehavior::default(), {
+ small_dripleaf => BlockBehavior::new(), {
facing: FacingCardinal::North,
half: Half::Lower,
waterlogged: false,
},
- hanging_roots => BlockBehavior::default(), {
+ hanging_roots => BlockBehavior::new(), {
waterlogged: false,
},
- rooted_dirt => BlockBehavior::default(), {},
- mud => BlockBehavior::default(), {},
- deepslate => BlockBehavior::default(), {
+ rooted_dirt => BlockBehavior::new().strength(0.5, 0.5), {},
+ mud => BlockBehavior::new().strength(0.5, 0.5), {},
+ deepslate => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {
axis: Axis::Y,
},
- cobbled_deepslate => BlockBehavior::default(), {},
- cobbled_deepslate_stairs => BlockBehavior::default(), {
+ cobbled_deepslate => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), {},
+ cobbled_deepslate_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- cobbled_deepslate_slab => BlockBehavior::default(), {
+ cobbled_deepslate_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- cobbled_deepslate_wall => BlockBehavior::default(), {
+ cobbled_deepslate_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), {
east: EastWall::None,
north: NorthWall::None,
south: SouthWall::None,
@@ -5036,18 +5036,18 @@ make_block_states! {
waterlogged: false,
west: WestWall::None,
},
- polished_deepslate => BlockBehavior::default(), {},
- polished_deepslate_stairs => BlockBehavior::default(), {
+ polished_deepslate => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), {},
+ polished_deepslate_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- polished_deepslate_slab => BlockBehavior::default(), {
+ polished_deepslate_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- polished_deepslate_wall => BlockBehavior::default(), {
+ polished_deepslate_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), {
east: EastWall::None,
north: NorthWall::None,
south: SouthWall::None,
@@ -5055,18 +5055,18 @@ make_block_states! {
waterlogged: false,
west: WestWall::None,
},
- deepslate_tiles => BlockBehavior::default(), {},
- deepslate_tile_stairs => BlockBehavior::default(), {
+ deepslate_tiles => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), {},
+ deepslate_tile_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- deepslate_tile_slab => BlockBehavior::default(), {
+ deepslate_tile_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- deepslate_tile_wall => BlockBehavior::default(), {
+ deepslate_tile_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), {
east: EastWall::None,
north: NorthWall::None,
south: SouthWall::None,
@@ -5074,18 +5074,18 @@ make_block_states! {
waterlogged: false,
west: WestWall::None,
},
- deepslate_bricks => BlockBehavior::default(), {},
- deepslate_brick_stairs => BlockBehavior::default(), {
+ deepslate_bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), {},
+ deepslate_brick_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), {
facing: FacingCardinal::North,
half: TopBottom::Bottom,
shape: StairShape::Straight,
waterlogged: false,
},
- deepslate_brick_slab => BlockBehavior::default(), {
+ deepslate_brick_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), {
kind: Type::Bottom,
waterlogged: false,
},
- deepslate_brick_wall => BlockBehavior::default(), {
+ deepslate_brick_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), {
east: EastWall::None,
north: NorthWall::None,
south: SouthWall::None,
@@ -5093,30 +5093,30 @@ make_block_states! {
waterlogged: false,
west: WestWall::None,
},
- chiseled_deepslate => BlockBehavior::default(), {},
- cracked_deepslate_bricks => BlockBehavior::default(), {},
- cracked_deepslate_tiles => BlockBehavior::default(), {},
- infested_deepslate => BlockBehavior::default(), {
+ chiseled_deepslate => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), {},
+ cracked_deepslate_bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), {},
+ cracked_deepslate_tiles => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), {},
+ infested_deepslate => BlockBehavior::new().strength(1.5, 0.75), {
axis: CacheSize::Y,
},
- smooth_basalt => BlockBehavior::default(), {},
- raw_iron_block => BlockBehavior::default(), {},
- raw_copper_block => BlockBehavior::default(), {},
- raw_gold_block => BlockBehavior::default(), {},
- potted_azalea_bush => BlockBehavior::default(), {},
- potted_flowering_azalea_bush => BlockBehavior::default(), {},
- ochre_froglight => BlockBehavior::default(), {
+ smooth_basalt => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.25, 4.2), {},
+ raw_iron_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 6.0), {},
+ raw_copper_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 6.0), {},
+ raw_gold_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 6.0), {},
+ potted_azalea_bush => BlockBehavior::new(), {},
+ potted_flowering_azalea_bush => BlockBehavior::new(), {},
+ ochre_froglight => BlockBehavior::new().strength(0.3, 0.3), {
axis: Axis::Y,
},
- verdant_froglight => BlockBehavior::default(), {
+ verdant_froglight => BlockBehavior::new().strength(0.3, 0.3), {
axis: Axis::Y,
},
- pearlescent_froglight => BlockBehavior::default(), {
+ pearlescent_froglight => BlockBehavior::new().strength(0.3, 0.3), {
axis: Axis::Y,
},
- frogspawn => BlockBehavior::default(), {},
- reinforced_deepslate => BlockBehavior::default(), {},
- decorated_pot => BlockBehavior::default(), {
+ frogspawn => BlockBehavior::new(), {},
+ reinforced_deepslate => BlockBehavior::new().strength(55.0, 1200.0), {},
+ decorated_pot => BlockBehavior::new(), {
cracked: false,
facing: FacingCardinal::North,
waterlogged: false,
diff --git a/azalea-block/src/lib.rs b/azalea-block/src/lib.rs
index 43099db5..ef0041f1 100755
--- a/azalea-block/src/lib.rs
+++ b/azalea-block/src/lib.rs
@@ -24,6 +24,9 @@ pub trait Block: Debug + Any {
/// Convert the block to a block state. This is lossless, as the block
/// contains all the state data.
fn as_block_state(&self) -> BlockState;
+ /// Convert the block to an [`azalea_registry::Block`]. This is lossy, as
+ /// `azalea_registry::Block` doesn't contain any state data.
+ fn as_registry_block(&self) -> azalea_registry::Block;
}
impl dyn Block {
pub fn downcast_ref<T: Block>(&self) -> Option<&T> {
@@ -45,19 +48,14 @@ pub struct BlockState {
impl BlockState {
pub const AIR: BlockState = BlockState { id: 0 };
- /// Transmutes a u32 to a block state.
- ///
- /// # Safety
- /// The `state_id` should be a valid block state.
- #[inline]
- pub unsafe fn from_u32_unchecked(state_id: u32) -> Self {
- BlockState { id: state_id }
- }
-
#[inline]
pub fn is_valid_state(state_id: u32) -> bool {
state_id <= Self::max_state()
}
+
+ pub fn is_air(&self) -> bool {
+ self == &Self::AIR
+ }
}
impl TryFrom<u32> for BlockState {
@@ -66,7 +64,7 @@ impl TryFrom<u32> for BlockState {
/// Safely converts a state id to a block state.
fn try_from(state_id: u32) -> Result<Self, Self::Error> {
if Self::is_valid_state(state_id) {
- Ok(unsafe { Self::from_u32_unchecked(state_id) })
+ Ok(BlockState { id: state_id })
} else {
Err(())
}
@@ -98,6 +96,68 @@ impl std::fmt::Debug for BlockState {
}
}
+#[derive(Clone, Debug)]
+pub struct FluidState {
+ pub fluid: azalea_registry::Fluid,
+ pub height: u8,
+}
+
+impl Default for FluidState {
+ fn default() -> Self {
+ Self {
+ fluid: azalea_registry::Fluid::Empty,
+ height: 0,
+ }
+ }
+}
+
+impl From<BlockState> for FluidState {
+ fn from(state: BlockState) -> Self {
+ if state.waterlogged() {
+ Self {
+ fluid: azalea_registry::Fluid::Water,
+ height: 15,
+ }
+ } else {
+ let block = Box::<dyn Block>::from(state);
+ if let Some(water) = block.downcast_ref::<crate::blocks::Water>() {
+ Self {
+ fluid: azalea_registry::Fluid::Water,
+ height: water.level as u8,
+ }
+ } else if let Some(lava) = block.downcast_ref::<crate::blocks::Lava>() {
+ Self {
+ fluid: azalea_registry::Fluid::Lava,
+ height: lava.level as u8,
+ }
+ } else {
+ Self {
+ fluid: azalea_registry::Fluid::Empty,
+ height: 0,
+ }
+ }
+ }
+ }
+}
+
+impl From<FluidState> for BlockState {
+ fn from(state: FluidState) -> Self {
+ match state.fluid {
+ azalea_registry::Fluid::Empty => BlockState::AIR,
+ azalea_registry::Fluid::Water | azalea_registry::Fluid::FlowingWater => {
+ BlockState::from(crate::blocks::Water {
+ level: crate::properties::WaterLevel::from(state.height as u32),
+ })
+ }
+ azalea_registry::Fluid::Lava | azalea_registry::Fluid::FlowingLava => {
+ BlockState::from(crate::blocks::Lava {
+ level: crate::properties::LavaLevel::from(state.height as u32),
+ })
+ }
+ }
+ }
+}
+
#[cfg(test)]
mod tests {
use super::*;