diff --git a/kfc/src/main/java/nmd/primal/forgecraft/blocks/CustomContainerFacingActive.java b/kfc/src/main/java/nmd/primal/forgecraft/blocks/CustomContainerFacingActive.java index 69260063..92969772 100644 --- a/kfc/src/main/java/nmd/primal/forgecraft/blocks/CustomContainerFacingActive.java +++ b/kfc/src/main/java/nmd/primal/forgecraft/blocks/CustomContainerFacingActive.java @@ -92,16 +92,28 @@ public abstract class CustomContainerFacingActive extends BlockContainer { IBlockState iblockstate = this.getDefaultState(); if (meta == 0){ - iblockstate = iblockstate.withProperty(FACING, EnumFacing.EAST); + iblockstate = iblockstate.withProperty(FACING, EnumFacing.EAST).withProperty(PrimalAPI.States.ACTIVE, false); } if (meta == 1) { - iblockstate = iblockstate.withProperty(FACING, EnumFacing.WEST); + iblockstate = iblockstate.withProperty(FACING, EnumFacing.WEST).withProperty(PrimalAPI.States.ACTIVE, false); } if (meta == 2) { - iblockstate = iblockstate.withProperty(FACING, EnumFacing.SOUTH); + iblockstate = iblockstate.withProperty(FACING, EnumFacing.SOUTH).withProperty(PrimalAPI.States.ACTIVE, false); } if (meta == 3) { - iblockstate = iblockstate.withProperty(FACING, EnumFacing.NORTH); + iblockstate = iblockstate.withProperty(FACING, EnumFacing.NORTH).withProperty(PrimalAPI.States.ACTIVE, false); + } + if (meta == 4){ + iblockstate = iblockstate.withProperty(FACING, EnumFacing.EAST).withProperty(PrimalAPI.States.ACTIVE, true); + } + if (meta == 5) { + iblockstate = iblockstate.withProperty(FACING, EnumFacing.WEST).withProperty(PrimalAPI.States.ACTIVE, true); + } + if (meta == 6) { + iblockstate = iblockstate.withProperty(FACING, EnumFacing.SOUTH).withProperty(PrimalAPI.States.ACTIVE, true); + } + if (meta == 7) { + iblockstate = iblockstate.withProperty(FACING, EnumFacing.NORTH).withProperty(PrimalAPI.States.ACTIVE, true); } return iblockstate; } diff --git a/kfc/src/main/java/nmd/primal/forgecraft/blocks/machine/RedstoneBellows.java b/kfc/src/main/java/nmd/primal/forgecraft/blocks/machine/RedstoneBellows.java new file mode 100644 index 00000000..0106ea68 --- /dev/null +++ b/kfc/src/main/java/nmd/primal/forgecraft/blocks/machine/RedstoneBellows.java @@ -0,0 +1,73 @@ +package nmd.primal.forgecraft.blocks.machine; + +import net.minecraft.block.Block; +import net.minecraft.block.material.Material; +import net.minecraft.block.state.IBlockState; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.EnumFacing; +import net.minecraft.util.EnumHand; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.World; +import nmd.primal.core.api.PrimalAPI; +import nmd.primal.forgecraft.blocks.CustomContainerFacingActive; +import nmd.primal.forgecraft.tiles.TileRedstoneBellows; +import javax.annotation.Nullable; +import static nmd.primal.core.common.blocks.redstone.AbstractTrigger.POWERED; + +public class RedstoneBellows extends CustomContainerFacingActive { + + public RedstoneBellows(Material material, String registryName) { + super(material, registryName); + } + + @Override + public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) { + if(!world.isRemote) { + return true; + } + return false; + } + + @Override + public void neighborChanged(IBlockState state, World world, BlockPos pos, Block block, BlockPos fromPos) + { + if(!world.isRemote) { + + IBlockState fromState = world.getBlockState(fromPos); + TileRedstoneBellows tile = (TileRedstoneBellows) world.getTileEntity(pos); + + if (state.getValue(FACING) == EnumFacing.NORTH && fromPos.equals(pos.south(1))) { + if (fromState.getValue(POWERED)) { + world.setBlockState(pos, state.withProperty(PrimalAPI.States.ACTIVE, true), 2); + + } + if (!fromState.getValue(POWERED)) { + world.setBlockState(pos, state.withProperty(PrimalAPI.States.ACTIVE, false), 2); + } + } + if (state.getValue(FACING) == EnumFacing.SOUTH && fromPos.equals(pos.north(1))) { + if (fromState.getValue(POWERED)) { + + } + } + if (state.getValue(FACING) == EnumFacing.EAST && fromPos.equals(pos.west(1))) { + if (fromState.getValue(POWERED)) { + + } + } + if (state.getValue(FACING) == EnumFacing.WEST && fromPos.equals(pos.east(1))) { + if (fromState.getValue(POWERED)) { + + } + } + } + } + + @Nullable + @Override + public TileEntity createNewTileEntity(World worldIn, int meta) { + return new TileRedstoneBellows(); + } + +} diff --git a/kfc/src/main/java/nmd/primal/forgecraft/init/ModBlocks.java b/kfc/src/main/java/nmd/primal/forgecraft/init/ModBlocks.java index 99f15231..dcc24332 100644 --- a/kfc/src/main/java/nmd/primal/forgecraft/init/ModBlocks.java +++ b/kfc/src/main/java/nmd/primal/forgecraft/init/ModBlocks.java @@ -29,6 +29,7 @@ public class ModBlocks { public static Block bloomery_adobe; public static Block blockbreaker; public static Block castingform; + public static Block redstonebellows; public static Block bronzechisel; public static Block copperchisel; @@ -61,6 +62,7 @@ public class ModBlocks { bloomery_adobe = new BloomeryBase(Material.ROCK, "bloomery_adobe", 5000); blockbreaker = new Breaker(Material.WOOD, "blockbreaker", 4.0f); castingform = new CastingForm(Material.WOOD, "castingform"); + redstonebellows = new RedstoneBellows(Material.WOOD, "redstonebellows"); copperchisel = new Chisel(Material.IRON, "copperchisel", PrimalAPI.ToolMaterials.TOOL_COPPER); bronzechisel = new Chisel(Material.IRON, "bronzechisel", PrimalAPI.ToolMaterials.TOOL_BRONZE); @@ -95,6 +97,7 @@ public class ModBlocks { registerBlockWithItem(bloomery_adobe); registerBlockWithItem(blockbreaker); registerBlockWithItem(castingform); + registerBlockWithItem(redstonebellows); registerBlockWithItem(copperchisel); registerBlockWithItem(bronzechisel); @@ -125,6 +128,7 @@ public class ModBlocks { registerRender(forge_brick); registerRender(forge_adobe); registerRender(castingform); + registerRender(redstonebellows); registerRender(copperchisel); registerRender(bronzechisel); diff --git a/kfc/src/main/java/nmd/primal/forgecraft/init/ModItems.java b/kfc/src/main/java/nmd/primal/forgecraft/init/ModItems.java index 9ffb9e7c..adc9b46c 100644 --- a/kfc/src/main/java/nmd/primal/forgecraft/init/ModItems.java +++ b/kfc/src/main/java/nmd/primal/forgecraft/init/ModItems.java @@ -9,6 +9,7 @@ import net.minecraftforge.fml.common.registry.ForgeRegistries; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; import nmd.primal.core.api.PrimalAPI; +import nmd.primal.forgecraft.blocks.machine.Forge; import nmd.primal.forgecraft.items.*; import nmd.primal.forgecraft.items.armor.CustomHelmet; import nmd.primal.forgecraft.items.blocks.ItemNBTCrucible; @@ -37,6 +38,9 @@ public class ModItems { public static Item castingmud; public static Item grindingwheel; + public static Item woodpistonarm; + public static Item woodcrank; + public static Item woodpiston; public static Item bronzeingotball; public static Item bronzechunk; @@ -186,6 +190,10 @@ public class ModItems { forgehammer = new ForgeHammer("forgehammer"); castingmud = new BaseItem("castingmud"); + woodpistonarm = new BaseItem("woodpistonarm"); + woodcrank = new BaseItem("woodcrank"); + woodpiston = new BaseItem("woodpiston"); + rawlongbow = new RawLongbow("rawlongbow"); unstrunglongbow = new BaseItem("unstrunglongbow"); longbow = new Longbow("longbow"); @@ -350,6 +358,10 @@ public class ModItems { ForgeRegistries.ITEMS.register(forgehammer); ForgeRegistries.ITEMS.register(grindingwheel); + ForgeRegistries.ITEMS.register(woodpistonarm); + ForgeRegistries.ITEMS.register(woodcrank); + ForgeRegistries.ITEMS.register(woodpiston); + ForgeRegistries.ITEMS.register(bronzeingotball); ForgeRegistries.ITEMS.register(bronzechunk); ForgeRegistries.ITEMS.register(ironingotball); @@ -505,6 +517,10 @@ public class ModItems { registerRender(wootzworkblade); registerRender(grindingwheel); + registerRender(woodpistonarm); + registerRender(woodpiston); + registerRender(woodcrank); + registerRender(bronzeingotball); registerRender(bronzechunk); registerRender(ironingotball); diff --git a/kfc/src/main/java/nmd/primal/forgecraft/init/ModTileRenders.java b/kfc/src/main/java/nmd/primal/forgecraft/init/ModTileRenders.java index 95ac1a65..642cf26a 100644 --- a/kfc/src/main/java/nmd/primal/forgecraft/init/ModTileRenders.java +++ b/kfc/src/main/java/nmd/primal/forgecraft/init/ModTileRenders.java @@ -1,5 +1,6 @@ package nmd.primal.forgecraft.init; +import net.minecraftforge.client.model.animation.AnimationTESR; import net.minecraftforge.fml.client.registry.ClientRegistry; import nmd.primal.forgecraft.renders.blocks.*; import nmd.primal.forgecraft.tiles.*; @@ -15,6 +16,23 @@ public class ModTileRenders { ClientRegistry.bindTileEntitySpecialRenderer(TileCastingForm.class, new TileCastingformRender()); ClientRegistry.bindTileEntitySpecialRenderer(TileWorkbench.class, new TileWorkbenchRender()); ClientRegistry.bindTileEntitySpecialRenderer(TileSharpBench.class, new TileSharpBenchRender()); + ClientRegistry.bindTileEntitySpecialRenderer(TileRedstoneBellows.class, new TileRedstoneBellowsRender()); } + + } + + + +/* + ClientRegistry.bindTileEntitySpecialRenderer(TileRedstoneBellows.class, new AnimationTESR() + { + @Override + public void handleEvents(TileRedstoneBellows tileRedstoneBellows, float time, Iterable pastEvents) + { + + //tileRedstoneBellows.handleEvents(time, pastEvents); + } + }); + */ \ No newline at end of file diff --git a/kfc/src/main/java/nmd/primal/forgecraft/init/ModTiles.java b/kfc/src/main/java/nmd/primal/forgecraft/init/ModTiles.java index 543781b2..e189c627 100644 --- a/kfc/src/main/java/nmd/primal/forgecraft/init/ModTiles.java +++ b/kfc/src/main/java/nmd/primal/forgecraft/init/ModTiles.java @@ -19,6 +19,7 @@ public class ModTiles { registerTileEntity(TileNBTCrucible.class, "nbtcrucible"); registerTileEntity(TileWorkbench.class, "workbench"); registerTileEntity(TileSharpBench.class, "sharpbench"); + registerTileEntity(TileRedstoneBellows.class, "redstonebellows"); } private static void registerTileEntity(Class tile_class, String baseName) { diff --git a/kfc/src/main/java/nmd/primal/forgecraft/renders/blocks/TileRedstoneBellowsRender.java b/kfc/src/main/java/nmd/primal/forgecraft/renders/blocks/TileRedstoneBellowsRender.java new file mode 100644 index 00000000..398cdbd8 --- /dev/null +++ b/kfc/src/main/java/nmd/primal/forgecraft/renders/blocks/TileRedstoneBellowsRender.java @@ -0,0 +1,184 @@ +package nmd.primal.forgecraft.renders.blocks; + +import net.minecraft.block.state.IBlockState; +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.OpenGlHelper; +import net.minecraft.client.renderer.RenderItem; +import net.minecraft.client.renderer.block.model.ItemCameraTransforms; +import net.minecraft.client.renderer.texture.TextureMap; +import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; +import net.minecraft.item.ItemStack; +import net.minecraft.util.EnumFacing; +import net.minecraft.util.math.BlockPos; +import nmd.primal.core.api.PrimalAPI; +import nmd.primal.forgecraft.blocks.machine.Breaker; +import nmd.primal.forgecraft.blocks.machine.RedstoneBellows; +import nmd.primal.forgecraft.init.ModItems; +import nmd.primal.forgecraft.tiles.TileBreaker; +import nmd.primal.forgecraft.tiles.TileRedstoneBellows; +import org.lwjgl.opengl.GL11; + +/** + * Created by mminaie on 4/9/17. + */ +public class TileRedstoneBellowsRender extends TileEntitySpecialRenderer +{ + private RenderItem renderItem = Minecraft.getMinecraft().getRenderItem(); + private static int time =0; + private static float k =80; + private static float angle = 17; + + @Override + public void render(TileRedstoneBellows tile, double x, double y, double z, float partialTicks, int destroyStage, float alpha) + { + BlockPos pos = tile.getPos(); + IBlockState state = this.getWorld().getBlockState(pos); + ItemStack crank = new ItemStack(ModItems.woodcrank); + ItemStack arm = new ItemStack(ModItems.woodpistonarm); + ItemStack piston = new ItemStack(ModItems.woodpiston); + int[] angles = {0,45,45*2, 45*3, 45*4, 45*5, 45*6, 45*7}; + time++; + if(time > k){ + time = 0; + } + float percentK = time / k; + if (state.getBlock() instanceof RedstoneBellows) { + + GL11.glPushMatrix(); + GL11.glTranslated(x, y, z); + GL11.glScalef(1.0f, 1.0f, 1.0f); + Minecraft.getMinecraft().getTextureManager().bindTexture(TextureMap.LOCATION_BLOCKS_TEXTURE); + float prevLGTX = OpenGlHelper.lastBrightnessX; + float prevLGTY = OpenGlHelper.lastBrightnessY; + int bright = tile.getWorld().getCombinedLight(pos.up(), 0); + OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, bright % 65536, bright / 65536); + + //ItemStack stack0 = tile.getSlotStack(0); + + if (state.getValue(Breaker.FACING) == EnumFacing.NORTH) { + /***CRANK***/ + GL11.glPushMatrix(); + GL11.glTranslated((11/32D), (9/32D), (7/32D)); + if(state.getValue(PrimalAPI.States.ACTIVE)){ + GL11.glRotatef(360*(time / k), 1.0F, 0.0F, 0.0F); + } + //GL11.glTranslated(0.5D, 0.450D, 0.7); + //GL11.glRotated(90, 0.0f, 1.0f, 0.0f); + //GL11.glRotatef(-135, 0.0f, 0.0f, 1.0f); + + //GL11.glRotatef(tile.getCharge(), 0.0f, 0.0f, 1.0f); + + //GL11.glTranslatef(0.0f, 0.40f, 0.0f); + //GL11.glTranslated(-0.45D, 0.0D, 0.0D); + + renderItem.renderItem(crank, ItemCameraTransforms.TransformType.FIXED); + GL11.glPopMatrix(); + /***PISTON***/ + GL11.glPushMatrix(); + GL11.glTranslated((3/32D), 9/32D, 15/16D); + if(state.getValue(PrimalAPI.States.ACTIVE)){ + //System.out.println(percentK); + //GL11.glRotatef(17, 1.0F, 0.0F, 0.0F); + if( percentK >= 0 && percentK < 0.25 ) { + GL11.glRotatef(angle * (time/(k/4)), 1.0F, 0.0F, 0.0F); + } + float halfFloat = time - (k/4); + if( percentK >= 0.25 && percentK < 0.5) { + GL11.glRotatef(angle * (((k/4)-halfFloat)/(k/4)), 1.0F, 0.0F, 0.0F); + } + if( percentK >= 0.5 && percentK < 0.75) { + GL11.glRotatef(-angle * ((time-(k/2))/(k/4)), 1.0F, 0.0F, 0.0F); + } + float thirdFloat = time - ((k/4)*3); + if( percentK >= 0.75 && percentK < 1) { + GL11.glRotatef(-angle * (((k/4)-thirdFloat)/(k/4)), 1.0F, 0.0F, 0.0F); + + } + + //GL11.glRotatef(360*partialTicks, 1.0F, 0.0F, 0.0F); + } + + //GL11.glRotatef(tile.getCharge(), 0.0f, 0.0f, 1.0f); + + //GL11.glTranslatef(0.0f, 0.40f, 0.0f); + //GL11.glTranslated(-0.45D, 0.0D, 0.0D); + + renderItem.renderItem(piston, ItemCameraTransforms.TransformType.FIXED); + GL11.glPopMatrix(); + /***ARM1***/ + GL11.glPushMatrix(); + //GL11.glTranslated(0.5D, 0.450D, 0.7); + //GL11.glRotated(90, 0.0f, 1.0f, 0.0f); + //GL11.glRotatef(-135, 0.0f, 0.0f, 1.0f); + + //GL11.glRotatef(tile.getCharge(), 0.0f, 0.0f, 1.0f); + + //GL11.glTranslatef(0.0f, 0.40f, 0.0f); + //GL11.glTranslated(-0.45D, 0.0D, 0.0D); + + renderItem.renderItem(arm, ItemCameraTransforms.TransformType.FIXED); + GL11.glPopMatrix(); + /***ARM2***/ + GL11.glPushMatrix(); + GL11.glTranslated(0.5D, 0, 7/16D); + //GL11.glRotated(90, 0.0f, 1.0f, 0.0f); + //GL11.glRotatef(-135, 0.0f, 0.0f, 1.0f); + + //GL11.glRotatef(tile.getCharge(), 0.0f, 0.0f, 1.0f); + + //GL11.glTranslatef(0.0f, 0.40f, 0.0f); + //GL11.glTranslated(-0.45D, 0.0D, 0.0D); + renderItem.renderItem(arm, ItemCameraTransforms.TransformType.FIXED); + GL11.glPopMatrix(); + } + + if (state.getValue(Breaker.FACING) == EnumFacing.EAST) { + GL11.glPushMatrix(); + GL11.glTranslated(0.3D, 0.450D, 0.5); + //GL11.glRotated(90, 0.0f, 1.0f, 0.0f); + GL11.glRotatef(-135, 0.0f, 0.0f, 1.0f); + + //GL11.glRotatef(tile.getCharge(), 0.0f, 0.0f, 1.0f); + + GL11.glTranslatef(0.0f, 0.40f, 0.0f); + GL11.glTranslated(-0.45D, 0.0D, 0.0D); + + renderItem.renderItem(tile.getSlotStack(0), ItemCameraTransforms.TransformType.FIXED); + GL11.glPopMatrix(); + } + + if (state.getValue(Breaker.FACING) == EnumFacing.SOUTH) { + GL11.glPushMatrix(); + GL11.glTranslated(0.5D, 0.450D, 0.3); + GL11.glRotated(90, 0.0f, 1.0f, 0.0f); + GL11.glRotatef(45, 0.0f, 0.0f, 1.0f); + + //GL11.glRotatef(tile.getCharge(), 0.0f, 0.0f, -1.0f); + + GL11.glTranslatef(0.0f, 0.40f, 0.0f); + GL11.glTranslated(-0.45D, 0.0D, 0.0D); + + renderItem.renderItem(tile.getSlotStack(0), ItemCameraTransforms.TransformType.FIXED); + GL11.glPopMatrix(); + } + + if (state.getValue(Breaker.FACING) == EnumFacing.WEST) { + GL11.glPushMatrix(); + GL11.glTranslated(0.7D, 0.450D, 0.5); + //GL11.glRotated(90, 0.0f, 1.0f, 0.0f); + GL11.glRotatef(45, 0.0f, 0.0f, 1.0f); + + //GL11.glRotatef(tile.getCharge(), 0.0f, 0.0f, -1.0f); + + GL11.glTranslatef(0.0f, 0.40f, 0.0f); + GL11.glTranslated(-0.45D, 0.0D, 0.0D); + + renderItem.renderItem(tile.getSlotStack(0), ItemCameraTransforms.TransformType.FIXED); + GL11.glPopMatrix(); + } + + OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, prevLGTX, prevLGTY); + GL11.glPopMatrix(); + } + } +} \ No newline at end of file diff --git a/kfc/src/main/java/nmd/primal/forgecraft/tiles/TileRedstoneBellows.java b/kfc/src/main/java/nmd/primal/forgecraft/tiles/TileRedstoneBellows.java new file mode 100644 index 00000000..edebe920 --- /dev/null +++ b/kfc/src/main/java/nmd/primal/forgecraft/tiles/TileRedstoneBellows.java @@ -0,0 +1,48 @@ +package nmd.primal.forgecraft.tiles; + +import net.minecraft.nbt.NBTTagCompound; + +public class TileRedstoneBellows extends TileBaseSlot { + + + + private int iteration = 0; + private int animateIteration = 0; + + public TileRedstoneBellows() { + } + + public int getIteration(){ + return this.iteration; + } + public int getAnimation(){ + return this.animateIteration; + } + + public void doIterate(){ + if(iteration >= 0 && iteration < 4){ + iteration+=1; + animateIteration=iteration; + } + if(iteration >= 4){ + iteration+=1; + animateIteration=iteration; + } + } + + public NBTTagCompound readNBT(NBTTagCompound nbt) + { + super.readNBT(nbt); + this.iteration = nbt.getInteger("iteration"); + this.animateIteration = nbt.getInteger("animate"); + return nbt; + } + + public NBTTagCompound writeNBT(NBTTagCompound nbt) + { + nbt.setInteger("iteration", this.iteration); + nbt.setInteger("animate", this.animateIteration); + return nbt; + } + +} diff --git a/kfc/src/main/resources/assets/forgecraft/blockstates/redstonebellows.json b/kfc/src/main/resources/assets/forgecraft/blockstates/redstonebellows.json new file mode 100644 index 00000000..7cab415e --- /dev/null +++ b/kfc/src/main/resources/assets/forgecraft/blockstates/redstonebellows.json @@ -0,0 +1,20 @@ +{ + "forge_marker":1, + "defaults": { + "textures": { + "particle": "blocks/planks_oak", + "texture": "blocks/planks_oak" + }, + "parent": "forgecraft:block/redstone_bellows_model" + }, + "variants": { + "active=false,facing=north": { "model": "forgecraft:redstone_bellows_model" }, + "active=false,facing=east": { "model": "forgecraft:redstone_bellows_model", "y": 90 }, + "active=false,facing=south": { "model": "forgecraft:redstone_bellows_model", "y": 180 }, + "active=false,facing=west": { "model": "forgecraft:redstone_bellows_model", "y": 270 }, + "active=true,facing=north": { "model": "forgecraft:redstone_bellows_model" }, + "active=true,facing=east": { "model": "forgecraft:redstone_bellows_model", "y": 90 }, + "active=true,facing=south": { "model": "forgecraft:redstone_bellows_model", "y": 180 }, + "active=true,facing=west": { "model": "forgecraft:redstone_bellows_model", "y": 270 } + } +} \ No newline at end of file diff --git a/kfc/src/main/resources/assets/forgecraft/models/block/redstone_bellows_model.json b/kfc/src/main/resources/assets/forgecraft/models/block/redstone_bellows_model.json new file mode 100644 index 00000000..2906b2d4 --- /dev/null +++ b/kfc/src/main/resources/assets/forgecraft/models/block/redstone_bellows_model.json @@ -0,0 +1,211 @@ +{ + "__comment": "Designed by Kitsushadow with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "blocks/e_particle", + "texture": "blocks/e_texture" + }, + "elements": [ + { + "__comment": "Box16", + "from": [ 3, 0, 14 ], + "to": [ 16, 9, 16 ], + "faces": { + "down": { "uv": [ 3, 0, 16, 2 ], "texture": "#texture" }, + "up": { "uv": [ 3, 14, 16, 16 ], "texture": "#texture" }, + "north": { "uv": [ 0, 7, 13, 16 ], "texture": "#texture" }, + "south": { "uv": [ 3, 7, 16, 16 ], "texture": "#texture" }, + "west": { "uv": [ 14, 7, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 7, 2, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box75", + "from": [ 4, 0, 0 ], + "to": [ 7, 9, 14 ], + "faces": { + "down": { "uv": [ 4, 2, 7, 16 ], "texture": "#texture" }, + "up": { "uv": [ 4, 0, 7, 14 ], "texture": "#texture" }, + "north": { "uv": [ 9, 7, 12, 16 ], "texture": "#texture" }, + "west": { "uv": [ 0, 7, 14, 16 ], "texture": "#texture" }, + "east": { "uv": [ 2, 7, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box88", + "from": [ 8, 8, 8 ], + "to": [ 16, 9, 14 ], + "faces": { + "down": { "uv": [ 8, 2, 16, 8 ], "texture": "#texture" }, + "up": { "uv": [ 8, 8, 16, 14 ], "texture": "#texture" }, + "north": { "uv": [ 0, 7, 8, 8 ], "texture": "#texture" }, + "east": { "uv": [ 2, 7, 8, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box91", + "from": [ 12, 1, 3 ], + "to": [ 16, 8, 4 ], + "faces": { + "north": { "uv": [ 0, 8, 4, 15 ], "texture": "#texture" }, + "south": { "uv": [ 12, 8, 16, 15 ], "texture": "#texture" }, + "east": { "uv": [ 12, 8, 13, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "Box92", + "from": [ 11, 1, 3 ], + "to": [ 12, 8, 14 ], + "faces": { + "down": { "uv": [ 11, 2, 12, 13 ], "texture": "#texture" }, + "up": { "uv": [ 11, 3, 12, 14 ], "texture": "#texture" }, + "north": { "uv": [ 4, 8, 5, 15 ], "texture": "#texture" }, + "west": { "uv": [ 3, 8, 14, 15 ], "texture": "#texture" }, + "east": { "uv": [ 2, 8, 13, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "Box93", + "from": [ 11, 8, 3 ], + "to": [ 16, 9, 8 ], + "faces": { + "down": { "uv": [ 11, 8, 16, 13 ], "texture": "#texture" }, + "up": { "uv": [ 11, 3, 16, 8 ], "texture": "#texture" }, + "north": { "uv": [ 0, 7, 5, 8 ], "texture": "#texture" }, + "west": { "uv": [ 3, 7, 8, 8 ], "texture": "#texture" }, + "east": { "uv": [ 8, 7, 13, 8 ], "texture": "#texture" } + } + }, + { + "__comment": "Box94", + "from": [ 15, 4, 4 ], + "to": [ 16, 8, 14 ], + "faces": { + "down": { "uv": [ 15, 2, 16, 12 ], "texture": "#texture" }, + "up": { "uv": [ 15, 4, 16, 14 ], "texture": "#texture" }, + "west": { "uv": [ 4, 8, 14, 12 ], "texture": "#texture" }, + "east": { "uv": [ 2, 8, 12, 12 ], "texture": "#texture" } + } + }, + { + "__comment": "Box95", + "from": [ 15, 1, 12 ], + "to": [ 16, 4, 14 ], + "faces": { + "north": { "uv": [ 0, 12, 1, 15 ], "texture": "#texture" }, + "west": { "uv": [ 12, 12, 14, 15 ], "texture": "#texture" }, + "east": { "uv": [ 2, 12, 4, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "Box96", + "from": [ 8, 1, 8 ], + "to": [ 11, 3.5, 9 ], + "faces": { + "up": { "uv": [ 8, 8, 11, 9 ], "texture": "#texture" }, + "north": { "uv": [ 5, 12.5, 8, 15 ], "texture": "#texture" }, + "south": { "uv": [ 8, 12.5, 11, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "Box96", + "from": [ 8, 5.5, 8 ], + "to": [ 11, 8, 9 ], + "faces": { + "down": { "uv": [ 8, 7, 11, 8 ], "texture": "#texture" }, + "north": { "uv": [ 5, 8, 8, 10.5 ], "texture": "#texture" }, + "south": { "uv": [ 8, 8, 11, 10.5 ], "texture": "#texture" } + } + }, + { + "__comment": "Box98", + "from": [ 8, 3.5, 8 ], + "to": [ 9, 5.5, 9 ], + "faces": { + "north": { "uv": [ 7, 10.5, 8, 12.5 ], "texture": "#texture" }, + "south": { "uv": [ 8, 10.5, 9, 12.5 ], "texture": "#texture" }, + "east": { "uv": [ 7, 10.5, 8, 12.5 ], "texture": "#texture" } + } + }, + { + "__comment": "Box98", + "from": [ 10, 3.5, 8 ], + "to": [ 11, 5.5, 9 ], + "faces": { + "north": { "uv": [ 5, 10.5, 6, 12.5 ], "texture": "#texture" }, + "south": { "uv": [ 10, 10.5, 11, 12.5 ], "texture": "#texture" }, + "west": { "uv": [ 8, 10.5, 9, 12.5 ], "texture": "#texture" } + } + }, + { + "__comment": "Box100", + "from": [ 7, 0, 8 ], + "to": [ 8, 9, 14 ], + "faces": { + "down": { "uv": [ 7, 2, 8, 8 ], "texture": "#texture" }, + "up": { "uv": [ 7, 8, 8, 14 ], "texture": "#texture" }, + "north": { "uv": [ 8, 7, 9, 16 ], "texture": "#texture" }, + "east": { "uv": [ 2, 7, 8, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box45", + "from": [ 8, 0, 8 ], + "to": [ 16, 1, 14 ], + "faces": { + "down": { "uv": [ 8, 2, 16, 8 ], "texture": "#texture" }, + "up": { "uv": [ 8, 8, 16, 14 ], "texture": "#texture" }, + "north": { "uv": [ 0, 15, 8, 16 ], "texture": "#texture" }, + "east": { "uv": [ 2, 15, 8, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box46", + "from": [ 11, 0, 3 ], + "to": [ 16, 1, 8 ], + "faces": { + "down": { "uv": [ 11, 8, 16, 13 ], "texture": "#texture" }, + "up": { "uv": [ 11, 3, 16, 8 ], "texture": "#texture" }, + "north": { "uv": [ 0, 15, 5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 15, 8, 16 ], "texture": "#texture" }, + "east": { "uv": [ 8, 15, 13, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box47", + "from": [ 12, 1, 12 ], + "to": [ 14, 5, 13 ], + "faces": { + "up": { "uv": [ 12, 12, 14, 13 ], "texture": "#texture" }, + "north": { "uv": [ 2, 11, 4, 15 ], "texture": "#texture" }, + "south": { "uv": [ 12, 11, 14, 15 ], "texture": "#texture" }, + "east": { "uv": [ 3, 11, 4, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "Box48", + "from": [ 12, 4, 4 ], + "to": [ 15, 5, 12 ], + "faces": { + "down": { "uv": [ 12, 4, 15, 12 ], "texture": "#texture" }, + "up": { "uv": [ 12, 4, 15, 12 ], "texture": "#texture" }, + "south": { "uv": [ 12, 11, 15, 12 ], "texture": "#texture" } + } + }, + { + "__comment": "Box49", + "from": [ 13, 1, 4 ], + "to": [ 14, 4, 12 ], + "faces": { + "down": { "uv": [ 13, 4, 14, 12 ], "texture": "#texture" }, + "west": { "uv": [ 4, 12, 12, 15 ], "texture": "#texture" }, + "east": { "uv": [ 4, 12, 12, 15 ], "texture": "#texture" } + } + } + ], + "display": { + "firstperson_righthand": { + "rotation": [ 0, 45, 0 ], + "scale": [ 0.4, 0.4, 0.4 ] + } + } +} \ No newline at end of file diff --git a/kfc/src/main/resources/assets/forgecraft/models/item/crank_wheel.json b/kfc/src/main/resources/assets/forgecraft/models/item/crank_wheel.json new file mode 100644 index 00000000..6b1b86a6 --- /dev/null +++ b/kfc/src/main/resources/assets/forgecraft/models/item/crank_wheel.json @@ -0,0 +1,323 @@ +{ + "__comment": "Designed by Kitsushadow with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "blocks/e_particle", + "texture": "blocks/e_texture" + }, + "elements": [ + { + "__comment": "Box64", + "from": [ 4.5, 6.5, 4.5 ], + "to": [ 5.5, 9.5, 5.5 ], + "faces": { + "down": { "uv": [ 2, 15, 3, 16 ], "texture": "#texture" }, + "up": { "uv": [ 2, 0, 3, 1 ], "texture": "#texture" }, + "north": { "uv": [ 13, 10, 14, 13 ], "texture": "#texture" }, + "south": { "uv": [ 2, 10, 3, 13 ], "texture": "#texture" }, + "west": { "uv": [ 0, 10, 1, 13 ], "texture": "#texture" }, + "east": { "uv": [ 15, 10, 16, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "Box64", + "from": [ 4.5, 6.5, 10.5 ], + "to": [ 5.5, 9.5, 11.5 ], + "faces": { + "down": { "uv": [ 2, 9, 3, 10 ], "texture": "#texture" }, + "up": { "uv": [ 2, 6, 3, 7 ], "texture": "#texture" }, + "north": { "uv": [ 13, 10, 14, 13 ], "texture": "#texture" }, + "south": { "uv": [ 2, 10, 3, 13 ], "texture": "#texture" }, + "west": { "uv": [ 6, 10, 7, 13 ], "texture": "#texture" }, + "east": { "uv": [ 9, 10, 10, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "Box66", + "from": [ 4.5, 4.5, 6.5 ], + "to": [ 5.5, 5.5, 9.5 ], + "faces": { + "down": { "uv": [ 2, 11, 3, 14 ], "texture": "#texture" }, + "up": { "uv": [ 2, 2, 3, 5 ], "texture": "#texture" }, + "north": { "uv": [ 13, 14, 14, 15 ], "texture": "#texture" }, + "south": { "uv": [ 2, 14, 3, 15 ], "texture": "#texture" }, + "west": { "uv": [ 2, 14, 5, 15 ], "texture": "#texture" }, + "east": { "uv": [ 11, 14, 14, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "Box66", + "from": [ 4.5, 10.5, 6.5 ], + "to": [ 5.5, 11.5, 9.5 ], + "faces": { + "down": { "uv": [ 2, 11, 3, 14 ], "texture": "#texture" }, + "up": { "uv": [ 2, 2, 3, 5 ], "texture": "#texture" }, + "north": { "uv": [ 13, 8, 14, 9 ], "texture": "#texture" }, + "south": { "uv": [ 2, 8, 3, 9 ], "texture": "#texture" }, + "west": { "uv": [ 2, 8, 5, 9 ], "texture": "#texture" }, + "east": { "uv": [ 11, 8, 14, 9 ], "texture": "#texture" } + } + }, + { + "__comment": "Box68", + "from": [ 4.5, 4.5, 9.5 ], + "to": [ 5.45, 5.45, 12.35 ], + "rotation": { "origin": [ 4.5, 4.5, 9.5 ], "axis": "x", "angle": -45 }, + "faces": { + "down": { "uv": [ 2, 8.15, 2.95, 11 ], "texture": "#texture" }, + "up": { "uv": [ 2, 5, 2.95, 7.85 ], "texture": "#texture" }, + "north": { "uv": [ 13.05, 14.05, 14, 15 ], "texture": "#texture" }, + "south": { "uv": [ 2, 14.05, 2.95, 15 ], "texture": "#texture" }, + "west": { "uv": [ 5, 14.05, 7.85, 15 ], "texture": "#texture" }, + "east": { "uv": [ 8.15, 14.05, 11, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "Box69", + "from": [ 4.5, 6.5, 4.5 ], + "to": [ 5.45, 7.45, 7.35 ], + "rotation": { "origin": [ 4.5, 6.5, 4.5 ], "axis": "x", "angle": 45 }, + "faces": { + "down": { "uv": [ 2, 13.15, 2.95, 16 ], "texture": "#texture" }, + "up": { "uv": [ 2, 0, 2.95, 2.85 ], "texture": "#texture" }, + "north": { "uv": [ 13.05, 12.05, 14, 13 ], "texture": "#texture" }, + "south": { "uv": [ 2, 12.05, 2.95, 13 ], "texture": "#texture" }, + "west": { "uv": [ 0, 12.05, 2.85, 13 ], "texture": "#texture" }, + "east": { "uv": [ 13.15, 12.05, 16, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "Box70", + "from": [ 4.5, 10.55, 3.65 ], + "to": [ 5.45, 11.5, 6.5 ], + "rotation": { "origin": [ 4.5, 11.5, 6.5 ], "axis": "x", "angle": -45 }, + "faces": { + "down": { "uv": [ 2, 12.4935, 2.95, 15.3435 ], "texture": "#texture" }, + "up": { "uv": [ 2, 0.656497, 2.95, 3.506496 ], "texture": "#texture" }, + "north": { "uv": [ 13.05, 9.737006, 14, 10.68701 ], "texture": "#texture" }, + "south": { "uv": [ 2, 9.737006, 2.95, 10.68701 ], "texture": "#texture" }, + "west": { "uv": [ 0.6564972, 9.737006, 3.506497, 10.68701 ], "texture": "#texture" }, + "east": { "uv": [ 12.4935, 9.737006, 15.3435, 10.68701 ], "texture": "#texture" } + } + }, + { + "__comment": "Box71", + "from": [ 4.5, 8.55, 8.65 ], + "to": [ 5.45, 9.5, 11.5 ], + "rotation": { "origin": [ 4.5, 9.5, 11.5 ], "axis": "x", "angle": 45 }, + "faces": { + "down": { "uv": [ 2, 8.837006, 2.95, 11.68701 ], "texture": "#texture" }, + "up": { "uv": [ 2, 4.312994, 2.95, 7.162994 ], "texture": "#texture" }, + "north": { "uv": [ 13.05, 7.706497, 14, 8.656498 ], "texture": "#texture" }, + "south": { "uv": [ 2, 7.706497, 2.95, 8.656498 ], "texture": "#texture" }, + "west": { "uv": [ 4.312994, 7.706497, 7.162994, 8.656498 ], "texture": "#texture" }, + "east": { "uv": [ 8.837006, 7.706497, 11.68701, 8.656498 ], "texture": "#texture" } + } + }, + { + "__comment": "Box73", + "from": [ 4.5, 7.5, 5.5 ], + "to": [ 5.5, 8.5, 10.5 ], + "faces": { + "down": { "uv": [ 2, 10, 3, 15 ], "texture": "#texture" }, + "up": { "uv": [ 2, 1, 3, 6 ], "texture": "#texture" }, + "north": { "uv": [ 13, 11, 14, 12 ], "texture": "#texture" }, + "south": { "uv": [ 2, 11, 3, 12 ], "texture": "#texture" }, + "west": { "uv": [ 1, 11, 6, 12 ], "texture": "#texture" }, + "east": { "uv": [ 10, 11, 15, 12 ], "texture": "#texture" } + } + }, + { + "__comment": "Box74", + "from": [ 4.5, 5.5, 7.5 ], + "to": [ 5.5, 10.5, 8.5 ], + "faces": { + "down": { "uv": [ 2, 12, 3, 13 ], "texture": "#texture" }, + "up": { "uv": [ 2, 3, 3, 4 ], "texture": "#texture" }, + "north": { "uv": [ 13, 9, 14, 14 ], "texture": "#texture" }, + "south": { "uv": [ 2, 9, 3, 14 ], "texture": "#texture" }, + "west": { "uv": [ 3, 9, 4, 14 ], "texture": "#texture" }, + "east": { "uv": [ 12, 9, 13, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box70", + "from": [ 10.5, 10.55, 3.65 ], + "to": [ 11.45, 11.5, 6.5 ], + "rotation": { "origin": [ 10.5, 11.5, 6.5 ], "axis": "x", "angle": -45 }, + "faces": { + "down": { "uv": [ 8, 12.4935, 8.95, 15.3435 ], "texture": "#texture" }, + "up": { "uv": [ 8, 0.656497, 8.95, 3.506496 ], "texture": "#texture" }, + "north": { "uv": [ 7.05, 9.737006, 8, 10.68701 ], "texture": "#texture" }, + "south": { "uv": [ 8, 9.737006, 8.95, 10.68701 ], "texture": "#texture" }, + "west": { "uv": [ 0.6564972, 9.737006, 3.506497, 10.68701 ], "texture": "#texture" }, + "east": { "uv": [ 12.4935, 9.737006, 15.3435, 10.68701 ], "texture": "#texture" } + } + }, + { + "__comment": "Box64", + "from": [ 10.5, 6.5, 4.5 ], + "to": [ 11.5, 9.5, 5.5 ], + "faces": { + "down": { "uv": [ 8, 15, 9, 16 ], "texture": "#texture" }, + "up": { "uv": [ 8, 0, 9, 1 ], "texture": "#texture" }, + "north": { "uv": [ 7, 10, 8, 13 ], "texture": "#texture" }, + "south": { "uv": [ 8, 10, 9, 13 ], "texture": "#texture" }, + "west": { "uv": [ 0, 10, 1, 13 ], "texture": "#texture" }, + "east": { "uv": [ 15, 10, 16, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "Box69", + "from": [ 10.5, 6.5, 4.5 ], + "to": [ 11.45, 7.45, 7.35 ], + "rotation": { "origin": [ 10.5, 6.5, 4.5 ], "axis": "x", "angle": 45 }, + "faces": { + "down": { "uv": [ 8, 13.15, 8.95, 16 ], "texture": "#texture" }, + "up": { "uv": [ 8, 0, 8.95, 2.85 ], "texture": "#texture" }, + "north": { "uv": [ 7.05, 12.05, 8, 13 ], "texture": "#texture" }, + "south": { "uv": [ 8, 12.05, 8.95, 13 ], "texture": "#texture" }, + "west": { "uv": [ 0, 12.05, 2.85, 13 ], "texture": "#texture" }, + "east": { "uv": [ 13.15, 12.05, 16, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "Box66", + "from": [ 10.5, 4.5, 6.5 ], + "to": [ 11.5, 5.5, 9.5 ], + "faces": { + "down": { "uv": [ 8, 11, 9, 14 ], "texture": "#texture" }, + "up": { "uv": [ 8, 2, 9, 5 ], "texture": "#texture" }, + "north": { "uv": [ 7, 14, 8, 15 ], "texture": "#texture" }, + "south": { "uv": [ 8, 14, 9, 15 ], "texture": "#texture" }, + "west": { "uv": [ 2, 14, 5, 15 ], "texture": "#texture" }, + "east": { "uv": [ 11, 14, 14, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "Box68", + "from": [ 10.5, 4.5, 9.5 ], + "to": [ 11.45, 5.45, 12.35 ], + "rotation": { "origin": [ 10.5, 4.5, 9.5 ], "axis": "x", "angle": -45 }, + "faces": { + "down": { "uv": [ 8, 8.15, 8.95, 11 ], "texture": "#texture" }, + "up": { "uv": [ 8, 5, 8.95, 7.85 ], "texture": "#texture" }, + "north": { "uv": [ 7.05, 14.05, 8, 15 ], "texture": "#texture" }, + "south": { "uv": [ 8, 14.05, 8.95, 15 ], "texture": "#texture" }, + "west": { "uv": [ 5, 14.05, 7.85, 15 ], "texture": "#texture" }, + "east": { "uv": [ 8.15, 14.05, 11, 15 ], "texture": "#texture" } + } + }, + { + "__comment": "Box64", + "from": [ 10.5, 6.5, 10.5 ], + "to": [ 11.5, 9.5, 11.5 ], + "faces": { + "down": { "uv": [ 8, 9, 9, 10 ], "texture": "#texture" }, + "up": { "uv": [ 8, 6, 9, 7 ], "texture": "#texture" }, + "north": { "uv": [ 7, 10, 8, 13 ], "texture": "#texture" }, + "south": { "uv": [ 8, 10, 9, 13 ], "texture": "#texture" }, + "west": { "uv": [ 6, 10, 7, 13 ], "texture": "#texture" }, + "east": { "uv": [ 9, 10, 10, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "Box71", + "from": [ 10.5, 8.55, 8.65 ], + "to": [ 11.45, 9.5, 11.5 ], + "rotation": { "origin": [ 10.5, 9.5, 11.5 ], "axis": "x", "angle": 45 }, + "faces": { + "down": { "uv": [ 8, 8.837006, 8.95, 11.68701 ], "texture": "#texture" }, + "up": { "uv": [ 8, 4.312994, 8.95, 7.162994 ], "texture": "#texture" }, + "north": { "uv": [ 7.05, 7.706497, 8, 8.656498 ], "texture": "#texture" }, + "south": { "uv": [ 8, 7.706497, 8.95, 8.656498 ], "texture": "#texture" }, + "west": { "uv": [ 4.312994, 7.706497, 7.162994, 8.656498 ], "texture": "#texture" }, + "east": { "uv": [ 8.837006, 7.706497, 11.68701, 8.656498 ], "texture": "#texture" } + } + }, + { + "__comment": "Box66", + "from": [ 10.5, 10.5, 6.5 ], + "to": [ 11.5, 11.5, 9.5 ], + "faces": { + "down": { "uv": [ 8, 11, 9, 14 ], "texture": "#texture" }, + "up": { "uv": [ 8, 2, 9, 5 ], "texture": "#texture" }, + "north": { "uv": [ 7, 8, 8, 9 ], "texture": "#texture" }, + "south": { "uv": [ 8, 8, 9, 9 ], "texture": "#texture" }, + "west": { "uv": [ 2, 8, 5, 9 ], "texture": "#texture" }, + "east": { "uv": [ 11, 8, 14, 9 ], "texture": "#texture" } + } + }, + { + "__comment": "Box73", + "from": [ 10.5, 7.5, 5.5 ], + "to": [ 11.5, 8.5, 10.5 ], + "faces": { + "down": { "uv": [ 8, 10, 9, 15 ], "texture": "#texture" }, + "up": { "uv": [ 8, 1, 9, 6 ], "texture": "#texture" }, + "north": { "uv": [ 7, 11, 8, 12 ], "texture": "#texture" }, + "south": { "uv": [ 8, 11, 9, 12 ], "texture": "#texture" }, + "west": { "uv": [ 1, 11, 6, 12 ], "texture": "#texture" }, + "east": { "uv": [ 10, 11, 15, 12 ], "texture": "#texture" } + } + }, + { + "__comment": "Box74", + "from": [ 10.5, 5.5, 7.5 ], + "to": [ 11.5, 10.5, 8.5 ], + "faces": { + "down": { "uv": [ 8, 12, 9, 13 ], "texture": "#texture" }, + "up": { "uv": [ 8, 3, 9, 4 ], "texture": "#texture" }, + "north": { "uv": [ 7, 9, 8, 14 ], "texture": "#texture" }, + "south": { "uv": [ 8, 9, 9, 14 ], "texture": "#texture" }, + "west": { "uv": [ 3, 9, 4, 14 ], "texture": "#texture" }, + "east": { "uv": [ 12, 9, 13, 14 ], "texture": "#texture" } + } + }, + { + "__comment": "Box86", + "from": [ 5.5, 7.5, 7.5 ], + "to": [ 10.5, 8.5, 8.5 ], + "faces": { + "down": { "uv": [ 3, 12, 8, 13 ], "texture": "#texture" }, + "up": { "uv": [ 3, 3, 8, 4 ], "texture": "#texture" }, + "north": { "uv": [ 8, 11, 13, 12 ], "texture": "#texture" }, + "south": { "uv": [ 3, 11, 8, 12 ], "texture": "#texture" }, + "west": { "uv": [ 3, 11, 4, 12 ], "texture": "#texture" }, + "east": { "uv": [ 12, 11, 13, 12 ], "texture": "#texture" } + } + } + ], + "display": { + "thirdperson_righthand": { + "rotation": [ 0, -90, 55 ], + "translation": [ 0, 4, 0.5 ], + "scale": [ 0.85, 0.85, 0.85 ] + }, + "thirdperson_lefthand": { + "rotation": [ 0, -90, 55 ], + "translation": [ 0, 4, 0.5 ], + "scale": [ 0.85, 0.85, 0.85 ] + }, + "firstperson_righthand": { + "rotation": [ 0, -90, 25 ], + "translation": [ 1.13, 3.2, 1.13 ], + "scale": [ 0.68, 0.68, 0.68 ] + }, + "firstperson_lefthand": { + "rotation": [ 0, -90, 25 ], + "translation": [ 1.13, 3.2, 1.13 ], + "scale": [ 0.68, 0.68, 0.68 ] + }, + "gui": { + "rotation": [ 30, 225, 0 ], + "scale": [ 0.625, 0.625, 0.625 ] + }, + "ground": { + "translation": [ 0, 2, 0 ], + "scale": [ 0.5, 0.5, 0.5 ] + }, + "fixed": { + "scale": [ 1, 1, 1] + } + } +} \ No newline at end of file diff --git a/kfc/src/main/resources/assets/forgecraft/models/item/piston_arm.json b/kfc/src/main/resources/assets/forgecraft/models/item/piston_arm.json new file mode 100644 index 00000000..45aec249 --- /dev/null +++ b/kfc/src/main/resources/assets/forgecraft/models/item/piston_arm.json @@ -0,0 +1,52 @@ +{ + "__comment": "Designed by Kitsushadow with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "blocks/e_particle", + "texture": "blocks/e_texture" + }, + "elements": [ + { + "__comment": "Box42", + "from": [ 1, 4, 0 ], + "to": [ 2, 5, 8 ], + "faces": { + "down": { "uv": [ 1, 8, 2, 16 ], "texture": "#texture" }, + "up": { "uv": [ 1, 0, 2, 8 ], "texture": "#texture" }, + "north": { "uv": [ 14, 11, 15, 12 ], "texture": "#texture" }, + "south": { "uv": [ 1, 11, 2, 12 ], "texture": "#texture" }, + "west": { "uv": [ 0, 11, 8, 12 ], "texture": "#texture" }, + "east": { "uv": [ 8, 11, 16, 12 ], "texture": "#texture" } + } + } + ], + "display": { + "thirdperson_righthand": { + "rotation": [ 0, -90, 55 ], + "translation": [ 0, 4, 0.5 ], + "scale": [ 0.85, 0.85, 0.85 ] + }, + "thirdperson_lefthand": { + "rotation": [ 0, -90, 55 ], + "translation": [ 0, 4, 0.5 ], + "scale": [ 0.85, 0.85, 0.85 ] + }, + "firstperson_righthand": { + "rotation": [ 0, -90, 25 ], + "translation": [ 1.13, 3.2, 1.13 ], + "scale": [ 0.68, 0.68, 0.68 ] + }, + "firstperson_lefthand": { + "rotation": [ 0, -90, 25 ], + "translation": [ 1.13, 3.2, 1.13 ], + "scale": [ 0.68, 0.68, 0.68 ] + }, + "gui": { + "rotation": [ 30, 225, 0 ], + "translation": [ -4, 0, 0 ], + "scale": [ 0.625, 0.625, 0.625 ] + }, + "fixed": { + "scale": [ 1, 1, 1 ] + } + } +} \ No newline at end of file diff --git a/kfc/src/main/resources/assets/forgecraft/models/item/piston_engine_base.json b/kfc/src/main/resources/assets/forgecraft/models/item/piston_engine_base.json new file mode 100644 index 00000000..1f18629a --- /dev/null +++ b/kfc/src/main/resources/assets/forgecraft/models/item/piston_engine_base.json @@ -0,0 +1,100 @@ +{ + "__comment": "Designed by Kitsushadow with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "blocks/e_particle", + "texture": "blocks/e_texture", + "texture1": "items/e_texture" + }, + "elements": [ + { + "__comment": "Box15", + "from": [ 6.5, 6.5, 7 ], + "to": [ 9.5, 9.5, 9 ], + "faces": { + "down": { "uv": [ 0, 0, 3, 2 ], "texture": "#texture1" }, + "up": { "uv": [ 0, 14, 3, 16 ], "texture": "#texture1" }, + "north": { "uv": [ 13, 10, 16, 13 ], "texture": "#texture1" }, + "south": { "uv": [ 0, 10, 3, 13 ], "texture": "#texture1" }, + "west": { "uv": [ 14, 10, 16, 13 ], "texture": "#texture1" }, + "east": { "uv": [ 0, 10, 2, 13 ], "texture": "#texture1" } + } + }, + { + "__comment": "Box60", + "from": [ 6.5, 6.5, 1 ], + "to": [ 7.5, 9.5, 7 ], + "faces": { + "down": { "uv": [ 0, 2, 1, 8 ], "texture": "#texture" }, + "up": { "uv": [ 0, 8, 1, 14 ], "texture": "#texture" }, + "north": { "uv": [ 15, 10, 16, 13 ], "texture": "#texture" }, + "west": { "uv": [ 8, 10, 14, 13 ], "texture": "#texture" }, + "east": { "uv": [ 2, 10, 8, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "Box60", + "from": [ 8.5, 6.5, 1 ], + "to": [ 9.5, 9.5, 7 ], + "faces": { + "down": { "uv": [ 2, 2, 3, 8 ], "texture": "#texture" }, + "up": { "uv": [ 2, 8, 3, 14 ], "texture": "#texture" }, + "north": { "uv": [ 13, 10, 14, 13 ], "texture": "#texture" }, + "west": { "uv": [ 8, 10, 14, 13 ], "texture": "#texture" }, + "east": { "uv": [ 2, 10, 8, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "Box62", + "from": [ 7.5, 6.5, 1 ], + "to": [ 8.5, 7.5, 7 ], + "faces": { + "down": { "uv": [ 1, 2, 2, 8 ], "texture": "#texture" }, + "up": { "uv": [ 1, 8, 2, 14 ], "texture": "#texture" }, + "north": { "uv": [ 14, 12, 15, 13 ], "texture": "#texture" } + } + }, + { + "__comment": "Box62", + "from": [ 7.5, 8.5, 1 ], + "to": [ 8.5, 9.5, 7 ], + "faces": { + "down": { "uv": [ 1, 2, 2, 8 ], "texture": "#texture" }, + "up": { "uv": [ 1, 8, 2, 14 ], "texture": "#texture" }, + "north": { "uv": [ 14, 10, 15, 11 ], "texture": "#texture" } + } + } + ], + "display": { + "thirdperson_righthand": { + "rotation": [ 0, -90, 55 ], + "translation": [ 0, 4, 0.5 ], + "scale": [ 0.85, 0.85, 0.85 ] + }, + "thirdperson_lefthand": { + "rotation": [ 0, -90, 55 ], + "translation": [ 0, 4, 0.5 ], + "scale": [ 0.85, 0.85, 0.85 ] + }, + "firstperson_righthand": { + "rotation": [ 0, -90, 25 ], + "translation": [ 1.13, 3.2, 1.13 ], + "scale": [ 0.68, 0.68, 0.68 ] + }, + "firstperson_lefthand": { + "rotation": [ 0, -90, 25 ], + "translation": [ 1.13, 3.2, 1.13 ], + "scale": [ 0.68, 0.68, 0.68 ] + }, + "gui": { + "rotation": [ 30, 225, 0 ], + "scale": [ 0.625, 0.625, 0.625 ] + }, + "ground": { + "translation": [ 0, 2, 0 ], + "scale": [ 0.5, 0.5, 0.5 ] + }, + "fixed": { + "scale": [ 1, 1, 1] + } + } +} \ No newline at end of file diff --git a/kfc/src/main/resources/assets/forgecraft/models/item/woodcrank.json b/kfc/src/main/resources/assets/forgecraft/models/item/woodcrank.json new file mode 100644 index 00000000..852cc650 --- /dev/null +++ b/kfc/src/main/resources/assets/forgecraft/models/item/woodcrank.json @@ -0,0 +1,8 @@ +{ + "forge_marker":1, + "textures": { + "particle": "blocks/planks_oak", + "texture": "blocks/planks_oak" + }, + "parent": "forgecraft:item/crank_wheel" +} \ No newline at end of file diff --git a/kfc/src/main/resources/assets/forgecraft/models/item/woodpiston.json b/kfc/src/main/resources/assets/forgecraft/models/item/woodpiston.json new file mode 100644 index 00000000..90533aed --- /dev/null +++ b/kfc/src/main/resources/assets/forgecraft/models/item/woodpiston.json @@ -0,0 +1,9 @@ +{ + "forge_marker":1, + "textures": { + "particle": "blocks/planks_oak", + "texture": "blocks/planks_oak", + "texture1": "blocks/stone" + }, + "parent": "forgecraft:item/piston_engine_base" +} \ No newline at end of file diff --git a/kfc/src/main/resources/assets/forgecraft/models/item/woodpistonarm.json b/kfc/src/main/resources/assets/forgecraft/models/item/woodpistonarm.json new file mode 100644 index 00000000..d9058b82 --- /dev/null +++ b/kfc/src/main/resources/assets/forgecraft/models/item/woodpistonarm.json @@ -0,0 +1,8 @@ +{ + "forge_marker":1, + "textures": { + "particle": "blocks/planks_oak", + "texture": "blocks/planks_oak" + }, + "parent": "forgecraft:item/piston_arm" +} \ No newline at end of file