Belt casing overhaul

- Sideways and Vertical belts can now be reinforced with casing
- Belts can now be reinforced with andesite casing
- Reinforcing belts no longer consumes the casing block
- Reworked reinforced belt models
- Fixed flipped diagonal belt casing once again
- Fixed belts breaking instantly when punched in survival mode
This commit is contained in:
simibubi 2020-07-07 16:03:49 +02:00
parent 0f4d65778e
commit 6511cbcd7b
29 changed files with 916 additions and 512 deletions

View file

@ -16,7 +16,7 @@ a579c40c43dc2174afb66f42d00d0c4a0efaaeee assets\create\blockstates\andesite_bric
82bd82270aff7d51e9239680ef4dd7b5c899ceb0 assets\create\blockstates\andesite_cobblestone_wall.json
398922758a6219544e5b85c91c9cf8a543b437e5 assets\create\blockstates\andesite_pillar.json
f9fa6aa530eb0891a74eadfbebc663172a57147a assets\create\blockstates\basin.json
0051a90014873a4967d74a2be92675ff1826d94a assets\create\blockstates\belt.json
39dc813be2049a42475f93d12f9f2e356139cf1b assets\create\blockstates\belt.json
9bbc9a2dc2428175ae0cadf7537ed6815e3e241d assets\create\blockstates\belt_funnel.json
40d10934934ea142d71fc6ce598b1455c3ad47b4 assets\create\blockstates\belt_observer.json
4325605fbdea60d5f54286c309c825bebcd74b95 assets\create\blockstates\belt_tunnel.json
@ -282,7 +282,7 @@ b7829c2ef2c47188713f8cab21b2c9bc7f9c5b79 assets\create\blockstates\portable_stor
e8b0a401c10d1ba67ed71ba31bd5f9bc28571b65 assets\create\blockstates\powered_toggle_latch.json
3a739f9d4276828d83f2d2750bf3227c87bcd438 assets\create\blockstates\pulley_magnet.json
469e430d96cb0a5e1aaf6b7cc5d401d488c9e600 assets\create\blockstates\pulse_repeater.json
4439fc83a8c7370ab44b211a3fd48abde20a4728 assets\create\blockstates\radial_chassis.json
6fa36883e76e9e403bb429c8f86b8c0d3bba0cff assets\create\blockstates\radial_chassis.json
5e03eb759050c365f9f452ef0659f19a80e1e2f8 assets\create\blockstates\reality_funnel.json
8929677f2cc5354aa19ef182af69f9f0b41eb242 assets\create\blockstates\redstone_contact.json
c29213b77ac0c78d8979c5f6188d2b265696f9b9 assets\create\blockstates\redstone_link.json

View file

@ -131,7 +131,7 @@
"model": "create:block/belt/upward_start"
},
"casing=true,facing=south,part=start,slope=upward": {
"model": "create:block/belt_casing/diagonal_end",
"model": "create:block/belt_casing/diagonal_start",
"y": 180
},
"casing=false,facing=west,part=start,slope=upward": {
@ -139,7 +139,7 @@
"y": 90
},
"casing=true,facing=west,part=start,slope=upward": {
"model": "create:block/belt_casing/diagonal_end",
"model": "create:block/belt_casing/diagonal_start",
"y": 270
},
"casing=false,facing=east,part=start,slope=upward": {
@ -191,7 +191,7 @@
"model": "create:block/belt/upward_end"
},
"casing=true,facing=south,part=end,slope=upward": {
"model": "create:block/belt_casing/diagonal_start",
"model": "create:block/belt_casing/diagonal_end",
"y": 180
},
"casing=false,facing=west,part=end,slope=upward": {
@ -199,7 +199,7 @@
"y": 90
},
"casing=true,facing=west,part=end,slope=upward": {
"model": "create:block/belt_casing/diagonal_start",
"model": "create:block/belt_casing/diagonal_end",
"y": 270
},
"casing=false,facing=east,part=end,slope=upward": {
@ -245,7 +245,7 @@
"y": 180
},
"casing=true,facing=north,part=start,slope=downward": {
"model": "create:block/belt_casing/diagonal_start",
"model": "create:block/belt_casing/diagonal_end",
"y": 180
},
"casing=false,facing=south,part=start,slope=downward": {
@ -267,7 +267,7 @@
"y": 270
},
"casing=true,facing=east,part=start,slope=downward": {
"model": "create:block/belt_casing/diagonal_start",
"model": "create:block/belt_casing/diagonal_end",
"y": 270
},
"casing=false,facing=north,part=middle,slope=downward": {
@ -305,7 +305,7 @@
"y": 180
},
"casing=true,facing=north,part=end,slope=downward": {
"model": "create:block/belt_casing/diagonal_end",
"model": "create:block/belt_casing/diagonal_start",
"y": 180
},
"casing=false,facing=south,part=end,slope=downward": {
@ -327,7 +327,7 @@
"y": 270
},
"casing=true,facing=east,part=end,slope=downward": {
"model": "create:block/belt_casing/diagonal_end",
"model": "create:block/belt_casing/diagonal_start",
"y": 270
},
"casing=false,facing=north,part=pulley,slope=downward": {
@ -366,17 +366,18 @@
"y": 180
},
"casing=true,facing=north,part=start,slope=vertical": {
"model": "create:block/belt_casing/vertical_start",
"model": "create:block/belt_casing/sideways_end",
"x": 90,
"y": 180
"y": 270
},
"casing=false,facing=south,part=start,slope=vertical": {
"model": "create:block/belt/horizontal_start",
"x": 90
},
"casing=true,facing=south,part=start,slope=vertical": {
"model": "create:block/belt_casing/vertical_start",
"x": 90
"model": "create:block/belt_casing/sideways_start",
"x": 90,
"y": 90
},
"casing=false,facing=west,part=start,slope=vertical": {
"model": "create:block/belt/horizontal_end",
@ -384,9 +385,9 @@
"y": 90
},
"casing=true,facing=west,part=start,slope=vertical": {
"model": "create:block/belt_casing/vertical_start",
"model": "create:block/belt_casing/sideways_end",
"x": 90,
"y": 90
"y": 180
},
"casing=false,facing=east,part=start,slope=vertical": {
"model": "create:block/belt/horizontal_start",
@ -394,9 +395,8 @@
"y": 270
},
"casing=true,facing=east,part=start,slope=vertical": {
"model": "create:block/belt_casing/vertical_start",
"x": 90,
"y": 270
"model": "create:block/belt_casing/sideways_start",
"x": 90
},
"casing=false,facing=north,part=middle,slope=vertical": {
"model": "create:block/belt/horizontal_middle",
@ -404,17 +404,18 @@
"y": 180
},
"casing=true,facing=north,part=middle,slope=vertical": {
"model": "create:block/belt_casing/vertical_middle",
"model": "create:block/belt_casing/sideways_middle",
"x": 90,
"y": 180
"y": 270
},
"casing=false,facing=south,part=middle,slope=vertical": {
"model": "create:block/belt/horizontal_middle",
"x": 90
},
"casing=true,facing=south,part=middle,slope=vertical": {
"model": "create:block/belt_casing/vertical_middle",
"x": 90
"model": "create:block/belt_casing/sideways_middle",
"x": 90,
"y": 90
},
"casing=false,facing=west,part=middle,slope=vertical": {
"model": "create:block/belt/horizontal_middle",
@ -422,9 +423,9 @@
"y": 90
},
"casing=true,facing=west,part=middle,slope=vertical": {
"model": "create:block/belt_casing/vertical_middle",
"model": "create:block/belt_casing/sideways_middle",
"x": 90,
"y": 90
"y": 180
},
"casing=false,facing=east,part=middle,slope=vertical": {
"model": "create:block/belt/horizontal_middle",
@ -432,9 +433,8 @@
"y": 270
},
"casing=true,facing=east,part=middle,slope=vertical": {
"model": "create:block/belt_casing/vertical_middle",
"x": 90,
"y": 270
"model": "create:block/belt_casing/sideways_middle",
"x": 90
},
"casing=false,facing=north,part=end,slope=vertical": {
"model": "create:block/belt/horizontal_start",
@ -442,17 +442,18 @@
"y": 180
},
"casing=true,facing=north,part=end,slope=vertical": {
"model": "create:block/belt_casing/vertical_end",
"model": "create:block/belt_casing/sideways_start",
"x": 90,
"y": 180
"y": 270
},
"casing=false,facing=south,part=end,slope=vertical": {
"model": "create:block/belt/horizontal_end",
"x": 90
},
"casing=true,facing=south,part=end,slope=vertical": {
"model": "create:block/belt_casing/vertical_end",
"x": 90
"model": "create:block/belt_casing/sideways_end",
"x": 90,
"y": 90
},
"casing=false,facing=west,part=end,slope=vertical": {
"model": "create:block/belt/horizontal_start",
@ -460,9 +461,9 @@
"y": 90
},
"casing=true,facing=west,part=end,slope=vertical": {
"model": "create:block/belt_casing/vertical_end",
"model": "create:block/belt_casing/sideways_start",
"x": 90,
"y": 90
"y": 180
},
"casing=false,facing=east,part=end,slope=vertical": {
"model": "create:block/belt/horizontal_end",
@ -470,9 +471,8 @@
"y": 270
},
"casing=true,facing=east,part=end,slope=vertical": {
"model": "create:block/belt_casing/vertical_end",
"x": 90,
"y": 270
"model": "create:block/belt_casing/sideways_end",
"x": 90
},
"casing=false,facing=north,part=pulley,slope=vertical": {
"model": "create:block/belt/horizontal_middle",
@ -480,17 +480,18 @@
"y": 180
},
"casing=true,facing=north,part=pulley,slope=vertical": {
"model": "create:block/belt_casing/vertical_pulley",
"model": "create:block/belt_casing/sideways_pulley",
"x": 90,
"y": 180
"y": 270
},
"casing=false,facing=south,part=pulley,slope=vertical": {
"model": "create:block/belt/horizontal_middle",
"x": 90
},
"casing=true,facing=south,part=pulley,slope=vertical": {
"model": "create:block/belt_casing/vertical_pulley",
"x": 90
"model": "create:block/belt_casing/sideways_pulley",
"x": 90,
"y": 90
},
"casing=false,facing=west,part=pulley,slope=vertical": {
"model": "create:block/belt/horizontal_middle",
@ -498,9 +499,9 @@
"y": 90
},
"casing=true,facing=west,part=pulley,slope=vertical": {
"model": "create:block/belt_casing/vertical_pulley",
"model": "create:block/belt_casing/sideways_pulley",
"x": 90,
"y": 90
"y": 180
},
"casing=false,facing=east,part=pulley,slope=vertical": {
"model": "create:block/belt/horizontal_middle",
@ -508,9 +509,8 @@
"y": 270
},
"casing=true,facing=east,part=pulley,slope=vertical": {
"model": "create:block/belt_casing/vertical_pulley",
"x": 90,
"y": 270
"model": "create:block/belt_casing/sideways_pulley",
"x": 90
},
"casing=false,facing=north,part=start,slope=sideways": {
"model": "create:block/belt/sideways_end",
@ -518,7 +518,7 @@
"y": 180
},
"casing=true,facing=north,part=start,slope=sideways": {
"model": "create:block/belt_casing/sideways_start",
"model": "create:block/belt_casing/sideways_end",
"x": 180,
"y": 180
},
@ -534,7 +534,7 @@
"y": 90
},
"casing=true,facing=west,part=start,slope=sideways": {
"model": "create:block/belt_casing/sideways_start",
"model": "create:block/belt_casing/sideways_end",
"x": 180,
"y": 90
},
@ -586,7 +586,7 @@
"y": 180
},
"casing=true,facing=north,part=end,slope=sideways": {
"model": "create:block/belt_casing/sideways_end",
"model": "create:block/belt_casing/sideways_start",
"x": 180,
"y": 180
},
@ -602,7 +602,7 @@
"y": 90
},
"casing=true,facing=west,part=end,slope=sideways": {
"model": "create:block/belt_casing/sideways_end",
"model": "create:block/belt_casing/sideways_start",
"x": 180,
"y": 90
},

View file

@ -89,8 +89,8 @@
},
{
"when": {
"axis": "x",
"sticky_west": "true"
"sticky_west": "true",
"axis": "x"
},
"apply": {
"model": "create:block/radial_chassis_side_x_sticky",
@ -99,8 +99,8 @@
},
{
"when": {
"axis": "y",
"sticky_west": "true"
"sticky_west": "true",
"axis": "y"
},
"apply": {
"model": "create:block/radial_chassis_side_y_sticky",
@ -109,8 +109,8 @@
},
{
"when": {
"axis": "z",
"sticky_west": "true"
"sticky_west": "true",
"axis": "z"
},
"apply": {
"model": "create:block/radial_chassis_side_z_sticky",
@ -119,8 +119,8 @@
},
{
"when": {
"axis": "x",
"sticky_west": "false"
"sticky_west": "false",
"axis": "x"
},
"apply": {
"model": "create:block/radial_chassis_side_x",
@ -129,8 +129,8 @@
},
{
"when": {
"axis": "y",
"sticky_west": "false"
"sticky_west": "false",
"axis": "y"
},
"apply": {
"model": "create:block/radial_chassis_side_y",
@ -139,8 +139,8 @@
},
{
"when": {
"axis": "z",
"sticky_west": "false"
"sticky_west": "false",
"axis": "z"
},
"apply": {
"model": "create:block/radial_chassis_side_z",
@ -149,8 +149,8 @@
},
{
"when": {
"axis": "x",
"sticky_north": "true"
"sticky_north": "true",
"axis": "x"
},
"apply": {
"model": "create:block/radial_chassis_side_x_sticky"
@ -158,8 +158,8 @@
},
{
"when": {
"axis": "y",
"sticky_north": "true"
"sticky_north": "true",
"axis": "y"
},
"apply": {
"model": "create:block/radial_chassis_side_y_sticky",
@ -168,8 +168,8 @@
},
{
"when": {
"axis": "z",
"sticky_north": "true"
"sticky_north": "true",
"axis": "z"
},
"apply": {
"model": "create:block/radial_chassis_side_x_sticky",
@ -178,8 +178,8 @@
},
{
"when": {
"axis": "x",
"sticky_north": "false"
"sticky_north": "false",
"axis": "x"
},
"apply": {
"model": "create:block/radial_chassis_side_x"
@ -187,8 +187,8 @@
},
{
"when": {
"axis": "y",
"sticky_north": "false"
"sticky_north": "false",
"axis": "y"
},
"apply": {
"model": "create:block/radial_chassis_side_y",
@ -197,8 +197,8 @@
},
{
"when": {
"axis": "z",
"sticky_north": "false"
"sticky_north": "false",
"axis": "z"
},
"apply": {
"model": "create:block/radial_chassis_side_x",
@ -207,8 +207,8 @@
},
{
"when": {
"axis": "x",
"sticky_east": "true"
"sticky_east": "true",
"axis": "x"
},
"apply": {
"model": "create:block/radial_chassis_side_x_sticky",
@ -217,8 +217,8 @@
},
{
"when": {
"axis": "y",
"sticky_east": "true"
"sticky_east": "true",
"axis": "y"
},
"apply": {
"model": "create:block/radial_chassis_side_y_sticky",
@ -227,8 +227,8 @@
},
{
"when": {
"axis": "z",
"sticky_east": "true"
"sticky_east": "true",
"axis": "z"
},
"apply": {
"model": "create:block/radial_chassis_side_z_sticky"
@ -236,8 +236,8 @@
},
{
"when": {
"axis": "x",
"sticky_east": "false"
"sticky_east": "false",
"axis": "x"
},
"apply": {
"model": "create:block/radial_chassis_side_x",
@ -246,8 +246,8 @@
},
{
"when": {
"axis": "y",
"sticky_east": "false"
"sticky_east": "false",
"axis": "y"
},
"apply": {
"model": "create:block/radial_chassis_side_y",
@ -256,8 +256,8 @@
},
{
"when": {
"axis": "z",
"sticky_east": "false"
"sticky_east": "false",
"axis": "z"
},
"apply": {
"model": "create:block/radial_chassis_side_z"

View file

@ -62,6 +62,7 @@ import com.simibubi.create.content.contraptions.relays.advanced.sequencer.Sequen
import com.simibubi.create.content.contraptions.relays.belt.BeltBlock;
import com.simibubi.create.content.contraptions.relays.belt.BeltColor;
import com.simibubi.create.content.contraptions.relays.belt.BeltGenerator;
import com.simibubi.create.content.contraptions.relays.belt.BeltModel;
import com.simibubi.create.content.contraptions.relays.elementary.CogWheelBlock;
import com.simibubi.create.content.contraptions.relays.elementary.CogwheelBlockItem;
import com.simibubi.create.content.contraptions.relays.elementary.ShaftBlock;
@ -267,9 +268,11 @@ public class AllBlocks {
public static final BlockEntry<BeltBlock> BELT = REGISTRATE.block("belt", BeltBlock::new)
.initialProperties(SharedProperties.beltMaterial, MaterialColor.GRAY)
.properties(p -> p.sound(SoundType.CLOTH))
.properties(p -> p.hardnessAndResistance(0.8F))
.blockstate(new BeltGenerator()::generate)
.transform(StressConfigDefaults.setImpact(1.0))
.onRegister(CreateRegistrate.blockColors(() -> BeltColor::new))
.blockstate(new BeltGenerator()::generate)
.onRegister(CreateRegistrate.blockModel(() -> BeltModel::new))
.register();
public static final BlockEntry<CreativeMotorBlock> CREATIVE_MOTOR =
@ -390,14 +393,14 @@ public class AllBlocks {
.blockstate((ctx, prov) -> prov.simpleBlock(ctx.getEntry(), AssetLookup.standardModel(ctx, prov)))
.simpleItem()
.register();
public static final BlockEntry<DepotBlock> DEPOT = REGISTRATE.block("depot", DepotBlock::new)
.initialProperties(SharedProperties::stone)
.blockstate((c, p) -> p.simpleBlock(c.getEntry(), AssetLookup.partialBaseModel(c, p)))
.item()
.transform(customItemModel("_", "block"))
.register();
public static final BlockEntry<ChuteBlock> CHUTE = REGISTRATE.block("chute", ChuteBlock::new)
.initialProperties(SharedProperties::softMetal)
.addLayer(() -> RenderType::getCutoutMipped)
@ -686,13 +689,12 @@ public class AllBlocks {
.transform(customItemModel())
.register();
// Logistics
static {
REGISTRATE.startSection(AllSections.LOGISTICS);
}
public static final BlockEntry<ArmBlock> MECHANICAL_ARM = REGISTRATE.block("mechanical_arm", ArmBlock::new)
.initialProperties(SharedProperties::softMetal)
.blockstate((c, p) -> p.simpleBlock(c.getEntry(), AssetLookup.partialBaseModel(c, p)))
@ -700,7 +702,7 @@ public class AllBlocks {
.item(ArmItem::new)
.transform(customItemModel())
.register();
public static final BlockEntry<RealityFunnelBlock> REALITY_FUNNEL =
REGISTRATE.block("reality_funnel", RealityFunnelBlock::new)
.initialProperties(SharedProperties::softMetal)
@ -708,18 +710,19 @@ public class AllBlocks {
.item(FunnelItem::new)
.transform(customItemModel())
.register();
public static final BlockEntry<BeltFunnelBlock> BELT_FUNNEL = REGISTRATE.block("belt_funnel", BeltFunnelBlock::new)
.initialProperties(SharedProperties::softMetal)
.blockstate(new BeltFunnelGenerator()::generate)
.loot((p, b) -> p.registerDropping(b, REALITY_FUNNEL.get()))
.register();
public static final BlockEntry<ChuteFunnelBlock> CHUTE_FUNNEL = REGISTRATE.block("chute_funnel", ChuteFunnelBlock::new)
.initialProperties(SharedProperties::softMetal)
.blockstate(new ChuteFunnelGenerator()::generate)
.loot((p, b) -> p.registerDropping(b, REALITY_FUNNEL.get()))
.register();
public static final BlockEntry<ChuteFunnelBlock> CHUTE_FUNNEL =
REGISTRATE.block("chute_funnel", ChuteFunnelBlock::new)
.initialProperties(SharedProperties::softMetal)
.blockstate(new ChuteFunnelGenerator()::generate)
.loot((p, b) -> p.registerDropping(b, REALITY_FUNNEL.get()))
.register();
public static final BlockEntry<RedstoneContactBlock> REDSTONE_CONTACT =
REGISTRATE.block("redstone_contact", RedstoneContactBlock::new)
@ -787,7 +790,7 @@ public class AllBlocks {
.item()
.transform(customItemModel())
.register();
public static final BlockEntry<PackagerBlock> PACKAGER = REGISTRATE.block("packager", PackagerBlock::new)
.initialProperties(SharedProperties::softMetal)
.transform(StressConfigDefaults.setImpact(4.0))

View file

@ -51,6 +51,7 @@ public class AllSpriteShifts {
public static final SpriteShiftEntry
BELT = SpriteShifter.get("block/belt", "block/belt_animated"),
ANDESIDE_BELT_CASING = SpriteShifter.get("block/brass_casing_belt", "block/andesite_casing_belt"),
CRAFTER_THINGIES = SpriteShifter.get("block/crafter_thingies", "block/crafter_thingies");
static {

View file

@ -11,6 +11,7 @@ import com.simibubi.create.AllBlocks;
import com.simibubi.create.AllItems;
import com.simibubi.create.AllTileEntities;
import com.simibubi.create.content.contraptions.base.HorizontalKineticBlock;
import com.simibubi.create.content.contraptions.relays.belt.BeltTileEntity.CasingType;
import com.simibubi.create.content.contraptions.relays.belt.transport.BeltMovementHandler.TransportedEntityInfo;
import com.simibubi.create.content.logistics.block.belts.tunnel.BeltTunnelBlock;
import com.simibubi.create.content.schematics.ISpecialBlockItemRequirement;
@ -121,9 +122,6 @@ public class BeltBlock extends HorizontalKineticBlock implements ITE<BeltTileEnt
@Override
public List<ItemStack> getDrops(BlockState state, net.minecraft.world.storage.loot.LootContext.Builder builder) {
List<ItemStack> drops = super.getDrops(state, builder);
if (state.get(CASING))
drops.addAll(AllBlocks.BRASS_CASING.getDefaultState()
.getDrops(builder));
TileEntity tileEntity = builder.get(LootParameters.BLOCK_ENTITY);
if (tileEntity instanceof BeltTileEntity && ((BeltTileEntity) tileEntity).hasPulley())
drops.addAll(AllBlocks.SHAFT.getDefaultState()
@ -222,22 +220,19 @@ public class BeltBlock extends HorizontalKineticBlock implements ITE<BeltTileEnt
}
@Override
public ActionResultType onUse(BlockState state, World worldIn, BlockPos pos, PlayerEntity player, Hand handIn,
public ActionResultType onUse(BlockState state, World world, BlockPos pos, PlayerEntity player, Hand handIn,
BlockRayTraceResult hit) {
if (player.isSneaking() || !player.isAllowEdit())
return ActionResultType.PASS;
ItemStack heldItem = player.getHeldItem(handIn);
boolean isShaft = heldItem.getItem() == AllBlocks.SHAFT.get()
.asItem();
boolean isCasing = heldItem.getItem() == AllBlocks.BRASS_CASING.get()
.asItem();
boolean isShaft = AllBlocks.SHAFT.isIn(heldItem);
boolean isDye = Tags.Items.DYES.contains(heldItem.getItem());
boolean isHand = heldItem.isEmpty() && handIn == Hand.MAIN_HAND;
if (isDye) {
if (worldIn.isRemote)
if (world.isRemote)
return ActionResultType.SUCCESS;
withTileEntityDo(worldIn, pos, te -> {
withTileEntityDo(world, pos, te -> {
DyeColor dyeColor = DyeColor.getColor(heldItem);
if (dyeColor == null)
return;
@ -248,7 +243,7 @@ public class BeltBlock extends HorizontalKineticBlock implements ITE<BeltTileEnt
return ActionResultType.SUCCESS;
}
BeltTileEntity belt = BeltHelper.getSegmentTE(worldIn, pos);
BeltTileEntity belt = BeltHelper.getSegmentTE(world, pos);
if (belt == null)
return ActionResultType.PASS;
@ -256,11 +251,11 @@ public class BeltBlock extends HorizontalKineticBlock implements ITE<BeltTileEnt
BeltTileEntity controllerBelt = belt.getControllerTE();
if (controllerBelt == null)
return ActionResultType.PASS;
if (worldIn.isRemote)
if (world.isRemote)
return ActionResultType.SUCCESS;
controllerBelt.getInventory()
.applyToEachWithin(belt.index + .5f, .55f, (transportedItemStack) -> {
player.inventory.placeItemBackInInventory(worldIn, transportedItemStack.stack);
player.inventory.placeItemBackInInventory(world, transportedItemStack.stack);
return Collections.emptyList();
});
}
@ -268,25 +263,26 @@ public class BeltBlock extends HorizontalKineticBlock implements ITE<BeltTileEnt
if (isShaft) {
if (state.get(PART) != Part.MIDDLE)
return ActionResultType.PASS;
if (worldIn.isRemote)
if (world.isRemote)
return ActionResultType.SUCCESS;
if (!player.isCreative())
heldItem.shrink(1);
worldIn.setBlockState(pos, state.with(PART, Part.PULLEY), 2);
world.setBlockState(pos, state.with(PART, Part.PULLEY), 2);
belt.attachKinetics();
return ActionResultType.SUCCESS;
}
if (isCasing) {
if (state.get(CASING))
return ActionResultType.PASS;
if (state.get(SLOPE) == Slope.VERTICAL)
return ActionResultType.PASS;
if (state.get(SLOPE) == Slope.SIDEWAYS)
return ActionResultType.PASS;
if (!player.isCreative())
heldItem.shrink(1);
worldIn.setBlockState(pos, state.with(CASING, true), 2);
if (AllBlocks.BRASS_CASING.isIn(heldItem)) {
if (world.isRemote)
return ActionResultType.SUCCESS;
withTileEntityDo(world, pos, te -> te.setCasingType(CasingType.BRASS));
return ActionResultType.SUCCESS;
}
if (AllBlocks.ANDESITE_CASING.isIn(heldItem)) {
if (world.isRemote)
return ActionResultType.SUCCESS;
withTileEntityDo(world, pos, te -> te.setCasingType(CasingType.ANDESITE));
return ActionResultType.SUCCESS;
}
@ -297,13 +293,12 @@ public class BeltBlock extends HorizontalKineticBlock implements ITE<BeltTileEnt
public ActionResultType onWrenched(BlockState state, ItemUseContext context) {
World world = context.getWorld();
PlayerEntity player = context.getPlayer();
BlockPos pos = context.getPos();
if (state.get(CASING)) {
if (world.isRemote)
return ActionResultType.SUCCESS;
world.setBlockState(context.getPos(), state.with(CASING, false), 3);
if (player != null && !player.isCreative())
player.inventory.placeItemBackInInventory(world, AllBlocks.BRASS_CASING.asStack());
withTileEntityDo(world, pos, te -> te.setCasingType(CasingType.NONE));
return ActionResultType.SUCCESS;
}
@ -417,8 +412,7 @@ public class BeltBlock extends HorizontalKineticBlock implements ITE<BeltTileEnt
@Override
public BlockRenderType getRenderType(BlockState state) {
return state.get(CASING) && state.get(SLOPE) != Slope.VERTICAL ? BlockRenderType.MODEL
: BlockRenderType.ENTITYBLOCK_ANIMATED;
return state.get(CASING) ? BlockRenderType.MODEL : BlockRenderType.ENTITYBLOCK_ANIMATED;
}
public static void initBelt(World world, BlockPos pos) {
@ -466,13 +460,6 @@ public class BeltBlock extends HorizontalKineticBlock implements ITE<BeltTileEnt
te.markDirty();
te.sendData();
boolean isVertical = currentState.get(BeltBlock.SLOPE) == Slope.VERTICAL;
if (currentState.get(CASING) && isVertical) {
Block.spawnAsEntity(world, beltPos, AllBlocks.BRASS_CASING.asStack());
world.setBlockState(beltPos, currentState.with(CASING, false), 2);
}
if (te.isController() && !canTransport(currentState))
te.getInventory()
.ejectAll();
@ -508,8 +495,6 @@ public class BeltBlock extends HorizontalKineticBlock implements ITE<BeltTileEnt
BlockState currentState = world.getBlockState(currentPos);
if (!AllBlocks.BELT.has(currentState))
continue;
if (currentState.get(CASING))
Block.spawnAsEntity(world, currentPos, AllBlocks.BRASS_CASING.asStack());
boolean hasPulley = false;
TileEntity tileEntity = world.getTileEntity(currentPos);
@ -633,8 +618,6 @@ public class BeltBlock extends HorizontalKineticBlock implements ITE<BeltTileEnt
List<ItemStack> required = new ArrayList<>();
if (state.get(PART) != Part.MIDDLE)
required.add(AllBlocks.SHAFT.asStack());
if (state.get(CASING))
required.add(AllBlocks.BRASS_CASING.asStack());
if (state.get(PART) == Part.START)
required.add(AllItems.BELT_CONNECTOR.asStack());
if (required.isEmpty())

View file

@ -9,7 +9,6 @@ import com.tterrag.registrate.providers.RegistrateBlockstateProvider;
import net.minecraft.block.Block;
import net.minecraft.block.BlockState;
import net.minecraft.util.Direction;
import net.minecraft.util.Direction.Axis;
import net.minecraft.util.Direction.AxisDirection;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.client.model.generators.ModelFile;
@ -30,8 +29,9 @@ public class BeltGenerator extends SpecialBlockStateGen {
Slope slope = state.get(BeltBlock.SLOPE);
boolean flip = casing && slope == Slope.UPWARD;
boolean rotate = casing && slope == Slope.VERTICAL;
Direction direction = state.get(BeltBlock.HORIZONTAL_FACING);
return horizontalAngle(direction) + (flip ? 180 : 0);
return horizontalAngle(direction) + (flip ? 180 : 0) + (rotate ? 90 : 0);
}
@Override
@ -41,7 +41,8 @@ public class BeltGenerator extends SpecialBlockStateGen {
BeltBlock.Part part = state.get(BeltBlock.PART);
Direction direction = state.get(BeltBlock.HORIZONTAL_FACING);
Slope slope = state.get(BeltBlock.SLOPE);
boolean diagonal = slope == Slope.UPWARD || slope == Slope.DOWNWARD;
boolean downward = slope == Slope.DOWNWARD;
boolean diagonal = slope == Slope.UPWARD || downward;
boolean vertical = slope == Slope.VERTICAL;
boolean pulley = part == Part.PULLEY;
boolean sideways = slope == Slope.SIDEWAYS;
@ -50,12 +51,13 @@ public class BeltGenerator extends SpecialBlockStateGen {
if (!casing && pulley)
part = Part.MIDDLE;
if ((!casing && vertical && negative || casing && diagonal && negative == (direction.getAxis() == Axis.X)
|| !casing && sideways && negative) && part != Part.MIDDLE && !pulley)
if ((vertical && negative || casing && downward || sideways && negative) && part != Part.MIDDLE && !pulley)
part = part == Part.END ? Part.START : Part.END;
if (!casing && vertical)
slope = Slope.HORIZONTAL;
if (casing && vertical)
slope = Slope.SIDEWAYS;
String path = "block/" + (casing ? "belt_casing/" : "belt/");
String slopeName = slope.getName();

View file

@ -0,0 +1,74 @@
package com.simibubi.create.content.contraptions.relays.belt;
import static com.simibubi.create.content.contraptions.relays.belt.BeltTileEntity.CASING_PROPERTY;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Random;
import com.simibubi.create.AllSpriteShifts;
import com.simibubi.create.content.contraptions.relays.belt.BeltTileEntity.CasingType;
import com.simibubi.create.foundation.block.render.SpriteShiftEntry;
import com.simibubi.create.foundation.utility.SuperByteBuffer;
import net.minecraft.block.BlockState;
import net.minecraft.client.renderer.model.BakedQuad;
import net.minecraft.client.renderer.model.IBakedModel;
import net.minecraft.client.renderer.texture.TextureAtlasSprite;
import net.minecraft.client.renderer.vertex.DefaultVertexFormats;
import net.minecraft.client.renderer.vertex.VertexFormat;
import net.minecraft.util.Direction;
import net.minecraftforge.client.model.BakedModelWrapper;
import net.minecraftforge.client.model.data.IModelData;
public class BeltModel extends BakedModelWrapper<IBakedModel> {
public BeltModel(IBakedModel template) {
super(template);
}
@Override
public List<BakedQuad> getQuads(BlockState state, Direction side, Random rand, IModelData extraData) {
List<BakedQuad> quads = new ArrayList<>(super.getQuads(state, side, rand, extraData));
if (!extraData.hasProperty(CASING_PROPERTY))
return quads;
CasingType type = extraData.getData(CASING_PROPERTY);
if (type == CasingType.NONE || type == CasingType.BRASS)
return quads;
SpriteShiftEntry spriteShift = AllSpriteShifts.ANDESIDE_BELT_CASING;
for (int i = 0; i < quads.size(); i++) {
BakedQuad quad = quads.get(i);
if (spriteShift == null)
continue;
if (quad.getSprite() != spriteShift.getOriginal())
continue;
TextureAtlasSprite original = quad.getSprite();
TextureAtlasSprite target = spriteShift.getTarget();
BakedQuad newQuad = new BakedQuad(Arrays.copyOf(quad.getVertexData(), quad.getVertexData().length),
quad.getTintIndex(), quad.getFace(), target, quad.shouldApplyDiffuseLighting());
VertexFormat format = DefaultVertexFormats.BLOCK;
int[] vertexData = newQuad.getVertexData();
for (int vertex = 0; vertex < vertexData.length; vertex += format.getIntegerSize()) {
int uvOffset = 16 / 4;
int uIndex = vertex + uvOffset;
int vIndex = vertex + uvOffset + 1;
float u = Float.intBitsToFloat(vertexData[uIndex]);
float v = Float.intBitsToFloat(vertexData[vIndex]);
vertexData[uIndex] =
Float.floatToRawIntBits(target.getInterpolatedU((SuperByteBuffer.getUnInterpolatedU(original, u))));
vertexData[vIndex] =
Float.floatToRawIntBits(target.getInterpolatedV((SuperByteBuffer.getUnInterpolatedV(original, v))));
}
quads.set(i, newQuad);
}
return quads;
}
}

View file

@ -228,6 +228,8 @@ public class BeltShapes {
if (slope == Slope.VERTICAL)
return VoxelShapes.empty();
if (slope == Slope.SIDEWAYS)
return VoxelShapes.empty();
if (slope == Slope.HORIZONTAL) {
return AllShapes.CASING_11PX.get(Direction.UP);

View file

@ -27,6 +27,7 @@ import com.simibubi.create.foundation.tileEntity.TileEntityBehaviour;
import com.simibubi.create.foundation.tileEntity.behaviour.belt.DirectBeltInputBehaviour;
import com.simibubi.create.foundation.tileEntity.behaviour.belt.TransportedItemStackHandlerBehaviour;
import com.simibubi.create.foundation.utility.ColorHelper;
import com.simibubi.create.foundation.utility.NBTHelper;
import net.minecraft.block.BlockState;
import net.minecraft.entity.Entity;
@ -43,6 +44,9 @@ import net.minecraft.util.math.AxisAlignedBB;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.Vec3d;
import net.minecraft.util.math.Vec3i;
import net.minecraftforge.client.model.data.IModelData;
import net.minecraftforge.client.model.data.ModelDataMap;
import net.minecraftforge.client.model.data.ModelProperty;
import net.minecraftforge.common.capabilities.Capability;
import net.minecraftforge.common.util.LazyOptional;
import net.minecraftforge.items.CapabilityItemHandler;
@ -55,6 +59,7 @@ public class BeltTileEntity extends KineticTileEntity {
public int beltLength;
public int index;
public Direction lastInsert;
public CasingType casing;
protected BlockPos controller;
protected BeltInventory inventory;
@ -62,10 +67,15 @@ public class BeltTileEntity extends KineticTileEntity {
public CompoundNBT trackerUpdateTag;
public static enum CasingType {
NONE, ANDESITE, BRASS;
}
public BeltTileEntity(TileEntityType<? extends BeltTileEntity> type) {
super(type);
controller = BlockPos.ZERO;
itemHandler = LazyOptional.empty();
casing = CasingType.NONE;
color = -1;
}
@ -176,12 +186,24 @@ public class BeltTileEntity extends KineticTileEntity {
compound.putInt("Color", color);
compound.putInt("Length", beltLength);
compound.putInt("Index", index);
NBTHelper.writeEnum(compound, "Casing", casing);
if (isController())
compound.put("Inventory", getInventory().write());
return super.write(compound);
}
@Override
public void readClientUpdate(CompoundNBT tag) {
CasingType casingBefore = casing;
super.readClientUpdate(tag);
if (casingBefore != casing) {
requestModelDataUpdate();
if (hasWorld())
world.notifyBlockUpdate(getPos(), getBlockState(), getBlockState(), 16);
}
}
@Override
public void read(CompoundNBT compound) {
super.read(compound);
@ -200,6 +222,8 @@ public class BeltTileEntity extends KineticTileEntity {
if (isController())
getInventory().read(compound.getCompound("Inventory"));
casing = NBTHelper.readEnum(compound, "Casing", CasingType.class);
}
@Override
@ -353,6 +377,18 @@ public class BeltTileEntity extends KineticTileEntity {
return BeltHelper.getVectorForOffset(controllerTE, transported.beltPosition);
}
public void setCasingType(CasingType type) {
if (casing == type)
return;
casing = type;
boolean shouldBlockHaveCasing = type != CasingType.NONE;
BlockState blockState = getBlockState();
if (blockState.get(BeltBlock.CASING) != shouldBlockHaveCasing)
KineticTileEntity.switchToBlockState(world, pos, blockState.with(BeltBlock.CASING, shouldBlockHaveCasing));
markDirty();
sendData();
}
/**
* always target a DirectBeltInsertionBehaviour
*/
@ -402,4 +438,12 @@ public class BeltTileEntity extends KineticTileEntity {
return empty;
}
public static ModelProperty<CasingType> CASING_PROPERTY = new ModelProperty<>();
@Override
public IModelData getModelData() {
return new ModelDataMap.Builder().withInitial(CASING_PROPERTY, casing)
.build();
}
}

View file

@ -2,10 +2,9 @@
"credit": "Made with Blockbench",
"parent": "block/block",
"textures": {
"1": "create:block/belt_support_side",
"2": "create:block/brass_casing_side",
"4": "create:block/brass_casing_belt",
"8": "create:block/gearbox",
"particle": "create:block/brass_casing_side"
"particle": "create:block/brass_casing"
},
"elements": [
{
@ -14,9 +13,7 @@
"to": [14.9, 11, 12],
"rotation": {"angle": -45, "axis": "x", "origin": [8, 8, 8]},
"faces": {
"north": {"uv": [0, 0, 15, 6], "texture": "#1"},
"east": {"uv": [4, 5, 14, 12], "texture": "#8"},
"south": {"uv": [0, 0, 15, 6], "texture": "#1"},
"west": {"uv": [2, 5, 12, 12], "texture": "#8"}
}
},
@ -30,56 +27,73 @@
"west": {"uv": [6, 3, 10, 5], "texture": "#8"}
}
},
{
"name": "Zfighter2",
"from": [0.5, 0.1, -0.1],
"to": [15.5, 11.1, 0.9],
"faces": {
"north": {"uv": [0, 0, 15, 10.8], "texture": "#2"},
"east": {"uv": [0, 0, 1, 10.8], "texture": "#2"},
"west": {"uv": [12, 0, 13, 10.8], "texture": "#2"},
"up": {"uv": [0, 0, 15, 1], "rotation": 180, "texture": "#2"},
"down": {"uv": [0, 0, 1, 15], "rotation": 270, "texture": "#2"}
}
},
{
"name": "Right",
"from": [0, 0, 0],
"to": [16, 11, 5],
"faces": {
"north": {"uv": [0, 0, 16, 11], "texture": "#2"},
"east": {"uv": [12, 0, 16, 11], "texture": "#2"},
"south": {"uv": [0, 0, 2, 11], "texture": "#2"},
"west": {"uv": [0, 0, 4, 11], "texture": "#2"},
"up": {"uv": [12, 0, 16, 16], "rotation": 270, "texture": "#2"},
"down": {"uv": [12, 0, 16, 16], "rotation": 270, "texture": "#2"}
}
},
{
"name": "Down",
"from": [0, 0, 5],
"to": [16, 5.1, 11],
"faces": {
"east": {"uv": [4, 5.9, 10, 11], "texture": "#2"},
"south": {"uv": [0, 6, 16, 11], "texture": "#2"},
"west": {"uv": [4, 5.9, 10, 11], "texture": "#2"},
"up": {"uv": [0, 2, 16, 8], "rotation": 180, "texture": "#2"},
"down": {"uv": [4, 0, 10, 16], "rotation": 270, "texture": "#2"}
}
},
{
"name": "Top Diagonal",
"from": [-0.1, 2, 11.303],
"to": [16.1, 11, 19.328],
"rotation": {"angle": 45, "axis": "x", "origin": [8, 8, 8]},
"faces": {
"north": {"uv": [7, 0, 16, 16], "rotation": 270, "texture": "#2"},
"east": {"uv": [0, 0, 8.025, 9], "texture": "#2"},
"south": {"uv": [7, 0, 16, 16], "rotation": 270, "texture": "#2"},
"west": {"uv": [0, 0, 8.025, 9], "texture": "#2"},
"up": {"uv": [0, 0, 8.025, 16], "rotation": 90, "texture": "#2"},
"down": {"uv": [0, 0, 8.025, 16], "rotation": 90, "texture": "#2"}
"north": {"uv": [8, 8, 16, 12.5], "texture": "#4"},
"east": {"uv": [8, 8, 12.025, 12.5], "texture": "#4"},
"south": {"uv": [8, 8, 16, 12.5], "texture": "#4"},
"west": {"uv": [12, 8, 16, 12.5], "texture": "#4"},
"up": {"uv": [12, 0, 16, 8], "rotation": 90, "texture": "#4"},
"down": {"uv": [12, 0, 16, 8], "rotation": 90, "texture": "#4"}
}
},
{
"name": "Left",
"from": [0, 0, 0],
"to": [16, 3, 4],
"faces": {
"north": {"uv": [0, 12, 8, 13.5], "texture": "#4"},
"east": {"uv": [6, 12, 8, 13.5], "texture": "#4"},
"west": {"uv": [0, 12, 2, 13.5], "texture": "#4"},
"up": {"uv": [8, 3, 16, 5], "texture": "#4"},
"down": {"uv": [6, 0, 8, 8], "rotation": 90, "texture": "#4"}
}
},
{
"name": "Left",
"from": [0, 3, 0],
"to": [1, 11, 4],
"faces": {
"north": {"uv": [7.5, 8, 8, 12], "texture": "#4"},
"east": {"uv": [6, 8, 8, 12], "texture": "#4"},
"south": {"uv": [0, 8, 0.5, 12], "texture": "#4"},
"west": {"uv": [0, 8, 2, 12], "texture": "#4"},
"up": {"uv": [0, 7.5, 2, 8], "rotation": 90, "texture": "#4"}
}
},
{
"name": "Left",
"from": [15, 3, 0],
"to": [16, 11, 4],
"faces": {
"north": {"uv": [8, 8, 7.5, 12], "texture": "#4"},
"east": {"uv": [2, 8, 0, 12], "texture": "#4"},
"south": {"uv": [0.5, 8, 0, 12], "texture": "#4"},
"west": {"uv": [8, 8, 6, 12], "texture": "#4"},
"up": {"uv": [0, 8, 2, 7.5], "rotation": 90, "texture": "#4"}
}
},
{
"name": "Down",
"from": [0, 0, 4],
"to": [16, 5, 12],
"faces": {
"east": {"uv": [2, 11, 6, 13.5], "texture": "#4"},
"west": {"uv": [2, 11, 6, 13.5], "texture": "#4"},
"up": {"uv": [8, 2, 16, 6], "texture": "#4"},
"down": {"uv": [10, 0, 14, 8], "rotation": 90, "texture": "#4"}
}
}
],
"groups": [0, 1, 2,
{
"name": "horizontal_start",
"origin": [8, 8, 8],
"children": [3, 4, 5, 6]
}
]
}

View file

@ -2,58 +2,21 @@
"credit": "Made with Blockbench",
"parent": "block/block",
"textures": {
"particle": "create:block/brass_casing_side",
"2": "create:block/brass_casing_side",
"8": "create:block/gearbox"
"4": "create:block/brass_casing_belt",
"particle": "create:block/brass_casing"
},
"elements": [
{
"name": "Casing",
"from": [1.1, 11, 6],
"to": [14.9, 13, 10],
"rotation": {"angle": 45, "axis": "x", "origin": [8, 8, 8]},
"faces": {
"east": {"uv": [6, 3, 10, 5], "texture": "#8"},
"west": {"uv": [6, 3, 10, 5], "texture": "#8"}
}
},
{
"name": "Left",
"from": [0, 0, 0],
"to": [16, 10, 5],
"faces": {
"north": {"uv": [0, 0, 10, 16], "rotation": 90, "texture": "#2"},
"east": {"uv": [11, 1, 16, 11], "texture": "#2"},
"south": {"uv": [0, 1, 16, 11], "texture": "#2"},
"west": {"uv": [0, 1, 5, 11], "texture": "#2"},
"up": {"uv": [0, 0, 5, 16], "rotation": 90, "texture": "#2"},
"down": {"uv": [0, 0, 5, 16], "rotation": 90, "texture": "#2"}
}
},
{
"name": "Down",
"from": [0, 0, 5],
"to": [16, 5.1, 11],
"faces": {
"north": {"uv": [0, 6, 16, 11], "texture": "#2"},
"east": {"uv": [4, 5.9, 10, 11], "texture": "#2"},
"west": {"uv": [4, 5.9, 10, 11], "texture": "#2"},
"up": {"uv": [0, 2, 16, 8], "texture": "#2"},
"down": {"uv": [4, 0, 10, 16], "rotation": 90, "texture": "#2"}
}
},
{
"name": "Top Diagonal",
"from": [-0.1, 2, -3.325],
"to": [16.1, 11, 10],
"rotation": {"angle": 45, "axis": "x", "origin": [8, 8, 8]},
"faces": {
"north": {"uv": [7, 0, 16, 16], "rotation": 270, "texture": "#2"},
"east": {"uv": [0, 0, 13.325, 9], "texture": "#2"},
"south": {"uv": [7, 0, 16, 16], "rotation": 270, "texture": "#2"},
"west": {"uv": [0, 0, 8.025, 9], "texture": "#2"},
"up": {"uv": [0, 0, 8.025, 16], "rotation": 270, "texture": "#2"},
"down": {"uv": [0, 0, 8.025, 16], "rotation": 270, "texture": "#2"}
"north": {"uv": [8, 8, 16, 12.5], "texture": "#4"},
"east": {"uv": [9.5, 8, 16, 12.5], "texture": "#4"},
"west": {"uv": [8, 8, 14.5, 12.5], "texture": "#4"},
"up": {"uv": [9.5, 0, 16, 8], "rotation": 270, "texture": "#4"},
"down": {"uv": [9.5, 0, 16, 8], "rotation": 270, "texture": "#4"}
}
},
{
@ -62,12 +25,11 @@
"to": [16.1, 11, 19.3],
"rotation": {"angle": 45, "axis": "x", "origin": [8, 8, 8]},
"faces": {
"north": {"uv": [7, 0, 16, 16], "rotation": 270, "texture": "#2"},
"east": {"uv": [0, 0, 9.3, 9], "texture": "#2"},
"south": {"uv": [7, 0, 16, 16], "rotation": 270, "texture": "#2"},
"west": {"uv": [0, 0, 9.3, 9], "texture": "#2"},
"up": {"uv": [0, 0, 8.025, 16], "rotation": 270, "texture": "#2"},
"down": {"uv": [0, 0, 8.025, 16], "rotation": 270, "texture": "#2"}
"east": {"uv": [8, 8, 13, 12.5], "texture": "#4"},
"south": {"uv": [8, 8, 16, 12.5], "texture": "#4"},
"west": {"uv": [11, 8, 16, 12.5], "texture": "#4"},
"up": {"uv": [8, 0, 12.5, 8], "rotation": 270, "texture": "#4"},
"down": {"uv": [8, 0, 12.5, 8], "rotation": 270, "texture": "#4"}
}
}
]

View file

@ -2,10 +2,9 @@
"credit": "Made with Blockbench",
"parent": "block/block",
"textures": {
"particle": "create:block/brass_casing_side",
"1": "create:block/belt_support_side",
"2": "create:block/brass_casing_side",
"8": "create:block/gearbox"
"4": "create:block/brass_casing_belt",
"8": "create:block/gearbox",
"particle": "create:block/brass_casing"
},
"elements": [
{
@ -14,9 +13,7 @@
"to": [14.9, 11, 14],
"rotation": {"angle": 45, "axis": "x", "origin": [8, 8, 8]},
"faces": {
"north": {"uv": [0, 0, 15, 6], "texture": "#1"},
"east": {"uv": [2, 5, 14, 11], "texture": "#8"},
"south": {"uv": [0, 0, 15, 6], "texture": "#1"},
"west": {"uv": [2, 5, 14, 11], "texture": "#8"}
}
},
@ -35,24 +32,22 @@
"from": [0, 0, 0],
"to": [16, 10, 5],
"faces": {
"north": {"uv": [0, 0, 10, 16], "rotation": 90, "texture": "#2"},
"east": {"uv": [11, 1, 16, 11], "texture": "#2"},
"south": {"uv": [0, 1, 16, 11], "texture": "#2"},
"west": {"uv": [0, 1, 5, 11], "texture": "#2"},
"up": {"uv": [0, 0, 5, 16], "rotation": 90, "texture": "#2"},
"down": {"uv": [0, 0, 5, 16], "rotation": 90, "texture": "#2"}
"north": {"uv": [8, 0, 13, 8], "rotation": 90, "texture": "#4"},
"east": {"uv": [5.5, 3, 8, 8], "texture": "#4"},
"south": {"uv": [8, 1.5, 16, 6.5], "texture": "#4"},
"west": {"uv": [0, 3, 2.5, 8], "texture": "#4"},
"down": {"uv": [13.5, 0, 16, 8], "rotation": 90, "texture": "#4"}
}
},
{
"name": "Down",
"from": [0, 0, 5],
"to": [16, 5.1, 11],
"to": [16, 5, 11],
"faces": {
"north": {"uv": [0, 6, 16, 11], "texture": "#2"},
"east": {"uv": [4, 5.9, 10, 11], "texture": "#2"},
"west": {"uv": [4, 5.9, 10, 11], "texture": "#2"},
"up": {"uv": [0, 2, 16, 8], "texture": "#2"},
"down": {"uv": [4, 0, 10, 16], "rotation": 90, "texture": "#2"}
"east": {"uv": [2.5, 5.5, 5.5, 8], "texture": "#4"},
"west": {"uv": [2.5, 5.5, 5.5, 8], "texture": "#4"},
"up": {"uv": [8, 2.5, 16, 5.5], "texture": "#4"},
"down": {"uv": [10.5, 0, 13.5, 8], "rotation": 90, "texture": "#4"}
}
},
{
@ -61,12 +56,12 @@
"to": [16.1, 11, 4.7],
"rotation": {"angle": 45, "axis": "x", "origin": [8, 8, 8]},
"faces": {
"north": {"uv": [7, 0, 16, 16], "rotation": 270, "texture": "#2"},
"east": {"uv": [0, 0, 8.025, 9], "texture": "#2"},
"south": {"uv": [7, 0, 16, 16], "rotation": 270, "texture": "#2"},
"west": {"uv": [0, 0, 8.025, 9], "texture": "#2"},
"up": {"uv": [0, 0, 8.025, 16], "rotation": 270, "texture": "#2"},
"down": {"uv": [0, 0, 8.025, 16], "rotation": 270, "texture": "#2"}
"north": {"uv": [8, 8, 16, 12.5], "texture": "#4"},
"east": {"uv": [12, 8, 16, 12.5], "texture": "#4"},
"south": {"uv": [8, 8, 16, 12.5], "texture": "#4"},
"west": {"uv": [8, 8, 12, 12.5], "texture": "#4"},
"up": {"uv": [12, 0, 16, 8], "rotation": 270, "texture": "#4"},
"down": {"uv": [12, 0, 16, 8], "rotation": 270, "texture": "#4"}
}
},
{
@ -75,12 +70,12 @@
"to": [16.1, 11, 19.3],
"rotation": {"angle": 45, "axis": "x", "origin": [8, 8, 8]},
"faces": {
"north": {"uv": [7, 0, 16, 16], "rotation": 270, "texture": "#2"},
"east": {"uv": [0, 0, 8.025, 9], "texture": "#2"},
"south": {"uv": [7, 0, 16, 16], "rotation": 270, "texture": "#2"},
"west": {"uv": [0, 0, 8.025, 9], "texture": "#2"},
"up": {"uv": [0, 0, 8.025, 16], "rotation": 270, "texture": "#2"},
"down": {"uv": [0, 0, 8.025, 16], "rotation": 270, "texture": "#2"}
"north": {"uv": [8, 8, 16, 12.5], "texture": "#4"},
"east": {"uv": [8, 8, 12, 12.5], "texture": "#4"},
"south": {"uv": [8, 8, 16, 12.5], "texture": "#4"},
"west": {"uv": [12, 8, 16, 12.5], "texture": "#4"},
"up": {"uv": [8, 0, 12, 8], "rotation": 270, "texture": "#4"},
"down": {"uv": [8, 0, 12, 8], "rotation": 270, "texture": "#4"}
}
}
]

View file

@ -2,10 +2,9 @@
"credit": "Made with Blockbench",
"parent": "block/block",
"textures": {
"particle": "create:block/brass_casing_side",
"1": "create:block/belt_support_side",
"2": "create:block/brass_casing_side",
"8": "create:block/gearbox"
"4": "create:block/brass_casing_belt",
"8": "create:block/gearbox",
"particle": "create:block/brass_casing"
},
"elements": [
{
@ -14,9 +13,7 @@
"to": [14.9, 11, 14],
"rotation": {"angle": 45, "axis": "x", "origin": [8, 8, 8]},
"faces": {
"north": {"uv": [0, 0, 15, 6], "texture": "#1"},
"east": {"uv": [2, 5, 14, 11], "texture": "#8"},
"south": {"uv": [0, 0, 15, 6], "texture": "#1"},
"west": {"uv": [2, 5, 14, 11], "texture": "#8"}
}
},
@ -30,69 +27,86 @@
"west": {"uv": [6, 3, 10, 5], "texture": "#8"}
}
},
{
"name": "Left",
"from": [0, 0, 0],
"to": [16, 10, 5],
"faces": {
"north": {"uv": [0, 0, 10, 16], "rotation": 90, "texture": "#2"},
"east": {"uv": [11, 1, 16, 11], "texture": "#2"},
"south": {"uv": [0, 1, 16, 11], "texture": "#2"},
"west": {"uv": [0, 1, 5, 11], "texture": "#2"},
"up": {"uv": [0, 0, 5, 16], "rotation": 90, "texture": "#2"},
"down": {"uv": [0, 0, 5, 16], "rotation": 90, "texture": "#2"}
}
},
{
"name": "Zfighter2",
"from": [0.5, 0.1, 15.1],
"to": [15.5, 11.1, 16.1],
"faces": {
"east": {"uv": [12, 0, 13, 10.8], "texture": "#2"},
"south": {"uv": [0, 0, 15, 10.8], "texture": "#2"},
"west": {"uv": [0, 0, 1, 10.8], "texture": "#2"},
"up": {"uv": [0, 0, 15, 1], "texture": "#2"},
"down": {"uv": [0, 0, 1, 15], "rotation": 90, "texture": "#2"}
}
},
{
"name": "Right",
"from": [0, 0, 11],
"to": [16, 11, 16],
"faces": {
"north": {"uv": [0, 0, 2, 11], "texture": "#2"},
"east": {"uv": [0, 0, 4, 11], "texture": "#2"},
"south": {"uv": [0, 0, 16, 11], "texture": "#2"},
"west": {"uv": [12, 0, 16, 11], "texture": "#2"},
"up": {"uv": [12, 0, 16, 16], "rotation": 90, "texture": "#2"},
"down": {"uv": [12, 0, 16, 16], "rotation": 90, "texture": "#2"}
}
},
{
"name": "Down",
"from": [0, 0, 5],
"to": [16, 5.1, 11],
"faces": {
"north": {"uv": [0, 6, 16, 11], "texture": "#2"},
"east": {"uv": [4, 5.9, 10, 11], "texture": "#2"},
"west": {"uv": [4, 5.9, 10, 11], "texture": "#2"},
"up": {"uv": [0, 2, 16, 8], "texture": "#2"},
"down": {"uv": [4, 0, 10, 16], "rotation": 90, "texture": "#2"}
}
},
{
"name": "Top Diagonal",
"from": [-0.1, 2, -3.325],
"to": [16.1, 11, 4.7],
"rotation": {"angle": 45, "axis": "x", "origin": [8, 8, 8]},
"faces": {
"north": {"uv": [7, 0, 16, 16], "rotation": 270, "texture": "#2"},
"east": {"uv": [0, 0, 8.025, 9], "texture": "#2"},
"south": {"uv": [7, 0, 16, 16], "rotation": 270, "texture": "#2"},
"west": {"uv": [0, 0, 8.025, 9], "texture": "#2"},
"up": {"uv": [0, 0, 8.025, 16], "rotation": 270, "texture": "#2"},
"down": {"uv": [0, 0, 8.025, 16], "rotation": 270, "texture": "#2"}
"north": {"uv": [8, 8, 16, 12.5], "texture": "#4"},
"east": {"uv": [12, 8, 16, 12.5], "texture": "#4"},
"south": {"uv": [8, 8, 16, 12.5], "texture": "#4"},
"west": {"uv": [8, 8, 12, 12.5], "texture": "#4"},
"up": {"uv": [12, 0, 16, 8], "rotation": 270, "texture": "#4"},
"down": {"uv": [12, 0, 16, 8], "rotation": 270, "texture": "#4"}
}
},
{
"name": "Left",
"from": [0, 0, 12],
"to": [16, 3, 16],
"faces": {
"east": {"uv": [0, 12, 2, 13.5], "texture": "#4"},
"south": {"uv": [0, 12, 8, 13.5], "texture": "#4"},
"west": {"uv": [6, 12, 8, 13.5], "texture": "#4"},
"up": {"uv": [8, 3, 16, 5], "rotation": 180, "texture": "#4"},
"down": {"uv": [6, 0, 8, 8], "rotation": 270, "texture": "#4"}
}
},
{
"name": "Left",
"from": [15, 3, 12],
"to": [16, 11, 16],
"faces": {
"north": {"uv": [0, 8, 0.5, 12], "texture": "#4"},
"east": {"uv": [0, 8, 2, 12], "texture": "#4"},
"south": {"uv": [7.5, 8, 8, 12], "texture": "#4"},
"west": {"uv": [6, 8, 8, 12], "texture": "#4"},
"up": {"uv": [0, 7.5, 2, 8], "rotation": 270, "texture": "#4"}
}
},
{
"name": "Left",
"from": [0, 3, 12],
"to": [1, 11, 16],
"faces": {
"north": {"uv": [0.5, 8, 0, 12], "texture": "#4"},
"east": {"uv": [8, 8, 6, 12], "texture": "#4"},
"south": {"uv": [8, 8, 7.5, 12], "texture": "#4"},
"west": {"uv": [2, 8, 0, 12], "texture": "#4"},
"up": {"uv": [0, 8, 2, 7.5], "rotation": 270, "texture": "#4"}
}
},
{
"name": "Right",
"from": [0, 0, 0],
"to": [16, 11, 5],
"faces": {
"north": {"uv": [8, 0, 13.5, 8], "rotation": 90, "texture": "#4"},
"east": {"uv": [5.5, 2.5, 8, 8], "texture": "#4"},
"south": {"uv": [0, 8, 8, 13.5], "texture": "#4"},
"west": {"uv": [0, 8, 2.5, 13.5], "texture": "#4"},
"up": {"uv": [6, 0, 8, 8], "rotation": 270, "texture": "#4"},
"down": {"uv": [8, 0, 10, 8], "rotation": 270, "texture": "#4"}
}
},
{
"name": "Down",
"from": [0, 0, 5],
"to": [16, 5, 12],
"faces": {
"east": {"uv": [2, 11, 5.5, 13.5], "texture": "#4"},
"west": {"uv": [2.5, 11, 6, 13.5], "texture": "#4"},
"up": {"uv": [8, 2, 16, 5.5], "rotation": 180, "texture": "#4"},
"down": {"uv": [10, 0, 14, 8], "rotation": 270, "texture": "#4"}
}
}
],
"groups": [0, 1, 2,
{
"name": "horizontal_start",
"origin": [8, 8, 8],
"children": [3, 4, 5, 6, 7]
}
]
}

View file

@ -2,10 +2,9 @@
"credit": "Made with Blockbench",
"parent": "block/block",
"textures": {
"particle": "create:block/brass_casing_side",
"1": "create:block/belt_support_side",
"2": "create:block/brass_casing_side",
"8": "create:block/gearbox"
"4": "create:block/brass_casing_belt",
"8": "create:block/gearbox",
"particle": "create:block/brass_casing"
},
"elements": [
{
@ -13,60 +12,57 @@
"from": [1, 5, 2],
"to": [15, 11, 14],
"faces": {
"north": {"uv": [0, 0, 15, 6], "texture": "#1"},
"east": {"uv": [2, 5, 14, 11], "texture": "#8"},
"south": {"uv": [0, 0, 15, 6], "texture": "#1"},
"west": {"uv": [2, 5, 14, 11], "texture": "#8"}
}
},
{
"name": "Left",
"from": [0, 0, 0],
"to": [16, 11, 4],
"from": [0, 0, 12],
"to": [16, 3, 16],
"faces": {
"north": {"uv": [0, 0, 16, 11], "texture": "#2"},
"east": {"uv": [12, 0, 16, 11], "texture": "#2"},
"south": {"uv": [14, 0, 16, 11], "texture": "#2"},
"west": {"uv": [0, 0, 4, 11], "texture": "#2"},
"up": {"uv": [0, 0, 4, 16], "rotation": 90, "texture": "#2"},
"down": {"uv": [0, 0, 4, 16], "rotation": 90, "texture": "#2"}
"east": {"uv": [0, 12, 2, 13.5], "texture": "#4"},
"south": {"uv": [0, 12, 8, 13.5], "texture": "#4"},
"west": {"uv": [6, 12, 8, 13.5], "texture": "#4"},
"up": {"uv": [8, 3, 16, 5], "rotation": 180, "texture": "#4"},
"down": {"uv": [6, 0, 8, 8], "rotation": 270, "texture": "#4"}
}
},
{
"name": "Zfighter",
"from": [0.5, 0.1, -0.1],
"to": [15.5, 10.9, 0.9],
"name": "Left",
"from": [15, 3, 12],
"to": [16, 11, 16],
"faces": {
"north": {"uv": [0, 0, 15, 10.8], "texture": "#2"},
"east": {"uv": [12, 0, 13, 10.8], "texture": "#2"},
"west": {"uv": [0, 0, 1, 10.8], "texture": "#2"},
"up": {"uv": [0, 0, 15, 1], "texture": "#2"},
"down": {"uv": [0, 0, 1, 15], "rotation": 90, "texture": "#2"}
"north": {"uv": [0, 8, 0.5, 12], "texture": "#4"},
"east": {"uv": [0, 8, 2, 12], "texture": "#4"},
"south": {"uv": [7.5, 8, 8, 12], "texture": "#4"},
"west": {"uv": [6, 8, 8, 12], "texture": "#4"},
"up": {"uv": [0, 7.5, 2, 8], "rotation": 270, "texture": "#4"}
}
},
{
"name": "Zfighter2",
"from": [0.5, 0.1, 15.1],
"to": [15.5, 10.9, 16.1],
"name": "Left",
"from": [0, 3, 12],
"to": [1, 11, 16],
"faces": {
"east": {"uv": [12, 0, 13, 10.8], "texture": "#2"},
"south": {"uv": [0, 0, 15, 10.8], "texture": "#2"},
"west": {"uv": [0, 0, 1, 10.8], "texture": "#2"},
"up": {"uv": [0, 0, 15, 1], "texture": "#2"},
"down": {"uv": [0, 0, 1, 15], "rotation": 90, "texture": "#2"}
"north": {"uv": [0.5, 8, 0, 12], "texture": "#4"},
"east": {"uv": [8, 8, 6, 12], "texture": "#4"},
"south": {"uv": [8, 8, 7.5, 12], "texture": "#4"},
"west": {"uv": [2, 8, 0, 12], "texture": "#4"},
"up": {"uv": [0, 8, 2, 7.5], "rotation": 270, "texture": "#4"}
}
},
{
"name": "Right",
"from": [0, 0, 12],
"to": [16, 11, 16],
"from": [0, 0, 0],
"to": [16, 11, 4],
"faces": {
"north": {"uv": [0, 0, 2, 11], "texture": "#2"},
"east": {"uv": [0, 0, 4, 11], "texture": "#2"},
"south": {"uv": [0, 0, 16, 11], "texture": "#2"},
"west": {"uv": [12, 0, 16, 11], "texture": "#2"},
"up": {"uv": [12, 0, 16, 16], "rotation": 90, "texture": "#2"},
"down": {"uv": [12, 0, 16, 16], "rotation": 90, "texture": "#2"}
"north": {"uv": [0, 8, 8, 13.5], "texture": "#4"},
"east": {"uv": [6, 8, 8, 13.5], "texture": "#4"},
"south": {"uv": [0, 8, 8, 13.5], "texture": "#4"},
"west": {"uv": [0, 8, 2, 13.5], "texture": "#4"},
"up": {"uv": [6, 0, 8, 8], "rotation": 270, "texture": "#4"},
"down": {"uv": [8, 0, 10, 8], "rotation": 270, "texture": "#4"}
}
},
{
@ -74,10 +70,10 @@
"from": [0, 0, 4],
"to": [16, 4, 12],
"faces": {
"east": {"uv": [4, 7, 12, 11], "texture": "#2"},
"west": {"uv": [4, 7, 12, 11], "texture": "#2"},
"up": {"uv": [0, 2, 16, 10], "texture": "#2"},
"down": {"uv": [4, 0, 12, 16], "rotation": 90, "texture": "#2"}
"east": {"uv": [2, 11.5, 6, 13.5], "texture": "#4"},
"west": {"uv": [2, 11.5, 6, 13.5], "texture": "#4"},
"up": {"uv": [8, 2, 16, 6], "rotation": 180, "texture": "#4"},
"down": {"uv": [10, 0, 14, 8], "rotation": 270, "texture": "#4"}
}
}
]

View file

@ -2,9 +2,8 @@
"credit": "Made with Blockbench",
"parent": "block/block",
"textures": {
"particle": "create:block/brass_casing_side",
"1": "create:block/belt_support_side",
"2": "create:block/brass_casing_side"
"3": "create:block/brass_casing_belt",
"particle": "create:block/brass_casing"
},
"elements": [
{
@ -12,12 +11,12 @@
"from": [0, 0, 0],
"to": [16, 11, 16],
"faces": {
"north": {"uv": [0, 0, 16, 11], "texture": "#1"},
"east": {"uv": [0, 0, 16, 11], "texture": "#2"},
"south": {"uv": [0, 0, 16, 11], "texture": "#1"},
"west": {"uv": [0, 0, 16, 11], "texture": "#2"},
"up": {"uv": [0, 0, 16, 16], "rotation": 90, "texture": "#2"},
"down": {"uv": [0, 0, 16, 16], "rotation": 90, "texture": "#2"}
"north": {"uv": [0, 8, 8, 13.5], "texture": "#3"},
"east": {"uv": [0, 8, 8, 13.5], "texture": "#3"},
"south": {"uv": [0, 8, 8, 13.5], "texture": "#3"},
"west": {"uv": [0, 8, 8, 13.5], "texture": "#3"},
"up": {"uv": [0, 0, 8, 8], "rotation": 90, "texture": "#3"},
"down": {"uv": [8, 0, 16, 8], "rotation": 90, "texture": "#3"}
}
}
]

View file

@ -2,10 +2,9 @@
"credit": "Made with Blockbench",
"parent": "block/block",
"textures": {
"particle": "create:block/brass_casing_side",
"1": "create:block/belt_support_side",
"2": "create:block/brass_casing_side",
"8": "create:block/gearbox"
"4": "create:block/brass_casing_belt",
"8": "create:block/gearbox",
"particle": "create:block/brass_casing"
},
"elements": [
{
@ -13,47 +12,21 @@
"from": [1, 5, 2],
"to": [15, 11, 14],
"faces": {
"north": {"uv": [0, 0, 15, 6], "texture": "#1"},
"east": {"uv": [2, 5, 14, 11], "texture": "#8"},
"south": {"uv": [0, 0, 15, 6], "texture": "#1"},
"west": {"uv": [2, 5, 14, 11], "texture": "#8"}
}
},
{
"name": "Left",
"name": "Right",
"from": [0, 0, 0],
"to": [16, 11, 4],
"faces": {
"north": {"uv": [0, 0, 16, 11], "texture": "#2"},
"east": {"uv": [12, 0, 16, 11], "texture": "#2"},
"south": {"uv": [14, 0, 16, 11], "texture": "#2"},
"west": {"uv": [0, 0, 4, 11], "texture": "#2"},
"up": {"uv": [0, 0, 4, 16], "rotation": 90, "texture": "#2"},
"down": {"uv": [0, 0, 4, 16], "rotation": 90, "texture": "#2"}
}
},
{
"name": "Zfighter",
"from": [0.5, 0.1, -0.1],
"to": [15.5, 10.9, 0.9],
"faces": {
"north": {"uv": [0, 0, 15, 10.8], "texture": "#2"},
"east": {"uv": [12, 0, 13, 10.8], "texture": "#2"},
"west": {"uv": [0, 0, 1, 10.8], "texture": "#2"},
"up": {"uv": [0, 0, 15, 1], "texture": "#2"},
"down": {"uv": [0, 0, 1, 15], "rotation": 90, "texture": "#2"}
}
},
{
"name": "Zfighter2",
"from": [0.5, 0.1, 15.1],
"to": [15.5, 10.9, 16.1],
"faces": {
"east": {"uv": [12, 0, 13, 10.8], "texture": "#2"},
"south": {"uv": [0, 0, 15, 10.8], "texture": "#2"},
"west": {"uv": [0, 0, 1, 10.8], "texture": "#2"},
"up": {"uv": [0, 0, 15, 1], "texture": "#2"},
"down": {"uv": [0, 0, 1, 15], "rotation": 90, "texture": "#2"}
"north": {"uv": [0, 8, 8, 13.5], "texture": "#4"},
"east": {"uv": [6, 8, 8, 13.5], "texture": "#4"},
"south": {"uv": [0, 8, 8, 13.5], "texture": "#4"},
"west": {"uv": [0, 8, 2, 13.5], "texture": "#4"},
"up": {"uv": [6, 0, 8, 8], "rotation": 270, "texture": "#4"},
"down": {"uv": [8, 0, 10, 8], "rotation": 270, "texture": "#4"}
}
},
{
@ -61,12 +34,12 @@
"from": [0, 0, 12],
"to": [16, 11, 16],
"faces": {
"north": {"uv": [0, 0, 2, 11], "texture": "#2"},
"east": {"uv": [0, 0, 4, 11], "texture": "#2"},
"south": {"uv": [0, 0, 16, 11], "texture": "#2"},
"west": {"uv": [12, 0, 16, 11], "texture": "#2"},
"up": {"uv": [12, 0, 16, 16], "rotation": 90, "texture": "#2"},
"down": {"uv": [12, 0, 16, 16], "rotation": 90, "texture": "#2"}
"north": {"uv": [8, 8, 0, 13.5], "texture": "#4"},
"east": {"uv": [8, 8, 6, 13.5], "texture": "#4"},
"south": {"uv": [8, 8, 0, 13.5], "texture": "#4"},
"west": {"uv": [2, 8, 0, 13.5], "texture": "#4"},
"up": {"uv": [8, 0, 6, 8], "rotation": 270, "texture": "#4"},
"down": {"uv": [10, 0, 8, 8], "rotation": 270, "texture": "#4"}
}
},
{
@ -74,10 +47,10 @@
"from": [0, 0, 4],
"to": [16, 4, 12],
"faces": {
"east": {"uv": [4, 7, 12, 11], "texture": "#2"},
"west": {"uv": [4, 7, 12, 11], "texture": "#2"},
"up": {"uv": [0, 2, 16, 10], "texture": "#2"},
"down": {"uv": [4, 0, 12, 16], "rotation": 90, "texture": "#2"}
"east": {"uv": [2, 11.5, 6, 13.5], "texture": "#4"},
"west": {"uv": [2, 11.5, 6, 13.5], "texture": "#4"},
"up": {"uv": [8, 2, 16, 6], "rotation": 180, "texture": "#4"},
"down": {"uv": [10, 0, 14, 8], "rotation": 270, "texture": "#4"}
}
}
]

View file

@ -2,10 +2,9 @@
"credit": "Made with Blockbench",
"parent": "block/block",
"textures": {
"particle": "create:block/brass_casing_side",
"1": "create:block/belt_support_side",
"2": "create:block/brass_casing_side",
"8": "create:block/gearbox"
"4": "create:block/brass_casing_belt",
"8": "create:block/gearbox",
"particle": "create:block/brass_casing"
},
"elements": [
{
@ -13,47 +12,44 @@
"from": [1, 5, 2],
"to": [15, 11, 14],
"faces": {
"north": {"uv": [0, 0, 15, 6], "texture": "#1"},
"east": {"uv": [2, 5, 14, 11], "texture": "#8"},
"south": {"uv": [0, 0, 15, 6], "texture": "#1"},
"west": {"uv": [2, 5, 14, 11], "texture": "#8"}
}
},
{
"name": "Left",
"from": [0, 0, 0],
"to": [16, 3, 4],
"faces": {
"north": {"uv": [0, 12, 8, 13.5], "texture": "#4"},
"east": {"uv": [6, 12, 8, 13.5], "texture": "#4"},
"west": {"uv": [0, 12, 2, 13.5], "texture": "#4"},
"up": {"uv": [8, 3, 16, 5], "texture": "#4"},
"down": {"uv": [6, 0, 8, 8], "rotation": 90, "texture": "#4"}
}
},
{
"name": "Left",
"from": [0, 3, 0],
"to": [1, 11, 4],
"faces": {
"north": {"uv": [7.5, 8, 8, 12], "texture": "#4"},
"east": {"uv": [6, 8, 8, 12], "texture": "#4"},
"south": {"uv": [0, 8, 0.5, 12], "texture": "#4"},
"west": {"uv": [0, 8, 2, 12], "texture": "#4"},
"up": {"uv": [0, 7.5, 2, 8], "rotation": 90, "texture": "#4"}
}
},
{
"name": "Left",
"from": [15, 3, 0],
"to": [16, 11, 4],
"faces": {
"north": {"uv": [0, 0, 16, 11], "texture": "#2"},
"east": {"uv": [12, 0, 16, 11], "texture": "#2"},
"south": {"uv": [14, 0, 16, 11], "texture": "#2"},
"west": {"uv": [0, 0, 4, 11], "texture": "#2"},
"up": {"uv": [0, 0, 4, 16], "rotation": 90, "texture": "#2"},
"down": {"uv": [0, 0, 4, 16], "rotation": 90, "texture": "#2"}
}
},
{
"name": "Zfighter",
"from": [0.5, 0.1, -0.1],
"to": [15.5, 10.9, 0.9],
"faces": {
"north": {"uv": [0, 0, 15, 10.8], "texture": "#2"},
"east": {"uv": [12, 0, 13, 10.8], "texture": "#2"},
"west": {"uv": [0, 0, 1, 10.8], "texture": "#2"},
"up": {"uv": [0, 0, 15, 1], "texture": "#2"},
"down": {"uv": [0, 0, 1, 15], "rotation": 90, "texture": "#2"}
}
},
{
"name": "Zfighter2",
"from": [0.5, 0.1, 15.1],
"to": [15.5, 10.9, 16.1],
"faces": {
"east": {"uv": [12, 0, 13, 10.8], "texture": "#2"},
"south": {"uv": [0, 0, 15, 10.8], "texture": "#2"},
"west": {"uv": [0, 0, 1, 10.8], "texture": "#2"},
"up": {"uv": [0, 0, 15, 1], "texture": "#2"},
"down": {"uv": [0, 0, 1, 15], "rotation": 90, "texture": "#2"}
"north": {"uv": [8, 8, 7.5, 12], "texture": "#4"},
"east": {"uv": [2, 8, 0, 12], "texture": "#4"},
"south": {"uv": [0.5, 8, 0, 12], "texture": "#4"},
"west": {"uv": [8, 8, 6, 12], "texture": "#4"},
"up": {"uv": [0, 8, 2, 7.5], "rotation": 90, "texture": "#4"}
}
},
{
@ -61,12 +57,12 @@
"from": [0, 0, 12],
"to": [16, 11, 16],
"faces": {
"north": {"uv": [0, 0, 2, 11], "texture": "#2"},
"east": {"uv": [0, 0, 4, 11], "texture": "#2"},
"south": {"uv": [0, 0, 16, 11], "texture": "#2"},
"west": {"uv": [12, 0, 16, 11], "texture": "#2"},
"up": {"uv": [12, 0, 16, 16], "rotation": 90, "texture": "#2"},
"down": {"uv": [12, 0, 16, 16], "rotation": 90, "texture": "#2"}
"north": {"uv": [0, 8, 8, 13.5], "texture": "#4"},
"east": {"uv": [0, 8, 2, 13.5], "texture": "#4"},
"south": {"uv": [0, 8, 8, 13.5], "texture": "#4"},
"west": {"uv": [6, 8, 8, 13.5], "texture": "#4"},
"up": {"uv": [6, 0, 8, 8], "rotation": 90, "texture": "#4"},
"down": {"uv": [8, 0, 10, 8], "rotation": 90, "texture": "#4"}
}
},
{
@ -74,10 +70,10 @@
"from": [0, 0, 4],
"to": [16, 4, 12],
"faces": {
"east": {"uv": [4, 7, 12, 11], "texture": "#2"},
"west": {"uv": [4, 7, 12, 11], "texture": "#2"},
"up": {"uv": [0, 2, 16, 10], "texture": "#2"},
"down": {"uv": [4, 0, 12, 16], "rotation": 90, "texture": "#2"}
"east": {"uv": [2, 11.5, 6, 13.5], "texture": "#4"},
"west": {"uv": [2, 11.5, 6, 13.5], "texture": "#4"},
"up": {"uv": [8, 2, 16, 6], "texture": "#4"},
"down": {"uv": [10, 0, 14, 8], "rotation": 90, "texture": "#4"}
}
}
]

View file

@ -1,5 +1,123 @@
{
"_comment": "Vertical belts cannot have casings at the moment",
"textures": {},
"elements": []
"credit": "Made with Blockbench",
"parent": "block/block",
"textures": {
"3": "create:block/brass_casing_belt",
"8": "create:block/gearbox",
"particle": "create:block/brass_casing"
},
"elements": [
{
"name": "Casing",
"from": [5, 0, 0],
"to": [11, 16, 4],
"faces": {
"north": {"uv": [8, 12.5, 16, 15.5], "rotation": 90, "texture": "#3"},
"east": {"uv": [6, 0, 8, 8], "texture": "#3"},
"south": {"uv": [8, 12.5, 16, 15.5], "rotation": 90, "texture": "#3"},
"west": {"uv": [0, 0, 2, 8], "texture": "#3"},
"up": {"uv": [8, 12.5, 10, 15.5], "rotation": 270, "texture": "#3"},
"down": {"uv": [8, 12.5, 10, 15.5], "rotation": 270, "texture": "#3"}
}
},
{
"name": "Casing",
"from": [5, 15, 12],
"to": [11, 16, 16],
"faces": {
"north": {"uv": [8, 12.5, 8.5, 15.5], "rotation": 90, "texture": "#3"},
"east": {"uv": [0, 0, 2, 0.5], "texture": "#3"},
"south": {"uv": [8, 12.5, 8.5, 15.5], "rotation": 90, "texture": "#3"},
"west": {"uv": [6, 0, 8, 0.5], "texture": "#3"},
"up": {"uv": [8, 12.5, 10, 15.5], "rotation": 270, "texture": "#3"},
"down": {"uv": [8, 12.5, 10, 15.5], "rotation": 270, "texture": "#3"}
}
},
{
"name": "Casing",
"from": [2, 14, 2],
"to": [5, 16, 14],
"faces": {
"north": {"uv": [6.5, 12.5, 8, 13.5], "texture": "#3"},
"east": {"uv": [0, 13.5, 6, 14.5], "texture": "#3"},
"south": {"uv": [0, 12.5, 1.5, 13.5], "texture": "#3"},
"west": {"uv": [1, 12.5, 7, 13.5], "texture": "#3"},
"up": {"uv": [0, 13.5, 6, 15], "rotation": 90, "texture": "#3"},
"down": {"uv": [0, 13.5, 6, 15], "rotation": 90, "texture": "#3"}
}
},
{
"name": "Casing",
"from": [2, 0, 2],
"to": [5, 2, 14],
"faces": {
"north": {"uv": [6.5, 13.5, 8, 12.5], "texture": "#3"},
"east": {"uv": [0, 14.5, 6, 13.5], "texture": "#3"},
"south": {"uv": [0, 13.5, 1.5, 12.5], "texture": "#3"},
"west": {"uv": [1, 13.5, 7, 12.5], "texture": "#3"},
"up": {"uv": [6, 13.5, 0, 15], "rotation": 90, "texture": "#3"},
"down": {"uv": [6, 13.5, 0, 15], "rotation": 90, "texture": "#3"}
}
},
{
"name": "Casing",
"from": [11, 14, 2],
"to": [14, 16, 14],
"faces": {
"north": {"uv": [8, 12.5, 6.5, 13.5], "texture": "#3"},
"east": {"uv": [7, 12.5, 1, 13.5], "texture": "#3"},
"south": {"uv": [1.5, 12.5, 0, 13.5], "texture": "#3"},
"west": {"uv": [6, 13.5, 0, 14.5], "texture": "#3"},
"up": {"uv": [0, 15, 6, 13.5], "rotation": 90, "texture": "#3"},
"down": {"uv": [0, 15, 6, 13.5], "rotation": 90, "texture": "#3"}
}
},
{
"name": "Casing",
"from": [11, 0, 2],
"to": [14, 2, 14],
"faces": {
"north": {"uv": [8, 13.5, 6.5, 12.5], "texture": "#3"},
"east": {"uv": [7, 13.5, 1, 12.5], "texture": "#3"},
"south": {"uv": [1.5, 13.5, 0, 12.5], "texture": "#3"},
"west": {"uv": [6, 14.5, 0, 13.5], "texture": "#3"},
"up": {"uv": [6, 15, 0, 13.5], "rotation": 90, "texture": "#3"},
"down": {"uv": [6, 15, 0, 13.5], "rotation": 90, "texture": "#3"}
}
},
{
"name": "Casing",
"from": [5, 0, 12],
"to": [11, 1, 16],
"faces": {
"north": {"uv": [8.5, 12.5, 8, 15.5], "rotation": 90, "texture": "#3"},
"east": {"uv": [0, 0.5, 2, 0], "texture": "#3"},
"south": {"uv": [8.5, 12.5, 8, 15.5], "rotation": 90, "texture": "#3"},
"west": {"uv": [6, 0.5, 8, 0], "texture": "#3"},
"up": {"uv": [10, 12.5, 8, 15.5], "rotation": 270, "texture": "#3"},
"down": {"uv": [10, 12.5, 8, 15.5], "rotation": 270, "texture": "#3"}
}
},
{
"name": "Casing",
"from": [5, 1, 2],
"to": [11, 15, 14],
"faces": {
"up": {"uv": [2, 5, 14, 11], "rotation": 90, "texture": "#8"},
"down": {"uv": [2, 5, 14, 11], "rotation": 90, "texture": "#8"}
}
}
],
"groups": [
{
"name": "horizontal_middle",
"origin": [8, 8, 8],
"children": [0, 1, 2, 3, 4, 5, 6]
},
{
"name": "horizontal_start",
"origin": [8, 8, 8],
"children": [7]
}
]
}

View file

@ -1,5 +1,30 @@
{
"_comment": "Vertical belts cannot have casings at the moment",
"textures": {},
"elements": []
"credit": "Made with Blockbench",
"parent": "block/block",
"textures": {
"3": "create:block/brass_casing_belt",
"particle": "create:block/brass_casing"
},
"elements": [
{
"name": "Casing",
"from": [5, 0, 0],
"to": [11, 16, 16],
"faces": {
"north": {"uv": [8, 12.5, 16, 15.5], "rotation": 90, "texture": "#3"},
"east": {"uv": [0, 0, 8, 8], "rotation": 270, "texture": "#3"},
"south": {"uv": [8, 12.5, 16, 15.5], "rotation": 90, "texture": "#3"},
"west": {"uv": [0, 0, 8, 8], "texture": "#3"},
"up": {"uv": [8, 12.5, 16, 15.5], "rotation": 90, "texture": "#3"},
"down": {"uv": [8, 12.5, 16, 15.5], "rotation": 90, "texture": "#3"}
}
}
],
"groups": [
{
"name": "horizontal_middle",
"origin": [8, 8, 8],
"children": [0]
}
]
}

View file

@ -1,5 +1,110 @@
{
"_comment": "Vertical belts cannot have casings at the moment",
"textures": {},
"elements": []
"credit": "Made with Blockbench",
"parent": "block/block",
"textures": {
"3": "create:block/brass_casing_belt",
"8": "create:block/gearbox",
"particle": "create:block/brass_casing"
},
"elements": [
{
"name": "Casing",
"from": [5, 0, 0],
"to": [11, 16, 4],
"faces": {
"north": {"uv": [8, 12.5, 16, 15.5], "rotation": 90, "texture": "#3"},
"east": {"uv": [6, 0, 8, 8], "texture": "#3"},
"south": {"uv": [8, 12.5, 16, 15.5], "rotation": 90, "texture": "#3"},
"west": {"uv": [0, 0, 2, 8], "texture": "#3"},
"up": {"uv": [8, 12.5, 10, 15.5], "rotation": 270, "texture": "#3"},
"down": {"uv": [8, 12.5, 10, 15.5], "rotation": 270, "texture": "#3"}
}
},
{
"name": "Casing",
"from": [5, 0, 12],
"to": [11, 16, 16],
"faces": {
"north": {"uv": [8, 15.5, 16, 12.5], "rotation": 90, "texture": "#3"},
"east": {"uv": [8, 0, 6, 8], "texture": "#3"},
"south": {"uv": [8, 15.5, 16, 12.5], "rotation": 90, "texture": "#3"},
"west": {"uv": [2, 0, 0, 8], "texture": "#3"},
"up": {"uv": [10, 12.5, 8, 15.5], "rotation": 270, "texture": "#3"},
"down": {"uv": [10, 12.5, 8, 15.5], "rotation": 270, "texture": "#3"}
}
},
{
"name": "Casing",
"from": [2, 14, 2],
"to": [5, 16, 14],
"faces": {
"north": {"uv": [6.5, 12.5, 8, 13.5], "texture": "#3"},
"east": {"uv": [0, 13.5, 6, 14.5], "texture": "#3"},
"south": {"uv": [0, 12.5, 1.5, 13.5], "texture": "#3"},
"west": {"uv": [1, 12.5, 7, 13.5], "texture": "#3"},
"up": {"uv": [0, 13.5, 6, 15], "rotation": 90, "texture": "#3"},
"down": {"uv": [0, 13.5, 6, 15], "rotation": 90, "texture": "#3"}
}
},
{
"name": "Casing",
"from": [2, 0, 2],
"to": [5, 2, 14],
"faces": {
"north": {"uv": [6.5, 13.5, 8, 12.5], "texture": "#3"},
"east": {"uv": [0, 14.5, 6, 13.5], "texture": "#3"},
"south": {"uv": [0, 13.5, 1.5, 12.5], "texture": "#3"},
"west": {"uv": [1, 13.5, 7, 12.5], "texture": "#3"},
"up": {"uv": [6, 13.5, 0, 15], "rotation": 90, "texture": "#3"},
"down": {"uv": [6, 13.5, 0, 15], "rotation": 90, "texture": "#3"}
}
},
{
"name": "Casing",
"from": [11, 14, 2],
"to": [14, 16, 14],
"faces": {
"north": {"uv": [8, 12.5, 6.5, 13.5], "texture": "#3"},
"east": {"uv": [7, 12.5, 1, 13.5], "texture": "#3"},
"south": {"uv": [1.5, 12.5, 0, 13.5], "texture": "#3"},
"west": {"uv": [6, 13.5, 0, 14.5], "texture": "#3"},
"up": {"uv": [0, 15, 6, 13.5], "rotation": 90, "texture": "#3"},
"down": {"uv": [0, 15, 6, 13.5], "rotation": 90, "texture": "#3"}
}
},
{
"name": "Casing",
"from": [11, 0, 2],
"to": [14, 2, 14],
"faces": {
"north": {"uv": [8, 13.5, 6.5, 12.5], "texture": "#3"},
"east": {"uv": [7, 13.5, 1, 12.5], "texture": "#3"},
"south": {"uv": [1.5, 13.5, 0, 12.5], "texture": "#3"},
"west": {"uv": [6, 14.5, 0, 13.5], "texture": "#3"},
"up": {"uv": [6, 15, 0, 13.5], "rotation": 90, "texture": "#3"},
"down": {"uv": [6, 15, 0, 13.5], "rotation": 90, "texture": "#3"}
}
},
{
"name": "Casing",
"from": [5, 1, 2],
"to": [11, 15, 14],
"faces": {
"up": {"uv": [2, 5, 14, 11], "rotation": 90, "texture": "#8"},
"down": {"uv": [2, 5, 14, 11], "rotation": 90, "texture": "#8"}
}
}
],
"groups": [
{
"name": "horizontal_middle",
"origin": [8, 8, 8],
"children": [0, 1, 2, 3, 4, 5]
},
{
"name": "horizontal_start",
"origin": [8, 8, 8],
"children": [6]
}
]
}

View file

@ -1,5 +1,123 @@
{
"_comment": "Vertical belts cannot have casings at the moment",
"textures": {},
"elements": []
"credit": "Made with Blockbench",
"parent": "block/block",
"textures": {
"3": "create:block/brass_casing_belt",
"8": "create:block/gearbox",
"particle": "create:block/brass_casing"
},
"elements": [
{
"name": "Casing",
"from": [5, 0, 12],
"to": [11, 16, 16],
"faces": {
"north": {"uv": [8, 12.5, 16, 15.5], "rotation": 90, "texture": "#3"},
"east": {"uv": [0, 0, 2, 8], "texture": "#3"},
"south": {"uv": [8, 12.5, 16, 15.5], "rotation": 90, "texture": "#3"},
"west": {"uv": [6, 0, 8, 8], "texture": "#3"},
"up": {"uv": [8, 12.5, 10, 15.5], "rotation": 90, "texture": "#3"},
"down": {"uv": [8, 12.5, 10, 15.5], "rotation": 90, "texture": "#3"}
}
},
{
"name": "Casing",
"from": [5, 15, 0],
"to": [11, 16, 4],
"faces": {
"north": {"uv": [8, 12.5, 8.5, 15.5], "rotation": 90, "texture": "#3"},
"east": {"uv": [6, 0, 8, 0.5], "texture": "#3"},
"south": {"uv": [8, 12.5, 8.5, 15.5], "rotation": 90, "texture": "#3"},
"west": {"uv": [0, 0, 2, 0.5], "texture": "#3"},
"up": {"uv": [8, 12.5, 10, 15.5], "rotation": 90, "texture": "#3"},
"down": {"uv": [8, 12.5, 10, 15.5], "rotation": 90, "texture": "#3"}
}
},
{
"name": "Casing",
"from": [11, 14, 2],
"to": [14, 16, 14],
"faces": {
"north": {"uv": [0, 12.5, 1.5, 13.5], "texture": "#3"},
"east": {"uv": [1, 12.5, 7, 13.5], "texture": "#3"},
"south": {"uv": [6.5, 12.5, 8, 13.5], "texture": "#3"},
"west": {"uv": [0, 13.5, 6, 14.5], "texture": "#3"},
"up": {"uv": [0, 13.5, 6, 15], "rotation": 270, "texture": "#3"},
"down": {"uv": [0, 13.5, 6, 15], "rotation": 270, "texture": "#3"}
}
},
{
"name": "Casing",
"from": [11, 0, 2],
"to": [14, 2, 14],
"faces": {
"north": {"uv": [0, 13.5, 1.5, 12.5], "texture": "#3"},
"east": {"uv": [1, 13.5, 7, 12.5], "texture": "#3"},
"south": {"uv": [6.5, 13.5, 8, 12.5], "texture": "#3"},
"west": {"uv": [0, 14.5, 6, 13.5], "texture": "#3"},
"up": {"uv": [6, 13.5, 0, 15], "rotation": 270, "texture": "#3"},
"down": {"uv": [6, 13.5, 0, 15], "rotation": 270, "texture": "#3"}
}
},
{
"name": "Casing",
"from": [2, 14, 2],
"to": [5, 16, 14],
"faces": {
"north": {"uv": [1.5, 12.5, 0, 13.5], "texture": "#3"},
"east": {"uv": [6, 13.5, 0, 14.5], "texture": "#3"},
"south": {"uv": [8, 12.5, 6.5, 13.5], "texture": "#3"},
"west": {"uv": [7, 12.5, 1, 13.5], "texture": "#3"},
"up": {"uv": [0, 15, 6, 13.5], "rotation": 270, "texture": "#3"},
"down": {"uv": [0, 15, 6, 13.5], "rotation": 270, "texture": "#3"}
}
},
{
"name": "Casing",
"from": [2, 0, 2],
"to": [5, 2, 14],
"faces": {
"north": {"uv": [1.5, 13.5, 0, 12.5], "texture": "#3"},
"east": {"uv": [6, 14.5, 0, 13.5], "texture": "#3"},
"south": {"uv": [8, 13.5, 6.5, 12.5], "texture": "#3"},
"west": {"uv": [7, 13.5, 1, 12.5], "texture": "#3"},
"up": {"uv": [6, 15, 0, 13.5], "rotation": 270, "texture": "#3"},
"down": {"uv": [6, 15, 0, 13.5], "rotation": 270, "texture": "#3"}
}
},
{
"name": "Casing",
"from": [5, 0, 0],
"to": [11, 1, 4],
"faces": {
"north": {"uv": [8.5, 12.5, 8, 15.5], "rotation": 90, "texture": "#3"},
"east": {"uv": [6, 0.5, 8, 0], "texture": "#3"},
"south": {"uv": [8.5, 12.5, 8, 15.5], "rotation": 90, "texture": "#3"},
"west": {"uv": [0, 0.5, 2, 0], "texture": "#3"},
"up": {"uv": [10, 12.5, 8, 15.5], "rotation": 90, "texture": "#3"},
"down": {"uv": [10, 12.5, 8, 15.5], "rotation": 90, "texture": "#3"}
}
},
{
"name": "Casing",
"from": [5, 1, 2],
"to": [11, 15, 14],
"faces": {
"up": {"uv": [2, 5, 14, 11], "rotation": 270, "texture": "#8"},
"down": {"uv": [2, 5, 14, 11], "rotation": 270, "texture": "#8"}
}
}
],
"groups": [
{
"name": "horizontal_middle",
"origin": [8, 8, 8],
"children": [0, 1, 2, 3, 4, 5, 6]
},
{
"name": "horizontal_start",
"origin": [8, 8, 8],
"children": [7]
}
]
}

View file

@ -1,5 +0,0 @@
{
"_comment": "Vertical belts cannot have casings at the moment",
"textures": {},
"elements": []
}

View file

@ -1,5 +0,0 @@
{
"_comment": "Vertical belts cannot have casings at the moment",
"textures": {},
"elements": []
}

View file

@ -1,5 +0,0 @@
{
"_comment": "Vertical belts cannot have casings at the moment",
"textures": {},
"elements": []
}

View file

@ -1,5 +0,0 @@
{
"_comment": "Vertical belts cannot have casings at the moment",
"textures": {},
"elements": []
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 318 B

After

Width:  |  Height:  |  Size: 215 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB