Jump to content

Spiff256

Members
  • Posts

    1
  • Joined

  • Last visited

Spiff256's Achievements

Tree Puncher

Tree Puncher (2/8)

0

Reputation

  1. I'm completely new to Forge, and what I'm trying to do is extremely simple : I want to create a block that damages the player when they break it. But when testing my mod, the world crashes every time I break my block. The error is " io.netty.handler.codec.EncoderException: Failed to encode packet 'clientbound/minecraft:damage_event' " Here is my code : public class DamagerBlock extends Block { public DamagerBlock(BlockBehaviour.Properties properties) { super(properties); } @Override public void playerDestroy(Level level, Player p, BlockPos pos, BlockState state, @Nullable BlockEntity bentity, ItemStack stack) { p.awardStat(Stats.BLOCK_MINED.get(this)); p.causeFoodExhaustion(0.005F); System.out.println("The player is taking damage !"); //Just to check that the method is called if (!level.isClientSide()) { p.hurt(new DamageSource(new Holder.Direct<DamageType>(new DamageType("magic", 0.F, DamageEffects.HURT))), 5); } dropResources(state, level, pos, bentity, p, stack, false); } } I think I'm actually missing a lot of knowledge about client/server communication, but I just don't know how to properly tell the client that the player takes damage...
×
×
  • Create New...

Important Information

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