Merge remote-tracking branch 'origin/1.16' into 1.18

This commit is contained in:
embeddedt 2023-12-18 22:06:24 -05:00
commit af13e30f95
No known key found for this signature in database
GPG Key ID: A69433EC199B5613
3 changed files with 8 additions and 3 deletions

View File

@ -28,7 +28,7 @@ import java.util.*;
*/
public class ModelBakeEventHelper {
// TODO: make into config option
private static final Set<String> INCOMPATIBLE_MODS = ImmutableSet.of("industrialforegoing", "vampirism");
private static final Set<String> INCOMPATIBLE_MODS = ImmutableSet.of("industrialforegoing", "vampirism", "elevatorid");
private final Map<ResourceLocation, BakedModel> modelRegistry;
private final Set<ResourceLocation> topLevelModelLocations;
private final MutableGraph<String> dependencyGraph;

View File

@ -63,11 +63,15 @@ public abstract class CTMPackReloadListenerMixin implements ModernFixClientInteg
if(original == null)
original = DEFAULT_PREDICATE;
blockRenderChecks.put(block.delegate, original);
ItemBlockRenderTypes.setRenderLayer(block, type -> this.useOverrideIfPresent(block.delegate, type));
updateBlockPredicate(block);
}
}
}
private void updateBlockPredicate(Block block) {
ItemBlockRenderTypes.setRenderLayer(block, type -> this.useOverrideIfPresent(block.delegate, type));
}
private boolean useOverrideIfPresent(IRegistryDelegate<Block> delegate, RenderType type) {
Predicate<RenderType> override = renderCheckOverrides.get(delegate);
if(override == null)
@ -97,6 +101,7 @@ public abstract class CTMPackReloadListenerMixin implements ModernFixClientInteg
Predicate<RenderType> newPredicate = this.getLayerCheck(state, originalModel);
if(newPredicate != null) {
renderCheckOverrides.put(block.delegate, newPredicate);
updateBlockPredicate(block);
return originalModel;
}
}

View File

@ -42,7 +42,7 @@ public abstract class TextureMetadataHandlerMixin implements ModernFixClientInte
@Override
public BakedModel onBakedModelLoad(ResourceLocation rl, UnbakedModel rootModel, BakedModel baked, ModelState state, ModelBakery bakery) {
if (!(baked instanceof AbstractCTMBakedModel) && !baked.isCustomRenderer()) {
if (rl instanceof ModelResourceLocation && !(baked instanceof AbstractCTMBakedModel) && !baked.isCustomRenderer()) {
Deque<ResourceLocation> dependencies = new ArrayDeque<>();
Set<ResourceLocation> seenModels = new HashSet<>();
dependencies.push(rl);