Skip to content

Commit d0bf996

Browse files
authored
12-certain-blocks-with-the-tag-base_block_allow-are-unable-to-have-block-variants-generated (#13)
* added auto generation for: - leaf blocks - sand - gravel - concrete powder * made auto generated blocks graphic settings aware (for leaves) * made auto generated blocks graphic settings aware (for leaves) * fixed leave textures and textures for modded blocks with leave like textures
1 parent 5a02f93 commit d0bf996

3 files changed

Lines changed: 220 additions & 217 deletions

File tree

‎src/main/java/net/f3rr3/reshaped/client/ClientTickHandler.java‎

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,16 +4,26 @@
44
import net.f3rr3.reshaped.client.gui.RadialMenuScreen;
55
import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents;
66
import net.minecraft.block.Block;
7+
import net.minecraft.client.MinecraftClient;
8+
import net.minecraft.client.option.GraphicsMode;
79
import net.minecraft.item.BlockItem;
810
import net.minecraft.item.ItemStack;
911

1012
import java.util.List;
1113

1214
public class ClientTickHandler {
15+
private static GraphicsMode lastGraphicsMode;
16+
1317
public static void register() {
1418
ClientTickEvents.END_CLIENT_TICK.register(client -> {
1519
if (client.player == null || client.world == null) return;
1620

21+
GraphicsMode currentMode = MinecraftClient.getInstance().options.getGraphicsMode().getValue();
22+
if (lastGraphicsMode != currentMode) {
23+
lastGraphicsMode = currentMode;
24+
ReshapedClient.refreshVariantRenderLayers();
25+
}
26+
1727
// If a screen is already open, we don't need to do anything here
1828
// The RadialMenuScreen itself handles closing if the key is released
1929
if (client.currentScreen != null) return;

‎src/main/java/net/f3rr3/reshaped/client/ReshapedClient.java‎

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ private static Set<Integer> getMatrixGroupSizes() {
4545
return sizes;
4646
}
4747

48-
private static void registerVariantRenderLayers() {
48+
public static void refreshVariantRenderLayers() {
4949
if (Reshaped.MATRIX == null) return;
5050

5151
// Mixed blocks can contain any material (including translucent ones like glass),
@@ -59,7 +59,6 @@ private static void registerVariantRenderLayers() {
5959
for (Map.Entry<Block, List<Block>> entry : Reshaped.MATRIX.getMatrix().entrySet()) {
6060
Block baseBlock = entry.getKey();
6161
RenderLayer baseLayer = RenderLayers.getBlockLayer(baseBlock.getDefaultState());
62-
if (baseLayer == RenderLayer.getSolid()) continue;
6362

6463
for (Block variant : entry.getValue()) {
6564
BlockRenderLayerMap.INSTANCE.putBlock(variant, baseLayer);
@@ -121,7 +120,7 @@ public void reload(ResourceManager manager) {
121120
}
122121
});
123122

124-
registerVariantRenderLayers();
123+
refreshVariantRenderLayers();
125124
registerVariantColorProviders();
126125
}
127126

0 commit comments

Comments
 (0)