Fixing BlockEntityRenderer desync and boilerplate with Cardinal Components API #11
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
CCA has been used here to reduce boilerplate for block entity syncing (e.g., chunk saving, ...) and to fix ghosting issues when the pedestal is used by multiple players on a server.
Another PR attempted a fix for the same issue a while ago, but added custom networking, which might be unfit for new modders who are trying to get started with the topic.
This PR removes any custom networking for this issue, besides the single
sync()call in the component class itself.CCA has many other features which might be interesting to look at for other features in the tutorial series, too. The CCA wiki is written in a way where it's easy to get started in roughly less than 30 min with complete custom Components for BlockEntities, Entities, Chunks, Persistent World Data and so on, all including automatic network syncing and client / server / common ticking.
This is also mostly just an example. If it's not needed, the PR can be closed again 👍🏻