Jump to content

[1.9] Block#getHarvestLevel Bug


Notunknown

Recommended Posts

This is also true for Crafting Benches, and probably other wooden blocks. This is especially serious as you cannot extend ItemAxe, and thus cannot use Block#getHarvestLevel to check if your custom axe can mine a block without risking mod incompatibility.

Link to comment
Share on other sites

dispenser

noteblock

bed

brick_block

mob_spawner

oak_stairs

chest

crafting_table

furnace

lit_furnace

standing_sign

oak_door

spruce_door

birch_door

jungle_door

acacia_door

dark_oak_door

ladder

stone_stairs

wall_sign

iron_door

oak_fence

birch_fence

jungle_fence

dark_oak_fence

acacia_fence

trapdoor

stonebrick

brown_mushroom_block

red_mushroom_block

iron_bars

oak_fence_gate

spruce_fence_gate

birch_fence_gate

jungle_fence_gate

dark_oak_fence_gate

acacia_fence_gate

brick_stairs

stone_brick_stairs

nether_brick

nether_brick_fence

nether_brick_stairs

enchanting_table

brewing_stand

cauldron

end_stone

double_wooden_slab

wooden_slab

sandstone_stairs

ender_chest

spruce_stairs

birch_stairs

jungle_stairs

cobblestone_wall

anvil

trapped_chest

light_weighted_pressure_plate

heavy_weighted_pressure_plate

daylight_detector

daylight_detector_inverted

redstone_block

hopper

quartz_block

quartz_stairs

dropper

stained_hardened_clay

iron_trapdoor

hardened_clay

coal_block

acacia_stairs

dark_oak_stairs

prismarine

sea_lantern

standing_banner

wall_banner

red_sandstone_stairs

double_stone_slab2

stone_slab2

chorus_plant

chorus_flower

purpur_block

purpur_pillar

purpur_stairs

purpur_double_slab

purpur_slab

end_bricks

Link to comment
Share on other sites

Right these are all material based things.

Which its on the item's end to determine if they have a harvest level.

There is no way to generalize all of these values, your item just needs to check the material in canHarvestBlock which is delegated to when the block doesn't have a tool.

I do Forge for free, however the servers to run it arn't free, so anything is appreciated.
Consider supporting the team on Patreon

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • I play with friends a server with mods, funny enough im the only one getting the error. Link to the crash error:https://pastebin.com/Qgn57EXZ
    • I have a keybind where you spit like a llama. On singleplayer both the entity and particle spawn and it's sound is played (https://youtu.be/bpxnFDuWw_I). But on a server only the entity is spawned and nothing else (https://youtu.be/veVQ4zSqnIA), no particles nor sound. Upon starting the server I have noticed this error in the window (https://postimg.cc/K3KDCpMY), don't know if it's relevant. The server works fine but when I want to spit the following pops up in the serverlog '''Attempted to load class net/minecraft/client/player/LocalPlayer for invalid dist DEDICATED_SERVER''' (https://postimg.cc/LqTDP1Sm). I have prepared the following code of the Server-to-Client packet class which I have made to spawn mentioned particles and sounds. package mett.palemannie.tabakmod.networking.packets; import net.minecraft.client.Minecraft; import net.minecraft.core.particles.ParticleTypes; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.sounds.SoundEvents; import net.minecraft.util.RandomSource; import net.minecraft.world.entity.player.Player; import net.minecraft.world.level.Level; import net.minecraft.world.phys.Vec3; import net.minecraftforge.network.NetworkEvent; import java.util.function.Supplier; public class SpuckEffektS2CPacket { public SpuckEffektS2CPacket(){ } public SpuckEffektS2CPacket(FriendlyByteBuf buf){ } public void toBytes(FriendlyByteBuf buf){ } public boolean handle(Supplier<NetworkEvent.Context> supplier){ NetworkEvent.Context context = supplier.get(); context.enqueueWork(()-> { Player player = Minecraft.getInstance().player; //Attempted to load class net/minecraft/client/player/LocalPlayer for invalid dist DEDICATED_SERVER Level level = Minecraft.getInstance().level; RandomSource rdm = RandomSource.create(); float r = rdm.nextInt(80, 120) / 100f; player.playSound(SoundEvents.LLAMA_SPIT, 1f, r); Vec3 MausPos = player.getEyePosition(); Vec3 SchauWinkel = player.getLookAngle(); level.addParticle(ParticleTypes.SPIT, true, MausPos.x, MausPos.y, MausPos.z, SchauWinkel.x/4, SchauWinkel.y/4, SchauWinkel.z/4); }); return true; } } Is there an alternative to Minecraft.getInstance().player;? dumb question. I have looked at other mods (MrCrayfish's Gun Mod, Ars Noveau, Apotheosis) on how they handle such server-to-client sound and particles but I haven't got any wiser.    
    • i keep getting error on minecraft when im trying to play modpack. When i go to logs folder i got this. 
    • Try an older build: https://www.curseforge.com/minecraft/mc-mods/sorceryfight/files/5358535
    • Add the crash-report or latest.log (logs-folder) with sites like https://mclo.gs/ and paste the link to it here  
  • Topics

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.