Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix FabricBlockSettings copyOf missing settings #3373

Merged
merged 1 commit into from
Oct 22, 2023

Conversation

Shnupbups
Copy link
Contributor

@Shnupbups Shnupbups commented Oct 8, 2023

Fixes FabricBlockSettings' copyOf method missing several new settings introduced as a result of the removal of Materials.

Specifically burnable, liquid, forceNotSolid, forceSolid, pistonBehavior, instrument, and replaceable. These are all copied by the vanilla BlockSettings.copy as well.
The emissiveLightingPredicate is also now copied in vanilla, so I moved the copy of that to reflect that change.

This should probably also be backported to 1.20.1, and frontported to 1.20.3 (at least for now, until it gets fully json'd away)

Fixes FabricBlockSettings' copyOf method missing several new settings introduced as a result of the removal of Materials.

Specifically, burnable, liquid, forceNotSolid, forceSolid, pistonBehavior, instrument, and replaceable. These are all copied by the vanilla `BlockSettings.copy` as well.
The emissiveLightingPredicate is also now copied in vanilla, so I moved the copy of that to reflect that change.
@AlphaMode
Copy link
Contributor

Shouldn't FabricBlockSettings also just be deprecated in favor of interface injection?

@modmuss50
Copy link
Member

Shouldn't FabricBlockSettings also just be deprecated in favor of interface injection?

Probably, I would suggest waiting to see what (if anything) 1.20.3 does to this, its possible it might not exist in its current form for much longer.

@gniftygnome
Copy link

If you want a real-world example of something broken because of the missing copies, Every Compat (WoodGood) apparently uses the instrument as one of the checks for whether something is a wood block, which has broken their support for some Fabric mods using FabricBlockSettings.copyOf. It would be nice to know sooner than 1.20.3 whether this will get fixed or we should switch to Block.Settings.copy or AbstractBlock.Settings.copy.

@modmuss50 modmuss50 merged commit 2ff98d3 into FabricMC:1.20.2 Oct 22, 2023
5 checks passed
modmuss50 pushed a commit that referenced this pull request Oct 22, 2023
Fixes FabricBlockSettings' copyOf method missing several new settings introduced as a result of the removal of Materials.

Specifically, burnable, liquid, forceNotSolid, forceSolid, pistonBehavior, instrument, and replaceable. These are all copied by the vanilla `BlockSettings.copy` as well.
The emissiveLightingPredicate is also now copied in vanilla, so I moved the copy of that to reflect that change.

(cherry picked from commit 2ff98d3)
modmuss50 pushed a commit that referenced this pull request Oct 22, 2023
Fixes FabricBlockSettings' copyOf method missing several new settings introduced as a result of the removal of Materials.

Specifically, burnable, liquid, forceNotSolid, forceSolid, pistonBehavior, instrument, and replaceable. These are all copied by the vanilla `BlockSettings.copy` as well.
The emissiveLightingPredicate is also now copied in vanilla, so I moved the copy of that to reflect that change.

(cherry picked from commit 2ff98d3)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
merge me please Pull requests that are ready to merge small change
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants