Skip to content

refactor(shapeshift): use yOffset instead of temporary render offsets#37

Merged
Alexdoru merged 13 commits intoGTNewHorizons:masterfrom
hinyb:master
Apr 30, 2026
Merged

refactor(shapeshift): use yOffset instead of temporary render offsets#37
Alexdoru merged 13 commits intoGTNewHorizons:masterfrom
hinyb:master

Conversation

@hinyb
Copy link
Copy Markdown

@hinyb hinyb commented Apr 3, 2026

This is a refactored implementation following the suggestion from @Alexdoru in GTNewHorizons/Hodgepodge#802
I chose to modify RenderEntityViewer instead of PlayerRender, as PlayerRender is too complex and contains many unrelated logics. This still fix waila's tooltip issue.

@Alexdoru Alexdoru self-assigned this Apr 3, 2026
Comment thread src/main/java/alkalus/main/asm/WitcheryExtrasCore.java Outdated
Comment thread src/main/java/alkalus/main/asm/WitcheryExtrasCore.java Outdated
Copy link
Copy Markdown
Member

@Alexdoru Alexdoru left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Inject in the PlayerRender class and cancel all the code after EntitySizeInfo size = new EntitySizeInfo(player); and in your entityRenderer mixins just copy the code that computes the offest

@Alexdoru
Copy link
Copy Markdown
Member

Alexdoru commented Apr 7, 2026

and remove the RenderEntityViewer mixin

@hinyb hinyb requested a review from Alexdoru April 13, 2026 16:07
@Alexdoru
Copy link
Copy Markdown
Member

I found an issue with the resizing potion which is unrelated to your PR : if you go in a 1 block tall hole while you are resized, you will suffocate because it checks for the "normal" head position which is inside a block, something to fix in another PR if you want.

image

Copy link
Copy Markdown
Member

@Alexdoru Alexdoru left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is a major issue, if you quit your singleplayer world while shpe shifted when you try to rejoin you get automatically kicked for illegla stance

@hinyb
Copy link
Copy Markdown
Author

hinyb commented Apr 28, 2026

There is a major issue, if you quit your singleplayer world while shpe shifted when you try to rejoin you get automatically kicked for illegla stance

Sorry for the late response. I forget to sync the OffsetContents. Fixed.

@hinyb
Copy link
Copy Markdown
Author

hinyb commented Apr 28, 2026

I found an issue with the resizing potion which is unrelated to your PR : if you go in a 1 block tall hole while you are resized, you will suffocate because it checks for the "normal" head position which is inside a block, something to fix in another PR if you want.
image

It is actually caused by the resizing potion incorrectly setting the eyeoffset on the server side. Since it is also a type of shapeshift, I decided to include the fix in this PR as well.

@Alexdoru Alexdoru merged commit dc7935a into GTNewHorizons:master Apr 30, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants