From f34774c54c2523d0a0c41e3541e828788378dfb1 Mon Sep 17 00:00:00 2001 From: Aleksey Date: Fri, 30 Apr 2021 13:26:00 +0300 Subject: [PATCH] Start patterns optimization --- .../ru/betterend/blocks/basis/BlockBase.java | 51 +++++++++++++++++++ .../ru/betterend/patterns/BlockPatterned.java | 20 ++++++++ .../java/ru/betterend/patterns/Patterned.java | 4 +- 3 files changed, 72 insertions(+), 3 deletions(-) diff --git a/src/main/java/ru/betterend/blocks/basis/BlockBase.java b/src/main/java/ru/betterend/blocks/basis/BlockBase.java index 9299f6d6..0e88b49e 100644 --- a/src/main/java/ru/betterend/blocks/basis/BlockBase.java +++ b/src/main/java/ru/betterend/blocks/basis/BlockBase.java @@ -1,3 +1,4 @@ +<<<<<<< Updated upstream package ru.betterend.blocks.basis; import java.io.Reader; @@ -40,3 +41,53 @@ public class BlockBase extends Block implements BlockPatterned { return Patterns.STATE_SIMPLE; } } +======= +package ru.betterend.blocks.basis; + +import java.io.Reader; +import java.util.Collections; +import java.util.List; + +import net.minecraft.client.renderer.block.model.BlockModel; +import net.minecraft.core.Registry; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.storage.loot.LootContext; +import ru.betterend.patterns.BlockPatterned; +import ru.betterend.patterns.Patterns; + +public class BlockBase extends Block implements BlockPatterned { + public BlockBase(Properties settings) { + super(settings); + } + + @Override + public List getDrops(BlockState state, LootContext.Builder builder) { + return Collections.singletonList(new ItemStack(this)); + } + + @Override + public BlockModel getBlockModel(BlockState state) { + return null; + } + + @Override + public String getStatesPattern(Reader data) { + String block = Registry.BLOCK.getKey(this).getPath(); + return Patterns.createJson(data, block, block); + } + + @Override + public String getModelPattern(String block) { + ResourceLocation blockId = Registry.BLOCK.getKey(this); + return Patterns.createJson(Patterns.BLOCK_BASE, blockId.getPath(), block); + } + + @Override + public ResourceLocation statePatternId() { + return Patterns.STATE_SIMPLE; + } +} +>>>>>>> Stashed changes diff --git a/src/main/java/ru/betterend/patterns/BlockPatterned.java b/src/main/java/ru/betterend/patterns/BlockPatterned.java index f1ca3f48..3d02ca5f 100644 --- a/src/main/java/ru/betterend/patterns/BlockPatterned.java +++ b/src/main/java/ru/betterend/patterns/BlockPatterned.java @@ -1,3 +1,4 @@ +<<<<<<< Updated upstream package ru.betterend.patterns; import java.io.Reader; @@ -12,3 +13,22 @@ public interface BlockPatterned extends Patterned { return null; } } +======= +package ru.betterend.patterns; + +import java.io.Reader; + +import net.minecraft.client.renderer.block.model.BlockModel; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.level.block.state.BlockState; + +public interface BlockPatterned extends Patterned { + BlockModel getBlockModel(BlockState state); + default String getStatesPattern(Reader data) { + return null; + } + default ResourceLocation statePatternId() { + return null; + } +} +>>>>>>> Stashed changes diff --git a/src/main/java/ru/betterend/patterns/Patterned.java b/src/main/java/ru/betterend/patterns/Patterned.java index 4f55337b..8fb7de92 100644 --- a/src/main/java/ru/betterend/patterns/Patterned.java +++ b/src/main/java/ru/betterend/patterns/Patterned.java @@ -1,7 +1,5 @@ package ru.betterend.patterns; public interface Patterned { - default String getModelPattern(String name) { - return null; - } + String getModelPattern(String name); } \ No newline at end of file