TheCBProject / CBMultipart

An API for dynamically handling different functional parts in the one block space.
Other
22 stars 27 forks source link

pass ISelectionContext to VoxelShape getters #86

Closed MrTJP closed 3 years ago

MrTJP commented 3 years ago

MergedVoxelShapeHolder now accepts an extractor function as needed instead of having one cached. I only saw TileMultipart use this class, but if its used elsewhere and pre-setting the extractor is required, I can un-deprecate the setters and original non-extractor aware function.

MrTJP commented 3 years ago

Addressed comments, still not ready for merge. Also forgot the version bump, will do that next push.

I did not rename getRenderOcclusionShape yet, still looking into if renaming to getOcclusionShape has conflicts

covers1624 commented 3 years ago

After some more thought on getRenderOcclusionShape, I think we should keep its name as-is. getOcclusionShape is used for part-part occlusion at the moment, being able to control both independently is important.

MrTJP commented 3 years ago

Sorry for the late follow up. It turns out, the tiles not loading issue is not caused by this commit. Seems like they are not syncing to the client on world load for some reason. Serverside, loadParts is being called properly, and I can see the appropriate parts being filled out.

We can merge this in now. I'll investigate the loading issue separately.