Diagonal ChuteState

- Chutes can now connect diagonally
This commit is contained in:
simibubi 2020-06-24 17:25:19 +02:00
parent bffdaeb344
commit a25f90f4ab
20 changed files with 1370 additions and 263 deletions

View file

@ -31,7 +31,7 @@ b8dd6e505943e06706d0718ece620ab3cf943650 assets\create\blockstates\brass_casing.
2ca82a3c4bf7ba1a9cf3bb674e786d9b23b020a4 assets\create\blockstates\chiseled_limestone.json 2ca82a3c4bf7ba1a9cf3bb674e786d9b23b020a4 assets\create\blockstates\chiseled_limestone.json
cbcdab42d01f8085db9e5f8db884f8adf7f17625 assets\create\blockstates\chiseled_scoria.json cbcdab42d01f8085db9e5f8db884f8adf7f17625 assets\create\blockstates\chiseled_scoria.json
291952556c52fba2af5bbd793c71af81abd27e71 assets\create\blockstates\chiseled_weathered_limestone.json 291952556c52fba2af5bbd793c71af81abd27e71 assets\create\blockstates\chiseled_weathered_limestone.json
e1391d1ae451b50af13a08cfe572b79ac9e3514d assets\create\blockstates\chute.json 99def0a786714a337e2b1b17db844e4d1aee6234 assets\create\blockstates\chute.json
9ca4713c8efed79da6ab11354a25e5f8fbd6341c assets\create\blockstates\chute_port.json 9ca4713c8efed79da6ab11354a25e5f8fbd6341c assets\create\blockstates\chute_port.json
4947c261310445fa55b92038326ac82967d192dd assets\create\blockstates\clockwork_bearing.json 4947c261310445fa55b92038326ac82967d192dd assets\create\blockstates\clockwork_bearing.json
1f33834c685e3243882acfe20183fe64dfa872be assets\create\blockstates\clutch.json 1f33834c685e3243882acfe20183fe64dfa872be assets\create\blockstates\clutch.json
@ -118,7 +118,7 @@ de8a40b7daf1497d5aecee47a43b3e0b1d030b00 assets\create\blockstates\fancy_scoria_
fc9ac0a7e7191b93516719455a17177fa6524ecc assets\create\blockstates\fancy_weathered_limestone_bricks_slab.json fc9ac0a7e7191b93516719455a17177fa6524ecc assets\create\blockstates\fancy_weathered_limestone_bricks_slab.json
b2a7c321b1795f20e7433f81a55ce4683de081b8 assets\create\blockstates\fancy_weathered_limestone_bricks_stairs.json b2a7c321b1795f20e7433f81a55ce4683de081b8 assets\create\blockstates\fancy_weathered_limestone_bricks_stairs.json
6372fe02ba0065acb0758121c45a15a1a8fdc5de assets\create\blockstates\fancy_weathered_limestone_bricks_wall.json 6372fe02ba0065acb0758121c45a15a1a8fdc5de assets\create\blockstates\fancy_weathered_limestone_bricks_wall.json
1f290b70c7cdd53e336081ee5707fd25d08c0e2c assets\create\blockstates\fluid_pipe.json 4cbd66ed3da77d1caad6ef4e657a86b1b4017a39 assets\create\blockstates\fluid_pipe.json
9d0e78a4d6d0ccac37c06d0f5810a800a04844b2 assets\create\blockstates\fluid_tank.json 9d0e78a4d6d0ccac37c06d0f5810a800a04844b2 assets\create\blockstates\fluid_tank.json
e9da1794b6ece7f9aa8bcb43d42c23a55446133b assets\create\blockstates\flywheel.json e9da1794b6ece7f9aa8bcb43d42c23a55446133b assets\create\blockstates\flywheel.json
ac00d40e1ef50a37041c0481afa1a23a14dea78e assets\create\blockstates\framed_glass.json ac00d40e1ef50a37041c0481afa1a23a14dea78e assets\create\blockstates\framed_glass.json
@ -282,7 +282,7 @@ b7829c2ef2c47188713f8cab21b2c9bc7f9c5b79 assets\create\blockstates\portable_stor
e8b0a401c10d1ba67ed71ba31bd5f9bc28571b65 assets\create\blockstates\powered_toggle_latch.json e8b0a401c10d1ba67ed71ba31bd5f9bc28571b65 assets\create\blockstates\powered_toggle_latch.json
3a739f9d4276828d83f2d2750bf3227c87bcd438 assets\create\blockstates\pulley_magnet.json 3a739f9d4276828d83f2d2750bf3227c87bcd438 assets\create\blockstates\pulley_magnet.json
469e430d96cb0a5e1aaf6b7cc5d401d488c9e600 assets\create\blockstates\pulse_repeater.json 469e430d96cb0a5e1aaf6b7cc5d401d488c9e600 assets\create\blockstates\pulse_repeater.json
5c1df061eb5efe49beee7219e113206fc31a4733 assets\create\blockstates\radial_chassis.json 6fa36883e76e9e403bb429c8f86b8c0d3bba0cff assets\create\blockstates\radial_chassis.json
35cc2bb35c9e2809f69d1fb70e854f69e0f9bbe6 assets\create\blockstates\reality_funnel.json 35cc2bb35c9e2809f69d1fb70e854f69e0f9bbe6 assets\create\blockstates\reality_funnel.json
8929677f2cc5354aa19ef182af69f9f0b41eb242 assets\create\blockstates\redstone_contact.json 8929677f2cc5354aa19ef182af69f9f0b41eb242 assets\create\blockstates\redstone_contact.json
c29213b77ac0c78d8979c5f6188d2b265696f9b9 assets\create\blockstates\redstone_link.json c29213b77ac0c78d8979c5f6188d2b265696f9b9 assets\create\blockstates\redstone_link.json

View file

@ -1,10 +1,58 @@
{ {
"variants": { "variants": {
"window=false": { "facing=down,shape=start": {
"model": "create:block/chute/block_windowed"
},
"facing=north,shape=start": {
"model": "create:block/chute/block_diagonal_start",
"y": 180
},
"facing=south,shape=start": {
"model": "create:block/chute/block_diagonal_start"
},
"facing=west,shape=start": {
"model": "create:block/chute/block_diagonal_start",
"y": 90
},
"facing=east,shape=start": {
"model": "create:block/chute/block_diagonal_start",
"y": 270
},
"facing=down,shape=window_straight": {
"model": "create:block/chute/block_windowed"
},
"facing=north,shape=window_straight": {
"model": "create:block/chute/block_diagonal_straight",
"y": 180
},
"facing=south,shape=window_straight": {
"model": "create:block/chute/block_diagonal_straight"
},
"facing=west,shape=window_straight": {
"model": "create:block/chute/block_diagonal_straight",
"y": 90
},
"facing=east,shape=window_straight": {
"model": "create:block/chute/block_diagonal_straight",
"y": 270
},
"facing=down,shape=normal": {
"model": "create:block/chute/block" "model": "create:block/chute/block"
}, },
"window=true": { "facing=north,shape=normal": {
"model": "create:block/chute/block_windowed" "model": "create:block/chute/block_diagonal",
"y": 180
},
"facing=south,shape=normal": {
"model": "create:block/chute/block_diagonal"
},
"facing=west,shape=normal": {
"model": "create:block/chute/block_diagonal",
"y": 90
},
"facing=east,shape=normal": {
"model": "create:block/chute/block_diagonal",
"y": 270
} }
} }
} }

View file

@ -60,10 +60,10 @@
}, },
{ {
"when": { "when": {
"south": "false", "up": "true",
"north": "true", "north": "true",
"down": "false", "south": "false",
"up": "true" "down": "false"
}, },
"apply": { "apply": {
"model": "create:block/fluid_pipe/lu_x" "model": "create:block/fluid_pipe/lu_x"
@ -71,10 +71,10 @@
}, },
{ {
"when": { "when": {
"south": "true", "up": "true",
"north": "false", "north": "false",
"down": "false", "south": "true",
"up": "true" "down": "false"
}, },
"apply": { "apply": {
"model": "create:block/fluid_pipe/ru_x" "model": "create:block/fluid_pipe/ru_x"
@ -82,10 +82,10 @@
}, },
{ {
"when": { "when": {
"south": "false", "up": "false",
"north": "true", "north": "true",
"down": "true", "south": "false",
"up": "false" "down": "true"
}, },
"apply": { "apply": {
"model": "create:block/fluid_pipe/ld_x" "model": "create:block/fluid_pipe/ld_x"
@ -93,10 +93,10 @@
}, },
{ {
"when": { "when": {
"south": "true", "up": "false",
"north": "false", "north": "false",
"down": "true", "south": "true",
"up": "false" "down": "true"
}, },
"apply": { "apply": {
"model": "create:block/fluid_pipe/rd_x" "model": "create:block/fluid_pipe/rd_x"
@ -104,10 +104,10 @@
}, },
{ {
"when": { "when": {
"south": "false", "up": "true",
"north": "false", "north": "false",
"down": "true", "south": "false",
"up": "true" "down": "true"
}, },
"apply": { "apply": {
"model": "create:block/fluid_pipe/ud_x" "model": "create:block/fluid_pipe/ud_x"
@ -115,10 +115,10 @@
}, },
{ {
"when": { "when": {
"south": "false", "up": "true",
"north": "false", "north": "false",
"down": "false", "south": "false",
"up": "true" "down": "false"
}, },
"apply": { "apply": {
"model": "create:block/fluid_pipe/ud_x" "model": "create:block/fluid_pipe/ud_x"
@ -126,10 +126,10 @@
}, },
{ {
"when": { "when": {
"south": "false", "up": "false",
"north": "false", "north": "false",
"down": "true", "south": "false",
"up": "false" "down": "true"
}, },
"apply": { "apply": {
"model": "create:block/fluid_pipe/ud_x" "model": "create:block/fluid_pipe/ud_x"
@ -137,32 +137,10 @@
}, },
{ {
"when": { "when": {
"south": "true", "up": "false",
"north": "true", "north": "true",
"down": "false",
"up": "false"
},
"apply": {
"model": "create:block/fluid_pipe/lr_x"
}
},
{
"when": {
"south": "false",
"north": "true",
"down": "false",
"up": "false"
},
"apply": {
"model": "create:block/fluid_pipe/lr_x"
}
},
{
"when": {
"south": "true", "south": "true",
"north": "false", "down": "false"
"down": "false",
"up": "false"
}, },
"apply": { "apply": {
"model": "create:block/fluid_pipe/lr_x" "model": "create:block/fluid_pipe/lr_x"
@ -170,10 +148,32 @@
}, },
{ {
"when": { "when": {
"up": "false",
"north": "true",
"south": "false", "south": "false",
"down": "false"
},
"apply": {
"model": "create:block/fluid_pipe/lr_x"
}
},
{
"when": {
"up": "false",
"north": "false", "north": "false",
"down": "false", "south": "true",
"up": "false" "down": "false"
},
"apply": {
"model": "create:block/fluid_pipe/lr_x"
}
},
{
"when": {
"up": "false",
"north": "false",
"south": "false",
"down": "false"
}, },
"apply": { "apply": {
"model": "create:block/fluid_pipe/none_x" "model": "create:block/fluid_pipe/none_x"
@ -181,10 +181,10 @@
}, },
{ {
"when": { "when": {
"south": "true",
"north": "false", "north": "false",
"east": "false", "south": "true",
"west": "true" "west": "true",
"east": "false"
}, },
"apply": { "apply": {
"model": "create:block/fluid_pipe/lu_y" "model": "create:block/fluid_pipe/lu_y"
@ -192,10 +192,10 @@
}, },
{ {
"when": { "when": {
"south": "true",
"north": "false", "north": "false",
"east": "true", "south": "true",
"west": "false" "west": "false",
"east": "true"
}, },
"apply": { "apply": {
"model": "create:block/fluid_pipe/ru_y" "model": "create:block/fluid_pipe/ru_y"
@ -203,10 +203,10 @@
}, },
{ {
"when": { "when": {
"south": "false",
"north": "true", "north": "true",
"east": "false", "south": "false",
"west": "true" "west": "true",
"east": "false"
}, },
"apply": { "apply": {
"model": "create:block/fluid_pipe/ld_y" "model": "create:block/fluid_pipe/ld_y"
@ -214,10 +214,10 @@
}, },
{ {
"when": { "when": {
"south": "false",
"north": "true", "north": "true",
"east": "true", "south": "false",
"west": "false" "west": "false",
"east": "true"
}, },
"apply": { "apply": {
"model": "create:block/fluid_pipe/rd_y" "model": "create:block/fluid_pipe/rd_y"
@ -225,21 +225,21 @@
}, },
{ {
"when": { "when": {
"south": "true",
"north": "true", "north": "true",
"east": "false",
"west": "false"
},
"apply": {
"model": "create:block/fluid_pipe/ud_y"
}
},
{
"when": {
"south": "true", "south": "true",
"north": "false", "west": "false",
"east": "false", "east": "false"
"west": "false" },
"apply": {
"model": "create:block/fluid_pipe/ud_y"
}
},
{
"when": {
"north": "false",
"south": "true",
"west": "false",
"east": "false"
}, },
"apply": { "apply": {
"model": "create:block/fluid_pipe/ud_y" "model": "create:block/fluid_pipe/ud_y"
@ -247,10 +247,10 @@
}, },
{ {
"when": { "when": {
"south": "false",
"north": "true", "north": "true",
"east": "false", "south": "false",
"west": "false" "west": "false",
"east": "false"
}, },
"apply": { "apply": {
"model": "create:block/fluid_pipe/ud_y" "model": "create:block/fluid_pipe/ud_y"
@ -258,10 +258,10 @@
}, },
{ {
"when": { "when": {
"south": "false",
"north": "false", "north": "false",
"east": "true", "south": "false",
"west": "true" "west": "true",
"east": "true"
}, },
"apply": { "apply": {
"model": "create:block/fluid_pipe/lr_y" "model": "create:block/fluid_pipe/lr_y"
@ -269,10 +269,10 @@
}, },
{ {
"when": { "when": {
"south": "false",
"north": "false", "north": "false",
"east": "false", "south": "false",
"west": "true" "west": "true",
"east": "false"
}, },
"apply": { "apply": {
"model": "create:block/fluid_pipe/lr_y" "model": "create:block/fluid_pipe/lr_y"
@ -280,10 +280,10 @@
}, },
{ {
"when": { "when": {
"south": "false",
"north": "false", "north": "false",
"east": "true", "south": "false",
"west": "false" "west": "false",
"east": "true"
}, },
"apply": { "apply": {
"model": "create:block/fluid_pipe/lr_y" "model": "create:block/fluid_pipe/lr_y"
@ -291,10 +291,10 @@
}, },
{ {
"when": { "when": {
"south": "false",
"north": "false", "north": "false",
"east": "false", "south": "false",
"west": "false" "west": "false",
"east": "false"
}, },
"apply": { "apply": {
"model": "create:block/fluid_pipe/none_y" "model": "create:block/fluid_pipe/none_y"
@ -302,10 +302,10 @@
}, },
{ {
"when": { "when": {
"down": "false", "up": "true",
"east": "true",
"west": "false", "west": "false",
"up": "true" "down": "false",
"east": "true"
}, },
"apply": { "apply": {
"model": "create:block/fluid_pipe/lu_z" "model": "create:block/fluid_pipe/lu_z"
@ -313,10 +313,10 @@
}, },
{ {
"when": { "when": {
"down": "false", "up": "true",
"east": "false",
"west": "true", "west": "true",
"up": "true" "down": "false",
"east": "false"
}, },
"apply": { "apply": {
"model": "create:block/fluid_pipe/ru_z" "model": "create:block/fluid_pipe/ru_z"
@ -324,10 +324,10 @@
}, },
{ {
"when": { "when": {
"down": "true", "up": "false",
"east": "true",
"west": "false", "west": "false",
"up": "false" "down": "true",
"east": "true"
}, },
"apply": { "apply": {
"model": "create:block/fluid_pipe/ld_z" "model": "create:block/fluid_pipe/ld_z"
@ -335,10 +335,10 @@
}, },
{ {
"when": { "when": {
"down": "true", "up": "false",
"east": "false",
"west": "true", "west": "true",
"up": "false" "down": "true",
"east": "false"
}, },
"apply": { "apply": {
"model": "create:block/fluid_pipe/rd_z" "model": "create:block/fluid_pipe/rd_z"
@ -346,10 +346,10 @@
}, },
{ {
"when": { "when": {
"up": "true",
"west": "false",
"down": "true", "down": "true",
"east": "false", "east": "false"
"west": "false",
"up": "true"
}, },
"apply": { "apply": {
"model": "create:block/fluid_pipe/ud_z" "model": "create:block/fluid_pipe/ud_z"
@ -357,10 +357,10 @@
}, },
{ {
"when": { "when": {
"up": "true",
"west": "false",
"down": "false", "down": "false",
"east": "false", "east": "false"
"west": "false",
"up": "true"
}, },
"apply": { "apply": {
"model": "create:block/fluid_pipe/ud_z" "model": "create:block/fluid_pipe/ud_z"
@ -368,10 +368,10 @@
}, },
{ {
"when": { "when": {
"up": "false",
"west": "false",
"down": "true", "down": "true",
"east": "false", "east": "false"
"west": "false",
"up": "false"
}, },
"apply": { "apply": {
"model": "create:block/fluid_pipe/ud_z" "model": "create:block/fluid_pipe/ud_z"
@ -379,10 +379,10 @@
}, },
{ {
"when": { "when": {
"down": "false", "up": "false",
"east": "true",
"west": "true", "west": "true",
"up": "false" "down": "false",
"east": "true"
}, },
"apply": { "apply": {
"model": "create:block/fluid_pipe/lr_z" "model": "create:block/fluid_pipe/lr_z"
@ -390,10 +390,10 @@
}, },
{ {
"when": { "when": {
"down": "false", "up": "false",
"east": "true",
"west": "false", "west": "false",
"up": "false" "down": "false",
"east": "true"
}, },
"apply": { "apply": {
"model": "create:block/fluid_pipe/lr_z" "model": "create:block/fluid_pipe/lr_z"
@ -401,10 +401,10 @@
}, },
{ {
"when": { "when": {
"down": "false", "up": "false",
"east": "false",
"west": "true", "west": "true",
"up": "false" "down": "false",
"east": "false"
}, },
"apply": { "apply": {
"model": "create:block/fluid_pipe/lr_z" "model": "create:block/fluid_pipe/lr_z"
@ -412,10 +412,10 @@
}, },
{ {
"when": { "when": {
"down": "false", "up": "false",
"east": "false",
"west": "false", "west": "false",
"up": "false" "down": "false",
"east": "false"
}, },
"apply": { "apply": {
"model": "create:block/fluid_pipe/none_z" "model": "create:block/fluid_pipe/none_z"

View file

@ -29,8 +29,8 @@
}, },
{ {
"when": { "when": {
"sticky_south": "true", "axis": "x",
"axis": "x" "sticky_south": "true"
}, },
"apply": { "apply": {
"model": "create:block/radial_chassis_side_x_sticky", "model": "create:block/radial_chassis_side_x_sticky",
@ -39,8 +39,8 @@
}, },
{ {
"when": { "when": {
"sticky_south": "true", "axis": "y",
"axis": "y" "sticky_south": "true"
}, },
"apply": { "apply": {
"model": "create:block/radial_chassis_side_y_sticky" "model": "create:block/radial_chassis_side_y_sticky"
@ -48,8 +48,8 @@
}, },
{ {
"when": { "when": {
"sticky_south": "true", "axis": "z",
"axis": "z" "sticky_south": "true"
}, },
"apply": { "apply": {
"model": "create:block/radial_chassis_side_x_sticky", "model": "create:block/radial_chassis_side_x_sticky",
@ -59,8 +59,8 @@
}, },
{ {
"when": { "when": {
"sticky_south": "false", "axis": "x",
"axis": "x" "sticky_south": "false"
}, },
"apply": { "apply": {
"model": "create:block/radial_chassis_side_x", "model": "create:block/radial_chassis_side_x",
@ -69,8 +69,8 @@
}, },
{ {
"when": { "when": {
"sticky_south": "false", "axis": "y",
"axis": "y" "sticky_south": "false"
}, },
"apply": { "apply": {
"model": "create:block/radial_chassis_side_y" "model": "create:block/radial_chassis_side_y"
@ -78,8 +78,8 @@
}, },
{ {
"when": { "when": {
"sticky_south": "false", "axis": "z",
"axis": "z" "sticky_south": "false"
}, },
"apply": { "apply": {
"model": "create:block/radial_chassis_side_x", "model": "create:block/radial_chassis_side_x",
@ -207,8 +207,8 @@
}, },
{ {
"when": { "when": {
"axis": "x", "sticky_east": "true",
"sticky_east": "true" "axis": "x"
}, },
"apply": { "apply": {
"model": "create:block/radial_chassis_side_x_sticky", "model": "create:block/radial_chassis_side_x_sticky",
@ -217,8 +217,8 @@
}, },
{ {
"when": { "when": {
"axis": "y", "sticky_east": "true",
"sticky_east": "true" "axis": "y"
}, },
"apply": { "apply": {
"model": "create:block/radial_chassis_side_y_sticky", "model": "create:block/radial_chassis_side_y_sticky",
@ -227,8 +227,8 @@
}, },
{ {
"when": { "when": {
"axis": "z", "sticky_east": "true",
"sticky_east": "true" "axis": "z"
}, },
"apply": { "apply": {
"model": "create:block/radial_chassis_side_z_sticky" "model": "create:block/radial_chassis_side_z_sticky"
@ -236,8 +236,8 @@
}, },
{ {
"when": { "when": {
"axis": "x", "sticky_east": "false",
"sticky_east": "false" "axis": "x"
}, },
"apply": { "apply": {
"model": "create:block/radial_chassis_side_x", "model": "create:block/radial_chassis_side_x",
@ -246,8 +246,8 @@
}, },
{ {
"when": { "when": {
"axis": "y", "sticky_east": "false",
"sticky_east": "false" "axis": "y"
}, },
"apply": { "apply": {
"model": "create:block/radial_chassis_side_y", "model": "create:block/radial_chassis_side_y",
@ -256,8 +256,8 @@
}, },
{ {
"when": { "when": {
"axis": "z", "sticky_east": "false",
"sticky_east": "false" "axis": "z"
}, },
"apply": { "apply": {
"model": "create:block/radial_chassis_side_z" "model": "create:block/radial_chassis_side_z"

View file

@ -76,6 +76,8 @@ import com.simibubi.create.content.contraptions.relays.gearbox.GearboxBlock;
import com.simibubi.create.content.logistics.block.belts.observer.BeltObserverBlock; import com.simibubi.create.content.logistics.block.belts.observer.BeltObserverBlock;
import com.simibubi.create.content.logistics.block.belts.tunnel.BeltTunnelBlock; import com.simibubi.create.content.logistics.block.belts.tunnel.BeltTunnelBlock;
import com.simibubi.create.content.logistics.block.chute.ChuteBlock; import com.simibubi.create.content.logistics.block.chute.ChuteBlock;
import com.simibubi.create.content.logistics.block.chute.ChuteGenerator;
import com.simibubi.create.content.logistics.block.chute.ChuteItem;
import com.simibubi.create.content.logistics.block.chute.ChutePortBlock; import com.simibubi.create.content.logistics.block.chute.ChutePortBlock;
import com.simibubi.create.content.logistics.block.depot.DepotBlock; import com.simibubi.create.content.logistics.block.depot.DepotBlock;
import com.simibubi.create.content.logistics.block.diodes.AbstractDiodeGenerator; import com.simibubi.create.content.logistics.block.diodes.AbstractDiodeGenerator;
@ -713,12 +715,8 @@ public class AllBlocks {
public static final BlockEntry<ChuteBlock> CHUTE = REGISTRATE.block("chute", ChuteBlock::new) public static final BlockEntry<ChuteBlock> CHUTE = REGISTRATE.block("chute", ChuteBlock::new)
.initialProperties(SharedProperties::softMetal) .initialProperties(SharedProperties::softMetal)
.addLayer(() -> RenderType::getCutoutMipped) .addLayer(() -> RenderType::getCutoutMipped)
.blockstate((c, p) -> p.getVariantBuilder(c.get()) .blockstate(new ChuteGenerator()::generate)
.forAllStates(s -> ConfiguredModel.builder() .item(ChuteItem::new)
.modelFile(s.get(ChuteBlock.WINDOW) ? AssetLookup.partialBaseModel(c, p, "windowed")
: AssetLookup.partialBaseModel(c, p))
.build()))
.item()
.transform(customItemModel("_", "block")) .transform(customItemModel("_", "block"))
.register(); .register();

View file

@ -1,46 +1,178 @@
package com.simibubi.create.content.logistics.block.chute; package com.simibubi.create.content.logistics.block.chute;
import java.util.HashMap;
import java.util.Map;
import com.simibubi.create.AllShapes; import com.simibubi.create.AllShapes;
import com.simibubi.create.content.contraptions.wrench.IWrenchable; import com.simibubi.create.content.contraptions.wrench.IWrenchable;
import com.simibubi.create.foundation.utility.Iterate;
import com.simibubi.create.foundation.utility.Lang;
import net.minecraft.block.Block; import net.minecraft.block.Block;
import net.minecraft.block.BlockState; import net.minecraft.block.BlockState;
import net.minecraft.item.BlockItemUseContext;
import net.minecraft.item.ItemUseContext; import net.minecraft.item.ItemUseContext;
import net.minecraft.state.BooleanProperty; import net.minecraft.state.DirectionProperty;
import net.minecraft.state.EnumProperty;
import net.minecraft.state.IProperty;
import net.minecraft.state.StateContainer.Builder; import net.minecraft.state.StateContainer.Builder;
import net.minecraft.state.properties.BlockStateProperties;
import net.minecraft.util.ActionResultType; import net.minecraft.util.ActionResultType;
import net.minecraft.util.Direction;
import net.minecraft.util.IStringSerializable;
import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.shapes.ISelectionContext; import net.minecraft.util.math.shapes.ISelectionContext;
import net.minecraft.util.math.shapes.VoxelShape; import net.minecraft.util.math.shapes.VoxelShape;
import net.minecraft.world.IBlockReader; import net.minecraft.world.IBlockReader;
import net.minecraft.world.IWorld;
import net.minecraft.world.IWorldReader;
import net.minecraft.world.World;
public class ChuteBlock extends Block implements IWrenchable { public class ChuteBlock extends Block implements IWrenchable {
public static final IProperty<Shape> SHAPE = EnumProperty.create("shape", Shape.class);
public static final DirectionProperty FACING = BlockStateProperties.FACING_EXCEPT_UP;
public enum Shape implements IStringSerializable {
START(), WINDOW_STRAIGHT(), NORMAL();
@Override
public String getName() {
return Lang.asId(name());
}
}
public static final BooleanProperty WINDOW = BooleanProperty.create("window");
public ChuteBlock(Properties p_i48440_1_) { public ChuteBlock(Properties p_i48440_1_) {
super(p_i48440_1_); super(p_i48440_1_);
setDefaultState(getDefaultState().with(WINDOW, false)); setDefaultState(getDefaultState().with(SHAPE, Shape.NORMAL)
.with(FACING, Direction.DOWN));
} }
@Override
public void onBlockAdded(BlockState state, World world, BlockPos pos, BlockState p_220082_4_, boolean p_220082_5_) {
if (p_220082_5_)
return;
updateDiagonalNeighbour(state, world, pos);
}
protected void updateDiagonalNeighbour(BlockState state, World world, BlockPos pos) {
Direction facing = state.get(FACING);
BlockPos toUpdate = pos.down();
if (facing.getAxis()
.isHorizontal())
toUpdate = toUpdate.offset(facing.getOpposite());
BlockState stateToUpdate = world.getBlockState(toUpdate);
BlockState updated = updateDiagonalState(stateToUpdate, world.getBlockState(toUpdate.up()), world, toUpdate);
if (stateToUpdate != updated && !world.isRemote)
world.setBlockState(toUpdate, updated);
}
@Override
public void onReplaced(BlockState state, World world, BlockPos pos, BlockState p_196243_4_, boolean p_196243_5_) {
boolean differentBlock = state.getBlock() != p_196243_4_.getBlock();
if (state.hasTileEntity() && (differentBlock || !p_196243_4_.hasTileEntity())) {
world.removeTileEntity(pos);
}
if (p_196243_5_ || !differentBlock)
return;
updateDiagonalNeighbour(state, world, pos);
for (Direction direction : Iterate.horizontalDirections) {
BlockPos toUpdate = pos.up()
.offset(direction);
BlockState stateToUpdate = world.getBlockState(toUpdate);
BlockState updated =
updateDiagonalState(stateToUpdate, world.getBlockState(toUpdate.up()), world, toUpdate);
if (stateToUpdate != updated && !world.isRemote)
world.setBlockState(toUpdate, updated);
}
}
@Override
public BlockState updatePostPlacement(BlockState state, Direction direction, BlockState above, IWorld world,
BlockPos pos, BlockPos p_196271_6_) {
if (direction != Direction.UP)
return state;
return updateDiagonalState(state, above, world, pos);
}
@Override
public boolean isValidPosition(BlockState state, IWorldReader world, BlockPos pos) {
BlockState above = world.getBlockState(pos.up());
return !(above.getBlock() instanceof ChuteBlock) || above.get(FACING) == Direction.DOWN;
}
@Override
public BlockState getStateForPlacement(BlockItemUseContext ctx) {
BlockState state = super.getStateForPlacement(ctx);
Direction face = ctx.getFace();
if (face.getAxis()
.isHorizontal() && !ctx.shouldCancelInteraction()) {
World world = ctx.getWorld();
BlockPos pos = ctx.getPos();
return updateDiagonalState(state.with(FACING, face), world.getBlockState(pos.up()), world, pos);
}
return state;
}
public static BlockState updateDiagonalState(BlockState state, BlockState above, IBlockReader world, BlockPos pos) {
if (!(state.getBlock() instanceof ChuteBlock))
return state;
Map<Direction, Boolean> connections = new HashMap<>();
int amtConnections = 0;
Direction facing = state.get(FACING);
if (facing == Direction.DOWN)
return state;
BlockState target = world.getBlockState(pos.down()
.offset(facing.getOpposite()));
if (!(target.getBlock() instanceof ChuteBlock))
return state.with(FACING, Direction.DOWN)
.with(SHAPE, Shape.NORMAL);
for (Direction direction : Iterate.horizontalDirections) {
BlockState diagonalInputChute = world.getBlockState(pos.up()
.offset(direction));
boolean value =
diagonalInputChute.getBlock() instanceof ChuteBlock && diagonalInputChute.get(FACING) == direction;
connections.put(direction, value);
if (value)
amtConnections++;
}
if (amtConnections == 0)
return state.with(SHAPE, Shape.START);
if (connections.get(Direction.NORTH) && connections.get(Direction.SOUTH))
return state.with(SHAPE, Shape.START);
if (connections.get(Direction.EAST) && connections.get(Direction.WEST))
return state.with(SHAPE, Shape.START);
if (amtConnections == 1 && connections.get(facing)
&& !(above.getBlock() instanceof ChuteBlock && above.get(FACING) == Direction.DOWN))
return state.with(SHAPE, Shape.WINDOW_STRAIGHT);
return state.with(SHAPE, Shape.NORMAL);
}
@Override @Override
public ActionResultType onWrenched(BlockState state, ItemUseContext context) { public ActionResultType onWrenched(BlockState state, ItemUseContext context) {
if (!context.getWorld().isRemote) if (!context.getWorld().isRemote && state.get(FACING) == Direction.DOWN)
context.getWorld().setBlockState(context.getPos(), state.cycle(WINDOW)); context.getWorld()
.setBlockState(context.getPos(), state.with(SHAPE,
state.get(SHAPE) == Shape.WINDOW_STRAIGHT ? Shape.NORMAL : Shape.WINDOW_STRAIGHT));
return ActionResultType.SUCCESS; return ActionResultType.SUCCESS;
} }
@Override @Override
public VoxelShape getShape(BlockState p_220053_1_, IBlockReader p_220053_2_, BlockPos p_220053_3_, public VoxelShape getShape(BlockState p_220053_1_, IBlockReader p_220053_2_, BlockPos p_220053_3_,
ISelectionContext p_220053_4_) { ISelectionContext p_220053_4_) {
return AllShapes.CHUTE; return AllShapes.CHUTE;
} }
@Override @Override
protected void fillStateContainer(Builder<Block, BlockState> p_206840_1_) { protected void fillStateContainer(Builder<Block, BlockState> p_206840_1_) {
super.fillStateContainer(p_206840_1_.add(WINDOW)); super.fillStateContainer(p_206840_1_.add(SHAPE, FACING));
} }
} }

View file

@ -0,0 +1,41 @@
package com.simibubi.create.content.logistics.block.chute;
import com.simibubi.create.content.logistics.block.chute.ChuteBlock.Shape;
import com.simibubi.create.foundation.data.AssetLookup;
import com.simibubi.create.foundation.data.SpecialBlockStateGen;
import com.tterrag.registrate.providers.DataGenContext;
import com.tterrag.registrate.providers.RegistrateBlockstateProvider;
import net.minecraft.block.Block;
import net.minecraft.block.BlockState;
import net.minecraft.util.Direction;
import net.minecraftforge.client.model.generators.ModelFile;
public class ChuteGenerator extends SpecialBlockStateGen {
@Override
protected int getXRotation(BlockState state) {
return 0;
}
@Override
protected int getYRotation(BlockState state) {
return horizontalAngle(state.get(ChuteBlock.FACING));
}
@Override
public <T extends Block> ModelFile getModel(DataGenContext<Block, T> ctx, RegistrateBlockstateProvider prov,
BlockState state) {
boolean horizontal = state.get(ChuteBlock.FACING) != Direction.DOWN;
ChuteBlock.Shape shape = state.get(ChuteBlock.SHAPE);
if (!horizontal)
return shape == Shape.NORMAL ? AssetLookup.partialBaseModel(ctx, prov)
: AssetLookup.partialBaseModel(ctx, prov, "windowed");
return shape == Shape.NORMAL ? AssetLookup.partialBaseModel(ctx, prov, "diagonal")
: shape == Shape.START ? AssetLookup.partialBaseModel(ctx, prov, "diagonal", "start")
: AssetLookup.partialBaseModel(ctx, prov, "diagonal", "straight");
}
}

View file

@ -0,0 +1,54 @@
package com.simibubi.create.content.logistics.block.chute;
import net.minecraft.block.Block;
import net.minecraft.block.BlockState;
import net.minecraft.item.BlockItem;
import net.minecraft.item.BlockItemUseContext;
import net.minecraft.util.ActionResultType;
import net.minecraft.util.Direction;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
public class ChuteItem extends BlockItem {
public ChuteItem(Block p_i48527_1_, Properties p_i48527_2_) {
super(p_i48527_1_, p_i48527_2_);
}
@Override
public ActionResultType tryPlace(BlockItemUseContext context) {
Direction face = context.getFace();
BlockPos placedOnPos = context.getPos()
.offset(face.getOpposite());
World world = context.getWorld();
BlockState placedOnState = world.getBlockState(placedOnPos);
if (!(placedOnState.getBlock() instanceof ChuteBlock) || context.shouldCancelInteraction())
return super.tryPlace(context);
if (face.getAxis()
.isVertical())
return super.tryPlace(context);
BlockPos correctPos = context.getPos()
.up();
BlockState blockState = world.getBlockState(correctPos);
if (blockState.getMaterial()
.isReplaceable())
context = BlockItemUseContext.func_221536_a(context, correctPos, face);
else {
if (blockState.getBlock() instanceof ChuteBlock && blockState.get(ChuteBlock.FACING) == Direction.DOWN) {
if (!world.isRemote) {
world.setBlockState(correctPos,
ChuteBlock.updateDiagonalState(blockState.with(ChuteBlock.FACING, face),
world.getBlockState(correctPos.up()), world, correctPos));
return ActionResultType.SUCCESS;
}
}
return ActionResultType.FAIL;
}
return super.tryPlace(context);
}
}

View file

@ -3,7 +3,7 @@
"parent": "block/block", "parent": "block/block",
"textures": { "textures": {
"13": "create:block/chute", "13": "create:block/chute",
"particle": "create:block/zinc_block" "particle": "block/hopper_outside"
}, },
"elements": [ "elements": [
{ {
@ -11,38 +11,21 @@
"to": [13, 16, 3], "to": [13, 16, 3],
"rotation": {"angle": 0, "axis": "y", "origin": [11, 16, -3]}, "rotation": {"angle": 0, "axis": "y", "origin": [11, 16, -3]},
"faces": { "faces": {
"north": {"uv": [10, 0, 15, 4], "texture": "#13"}, "north": {"uv": [9.5, 0, 14.5, 4], "texture": "#13"},
"east": {"uv": [9, 0, 16, 4], "texture": "#13"}, "south": {"uv": [9.5, 0, 14.5, 4], "texture": "#13"},
"south": {"uv": [10, 0, 15, 4], "texture": "#13"},
"west": {"uv": [9, 0, 16, 4], "texture": "#13"},
"up": {"uv": [1, 0, 6, 1], "texture": "#13"}, "up": {"uv": [1, 0, 6, 1], "texture": "#13"},
"down": {"uv": [1, 6, 6, 7], "texture": "#13"} "down": {"uv": [1, 6, 6, 7], "texture": "#13"}
} }
}, },
{
"from": [13, 8, 1],
"to": [15, 16, 15],
"rotation": {"angle": 0, "axis": "y", "origin": [9, 16, 9]},
"faces": {
"north": {"uv": [9, 0, 10, 4], "texture": "#13"},
"east": {"uv": [9, 0, 16, 4], "texture": "#13"},
"south": {"uv": [15, 0, 16, 4], "texture": "#13"},
"west": {"uv": [9, 0, 16, 4], "texture": "#13"},
"up": {"uv": [6, 0, 7, 7], "texture": "#13"},
"down": {"uv": [6, 0, 7, 7], "texture": "#13"}
}
},
{ {
"from": [3, 8, 13], "from": [3, 8, 13],
"to": [13, 16, 15], "to": [13, 16, 15],
"rotation": {"angle": 0, "axis": "y", "origin": [11, 16, 9]}, "rotation": {"angle": 0, "axis": "y", "origin": [5, 16, 19]},
"faces": { "faces": {
"north": {"uv": [10, 0, 15, 4], "texture": "#13"}, "north": {"uv": [9.5, 0, 14.5, 4], "texture": "#13"},
"east": {"uv": [9, 0, 16, 4], "texture": "#13"}, "south": {"uv": [9.5, 0, 14.5, 4], "texture": "#13"},
"south": {"uv": [10, 0, 15, 4], "texture": "#13"}, "up": {"uv": [1, 0, 6, 1], "rotation": 180, "texture": "#13"},
"west": {"uv": [9, 0, 16, 4], "texture": "#13"}, "down": {"uv": [1, 6, 6, 7], "rotation": 180, "texture": "#13"}
"up": {"uv": [1, 6, 6, 7], "texture": "#13"},
"down": {"uv": [1, 0, 6, 1], "texture": "#13"}
} }
}, },
{ {
@ -50,24 +33,37 @@
"to": [3, 16, 15], "to": [3, 16, 15],
"rotation": {"angle": 0, "axis": "y", "origin": [9, 16, 9]}, "rotation": {"angle": 0, "axis": "y", "origin": [9, 16, 9]},
"faces": { "faces": {
"north": {"uv": [15, 0, 16, 4], "texture": "#13"}, "north": {"uv": [14.5, 0, 15.5, 4], "texture": "#13"},
"east": {"uv": [9, 0, 16, 4], "texture": "#13"}, "east": {"uv": [8.5, 0, 15.5, 4], "texture": "#13"},
"south": {"uv": [9, 0, 10, 4], "texture": "#13"}, "south": {"uv": [8.5, 0, 9.5, 4], "texture": "#13"},
"west": {"uv": [9, 0, 16, 4], "texture": "#13"}, "west": {"uv": [8.5, 0, 15.5, 4], "texture": "#13"},
"up": {"uv": [0, 0, 1, 7], "texture": "#13"}, "up": {"uv": [0, 0, 1, 7], "texture": "#13"},
"down": {"uv": [0, 0, 1, 7], "texture": "#13"} "down": {"uv": [0, 0, 1, 7], "texture": "#13"}
} }
}, },
{
"from": [13, 8, 1],
"to": [15, 16, 15],
"rotation": {"angle": 0, "axis": "y", "origin": [7, 16, 7]},
"faces": {
"north": {"uv": [8.5, 0, 9.5, 4], "texture": "#13"},
"east": {"uv": [8.5, 0, 15.5, 4], "texture": "#13"},
"south": {"uv": [14.5, 0, 15.5, 4], "texture": "#13"},
"west": {"uv": [8.5, 0, 15.5, 4], "texture": "#13"},
"up": {"uv": [0, 0, 1, 7], "rotation": 180, "texture": "#13"},
"down": {"uv": [0, 0, 1, 7], "rotation": 180, "texture": "#13"}
}
},
{ {
"from": [13, 0, 2], "from": [13, 0, 2],
"to": [14, 8, 14], "to": [14, 8, 14],
"rotation": {"angle": 0, "axis": "y", "origin": [9, 8, 9]}, "rotation": {"angle": 0, "axis": "y", "origin": [9, 8, 9]},
"faces": { "faces": {
"north": {"uv": [10, 4, 10.5, 8], "texture": "#13"}, "north": {"uv": [9, 4, 9.5, 8], "texture": "#13"},
"east": {"uv": [10, 4, 16, 8], "texture": "#13"}, "east": {"uv": [9, 4, 15, 8], "texture": "#13"},
"south": {"uv": [15.5, 4, 16, 8], "texture": "#13"}, "south": {"uv": [14.5, 4, 15, 8], "texture": "#13"},
"west": {"uv": [10, 4, 16, 8], "texture": "#13"}, "west": {"uv": [9, 4, 15, 8], "texture": "#13"},
"down": {"uv": [10, 7.5, 16, 8], "rotation": 90, "texture": "#13"} "down": {"uv": [9, 7.5, 15, 8], "rotation": 90, "texture": "#13"}
} }
}, },
{ {
@ -75,11 +71,11 @@
"to": [3, 8, 14], "to": [3, 8, 14],
"rotation": {"angle": 0, "axis": "y", "origin": [9, 8, 9]}, "rotation": {"angle": 0, "axis": "y", "origin": [9, 8, 9]},
"faces": { "faces": {
"north": {"uv": [15.5, 4, 16, 8], "texture": "#13"}, "north": {"uv": [14.5, 4, 15, 8], "texture": "#13"},
"east": {"uv": [10, 4, 16, 8], "texture": "#13"}, "east": {"uv": [9, 4, 15, 8], "texture": "#13"},
"south": {"uv": [10, 4, 10.5, 8], "texture": "#13"}, "south": {"uv": [9, 4, 9.5, 8], "texture": "#13"},
"west": {"uv": [10, 4, 16, 8], "texture": "#13"}, "west": {"uv": [9, 4, 15, 8], "texture": "#13"},
"down": {"uv": [10, 7.5, 16, 8], "rotation": 90, "texture": "#13"} "down": {"uv": [9, 7.5, 15, 8], "rotation": 90, "texture": "#13"}
} }
}, },
{ {
@ -87,9 +83,9 @@
"to": [13, 8, 14], "to": [13, 8, 14],
"rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 20]}, "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 20]},
"faces": { "faces": {
"north": {"uv": [10.5, 4, 15.5, 8], "texture": "#13"}, "north": {"uv": [9.5, 4, 14.5, 8], "texture": "#13"},
"south": {"uv": [10.5, 4, 15.5, 8], "texture": "#13"}, "south": {"uv": [9.5, 4, 14.5, 8], "texture": "#13"},
"down": {"uv": [10.5, 7.5, 15.5, 8], "texture": "#13"} "down": {"uv": [9.5, 7.5, 14.5, 8], "texture": "#13"}
} }
}, },
{ {
@ -97,9 +93,9 @@
"to": [13, 8, 3], "to": [13, 8, 3],
"rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 9]}, "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 9]},
"faces": { "faces": {
"north": {"uv": [10.5, 4, 15.5, 8], "texture": "#13"}, "north": {"uv": [9.5, 4, 14.5, 8], "texture": "#13"},
"south": {"uv": [10.5, 4, 15.5, 8], "texture": "#13"}, "south": {"uv": [9.5, 4, 14.5, 8], "texture": "#13"},
"down": {"uv": [10.5, 7.5, 15.5, 8], "texture": "#13"} "down": {"uv": [9.5, 7.5, 14.5, 8], "texture": "#13"}
} }
} }
], ],

View file

@ -0,0 +1,152 @@
{
"credit": "Made with Blockbench",
"parent": "block/block",
"textures": {
"2": "create:block/chute_diagonal",
"13": "create:block/chute",
"particle": "block/hopper_outside"
},
"elements": [
{
"from": [2, 8, 2],
"to": [14, 16, 14],
"faces": {
"north": {"uv": [9, 4, 15, 8], "rotation": 180, "texture": "#13"},
"east": {"uv": [9, 4, 15, 8], "rotation": 180, "texture": "#13"},
"south": {"uv": [9, 4, 15, 8], "rotation": 180, "texture": "#13"},
"west": {"uv": [9, 4, 15, 8], "rotation": 180, "texture": "#13"},
"up": {"uv": [5, 10, 11, 16], "texture": "#2"},
"down": {"uv": [9, 11, 15, 15], "texture": "#13"}
}
},
{
"from": [2, 5.5, 2],
"to": [14, 8, 14],
"faces": {
"north": {"uv": [9, 10.5, 15, 14.5], "rotation": 180, "texture": "#13"},
"east": {"uv": [14.25, 5, 15.5, 11], "rotation": 270, "texture": "#2"},
"south": {"uv": [14.25, 5, 15.5, 11], "rotation": 270, "texture": "#2"},
"west": {"uv": [14.25, 5, 15.5, 11], "rotation": 270, "texture": "#2"},
"up": {"uv": [9, 9.5, 15, 15.5], "texture": "#13"},
"down": {"uv": [9, 11, 15, 15], "texture": "#13"}
}
},
{
"from": [1.9, -12, 7.9],
"to": [14.1, 10.666, 14.1],
"rotation": {"angle": 45, "axis": "x", "origin": [8, 8, 8]},
"faces": {
"north": {"uv": [0, 10, 11, 16], "rotation": 270, "texture": "#2"},
"east": {"uv": [13, 0, 16, 11], "texture": "#2"},
"south": {"uv": [0, 10, 11, 16], "rotation": 270, "texture": "#2"},
"west": {"uv": [13, 0, 16, 11], "rotation": 180, "texture": "#2"},
"up": {"uv": [5, 10, 11, 13], "rotation": 180, "texture": "#2"}
}
},
{
"from": [3, 13, 3],
"to": [13, 14, 13],
"faces": {
"up": {"uv": [11, 11, 16, 16], "rotation": 180, "texture": "#2"}
}
},
{
"from": [1.1, -12, 1.9],
"to": [14.9, 10.666, 8.1],
"rotation": {"angle": 45, "axis": "x", "origin": [8, 8, 8]},
"faces": {
"north": {"uv": [0, 3, 11, 10], "rotation": 90, "texture": "#2"},
"east": {"uv": [0, 0, 11, 3], "rotation": 270, "texture": "#2"},
"south": {"uv": [0, 3, 11, 10], "rotation": 90, "texture": "#2"},
"west": {"uv": [0, 0, 11, 3], "rotation": 90, "texture": "#2"},
"up": {"uv": [8.5, 0, 15.5, 3], "rotation": 180, "texture": "#13"}
}
}
],
"display": {
"thirdperson_righthand": {
"rotation": [75, 45, 0],
"translation": [0, 2.5, 0],
"scale": [0.375, 0.375, 0.375]
},
"thirdperson_lefthand": {
"rotation": [75, 45, 0],
"translation": [0, 2.5, 0],
"scale": [0.375, 0.375, 0.375]
},
"firstperson_righthand": {
"rotation": [0, 45, 0],
"scale": [0.4, 0.4, 0.4]
},
"firstperson_lefthand": {
"rotation": [0, 225, 0],
"scale": [0.4, 0.4, 0.4]
},
"ground": {
"translation": [0, 3.25, 0],
"scale": [0.25, 0.25, 0.25]
},
"gui": {
"rotation": [30, 225, 0],
"translation": [0, 1, 0],
"scale": [0.5, 0.5, 0.5]
},
"head": {
"rotation": [0, 90, 0]
},
"fixed": {
"rotation": [0, 90, 0],
"translation": [0, 1.5, 0],
"scale": [0.5, 0.5, 0.5]
}
},
"groups": [
{
"name": "group",
"origin": [8, 24, -24],
"children": [0]
},
{
"name": "alt_block_diagonal_start",
"origin": [8, 8, 8],
"children": [
{
"name": "group",
"origin": [8, 56, -56],
"children": [1]
},
{
"name": "alt_block_diagonal_straight",
"origin": [8, 8, 8],
"children": [
{
"name": "group",
"origin": [8, 8, -8],
"children": [2]
},
{
"name": "group",
"origin": [8, 8, -8],
"children": []
}
]
}, 3]
},
{
"name": "alt_block_diagonal_straight",
"origin": [8, 8, 8],
"children": [
{
"name": "group",
"origin": [8, 8, -8],
"children": [4]
},
{
"name": "group",
"origin": [8, 8, -8],
"children": []
}
]
}
]
}

View file

@ -0,0 +1,156 @@
{
"credit": "Made with Blockbench",
"parent": "block/block",
"textures": {
"2": "create:block/chute_diagonal",
"13": "create:block/chute",
"particle": "block/hopper_outside"
},
"elements": [
{
"from": [3, 8, 13],
"to": [13, 16, 15],
"faces": {
"north": {"uv": [9.5, 0, 14.5, 4], "texture": "#13"},
"south": {"uv": [9.5, 0, 14.5, 4], "texture": "#13"},
"up": {"uv": [1, 0, 6, 1], "rotation": 180, "texture": "#13"},
"down": {"uv": [1, 6, 6, 7], "rotation": 180, "texture": "#13"}
}
},
{
"from": [3, 8, 1],
"to": [13, 16, 3],
"faces": {
"north": {"uv": [9.5, 0, 14.5, 4], "texture": "#13"},
"south": {"uv": [9.5, 0, 14.5, 4], "texture": "#13"},
"up": {"uv": [1, 0, 6, 1], "texture": "#13"},
"down": {"uv": [1, 6, 6, 7], "texture": "#13"}
}
},
{
"from": [13, 8, 1],
"to": [15, 16, 15],
"faces": {
"north": {"uv": [8.5, 0, 9.5, 4], "texture": "#13"},
"east": {"uv": [8.5, 0, 15.5, 4], "texture": "#13"},
"south": {"uv": [14.5, 0, 15.5, 4], "texture": "#13"},
"west": {"uv": [8.5, 0, 15.5, 4], "texture": "#13"},
"up": {"uv": [0, 0, 1, 7], "rotation": 180, "texture": "#13"},
"down": {"uv": [0, 0, 1, 7], "rotation": 180, "texture": "#13"}
}
},
{
"from": [1, 8, 1],
"to": [3, 16, 15],
"faces": {
"north": {"uv": [14.5, 0, 15.5, 4], "texture": "#13"},
"east": {"uv": [8.5, 0, 15.5, 4], "texture": "#13"},
"south": {"uv": [8.5, 0, 9.5, 4], "texture": "#13"},
"west": {"uv": [8.5, 0, 15.5, 4], "texture": "#13"},
"up": {"uv": [0, 0, 1, 7], "texture": "#13"},
"down": {"uv": [0, 0, 1, 7], "texture": "#13"}
}
},
{
"from": [2, 5.5, 2],
"to": [14, 8, 14],
"faces": {
"north": {"uv": [9, 10.5, 15, 14.5], "rotation": 180, "texture": "#13"},
"east": {"uv": [14.25, 5, 15.5, 11], "rotation": 270, "texture": "#2"},
"south": {"uv": [14.25, 5, 15.5, 11], "rotation": 270, "texture": "#2"},
"west": {"uv": [14.25, 5, 15.5, 11], "rotation": 270, "texture": "#2"},
"up": {"uv": [9, 9.5, 15, 15.5], "texture": "#13"},
"down": {"uv": [9, 11, 15, 15], "texture": "#13"}
}
},
{
"from": [1.9, -12, 7.9],
"to": [14.1, 10.666, 14.1],
"rotation": {"angle": 45, "axis": "x", "origin": [8, 8, 8]},
"faces": {
"north": {"uv": [6, 10, 9, 16], "rotation": 90, "texture": "#13"},
"east": {"uv": [13, 0, 16, 11], "texture": "#2"},
"south": {"uv": [0, 10, 11, 16], "rotation": 270, "texture": "#2"},
"west": {"uv": [13, 0, 16, 11], "rotation": 180, "texture": "#2"},
"up": {"uv": [5, 10, 11, 13], "rotation": 180, "texture": "#2"}
}
},
{
"from": [1.1, -12, 1.9],
"to": [14.9, 8.666, 8.1],
"rotation": {"angle": 45, "axis": "x", "origin": [8, 8, 8]},
"faces": {
"north": {"uv": [1, 3, 11, 10], "rotation": 90, "texture": "#2"},
"east": {"uv": [1, 0, 11, 3], "rotation": 270, "texture": "#2"},
"south": {"uv": [1, 3, 11, 10], "rotation": 90, "texture": "#2"},
"west": {"uv": [1, 0, 11, 3], "rotation": 90, "texture": "#2"}
}
},
{
"from": [3, 13, 3],
"to": [13, 14, 13],
"faces": {
"up": {"uv": [11, 11, 16, 16], "rotation": 180, "texture": "#2"}
}
}
],
"display": {
"thirdperson_righthand": {
"rotation": [75, 45, 0],
"translation": [0, 2.5, 0],
"scale": [0.375, 0.375, 0.375]
},
"thirdperson_lefthand": {
"rotation": [75, 45, 0],
"translation": [0, 2.5, 0],
"scale": [0.375, 0.375, 0.375]
},
"firstperson_righthand": {
"rotation": [0, 45, 0],
"scale": [0.4, 0.4, 0.4]
},
"firstperson_lefthand": {
"rotation": [0, 225, 0],
"scale": [0.4, 0.4, 0.4]
},
"ground": {
"translation": [0, 3.25, 0],
"scale": [0.25, 0.25, 0.25]
},
"gui": {
"rotation": [30, 225, 0],
"translation": [0, 1, 0],
"scale": [0.5, 0.5, 0.5]
},
"head": {
"rotation": [0, 90, 0]
},
"fixed": {
"rotation": [0, 90, 0],
"translation": [0, 1.5, 0],
"scale": [0.5, 0.5, 0.5]
}
},
"groups": [
{
"name": "group",
"origin": [8, 56, -56],
"children": [0, 1, 2, 3, 4]
},
{
"name": "alt_block_diagonal_straight",
"origin": [8, 8, 8],
"children": [
{
"name": "group",
"origin": [8, 8, -8],
"children": [5, 6]
},
{
"name": "group",
"origin": [8, 8, -8],
"children": []
}
]
}, 7]
}

View file

@ -0,0 +1,82 @@
{
"credit": "Made with Blockbench",
"parent": "block/block",
"textures": {
"2": "create:block/chute_diagonal",
"13": "create:block/chute",
"particle": "block/hopper_outside"
},
"elements": [
{
"from": [1.9, -12, 7.9],
"to": [14.1, 10.666, 14.1],
"rotation": {"angle": 45, "axis": "x", "origin": [8, 8, 8]},
"faces": {
"north": {"uv": [6, 10, 9, 16], "rotation": 90, "texture": "#13"},
"east": {"uv": [13, 0, 16, 11], "texture": "#2"},
"south": {"uv": [0, 10, 11, 16], "rotation": 270, "texture": "#2"},
"west": {"uv": [13, 0, 16, 11], "rotation": 180, "texture": "#2"}
}
},
{
"from": [1.1, -12, 1.9],
"to": [14.9, 10.666, 8.1],
"rotation": {"angle": 45, "axis": "x", "origin": [8, 8, 8]},
"faces": {
"north": {"uv": [0, 3, 11, 10], "rotation": 90, "texture": "#2"},
"east": {"uv": [0, 0, 11, 3], "rotation": 270, "texture": "#2"},
"south": {"uv": [0, 3, 11, 10], "rotation": 90, "texture": "#2"},
"west": {"uv": [0, 0, 11, 3], "rotation": 90, "texture": "#2"}
}
}
],
"display": {
"thirdperson_righthand": {
"rotation": [75, 45, 0],
"translation": [0, 2.5, 0],
"scale": [0.375, 0.375, 0.375]
},
"thirdperson_lefthand": {
"rotation": [75, 45, 0],
"translation": [0, 2.5, 0],
"scale": [0.375, 0.375, 0.375]
},
"firstperson_righthand": {
"rotation": [0, 45, 0],
"scale": [0.4, 0.4, 0.4]
},
"firstperson_lefthand": {
"rotation": [0, 225, 0],
"scale": [0.4, 0.4, 0.4]
},
"ground": {
"translation": [0, 3.25, 0],
"scale": [0.25, 0.25, 0.25]
},
"gui": {
"rotation": [30, 225, 0],
"translation": [0, 1, 0],
"scale": [0.5, 0.5, 0.5]
},
"head": {
"rotation": [0, 90, 0]
},
"fixed": {
"rotation": [0, 90, 0],
"translation": [0, 1.5, 0],
"scale": [0.5, 0.5, 0.5]
}
},
"groups": [
{
"name": "group",
"origin": [8, 8, -8],
"children": [0, 1]
},
{
"name": "group",
"origin": [8, 8, -8],
"children": []
}
]
}

View file

@ -3,59 +3,155 @@
"parent": "block/block", "parent": "block/block",
"textures": { "textures": {
"13": "create:block/chute", "13": "create:block/chute",
"particle": "create:block/zinc_block" "particle": "block/hopper_outside"
}, },
"elements": [ "elements": [
{ {
"from": [3, 8, 1], "from": [13, 13, 1],
"to": [13, 16, 3],
"rotation": {"angle": 0, "axis": "y", "origin": [11, 16, -3]},
"faces": {
"north": {"uv": [1, 12, 6, 16], "texture": "#13"},
"east": {"uv": [9, 0, 16, 4], "texture": "#13"},
"south": {"uv": [1, 12, 6, 16], "texture": "#13"},
"west": {"uv": [9, 0, 16, 4], "texture": "#13"},
"up": {"uv": [1, 0, 6, 1], "texture": "#13"},
"down": {"uv": [1, 6, 6, 7], "texture": "#13"}
}
},
{
"from": [13, 8, 1],
"to": [15, 16, 15], "to": [15, 16, 15],
"rotation": {"angle": 0, "axis": "y", "origin": [9, 16, 9]}, "rotation": {"angle": 0, "axis": "y", "origin": [9, 16, 9]},
"faces": { "faces": {
"north": {"uv": [9, 0, 10, 4], "texture": "#13"}, "north": {"uv": [8.5, 0, 9.5, 1.5], "texture": "#13"},
"east": {"uv": [0, 12, 7, 16], "texture": "#13"}, "east": {"uv": [8.5, 0, 15.5, 1.5], "texture": "#13"},
"south": {"uv": [15, 0, 16, 4], "texture": "#13"}, "south": {"uv": [14.5, 0, 15.5, 1.5], "texture": "#13"},
"west": {"uv": [0, 12, 7, 16], "texture": "#13"}, "west": {"uv": [8.5, 0, 15.5, 1.5], "texture": "#13"},
"up": {"uv": [6, 0, 7, 7], "texture": "#13"}, "up": {"uv": [6, 0, 7, 7], "texture": "#13"},
"down": {"uv": [6, 0, 7, 7], "texture": "#13"} "down": {"uv": [6, 0, 7, 7], "texture": "#13"}
} }
}, },
{ {
"from": [3, 8, 13], "from": [3, 13, 13],
"to": [13, 16, 15], "to": [13, 16, 15],
"rotation": {"angle": 0, "axis": "y", "origin": [9, 16, 9]},
"faces": {
"north": {"uv": [9.5, 0, 14.5, 1.5], "texture": "#13"},
"south": {"uv": [9.5, 0, 14.5, 1.5], "texture": "#13"},
"up": {"uv": [1, 6, 6, 7], "texture": "#13"},
"down": {"uv": [1, 6, 6, 7], "texture": "#13"}
}
},
{
"from": [12, 8, 13],
"to": [13, 13, 15],
"rotation": {"angle": 0, "axis": "y", "origin": [11, 16, 9]}, "rotation": {"angle": 0, "axis": "y", "origin": [11, 16, 9]},
"faces": { "faces": {
"north": {"uv": [1, 12, 6, 16], "texture": "#13"}, "north": {"uv": [9.5, 1.5, 10, 4], "texture": "#13"},
"east": {"uv": [9, 0, 16, 4], "texture": "#13"}, "east": {"uv": [9, 0, 16, 4], "texture": "#13"},
"south": {"uv": [1, 12, 6, 16], "texture": "#13"}, "south": {"uv": [14, 1.5, 14.5, 4], "texture": "#13"},
"west": {"uv": [9, 0, 16, 4], "texture": "#13"}, "west": {"uv": [13, 1.5, 14, 4], "texture": "#13"},
"down": {"uv": [5.5, 0, 6, 1], "texture": "#13"}
}
},
{
"from": [12, 8, 1],
"to": [13, 13, 3],
"rotation": {"angle": 0, "axis": "y", "origin": [11, 16, 7]},
"faces": {
"north": {"uv": [9.5, 1.5, 10, 4], "texture": "#13"},
"east": {"uv": [16, 0, 9, 4], "texture": "#13"},
"south": {"uv": [10, 1.5, 9.5, 4], "texture": "#13"},
"west": {"uv": [14, 1.5, 13, 4], "texture": "#13"},
"down": {"uv": [5.5, 1, 6, 0], "texture": "#13"}
}
},
{
"from": [13, 8, 12],
"to": [15, 13, 15],
"rotation": {"angle": 0, "axis": "y", "origin": [11, 16, 9]},
"faces": {
"north": {"uv": [10, 1.5, 11, 4], "texture": "#13"},
"east": {"uv": [8.5, 1.5, 10, 4], "texture": "#13"},
"south": {"uv": [14.5, 1.5, 15.5, 4], "texture": "#13"},
"west": {"uv": [14, 1.5, 15.5, 4], "texture": "#13"},
"up": {"uv": [1, 6, 6, 7], "texture": "#13"}, "up": {"uv": [1, 6, 6, 7], "texture": "#13"},
"down": {"uv": [1, 0, 6, 1], "texture": "#13"} "down": {"uv": [6, 0, 7, 1.5], "texture": "#13"}
}
},
{
"from": [13, 8, 1],
"to": [15, 13, 4],
"rotation": {"angle": 0, "axis": "y", "origin": [11, 16, 7]},
"faces": {
"north": {"uv": [8.5, 1.5, 9.5, 4], "texture": "#13"},
"east": {"uv": [14, 1.5, 15.5, 4], "texture": "#13"},
"south": {"uv": [13, 1.5, 14, 4], "texture": "#13"},
"west": {"uv": [15.5, 1.5, 14, 4], "texture": "#13"},
"up": {"uv": [1, 7, 6, 6], "texture": "#13"},
"down": {"uv": [6, 1.5, 7, 0], "texture": "#13"}
}
},
{
"from": [1, 13, 1],
"to": [3, 16, 15],
"rotation": {"angle": 0, "axis": "y", "origin": [7, 16, 7]},
"faces": {
"north": {"uv": [14.5, 0, 15.5, 1.5], "texture": "#13"},
"east": {"uv": [8.5, 0, 15.5, 1.5], "texture": "#13"},
"south": {"uv": [8.5, 0, 9.5, 1.5], "texture": "#13"},
"west": {"uv": [8.5, 0, 15.5, 1.5], "texture": "#13"},
"up": {"uv": [6, 0, 7, 7], "rotation": 180, "texture": "#13"},
"down": {"uv": [6, 0, 7, 7], "rotation": 180, "texture": "#13"}
}
},
{
"from": [3, 13, 1],
"to": [13, 16, 3],
"rotation": {"angle": 0, "axis": "y", "origin": [7, 16, 7]},
"faces": {
"north": {"uv": [9.5, 0, 14.5, 1.5], "texture": "#13"},
"south": {"uv": [9.5, 0, 14.5, 1.5], "texture": "#13"},
"up": {"uv": [1, 6, 6, 7], "rotation": 180, "texture": "#13"},
"down": {"uv": [1, 6, 6, 7], "rotation": 180, "texture": "#13"}
}
},
{
"from": [3, 8, 1],
"to": [4, 13, 3],
"rotation": {"angle": 0, "axis": "y", "origin": [5, 16, 7]},
"faces": {
"north": {"uv": [14, 1.5, 14.5, 4], "texture": "#13"},
"east": {"uv": [13, 1.5, 14, 4], "texture": "#13"},
"south": {"uv": [9.5, 1.5, 10, 4], "texture": "#13"},
"west": {"uv": [9, 0, 16, 4], "texture": "#13"},
"down": {"uv": [5.5, 0, 6, 1], "rotation": 180, "texture": "#13"}
}
},
{
"from": [3, 8, 13],
"to": [4, 13, 15],
"rotation": {"angle": 0, "axis": "y", "origin": [5, 16, 9]},
"faces": {
"north": {"uv": [10, 1.5, 9.5, 4], "texture": "#13"},
"east": {"uv": [14, 1.5, 13, 4], "texture": "#13"},
"south": {"uv": [9.5, 1.5, 10, 4], "texture": "#13"},
"west": {"uv": [16, 0, 9, 4], "texture": "#13"},
"down": {"uv": [5.5, 1, 6, 0], "rotation": 180, "texture": "#13"}
} }
}, },
{ {
"from": [1, 8, 1], "from": [1, 8, 1],
"to": [3, 16, 15], "to": [3, 13, 4],
"rotation": {"angle": 0, "axis": "y", "origin": [9, 16, 9]}, "rotation": {"angle": 0, "axis": "y", "origin": [5, 16, 7]},
"faces": { "faces": {
"north": {"uv": [15, 0, 16, 4], "texture": "#13"}, "north": {"uv": [14.5, 1.5, 15.5, 4], "texture": "#13"},
"east": {"uv": [0, 12, 7, 16], "texture": "#13"}, "east": {"uv": [14, 1.5, 15.5, 4], "texture": "#13"},
"south": {"uv": [9, 0, 10, 4], "texture": "#13"}, "south": {"uv": [10, 1.5, 11, 4], "texture": "#13"},
"west": {"uv": [0, 12, 7, 16], "texture": "#13"}, "west": {"uv": [8.5, 1.5, 10, 4], "texture": "#13"},
"up": {"uv": [0, 0, 1, 7], "texture": "#13"}, "up": {"uv": [1, 6, 6, 7], "rotation": 180, "texture": "#13"},
"down": {"uv": [0, 0, 1, 7], "texture": "#13"} "down": {"uv": [6, 0, 7, 1.5], "rotation": 180, "texture": "#13"}
}
},
{
"from": [1, 8, 12],
"to": [3, 13, 15],
"rotation": {"angle": 0, "axis": "y", "origin": [5, 16, 9]},
"faces": {
"north": {"uv": [13, 1.5, 14, 4], "texture": "#13"},
"east": {"uv": [15.5, 1.5, 14, 4], "texture": "#13"},
"south": {"uv": [8.5, 1.5, 9.5, 4], "texture": "#13"},
"west": {"uv": [14, 1.5, 15.5, 4], "texture": "#13"},
"up": {"uv": [1, 7, 6, 6], "rotation": 180, "texture": "#13"},
"down": {"uv": [6, 1.5, 7, 0], "rotation": 180, "texture": "#13"}
} }
}, },
{ {
@ -63,11 +159,11 @@
"to": [14, 8, 14], "to": [14, 8, 14],
"rotation": {"angle": 0, "axis": "y", "origin": [9, 8, 9]}, "rotation": {"angle": 0, "axis": "y", "origin": [9, 8, 9]},
"faces": { "faces": {
"north": {"uv": [10, 4, 10.5, 8], "texture": "#13"}, "north": {"uv": [0, 9.5, 0.5, 13.5], "texture": "#13"},
"east": {"uv": [10, 4, 16, 8], "texture": "#13"}, "east": {"uv": [0, 9.5, 6, 13.5], "texture": "#13"},
"south": {"uv": [15.5, 4, 16, 8], "texture": "#13"}, "south": {"uv": [5.5, 9.5, 6, 13.5], "texture": "#13"},
"west": {"uv": [10, 4, 16, 8], "texture": "#13"}, "west": {"uv": [0, 9.5, 6, 13.5], "texture": "#13"},
"down": {"uv": [10, 7.5, 16, 8], "rotation": 90, "texture": "#13"} "down": {"uv": [9, 7.5, 15, 8], "rotation": 90, "texture": "#13"}
} }
}, },
{ {
@ -75,11 +171,11 @@
"to": [3, 8, 14], "to": [3, 8, 14],
"rotation": {"angle": 0, "axis": "y", "origin": [9, 8, 9]}, "rotation": {"angle": 0, "axis": "y", "origin": [9, 8, 9]},
"faces": { "faces": {
"north": {"uv": [15.5, 4, 16, 8], "texture": "#13"}, "north": {"uv": [5.5, 9.5, 6, 13.5], "texture": "#13"},
"east": {"uv": [10, 4, 16, 8], "texture": "#13"}, "east": {"uv": [0, 9.5, 6, 13.5], "texture": "#13"},
"south": {"uv": [10, 4, 10.5, 8], "texture": "#13"}, "south": {"uv": [0, 9.5, 0.5, 13.5], "texture": "#13"},
"west": {"uv": [10, 4, 16, 8], "texture": "#13"}, "west": {"uv": [0, 9.5, 6, 13.5], "texture": "#13"},
"down": {"uv": [10, 7.5, 16, 8], "rotation": 90, "texture": "#13"} "down": {"uv": [9, 7.5, 15, 8], "rotation": 90, "texture": "#13"}
} }
}, },
{ {
@ -87,9 +183,9 @@
"to": [13, 8, 14], "to": [13, 8, 14],
"rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 20]}, "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 20]},
"faces": { "faces": {
"north": {"uv": [10.5, 4, 15.5, 8], "texture": "#13"}, "north": {"uv": [0.5, 9.5, 5.5, 13.5], "texture": "#13"},
"south": {"uv": [10.5, 4, 15.5, 8], "texture": "#13"}, "south": {"uv": [0.5, 9.5, 5.5, 13.5], "texture": "#13"},
"down": {"uv": [10.5, 7.5, 15.5, 8], "texture": "#13"} "down": {"uv": [9.5, 7.5, 14.5, 8], "texture": "#13"}
} }
}, },
{ {
@ -97,9 +193,49 @@
"to": [13, 8, 3], "to": [13, 8, 3],
"rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 9]}, "rotation": {"angle": 0, "axis": "y", "origin": [8, 8, 9]},
"faces": { "faces": {
"north": {"uv": [10.5, 4, 15.5, 8], "texture": "#13"}, "north": {"uv": [0.5, 9.5, 5.5, 13.5], "texture": "#13"},
"south": {"uv": [10.5, 4, 15.5, 8], "texture": "#13"}, "south": {"uv": [0.5, 9.5, 5.5, 13.5], "texture": "#13"},
"down": {"uv": [10.5, 7.5, 15.5, 8], "texture": "#13"} "down": {"uv": [9.5, 7.5, 14.5, 8], "texture": "#13"}
}
},
{
"from": [2, 8, 2],
"to": [14, 13, 3],
"faces": {
"north": {"uv": [0, 7, 6, 9.5], "texture": "#13"},
"east": {"uv": [0, 7, 6, 9.5], "texture": "#13"},
"south": {"uv": [0, 7, 6, 9.5], "texture": "#13"},
"west": {"uv": [0, 7, 6, 9.5], "texture": "#13"}
}
},
{
"from": [13, 8, 2],
"to": [14, 13, 14],
"faces": {
"north": {"uv": [0, 7, 6, 9.5], "texture": "#13"},
"east": {"uv": [0, 7, 6, 9.5], "texture": "#13"},
"south": {"uv": [0, 7, 6, 9.5], "texture": "#13"},
"west": {"uv": [0, 7, 6, 9.5], "texture": "#13"}
}
},
{
"from": [2, 8, 13],
"to": [14, 13, 14],
"faces": {
"north": {"uv": [0, 7, 6, 9.5], "texture": "#13"},
"east": {"uv": [0, 7, 6, 9.5], "texture": "#13"},
"south": {"uv": [0, 7, 6, 9.5], "texture": "#13"},
"west": {"uv": [0, 7, 6, 9.5], "texture": "#13"}
}
},
{
"from": [2, 8, 2],
"to": [3, 13, 14],
"faces": {
"north": {"uv": [0, 7, 6, 9.5], "texture": "#13"},
"east": {"uv": [0, 7, 6, 9.5], "texture": "#13"},
"south": {"uv": [0, 7, 6, 9.5], "texture": "#13"},
"west": {"uv": [0, 7, 6, 9.5], "texture": "#13"}
} }
} }
], ],
@ -107,12 +243,17 @@
{ {
"name": "ChuteTop", "name": "ChuteTop",
"origin": [9, 16, -7], "origin": [9, 16, -7],
"children": [0, 1, 2, 3] "children": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
}, },
{ {
"name": "ChuteBase", "name": "ChuteBase",
"origin": [8, 8, -7], "origin": [8, 8, -7],
"children": [4, 5, 6, 7] "children": [12, 13, 14, 15]
},
{
"name": "windows",
"origin": [8, 8, 8],
"children": [16, 17, 18, 19]
} }
] ]
} }

View file

@ -0,0 +1,138 @@
{
"credit": "Made with Blockbench",
"parent": "block/block",
"textures": {
"13": "create:block/chute",
"particle": "create:block/brass_block"
},
"elements": [
{
"from": [3, 8, 1],
"to": [13, 16, 3],
"rotation": {"angle": 0, "axis": "y", "origin": [11, 16, -3]},
"faces": {
"north": {"uv": [9.5, 0, 14.5, 4], "texture": "#13"},
"south": {"uv": [9.5, 0, 14.5, 4], "texture": "#13"},
"up": {"uv": [1, 0, 6, 1], "texture": "#13"},
"down": {"uv": [1, 6, 6, 7], "texture": "#13"}
}
},
{
"from": [3, 8, 13],
"to": [13, 16, 15],
"rotation": {"angle": 0, "axis": "y", "origin": [5, 16, 19]},
"faces": {
"north": {"uv": [9.5, 0, 14.5, 4], "texture": "#13"},
"south": {"uv": [9.5, 0, 14.5, 4], "texture": "#13"},
"up": {"uv": [1, 0, 6, 1], "rotation": 180, "texture": "#13"},
"down": {"uv": [1, 6, 6, 7], "rotation": 180, "texture": "#13"}
}
},
{
"from": [1, 8, 1],
"to": [3, 16, 15],
"rotation": {"angle": 0, "axis": "y", "origin": [9, 16, 9]},
"faces": {
"north": {"uv": [14.5, 0, 15.5, 4], "texture": "#13"},
"east": {"uv": [8.5, 0, 15.5, 4], "texture": "#13"},
"south": {"uv": [8.5, 0, 9.5, 4], "texture": "#13"},
"west": {"uv": [8.5, 0, 15.5, 4], "texture": "#13"},
"up": {"uv": [0, 0, 1, 7], "texture": "#13"},
"down": {"uv": [0, 0, 1, 7], "texture": "#13"}
}
},
{
"from": [13, 8, 1],
"to": [15, 16, 15],
"rotation": {"angle": 0, "axis": "y", "origin": [7, 16, 7]},
"faces": {
"north": {"uv": [8.5, 0, 9.5, 4], "texture": "#13"},
"east": {"uv": [8.5, 0, 15.5, 4], "texture": "#13"},
"south": {"uv": [14.5, 0, 15.5, 4], "texture": "#13"},
"west": {"uv": [8.5, 0, 15.5, 4], "texture": "#13"},
"up": {"uv": [0, 0, 1, 7], "rotation": 180, "texture": "#13"},
"down": {"uv": [0, 0, 1, 7], "rotation": 180, "texture": "#13"}
}
},
{
"from": [2, 5.7, 2],
"to": [14, 8.7, 14],
"rotation": {"angle": 0, "axis": "y", "origin": [8, -24, 56]},
"faces": {
"north": {"uv": [7.5, 10, 9, 16], "rotation": 90, "texture": "#13"},
"east": {"uv": [7.5, 10, 9, 16], "rotation": 90, "texture": "#13"},
"south": {"uv": [9, 10.5, 15, 14.5], "rotation": 180, "texture": "#13"},
"west": {"uv": [9, 11, 15, 15], "rotation": 180, "texture": "#13"},
"up": {"uv": [9, 9.5, 15, 15.5], "rotation": 180, "texture": "#13"},
"down": {"uv": [9, 11, 15, 15], "rotation": 180, "texture": "#13"}
}
},
{
"from": [2.1, 4, 2.1],
"to": [13.9, 10.666, 13.9],
"rotation": {"angle": -45, "axis": "x", "origin": [8, 8, 8]},
"faces": {
"north": {"uv": [6, 10, 9, 16], "rotation": 90, "texture": "#13"},
"east": {"uv": [6, 10, 9, 16], "rotation": 90, "texture": "#13"},
"west": {"uv": [6, 10, 9, 16], "rotation": 90, "texture": "#13"}
}
},
{
"from": [1.9, -12, 1.9],
"to": [14.1, 4, 14.1],
"rotation": {"angle": -45, "axis": "x", "origin": [8, 8, 8]},
"faces": {
"north": {"uv": [9, 8, 15, 16], "texture": "#13"},
"east": {"uv": [9, 8, 15, 16], "texture": "#13"},
"south": {"uv": [9, 8, 15, 16], "texture": "#13"},
"west": {"uv": [9, 8, 15, 16], "texture": "#13"},
"up": {"uv": [9, 9, 15, 15], "texture": "#13"},
"down": {"uv": [9, 9, 15, 15], "texture": "#13"}
}
}
],
"display": {
"thirdperson_righthand": {
"rotation": [75, 45, 0],
"translation": [0, 2.5, 0],
"scale": [0.375, 0.375, 0.375]
},
"thirdperson_lefthand": {
"rotation": [75, 45, 0],
"translation": [0, 2.5, 0],
"scale": [0.375, 0.375, 0.375]
},
"firstperson_righthand": {
"rotation": [0, 45, 0],
"scale": [0.4, 0.4, 0.4]
},
"firstperson_lefthand": {
"rotation": [0, 225, 0],
"scale": [0.4, 0.4, 0.4]
},
"ground": {
"translation": [0, 3.25, 0],
"scale": [0.25, 0.25, 0.25]
},
"gui": {
"rotation": [30, 225, 0],
"translation": [0, 1, 0],
"scale": [0.5, 0.5, 0.5]
},
"head": {
"rotation": [0, 90, 0]
},
"fixed": {
"rotation": [0, 90, 0],
"translation": [0, 1.5, 0],
"scale": [0.5, 0.5, 0.5]
}
},
"groups": [
{
"name": "group",
"origin": [8, 56, -56],
"children": [0, 1, 2, 3, 4, 5, 6]
}
]
}

View file

@ -0,0 +1,77 @@
{
"credit": "Made with Blockbench",
"parent": "block/block",
"textures": {
"13": "create:block/chute",
"particle": "create:block/brass_block"
},
"elements": [
{
"from": [1.9, 4, 1.9],
"to": [14.1, 10.666, 14.1],
"rotation": {"angle": -45, "axis": "x", "origin": [8, 8, 8]},
"faces": {
"north": {"uv": [6, 10, 9, 16], "rotation": 90, "texture": "#13"},
"east": {"uv": [6, 10, 9, 16], "rotation": 90, "texture": "#13"},
"south": {"uv": [6, 10, 9, 16], "rotation": 90, "texture": "#13"},
"west": {"uv": [6, 10, 9, 16], "rotation": 90, "texture": "#13"}
}
},
{
"from": [1.9, -12, 1.9],
"to": [14.1, 4, 14.1],
"rotation": {"angle": -45, "axis": "x", "origin": [8, 8, 8]},
"faces": {
"north": {"uv": [9, 8, 15, 16], "texture": "#13"},
"east": {"uv": [9, 8, 15, 16], "texture": "#13"},
"south": {"uv": [9, 8, 15, 16], "texture": "#13"},
"west": {"uv": [9, 8, 15, 16], "texture": "#13"},
"down": {"uv": [9, 8, 15, 16], "texture": "#13"}
}
}
],
"display": {
"thirdperson_righthand": {
"rotation": [75, 45, 0],
"translation": [0, 2.5, 0],
"scale": [0.375, 0.375, 0.375]
},
"thirdperson_lefthand": {
"rotation": [75, 45, 0],
"translation": [0, 2.5, 0],
"scale": [0.375, 0.375, 0.375]
},
"firstperson_righthand": {
"rotation": [0, 45, 0],
"scale": [0.4, 0.4, 0.4]
},
"firstperson_lefthand": {
"rotation": [0, 225, 0],
"scale": [0.4, 0.4, 0.4]
},
"ground": {
"translation": [0, 3.25, 0],
"scale": [0.25, 0.25, 0.25]
},
"gui": {
"rotation": [30, 225, 0],
"translation": [0, 1, 0],
"scale": [0.5, 0.5, 0.5]
},
"head": {
"rotation": [0, 90, 0]
},
"fixed": {
"rotation": [0, 90, 0],
"translation": [0, 1.5, 0],
"scale": [0.5, 0.5, 0.5]
}
},
"groups": [
{
"name": "group",
"origin": [8, 8, -8],
"children": [0, 1]
}
]
}

View file

@ -0,0 +1,90 @@
{
"credit": "Made with Blockbench",
"parent": "block/block",
"textures": {
"13": "create:block/chute",
"particle": "create:block/brass_block"
},
"elements": [
{
"from": [2, 8, 2],
"to": [14, 16, 14],
"rotation": {"angle": 0, "axis": "y", "origin": [8, -8, 40]},
"faces": {
"north": {"uv": [9, 11, 15, 15], "rotation": 180, "texture": "#13"},
"east": {"uv": [9, 10.5, 15, 14.5], "rotation": 180, "texture": "#13"},
"south": {"uv": [9, 10.5, 15, 14.5], "rotation": 180, "texture": "#13"},
"west": {"uv": [9, 11, 15, 15], "rotation": 180, "texture": "#13"},
"up": {"uv": [9, 9, 15, 15], "rotation": 180, "texture": "#13"},
"down": {"uv": [9, 11, 15, 15], "rotation": 180, "texture": "#13"}
}
},
{
"from": [1.9, 4, 1.9],
"to": [14.1, 10.666, 14.1],
"rotation": {"angle": -45, "axis": "x", "origin": [8, 8, 8]},
"faces": {
"north": {"uv": [6, 10, 9, 16], "rotation": 90, "texture": "#13"},
"east": {"uv": [6, 10, 9, 16], "rotation": 90, "texture": "#13"},
"south": {"uv": [6, 10, 9, 16], "rotation": 90, "texture": "#13"},
"west": {"uv": [6, 10, 9, 16], "rotation": 90, "texture": "#13"}
}
},
{
"from": [1.9, -12, 1.9],
"to": [14.1, 4, 14.1],
"rotation": {"angle": -45, "axis": "x", "origin": [8, 8, 8]},
"faces": {
"north": {"uv": [9, 8, 15, 16], "texture": "#13"},
"east": {"uv": [9, 8, 15, 16], "texture": "#13"},
"south": {"uv": [9, 8, 15, 16], "texture": "#13"},
"west": {"uv": [9, 8, 15, 16], "texture": "#13"},
"down": {"uv": [9, 9, 15, 15], "texture": "#13"}
}
}
],
"display": {
"thirdperson_righthand": {
"rotation": [75, 45, 0],
"translation": [0, 2.5, 0],
"scale": [0.375, 0.375, 0.375]
},
"thirdperson_lefthand": {
"rotation": [75, 45, 0],
"translation": [0, 2.5, 0],
"scale": [0.375, 0.375, 0.375]
},
"firstperson_righthand": {
"rotation": [0, 45, 0],
"scale": [0.4, 0.4, 0.4]
},
"firstperson_lefthand": {
"rotation": [0, 225, 0],
"scale": [0.4, 0.4, 0.4]
},
"ground": {
"translation": [0, 3.25, 0],
"scale": [0.25, 0.25, 0.25]
},
"gui": {
"rotation": [30, 225, 0],
"translation": [0, 1, 0],
"scale": [0.5, 0.5, 0.5]
},
"head": {
"rotation": [0, 90, 0]
},
"fixed": {
"rotation": [0, 90, 0],
"translation": [0, 1.5, 0],
"scale": [0.5, 0.5, 0.5]
}
},
"groups": [
{
"name": "group",
"origin": [8, 24, -24],
"children": [0, 1, 2]
}
]
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB