Jump to content

How can you customize the hitbox and bounding box in Minecraft 1.15.2?


Recommended Posts

Posted

I can't figure out how to make the hit box smaller. Here is my block class:

 

package com.ModdingMinecraft.blocks;


import net.minecraft.block.Block;
import net.minecraft.block.BlockState;
import net.minecraft.block.SoundType;
import net.minecraft.block.material.Material;
import net.minecraft.command.impl.data.BlockDataAccessor;
import net.minecraft.util.math.AxisAlignedBB;
import net.minecraft.util.math.BlockPos;
import net.minecraftforge.common.ToolType;

public class BlockTrampoline extends Block {

    private static final AxisAlignedBB BOUNDING_BOX = new AxisAlignedBB(0, 0, 0, 1, 0.625 * 8, 1);

    public BlockTrampoline() {
        super(Block.Properties.create(Material.WOOL)
                .jumpFactor(10)
                .sound(SoundType.CLOTH)
                .harvestTool(ToolType.AXE)

        );

    }

    public static AxisAlignedBB getBoundingBox(BlockState state, BlockDataAccessor source, BlockPos pos) {
        return BOUNDING_BOX;
    }
}

 

I know im doing it wrong so can you guys help me? (And I just started learning how to mod)

Posted (edited)

It looks like you are using 1.12 or some version other than 1.15/1.16?

Also you are unlikely overriding any of the method provided.

 

with

new AxisAlignedBB(0, 0, 0, 1, 0.625 * 8, 1);

0.625 * 8 > 1, which in 1.12 is not workable because it only (I believe) takes float between 0~1 (pixels/16)

btw 1.12 is not supported anymore

Edited by poopoodice
Posted
5 hours ago, poopoodice said:

1.12

He's obviously not, Block.Properties is not in 1.12.

It's sad how much time mods spend saying "x is no longer supported on this forum. Please update to a modern version of Minecraft to receive support".

Posted

Use Block.makeCuboidShape to make the VoxelShape for your block (takes x1, y1, z1, x2, y2, z2, 0F to 16F) in a static final.

Override Block#getShape and return that VoxelShape.

Posted
7 minutes ago, sciwhiz12 said:

Use Block.makeCuboidShape to make the VoxelShape for your block (takes x1, y1, z1, x2, y2, z2, 0F to 16F) in a static final.

Override Block#getShape and return that VoxelShape.

I'm not sure how to write that out in code. Could you explain?

Posted
private static final VoxelShape SHAPE = Block.makeCuboidShape(0.0d, 0.0d, 0.0d, 8.0d, 8.0d, 8.0d); // 8.0d == 8 pixels

@Override
public VoxelShape getShape(BlockState state, IBlockReader worldIn, BlockPos pos, ISelectionContext context) {
    return SHAPE;
}

Change the call of Block.makeCuboidShape as you see fit.

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



×
×
  • Create New...

Important Information

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