Posted October 7, 20204 yr For clarification, when I am talking about the hitboxes and their colors, I mean the ones that show up after pressing F3+B in-game. I have a mob that is drastically wider on the X-axis than it is on the Z-axis, so I've been overriding Entity#getBoundingBox to return one that is shrunk on the z-axis, which does work for the general hitbox of the mob (the one with a white outline). However, the suffocation hitbox (the thin red hitbox that determines if a mob should be suffocating from being inside a block) still uses the same X/Z dimensions. I can't seem to find a method to override in Entity/LivingEntity that allows me to change the suffocation hitbox, if there even is one. As a work-around, I've overridden LivingEntity#isEntityInsideOpaqueBlock but of course the displayed suffocation hitbox is still the same.
October 7, 20204 yr First off, can you just set the size from the EntityType? If all entities of this type are that size, that is the best way to do it. The entity type builder has a method .size(width, height) to set the hitbox size. As for the suffocation hitbox not changing, I think that is a forge bug. See https://github.com/MinecraftForge/MinecraftForge/issues/7399. If you can't set the size for the EntityType, you could use reflection to change eyeHeight yourself (it's a private value).
October 7, 20204 yr Author The thing is, I need the entity width to be a large number so that the entity is wide enough on the X-axis, but it needs to be drastically thinner on the Z-axis (I'm talking 6.0F wide on X, 1.0F wide on Z). Entity width is used for both the X-axis width and Z-axis width, so it's not like I can make them separate. This is why I have to override getBoundingBox and shrink the bounding box along the Z-axis. I will look into eye height, though, thanks for that tip.
October 7, 20204 yr Ah sorry, for some reason I was thinking X/Y. For X/Z your workaround is a decent idea, and I don't think the eye height will help you.
October 7, 20204 yr Author Now I've run into this crazy bug. If I make the entity's width small, and then try to grow it on the axis that is larger, then the world gets corrupted somehow as mobs cannot move / start floating on collision and leaves decay rapidly. If I make it big, and instead shrink it on the axis that is smaller, then it's ok. The small-then-grow approach makes the suffocation hitbox correct, while the large-then-shrink approach makes it not. Edited October 7, 20204 yr by the_infamous_1
October 7, 20204 yr You need to use multiple hitboxes, like the dragon. Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable. If you think this is the case, JUST REPORT ME. Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice. Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked. DO NOT PM ME WITH PROBLEMS. No help will be given.
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.