diff --git a/common/src/main/kotlin/quaedam/misc/reality/RSBlock.kt b/common/src/main/kotlin/quaedam/misc/reality/RSBlock.kt index 66b5351..949a8ea 100644 --- a/common/src/main/kotlin/quaedam/misc/reality/RSBlock.kt +++ b/common/src/main/kotlin/quaedam/misc/reality/RSBlock.kt @@ -3,6 +3,7 @@ package quaedam.misc.reality import net.minecraft.core.BlockPos import net.minecraft.core.Direction import net.minecraft.world.item.context.BlockPlaceContext +import net.minecraft.world.level.BlockGetter import net.minecraft.world.level.Level import net.minecraft.world.level.LevelAccessor import net.minecraft.world.level.block.* @@ -12,6 +13,9 @@ import net.minecraft.world.level.block.state.properties.BlockStateProperties import net.minecraft.world.level.material.FluidState import net.minecraft.world.level.material.Fluids import net.minecraft.world.level.material.MapColor +import net.minecraft.world.phys.shapes.CollisionContext +import net.minecraft.world.phys.shapes.Shapes +import net.minecraft.world.phys.shapes.VoxelShape object RSBlock : HorizontalDirectionalBlock( Properties.of() @@ -21,6 +25,12 @@ object RSBlock : HorizontalDirectionalBlock( .mapColor(MapColor.COLOR_BLUE) ), EntityBlock, SimpleWaterloggedBlock { + val shape = Shapes.or( + box(1.0, 0.0, 1.0, 15.0, 1.0, 15.0), + box(0.0, 1.0, 0.0, 16.0, 14.0, 16.0), + box(1.0, 14.0, 1.0, 15.0, 15.0, 15.0), + ) + init { registerDefaultState( defaultBlockState() @@ -41,6 +51,9 @@ object RSBlock : HorizontalDirectionalBlock( return super.defaultBlockState().setValue(FACING, context.horizontalDirection) } + @Suppress("OVERRIDE_DEPRECATION", "DEPRECATION") + override fun getShape(state: BlockState, level: BlockGetter, pos: BlockPos, context: CollisionContext) = shape + @Suppress("OVERRIDE_DEPRECATION", "DEPRECATION") override fun updateShape( state: BlockState, diff --git a/common/src/main/resources/assets/quaedam/blockstates/reality_stabler.json b/common/src/main/resources/assets/quaedam/blockstates/reality_stabler.json index d8319e2..48ab2e0 100644 --- a/common/src/main/resources/assets/quaedam/blockstates/reality_stabler.json +++ b/common/src/main/resources/assets/quaedam/blockstates/reality_stabler.json @@ -1,19 +1,19 @@ { "variants": { "facing=east": { - "model": "quaedam:block/causality_anchor", + "model": "quaedam:block/reality_stabler", "y": 270 }, "facing=south": { - "model": "quaedam:block/causality_anchor", + "model": "quaedam:block/reality_stabler", "y": 0 }, "facing=west": { - "model": "quaedam:block/causality_anchor", + "model": "quaedam:block/reality_stabler", "y": 90 }, "facing=north": { - "model": "quaedam:block/causality_anchor", + "model": "quaedam:block/reality_stabler", "y": 180 } } diff --git a/common/src/main/resources/assets/quaedam/models/block/causality_anchor.json b/common/src/main/resources/assets/quaedam/models/block/causality_anchor.json index 6d30ef6..70d25fb 100644 --- a/common/src/main/resources/assets/quaedam/models/block/causality_anchor.json +++ b/common/src/main/resources/assets/quaedam/models/block/causality_anchor.json @@ -1,541 +1,106 @@ { - "parent": "minecraft:block/block", - "texture_size": [ - 64, - 64 - ], - "textures": { - "0": "quaedam:block/causality_anchor", - "particle": "quaedam:block/causality_anchor" - }, - "elements": [ - { - "name": "s2", - "from": [ - 13, - -6, - 14 - ], - "to": [ - 15, - 6, - 16 - ], - "rotation": { - "angle": -22.5, - "axis": "x", - "origin": [ - -1, - 0, - 0 - ] - }, - "faces": { - "north": { - "uv": [ - 4, - 4, - 4.5, - 7 - ], - "texture": "#0" - }, - "east": { - "uv": [ - 4.5, - 4, - 5, - 7 - ], - "texture": "#0" - }, - "south": { - "uv": [ - 0, - 5, - 0.5, - 8 - ], - "texture": "#0" - }, - "west": { - "uv": [ - 0.5, - 5, - 1, - 8 - ], - "texture": "#0" - }, - "up": { - "uv": [ - 5.75, - 7.5, - 5.25, - 7 - ], - "texture": "#0" - }, - "down": { - "uv": [ - 7.5, - 5.5, - 7, - 6 - ], - "texture": "#0" - } - } - }, - { - "name": "s3", - "from": [ - 1, - -6, - 14 - ], - "to": [ - 3, - 6, - 16 - ], - "rotation": { - "angle": -22.5, - "axis": "x", - "origin": [ - 1, - 0, - 0 - ] - }, - "faces": { - "north": { - "uv": [ - 1, - 5, - 1.5, - 8 - ], - "texture": "#0" - }, - "east": { - "uv": [ - 1.5, - 5, - 2, - 8 - ], - "texture": "#0" - }, - "south": { - "uv": [ - 2, - 5, - 2.5, - 8 - ], - "texture": "#0" - }, - "west": { - "uv": [ - 2.5, - 5, - 3, - 8 - ], - "texture": "#0" - }, - "up": { - "uv": [ - 6.25, - 7.5, - 5.75, - 7 - ], - "texture": "#0" - }, - "down": { - "uv": [ - 7.5, - 6, - 7, - 6.5 - ], - "texture": "#0" - } - } - }, - { - "name": "s4", - "from": [ - 1, - 0, - -1 - ], - "to": [ - 3, - 12, - 1 - ], - "rotation": { - "angle": 22.5, - "axis": "x", - "origin": [ - 1, - 0, - 0 - ] - }, - "faces": { - "north": { - "uv": [ - 3, - 5, - 3.5, - 8 - ], - "texture": "#0" - }, - "east": { - "uv": [ - 3.5, - 5, - 4, - 8 - ], - "texture": "#0" - }, - "south": { - "uv": [ - 5, - 4, - 5.5, - 7 - ], - "texture": "#0" - }, - "west": { - "uv": [ - 5.5, - 4, - 6, - 7 - ], - "texture": "#0" - }, - "up": { - "uv": [ - 6.75, - 7.5, - 6.25, - 7 - ], - "texture": "#0" - }, - "down": { - "uv": [ - 7.5, - 6.5, - 7, - 7 - ], - "texture": "#0" - } - } - }, - { - "name": "s1", - "from": [ - 13, - 0, - -1 - ], - "to": [ - 15, - 12, - 1 - ], - "rotation": { - "angle": 22.5, - "axis": "x", - "origin": [ - -1, - 0, - 0 - ] - }, - "faces": { - "north": { - "uv": [ - 6, - 0, - 6.5, - 3 - ], - "texture": "#0" - }, - "east": { - "uv": [ - 6, - 4, - 6.5, - 7 - ], - "texture": "#0" - }, - "south": { - "uv": [ - 6.5, - 0, - 7, - 3 - ], - "texture": "#0" - }, - "west": { - "uv": [ - 6.5, - 4, - 7, - 7 - ], - "texture": "#0" - }, - "up": { - "uv": [ - 7.25, - 7.5, - 6.75, - 7 - ], - "texture": "#0" - }, - "down": { - "uv": [ - 7.75, - 4, - 7.25, - 4.5 - ], - "texture": "#0" - } - } - }, - { - "name": "platform", - "from": [ - 0, - 10, - 3 - ], - "to": [ - 16, - 12, - 13 - ], - "faces": { - "north": { - "uv": [ - 4, - 3, - 8, - 3.5 - ], - "texture": "#0" - }, - "east": { - "uv": [ - 7, - 0, - 9.5, - 0.5 - ], - "texture": "#0" - }, - "south": { - "uv": [ - 4, - 3.5, - 8, - 4 - ], - "texture": "#0" - }, - "west": { - "uv": [ - 7, - 0.5, - 9.5, - 1 - ], - "texture": "#0" - }, - "up": { - "uv": [ - 4, - 2.5, - 0, - 0 - ], - "texture": "#0" - }, - "down": { - "uv": [ - 4, - 2.5, - 0, - 5 - ], - "texture": "#0" - } - } - }, - { - "name": "core", - "from": [ - 6, - 14, - 7 - ], - "to": [ - 10, - 16, - 9 - ], - "faces": { - "north": { - "uv": [ - 7, - 1.5, - 8, - 2 - ], - "texture": "#0" - }, - "east": { - "uv": [ - 7.25, - 4.5, - 7.75, - 5 - ], - "texture": "#0" - }, - "south": { - "uv": [ - 7, - 2, - 8, - 2.5 - ], - "texture": "#0" - }, - "west": { - "uv": [ - 7.25, - 5, - 7.75, - 5.5 - ], - "texture": "#0" - }, - "up": { - "uv": [ - 8, - 3, - 7, - 2.5 - ], - "texture": "#0" - }, - "down": { - "uv": [ - 5, - 7, - 4, - 7.5 - ], - "texture": "#0" - } - } - }, - { - "name": "screen", - "from": [ - 4, - 6, - -2 - ], - "to": [ - 12, - 12, - -1 - ], - "rotation": { - "angle": 22.5, - "axis": "x", - "origin": [ - 0, - 0, - 0 - ] - }, - "faces": { - "north": { - "uv": [ - 4, - 0, - 6, - 1.5 - ], - "texture": "#0" - }, - "east": { - "uv": [ - 7, - 4, - 7.25, - 5.5 - ], - "texture": "#0" - }, - "south": { - "uv": [ - 4, - 1.5, - 6, - 3 - ], - "texture": "#0" - }, - "west": { - "uv": [ - 5, - 7, - 5.25, - 8.5 - ], - "texture": "#0" - }, - "up": { - "uv": [ - 9, - 1.25, - 7, - 1 - ], - "texture": "#0" - }, - "down": { - "uv": [ - 9, - 1.25, - 7, - 1.5 - ], - "texture": "#0" - } - } - } - ] + "parent": "minecraft:block/block", + "texture_size": [64, 64], + "textures": { + "0": "quaedam:block/causality_anchor", + "particle": "quaedam:block/causality_anchor" + }, + "elements": [ + { + "name": "s2", + "from": [13, -6, 14], + "to": [15, 6, 16], + "rotation": {"angle": -22.5, "axis": "x", "origin": [-1, 0, 0]}, + "faces": { + "north": {"uv": [4, 4, 4.5, 7], "texture": "#0"}, + "east": {"uv": [4.5, 4, 5, 7], "texture": "#0"}, + "south": {"uv": [0, 5, 0.5, 8], "texture": "#0"}, + "west": {"uv": [0.5, 5, 1, 8], "texture": "#0"}, + "up": {"uv": [5.75, 7.5, 5.25, 7], "texture": "#0"}, + "down": {"uv": [7.5, 5.5, 7, 6], "texture": "#0"} + } + }, + { + "name": "s3", + "from": [1, -6, 14], + "to": [3, 6, 16], + "rotation": {"angle": -22.5, "axis": "x", "origin": [1, 0, 0]}, + "faces": { + "north": {"uv": [1, 5, 1.5, 8], "texture": "#0"}, + "east": {"uv": [1.5, 5, 2, 8], "texture": "#0"}, + "south": {"uv": [2, 5, 2.5, 8], "texture": "#0"}, + "west": {"uv": [2.5, 5, 3, 8], "texture": "#0"}, + "up": {"uv": [6.25, 7.5, 5.75, 7], "texture": "#0"}, + "down": {"uv": [7.5, 6, 7, 6.5], "texture": "#0"} + } + }, + { + "name": "s4", + "from": [1, 0, -1], + "to": [3, 12, 1], + "rotation": {"angle": 22.5, "axis": "x", "origin": [1, 0, 0]}, + "faces": { + "north": {"uv": [3, 5, 3.5, 8], "texture": "#0"}, + "east": {"uv": [3.5, 5, 4, 8], "texture": "#0"}, + "south": {"uv": [5, 4, 5.5, 7], "texture": "#0"}, + "west": {"uv": [5.5, 4, 6, 7], "texture": "#0"}, + "up": {"uv": [6.75, 7.5, 6.25, 7], "texture": "#0"}, + "down": {"uv": [7.5, 6.5, 7, 7], "texture": "#0"} + } + }, + { + "name": "s1", + "from": [13, 0, -1], + "to": [15, 12, 1], + "rotation": {"angle": 22.5, "axis": "x", "origin": [-1, 0, 0]}, + "faces": { + "north": {"uv": [6, 0, 6.5, 3], "texture": "#0"}, + "east": {"uv": [6, 4, 6.5, 7], "texture": "#0"}, + "south": {"uv": [6.5, 0, 7, 3], "texture": "#0"}, + "west": {"uv": [6.5, 4, 7, 7], "texture": "#0"}, + "up": {"uv": [7.25, 7.5, 6.75, 7], "texture": "#0"}, + "down": {"uv": [7.75, 4, 7.25, 4.5], "texture": "#0"} + } + }, + { + "name": "platform", + "from": [0, 10, 3], + "to": [16, 12, 13], + "faces": { + "north": {"uv": [4, 3, 8, 3.5], "texture": "#0"}, + "east": {"uv": [7, 0, 9.5, 0.5], "texture": "#0"}, + "south": {"uv": [4, 3.5, 8, 4], "texture": "#0"}, + "west": {"uv": [7, 0.5, 9.5, 1], "texture": "#0"}, + "up": {"uv": [4, 2.5, 0, 0], "texture": "#0"}, + "down": {"uv": [4, 2.5, 0, 5], "texture": "#0"} + } + }, + { + "name": "core", + "from": [6, 14, 7], + "to": [10, 16, 9], + "faces": { + "north": {"uv": [7, 1.5, 8, 2], "texture": "#0"}, + "east": {"uv": [7.25, 4.5, 7.75, 5], "texture": "#0"}, + "south": {"uv": [7, 2, 8, 2.5], "texture": "#0"}, + "west": {"uv": [7.25, 5, 7.75, 5.5], "texture": "#0"}, + "up": {"uv": [8, 3, 7, 2.5], "texture": "#0"}, + "down": {"uv": [5, 7, 4, 7.5], "texture": "#0"} + } + }, + { + "name": "screen", + "from": [4, 6, -2], + "to": [12, 12, -1], + "rotation": {"angle": 22.5, "axis": "x", "origin": [0, 0, 0]}, + "faces": { + "north": {"uv": [4, 0, 6, 1.5], "texture": "#0"}, + "east": {"uv": [7, 4, 7.25, 5.5], "texture": "#0"}, + "south": {"uv": [4, 1.5, 6, 3], "texture": "#0"}, + "west": {"uv": [5, 7, 5.25, 8.5], "texture": "#0"}, + "up": {"uv": [9, 1.25, 7, 1], "texture": "#0"}, + "down": {"uv": [9, 1.25, 7, 1.5], "texture": "#0"} + } + } + ] } \ No newline at end of file diff --git a/common/src/main/resources/assets/quaedam/models/block/reality_stabler.json b/common/src/main/resources/assets/quaedam/models/block/reality_stabler.json new file mode 100644 index 0000000..8b0a0ed --- /dev/null +++ b/common/src/main/resources/assets/quaedam/models/block/reality_stabler.json @@ -0,0 +1,49 @@ +{ + "parent": "minecraft:block/block", + "texture_size": [64, 64], + "textures": { + "0": "quaedam:block/reality_stabler", + "particle": "quaedam:block/reality_stabler" + }, + "elements": [ + { + "name": "bottom", + "from": [1, 0, 1], + "to": [15, 1, 15], + "faces": { + "north": {"uv": [7.5, 10.5, 11, 10.75], "texture": "#0"}, + "east": {"uv": [7.5, 10.75, 11, 11], "texture": "#0"}, + "south": {"uv": [7.5, 11, 11, 11.25], "texture": "#0"}, + "west": {"uv": [11, 10.5, 14.5, 10.75], "texture": "#0"}, + "up": {"uv": [11.5, 3.5, 8, 0], "texture": "#0"}, + "down": {"uv": [11.5, 3.5, 8, 7], "texture": "#0"} + } + }, + { + "name": "center", + "from": [0, 1, 0], + "to": [16, 14, 16], + "faces": { + "north": {"uv": [4, 0, 8, 3.25], "texture": "#0"}, + "east": {"uv": [4, 3.25, 8, 6.5], "texture": "#0"}, + "south": {"uv": [4, 6.5, 8, 9.75], "texture": "#0"}, + "west": {"uv": [0, 8, 4, 11.25], "texture": "#0"}, + "up": {"uv": [4, 4, 0, 0], "texture": "#0"}, + "down": {"uv": [4, 4, 0, 8], "texture": "#0"} + } + }, + { + "name": "top", + "from": [1, 14, 1], + "to": [15, 15, 15], + "faces": { + "north": {"uv": [11, 10.75, 14.5, 11], "texture": "#0"}, + "east": {"uv": [11, 11, 14.5, 11.25], "texture": "#0"}, + "south": {"uv": [0, 11.25, 3.5, 11.5], "texture": "#0"}, + "west": {"uv": [7.5, 11.25, 11, 11.5], "texture": "#0"}, + "up": {"uv": [11.5, 10.5, 8, 7], "texture": "#0"}, + "down": {"uv": [7.5, 9.75, 4, 13.25], "texture": "#0"} + } + } + ] +} \ No newline at end of file diff --git a/common/src/main/resources/assets/quaedam/models/item/reality_stabler.json b/common/src/main/resources/assets/quaedam/models/item/reality_stabler.json index e69de29..e8fe7d7 100644 --- a/common/src/main/resources/assets/quaedam/models/item/reality_stabler.json +++ b/common/src/main/resources/assets/quaedam/models/item/reality_stabler.json @@ -0,0 +1,3 @@ +{ + "parent": "quaedam:block/reality_stabler" +} \ No newline at end of file diff --git a/common/src/main/resources/assets/quaedam/textures/block/reality_stabler.png b/common/src/main/resources/assets/quaedam/textures/block/reality_stabler.png new file mode 100644 index 0000000..68e9550 Binary files /dev/null and b/common/src/main/resources/assets/quaedam/textures/block/reality_stabler.png differ diff --git a/common/src/main/resources/data/minecraft/tags/blocks/mineable/pickaxe.json b/common/src/main/resources/data/minecraft/tags/blocks/mineable/pickaxe.json index 5279bce..c9edab3 100644 --- a/common/src/main/resources/data/minecraft/tags/blocks/mineable/pickaxe.json +++ b/common/src/main/resources/data/minecraft/tags/blocks/mineable/pickaxe.json @@ -2,7 +2,8 @@ "replace": false, "values": [ "quaedam:projector", + "#quaedam:projections", "quaedam:causality_anchor", - "#quaedam:projections" + "quaedam:reality_stabler" ] } \ No newline at end of file diff --git a/common/src/main/resources/data/minecraft/tags/blocks/needs_iron_tool.json b/common/src/main/resources/data/minecraft/tags/blocks/needs_iron_tool.json index 5279bce..c9edab3 100644 --- a/common/src/main/resources/data/minecraft/tags/blocks/needs_iron_tool.json +++ b/common/src/main/resources/data/minecraft/tags/blocks/needs_iron_tool.json @@ -2,7 +2,8 @@ "replace": false, "values": [ "quaedam:projector", + "#quaedam:projections", "quaedam:causality_anchor", - "#quaedam:projections" + "quaedam:reality_stabler" ] } \ No newline at end of file