Skip to content

Commit

Permalink
Mirroring, gem blocks
Browse files Browse the repository at this point in the history
  • Loading branch information
Electro593 committed Feb 17, 2025
1 parent c2f9ca7 commit 4888f6d
Show file tree
Hide file tree
Showing 48 changed files with 347 additions and 333 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "spectrum:block/budding_citrine"
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "spectrum:block/budding_moonstone"
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "spectrum:block/budding_onyx"
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "spectrum:block/budding_topaz"
}
}
}
12 changes: 12 additions & 0 deletions src/main/generated/assets/spectrum/blockstates/citrine_block.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"variants": {
"": [
{
"model": "spectrum:block/citrine_block"
},
{
"model": "spectrum:block/citrine_block_mirrored"
}
]
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"variants": {
"": [
{
"model": "spectrum:block/moonstone_block"
},
{
"model": "spectrum:block/moonstone_block_mirrored"
}
]
}
}
12 changes: 12 additions & 0 deletions src/main/generated/assets/spectrum/blockstates/onyx_block.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"variants": {
"": [
{
"model": "spectrum:block/onyx_block"
},
{
"model": "spectrum:block/onyx_block_mirrored"
}
]
}
}
12 changes: 12 additions & 0 deletions src/main/generated/assets/spectrum/blockstates/topaz_block.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"variants": {
"": [
{
"model": "spectrum:block/topaz_block"
},
{
"model": "spectrum:block/topaz_block_mirrored"
}
]
}
}
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"parent": "block/cube_all",
"parent": "minecraft:block/cube_all",
"textures": {
"all": "spectrum:block/budding_citrine"
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"parent": "block/cube_all",
"parent": "minecraft:block/cube_all",
"textures": {
"all": "spectrum:block/budding_moonstone"
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"parent": "block/cube_all",
"parent": "minecraft:block/cube_all",
"textures": {
"all": "spectrum:block/budding_onyx"
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"parent": "block/cube_all",
"parent": "minecraft:block/cube_all",
"textures": {
"all": "spectrum:block/budding_topaz"
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"parent": "block/cube_all",
"parent": "minecraft:block/cube_all",
"textures": {
"all": "spectrum:block/citrine_block"
}
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"parent": "minecraft:block/cube_mirrored_all",
"textures": {
"all": "spectrum:block/citrine_block"
}
}
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"parent": "block/cube_all",
"parent": "minecraft:block/cube_all",
"textures": {
"all": "spectrum:block/moonstone_block"
}
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"parent": "minecraft:block/cube_mirrored_all",
"textures": {
"all": "spectrum:block/moonstone_block"
}
}
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"parent": "block/cube_all",
"parent": "minecraft:block/cube_all",
"textures": {
"all": "spectrum:block/onyx_block"
}
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"parent": "minecraft:block/cube_mirrored_all",
"textures": {
"all": "spectrum:block/onyx_block"
}
}
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"parent": "block/cube_all",
"parent": "minecraft:block/cube_all",
"textures": {
"all": "spectrum:block/topaz_block"
}
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"parent": "minecraft:block/cube_mirrored_all",
"textures": {
"all": "spectrum:block/topaz_block"
}
}
Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@
package de.dafuqs.spectrum;
package de.dafuqs.spectrum.data;

import de.dafuqs.spectrum.registries.*;
import net.fabricmc.fabric.api.datagen.v1.*;
import net.fabricmc.fabric.api.datagen.v1.provider.*;
import net.minecraft.block.*;
import net.minecraft.data.client.*;
import net.minecraft.enchantment.*;
import net.minecraft.item.*;
import net.minecraft.registry.*;
Expand Down Expand Up @@ -94,23 +93,6 @@ public String getName() {
}
}

public static class SpectrumModelProvider extends FabricModelProvider {
public SpectrumModelProvider(FabricDataOutput output) {
super(output);
}

@Override
public void generateBlockStateModels(BlockStateModelGenerator blockStateModelGenerator) {
SpectrumBlocks.provideBlockStateModels(blockStateModelGenerator);
}

@Override
public void generateItemModels(ItemModelGenerator itemModelGenerator) {
SpectrumBlocks.provideItemModels(itemModelGenerator);
SpectrumItems.provideItemModels(itemModelGenerator);
}
}

public interface TagBuilderCallback<T> {
FabricTagProvider<T>.FabricTagBuilder build(FabricTagProvider<T>.FabricTagBuilder provider);
}
Expand Down
86 changes: 86 additions & 0 deletions src/main/java/de/dafuqs/spectrum/data/SpectrumModelProvider.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
package de.dafuqs.spectrum.data;

import de.dafuqs.spectrum.registries.*;
import net.fabricmc.fabric.api.datagen.v1.*;
import net.fabricmc.fabric.api.datagen.v1.provider.*;
import net.minecraft.block.*;
import net.minecraft.data.client.*;
import net.minecraft.util.*;
import net.minecraft.util.math.*;

import static de.dafuqs.spectrum.data.SpectrumDataGenerator.*;

public class SpectrumModelProvider extends FabricModelProvider {

public static final DeferredRegistrar.Contextual<BlockStateModelGenerator> BLOCK_STATE_MODEL_REGISTRAR = new DeferredRegistrar.Contextual<>(IS_DATAGEN);

public SpectrumModelProvider(FabricDataOutput output) {
super(output);
}

@Override
public void generateBlockStateModels(BlockStateModelGenerator blockStateModelGenerator) {
BLOCK_STATE_MODEL_REGISTRAR.flush(blockStateModelGenerator);
}

@Override
public void generateItemModels(ItemModelGenerator itemModelGenerator) {
SpectrumBlocks.provideItemModels(itemModelGenerator);
SpectrumItems.provideItemModels(itemModelGenerator);
}

public static void registerSingletonBlockModel(Block block, TexturedModel.Factory factory) {
BLOCK_STATE_MODEL_REGISTRAR.defer(ctx -> ctx.registerSingleton(block, factory));
}

public static void registerAxisRotatedBlockModel(Block block, TexturedModel.Factory factory) {
BLOCK_STATE_MODEL_REGISTRAR.defer(ctx -> ctx.registerAxisRotated(block, factory));
}

public static void registerDefaultFacingUpBlockModel(Block block, TexturedModel.Factory factory) {
BLOCK_STATE_MODEL_REGISTRAR.defer(ctx -> {
BlockStateVariantMap variants = BlockStateVariantMap.create(FacingBlock.FACING)
.register(Direction.DOWN, BlockStateVariant.create().put(VariantSettings.X, VariantSettings.Rotation.R180))
.register(Direction.EAST, BlockStateVariant.create().put(VariantSettings.X, VariantSettings.Rotation.R90).put(VariantSettings.Y, VariantSettings.Rotation.R90))
.register(Direction.NORTH, BlockStateVariant.create().put(VariantSettings.X, VariantSettings.Rotation.R90))
.register(Direction.SOUTH, BlockStateVariant.create().put(VariantSettings.X, VariantSettings.Rotation.R90).put(VariantSettings.Y, VariantSettings.Rotation.R180))
.register(Direction.UP, BlockStateVariant.create())
.register(Direction.WEST, BlockStateVariant.create().put(VariantSettings.X, VariantSettings.Rotation.R90).put(VariantSettings.Y, VariantSettings.Rotation.R270));
ctx.blockStateCollector.accept(VariantsBlockStateSupplier.create(block, BlockStateVariant.create().put(VariantSettings.MODEL, factory.upload(block, ctx.modelCollector)))
.coordinate(variants));
});
}

public static void registerSimpleMirroredBlockModel(Block block) {
BLOCK_STATE_MODEL_REGISTRAR.defer(ctx -> {
VariantsBlockStateSupplier variants = VariantsBlockStateSupplier.create(block,
BlockStateVariant.create().put(VariantSettings.MODEL, TexturedModel.CUBE_ALL.upload(block, ctx.modelCollector)),
BlockStateVariant.create().put(VariantSettings.MODEL, TexturedModel.CUBE_MIRRORED_ALL.upload(block, ctx.modelCollector))
);
ctx.blockStateCollector.accept(variants);
});
}

public static void registerLogBlockModel(Block block) {
BLOCK_STATE_MODEL_REGISTRAR.defer(ctx -> ctx.registerLog(block).log(block));
}

public static void registerWoodBlockModel(Block block, Block logBlock) {
BLOCK_STATE_MODEL_REGISTRAR.defer(ctx -> ctx.registerLog(logBlock).wood(block));
}

public static void registerTintableCrossBlockModel(Block block, boolean tinted) {
BLOCK_STATE_MODEL_REGISTRAR.defer(ctx ->
ctx.registerTintableCrossBlockState(block, tinted ? BlockStateModelGenerator.TintType.TINTED : BlockStateModelGenerator.TintType.NOT_TINTED));
}

public static void registerPottedPlantBlockModel(FlowerPotBlock block, boolean tinted) {
BLOCK_STATE_MODEL_REGISTRAR.defer(ctx -> {
BlockStateModelGenerator.TintType tintType = tinted ? BlockStateModelGenerator.TintType.TINTED : BlockStateModelGenerator.TintType.NOT_TINTED;
TextureMap textureMap = TextureMap.plant(block.getContent());
Identifier identifier = tintType.getFlowerPotCrossModel().upload(block, textureMap, ctx.modelCollector);
ctx.blockStateCollector.accept(BlockStateModelGenerator.createSingletonBlockState(block, identifier));
});
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
import net.minecraft.registry.tag.*;
import net.minecraft.util.*;

import static de.dafuqs.spectrum.SpectrumDataGenerator.*;
import static de.dafuqs.spectrum.data.SpectrumDataGenerator.*;

@SuppressWarnings("unused")
public class SpectrumBlockTags {
Expand Down
Loading

0 comments on commit 4888f6d

Please sign in to comment.