Merge remote-tracking branch 'origin/1.16' into 1.18
This commit is contained in:
commit
af13e30f95
|
|
@ -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;
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user