A less messy mess Part I

- Reworked Particle Registry to fix sidedness issues
- Removed some unused models, blocks and textures
- Added missing loot tables
- Fixed all models falsely inheriting from block/cube
- Updated Forge
- Restored server functionality
This commit is contained in:
simibubi 2020-01-20 13:41:41 +01:00
parent f48f5fe101
commit e902d269f4
86 changed files with 448 additions and 389 deletions

View file

@ -20,7 +20,7 @@ archivesBaseName = 'create'
sourceCompatibility = targetCompatibility = compileJava.sourceCompatibility = compileJava.targetCompatibility = '1.8' sourceCompatibility = targetCompatibility = compileJava.sourceCompatibility = compileJava.targetCompatibility = '1.8'
minecraft { minecraft {
mappings channel: 'snapshot', version: '20191221-1.14.3' mappings channel: 'snapshot', version: '20200119-1.14.3'
runs { runs {
client { client {
@ -71,7 +71,7 @@ repositories {
} }
dependencies { dependencies {
minecraft 'net.minecraftforge:forge:1.14.4-28.1.107' minecraft 'net.minecraftforge:forge:1.14.4-28.1.115'
// compile against the JEI API but do not include it at runtime // compile against the JEI API but do not include it at runtime
compileOnly fg.deobf("mezz.jei:jei-1.14.4:6.0.0.26:api") compileOnly fg.deobf("mezz.jei:jei-1.14.4:6.0.0.26:api")

View file

@ -10,7 +10,7 @@ import com.simibubi.create.foundation.block.RenderUtilityDirectionalBlock;
import com.simibubi.create.foundation.block.connected.CTSpriteShifter; import com.simibubi.create.foundation.block.connected.CTSpriteShifter;
import com.simibubi.create.foundation.block.connected.CTSpriteShifter.CTType; import com.simibubi.create.foundation.block.connected.CTSpriteShifter.CTType;
import com.simibubi.create.foundation.utility.Lang; import com.simibubi.create.foundation.utility.Lang;
import com.simibubi.create.foundation.world.CopperOreBlock; import com.simibubi.create.foundation.world.OxidizingBlock;
import com.simibubi.create.modules.IModule; import com.simibubi.create.modules.IModule;
import com.simibubi.create.modules.contraptions.components.actors.DrillBlock; import com.simibubi.create.modules.contraptions.components.actors.DrillBlock;
import com.simibubi.create.modules.contraptions.components.actors.DrillBlock.DrillHeadBlock; import com.simibubi.create.modules.contraptions.components.actors.DrillBlock.DrillHeadBlock;
@ -94,6 +94,7 @@ import net.minecraft.item.BlockItem;
import net.minecraft.item.Item; import net.minecraft.item.Item;
import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.api.distmarker.Dist;
import net.minecraftforge.api.distmarker.OnlyIn; import net.minecraftforge.api.distmarker.OnlyIn;
import net.minecraftforge.common.ToolType;
import net.minecraftforge.event.RegistryEvent; import net.minecraftforge.event.RegistryEvent;
import net.minecraftforge.registries.IForgeRegistry; import net.minecraftforge.registries.IForgeRegistry;
@ -118,7 +119,6 @@ public enum AllBlocks {
GEARBOX(new GearboxBlock()), GEARBOX(new GearboxBlock()),
BELT(new BeltBlock()), BELT(new BeltBlock()),
BELT_PULLEY(new RenderUtilityAxisBlock()), BELT_PULLEY(new RenderUtilityAxisBlock()),
BELT_ANIMATION(new RenderUtilityBlock()),
MOTOR(new MotorBlock()), MOTOR(new MotorBlock()),
WATER_WHEEL(new WaterWheelBlock()), WATER_WHEEL(new WaterWheelBlock()),
ENCASED_FAN(new EncasedFanBlock()), ENCASED_FAN(new EncasedFanBlock()),
@ -237,8 +237,8 @@ public enum AllBlocks {
VOLCANIC_ROCK(new VolcanicRockBlock()), VOLCANIC_ROCK(new VolcanicRockBlock()),
__MATERIALS__(), __MATERIALS__(),
COPPER_ORE(new CopperOreBlock()), COPPER_ORE(new OxidizingBlock(Properties.from(Blocks.IRON_ORE), 1)),
ZINC_ORE(new Block(Properties.from(Blocks.GOLD_ORE))), ZINC_ORE(new Block(Properties.from(Blocks.GOLD_ORE).harvestLevel(2).harvestTool(ToolType.PICKAXE))),
; ;

View file

@ -3,32 +3,33 @@ package com.simibubi.create;
import java.util.function.Supplier; import java.util.function.Supplier;
import com.simibubi.create.foundation.utility.Lang; import com.simibubi.create.foundation.utility.Lang;
import com.simibubi.create.modules.contraptions.particle.AirFlowParticle; import com.simibubi.create.modules.contraptions.particle.AirFlowParticleData;
import com.simibubi.create.modules.contraptions.particle.RotationIndicatorParticle; import com.simibubi.create.modules.contraptions.particle.ICustomParticle;
import com.simibubi.create.modules.contraptions.particle.RotationIndicatorParticleData;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.particle.ParticleManager; import net.minecraft.client.particle.ParticleManager;
import net.minecraft.client.particle.ParticleManager.IParticleMetaFactory;
import net.minecraft.particles.IParticleData; import net.minecraft.particles.IParticleData;
import net.minecraft.particles.ParticleType; import net.minecraft.particles.ParticleType;
import net.minecraft.util.ResourceLocation; import net.minecraft.util.ResourceLocation;
import net.minecraftforge.api.distmarker.Dist;
import net.minecraftforge.api.distmarker.OnlyIn;
import net.minecraftforge.client.event.ParticleFactoryRegisterEvent; import net.minecraftforge.client.event.ParticleFactoryRegisterEvent;
import net.minecraftforge.event.RegistryEvent; import net.minecraftforge.event.RegistryEvent;
import net.minecraftforge.registries.IForgeRegistry; import net.minecraftforge.registries.IForgeRegistry;
public enum AllParticles { public enum AllParticles {
ROTATION_INDICATOR(RotationIndicatorParticle.Type::new, RotationIndicatorParticle.Factory::new), ROTATION_INDICATOR(RotationIndicatorParticleData::new),
AIR_FLOW(AirFlowParticle.Type::new, AirFlowParticle.Factory::new), AIR_FLOW(AirFlowParticleData::new),
; ;
private ParticleEntry<?> entry; private ParticleEntry<?> entry;
private <D extends IParticleData> AllParticles(Supplier<? extends ParticleType<D>> typeFactory, private <D extends IParticleData> AllParticles(Supplier<? extends ICustomParticle<D>> typeFactory) {
IParticleMetaFactory<D> particleFactory) {
String asId = Lang.asId(this.name().toLowerCase()); String asId = Lang.asId(this.name().toLowerCase());
entry = new ParticleEntry<D>(new ResourceLocation(Create.ID, asId), typeFactory, particleFactory); entry = new ParticleEntry<D>(new ResourceLocation(Create.ID, asId), typeFactory);
} }
public static void register(RegistryEvent.Register<ParticleType<?>> event) { public static void register(RegistryEvent.Register<ParticleType<?>> event) {
@ -36,6 +37,7 @@ public enum AllParticles {
particle.entry.register(event.getRegistry()); particle.entry.register(event.getRegistry());
} }
@OnlyIn(Dist.CLIENT)
public static void registerFactories(ParticleFactoryRegisterEvent event) { public static void registerFactories(ParticleFactoryRegisterEvent event) {
ParticleManager particles = Minecraft.getInstance().particles; ParticleManager particles = Minecraft.getInstance().particles;
for (AllParticles particle : values()) for (AllParticles particle : values())
@ -51,16 +53,13 @@ public enum AllParticles {
} }
private class ParticleEntry<D extends IParticleData> { private class ParticleEntry<D extends IParticleData> {
Supplier<? extends ParticleType<D>> typeFactory; Supplier<? extends ICustomParticle<D>> typeFactory;
IParticleMetaFactory<D> particleFactory;
ParticleType<D> type; ParticleType<D> type;
ResourceLocation id; ResourceLocation id;
public ParticleEntry(ResourceLocation id, Supplier<? extends ParticleType<D>> typeFactory, public ParticleEntry(ResourceLocation id, Supplier<? extends ICustomParticle<D>> typeFactory) {
IParticleMetaFactory<D> particleFactory) {
this.id = id; this.id = id;
this.typeFactory = typeFactory; this.typeFactory = typeFactory;
this.particleFactory = particleFactory;
} }
ParticleType<?> getType() { ParticleType<?> getType() {
@ -75,14 +74,15 @@ public enum AllParticles {
void makeType() { void makeType() {
if (type == null) { if (type == null) {
type = typeFactory.get(); type = typeFactory.get().createType();
type.setRegistryName(id); type.setRegistryName(id);
} }
} }
@OnlyIn(Dist.CLIENT)
void registerFactory(ParticleManager particles) { void registerFactory(ParticleManager particles) {
makeType(); makeType();
particles.registerFactory(type, particleFactory); particles.registerFactory(type, typeFactory.get().getFactory());
} }
} }

View file

@ -105,6 +105,8 @@ public class CreateClient {
public static void onTextureStitch(TextureStitchEvent.Pre event) { public static void onTextureStitch(TextureStitchEvent.Pre event) {
if (!event.getMap().getBasePath().equals("textures")) if (!event.getMap().getBasePath().equals("textures"))
return; return;
event.addSprite(new ResourceLocation(Create.ID, "block/belt_animated"));
for (AllBlocks allBlocks : AllBlocks.values()) { for (AllBlocks allBlocks : AllBlocks.values()) {
Block block = allBlocks.get(); Block block = allBlocks.get();
if (!(block instanceof IHaveConnectedTextures)) if (!(block instanceof IHaveConnectedTextures))
@ -112,7 +114,6 @@ public class CreateClient {
for (SpriteShiftEntry spriteShiftEntry : ((IHaveConnectedTextures) block).getBehaviour().getAllCTShifts()) for (SpriteShiftEntry spriteShiftEntry : ((IHaveConnectedTextures) block).getBehaviour().getAllCTShifts())
event.addSprite(spriteShiftEntry.getTargetResourceLocation()); event.addSprite(spriteShiftEntry.getTargetResourceLocation());
} }
} }
@OnlyIn(Dist.CLIENT) @OnlyIn(Dist.CLIENT)

View file

@ -12,7 +12,6 @@ import net.minecraft.client.particle.IParticleRenderType;
import net.minecraft.client.particle.Particle; import net.minecraft.client.particle.Particle;
import net.minecraft.client.particle.SimpleAnimatedParticle; import net.minecraft.client.particle.SimpleAnimatedParticle;
import net.minecraft.particles.BlockParticleData; import net.minecraft.particles.BlockParticleData;
import net.minecraft.particles.ParticleType;
import net.minecraft.particles.ParticleTypes; import net.minecraft.particles.ParticleTypes;
import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.BlockPos;
@ -151,12 +150,6 @@ public class AirFlowParticle extends SimpleAnimatedParticle {
setSprite(field_217584_C.get(index, 8)); setSprite(field_217584_C.get(index, 8));
} }
public static class Type extends ParticleType<AirFlowParticleData> {
public Type() {
super(false, AirFlowParticleData.DESERIALIZER);
}
}
public static class Factory implements IParticleFactory<AirFlowParticleData> { public static class Factory implements IParticleFactory<AirFlowParticleData> {
private final IAnimatedSprite spriteSet; private final IAnimatedSprite spriteSet;

View file

@ -6,12 +6,15 @@ import com.mojang.brigadier.StringReader;
import com.mojang.brigadier.exceptions.CommandSyntaxException; import com.mojang.brigadier.exceptions.CommandSyntaxException;
import com.simibubi.create.AllParticles; import com.simibubi.create.AllParticles;
import net.minecraft.client.particle.ParticleManager.IParticleMetaFactory;
import net.minecraft.network.PacketBuffer; import net.minecraft.network.PacketBuffer;
import net.minecraft.particles.IParticleData; import net.minecraft.particles.IParticleData;
import net.minecraft.particles.ParticleType; import net.minecraft.particles.ParticleType;
import net.minecraft.util.math.Vec3i; import net.minecraft.util.math.Vec3i;
import net.minecraftforge.api.distmarker.Dist;
import net.minecraftforge.api.distmarker.OnlyIn;
public class AirFlowParticleData implements IParticleData { public class AirFlowParticleData implements IParticleData, ICustomParticle<AirFlowParticleData> {
public static final IParticleData.IDeserializer<AirFlowParticleData> DESERIALIZER = new IParticleData.IDeserializer<AirFlowParticleData>() { public static final IParticleData.IDeserializer<AirFlowParticleData> DESERIALIZER = new IParticleData.IDeserializer<AirFlowParticleData>() {
public AirFlowParticleData deserialize(ParticleType<AirFlowParticleData> particleTypeIn, StringReader reader) public AirFlowParticleData deserialize(ParticleType<AirFlowParticleData> particleTypeIn, StringReader reader)
@ -44,6 +47,10 @@ public class AirFlowParticleData implements IParticleData {
this.posZ = posZ; this.posZ = posZ;
} }
public AirFlowParticleData() {
this(0, 0, 0);
}
@Override @Override
public ParticleType<?> getType() { public ParticleType<?> getType() {
return AllParticles.AIR_FLOW.get(); return AllParticles.AIR_FLOW.get();
@ -61,4 +68,15 @@ public class AirFlowParticleData implements IParticleData {
return String.format(Locale.ROOT, "%s %d %d %d", AllParticles.ROTATION_INDICATOR.parameter(), posX, posY, posZ); return String.format(Locale.ROOT, "%s %d %d %d", AllParticles.ROTATION_INDICATOR.parameter(), posX, posY, posZ);
} }
@Override
public IDeserializer<AirFlowParticleData> getDeserializer() {
return DESERIALIZER;
}
@Override
@OnlyIn(Dist.CLIENT)
public IParticleMetaFactory<AirFlowParticleData> getFactory() {
return AirFlowParticle.Factory::new;
}
} }

View file

@ -0,0 +1,21 @@
package com.simibubi.create.modules.contraptions.particle;
import net.minecraft.client.particle.ParticleManager.IParticleMetaFactory;
import net.minecraft.particles.IParticleData;
import net.minecraft.particles.IParticleData.IDeserializer;
import net.minecraft.particles.ParticleType;
import net.minecraftforge.api.distmarker.Dist;
import net.minecraftforge.api.distmarker.OnlyIn;
public interface ICustomParticle<T extends IParticleData> {
public IDeserializer<T> getDeserializer();
public default ParticleType<T> createType() {
return new ParticleType<T>(false, getDeserializer());
}
@OnlyIn(Dist.CLIENT)
public IParticleMetaFactory<T> getFactory();
}

View file

@ -13,7 +13,6 @@ import net.minecraft.client.particle.Particle;
import net.minecraft.client.particle.SimpleAnimatedParticle; import net.minecraft.client.particle.SimpleAnimatedParticle;
import net.minecraft.client.renderer.ActiveRenderInfo; import net.minecraft.client.renderer.ActiveRenderInfo;
import net.minecraft.client.renderer.BufferBuilder; import net.minecraft.client.renderer.BufferBuilder;
import net.minecraft.particles.ParticleType;
import net.minecraft.util.Direction.Axis; import net.minecraft.util.Direction.Axis;
import net.minecraft.util.math.Vec3d; import net.minecraft.util.math.Vec3d;
import net.minecraft.world.World; import net.minecraft.world.World;
@ -77,12 +76,6 @@ public class RotationIndicatorParticle extends SimpleAnimatedParticle {
posZ = position.z; posZ = position.z;
} }
public static class Type extends ParticleType<RotationIndicatorParticleData> {
public Type() {
super(false, RotationIndicatorParticleData.DESERIALIZER);
}
}
public static class Factory implements IParticleFactory<RotationIndicatorParticleData> { public static class Factory implements IParticleFactory<RotationIndicatorParticleData> {
private final IAnimatedSprite spriteSet; private final IAnimatedSprite spriteSet;

View file

@ -6,12 +6,15 @@ import com.mojang.brigadier.StringReader;
import com.mojang.brigadier.exceptions.CommandSyntaxException; import com.mojang.brigadier.exceptions.CommandSyntaxException;
import com.simibubi.create.AllParticles; import com.simibubi.create.AllParticles;
import net.minecraft.client.particle.ParticleManager.IParticleMetaFactory;
import net.minecraft.network.PacketBuffer; import net.minecraft.network.PacketBuffer;
import net.minecraft.particles.IParticleData; import net.minecraft.particles.IParticleData;
import net.minecraft.particles.ParticleType; import net.minecraft.particles.ParticleType;
import net.minecraft.util.Direction.Axis; import net.minecraft.util.Direction.Axis;
import net.minecraftforge.api.distmarker.Dist;
import net.minecraftforge.api.distmarker.OnlyIn;
public class RotationIndicatorParticleData implements IParticleData { public class RotationIndicatorParticleData implements IParticleData, ICustomParticle<RotationIndicatorParticleData> {
public static final IParticleData.IDeserializer<RotationIndicatorParticleData> DESERIALIZER = new IParticleData.IDeserializer<RotationIndicatorParticleData>() { public static final IParticleData.IDeserializer<RotationIndicatorParticleData> DESERIALIZER = new IParticleData.IDeserializer<RotationIndicatorParticleData>() {
public RotationIndicatorParticleData deserialize(ParticleType<RotationIndicatorParticleData> particleTypeIn, public RotationIndicatorParticleData deserialize(ParticleType<RotationIndicatorParticleData> particleTypeIn,
@ -55,6 +58,10 @@ public class RotationIndicatorParticleData implements IParticleData {
this.axis = axis; this.axis = axis;
} }
public RotationIndicatorParticleData() {
this(0, 0, 0, 0, 0, '0');
}
@Override @Override
public ParticleType<?> getType() { public ParticleType<?> getType() {
return AllParticles.ROTATION_INDICATOR.get(); return AllParticles.ROTATION_INDICATOR.get();
@ -71,6 +78,7 @@ public class RotationIndicatorParticleData implements IParticleData {
buffer.writeFloat(radius1); buffer.writeFloat(radius1);
buffer.writeFloat(radius2); buffer.writeFloat(radius2);
buffer.writeInt(lifeSpan); buffer.writeInt(lifeSpan);
buffer.writeChar(axis);
} }
@Override @Override
@ -79,4 +87,15 @@ public class RotationIndicatorParticleData implements IParticleData {
color, speed, radius1, radius2, lifeSpan, axis); color, speed, radius1, radius2, lifeSpan, axis);
} }
@Override
public IDeserializer<RotationIndicatorParticleData> getDeserializer() {
return DESERIALIZER;
}
@Override
@OnlyIn(Dist.CLIENT)
public IParticleMetaFactory<RotationIndicatorParticleData> getFactory() {
return RotationIndicatorParticle.Factory::new;
}
} }

View file

@ -14,6 +14,7 @@ import net.minecraft.state.BooleanProperty;
import net.minecraft.state.StateContainer.Builder; import net.minecraft.state.StateContainer.Builder;
import net.minecraft.state.properties.BlockStateProperties; import net.minecraft.state.properties.BlockStateProperties;
import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.Direction.Axis; import net.minecraft.util.Direction.Axis;
import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.Vec3d; import net.minecraft.util.math.Vec3d;
@ -112,6 +113,11 @@ public class ExtractorBlock extends BeltAttachableLogisticalBlock {
protected boolean isVertical() { protected boolean isVertical() {
return true; return true;
} }
@Override
public ResourceLocation getLootTable() {
return AllBlocks.EXTRACTOR.get().getLootTable();
}
} }
} }

View file

@ -10,6 +10,7 @@ import com.simibubi.create.modules.logistics.block.belts.AttachedLogisticalBlock
import net.minecraft.block.BlockState; import net.minecraft.block.BlockState;
import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.BlockRenderLayer; import net.minecraft.util.BlockRenderLayer;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.Direction.Axis; import net.minecraft.util.Direction.Axis;
import net.minecraft.util.math.Vec3d; import net.minecraft.util.math.Vec3d;
import net.minecraft.world.IBlockReader; import net.minecraft.world.IBlockReader;
@ -75,6 +76,11 @@ public class LinkedExtractorBlock extends ExtractorBlock {
protected boolean isVertical() { protected boolean isVertical() {
return true; return true;
} }
@Override
public ResourceLocation getLootTable() {
return AllBlocks.LINKED_EXTRACTOR.get().getLootTable();
}
} }
} }

View file

@ -5,6 +5,7 @@ import com.simibubi.create.AllBlocks;
import net.minecraft.block.BlockState; import net.minecraft.block.BlockState;
import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.BlockRenderLayer; import net.minecraft.util.BlockRenderLayer;
import net.minecraft.util.ResourceLocation;
import net.minecraft.world.IBlockReader; import net.minecraft.world.IBlockReader;
public class LinkedTransposerBlock extends TransposerBlock { public class LinkedTransposerBlock extends TransposerBlock {
@ -34,6 +35,11 @@ public class LinkedTransposerBlock extends TransposerBlock {
protected boolean isVertical() { protected boolean isVertical() {
return true; return true;
} }
@Override
public ResourceLocation getLootTable() {
return AllBlocks.LINKED_TRANSPOSER.get().getLootTable();
}
} }
} }

View file

@ -12,6 +12,7 @@ import net.minecraft.state.StateContainer.Builder;
import net.minecraft.state.properties.BlockStateProperties; import net.minecraft.state.properties.BlockStateProperties;
import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.Direction; import net.minecraft.util.Direction;
import net.minecraft.util.ResourceLocation;
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;
@ -101,6 +102,11 @@ public class TransposerBlock extends BeltAttachableLogisticalBlock {
protected boolean isVertical() { protected boolean isVertical() {
return true; return true;
} }
@Override
public ResourceLocation getLootTable() {
return AllBlocks.TRANSPOSER.get().getLootTable();
}
} }
} }

View file

@ -1,9 +0,0 @@
{
"forgemarker": 1,
"defaults": {
"model": "create:block/belt/belt_textures"
},
"variants": {
"": { "model": "create:block/belt/belt_textures" }
}
}

View file

@ -1,12 +0,0 @@
{
"forgemarker": 1,
"defaults": {
"model": "create:block/shop_shelf"
},
"variants": {
"facing=north": { "model": "create:block/shop_shelf", "y": 180 },
"facing=south": { "model": "create:block/shop_shelf" },
"facing=east": { "model": "create:block/shop_shelf", "y": 270 },
"facing=west": { "model": "create:block/shop_shelf", "y": 90 }
}
}

View file

@ -1,41 +1,22 @@
{ {
"forge_marker": 1, "forge_marker": 1,
"defaults": {
"model": "block/cube_bottom_top",
"textures": {
"side": "create:block/translation_chassis_side"
},
"transform": "forge:default-block"
},
"variants": { "variants": {
"axis": {
"x": { "x": 90, "y": 90 }, "sticky_top=false,sticky_bottom=false,axis=x": { "model": "create:block/translation_chassis/regular", "x": 90, "y": 90 },
"y": { }, "sticky_top=false,sticky_bottom=false,axis=y": { "model": "create:block/translation_chassis/regular" },
"z": { "x": 90, "y": 180 } "sticky_top=false,sticky_bottom=false,axis=z": { "model": "create:block/translation_chassis/regular", "x": 90, "y": 180 },
},
"sticky_top": { "sticky_top=false,sticky_bottom=true,axis=x": { "model": "create:block/translation_chassis/regular_bottom_sticky", "x": 90, "y": 90 },
"false": { "sticky_top=false,sticky_bottom=true,axis=y": { "model": "create:block/translation_chassis/regular_bottom_sticky" },
"textures": { "sticky_top=false,sticky_bottom=true,axis=z": { "model": "create:block/translation_chassis/regular_bottom_sticky", "x": 90, "y": 180 },
"top": "create:block/translation_chassis_top"
} "sticky_top=true,sticky_bottom=false,axis=x": { "model": "create:block/translation_chassis/regular_top_sticky", "x": 90, "y": 90 },
}, "sticky_top=true,sticky_bottom=false,axis=y": { "model": "create:block/translation_chassis/regular_top_sticky" },
"true": { "sticky_top=true,sticky_bottom=false,axis=z": { "model": "create:block/translation_chassis/regular_top_sticky", "x": 90, "y": 180 },
"textures": {
"top": "create:block/translation_chassis_top_sticky" "sticky_top=true,sticky_bottom=true,axis=x": { "model": "create:block/translation_chassis/regular_both_sticky", "x": 90, "y": 90 },
} "sticky_top=true,sticky_bottom=true,axis=y": { "model": "create:block/translation_chassis/regular_both_sticky" },
} "sticky_top=true,sticky_bottom=true,axis=z": { "model": "create:block/translation_chassis/regular_both_sticky", "x": 90, "y": 180 }
},
"sticky_bottom": {
"false": {
"textures": {
"bottom": "create:block/translation_chassis_top"
}
},
"true": {
"textures": {
"bottom": "create:block/translation_chassis_top_sticky"
}
}
}
} }
} }

View file

@ -1,41 +1,22 @@
{ {
"forge_marker": 1, "forge_marker": 1,
"defaults": {
"model": "block/cube_bottom_top",
"textures": {
"side": "create:block/translation_chassis_side_alt"
},
"transform": "forge:default-block"
},
"variants": { "variants": {
"axis": {
"x": { "x": 90, "y": 90 }, "sticky_top=false,sticky_bottom=false,axis=x": { "model": "create:block/translation_chassis/alt", "x": 90, "y": 90 },
"y": { }, "sticky_top=false,sticky_bottom=false,axis=y": { "model": "create:block/translation_chassis/alt" },
"z": { "x": 90, "y": 180 } "sticky_top=false,sticky_bottom=false,axis=z": { "model": "create:block/translation_chassis/alt", "x": 90, "y": 180 },
},
"sticky_top": { "sticky_top=false,sticky_bottom=true,axis=x": { "model": "create:block/translation_chassis/alt_bottom_sticky", "x": 90, "y": 90 },
"false": { "sticky_top=false,sticky_bottom=true,axis=y": { "model": "create:block/translation_chassis/alt_bottom_sticky" },
"textures": { "sticky_top=false,sticky_bottom=true,axis=z": { "model": "create:block/translation_chassis/alt_bottom_sticky", "x": 90, "y": 180 },
"top": "create:block/translation_chassis_top"
} "sticky_top=true,sticky_bottom=false,axis=x": { "model": "create:block/translation_chassis/alt_top_sticky", "x": 90, "y": 90 },
}, "sticky_top=true,sticky_bottom=false,axis=y": { "model": "create:block/translation_chassis/alt_top_sticky" },
"true": { "sticky_top=true,sticky_bottom=false,axis=z": { "model": "create:block/translation_chassis/alt_top_sticky", "x": 90, "y": 180 },
"textures": {
"top": "create:block/translation_chassis_top_sticky" "sticky_top=true,sticky_bottom=true,axis=x": { "model": "create:block/translation_chassis/alt_both_sticky", "x": 90, "y": 90 },
} "sticky_top=true,sticky_bottom=true,axis=y": { "model": "create:block/translation_chassis/alt_both_sticky" },
} "sticky_top=true,sticky_bottom=true,axis=z": { "model": "create:block/translation_chassis/alt_both_sticky", "x": 90, "y": 180 }
},
"sticky_bottom": {
"false": {
"textures": {
"bottom": "create:block/translation_chassis_top"
}
},
"true": {
"textures": {
"bottom": "create:block/translation_chassis_top_sticky"
}
}
}
} }
} }

View file

@ -1,22 +0,0 @@
{
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube",
"textures": {
"0": "create:block/belt"
},
"elements": [
{
"name": "Belt",
"from": [ 1.0, 0.0, 0.0 ],
"to": [ 15.0, 2.0, 16.0 ],
"faces": {
"north": { "texture": "#0", "uv": [ 1.0, 0.0, 15.0, 2.0 ], "rotation": 180 },
"east": { "texture": "#0", "uv": [ 14.0, 0.0, 16.0, 16.0 ], "rotation": 90 },
"south": { "texture": "#0", "uv": [ 1.0, 14.0, 15.0, 16.0 ]},
"west": { "texture": "#0", "uv": [ 0.0, 0.0, 2.0, 16.0 ], "rotation": 270 },
"up": { "texture": "#0", "uv": [ 1.0, 0.0, 15.0, 16.0 ] },
"down": { "texture": "#0", "uv": [ 1.0, 0.0, 15.0, 16.0 ], "rotation": 180 }
}
}
]
}

View file

@ -1,16 +0,0 @@
{
"parent": "block/cube",
"textures": {
"0": "create:block/belt_animated"
},
"elements": [
{
"name": "Cheese",
"from": [ 0.0, 0.0, 0.0 ],
"to": [ 1.0, 1.0, 1.0 ],
"faces": {
"north": { "texture": "#0", "uv": [ 0.0, 0.0, 16.0, 16.0 ] }
}
}
]
}

View file

@ -1,6 +1,6 @@
{ {
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"particle": "create:block/belt", "particle": "create:block/belt",
"0": "create:block/belt" "0": "create:block/belt"

View file

@ -1,6 +1,6 @@
{ {
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"particle": "create:block/belt", "particle": "create:block/belt",
"0": "create:block/belt" "0": "create:block/belt"

View file

@ -1,6 +1,6 @@
{ {
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"particle": "create:block/belt", "particle": "create:block/belt",
"0": "create:block/belt" "0": "create:block/belt"

View file

@ -1,6 +1,6 @@
{ {
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"particle": "create:block/belt", "particle": "create:block/belt",
"0": "create:block/belt" "0": "create:block/belt"

View file

@ -1,6 +1,6 @@
{ {
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"particle": "create:block/belt", "particle": "create:block/belt",
"0": "create:block/belt" "0": "create:block/belt"

View file

@ -1,6 +1,6 @@
{ {
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"particle": "create:block/belt", "particle": "create:block/belt",
"0": "create:block/belt" "0": "create:block/belt"

View file

@ -1,6 +1,6 @@
{ {
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"particle": "create:block/belt", "particle": "create:block/belt",
"0": "create:block/belt" "0": "create:block/belt"

View file

@ -1,6 +1,6 @@
{ {
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"particle": "create:block/belt", "particle": "create:block/belt",
"0": "create:block/belt" "0": "create:block/belt"

View file

@ -1,6 +1,6 @@
{ {
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"particle": "create:block/belt", "particle": "create:block/belt",
"0": "create:block/belt" "0": "create:block/belt"

View file

@ -1,6 +1,6 @@
{ {
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"particle": "block/dark_oak_log", "particle": "block/dark_oak_log",
"0": "create:block/axis", "0": "create:block/axis",

View file

@ -1,6 +1,6 @@
{ {
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"particle": "block/stripped_spruce_log", "particle": "block/stripped_spruce_log",
"0": "create:block/axis", "0": "create:block/axis",

View file

@ -1,6 +1,6 @@
{ {
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"particle": "block/stripped_spruce_log", "particle": "block/stripped_spruce_log",
"1": "block/stripped_spruce_log", "1": "block/stripped_spruce_log",

View file

@ -1,6 +1,6 @@
{ {
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"particle": "create:block/contact_side", "particle": "create:block/contact_side",
"0": "create:block/brass_casing", "0": "create:block/brass_casing",

View file

@ -1,6 +1,6 @@
{ {
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"0": "create:block/creative_crate_side", "0": "create:block/creative_crate_side",
"1": "create:block/creative_crate_top", "1": "create:block/creative_crate_top",

View file

@ -1,6 +1,6 @@
{ {
"credit": "Made with Blockbench", "credit": "Made with Blockbench",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"0": "create:block/encased_belt", "0": "create:block/encased_belt",
"2": "create:block/encased_belt_end", "2": "create:block/encased_belt_end",

View file

@ -1,6 +1,6 @@
{ {
"credit": "Made with Blockbench", "credit": "Made with Blockbench",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"1": "create:block/encased_belt", "1": "create:block/encased_belt",
"2": "create:block/encased_belt_end", "2": "create:block/encased_belt_end",

View file

@ -1,6 +1,6 @@
{ {
"credit": "Made with Blockbench", "credit": "Made with Blockbench",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"0": "create:block/encased_belt", "0": "create:block/encased_belt",
"1": "create:block/encased_belt_middle", "1": "create:block/encased_belt_middle",

View file

@ -1,6 +1,6 @@
{ {
"credit": "Made with Blockbench", "credit": "Made with Blockbench",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"0": "create:block/encased_belt", "0": "create:block/encased_belt",
"1": "create:block/encased_belt_middle", "1": "create:block/encased_belt_middle",

View file

@ -1,6 +1,6 @@
{ {
"credit": "Made with Blockbench", "credit": "Made with Blockbench",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"0": "create:block/encased_belt", "0": "create:block/encased_belt",
"1": "create:block/gearbox", "1": "create:block/gearbox",

View file

@ -1,6 +1,6 @@
{ {
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"0": "create:block/gearbox_top", "0": "create:block/gearbox_top",
"1": "create:block/gearbox", "1": "create:block/gearbox",

View file

@ -1,6 +1,6 @@
{ {
"credit": "Made with Blockbench", "credit": "Made with Blockbench",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"0": "create:block/axis", "0": "create:block/axis",
"1": "create:block/axis_top", "1": "create:block/axis_top",

View file

@ -1,6 +1,6 @@
{ {
"credit": "Made with Blockbench", "credit": "Made with Blockbench",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"0": "create:block/axis", "0": "create:block/axis",
"1": "create:block/axis_top", "1": "create:block/axis_top",

View file

@ -1,6 +1,6 @@
{ {
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"0": "create:block/gearbox_top", "0": "create:block/gearbox_top",
"1": "create:block/gearbox", "1": "create:block/gearbox",

View file

@ -1,6 +1,6 @@
{ {
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"0": "create:block/gearshift_off", "0": "create:block/gearshift_off",
"1": "create:block/gearbox", "1": "create:block/gearbox",

View file

@ -1,5 +1,5 @@
{ {
"parent": "block/cube", "parent": "block/block",
"display": { "display": {
"gui": { "gui": {
"rotation": [ 30, 225, 0 ], "rotation": [ 30, 225, 0 ],

View file

@ -1,6 +1,6 @@
{ {
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"particle": "create:block/gearbox_top", "particle": "create:block/gearbox_top",
"0": "create:block/gearbox_top", "0": "create:block/gearbox_top",

View file

@ -1,6 +1,6 @@
{ {
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"particle": "create:block/gearbox_top", "particle": "create:block/gearbox_top",
"0": "create:block/gearbox_top", "0": "create:block/gearbox_top",

View file

@ -1,6 +1,6 @@
{ {
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"particle": "create:block/gearbox_top", "particle": "create:block/gearbox_top",
"0": "create:block/gearbox_top", "0": "create:block/gearbox_top",

View file

@ -1,6 +1,6 @@
{ {
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"particle": "create:block/gearbox_top", "particle": "create:block/gearbox_top",
"0": "create:block/gearbox_top", "0": "create:block/gearbox_top",

View file

@ -1,6 +1,6 @@
{ {
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"particle": "create:block/gearbox_top", "particle": "create:block/gearbox_top",
"0": "create:block/gearbox_top", "0": "create:block/gearbox_top",

View file

@ -1,6 +1,6 @@
{ {
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"particle": "block/piston_top", "particle": "block/piston_top",
"0": "block/piston_side", "0": "block/piston_side",

View file

@ -1,70 +0,0 @@
{
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"textures": {
"0": "blocks/gearbox_top",
"1": "blocks/piston_bottom",
"2": "blocks/gearbox",
"3": "blocks/piston_side",
"4": "blocks/piston_top",
"5": "blocks/piston_inner"
},
"elements": [
{
"name": "Bottom",
"from": [ 0.0, 0.0, 0.0 ],
"to": [ 16.0, 2.0, 16.0 ],
"faces": {
"north": { "texture": "#0", "uv": [ 0.0, 14.0, 16.0, 16.0 ] },
"east": { "texture": "#0", "uv": [ 0.0, 14.0, 16.0, 16.0 ] },
"south": { "texture": "#0", "uv": [ 0.0, 14.0, 16.0, 16.0 ] },
"west": { "texture": "#0", "uv": [ 0.0, 14.0, 16.0, 16.0 ] },
"up": { "texture": "#0", "uv": [ 0.0, 0.0, 16.0, 16.0 ] },
"down": { "texture": "#1", "uv": [ 0.0, 0.0, 16.0, 16.0 ] }
}
},
{
"name": "Inner",
"from": [ 1.0, 2.0, 2.0 ],
"to": [ 15.0, 12.0, 14.0 ],
"faces": {
"east": { "texture": "#2", "uv": [ 2.0, 4.0, 14.0, 14.0 ] },
"west": { "texture": "#2", "uv": [ 2.0, 4.0, 14.0, 14.0 ] }
}
},
{
"name": "Side",
"from": [ 0.0, 2.0, 0.0 ],
"to": [ 16.0, 12.0, 2.0 ],
"faces": {
"north": { "texture": "#0", "uv": [ 0.0, 0.0, 16.0, 9.0 ] },
"east": { "texture": "#0", "uv": [ 14.0, 0.0, 16.0, 10.0 ] },
"south": { "texture": "#0", "uv": [ 0.0, 0.0, 16.0, 10.0 ] },
"west": { "texture": "#0", "uv": [ 0.0, 0.0, 2.0, 10.0 ] }
}
},
{
"name": "Side2",
"from": [ 0.0, 2.0, 14.0 ],
"to": [ 16.0, 12.0, 16.0 ],
"faces": {
"north": { "texture": "#0", "uv": [ 0.0, 0.0, 16.0, 10.0 ] },
"east": { "texture": "#0", "uv": [ 0.0, 0.0, 2.0, 10.0 ] },
"south": { "texture": "#0", "uv": [ 0.0, 0.0, 16.0, 10.0 ] },
"west": { "texture": "#0", "uv": [ 14.0, 0.0, 16.0, 10.0 ] }
}
},
{
"name": "Top",
"from": [ 0.0, 12.0, 0.0 ],
"to": [ 16.0, 16.0, 16.0 ],
"faces": {
"north": { "texture": "#3", "uv": [ 0.0, 0.0, 16.0, 4.0 ] },
"east": { "texture": "#3", "uv": [ 0.0, 0.0, 16.0, 4.0 ] },
"south": { "texture": "#3", "uv": [ 0.0, 0.0, 16.0, 4.0 ] },
"west": { "texture": "#3", "uv": [ 0.0, 0.0, 16.0, 4.0 ] },
"up": { "texture": "#4", "uv": [ 0.0, 0.0, 16.0, 16.0 ] },
"down": { "texture": "#5", "uv": [ 0.0, 0.0, 16.0, 16.0 ] }
}
}
]
}

View file

@ -1,6 +1,6 @@
{ {
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"particle": "block/piston_top", "particle": "block/piston_top",
"0": "block/piston_side", "0": "block/piston_side",

View file

@ -1,6 +1,6 @@
{ {
"credit": "Made with Blockbench", "credit": "Made with Blockbench",
"parent": "block/cube", "parent": "block/block",
"ambientocclusion": false, "ambientocclusion": false,
"textures": { "textures": {
"2": "block/spruce_log_top", "2": "block/spruce_log_top",

View file

@ -1,6 +1,6 @@
{ {
"credit": "Made with Blockbench", "credit": "Made with Blockbench",
"parent": "block/cube", "parent": "block/block",
"ambientocclusion": false, "ambientocclusion": false,
"textures": { "textures": {
"6": "create:block/mixer_head", "6": "create:block/mixer_head",

View file

@ -1,6 +1,6 @@
{ {
"credit": "Made with Blockbench", "credit": "Made with Blockbench",
"parent": "block/cube", "parent": "block/block",
"ambientocclusion": false, "ambientocclusion": false,
"textures": { "textures": {
"6": "create:block/mixer_head", "6": "create:block/mixer_head",

View file

@ -1,6 +1,6 @@
{ {
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"particle": "block/iron_block", "particle": "block/iron_block",
"0": "block/chiseled_stone_bricks", "0": "block/chiseled_stone_bricks",

View file

@ -1,6 +1,6 @@
{ {
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"0": "create:block/schematic_table_side", "0": "create:block/schematic_table_side",
"1": "create:block/schematic_table_top", "1": "create:block/schematic_table_top",

View file

@ -1,6 +1,6 @@
{ {
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"particle": "create:block/axis", "particle": "create:block/axis",
"0": "create:block/axis", "0": "create:block/axis",

View file

@ -1,6 +1,6 @@
{ {
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"particle": "create:block/axis", "particle": "create:block/axis",
"0": "create:block/axis", "0": "create:block/axis",

View file

@ -1,91 +0,0 @@
{
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube",
"textures": {
"particle": "block/stripped_spruce_log",
"0": "block/stripped_spruce_log_top",
"1": "block/stripped_spruce_log",
"2": "block/dark_oak_planks",
"3": "block/spruce_planks",
"4": "block/andesite"
},
"elements": [
{
"name": "Body",
"from": [ 0.0, 0.0, 0.0 ],
"to": [ 16.0, 14.0, 14.0 ],
"faces": {
"north": { "texture": "#0", "uv": [ 0.0, 1.0, 16.0, 15.0 ] },
"east": { "texture": "#1", "uv": [ 1.0, 1.0, 15.0, 15.0 ] },
"south": { "texture": "#0", "uv": [ 0.0, 1.0, 16.0, 15.0 ] },
"west": { "texture": "#1", "uv": [ 1.0, 1.0, 15.0, 15.0 ] },
"down": { "texture": "#0", "uv": [ 0.0, 1.0, 16.0, 15.0 ] }
}
},
{
"name": "Top",
"from": [ 0.0, 14.0, 0.0 ],
"to": [ 16.0, 16.0, 15.0 ],
"faces": {
"north": { "texture": "#2", "uv": [ 0.0, 6.0, 16.0, 8.0 ] },
"east": { "texture": "#2", "uv": [ 1.0, 6.0, 16.0, 8.0 ] },
"south": { "texture": "#2", "uv": [ 0.0, 6.0, 16.0, 8.0 ] },
"west": { "texture": "#2", "uv": [ 1.0, 6.0, 16.0, 8.0 ] },
"up": { "texture": "#2", "uv": [ 0.0, 0.0, 16.0, 15.0 ] },
"down": { "texture": "#2", "uv": [ 0.0, 1.0, 16.0, 16.0 ], "rotation": 180 }
}
},
{
"name": "Drawer Body",
"from": [ 1.0, 8.0, 8.0 ],
"to": [ 15.0, 13.0, 15.0 ],
"faces": {
"north": { "texture": "#3", "uv": [ 1.0, 3.0, 15.0, 8.0 ] },
"east": { "texture": "#3", "uv": [ 7.0, 3.0, 14.0, 8.0 ] },
"south": { "texture": "#3", "uv": [ 1.0, 7.0, 15.0, 12.0 ] },
"west": { "texture": "#3", "uv": [ 1.0, 3.0, 8.0, 8.0 ] },
"up": { "texture": "#3", "uv": [ 1.0, 5.0, 15.0, 12.0 ] },
"down": { "texture": "#3", "uv": [ 1.0, 3.0, 15.0, 10.0 ] }
}
},
{
"name": "Drawer Knob",
"from": [ 6.0, 11.0, 14.5 ],
"to": [ 10.0, 12.0, 15.5 ],
"faces": {
"north": { "texture": "#4", "uv": [ 6.0, 6.0, 10.0, 7.0 ] },
"east": { "texture": "#4", "uv": [ 0.0, 0.0, 1.0, 1.0 ] },
"south": { "texture": "#4", "uv": [ 6.0, 7.0, 10.0, 8.0 ] },
"west": { "texture": "#4", "uv": [ 0.0, 0.0, 1.0, 1.0 ] },
"up": { "texture": "#4", "uv": [ 4.0, 3.0, 8.0, 4.0 ] },
"down": { "texture": "#4", "uv": [ 6.0, 2.0, 10.0, 3.0 ] }
}
},
{
"name": "Another Drawer Body",
"from": [ 1.0, 2.0, 8.0 ],
"to": [ 15.0, 7.0, 15.0 ],
"faces": {
"north": { "texture": "#3", "uv": [ 1.0, 0.0, 15.0, 5.0 ] },
"east": { "texture": "#3", "uv": [ 7.0, 3.0, 14.0, 8.0 ] },
"south": { "texture": "#3", "uv": [ 1.0, 7.0, 15.0, 12.0 ] },
"west": { "texture": "#3", "uv": [ 1.0, 3.0, 8.0, 8.0 ] },
"up": { "texture": "#3", "uv": [ 1.0, 1.0, 15.0, 8.0 ] },
"down": { "texture": "#3", "uv": [ 1.0, 3.0, 15.0, 10.0 ] }
}
},
{
"name": "Another Drawer Knob",
"from": [ 6.0, 5.0, 14.5 ],
"to": [ 10.0, 6.0, 15.5 ],
"faces": {
"north": { "texture": "#4", "uv": [ 6.0, 6.0, 10.0, 7.0 ] },
"east": { "texture": "#4", "uv": [ 0.0, 0.0, 1.0, 1.0 ] },
"south": { "texture": "#4", "uv": [ 6.0, 7.0, 10.0, 8.0 ] },
"west": { "texture": "#4", "uv": [ 0.0, 0.0, 1.0, 1.0 ] },
"up": { "texture": "#4", "uv": [ 4.0, 3.0, 8.0, 4.0 ] },
"down": { "texture": "#4", "uv": [ 6.0, 2.0, 10.0, 3.0 ] }
}
}
]
}

View file

@ -0,0 +1,8 @@
{
"parent": "block/cube_bottom_top",
"textures": {
"bottom": "create:block/translation_chassis_top",
"top": "create:block/translation_chassis_top",
"side": "create:block/translation_chassis_side_alt"
}
}

View file

@ -0,0 +1,8 @@
{
"parent": "block/cube_bottom_top",
"textures": {
"bottom": "create:block/translation_chassis_top_sticky",
"top": "create:block/translation_chassis_top_sticky",
"side": "create:block/translation_chassis_side_alt"
}
}

View file

@ -0,0 +1,8 @@
{
"parent": "block/cube_bottom_top",
"textures": {
"bottom": "create:block/translation_chassis_top_sticky",
"top": "create:block/translation_chassis_top",
"side": "create:block/translation_chassis_side_alt"
}
}

View file

@ -0,0 +1,8 @@
{
"parent": "block/cube_bottom_top",
"textures": {
"top": "create:block/translation_chassis_top_sticky",
"bottom": "create:block/translation_chassis_top",
"side": "create:block/translation_chassis_side_alt"
}
}

View file

@ -1,5 +1,5 @@
{ {
"parent": "create:block/translation_chassis", "parent": "block/cube_bottom_top",
"textures": { "textures": {
"bottom": "create:block/translation_chassis_top_sticky", "bottom": "create:block/translation_chassis_top_sticky",
"top": "create:block/translation_chassis_top_sticky", "top": "create:block/translation_chassis_top_sticky",

View file

@ -1,5 +1,5 @@
{ {
"parent": "create:block/translation_chassis", "parent": "block/cube_bottom_top",
"textures": { "textures": {
"bottom": "create:block/translation_chassis_top_sticky", "bottom": "create:block/translation_chassis_top_sticky",
"top": "create:block/translation_chassis_top", "top": "create:block/translation_chassis_top",

View file

@ -1,5 +1,5 @@
{ {
"parent": "create:block/translation_chassis", "parent": "block/cube_bottom_top",
"textures": { "textures": {
"top": "create:block/translation_chassis_top_sticky", "top": "create:block/translation_chassis_top_sticky",
"bottom": "create:block/translation_chassis_top", "bottom": "create:block/translation_chassis_top",

View file

@ -1,6 +1,6 @@
{ {
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"particle": "block/stripped_spruce_log", "particle": "block/stripped_spruce_log",
"0": "create:block/axis", "0": "create:block/axis",

View file

@ -1,6 +1,6 @@
{ {
"credit": "Made with Blockbench", "credit": "Made with Blockbench",
"parent": "block/cube", "parent": "block/block",
"ambientocclusion": false, "ambientocclusion": false,
"textures": { "textures": {
"1": "block/stripped_spruce_log", "1": "block/stripped_spruce_log",

View file

@ -1,6 +1,6 @@
{ {
"__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)", "__comment": "Model generated using MrCrayfish's Model Creator (http://mrcrayfish.com/modelcreator/)",
"parent": "block/cube", "parent": "block/block",
"textures": { "textures": {
"0": "block/stonecutter_side", "0": "block/stonecutter_side",
"1": "block/stonecutter_bottom", "1": "block/stonecutter_bottom",

View file

@ -1,3 +1,3 @@
{ {
"parent": "create:block/translation_chassis" "parent": "create:block/translation_chassis/regular"
} }

View file

@ -1,6 +1,3 @@
{ {
"parent": "create:block/translation_chassis", "parent": "create:block/translation_chassis/alt"
"textures": {
"side": "create:block/translation_chassis_side_alt"
}
} }

View file

@ -6,7 +6,7 @@
"entries": [ "entries": [
{ {
"type": "minecraft:item", "type": "minecraft:item",
"name": "create:linked_extractor" "name": "create:belt_tunnel"
} }
], ],
"conditions": [ "conditions": [

View file

@ -0,0 +1,19 @@
{
"type": "minecraft:block",
"pools": [
{
"rolls": 1,
"entries": [
{
"type": "minecraft:item",
"name": "create:cart_assembler"
}
],
"conditions": [
{
"condition": "minecraft:survives_explosion"
}
]
}
]
}

View file

@ -0,0 +1,19 @@
{
"type": "minecraft:block",
"pools": [
{
"rolls": 1,
"entries": [
{
"type": "minecraft:item",
"name": "create:copper_ore"
}
],
"conditions": [
{
"condition": "minecraft:survives_explosion"
}
]
}
]
}

View file

@ -0,0 +1,29 @@
{
"type": "minecraft:block",
"pools": [
{
"rolls": 1,
"entries": [
{
"type": "minecraft:item",
"name": "create:framed_glass"
}
],
"conditions": [
{
"condition": "minecraft:match_tool",
"predicate": {
"enchantments": [
{
"enchantment": "minecraft:silk_touch",
"levels": {
"min": 1
}
}
]
}
}
]
}
]
}

View file

@ -0,0 +1,19 @@
{
"type": "minecraft:block",
"pools": [
{
"rolls": 1,
"entries": [
{
"type": "minecraft:item",
"name": "create:linked_transposer"
}
],
"conditions": [
{
"condition": "minecraft:survives_explosion"
}
]
}
]
}

View file

@ -0,0 +1,19 @@
{
"type": "minecraft:block",
"pools": [
{
"rolls": 1,
"entries": [
{
"type": "minecraft:item",
"name": "create:logistical_casing"
}
],
"conditions": [
{
"condition": "minecraft:survives_explosion"
}
]
}
]
}

View file

@ -0,0 +1,19 @@
{
"type": "minecraft:block",
"pools": [
{
"rolls": 1,
"entries": [
{
"type": "minecraft:item",
"name": "create:mechanical_crafter"
}
],
"conditions": [
{
"condition": "minecraft:survives_explosion"
}
]
}
]
}

View file

@ -6,7 +6,7 @@
"entries": [ "entries": [
{ {
"type": "minecraft:item", "type": "minecraft:item",
"name": "create:extractor" "name": "create:saw"
} }
], ],
"conditions": [ "conditions": [

View file

@ -0,0 +1,19 @@
{
"type": "minecraft:block",
"pools": [
{
"rolls": 1,
"entries": [
{
"type": "minecraft:item",
"name": "create:speed_gauge"
}
],
"conditions": [
{
"condition": "minecraft:survives_explosion"
}
]
}
]
}

View file

@ -0,0 +1,19 @@
{
"type": "minecraft:block",
"pools": [
{
"rolls": 1,
"entries": [
{
"type": "minecraft:item",
"name": "create:stress_gauge"
}
],
"conditions": [
{
"condition": "minecraft:survives_explosion"
}
]
}
]
}

View file

@ -0,0 +1,19 @@
{
"type": "minecraft:block",
"pools": [
{
"rolls": 1,
"entries": [
{
"type": "minecraft:item",
"name": "create:translation_chassis_secondary"
}
],
"conditions": [
{
"condition": "minecraft:survives_explosion"
}
]
}
]
}

View file

@ -0,0 +1,19 @@
{
"type": "minecraft:block",
"pools": [
{
"rolls": 1,
"entries": [
{
"type": "minecraft:item",
"name": "create:transposer"
}
],
"conditions": [
{
"condition": "minecraft:survives_explosion"
}
]
}
]
}

View file

@ -0,0 +1,19 @@
{
"type": "minecraft:block",
"pools": [
{
"rolls": 1,
"entries": [
{
"type": "minecraft:item",
"name": "create:zinc_ore"
}
],
"conditions": [
{
"condition": "minecraft:survives_explosion"
}
]
}
]
}