diff --git a/gradle.properties b/gradle.properties index 1e55e07..e52210a 100644 --- a/gradle.properties +++ b/gradle.properties @@ -8,7 +8,7 @@ org.gradle.jvmargs=-Xmx2G loader_version=0.10.8 # Mod Properties - mod_version = 1.2.2 + mod_version = 1.3.0 maven_group = eu.midnightdust.motschen archives_base_name = rocks diff --git a/src/main/java/eu/midnightdust/motschen/rocks/RocksClient.java b/src/main/java/eu/midnightdust/motschen/rocks/RocksClient.java deleted file mode 100644 index 375b400..0000000 --- a/src/main/java/eu/midnightdust/motschen/rocks/RocksClient.java +++ /dev/null @@ -1,14 +0,0 @@ -package eu.midnightdust.motschen.rocks; - -import eu.midnightdust.motschen.rocks.block.blockentity.BlockEntityInit; -import eu.midnightdust.motschen.rocks.block.render.StarfishBlockEntityRenderer; -import net.fabricmc.api.ClientModInitializer; -import net.fabricmc.fabric.api.client.rendereregistry.v1.BlockEntityRendererRegistry; - -public class RocksClient implements ClientModInitializer { - - @Override - public void onInitializeClient() { - BlockEntityRendererRegistry.INSTANCE.register(BlockEntityInit.STARFISH_BE, StarfishBlockEntityRenderer::new); - } -} diff --git a/src/main/java/eu/midnightdust/motschen/rocks/block/Pinecone.java b/src/main/java/eu/midnightdust/motschen/rocks/block/Pinecone.java index 74e7647..325d58d 100644 --- a/src/main/java/eu/midnightdust/motschen/rocks/block/Pinecone.java +++ b/src/main/java/eu/midnightdust/motschen/rocks/block/Pinecone.java @@ -7,6 +7,7 @@ import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.Direction; import net.minecraft.util.shape.VoxelShape; import net.minecraft.world.BlockView; +import net.minecraft.world.WorldAccess; import net.minecraft.world.WorldView; public class Pinecone extends Block { @@ -31,4 +32,7 @@ public class Pinecone extends Block { public boolean canPlaceAt(BlockState state, WorldView world, BlockPos pos) { return world.getBlockState(pos.down()).isSideSolidFullSquare(world,pos,Direction.UP); } + public BlockState getStateForNeighborUpdate(BlockState state, Direction direction, BlockState newState, WorldAccess world, BlockPos pos, BlockPos posFrom) { + return !state.canPlaceAt(world, pos) ? Blocks.AIR.getDefaultState() : super.getStateForNeighborUpdate(state, direction, newState, world, pos, posFrom); + } } diff --git a/src/main/java/eu/midnightdust/motschen/rocks/block/Rock.java b/src/main/java/eu/midnightdust/motschen/rocks/block/Rock.java index aa62985..d1acc80 100644 --- a/src/main/java/eu/midnightdust/motschen/rocks/block/Rock.java +++ b/src/main/java/eu/midnightdust/motschen/rocks/block/Rock.java @@ -17,6 +17,7 @@ import net.minecraft.util.math.Direction; import net.minecraft.util.shape.VoxelShape; import net.minecraft.world.BlockView; import net.minecraft.world.World; +import net.minecraft.world.WorldAccess; import net.minecraft.world.WorldView; public class Rock extends Block { @@ -70,4 +71,7 @@ public class Rock extends Block { public boolean canPlaceAt(BlockState state, WorldView world, BlockPos pos) { return world.getBlockState(pos.down()).isSideSolidFullSquare(world,pos,Direction.UP); } + public BlockState getStateForNeighborUpdate(BlockState state, Direction direction, BlockState newState, WorldAccess world, BlockPos pos, BlockPos posFrom) { + return !state.canPlaceAt(world, pos) ? Blocks.AIR.getDefaultState() : super.getStateForNeighborUpdate(state, direction, newState, world, pos, posFrom); + } } diff --git a/src/main/java/eu/midnightdust/motschen/rocks/block/Seashell.java b/src/main/java/eu/midnightdust/motschen/rocks/block/Seashell.java index 7e1d584..e4dacbd 100644 --- a/src/main/java/eu/midnightdust/motschen/rocks/block/Seashell.java +++ b/src/main/java/eu/midnightdust/motschen/rocks/block/Seashell.java @@ -21,6 +21,7 @@ import net.minecraft.util.math.Direction; import net.minecraft.util.shape.VoxelShape; import net.minecraft.world.BlockView; import net.minecraft.world.World; +import net.minecraft.world.WorldAccess; import net.minecraft.world.WorldView; public class Seashell extends Block implements Waterloggable { @@ -79,4 +80,7 @@ public class Seashell extends Block implements Waterloggable { public boolean canPlaceAt(BlockState state, WorldView world, BlockPos pos) { return world.getBlockState(pos.down()).isSideSolidFullSquare(world,pos,Direction.UP); } + public BlockState getStateForNeighborUpdate(BlockState state, Direction direction, BlockState newState, WorldAccess world, BlockPos pos, BlockPos posFrom) { + return !state.canPlaceAt(world, pos) ? Blocks.AIR.getDefaultState() : super.getStateForNeighborUpdate(state, direction, newState, world, pos, posFrom); + } } diff --git a/src/main/java/eu/midnightdust/motschen/rocks/block/Starfish.java b/src/main/java/eu/midnightdust/motschen/rocks/block/Starfish.java index 262da86..da9bd77 100644 --- a/src/main/java/eu/midnightdust/motschen/rocks/block/Starfish.java +++ b/src/main/java/eu/midnightdust/motschen/rocks/block/Starfish.java @@ -1,11 +1,9 @@ package eu.midnightdust.motschen.rocks.block; import eu.midnightdust.motschen.rocks.RocksMain; -import eu.midnightdust.motschen.rocks.block.blockentity.StarfishBlockEntity; import eu.midnightdust.motschen.rocks.blockstates.StarfishVariation; import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; import net.minecraft.block.*; -import net.minecraft.block.entity.BlockEntity; import net.minecraft.entity.player.PlayerEntity; import net.minecraft.fluid.FluidState; import net.minecraft.fluid.Fluids; @@ -23,9 +21,10 @@ import net.minecraft.util.math.Direction; import net.minecraft.util.shape.VoxelShape; import net.minecraft.world.BlockView; import net.minecraft.world.World; +import net.minecraft.world.WorldAccess; import net.minecraft.world.WorldView; -public class Starfish extends Block implements BlockEntityProvider, Waterloggable { +public class Starfish extends Block implements Waterloggable { private static final VoxelShape SHAPE; private static final EnumProperty STARFISH_VARIATION = RocksMain.STARFISH_VARIATION; @@ -41,11 +40,6 @@ public class Starfish extends Block implements BlockEntityProvider, Waterloggabl return blockState_1.get(WATERLOGGED) ? Fluids.WATER.getStill(true) : super.getFluidState(blockState_1); } - @Override - public BlockEntity createBlockEntity(BlockView view) { - return new StarfishBlockEntity(); - } - @Override public BlockState getPlacementState(ItemPlacementContext itemPlacementContext) { FluidState fluidState = itemPlacementContext.getWorld().getFluidState(itemPlacementContext.getBlockPos()); @@ -86,4 +80,7 @@ public class Starfish extends Block implements BlockEntityProvider, Waterloggabl public boolean canPlaceAt(BlockState state, WorldView world, BlockPos pos) { return world.getBlockState(pos.down()).isSideSolidFullSquare(world,pos,Direction.UP); } + public BlockState getStateForNeighborUpdate(BlockState state, Direction direction, BlockState newState, WorldAccess world, BlockPos pos, BlockPos posFrom) { + return !state.canPlaceAt(world, pos) ? Blocks.AIR.getDefaultState() : super.getStateForNeighborUpdate(state, direction, newState, world, pos, posFrom); + } } diff --git a/src/main/java/eu/midnightdust/motschen/rocks/block/Stick.java b/src/main/java/eu/midnightdust/motschen/rocks/block/Stick.java index 4121657..b72ea4f 100644 --- a/src/main/java/eu/midnightdust/motschen/rocks/block/Stick.java +++ b/src/main/java/eu/midnightdust/motschen/rocks/block/Stick.java @@ -17,6 +17,7 @@ import net.minecraft.util.math.Direction; import net.minecraft.util.shape.VoxelShape; import net.minecraft.world.BlockView; import net.minecraft.world.World; +import net.minecraft.world.WorldAccess; import net.minecraft.world.WorldView; public class Stick extends Block { @@ -67,4 +68,7 @@ public class Stick extends Block { public boolean canPlaceAt(BlockState state, WorldView world, BlockPos pos) { return world.getBlockState(pos.down()).isSideSolidFullSquare(world,pos,Direction.UP); } + public BlockState getStateForNeighborUpdate(BlockState state, Direction direction, BlockState newState, WorldAccess world, BlockPos pos, BlockPos posFrom) { + return !state.canPlaceAt(world, pos) ? Blocks.AIR.getDefaultState() : super.getStateForNeighborUpdate(state, direction, newState, world, pos, posFrom); + } } diff --git a/src/main/java/eu/midnightdust/motschen/rocks/block/blockentity/BlockEntityInit.java b/src/main/java/eu/midnightdust/motschen/rocks/block/blockentity/BlockEntityInit.java index d9d1688..b398cf7 100644 --- a/src/main/java/eu/midnightdust/motschen/rocks/block/blockentity/BlockEntityInit.java +++ b/src/main/java/eu/midnightdust/motschen/rocks/block/blockentity/BlockEntityInit.java @@ -6,12 +6,10 @@ import net.minecraft.util.Identifier; import net.minecraft.util.registry.Registry; public class BlockEntityInit { - public static BlockEntityType STARFISH_BE; public static BlockEntityType OVERWORLD_GEYSER_BE; public static BlockEntityType NETHER_GEYSER_BE; public static void init() { - STARFISH_BE = Registry.register(Registry.BLOCK_ENTITY_TYPE, new Identifier(RocksMain.MOD_ID,"starfish_blockentity"), BlockEntityType.Builder.create(StarfishBlockEntity::new, RocksMain.Starfish).build(null)); OVERWORLD_GEYSER_BE = Registry.register(Registry.BLOCK_ENTITY_TYPE, new Identifier(RocksMain.MOD_ID,"overworld_geyser_blockentity"), BlockEntityType.Builder.create(OverworldGeyserBlockEntity::new, RocksMain.Geyser).build(null)); NETHER_GEYSER_BE = Registry.register(Registry.BLOCK_ENTITY_TYPE, new Identifier(RocksMain.MOD_ID,"nether_geyser_blockentity"), BlockEntityType.Builder.create(NetherGeyserBlockEntity::new, RocksMain.NetherGeyser).build(null)); } diff --git a/src/main/java/eu/midnightdust/motschen/rocks/block/blockentity/NetherGeyserBlockEntity.java b/src/main/java/eu/midnightdust/motschen/rocks/block/blockentity/NetherGeyserBlockEntity.java index f99df6d..2c557a2 100644 --- a/src/main/java/eu/midnightdust/motschen/rocks/block/blockentity/NetherGeyserBlockEntity.java +++ b/src/main/java/eu/midnightdust/motschen/rocks/block/blockentity/NetherGeyserBlockEntity.java @@ -1,5 +1,6 @@ package eu.midnightdust.motschen.rocks.block.blockentity; +import eu.midnightdust.motschen.rocks.RocksMain; import eu.midnightdust.motschen.rocks.block.NetherGeyser; import net.minecraft.block.BlockState; import net.minecraft.block.entity.BlockEntity; @@ -18,32 +19,33 @@ public class NetherGeyserBlockEntity extends BlockEntity implements Tickable { @Override public void tick() { - BlockPos pos = this.pos; - PlayerEntity player = this.world.getClosestPlayer(pos.getX()+0.5,pos.getY()+0.5, pos.getZ()+0.5,3,true); - PlayerEntity player2 = this.world.getClosestPlayer(pos.getX()+0.5,pos.getY()+0.5, pos.getZ()+0.5,1,true); - BlockState state = this.world.getBlockState(pos); + if (world.getBlockState(pos).getBlock() == RocksMain.NetherGeyser) { + PlayerEntity player = this.world.getClosestPlayer(pos.getX() + 0.5, pos.getY() + 0.5, pos.getZ() + 0.5, 3, true); + PlayerEntity player2 = this.world.getClosestPlayer(pos.getX() + 0.5, pos.getY() + 0.5, pos.getZ() + 0.5, 1, true); + BlockState state = this.getCachedState(); - if (player != null) { - world.setBlockState(pos, state.with(NetherGeyser.ACTIVE, true)); - player.damage(DamageSource.ON_FIRE,1); - if (player2 != null) { - player2.damage(DamageSource.ON_FIRE,4); - } - countdown = 1000; - } - else { - if (countdown > 0) { - countdown = countdown - 1; - } - if (countdown == 0) { - world.setBlockState(pos, state.with(NetherGeyser.ACTIVE, false)); - } - } + if (player != null) { + world.setBlockState(pos, state.with(NetherGeyser.ACTIVE, true)); - if (Boolean.TRUE.equals(state.get(NetherGeyser.ACTIVE))) { - world.addParticle(ParticleTypes.LAVA,pos.getX()+0.5,pos.getY()+0.1,pos.getZ()+0.5,1,1.5,1); - world.addParticle(ParticleTypes.LAVA,pos.getX()+0.5,pos.getY()+1.0,pos.getZ()+0.5,1,1.5,1); - world.addParticle(ParticleTypes.SMOKE,pos.getX()+0.5,pos.getY()+0.1,pos.getZ()+0.5,0,0.3,0); + player.damage(DamageSource.ON_FIRE, 1); + if (player2 != null) { + player2.damage(DamageSource.ON_FIRE, 4); + } + countdown = 1000; + } else { + if (countdown > 0) { + countdown = countdown - 1; + } + if (countdown == 0) { + world.setBlockState(pos, state.with(NetherGeyser.ACTIVE, false)); + } + } + + if (Boolean.TRUE.equals(state.get(NetherGeyser.ACTIVE))) { + world.addParticle(ParticleTypes.LAVA, pos.getX() + 0.5, pos.getY() + 0.1, pos.getZ() + 0.5, 1, 1.5, 1); + world.addParticle(ParticleTypes.LAVA, pos.getX() + 0.5, pos.getY() + 1.0, pos.getZ() + 0.5, 1, 1.5, 1); + world.addParticle(ParticleTypes.SMOKE, pos.getX() + 0.5, pos.getY() + 0.1, pos.getZ() + 0.5, 0, 0.3, 0); + } } } } diff --git a/src/main/java/eu/midnightdust/motschen/rocks/block/blockentity/OverworldGeyserBlockEntity.java b/src/main/java/eu/midnightdust/motschen/rocks/block/blockentity/OverworldGeyserBlockEntity.java index cff6d1c..1907c4f 100644 --- a/src/main/java/eu/midnightdust/motschen/rocks/block/blockentity/OverworldGeyserBlockEntity.java +++ b/src/main/java/eu/midnightdust/motschen/rocks/block/blockentity/OverworldGeyserBlockEntity.java @@ -1,5 +1,6 @@ package eu.midnightdust.motschen.rocks.block.blockentity; +import eu.midnightdust.motschen.rocks.RocksMain; import eu.midnightdust.motschen.rocks.block.OverworldGeyser; import net.minecraft.block.BlockState; import net.minecraft.block.entity.BlockEntity; @@ -19,36 +20,37 @@ public class OverworldGeyserBlockEntity extends BlockEntity implements Tickable @Override public void tick() { - BlockPos pos = this.pos; - PlayerEntity player = this.world.getClosestPlayer(pos.getX()+0.5,pos.getY()+0.5, pos.getZ()+0.5,3,true); - PlayerEntity player2 = this.world.getClosestPlayer(pos.getX()+0.5,pos.getY()+0.5, pos.getZ()+0.5,8,true); - PlayerEntity player3 = null; + if (world.getBlockState(pos).getBlock() == RocksMain.Geyser) { + PlayerEntity player = this.world.getClosestPlayer(pos.getX() + 0.5, pos.getY() + 0.5, pos.getZ() + 0.5, 3, true); + PlayerEntity player2 = this.world.getClosestPlayer(pos.getX() + 0.5, pos.getY() + 0.5, pos.getZ() + 0.5, 8, true); + PlayerEntity player3 = null; - if (player2 != null && player2.getY() >= pos.getY() && (pos.getX() <= player2.getX() && pos.getX()+1 >= player2.getX()) && (pos.getZ() <= player2.getZ() && pos.getZ()+1 >= player2.getZ())) { - player3 = player2; - } - BlockState state = this.world.getBlockState(pos); + if (player2 != null && player2.getY() >= pos.getY() && (pos.getX() <= player2.getX() && pos.getX() + 1 >= player2.getX()) && (pos.getZ() <= player2.getZ() && pos.getZ() + 1 >= player2.getZ())) { + player3 = player2; + } + BlockState state = this.getCachedState(); - if (player != null) { - world.setBlockState(pos, state.with(OverworldGeyser.ACTIVE, true)); - if (player3 != null) { - player3.addStatusEffect(new StatusEffectInstance(StatusEffects.LEVITATION, 2, 12, true, false, false)); - } - countdown = 1000; - } - else { - if (countdown > 0) { - countdown = countdown - 1; - } - if (countdown == 0) { - world.setBlockState(pos, state.with(OverworldGeyser.ACTIVE, false)); - } - } + if (player != null) { + world.setBlockState(pos, state.with(OverworldGeyser.ACTIVE, true)); - if (world != null && state.get(OverworldGeyser.ACTIVE) == true) { - world.addParticle(ParticleTypes.SPIT,pos.getX()+0.5,pos.getY()+0.1,pos.getZ()+0.5,0,1.0,0); - world.addParticle(ParticleTypes.SPIT,pos.getX()+0.5,pos.getY()+0.3,pos.getZ()+0.5,0,1.0,0); - world.addParticle(ParticleTypes.SPLASH,pos.getX()+0.5,pos.getY()+1.0,pos.getZ()+0.5,-0.01,1.5,-0.01); + if (player3 != null) { + player3.addStatusEffect(new StatusEffectInstance(StatusEffects.LEVITATION, 2, 12, true, false, false)); + } + countdown = 1000; + } else { + if (countdown > 0) { + countdown = countdown - 1; + } + if (countdown == 0) { + world.setBlockState(pos, state.with(OverworldGeyser.ACTIVE, false)); + } + } + + if (world != null && state.get(OverworldGeyser.ACTIVE) == true) { + world.addParticle(ParticleTypes.SPIT, pos.getX() + 0.5, pos.getY() + 0.1, pos.getZ() + 0.5, 0, 1.0, 0); + world.addParticle(ParticleTypes.SPIT, pos.getX() + 0.5, pos.getY() + 0.3, pos.getZ() + 0.5, 0, 1.0, 0); + world.addParticle(ParticleTypes.SPLASH, pos.getX() + 0.5, pos.getY() + 1.0, pos.getZ() + 0.5, -0.01, 1.5, -0.01); + } } } } diff --git a/src/main/java/eu/midnightdust/motschen/rocks/block/blockentity/StarfishBlockEntity.java b/src/main/java/eu/midnightdust/motschen/rocks/block/blockentity/StarfishBlockEntity.java deleted file mode 100644 index 492df08..0000000 --- a/src/main/java/eu/midnightdust/motschen/rocks/block/blockentity/StarfishBlockEntity.java +++ /dev/null @@ -1,17 +0,0 @@ -package eu.midnightdust.motschen.rocks.block.blockentity; - -import eu.midnightdust.motschen.rocks.RocksMain; -import eu.midnightdust.motschen.rocks.blockstates.StarfishVariation; -import net.minecraft.block.entity.BlockEntity; - -public class StarfishBlockEntity extends BlockEntity { - - public StarfishBlockEntity() { - super(BlockEntityInit.STARFISH_BE); - } - - public StarfishVariation getVariation() { - return this.world.getBlockState(pos).get(RocksMain.STARFISH_VARIATION); - } -} - diff --git a/src/main/java/eu/midnightdust/motschen/rocks/block/render/StarfishBlockEntityRenderer.java b/src/main/java/eu/midnightdust/motschen/rocks/block/render/StarfishBlockEntityRenderer.java deleted file mode 100644 index 2ce5da6..0000000 --- a/src/main/java/eu/midnightdust/motschen/rocks/block/render/StarfishBlockEntityRenderer.java +++ /dev/null @@ -1,125 +0,0 @@ -package eu.midnightdust.motschen.rocks.block.render; - -import eu.midnightdust.motschen.rocks.block.blockentity.StarfishBlockEntity; -import eu.midnightdust.motschen.rocks.blockstates.StarfishVariation; -import net.fabricmc.api.EnvType; -import net.fabricmc.api.Environment; -import net.minecraft.client.model.ModelPart; -import net.minecraft.client.render.RenderLayer; -import net.minecraft.client.render.VertexConsumer; -import net.minecraft.client.render.VertexConsumerProvider; -import net.minecraft.client.render.block.entity.BlockEntityRenderDispatcher; -import net.minecraft.client.render.block.entity.BlockEntityRenderer; -import net.minecraft.client.util.math.MatrixStack; -import net.minecraft.client.util.math.Vector3f; -import net.minecraft.util.Identifier; - -@Environment(EnvType.CLIENT) -public class StarfishBlockEntityRenderer extends BlockEntityRenderer { - private static final ModelPart side1; - private static final ModelPart side2; - private static final ModelPart side3; - private static final ModelPart side4; - private static final ModelPart side5; - private static final ModelPart bb_main; - - static { - side1 = new ModelPart(16, 16, 0, 0); - side1.setPivot(0.0F, 24.0F, 0.0F); - side1.setTextureOffset(0, 0).addCuboid(-0.5F, -1.0F, 1.0F, 1.0F, 1.0F, 4.0F, 0.0F, false); - side1.setTextureOffset(1, 1).addCuboid(-0.75F, -1.02F, 1.0F, 1.0F, 1.0F, 3.0F, 0.0F, false); - side1.setTextureOffset(1, 2).addCuboid(-1.0F, -0.99F, 1.0F, 2.0F, 1.0F, 2.0F, 0.0F, false); - side1.setTextureOffset(1, 1).addCuboid(-0.25F, -1.01F, 1.0F, 1.0F, 1.0F, 3.0F, 0.0F, false); - - side2 = new ModelPart(16, 16, 0, 0); - side2.setPivot(0.0F, 24.0F, 0.0F); - setRotationAngle(side2, 0.0F, -1.2654F, 0.0F); - side2.setTextureOffset(0, 0).addCuboid(-0.5F, -1.0F, 1.0F, 1.0F, 1.0F, 4.0F, 0.0F, false); - side2.setTextureOffset(1, 1).addCuboid(-0.75F, -1.02F, 1.0F, 1.0F, 1.0F, 3.0F, 0.0F, false); - side2.setTextureOffset(1, 1).addCuboid(-0.25F, -1.01F, 1.0F, 1.0F, 1.0F, 3.0F, 0.0F, false); - side2.setTextureOffset(1, 2).addCuboid(-1.0F, -0.99F, 1.0F, 2.0F, 1.0F, 2.0F, 0.0F, false); - - side3 = new ModelPart(16, 16, 0, 0); - side3.setPivot(0.0F, 24.0F, 0.0F); - setRotationAngle(side3, 0.0F, 1.2654F, 0.0F); - side3.setTextureOffset(0, 0).addCuboid(-0.5F, -1.0F, 1.0F, 1.0F, 1.0F, 4.0F, 0.0F, false); - side3.setTextureOffset(1, 1).addCuboid(-0.75F, -1.02F, 1.0F, 1.0F, 1.0F, 3.0F, 0.0F, false); - side3.setTextureOffset(1, 1).addCuboid(-0.25F, -1.01F, 1.0F, 1.0F, 1.0F, 3.0F, 0.0F, false); - side3.setTextureOffset(1, 2).addCuboid(-1.0F, -0.99F, 1.0F, 2.0F, 1.0F, 2.0F, 0.0F, false); - - side4 = new ModelPart(16, 16, 0, 0); - side4.setPivot(0.0F, 24.0F, 0.0F); - setRotationAngle(side4, 0.0F, 2.5307F, 0.0F); - side4.setTextureOffset(0, 0).addCuboid(-0.5F, -1.0F, 1.0F, 1.0F, 1.0F, 4.0F, 0.0F, false); - side4.setTextureOffset(1, 1).addCuboid(-0.75F, -1.02F, 1.0F, 1.0F, 1.0F, 3.0F, 0.0F, false); - side4.setTextureOffset(1, 1).addCuboid(-0.25F, -1.01F, 1.0F, 1.0F, 1.0F, 3.0F, 0.0F, false); - side4.setTextureOffset(1, 2).addCuboid(-1.0F, -0.99F, 1.0F, 2.0F, 1.0F, 2.0F, 0.0F, false); - - side5 = new ModelPart(16, 16, 0, 0); - side5.setPivot(0.0F, 24.0F, 0.0F); - setRotationAngle(side5, 0.0F, -2.5307F, 0.0F); - side5.setTextureOffset(0, 0).addCuboid(-0.5F, -1.0F, 1.0F, 1.0F, 1.0F, 4.0F, 0.0F, false); - side5.setTextureOffset(1, 1).addCuboid(-0.75F, -1.02F, 1.0F, 1.0F, 1.0F, 3.0F, 0.0F, false); - side5.setTextureOffset(1, 1).addCuboid(-0.25F, -1.01F, 1.0F, 1.0F, 1.0F, 3.0F, 0.0F, false); - side5.setTextureOffset(1, 2).addCuboid(-1.0F, -0.99F, 1.0F, 2.0F, 1.0F, 2.0F, 0.0F, false); - - bb_main = new ModelPart(16, 16, 0, 0); - bb_main.setPivot(0.0F, 24.0F, 0.0F); - bb_main.setTextureOffset(1, 2).addCuboid(-1.0F, -1.005F, -1.0F, 2.0F, 1.0F, 2.0F, 0.0F, false); - bb_main.setTextureOffset(1, 2).addCuboid(-0.8F, -1.0F, -1.25F, 2.0F, 1.0F, 2.0F, 0.0F, false); - bb_main.setTextureOffset(2, 2).addCuboid(-1.2F, -1.0F, -1.25F, 1.0F, 1.0F, 2.0F, 0.0F, false); - } - - public StarfishBlockEntityRenderer(BlockEntityRenderDispatcher blockEntityRenderDispatcher) { - super(blockEntityRenderDispatcher); - } - @Override - public void render(StarfishBlockEntity blockEntity, float tickDelta, MatrixStack matrixStack, VertexConsumerProvider vertexConsumers, int light, int overlay) { - if (blockEntity.getVariation().equals(StarfishVariation.RED)) { - matrixStack.push(); - VertexConsumer vertexConsumer = vertexConsumers.getBuffer(RenderLayer.getEntityCutoutNoCull(new Identifier("rocks:textures/block/starfish_red.png"))); - - matrixStack.translate(0.4, -1.44, 0.6); - side1.render(matrixStack, vertexConsumer, light, overlay); - side2.render(matrixStack, vertexConsumer, light, overlay); - side3.render(matrixStack, vertexConsumer, light, overlay); - side4.render(matrixStack, vertexConsumer, light, overlay); - side5.render(matrixStack, vertexConsumer, light, overlay); - bb_main.render(matrixStack, vertexConsumer, light, overlay); - matrixStack.pop(); - } - else if (blockEntity.getVariation().equals(StarfishVariation.PINK)) { - matrixStack.push(); - VertexConsumer vertexConsumer = vertexConsumers.getBuffer(RenderLayer.getEntityCutoutNoCull(new Identifier("rocks:textures/block/starfish_pink.png"))); - - matrixStack.translate(0.4, -1.44, 0.4); - matrixStack.multiply(Vector3f.POSITIVE_Y.getDegreesQuaternion(90)); - side1.render(matrixStack, vertexConsumer, light, overlay); - side2.render(matrixStack, vertexConsumer, light, overlay); - side3.render(matrixStack, vertexConsumer, light, overlay); - side4.render(matrixStack, vertexConsumer, light, overlay); - side5.render(matrixStack, vertexConsumer, light, overlay); - bb_main.render(matrixStack, vertexConsumer, light, overlay); - matrixStack.pop(); - } - else { - matrixStack.push(); - VertexConsumer vertexConsumer = vertexConsumers.getBuffer(RenderLayer.getEntityCutoutNoCull(new Identifier("rocks:textures/block/starfish_orange.png"))); - - matrixStack.translate(0.65, -1.44, 0.65); - matrixStack.multiply(Vector3f.POSITIVE_Y.getDegreesQuaternion(123)); - side1.render(matrixStack, vertexConsumer, light, overlay); - side2.render(matrixStack, vertexConsumer, light, overlay); - side3.render(matrixStack, vertexConsumer, light, overlay); - side4.render(matrixStack, vertexConsumer, light, overlay); - side5.render(matrixStack, vertexConsumer, light, overlay); - bb_main.render(matrixStack, vertexConsumer, light, overlay); - matrixStack.pop(); - } - } - public static void setRotationAngle(ModelPart bone, float x, float y, float z) { - bone.pitch = x; - bone.yaw = y; - bone.roll = z; - } -} \ No newline at end of file diff --git a/src/main/java/eu/midnightdust/motschen/rocks/mixin/MixinModelElementDeserializer.java b/src/main/java/eu/midnightdust/motschen/rocks/mixin/MixinModelElementDeserializer.java new file mode 100644 index 0000000..62a7bce --- /dev/null +++ b/src/main/java/eu/midnightdust/motschen/rocks/mixin/MixinModelElementDeserializer.java @@ -0,0 +1,22 @@ +package eu.midnightdust.motschen.rocks.mixin; + +import com.google.gson.JsonObject; +import net.minecraft.client.render.model.json.ModelElement; +import net.minecraft.util.JsonHelper; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; + +@Mixin(value = ModelElement.Deserializer.class, priority = 2000) +public class MixinModelElementDeserializer { + + /** + * @author Motschen + * @reason Not cancellable + * Unlimited rotation angles for starfish + * Inspired by https://github.com/CottonMC/ModelsUnlocked/blob/master/src/main/java/io/github/cottonmc/modelsunlocked/mixin/ModelElementDeserializerMixin.java + */ + @Overwrite + private float deserializeRotationAngle(JsonObject json) { + return (JsonHelper.getFloat(json, "angle")); + } +} diff --git a/src/main/resources/assets/rocks/blockstates/acacia_stick.json b/src/main/resources/assets/rocks/blockstates/acacia_stick.json index 2513715..28df98c 100644 --- a/src/main/resources/assets/rocks/blockstates/acacia_stick.json +++ b/src/main/resources/assets/rocks/blockstates/acacia_stick.json @@ -1,7 +1,22 @@ { "variants": { - "variation=small": { "model": "rocks:block/small_acacia_stick" }, - "variation=medium": { "model": "rocks:block/medium_acacia_stick" }, - "variation=large": { "model": "rocks:block/large_acacia_stick" } + "variation=small": [ + {"model": "rocks:block/small_acacia_stick"}, + {"model": "rocks:block/small_acacia_stick", "y": 90}, + {"model": "rocks:block/small_acacia_stick", "y": 180}, + {"model": "rocks:block/small_acacia_stick", "y": 270} + ], + "variation=medium": [ + {"model": "rocks:block/medium_acacia_stick"}, + {"model": "rocks:block/medium_acacia_stick", "y": 90}, + {"model": "rocks:block/medium_acacia_stick", "y": 180}, + {"model": "rocks:block/medium_acacia_stick", "y": 270} + ], + "variation=large": [ + {"model": "rocks:block/large_acacia_stick"}, + {"model": "rocks:block/large_acacia_stick", "y": 90}, + {"model": "rocks:block/large_acacia_stick", "y": 180}, + {"model": "rocks:block/large_acacia_stick", "y": 270} + ] } -} +} \ No newline at end of file diff --git a/src/main/resources/assets/rocks/blockstates/andesite_rock.json b/src/main/resources/assets/rocks/blockstates/andesite_rock.json index b4e434a..f953414 100644 --- a/src/main/resources/assets/rocks/blockstates/andesite_rock.json +++ b/src/main/resources/assets/rocks/blockstates/andesite_rock.json @@ -1,8 +1,28 @@ { "variants": { - "variation=tiny": { "model": "rocks:block/tiny_andesite_rock" }, - "variation=small": { "model": "rocks:block/small_andesite_rock" }, - "variation=medium": { "model": "rocks:block/medium_andesite_rock" }, - "variation=large": { "model": "rocks:block/large_andesite_rock" } + "variation=tiny": [ + {"model": "rocks:block/tiny_andesite_rock"}, + {"model": "rocks:block/tiny_andesite_rock", "y": 90}, + {"model": "rocks:block/tiny_andesite_rock", "y": 180}, + {"model": "rocks:block/tiny_andesite_rock", "y": 270} + ], + "variation=small": [ + {"model": "rocks:block/small_andesite_rock"}, + {"model": "rocks:block/small_andesite_rock", "y": 90}, + {"model": "rocks:block/small_andesite_rock", "y": 180}, + {"model": "rocks:block/small_andesite_rock", "y": 270} + ], + "variation=medium": [ + {"model": "rocks:block/medium_andesite_rock"}, + {"model": "rocks:block/medium_andesite_rock", "y": 90}, + {"model": "rocks:block/medium_andesite_rock", "y": 180}, + {"model": "rocks:block/medium_andesite_rock", "y": 270} + ], + "variation=large": [ + {"model": "rocks:block/large_andesite_rock"}, + {"model": "rocks:block/large_andesite_rock", "y": 90}, + {"model": "rocks:block/large_andesite_rock", "y": 180}, + {"model": "rocks:block/large_andesite_rock", "y": 270} + ] } } diff --git a/src/main/resources/assets/rocks/blockstates/birch_stick.json b/src/main/resources/assets/rocks/blockstates/birch_stick.json index 59c3d81..6897250 100644 --- a/src/main/resources/assets/rocks/blockstates/birch_stick.json +++ b/src/main/resources/assets/rocks/blockstates/birch_stick.json @@ -1,7 +1,22 @@ { "variants": { - "variation=small": { "model": "rocks:block/small_birch_stick" }, - "variation=medium": { "model": "rocks:block/medium_birch_stick" }, - "variation=large": { "model": "rocks:block/large_birch_stick" } + "variation=small": [ + {"model": "rocks:block/small_birch_stick"}, + {"model": "rocks:block/small_birch_stick", "y": 90}, + {"model": "rocks:block/small_birch_stick", "y": 180}, + {"model": "rocks:block/small_birch_stick", "y": 270} + ], + "variation=medium": [ + {"model": "rocks:block/medium_birch_stick"}, + {"model": "rocks:block/medium_birch_stick", "y": 90}, + {"model": "rocks:block/medium_birch_stick", "y": 180}, + {"model": "rocks:block/medium_birch_stick", "y": 270} + ], + "variation=large": [ + {"model": "rocks:block/large_birch_stick"}, + {"model": "rocks:block/large_birch_stick", "y": 90}, + {"model": "rocks:block/large_birch_stick", "y": 180}, + {"model": "rocks:block/large_birch_stick", "y": 270} + ] } -} +} \ No newline at end of file diff --git a/src/main/resources/assets/rocks/blockstates/dark_oak_stick.json b/src/main/resources/assets/rocks/blockstates/dark_oak_stick.json index 41bf65a..cbc5ee7 100644 --- a/src/main/resources/assets/rocks/blockstates/dark_oak_stick.json +++ b/src/main/resources/assets/rocks/blockstates/dark_oak_stick.json @@ -1,7 +1,22 @@ { "variants": { - "variation=small": { "model": "rocks:block/small_dark_oak_stick" }, - "variation=medium": { "model": "rocks:block/medium_dark_oak_stick" }, - "variation=large": { "model": "rocks:block/large_dark_oak_stick" } + "variation=small": [ + {"model": "rocks:block/small_dark_oak_stick"}, + {"model": "rocks:block/small_dark_oak_stick", "y": 90}, + {"model": "rocks:block/small_dark_oak_stick", "y": 180}, + {"model": "rocks:block/small_dark_oak_stick", "y": 270} + ], + "variation=medium": [ + {"model": "rocks:block/medium_dark_oak_stick"}, + {"model": "rocks:block/medium_dark_oak_stick", "y": 90}, + {"model": "rocks:block/medium_dark_oak_stick", "y": 180}, + {"model": "rocks:block/medium_dark_oak_stick", "y": 270} + ], + "variation=large": [ + {"model": "rocks:block/large_dark_oak_stick"}, + {"model": "rocks:block/large_dark_oak_stick", "y": 90}, + {"model": "rocks:block/large_dark_oak_stick", "y": 180}, + {"model": "rocks:block/large_dark_oak_stick", "y": 270} + ] } -} +} \ No newline at end of file diff --git a/src/main/resources/assets/rocks/blockstates/diorite_rock.json b/src/main/resources/assets/rocks/blockstates/diorite_rock.json index 272b4d8..792405b 100644 --- a/src/main/resources/assets/rocks/blockstates/diorite_rock.json +++ b/src/main/resources/assets/rocks/blockstates/diorite_rock.json @@ -1,8 +1,28 @@ { "variants": { - "variation=tiny": { "model": "rocks:block/tiny_diorite_rock" }, - "variation=small": { "model": "rocks:block/small_diorite_rock" }, - "variation=medium": { "model": "rocks:block/medium_diorite_rock" }, - "variation=large": { "model": "rocks:block/large_diorite_rock" } + "variation=tiny": [ + {"model": "rocks:block/tiny_diorite_rock"}, + {"model": "rocks:block/tiny_diorite_rock", "y": 90}, + {"model": "rocks:block/tiny_diorite_rock", "y": 180}, + {"model": "rocks:block/tiny_diorite_rock", "y": 270} + ], + "variation=small": [ + {"model": "rocks:block/small_diorite_rock"}, + {"model": "rocks:block/small_diorite_rock", "y": 90}, + {"model": "rocks:block/small_diorite_rock", "y": 180}, + {"model": "rocks:block/small_diorite_rock", "y": 270} + ], + "variation=medium": [ + {"model": "rocks:block/medium_diorite_rock"}, + {"model": "rocks:block/medium_diorite_rock", "y": 90}, + {"model": "rocks:block/medium_diorite_rock", "y": 180}, + {"model": "rocks:block/medium_diorite_rock", "y": 270} + ], + "variation=large": [ + {"model": "rocks:block/large_diorite_rock"}, + {"model": "rocks:block/large_diorite_rock", "y": 90}, + {"model": "rocks:block/large_diorite_rock", "y": 180}, + {"model": "rocks:block/large_diorite_rock", "y": 270} + ] } } diff --git a/src/main/resources/assets/rocks/blockstates/end_stone_rock.json b/src/main/resources/assets/rocks/blockstates/end_stone_rock.json index 33a3caf..30e8b90 100644 --- a/src/main/resources/assets/rocks/blockstates/end_stone_rock.json +++ b/src/main/resources/assets/rocks/blockstates/end_stone_rock.json @@ -1,8 +1,28 @@ { "variants": { - "variation=tiny": { "model": "rocks:block/tiny_end_stone_rock" }, - "variation=small": { "model": "rocks:block/small_end_stone_rock" }, - "variation=medium": { "model": "rocks:block/medium_end_stone_rock" }, - "variation=large": { "model": "rocks:block/large_end_stone_rock" } + "variation=tiny": [ + {"model": "rocks:block/tiny_end_stone_rock"}, + {"model": "rocks:block/tiny_end_stone_rock", "y": 90}, + {"model": "rocks:block/tiny_end_stone_rock", "y": 180}, + {"model": "rocks:block/tiny_end_stone_rock", "y": 270} + ], + "variation=small": [ + {"model": "rocks:block/small_end_stone_rock"}, + {"model": "rocks:block/small_end_stone_rock", "y": 90}, + {"model": "rocks:block/small_end_stone_rock", "y": 180}, + {"model": "rocks:block/small_end_stone_rock", "y": 270} + ], + "variation=medium": [ + {"model": "rocks:block/medium_end_stone_rock"}, + {"model": "rocks:block/medium_end_stone_rock", "y": 90}, + {"model": "rocks:block/medium_end_stone_rock", "y": 180}, + {"model": "rocks:block/medium_end_stone_rock", "y": 270} + ], + "variation=large": [ + {"model": "rocks:block/large_end_stone_rock"}, + {"model": "rocks:block/large_end_stone_rock", "y": 90}, + {"model": "rocks:block/large_end_stone_rock", "y": 180}, + {"model": "rocks:block/large_end_stone_rock", "y": 270} + ] } } diff --git a/src/main/resources/assets/rocks/blockstates/granite_rock.json b/src/main/resources/assets/rocks/blockstates/granite_rock.json index d9ee051..82d4b2c 100644 --- a/src/main/resources/assets/rocks/blockstates/granite_rock.json +++ b/src/main/resources/assets/rocks/blockstates/granite_rock.json @@ -1,8 +1,28 @@ { "variants": { - "variation=tiny": { "model": "rocks:block/tiny_granite_rock" }, - "variation=small": { "model": "rocks:block/small_granite_rock" }, - "variation=medium": { "model": "rocks:block/medium_granite_rock" }, - "variation=large": { "model": "rocks:block/large_granite_rock" } + "variation=tiny": [ + {"model": "rocks:block/tiny_granite_rock"}, + {"model": "rocks:block/tiny_granite_rock", "y": 90}, + {"model": "rocks:block/tiny_granite_rock", "y": 180}, + {"model": "rocks:block/tiny_granite_rock", "y": 270} + ], + "variation=small": [ + {"model": "rocks:block/small_granite_rock"}, + {"model": "rocks:block/small_granite_rock", "y": 90}, + {"model": "rocks:block/small_granite_rock", "y": 180}, + {"model": "rocks:block/small_granite_rock", "y": 270} + ], + "variation=medium": [ + {"model": "rocks:block/medium_granite_rock"}, + {"model": "rocks:block/medium_granite_rock", "y": 90}, + {"model": "rocks:block/medium_granite_rock", "y": 180}, + {"model": "rocks:block/medium_granite_rock", "y": 270} + ], + "variation=large": [ + {"model": "rocks:block/large_granite_rock"}, + {"model": "rocks:block/large_granite_rock", "y": 90}, + {"model": "rocks:block/large_granite_rock", "y": 180}, + {"model": "rocks:block/large_granite_rock", "y": 270} + ] } } diff --git a/src/main/resources/assets/rocks/blockstates/gravel_rock.json b/src/main/resources/assets/rocks/blockstates/gravel_rock.json index 765564c..3dfe94f 100644 --- a/src/main/resources/assets/rocks/blockstates/gravel_rock.json +++ b/src/main/resources/assets/rocks/blockstates/gravel_rock.json @@ -1,8 +1,28 @@ { "variants": { - "variation=tiny": { "model": "rocks:block/tiny_gravel_rock" }, - "variation=small": { "model": "rocks:block/small_gravel_rock" }, - "variation=medium": { "model": "rocks:block/medium_gravel_rock" }, - "variation=large": { "model": "rocks:block/large_gravel_rock" } + "variation=tiny": [ + {"model": "rocks:block/tiny_gravel_rock"}, + {"model": "rocks:block/tiny_gravel_rock", "y": 90}, + {"model": "rocks:block/tiny_gravel_rock", "y": 180}, + {"model": "rocks:block/tiny_gravel_rock", "y": 270} + ], + "variation=small": [ + {"model": "rocks:block/small_gravel_rock"}, + {"model": "rocks:block/small_gravel_rock", "y": 90}, + {"model": "rocks:block/small_gravel_rock", "y": 180}, + {"model": "rocks:block/small_gravel_rock", "y": 270} + ], + "variation=medium": [ + {"model": "rocks:block/medium_gravel_rock"}, + {"model": "rocks:block/medium_gravel_rock", "y": 90}, + {"model": "rocks:block/medium_gravel_rock", "y": 180}, + {"model": "rocks:block/medium_gravel_rock", "y": 270} + ], + "variation=large": [ + {"model": "rocks:block/large_gravel_rock"}, + {"model": "rocks:block/large_gravel_rock", "y": 90}, + {"model": "rocks:block/large_gravel_rock", "y": 180}, + {"model": "rocks:block/large_gravel_rock", "y": 270} + ] } } diff --git a/src/main/resources/assets/rocks/blockstates/jungle_stick.json b/src/main/resources/assets/rocks/blockstates/jungle_stick.json index ecda40f..e0fd1a0 100644 --- a/src/main/resources/assets/rocks/blockstates/jungle_stick.json +++ b/src/main/resources/assets/rocks/blockstates/jungle_stick.json @@ -1,7 +1,22 @@ { "variants": { - "variation=small": { "model": "rocks:block/small_jungle_stick" }, - "variation=medium": { "model": "rocks:block/medium_jungle_stick" }, - "variation=large": { "model": "rocks:block/large_jungle_stick" } + "variation=small": [ + {"model": "rocks:block/small_jungle_stick"}, + {"model": "rocks:block/small_jungle_stick", "y": 90}, + {"model": "rocks:block/small_jungle_stick", "y": 180}, + {"model": "rocks:block/small_jungle_stick", "y": 270} + ], + "variation=medium": [ + {"model": "rocks:block/medium_jungle_stick"}, + {"model": "rocks:block/medium_jungle_stick", "y": 90}, + {"model": "rocks:block/medium_jungle_stick", "y": 180}, + {"model": "rocks:block/medium_jungle_stick", "y": 270} + ], + "variation=large": [ + {"model": "rocks:block/large_jungle_stick"}, + {"model": "rocks:block/large_jungle_stick", "y": 90}, + {"model": "rocks:block/large_jungle_stick", "y": 180}, + {"model": "rocks:block/large_jungle_stick", "y": 270} + ] } -} +} \ No newline at end of file diff --git a/src/main/resources/assets/rocks/blockstates/netherrack_rock.json b/src/main/resources/assets/rocks/blockstates/netherrack_rock.json index a00dc22..aef8f6f 100644 --- a/src/main/resources/assets/rocks/blockstates/netherrack_rock.json +++ b/src/main/resources/assets/rocks/blockstates/netherrack_rock.json @@ -1,8 +1,28 @@ { "variants": { - "variation=tiny": { "model": "rocks:block/tiny_netherrack_rock" }, - "variation=small": { "model": "rocks:block/small_netherrack_rock" }, - "variation=medium": { "model": "rocks:block/medium_netherrack_rock" }, - "variation=large": { "model": "rocks:block/large_netherrack_rock" } + "variation=tiny": [ + {"model": "rocks:block/tiny_netherrack_rock"}, + {"model": "rocks:block/tiny_netherrack_rock", "y": 90}, + {"model": "rocks:block/tiny_netherrack_rock", "y": 180}, + {"model": "rocks:block/tiny_netherrack_rock", "y": 270} + ], + "variation=small": [ + {"model": "rocks:block/small_netherrack_rock"}, + {"model": "rocks:block/small_netherrack_rock", "y": 90}, + {"model": "rocks:block/small_netherrack_rock", "y": 180}, + {"model": "rocks:block/small_netherrack_rock", "y": 270} + ], + "variation=medium": [ + {"model": "rocks:block/medium_netherrack_rock"}, + {"model": "rocks:block/medium_netherrack_rock", "y": 90}, + {"model": "rocks:block/medium_netherrack_rock", "y": 180}, + {"model": "rocks:block/medium_netherrack_rock", "y": 270} + ], + "variation=large": [ + {"model": "rocks:block/large_netherrack_rock"}, + {"model": "rocks:block/large_netherrack_rock", "y": 90}, + {"model": "rocks:block/large_netherrack_rock", "y": 180}, + {"model": "rocks:block/large_netherrack_rock", "y": 270} + ] } } diff --git a/src/main/resources/assets/rocks/blockstates/oak_stick.json b/src/main/resources/assets/rocks/blockstates/oak_stick.json index bc0a6c2..1b2a1f8 100644 --- a/src/main/resources/assets/rocks/blockstates/oak_stick.json +++ b/src/main/resources/assets/rocks/blockstates/oak_stick.json @@ -1,7 +1,22 @@ { "variants": { - "variation=small": { "model": "rocks:block/small_oak_stick" }, - "variation=medium": { "model": "rocks:block/medium_oak_stick" }, - "variation=large": { "model": "rocks:block/large_oak_stick" } + "variation=small": [ + {"model": "rocks:block/small_oak_stick"}, + {"model": "rocks:block/small_oak_stick", "y": 90}, + {"model": "rocks:block/small_oak_stick", "y": 180}, + {"model": "rocks:block/small_oak_stick", "y": 270} + ], + "variation=medium": [ + {"model": "rocks:block/medium_oak_stick"}, + {"model": "rocks:block/medium_oak_stick", "y": 90}, + {"model": "rocks:block/medium_oak_stick", "y": 180}, + {"model": "rocks:block/medium_oak_stick", "y": 270} + ], + "variation=large": [ + {"model": "rocks:block/large_oak_stick"}, + {"model": "rocks:block/large_oak_stick", "y": 90}, + {"model": "rocks:block/large_oak_stick", "y": 180}, + {"model": "rocks:block/large_oak_stick", "y": 270} + ] } -} +} \ No newline at end of file diff --git a/src/main/resources/assets/rocks/blockstates/pinecone.json b/src/main/resources/assets/rocks/blockstates/pinecone.json index c4b8f56..cbbed8f 100644 --- a/src/main/resources/assets/rocks/blockstates/pinecone.json +++ b/src/main/resources/assets/rocks/blockstates/pinecone.json @@ -1,5 +1,10 @@ { "variants": { - "": { "model": "rocks:block/pinecone" } + "": [ + {"model": "rocks:block/pinecone"}, + {"model": "rocks:block/pinecone", "y": 90}, + {"model": "rocks:block/pinecone", "y": 180}, + {"model": "rocks:block/pinecone", "y": 270} + ] } } diff --git a/src/main/resources/assets/rocks/blockstates/red_sand_rock.json b/src/main/resources/assets/rocks/blockstates/red_sand_rock.json index 07e7def..7990f1b 100644 --- a/src/main/resources/assets/rocks/blockstates/red_sand_rock.json +++ b/src/main/resources/assets/rocks/blockstates/red_sand_rock.json @@ -1,8 +1,28 @@ { "variants": { - "variation=tiny": { "model": "rocks:block/tiny_red_sand_rock" }, - "variation=small": { "model": "rocks:block/small_red_sand_rock" }, - "variation=medium": { "model": "rocks:block/medium_red_sand_rock" }, - "variation=large": { "model": "rocks:block/large_red_sand_rock" } + "variation=tiny": [ + {"model": "rocks:block/tiny_red_sand_rock"}, + {"model": "rocks:block/tiny_red_sand_rock", "y": 90}, + {"model": "rocks:block/tiny_red_sand_rock", "y": 180}, + {"model": "rocks:block/tiny_red_sand_rock", "y": 270} + ], + "variation=small": [ + {"model": "rocks:block/small_red_sand_rock"}, + {"model": "rocks:block/small_red_sand_rock", "y": 90}, + {"model": "rocks:block/small_red_sand_rock", "y": 180}, + {"model": "rocks:block/small_red_sand_rock", "y": 270} + ], + "variation=medium": [ + {"model": "rocks:block/medium_red_sand_rock"}, + {"model": "rocks:block/medium_red_sand_rock", "y": 90}, + {"model": "rocks:block/medium_red_sand_rock", "y": 180}, + {"model": "rocks:block/medium_red_sand_rock", "y": 270} + ], + "variation=large": [ + {"model": "rocks:block/large_red_sand_rock"}, + {"model": "rocks:block/large_red_sand_rock", "y": 90}, + {"model": "rocks:block/large_red_sand_rock", "y": 180}, + {"model": "rocks:block/large_red_sand_rock", "y": 270} + ] } } diff --git a/src/main/resources/assets/rocks/blockstates/rock.json b/src/main/resources/assets/rocks/blockstates/rock.json index cde56ba..32e0e64 100644 --- a/src/main/resources/assets/rocks/blockstates/rock.json +++ b/src/main/resources/assets/rocks/blockstates/rock.json @@ -1,8 +1,28 @@ { "variants": { - "variation=tiny": { "model": "rocks:block/tiny_rock" }, - "variation=small": { "model": "rocks:block/small_rock" }, - "variation=medium": { "model": "rocks:block/medium_rock" }, - "variation=large": { "model": "rocks:block/large_rock" } + "variation=tiny": [ + {"model": "rocks:block/tiny_rock"}, + {"model": "rocks:block/tiny_rock", "y": 90}, + {"model": "rocks:block/tiny_rock", "y": 180}, + {"model": "rocks:block/tiny_rock", "y": 270} + ], + "variation=small": [ + {"model": "rocks:block/small_rock"}, + {"model": "rocks:block/small_rock", "y": 90}, + {"model": "rocks:block/small_rock", "y": 180}, + {"model": "rocks:block/small_rock", "y": 270} + ], + "variation=medium": [ + {"model": "rocks:block/medium_rock"}, + {"model": "rocks:block/medium_rock", "y": 90}, + {"model": "rocks:block/medium_rock", "y": 180}, + {"model": "rocks:block/medium_rock", "y": 270} + ], + "variation=large": [ + {"model": "rocks:block/large_rock"}, + {"model": "rocks:block/large_rock", "y": 90}, + {"model": "rocks:block/large_rock", "y": 180}, + {"model": "rocks:block/large_rock", "y": 270} + ] } } diff --git a/src/main/resources/assets/rocks/blockstates/sand_rock.json b/src/main/resources/assets/rocks/blockstates/sand_rock.json index 5db18c8..10b0424 100644 --- a/src/main/resources/assets/rocks/blockstates/sand_rock.json +++ b/src/main/resources/assets/rocks/blockstates/sand_rock.json @@ -1,8 +1,28 @@ { "variants": { - "variation=tiny": { "model": "rocks:block/tiny_sand_rock" }, - "variation=small": { "model": "rocks:block/small_sand_rock" }, - "variation=medium": { "model": "rocks:block/medium_sand_rock" }, - "variation=large": { "model": "rocks:block/large_sand_rock" } + "variation=tiny": [ + {"model": "rocks:block/tiny_sand_rock"}, + {"model": "rocks:block/tiny_sand_rock", "y": 90}, + {"model": "rocks:block/tiny_sand_rock", "y": 180}, + {"model": "rocks:block/tiny_sand_rock", "y": 270} + ], + "variation=small": [ + {"model": "rocks:block/small_sand_rock"}, + {"model": "rocks:block/small_sand_rock", "y": 90}, + {"model": "rocks:block/small_sand_rock", "y": 180}, + {"model": "rocks:block/small_sand_rock", "y": 270} + ], + "variation=medium": [ + {"model": "rocks:block/medium_sand_rock"}, + {"model": "rocks:block/medium_sand_rock", "y": 90}, + {"model": "rocks:block/medium_sand_rock", "y": 180}, + {"model": "rocks:block/medium_sand_rock", "y": 270} + ], + "variation=large": [ + {"model": "rocks:block/large_sand_rock"}, + {"model": "rocks:block/large_sand_rock", "y": 90}, + {"model": "rocks:block/large_sand_rock", "y": 180}, + {"model": "rocks:block/large_sand_rock", "y": 270} + ] } } diff --git a/src/main/resources/assets/rocks/blockstates/seashell.json b/src/main/resources/assets/rocks/blockstates/seashell.json index afa5cfc..ba980b7 100644 --- a/src/main/resources/assets/rocks/blockstates/seashell.json +++ b/src/main/resources/assets/rocks/blockstates/seashell.json @@ -1,7 +1,22 @@ { "variants": { - "variation=yellow": { "model": "rocks:block/seashell_yellow" }, - "variation=pink": { "model": "rocks:block/seashell_pink" }, - "variation=white": { "model": "rocks:block/seashell_white" } + "variation=yellow": [ + {"model": "rocks:block/seashell_yellow"}, + {"model": "rocks:block/seashell_yellow", "y": 90}, + {"model": "rocks:block/seashell_yellow", "y": 180}, + {"model": "rocks:block/seashell_yellow", "y": 270} + ], + "variation=pink": [ + {"model": "rocks:block/seashell_pink"}, + {"model": "rocks:block/seashell_pink", "y": 90}, + {"model": "rocks:block/seashell_pink", "y": 180}, + {"model": "rocks:block/seashell_pink", "y": 270} + ], + "variation=white": [ + {"model": "rocks:block/seashell_white"}, + {"model": "rocks:block/seashell_white", "y": 90}, + {"model": "rocks:block/seashell_white", "y": 180}, + {"model": "rocks:block/seashell_white", "y": 270} + ] } } diff --git a/src/main/resources/assets/rocks/blockstates/soul_soil_rock.json b/src/main/resources/assets/rocks/blockstates/soul_soil_rock.json index 6e792bf..c44d786 100644 --- a/src/main/resources/assets/rocks/blockstates/soul_soil_rock.json +++ b/src/main/resources/assets/rocks/blockstates/soul_soil_rock.json @@ -1,8 +1,28 @@ { "variants": { - "variation=tiny": { "model": "rocks:block/tiny_soul_soil_rock" }, - "variation=small": { "model": "rocks:block/small_soul_soil_rock" }, - "variation=medium": { "model": "rocks:block/medium_soul_soil_rock" }, - "variation=large": { "model": "rocks:block/large_soul_soil_rock" } + "variation=tiny": [ + {"model": "rocks:block/tiny_soul_soil_rock"}, + {"model": "rocks:block/tiny_soul_soil_rock", "y": 90}, + {"model": "rocks:block/tiny_soul_soil_rock", "y": 180}, + {"model": "rocks:block/tiny_soul_soil_rock", "y": 270} + ], + "variation=small": [ + {"model": "rocks:block/small_soul_soil_rock"}, + {"model": "rocks:block/small_soul_soil_rock", "y": 90}, + {"model": "rocks:block/small_soul_soil_rock", "y": 180}, + {"model": "rocks:block/small_soul_soil_rock", "y": 270} + ], + "variation=medium": [ + {"model": "rocks:block/medium_soul_soil_rock"}, + {"model": "rocks:block/medium_soul_soil_rock", "y": 90}, + {"model": "rocks:block/medium_soul_soil_rock", "y": 180}, + {"model": "rocks:block/medium_soul_soil_rock", "y": 270} + ], + "variation=large": [ + {"model": "rocks:block/large_soul_soil_rock"}, + {"model": "rocks:block/large_soul_soil_rock", "y": 90}, + {"model": "rocks:block/large_soul_soil_rock", "y": 180}, + {"model": "rocks:block/large_soul_soil_rock", "y": 270} + ] } } diff --git a/src/main/resources/assets/rocks/blockstates/spruce_stick.json b/src/main/resources/assets/rocks/blockstates/spruce_stick.json index cd3d1ac..8ce268a 100644 --- a/src/main/resources/assets/rocks/blockstates/spruce_stick.json +++ b/src/main/resources/assets/rocks/blockstates/spruce_stick.json @@ -1,7 +1,22 @@ { "variants": { - "variation=small": { "model": "rocks:block/small_spruce_stick" }, - "variation=medium": { "model": "rocks:block/medium_spruce_stick" }, - "variation=large": { "model": "rocks:block/large_spruce_stick" } + "variation=small": [ + {"model": "rocks:block/small_spruce_stick"}, + {"model": "rocks:block/small_spruce_stick", "y": 90}, + {"model": "rocks:block/small_spruce_stick", "y": 180}, + {"model": "rocks:block/small_spruce_stick", "y": 270} + ], + "variation=medium": [ + {"model": "rocks:block/medium_spruce_stick"}, + {"model": "rocks:block/medium_spruce_stick", "y": 90}, + {"model": "rocks:block/medium_spruce_stick", "y": 180}, + {"model": "rocks:block/medium_spruce_stick", "y": 270} + ], + "variation=large": [ + {"model": "rocks:block/large_spruce_stick"}, + {"model": "rocks:block/large_spruce_stick", "y": 90}, + {"model": "rocks:block/large_spruce_stick", "y": 180}, + {"model": "rocks:block/large_spruce_stick", "y": 270} + ] } -} +} \ No newline at end of file diff --git a/src/main/resources/assets/rocks/blockstates/starfish.json b/src/main/resources/assets/rocks/blockstates/starfish.json index 824084e..a8dd8d0 100644 --- a/src/main/resources/assets/rocks/blockstates/starfish.json +++ b/src/main/resources/assets/rocks/blockstates/starfish.json @@ -1,7 +1,23 @@ { "variants": { - "variation=red": { "model": "rocks:block/starfish_red" }, - "variation=pink": { "model": "rocks:block/starfish_pink" }, - "variation=orange": { "model": "rocks:block/starfish_orange" } + "variation=red": [ + {"model": "rocks:block/starfish_red", "y": 180}, + {"model": "rocks:block/starfish_red", "y": 270}, + {"model": "rocks:block/starfish_red", "y": 0}, + {"model": "rocks:block/starfish_red", "y": 90} + ], + "variation=pink": [ + {"model": "rocks:block/starfish_pink"}, + {"model": "rocks:block/starfish_pink", "y": 90}, + {"model": "rocks:block/starfish_pink", "y": 180}, + {"model": "rocks:block/starfish_pink", "y": 270} + ], + "variation=orange": [ + {"model": "rocks:block/starfish_orange", "y": 90}, + {"model": "rocks:block/starfish_orange", "y": 180}, + {"model": "rocks:block/starfish_orange", "y": 270}, + {"model": "rocks:block/starfish_orange"} + ] } } + diff --git a/src/main/resources/assets/rocks/models/block/starfish_orange.json b/src/main/resources/assets/rocks/models/block/starfish_orange.json index 2fd031f..596e020 100644 --- a/src/main/resources/assets/rocks/models/block/starfish_orange.json +++ b/src/main/resources/assets/rocks/models/block/starfish_orange.json @@ -1,6 +1,333 @@ { - "parent": "block/air", + "credit": "made by Motschen", "textures": { - "particle": "rocks:block/starfish_orange" - } + "0": "rocks:block/starfish_orange" + }, + "elements": [ + { + "from": [4.5, 0, 10.5], + "to": [5.5, 1, 14.5], + "rotation": {"angle": 0, "axis": "y", "origin": [5, 0, 10]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [0, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [9, 4, 10, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 9, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 0], "texture": "#0"}, + "down": {"uv": [6, 0, 5, 4], "texture": "#0"} + } + }, + { + "from": [4.75, 0.02, 10.5], + "to": [5.75, 1.02, 13.5], + "rotation": {"angle": 0, "axis": "y", "origin": [6, 0, 10]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [8, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 8, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 1], "texture": "#0"}, + "down": {"uv": [6, 1, 5, 4], "texture": "#0"} + } + }, + { + "from": [4, -0.01, 10.5], + "to": [6, 0.99, 12.5], + "rotation": {"angle": 0, "axis": "y", "origin": [7, 0, 10]}, + "faces": { + "north": {"uv": [3, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 3, 5], "texture": "#0"}, + "south": {"uv": [7, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 7, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 3, 2], "texture": "#0"}, + "down": {"uv": [7, 2, 5, 4], "texture": "#0"} + } + }, + { + "from": [4.25, 0.01, 10.5], + "to": [5.25, 1.01, 13.5], + "rotation": {"angle": 0, "axis": "y", "origin": [5, 0, 10]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [8, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 8, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 1], "texture": "#0"}, + "down": {"uv": [6, 1, 5, 4], "texture": "#0"} + } + }, + { + "from": [5.75, 0, 10], + "to": [6.75, 1, 14], + "rotation": {"angle": 72.5, "axis": "y", "origin": [6, 0, 10]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [0, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [9, 4, 10, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 9, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 0], "texture": "#0"}, + "down": {"uv": [6, 0, 5, 4], "texture": "#0"} + } + }, + { + "from": [4.5, 0.02, 9], + "to": [5.5, 1.02, 12], + "rotation": {"angle": 72.5, "axis": "y", "origin": [6, 0, 9]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [8, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 8, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 1], "texture": "#0"}, + "down": {"uv": [6, 1, 5, 4], "texture": "#0"} + } + }, + { + "from": [5, 0.01, 9], + "to": [6, 1.01, 12], + "rotation": {"angle": 72.5, "axis": "y", "origin": [6, 0, 9]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [8, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 8, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 1], "texture": "#0"}, + "down": {"uv": [6, 1, 5, 4], "texture": "#0"} + } + }, + { + "from": [1.4, -0.01, 9], + "to": [3.4, 0.99, 11], + "rotation": {"angle": 72.5, "axis": "y", "origin": [4.6, 0, 7]}, + "faces": { + "north": {"uv": [3, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 3, 5], "texture": "#0"}, + "south": {"uv": [7, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 7, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 3, 2], "texture": "#0"}, + "down": {"uv": [7, 2, 5, 4], "texture": "#0"} + } + }, + { + "from": [3.5, 0, 10], + "to": [4.5, 1, 14], + "rotation": {"angle": -72.5, "axis": "y", "origin": [4, 0, 10]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [0, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [9, 4, 10, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 9, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 0], "texture": "#0"}, + "down": {"uv": [6, 0, 5, 4], "texture": "#0"} + } + }, + { + "from": [2.75, 0.02, 10.5], + "to": [3.75, 1.02, 13.5], + "rotation": {"angle": -72.5, "axis": "y", "origin": [4, 0, 10.5]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [8, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 8, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 1], "texture": "#0"}, + "down": {"uv": [6, 1, 5, 4], "texture": "#0"} + } + }, + { + "from": [3.25, 0.01, 10.5], + "to": [4.25, 1.01, 13.5], + "rotation": {"angle": -72.5, "axis": "y", "origin": [4, 0, 10.5]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [8, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 8, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 1], "texture": "#0"}, + "down": {"uv": [6, 1, 5, 4], "texture": "#0"} + } + }, + { + "from": [4, -0.01, 13], + "to": [6, 0.99, 15], + "rotation": {"angle": -72.5, "axis": "y", "origin": [7, 0, 11]}, + "faces": { + "north": {"uv": [3, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 3, 5], "texture": "#0"}, + "south": {"uv": [7, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 7, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 3, 2], "texture": "#0"}, + "down": {"uv": [7, 2, 5, 4], "texture": "#0"} + } + }, + { + "from": [3.5, 0, 7.4], + "to": [4.5, 1, 11.4], + "rotation": {"angle": -145, "axis": "y", "origin": [4, 0, 8]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [0, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [9, 4, 10, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 9, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 0], "texture": "#0"}, + "down": {"uv": [6, 0, 5, 4], "texture": "#0"} + } + }, + { + "from": [1.25, 0.02, 8.7], + "to": [2.25, 1.02, 11.7], + "rotation": {"angle": -145, "axis": "y", "origin": [3, 0, 9]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [8, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 8, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 1], "texture": "#0"}, + "down": {"uv": [6, 1, 5, 4], "texture": "#0"} + } + }, + { + "from": [3.25, 0.01, 7.4], + "to": [4.25, 1.01, 10.4], + "rotation": {"angle": -145, "axis": "y", "origin": [4, 0, 8]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [8, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 8, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 1], "texture": "#0"}, + "down": {"uv": [6, 1, 5, 4], "texture": "#0"} + } + }, + { + "from": [0, -0.01, 10.5], + "to": [2, 0.99, 12.5], + "rotation": {"angle": -145, "axis": "y", "origin": [3, 0, 10]}, + "faces": { + "north": {"uv": [3, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 3, 5], "texture": "#0"}, + "south": {"uv": [7, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 7, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 3, 2], "texture": "#0"}, + "down": {"uv": [7, 2, 5, 4], "texture": "#0"} + } + }, + { + "from": [7.35, 0, 7.3], + "to": [8.35, 1, 11.3], + "rotation": {"angle": 145, "axis": "y", "origin": [7, 0, 8]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [0, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [9, 4, 10, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 9, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 0], "texture": "#0"}, + "down": {"uv": [6, 0, 5, 4], "texture": "#0"} + } + }, + { + "from": [3.5, 0.02, 8], + "to": [4.5, 1.02, 11], + "rotation": {"angle": 145, "axis": "y", "origin": [5, 0, 8]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [8, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 8, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 1], "texture": "#0"}, + "down": {"uv": [6, 1, 5, 4], "texture": "#0"} + } + }, + { + "from": [4, 0.01, 8], + "to": [5, 1.01, 11], + "rotation": {"angle": 145, "axis": "y", "origin": [5, 0, 8]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [8, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 8, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 1], "texture": "#0"}, + "down": {"uv": [6, 1, 5, 4], "texture": "#0"} + } + }, + { + "from": [2, -0.01, 10.5], + "to": [4, 0.99, 12.5], + "rotation": {"angle": 145, "axis": "y", "origin": [4, 0, 9]}, + "faces": { + "north": {"uv": [3, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 3, 5], "texture": "#0"}, + "south": {"uv": [7, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 7, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 3, 2], "texture": "#0"}, + "down": {"uv": [7, 2, 5, 4], "texture": "#0"} + } + }, + { + "from": [4, 0.005, 8.5], + "to": [6, 1.005, 10.5], + "rotation": {"angle": 0, "axis": "y", "origin": [5, 0, 9]}, + "faces": { + "north": {"uv": [3, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 3, 5], "texture": "#0"}, + "south": {"uv": [7, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 7, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 3, 2], "texture": "#0"}, + "down": {"uv": [7, 2, 5, 4], "texture": "#0"} + } + }, + { + "from": [3.8, 0, 8], + "to": [5.8, 1, 10], + "rotation": {"angle": 0, "axis": "y", "origin": [5, 0, 10]}, + "faces": { + "north": {"uv": [3, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 3, 5], "texture": "#0"}, + "south": {"uv": [7, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 7, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 3, 2], "texture": "#0"}, + "down": {"uv": [7, 2, 5, 4], "texture": "#0"} + } + }, + { + "from": [5.2, 0, 8.25], + "to": [6.2, 1, 10.25], + "rotation": {"angle": 0, "axis": "y", "origin": [5, 0, 10]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [2, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [7, 4, 8, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 7, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 2], "texture": "#0"}, + "down": {"uv": [6, 2, 5, 4], "texture": "#0"} + } + } + ], + "groups": [ + { + "name": "side1", + "origin": [0, 0, 0], + "children": [0, 1, 2, 3] + }, + { + "name": "side2", + "origin": [0, 0, 0], + "children": [4, 5, 6, 7] + }, + { + "name": "side3", + "origin": [0, 0, 0], + "children": [8, 9, 10, 11] + }, + { + "name": "side4", + "origin": [0, 0, 0], + "children": [12, 13, 14, 15] + }, + { + "name": "side5", + "origin": [0, 0, 0], + "children": [16, 17, 18, 19] + }, 20, 21, 22] } \ No newline at end of file diff --git a/src/main/resources/assets/rocks/models/block/starfish_pink.json b/src/main/resources/assets/rocks/models/block/starfish_pink.json index 0099cbf..ad15256 100644 --- a/src/main/resources/assets/rocks/models/block/starfish_pink.json +++ b/src/main/resources/assets/rocks/models/block/starfish_pink.json @@ -1,6 +1,333 @@ { - "parent": "block/air", + "credit": "made by Motschen", "textures": { - "particle": "rocks:block/starfish_pink" - } + "0": "rocks:block/starfish_pink" + }, + "elements": [ + { + "from": [7.5, 0, 8.5], + "to": [8.5, 1, 12.5], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [0, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [9, 4, 10, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 9, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 0], "texture": "#0"}, + "down": {"uv": [6, 0, 5, 4], "texture": "#0"} + } + }, + { + "from": [7.75, 0.02, 8.5], + "to": [8.75, 1.02, 11.5], + "rotation": {"angle": 0, "axis": "y", "origin": [9, 0, 8]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [8, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 8, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 1], "texture": "#0"}, + "down": {"uv": [6, 1, 5, 4], "texture": "#0"} + } + }, + { + "from": [7, -0.01, 8.5], + "to": [9, 0.99, 10.5], + "rotation": {"angle": 0, "axis": "y", "origin": [10, 0, 8]}, + "faces": { + "north": {"uv": [3, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 3, 5], "texture": "#0"}, + "south": {"uv": [7, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 7, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 3, 2], "texture": "#0"}, + "down": {"uv": [7, 2, 5, 4], "texture": "#0"} + } + }, + { + "from": [7.25, 0.01, 8.5], + "to": [8.25, 1.01, 11.5], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [8, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 8, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 1], "texture": "#0"}, + "down": {"uv": [6, 1, 5, 4], "texture": "#0"} + } + }, + { + "from": [8.75, 0, 8], + "to": [9.75, 1, 12], + "rotation": {"angle": 72.5, "axis": "y", "origin": [9, 0, 8]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [0, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [9, 4, 10, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 9, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 0], "texture": "#0"}, + "down": {"uv": [6, 0, 5, 4], "texture": "#0"} + } + }, + { + "from": [7.5, 0.02, 7], + "to": [8.5, 1.02, 10], + "rotation": {"angle": 72.5, "axis": "y", "origin": [9, 0, 7]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [8, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 8, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 1], "texture": "#0"}, + "down": {"uv": [6, 1, 5, 4], "texture": "#0"} + } + }, + { + "from": [8, 0.01, 7], + "to": [9, 1.01, 10], + "rotation": {"angle": 72.5, "axis": "y", "origin": [9, 0, 7]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [8, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 8, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 1], "texture": "#0"}, + "down": {"uv": [6, 1, 5, 4], "texture": "#0"} + } + }, + { + "from": [4.4, -0.01, 7], + "to": [6.4, 0.99, 9], + "rotation": {"angle": 72.5, "axis": "y", "origin": [7.6, 0, 5]}, + "faces": { + "north": {"uv": [3, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 3, 5], "texture": "#0"}, + "south": {"uv": [7, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 7, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 3, 2], "texture": "#0"}, + "down": {"uv": [7, 2, 5, 4], "texture": "#0"} + } + }, + { + "from": [6.5, 0, 8], + "to": [7.5, 1, 12], + "rotation": {"angle": -72.5, "axis": "y", "origin": [7, 0, 8]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [0, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [9, 4, 10, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 9, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 0], "texture": "#0"}, + "down": {"uv": [6, 0, 5, 4], "texture": "#0"} + } + }, + { + "from": [5.75, 0.02, 8.5], + "to": [6.75, 1.02, 11.5], + "rotation": {"angle": -72.5, "axis": "y", "origin": [7, 0, 8.5]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [8, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 8, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 1], "texture": "#0"}, + "down": {"uv": [6, 1, 5, 4], "texture": "#0"} + } + }, + { + "from": [6.25, 0.01, 8.5], + "to": [7.25, 1.01, 11.5], + "rotation": {"angle": -72.5, "axis": "y", "origin": [7, 0, 8.5]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [8, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 8, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 1], "texture": "#0"}, + "down": {"uv": [6, 1, 5, 4], "texture": "#0"} + } + }, + { + "from": [7, -0.01, 11], + "to": [9, 0.99, 13], + "rotation": {"angle": -72.5, "axis": "y", "origin": [10, 0, 9]}, + "faces": { + "north": {"uv": [3, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 3, 5], "texture": "#0"}, + "south": {"uv": [7, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 7, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 3, 2], "texture": "#0"}, + "down": {"uv": [7, 2, 5, 4], "texture": "#0"} + } + }, + { + "from": [6.5, 0, 5.4], + "to": [7.5, 1, 9.4], + "rotation": {"angle": -145, "axis": "y", "origin": [7, 0, 6]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [0, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [9, 4, 10, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 9, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 0], "texture": "#0"}, + "down": {"uv": [6, 0, 5, 4], "texture": "#0"} + } + }, + { + "from": [4.25, 0.02, 6.7], + "to": [5.25, 1.02, 9.7], + "rotation": {"angle": -145, "axis": "y", "origin": [6, 0, 7]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [8, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 8, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 1], "texture": "#0"}, + "down": {"uv": [6, 1, 5, 4], "texture": "#0"} + } + }, + { + "from": [6.25, 0.01, 5.4], + "to": [7.25, 1.01, 8.4], + "rotation": {"angle": -145, "axis": "y", "origin": [7, 0, 6]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [8, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 8, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 1], "texture": "#0"}, + "down": {"uv": [6, 1, 5, 4], "texture": "#0"} + } + }, + { + "from": [3, -0.01, 8.5], + "to": [5, 0.99, 10.5], + "rotation": {"angle": -145, "axis": "y", "origin": [6, 0, 8]}, + "faces": { + "north": {"uv": [3, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 3, 5], "texture": "#0"}, + "south": {"uv": [7, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 7, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 3, 2], "texture": "#0"}, + "down": {"uv": [7, 2, 5, 4], "texture": "#0"} + } + }, + { + "from": [10.35, 0, 5.3], + "to": [11.35, 1, 9.3], + "rotation": {"angle": 145, "axis": "y", "origin": [10, 0, 6]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [0, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [9, 4, 10, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 9, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 0], "texture": "#0"}, + "down": {"uv": [6, 0, 5, 4], "texture": "#0"} + } + }, + { + "from": [6.5, 0.02, 6], + "to": [7.5, 1.02, 9], + "rotation": {"angle": 145, "axis": "y", "origin": [8, 0, 6]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [8, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 8, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 1], "texture": "#0"}, + "down": {"uv": [6, 1, 5, 4], "texture": "#0"} + } + }, + { + "from": [7, 0.01, 6], + "to": [8, 1.01, 9], + "rotation": {"angle": 145, "axis": "y", "origin": [8, 0, 6]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [8, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 8, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 1], "texture": "#0"}, + "down": {"uv": [6, 1, 5, 4], "texture": "#0"} + } + }, + { + "from": [5, -0.01, 8.5], + "to": [7, 0.99, 10.5], + "rotation": {"angle": 145, "axis": "y", "origin": [7, 0, 7]}, + "faces": { + "north": {"uv": [3, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 3, 5], "texture": "#0"}, + "south": {"uv": [7, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 7, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 3, 2], "texture": "#0"}, + "down": {"uv": [7, 2, 5, 4], "texture": "#0"} + } + }, + { + "from": [7, 0.005, 6.5], + "to": [9, 1.005, 8.5], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 7]}, + "faces": { + "north": {"uv": [3, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 3, 5], "texture": "#0"}, + "south": {"uv": [7, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 7, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 3, 2], "texture": "#0"}, + "down": {"uv": [7, 2, 5, 4], "texture": "#0"} + } + }, + { + "from": [6.8, 0, 6], + "to": [8.8, 1, 8], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [3, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 3, 5], "texture": "#0"}, + "south": {"uv": [7, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 7, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 3, 2], "texture": "#0"}, + "down": {"uv": [7, 2, 5, 4], "texture": "#0"} + } + }, + { + "from": [8.2, 0, 6.25], + "to": [9.2, 1, 8.25], + "rotation": {"angle": 0, "axis": "y", "origin": [8, 0, 8]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [2, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [7, 4, 8, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 7, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 2], "texture": "#0"}, + "down": {"uv": [6, 2, 5, 4], "texture": "#0"} + } + } + ], + "groups": [ + { + "name": "side1", + "origin": [0, 0, 0], + "children": [0, 1, 2, 3] + }, + { + "name": "side2", + "origin": [0, 0, 0], + "children": [4, 5, 6, 7] + }, + { + "name": "side3", + "origin": [0, 0, 0], + "children": [8, 9, 10, 11] + }, + { + "name": "side4", + "origin": [0, 0, 0], + "children": [12, 13, 14, 15] + }, + { + "name": "side5", + "origin": [0, 0, 0], + "children": [16, 17, 18, 19] + }, 20, 21, 22] } \ No newline at end of file diff --git a/src/main/resources/assets/rocks/models/block/starfish_red.json b/src/main/resources/assets/rocks/models/block/starfish_red.json index bb03242..0bbd652 100644 --- a/src/main/resources/assets/rocks/models/block/starfish_red.json +++ b/src/main/resources/assets/rocks/models/block/starfish_red.json @@ -1,6 +1,333 @@ { - "parent": "block/air", + "credit": "made by Motschen", "textures": { - "particle": "rocks:block/starfish_red" - } + "0": "rocks:block/starfish_red" + }, + "elements": [ + { + "from": [9.5, 0, 6.5], + "to": [10.5, 1, 10.5], + "rotation": {"angle": 0, "axis": "y", "origin": [10, 0, 6]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [0, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [9, 4, 10, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 9, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 0], "texture": "#0"}, + "down": {"uv": [6, 0, 5, 4], "texture": "#0"} + } + }, + { + "from": [9.75, 0.02, 6.5], + "to": [10.75, 1.02, 9.5], + "rotation": {"angle": 0, "axis": "y", "origin": [11, 0, 6]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [8, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 8, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 1], "texture": "#0"}, + "down": {"uv": [6, 1, 5, 4], "texture": "#0"} + } + }, + { + "from": [9, -0.01, 6.5], + "to": [11, 0.99, 8.5], + "rotation": {"angle": 0, "axis": "y", "origin": [12, 0, 6]}, + "faces": { + "north": {"uv": [3, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 3, 5], "texture": "#0"}, + "south": {"uv": [7, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 7, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 3, 2], "texture": "#0"}, + "down": {"uv": [7, 2, 5, 4], "texture": "#0"} + } + }, + { + "from": [9.25, 0.01, 6.5], + "to": [10.25, 1.01, 9.5], + "rotation": {"angle": 0, "axis": "y", "origin": [10, 0, 6]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [8, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 8, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 1], "texture": "#0"}, + "down": {"uv": [6, 1, 5, 4], "texture": "#0"} + } + }, + { + "from": [10.75, 0, 6], + "to": [11.75, 1, 10], + "rotation": {"angle": 72.5, "axis": "y", "origin": [11, 0, 6]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [0, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [9, 4, 10, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 9, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 0], "texture": "#0"}, + "down": {"uv": [6, 0, 5, 4], "texture": "#0"} + } + }, + { + "from": [9.5, 0.02, 5], + "to": [10.5, 1.02, 8], + "rotation": {"angle": 72.5, "axis": "y", "origin": [11, 0, 5]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [8, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 8, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 1], "texture": "#0"}, + "down": {"uv": [6, 1, 5, 4], "texture": "#0"} + } + }, + { + "from": [10, 0.01, 5], + "to": [11, 1.01, 8], + "rotation": {"angle": 72.5, "axis": "y", "origin": [11, 0, 5]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [8, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 8, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 1], "texture": "#0"}, + "down": {"uv": [6, 1, 5, 4], "texture": "#0"} + } + }, + { + "from": [6.4, -0.01, 5], + "to": [8.4, 0.99, 7], + "rotation": {"angle": 72.5, "axis": "y", "origin": [9.6, 0, 3]}, + "faces": { + "north": {"uv": [3, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 3, 5], "texture": "#0"}, + "south": {"uv": [7, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 7, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 3, 2], "texture": "#0"}, + "down": {"uv": [7, 2, 5, 4], "texture": "#0"} + } + }, + { + "from": [8.5, 0, 6], + "to": [9.5, 1, 10], + "rotation": {"angle": -72.5, "axis": "y", "origin": [9, 0, 6]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [0, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [9, 4, 10, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 9, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 0], "texture": "#0"}, + "down": {"uv": [6, 0, 5, 4], "texture": "#0"} + } + }, + { + "from": [7.75, 0.02, 6.5], + "to": [8.75, 1.02, 9.5], + "rotation": {"angle": -72.5, "axis": "y", "origin": [9, 0, 6.5]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [8, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 8, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 1], "texture": "#0"}, + "down": {"uv": [6, 1, 5, 4], "texture": "#0"} + } + }, + { + "from": [8.25, 0.01, 6.5], + "to": [9.25, 1.01, 9.5], + "rotation": {"angle": -72.5, "axis": "y", "origin": [9, 0, 6.5]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [8, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 8, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 1], "texture": "#0"}, + "down": {"uv": [6, 1, 5, 4], "texture": "#0"} + } + }, + { + "from": [9, -0.01, 9], + "to": [11, 0.99, 11], + "rotation": {"angle": -72.5, "axis": "y", "origin": [12, 0, 7]}, + "faces": { + "north": {"uv": [3, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 3, 5], "texture": "#0"}, + "south": {"uv": [7, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 7, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 3, 2], "texture": "#0"}, + "down": {"uv": [7, 2, 5, 4], "texture": "#0"} + } + }, + { + "from": [8.5, 0, 3.4], + "to": [9.5, 1, 7.4], + "rotation": {"angle": -145, "axis": "y", "origin": [9, 0, 4]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [0, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [9, 4, 10, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 9, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 0], "texture": "#0"}, + "down": {"uv": [6, 0, 5, 4], "texture": "#0"} + } + }, + { + "from": [6.25, 0.02, 4.7], + "to": [7.25, 1.02, 7.7], + "rotation": {"angle": -145, "axis": "y", "origin": [8, 0, 5]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [8, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 8, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 1], "texture": "#0"}, + "down": {"uv": [6, 1, 5, 4], "texture": "#0"} + } + }, + { + "from": [8.25, 0.01, 3.4], + "to": [9.25, 1.01, 6.4], + "rotation": {"angle": -145, "axis": "y", "origin": [9, 0, 4]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [8, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 8, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 1], "texture": "#0"}, + "down": {"uv": [6, 1, 5, 4], "texture": "#0"} + } + }, + { + "from": [5, -0.01, 6.5], + "to": [7, 0.99, 8.5], + "rotation": {"angle": -145, "axis": "y", "origin": [8, 0, 6]}, + "faces": { + "north": {"uv": [3, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 3, 5], "texture": "#0"}, + "south": {"uv": [7, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 7, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 3, 2], "texture": "#0"}, + "down": {"uv": [7, 2, 5, 4], "texture": "#0"} + } + }, + { + "from": [12.35, 0, 3.3], + "to": [13.35, 1, 7.3], + "rotation": {"angle": 145, "axis": "y", "origin": [12, 0, 4]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [0, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [9, 4, 10, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 9, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 0], "texture": "#0"}, + "down": {"uv": [6, 0, 5, 4], "texture": "#0"} + } + }, + { + "from": [8.5, 0.02, 4], + "to": [9.5, 1.02, 7], + "rotation": {"angle": 145, "axis": "y", "origin": [10, 0, 4]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [8, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 8, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 1], "texture": "#0"}, + "down": {"uv": [6, 1, 5, 4], "texture": "#0"} + } + }, + { + "from": [9, 0.01, 4], + "to": [10, 1.01, 7], + "rotation": {"angle": 145, "axis": "y", "origin": [10, 0, 4]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [8, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 8, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 1], "texture": "#0"}, + "down": {"uv": [6, 1, 5, 4], "texture": "#0"} + } + }, + { + "from": [7, -0.01, 6.5], + "to": [9, 0.99, 8.5], + "rotation": {"angle": 145, "axis": "y", "origin": [9, 0, 5]}, + "faces": { + "north": {"uv": [3, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 3, 5], "texture": "#0"}, + "south": {"uv": [7, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 7, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 3, 2], "texture": "#0"}, + "down": {"uv": [7, 2, 5, 4], "texture": "#0"} + } + }, + { + "from": [9, 0.005, 4.5], + "to": [11, 1.005, 6.5], + "rotation": {"angle": 0, "axis": "y", "origin": [10, 0, 5]}, + "faces": { + "north": {"uv": [3, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 3, 5], "texture": "#0"}, + "south": {"uv": [7, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 7, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 3, 2], "texture": "#0"}, + "down": {"uv": [7, 2, 5, 4], "texture": "#0"} + } + }, + { + "from": [8.8, 0, 4], + "to": [10.8, 1, 6], + "rotation": {"angle": 0, "axis": "y", "origin": [10, 0, 6]}, + "faces": { + "north": {"uv": [3, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [1, 4, 3, 5], "texture": "#0"}, + "south": {"uv": [7, 4, 9, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 7, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 3, 2], "texture": "#0"}, + "down": {"uv": [7, 2, 5, 4], "texture": "#0"} + } + }, + { + "from": [10.2, 0, 4.25], + "to": [11.2, 1, 6.25], + "rotation": {"angle": 0, "axis": "y", "origin": [10, 0, 6]}, + "faces": { + "north": {"uv": [4, 4, 5, 5], "texture": "#0"}, + "east": {"uv": [2, 4, 4, 5], "texture": "#0"}, + "south": {"uv": [7, 4, 8, 5], "texture": "#0"}, + "west": {"uv": [5, 4, 7, 5], "texture": "#0"}, + "up": {"uv": [5, 4, 4, 2], "texture": "#0"}, + "down": {"uv": [6, 2, 5, 4], "texture": "#0"} + } + } + ], + "groups": [ + { + "name": "side1", + "origin": [0, 0, 0], + "children": [0, 1, 2, 3] + }, + { + "name": "side2", + "origin": [0, 0, 0], + "children": [4, 5, 6, 7] + }, + { + "name": "side3", + "origin": [0, 0, 0], + "children": [8, 9, 10, 11] + }, + { + "name": "side4", + "origin": [0, 0, 0], + "children": [12, 13, 14, 15] + }, + { + "name": "side5", + "origin": [0, 0, 0], + "children": [16, 17, 18, 19] + }, 20, 21, 22] } \ No newline at end of file diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json index 76f566f..6367768 100644 --- a/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -21,9 +21,6 @@ "entrypoints": { "main": [ "eu.midnightdust.motschen.rocks.RocksMain" - ], - "client": [ - "eu.midnightdust.motschen.rocks.RocksClient" ] }, @@ -34,10 +31,5 @@ "depends": { "fabricloader": ">=0.7.2", "fabric": "*" - }, - "suggests": { - "dishes": "*", - "decorative": "*", - "wildworld": "*" } } diff --git a/src/main/resources/rocks.mixins.json b/src/main/resources/rocks.mixins.json index 7e4b68b..603ddda 100644 --- a/src/main/resources/rocks.mixins.json +++ b/src/main/resources/rocks.mixins.json @@ -5,6 +5,9 @@ "mixins": [ "GenerationSettingsAccessorMixin" ], + "client": [ + "MixinModelElementDeserializer" + ], "injectors": { "defaultRequire": 1 }