diff --git a/1.11/src/main/java/nmd/primal/forgecraft/blocks/Bloomery.java b/1.11/src/main/java/nmd/primal/forgecraft/blocks/Bloomery.java index 8fda83f8..aa7ecfb1 100644 --- a/1.11/src/main/java/nmd/primal/forgecraft/blocks/Bloomery.java +++ b/1.11/src/main/java/nmd/primal/forgecraft/blocks/Bloomery.java @@ -137,12 +137,12 @@ public class Bloomery extends CustomContainerFacing implements ITileEntityProvid } } - if(!pItem.isEmpty()) { + /*if(!pItem.isEmpty()) { if(pItem.getItem() == Item.getItemFromBlock(Blocks.STONE_SLAB)){ world.setBlockState(pos, state.withProperty(COVERED, true), 2); return true; } - } + }*/ } } return false; diff --git a/1.11/src/main/java/nmd/primal/forgecraft/blocks/EmptyCrucible.java b/1.11/src/main/java/nmd/primal/forgecraft/blocks/EmptyCrucible.java index ae6522a8..1a59cd33 100644 --- a/1.11/src/main/java/nmd/primal/forgecraft/blocks/EmptyCrucible.java +++ b/1.11/src/main/java/nmd/primal/forgecraft/blocks/EmptyCrucible.java @@ -1,6 +1,7 @@ package nmd.primal.forgecraft.blocks; import net.minecraft.block.Block; +import net.minecraft.block.ITileEntityProvider; import net.minecraft.block.material.Material; import net.minecraft.block.properties.IProperty; import net.minecraft.block.properties.PropertyDirection; @@ -9,7 +10,9 @@ import net.minecraft.block.state.BlockStateContainer; import net.minecraft.block.state.IBlockState; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.Item; import net.minecraft.item.ItemStack; +import net.minecraft.tileentity.TileEntity; import net.minecraft.util.EnumBlockRenderType; import net.minecraft.util.EnumFacing; import net.minecraft.util.EnumHand; @@ -21,6 +24,8 @@ import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; import nmd.primal.forgecraft.CommonUtils; import nmd.primal.forgecraft.ModInfo; +import nmd.primal.forgecraft.init.ModBlocks; +import nmd.primal.forgecraft.tiles.TileBaseCrucible; import nmd.primal.forgecraft.tiles.TileFirebox; /** @@ -45,87 +50,28 @@ public class EmptyCrucible extends Block { @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) { - System.out.println(state.getValue(SIZE)); - //TileFirebox tile = (TileFirebox) world.getTileEntity(pos); - //if (tile != null) { - ItemStack pItem = player.inventory.getCurrentItem(); - if(pItem.isEmpty()) { - if (player.isSneaking()) { - CommonUtils.spawnItemEntity(world, player, new ItemStack(this, 1, this.getMetaFromState(state))); - } - } - if(state.getValue(SIZE) == 3){ - world.setBlockState(pos, state.withProperty(SIZE, 0), 2); + if (!world.isRemote) { + ItemStack pItem = player.inventory.getCurrentItem(); + if(pItem.isEmpty()){ + CommonUtils.spawnItemEntity(world, player, new ItemStack(this, 1)); + world.setBlockToAir(pos); return true; - } else - world.setBlockState(pos, state.withProperty(SIZE, state.getValue(SIZE) + 1), 2); - return true; + } + if(Block.getBlockFromItem(pItem.getItem()) == this){ + CommonUtils.spawnItemEntity(world, player, new ItemStack(this, 1)); + world.setBlockToAir(pos); + return true; + } } - if(player.isSneaking()){ - }*/ return false; } - // ***************************************************************************** // - // BlockState - // ***************************************************************************** // /*@Override - public void onBlockPlacedBy(World worldIn, BlockPos pos, IBlockState state, EntityLivingBase placer, ItemStack stack) + public TileEntity createNewTileEntity(World worldIn, int meta) { - worldIn.setBlockState(pos, state.withProperty(SIZE, 0), 2); - } - - @Override - public IBlockState getStateForPlacement(World worldIn, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer) - { - return this.getStateFromMeta(meta).withProperty(SIZE, 0); - } - - @Override - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {SIZE}); - } - - @Override - public IBlockState getStateFromMeta(int meta) - { - IBlockState iblockstate = this.getDefaultState(); - - if (meta == 0){ - iblockstate = iblockstate.withProperty(SIZE, 0); - } else if (meta == 1){ - iblockstate = iblockstate.withProperty(SIZE, 1); - } else if (meta == 2){ - iblockstate = iblockstate.withProperty(SIZE, 2); - } else if (meta == 3){ - iblockstate = iblockstate.withProperty(SIZE, 3); - } - - return iblockstate; - } - - @Override - public int getMetaFromState(IBlockState state) - { - int i = 0; - //switch state.getValue(LOG_AXIS); - if(state.getValue(SIZE) == 0) { - i = 0; - return i; - } else if(state.getValue(SIZE) == 1){ - i = 1; - return i; - } else if(state.getValue(SIZE) == 2){ - i = 2; - return i; - }else if(state.getValue(SIZE) == 3){ - i = 3; - return i; - } - return i; + return new TileBaseCrucible(); }*/ @Override diff --git a/1.11/src/main/java/nmd/primal/forgecraft/blocks/EmptyCrucibleHot.java b/1.11/src/main/java/nmd/primal/forgecraft/blocks/EmptyCrucibleHot.java new file mode 100644 index 00000000..c771d922 --- /dev/null +++ b/1.11/src/main/java/nmd/primal/forgecraft/blocks/EmptyCrucibleHot.java @@ -0,0 +1,91 @@ +package nmd.primal.forgecraft.blocks; + +import net.minecraft.block.Block; +import net.minecraft.block.ITileEntityProvider; +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.EnumBlockRenderType; +import net.minecraft.util.EnumFacing; +import net.minecraft.util.EnumHand; +import net.minecraft.util.math.AxisAlignedBB; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IBlockAccess; +import net.minecraft.world.World; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; +import nmd.primal.forgecraft.ModInfo; +import nmd.primal.forgecraft.tiles.TileBaseCrucible; + +/** + * Created by mminaie on 2/4/17. + */ +public class EmptyCrucibleHot extends Block implements ITileEntityProvider { + + protected static final AxisAlignedBB boundBox = new AxisAlignedBB(4/16D, 0.0D, 4/16D, 12/16D, 7/16D, 12/16D); + + //public static final PropertyInteger SIZE = PropertyInteger.create("size", 0, 3); + + public EmptyCrucibleHot(Material material, String registryName) { + super(material); + setUnlocalizedName(ModInfo.ForgecraftBlocks.EMPTYCRUCIBLE.getUnlocalizedName()); + //setUnlocalizedName("emptycrucible"); + setRegistryName(registryName); + //setRegistryName(ModInfo.ForgecraftBlocks.FIREBOX.getRegistryName()); + setCreativeTab(ModInfo.TAB_FORGECRAFT); + setHardness(3.0f); + //this.blockState.getBaseState().withProperty(SIZE, Integer.valueOf(0)); + } + + @Override + public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) { + + return false; + } + + @Override + public TileEntity createNewTileEntity(World worldIn, int meta) + { + return new TileBaseCrucible(); + } + + @Override + public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess source, BlockPos pos) + { + return boundBox; + } + + @Override + public boolean isFullCube(IBlockState state) + { + return false; + } + + @Override + public boolean isFullyOpaque(IBlockState state) + { + return false; + } + + @Override + public boolean isOpaqueCube(IBlockState state) + { + return false; + } + + @Override + @SideOnly(Side.CLIENT) + public boolean shouldSideBeRendered(IBlockState blockState, IBlockAccess blockAccess, BlockPos pos, EnumFacing side) + { + return true; + } + + @Override + public EnumBlockRenderType getRenderType(IBlockState state) + { + return EnumBlockRenderType.MODEL; + } + + +} diff --git a/1.11/src/main/java/nmd/primal/forgecraft/crafting/BloomeryCrafting.java b/1.11/src/main/java/nmd/primal/forgecraft/crafting/BloomeryCrafting.java index 5ce0195b..af95781c 100644 --- a/1.11/src/main/java/nmd/primal/forgecraft/crafting/BloomeryCrafting.java +++ b/1.11/src/main/java/nmd/primal/forgecraft/crafting/BloomeryCrafting.java @@ -16,20 +16,24 @@ public class BloomeryCrafting { private ItemStack input; private ItemStack output; private ItemStack output_failed; + private ItemStack cool_output; private int heat_threshold; private int ideal_time; + private int cooldown; private float heat_variance; private float time_variance; - public BloomeryCrafting(ItemStack input, ItemStack output, ItemStack output_failed, int heat_threshold, int ideal_time, float heat_variance, float time_variance) + public BloomeryCrafting(ItemStack input, ItemStack output, ItemStack output_failed, ItemStack cool_output, int heat_threshold, int ideal_time, int cooldown,float heat_variance, float time_variance) { this.input = input; this.output = output; this.output_failed = output_failed; + this.cool_output = cool_output; this.heat_threshold = heat_threshold; this.ideal_time = ideal_time; + this.cooldown = cooldown; this.heat_variance = heat_variance; this.time_variance = time_variance; @@ -38,9 +42,9 @@ public class BloomeryCrafting { // ***************************************************************************** // // Recipe Methods // ***************************************************************************** // - public static void addRecipe(ItemStack input, ItemStack output, ItemStack failed, int heat_threshold, int ideal_time, float heat_variance, float time_variance) + public static void addRecipe(ItemStack input, ItemStack output, ItemStack failed, ItemStack cool, int heat_threshold, int ideal_time, int cooldown, float heat_variance, float time_variance) { - bloomeryRecipes.add(new BloomeryCrafting(input, output, failed, heat_threshold, ideal_time, heat_variance, time_variance)); + bloomeryRecipes.add(new BloomeryCrafting(input, output, failed, cool, heat_threshold, ideal_time, cooldown, heat_variance, time_variance)); } public static boolean isRecipeItem(ItemStack stack) @@ -61,6 +65,15 @@ public class BloomeryCrafting { return false; } + public static boolean isCoolItem(ItemStack stack) + { + for(BloomeryCrafting recipe : bloomeryRecipes) { + if (stack.isItemEqual(recipe.cool_output)) + return true; + } + return false; + } + public static BloomeryCrafting getRecipe(ItemStack stack) { for(BloomeryCrafting recipe : bloomeryRecipes) { @@ -70,6 +83,15 @@ public class BloomeryCrafting { return null; } + public static BloomeryCrafting getRecipeFromOutput(ItemStack stack) + { + for(BloomeryCrafting recipe : bloomeryRecipes) { + if (stack.isItemEqual(recipe.output)) + return recipe; + } + return null; + } + public ItemStack getInput() { return this.input; @@ -85,6 +107,11 @@ public class BloomeryCrafting { return this.output_failed; } + public ItemStack getCoolOutput() + { + return this.cool_output; + } + public int getHeatThreshold() { return this.heat_threshold; @@ -95,6 +122,8 @@ public class BloomeryCrafting { return this.ideal_time; } + public int getCooldown(){ return this.cooldown;} + public float getHeatVariance(){return this.heat_variance; } public float getTimeVariance(){return this.time_variance; } diff --git a/1.11/src/main/java/nmd/primal/forgecraft/init/ModBlocks.java b/1.11/src/main/java/nmd/primal/forgecraft/init/ModBlocks.java index de74053b..8a7be4d8 100644 --- a/1.11/src/main/java/nmd/primal/forgecraft/init/ModBlocks.java +++ b/1.11/src/main/java/nmd/primal/forgecraft/init/ModBlocks.java @@ -7,10 +7,7 @@ import net.minecraft.client.renderer.block.model.ModelResourceLocation; import net.minecraft.item.Item; import net.minecraft.item.ItemBlock; import net.minecraftforge.fml.common.registry.GameRegistry; -import nmd.primal.forgecraft.blocks.Bloomery; -import nmd.primal.forgecraft.blocks.EmptyCrucible; -import nmd.primal.forgecraft.blocks.Firebox; -import nmd.primal.forgecraft.blocks.PistonBellows; +import nmd.primal.forgecraft.blocks.*; /** * Created by kitsu on 11/26/2016. @@ -42,9 +39,9 @@ public class ModBlocks { pistonbellowsacacia = new PistonBellows(Material.WOOD, "pistonbellowsacacia"); bloomery = new Bloomery(Material.ROCK, "bloomery"); emptycrucible = new EmptyCrucible(Material.ROCK, "emptycrucible"); - emptycruciblehot = new EmptyCrucible(Material.ROCK, "emptycruciblehot"); + emptycruciblehot = new EmptyCrucibleHot(Material.ROCK, "emptycruciblehot"); emptycruciblecracked = new EmptyCrucible(Material.ROCK, "emptycruciblecracked"); - emptycruciblecrackedhot = new EmptyCrucible(Material.ROCK, "emptycruciblecrackedhot"); + emptycruciblecrackedhot = new EmptyCrucibleHot(Material.ROCK, "emptycruciblecrackedhot"); } public static void register() { diff --git a/1.11/src/main/java/nmd/primal/forgecraft/init/ModCrafting.java b/1.11/src/main/java/nmd/primal/forgecraft/init/ModCrafting.java index 12dacdbd..eaa39535 100644 --- a/1.11/src/main/java/nmd/primal/forgecraft/init/ModCrafting.java +++ b/1.11/src/main/java/nmd/primal/forgecraft/init/ModCrafting.java @@ -39,18 +39,22 @@ public class ModCrafting { BloomeryCrafting.addRecipe( new ItemStack(ModItems.softcrucible, 1), new ItemStack(ModBlocks.emptycruciblehot, 1), + new ItemStack(ModBlocks.emptycruciblecrackedhot, 1), new ItemStack(ModBlocks.emptycrucible, 1), - 500, - 1200, + 2100, + 1600, + 600, 0.25f, 0.25f); BloomeryCrafting.addRecipe( - new ItemStack(ModBlocks.emptycrucible, 1), - new ItemStack(Items.STICK, 1, 3), - new ItemStack(Items.STICK, 1, 3), + new ItemStack(ModBlocks.emptycruciblehot, 1), + new ItemStack(ModBlocks.emptycruciblecrackedhot, 1), + new ItemStack(ModBlocks.emptycruciblecrackedhot, 1), + new ItemStack(ModBlocks.emptycruciblecracked, 1), 2700, 9000, + 600, 0.0f, 0.0f); } diff --git a/1.11/src/main/java/nmd/primal/forgecraft/init/ModItems.java b/1.11/src/main/java/nmd/primal/forgecraft/init/ModItems.java index 54154e2e..d3e38c7b 100644 --- a/1.11/src/main/java/nmd/primal/forgecraft/init/ModItems.java +++ b/1.11/src/main/java/nmd/primal/forgecraft/init/ModItems.java @@ -52,7 +52,8 @@ public class ModItems { ModelBakery.registerItemVariants(ModItems.stonetongs, ModItems.stonetongs.getRegistryName(), new ResourceLocation(ModInfo.MOD_ID, "stonetongs"), new ResourceLocation(ModInfo.MOD_ID, "stonetongs_default"), - new ResourceLocation(ModInfo.MOD_ID, "stonetongs_emptyhot")); + new ResourceLocation(ModInfo.MOD_ID, "stonetongs_emptyhot"), + new ResourceLocation(ModInfo.MOD_ID, "stonetongs_emptyhotcracked")); ModelLoader.setCustomMeshDefinition(ModItems.stonetongs, new ItemMeshDefinition() { @Override @@ -64,6 +65,9 @@ public class ModItems { else if (stack.getTagCompound().getInteger("type") == 1 ) { return new ModelResourceLocation(stack.getItem().getRegistryName() + "_emptyhot", "inventory"); } + else if (stack.getTagCompound().getInteger("type") == 2 ) { + return new ModelResourceLocation(stack.getItem().getRegistryName() + "_emptyhotcracked", "inventory"); + } else return new ModelResourceLocation(stack.getItem().getRegistryName(), "inventory"); } return new ModelResourceLocation(stack.getItem().getRegistryName(), "inventory"); diff --git a/1.11/src/main/java/nmd/primal/forgecraft/init/ModTiles.java b/1.11/src/main/java/nmd/primal/forgecraft/init/ModTiles.java index 994a145d..23caa6ea 100644 --- a/1.11/src/main/java/nmd/primal/forgecraft/init/ModTiles.java +++ b/1.11/src/main/java/nmd/primal/forgecraft/init/ModTiles.java @@ -2,6 +2,7 @@ package nmd.primal.forgecraft.init; import net.minecraft.tileentity.TileEntity; import net.minecraftforge.fml.common.registry.GameRegistry; +import nmd.primal.forgecraft.tiles.TileBaseCrucible; import nmd.primal.forgecraft.tiles.TileBloomery; import nmd.primal.forgecraft.tiles.TileFirebox; import nmd.primal.forgecraft.tiles.TilePistonBellows; @@ -15,6 +16,7 @@ public class ModTiles { registerTileEntity(TileFirebox.class, "firebox"); registerTileEntity(TilePistonBellows.class, "pistonbellows"); registerTileEntity(TileBloomery.class, "bloomery"); + registerTileEntity(TileBaseCrucible.class, "basecrucible"); } private static void registerTileEntity(Class tile_class, String baseName) { diff --git a/1.11/src/main/java/nmd/primal/forgecraft/items/ItemStoneTongs.java b/1.11/src/main/java/nmd/primal/forgecraft/items/ItemStoneTongs.java index b7452fd7..5d63672b 100644 --- a/1.11/src/main/java/nmd/primal/forgecraft/items/ItemStoneTongs.java +++ b/1.11/src/main/java/nmd/primal/forgecraft/items/ItemStoneTongs.java @@ -1,5 +1,8 @@ package nmd.primal.forgecraft.items; +import net.minecraft.block.material.Material; +import net.minecraft.block.state.IBlockState; +import net.minecraft.client.Minecraft; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLivingBase; @@ -51,19 +54,51 @@ public class ItemStoneTongs extends Item { public EnumActionResult onItemUse(EntityPlayer player, World world, BlockPos pos, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) { - //pos = pos.offset(facing); - ItemStack itemstack = player.getHeldItem(hand); - - if (world.getBlockState(pos).getBlock() == ModBlocks.bloomery) { - TileBloomery tile = (TileBloomery) world.getTileEntity(pos); - System.out.println(tile.getSlotStack(1)); - //itemstack.damageItem(1, player); - if(tile.getSlotStack(1).getItem().equals(Item.getItemFromBlock(ModBlocks.emptycruciblehot))){ - itemstack.getTagCompound().setInteger("type", 1); - tile.setSlotStack(1, ItemStack.EMPTY); - return EnumActionResult.SUCCESS; + if(!world.isRemote) { + ItemStack itemstack = player.getHeldItem(hand); + if (world.getBlockState(pos).getBlock() != ModBlocks.bloomery) { + if (world.getBlockState(pos).getMaterial() == Material.ROCK || world.getBlockState(pos).getMaterial() == Material.ROCK) { + BlockPos tempPos = new BlockPos(pos.getX(), pos.getY() + 1, pos.getZ()); + if (world.getBlockState(tempPos).getBlock() == Blocks.AIR) { + switch (itemstack.getTagCompound().getInteger("type")) { + case 0: + break; + case 1: + world.setBlockState(tempPos, ModBlocks.emptycruciblehot.getDefaultState(), 3); + itemstack.getTagCompound().setInteger("type", 0); + return EnumActionResult.SUCCESS; + case 2: + world.setBlockState(tempPos, ModBlocks.emptycruciblecrackedhot.getDefaultState(), 3); + itemstack.getTagCompound().setInteger("type", 0); + return EnumActionResult.SUCCESS; + case 3: + return EnumActionResult.FAIL; + case 4: + return EnumActionResult.FAIL; + case 5: + return EnumActionResult.FAIL; + case 6: + return EnumActionResult.FAIL; + case 7: + return EnumActionResult.FAIL; + } + } + } + } + if (world.getBlockState(pos).getBlock() == ModBlocks.bloomery) { + TileBloomery tile = (TileBloomery) world.getTileEntity(pos); + if (tile.getSlotStack(1).getItem().equals(Item.getItemFromBlock(ModBlocks.emptycruciblehot))) { + itemstack.getTagCompound().setInteger("type", 1); + tile.setSlotStack(1, ItemStack.EMPTY); + return EnumActionResult.SUCCESS; + } else if (tile.getSlotStack(1).getItem().equals(Item.getItemFromBlock(ModBlocks.emptycruciblecrackedhot))) { + itemstack.getTagCompound().setInteger("type", 2); + tile.setSlotStack(1, ItemStack.EMPTY); + return EnumActionResult.SUCCESS; + } else return EnumActionResult.FAIL; } else return EnumActionResult.FAIL; - } else return EnumActionResult.FAIL; + } + return EnumActionResult.FAIL; } } diff --git a/1.11/src/main/java/nmd/primal/forgecraft/tiles/TileBaseCrucible.java b/1.11/src/main/java/nmd/primal/forgecraft/tiles/TileBaseCrucible.java new file mode 100644 index 00000000..4d2a8580 --- /dev/null +++ b/1.11/src/main/java/nmd/primal/forgecraft/tiles/TileBaseCrucible.java @@ -0,0 +1,40 @@ +package nmd.primal.forgecraft.tiles; + +import net.minecraft.block.Block; +import net.minecraft.block.state.IBlockState; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.ITickable; +import net.minecraft.world.World; +import nmd.primal.forgecraft.crafting.BloomeryCrafting; + +/** + * Created by mminaie on 2/4/17. + */ +public class TileBaseCrucible extends BaseTile implements ITickable { + + private int iteration = 0; + public int countdown = 0; + + @Override + public void update () { + if (!world.isRemote) { + World world = this.getWorld(); + IBlockState state = world.getBlockState(this.pos); + iteration++; + System.out.println(iteration); + if(iteration == 100 ){ + iteration = 0; + countdown += 100; + System.out.println(countdown); + BloomeryCrafting recipe = BloomeryCrafting.getRecipeFromOutput(new ItemStack(state.getBlock(), 1)); + if(recipe != null){ + if (countdown > recipe.getCooldown()){ + world.setBlockState(this.pos, Block.getBlockFromItem(recipe.getCoolOutput().getItem()).getDefaultState(), 3); + countdown = 0; + } + } + } + } + } +} diff --git a/1.11/src/main/resources/assets/forgecraft/models/item/stonetongs_default.json b/1.11/src/main/resources/assets/forgecraft/models/item/stonetongs_default.json index 2e4eddf1..06d6aabf 100644 --- a/1.11/src/main/resources/assets/forgecraft/models/item/stonetongs_default.json +++ b/1.11/src/main/resources/assets/forgecraft/models/item/stonetongs_default.json @@ -89,7 +89,8 @@ ], "display": { "thirdperson_righthand": { - "translation": [ 0, 5.5, -7 ] + "rotation": [60, 0, 0], + "translation": [ 0, 8.9, 3.7 ] }, "firstperson_righthand": { "translation": [ 0, 5.5, -7 ] diff --git a/1.11/src/main/resources/assets/forgecraft/models/item/stonetongs_emptyhot.json b/1.11/src/main/resources/assets/forgecraft/models/item/stonetongs_emptyhot.json index 30292aef..504e4ef2 100644 --- a/1.11/src/main/resources/assets/forgecraft/models/item/stonetongs_emptyhot.json +++ b/1.11/src/main/resources/assets/forgecraft/models/item/stonetongs_emptyhot.json @@ -11,6 +11,7 @@ "__comment": "Cube1", "from": [ 4, 0, 0 ], "to": [ 5, 1, 3 ], + "shade": false, "faces": { "down": { "uv": [ 4, 12, 5, 15 ], "texture": "#texture1" }, "up": { "uv": [ 4, 1, 5, 4 ], "texture": "#texture1" }, @@ -24,6 +25,7 @@ "__comment": "Cube2", "from": [ 11, 0, 0 ], "to": [ 12, 1, 3 ], + "shade": false, "faces": { "down": { "uv": [ 4, 12, 5, 15 ], "texture": "#texture1" }, "up": { "uv": [ 4, 1, 5, 4 ], "texture": "#texture1" }, @@ -38,6 +40,7 @@ "from": [ 4, 0, 3 ], "to": [ 5, 1, 10 ], "rotation": { "origin": [ 4, 0, 3 ], "axis": "y", "angle": 45 }, + "shade": false, "faces": { "down": { "uv": [ 4, 2, 5, 9 ], "texture": "#texture" }, "up": { "uv": [ 4, 3, 5, 10 ], "texture": "#texture" }, @@ -52,6 +55,7 @@ "from": [ 11, 0, 3 ], "to": [ 12, 1, 10 ], "rotation": { "origin": [ 12, 1, 3 ], "axis": "y", "angle": -45 }, + "shade": false, "faces": { "down": { "uv": [ 4, 2, 5, 9 ], "texture": "#texture" }, "up": { "uv": [ 4, 3, 5, 10 ], "texture": "#texture" }, @@ -65,6 +69,7 @@ "__comment": "Cube5", "from": [ 6.5, 0, 7.5 ], "to": [ 7.5, 1, 16 ], + "shade": false, "faces": { "down": { "uv": [ 6.5, 0, 7.5, 8.5 ], "texture": "#texture" }, "up": { "uv": [ 6.5, 7.5, 7.5, 16 ], "texture": "#texture" }, @@ -78,6 +83,7 @@ "__comment": "Cube6", "from": [ 8.5, 0, 7.5 ], "to": [ 9.5, 1, 16 ], + "shade": false, "faces": { "down": { "uv": [ 8.5, 0, 9.5, 8.5 ], "texture": "#texture" }, "up": { "uv": [ 8.5, 7.5, 9.5, 16 ], "texture": "#texture" }, @@ -91,32 +97,21 @@ "__comment": "Cube1", "from": [ 5, -4, -3 ], "to": [ 11, -3, 3 ], + "shade": false, "faces": { "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#texture2" }, "up": { "uv": [ 5, 5, 11, 11 ], "texture": "#texture2" }, - "north": { "uv": [ 5, 15, 11, 16 ], "texture": "#texture2" }, - "south": { "uv": [ 5, 15, 11, 16 ], "texture": "#texture2" }, - "west": { "uv": [ 5, 15, 11, 16 ], "texture": "#texture2" }, - "east": { "uv": [ 5, 15, 11, 16 ], "texture": "#texture2" } - } - }, - { - "__comment": "Cube11", - "from": [ 5, -3, -3 ], - "to": [ 11, 3, -2 ], - "faces": { - "down": { "uv": [ 5, 10, 11, 11 ], "texture": "#texture2" }, - "up": { "uv": [ 5, 5, 11, 6 ], "texture": "#texture2" }, - "north": { "uv": [ 5, 9, 11, 15 ], "texture": "#texture2" }, - "south": { "uv": [ 5, 9, 11, 15 ], "texture": "#texture2" }, - "west": { "uv": [ 5, 9, 6, 15 ], "texture": "#texture2" }, - "east": { "uv": [ 10, 9, 11, 15 ], "texture": "#texture2" } + "north": { "uv": [ 5, 13, 11, 14 ], "texture": "#texture2" }, + "south": { "uv": [ 7, 14, 13, 15 ], "texture": "#texture2" }, + "west": { "uv": [ 6, 9, 12, 10 ], "texture": "#texture2" }, + "east": { "uv": [ 6, 9, 12, 10 ], "texture": "#texture2" } } }, { "__comment": "Cube11", "from": [ 5, -3, 2 ], "to": [ 11, 3, 3 ], + "shade": false, "faces": { "down": { "uv": [ 5, 10, 11, 11 ], "texture": "#texture2" }, "up": { "uv": [ 5, 5, 11, 6 ], "texture": "#texture2" }, @@ -130,6 +125,7 @@ "__comment": "Cube13", "from": [ 5, -3, -2 ], "to": [ 6, 3, 2 ], + "shade": false, "faces": { "down": { "uv": [ 5, 6, 6, 10 ], "texture": "#texture2" }, "up": { "uv": [ 5, 6, 6, 10 ], "texture": "#texture2" }, @@ -143,6 +139,7 @@ "__comment": "Cube13", "from": [ 10, -3, -2 ], "to": [ 11, 3, 2 ], + "shade": false, "faces": { "down": { "uv": [ 5, 6, 6, 10 ], "texture": "#texture2" }, "up": { "uv": [ 5, 6, 6, 10 ], "texture": "#texture2" }, @@ -156,6 +153,7 @@ "__comment": "Cube15", "from": [ 4, 1, -2 ], "to": [ 5, 2, 2 ], + "shade": false, "faces": { "down": { "uv": [ 4, 6, 5, 10 ], "texture": "#texture2" }, "up": { "uv": [ 4, 6, 5, 10 ], "texture": "#texture2" }, @@ -169,6 +167,7 @@ "__comment": "Cube15", "from": [ 11, 1, -2 ], "to": [ 12, 2, 2 ], + "shade": false, "faces": { "down": { "uv": [ 4, 6, 5, 10 ], "texture": "#texture2" }, "up": { "uv": [ 4, 6, 5, 10 ], "texture": "#texture2" }, @@ -182,6 +181,7 @@ "__comment": "Cube17", "from": [ 6, 1, -4 ], "to": [ 10, 2, -3 ], + "shade": false, "faces": { "down": { "uv": [ 6, 11, 10, 12 ], "texture": "#texture2" }, "up": { "uv": [ 6, 4, 10, 5 ], "texture": "#texture2" }, @@ -195,6 +195,7 @@ "__comment": "Cube18", "from": [ 6, 1, 3 ], "to": [ 10, 2, 4 ], + "shade": false, "faces": { "down": { "uv": [ 6, 4, 10, 5 ], "texture": "#texture2" }, "up": { "uv": [ 6, 11, 10, 12 ], "texture": "#texture2" }, @@ -203,6 +204,20 @@ "west": { "uv": [ 11, 10, 12, 11 ], "texture": "#texture2" }, "east": { "uv": [ 4, 10, 5, 11 ], "texture": "#texture2" } } + }, + { + "__comment": "Cube11", + "from": [ 5, -3, -3 ], + "to": [ 11, 3, -2 ], + "shade": false, + "faces": { + "down": { "uv": [ 5, 10, 11, 11 ], "texture": "#texture2" }, + "up": { "uv": [ 5, 5, 11, 6 ], "texture": "#texture2" }, + "north": { "uv": [ 5, 7, 11, 13 ], "texture": "#texture2" }, + "south": { "uv": [ 5, 9, 11, 15 ], "texture": "#texture2" }, + "west": { "uv": [ 5, 9, 6, 15 ], "texture": "#texture2" }, + "east": { "uv": [ 10, 9, 11, 15 ], "texture": "#texture2" } + } } ], "display": { diff --git a/1.11/src/main/resources/assets/forgecraft/models/item/stonetongs_emptyhot2.json b/1.11/src/main/resources/assets/forgecraft/models/item/stonetongs_emptyhot2.json new file mode 100644 index 00000000..504e4ef2 --- /dev/null +++ b/1.11/src/main/resources/assets/forgecraft/models/item/stonetongs_emptyhot2.json @@ -0,0 +1,243 @@ +{ + "__comment": "Designed by Kitsushadow with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "forgecraft:blocks/stone_slab", + "texture": "forgecraft:blocks/stone_slab", + "texture1": "forgecraft:blocks/stone_slab", + "texture2": "forgecraft:blocks/stone_slab_hot" + }, + "elements": [ + { + "__comment": "Cube1", + "from": [ 4, 0, 0 ], + "to": [ 5, 1, 3 ], + "shade": false, + "faces": { + "down": { "uv": [ 4, 12, 5, 15 ], "texture": "#texture1" }, + "up": { "uv": [ 4, 1, 5, 4 ], "texture": "#texture1" }, + "north": { "uv": [ 11, 13, 12, 14 ], "texture": "#texture1" }, + "south": { "uv": [ 4, 13, 5, 14 ], "texture": "#texture1" }, + "west": { "uv": [ 1, 14, 4, 15 ], "texture": "#texture1" }, + "east": { "uv": [ 12, 14, 15, 15 ], "texture": "#texture1" } + } + }, + { + "__comment": "Cube2", + "from": [ 11, 0, 0 ], + "to": [ 12, 1, 3 ], + "shade": false, + "faces": { + "down": { "uv": [ 4, 12, 5, 15 ], "texture": "#texture1" }, + "up": { "uv": [ 4, 1, 5, 4 ], "texture": "#texture1" }, + "north": { "uv": [ 11, 13, 12, 14 ], "texture": "#texture1" }, + "south": { "uv": [ 4, 13, 5, 14 ], "texture": "#texture1" }, + "west": { "uv": [ 1, 14, 4, 15 ], "texture": "#texture1" }, + "east": { "uv": [ 12, 14, 15, 15 ], "texture": "#texture1" } + } + }, + { + "__comment": "Cube3", + "from": [ 4, 0, 3 ], + "to": [ 5, 1, 10 ], + "rotation": { "origin": [ 4, 0, 3 ], "axis": "y", "angle": 45 }, + "shade": false, + "faces": { + "down": { "uv": [ 4, 2, 5, 9 ], "texture": "#texture" }, + "up": { "uv": [ 4, 3, 5, 10 ], "texture": "#texture" }, + "north": { "uv": [ 11, 15, 12, 16 ], "texture": "#texture" }, + "south": { "uv": [ 4, 15, 5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 15, 10, 16 ], "texture": "#texture" }, + "east": { "uv": [ 7, 15, 14, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Cube4", + "from": [ 11, 0, 3 ], + "to": [ 12, 1, 10 ], + "rotation": { "origin": [ 12, 1, 3 ], "axis": "y", "angle": -45 }, + "shade": false, + "faces": { + "down": { "uv": [ 4, 2, 5, 9 ], "texture": "#texture" }, + "up": { "uv": [ 4, 3, 5, 10 ], "texture": "#texture" }, + "north": { "uv": [ 11, 15, 12, 16 ], "texture": "#texture" }, + "south": { "uv": [ 4, 15, 5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 3, 15, 10, 16 ], "texture": "#texture" }, + "east": { "uv": [ 7, 15, 14, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Cube5", + "from": [ 6.5, 0, 7.5 ], + "to": [ 7.5, 1, 16 ], + "shade": false, + "faces": { + "down": { "uv": [ 6.5, 0, 7.5, 8.5 ], "texture": "#texture" }, + "up": { "uv": [ 6.5, 7.5, 7.5, 16 ], "texture": "#texture" }, + "north": { "uv": [ 8.5, 15, 9.5, 16 ], "texture": "#texture" }, + "south": { "uv": [ 6.5, 15, 7.5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 7.5, 15, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 15, 8.5, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Cube6", + "from": [ 8.5, 0, 7.5 ], + "to": [ 9.5, 1, 16 ], + "shade": false, + "faces": { + "down": { "uv": [ 8.5, 0, 9.5, 8.5 ], "texture": "#texture" }, + "up": { "uv": [ 8.5, 7.5, 9.5, 16 ], "texture": "#texture" }, + "north": { "uv": [ 6.5, 15, 7.5, 16 ], "texture": "#texture" }, + "south": { "uv": [ 8.5, 15, 9.5, 16 ], "texture": "#texture" }, + "west": { "uv": [ 7.5, 15, 16, 16 ], "texture": "#texture" }, + "east": { "uv": [ 0, 15, 8.5, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Cube1", + "from": [ 5, -4, -3 ], + "to": [ 11, -3, 3 ], + "shade": false, + "faces": { + "down": { "uv": [ 5, 5, 11, 11 ], "texture": "#texture2" }, + "up": { "uv": [ 5, 5, 11, 11 ], "texture": "#texture2" }, + "north": { "uv": [ 5, 13, 11, 14 ], "texture": "#texture2" }, + "south": { "uv": [ 7, 14, 13, 15 ], "texture": "#texture2" }, + "west": { "uv": [ 6, 9, 12, 10 ], "texture": "#texture2" }, + "east": { "uv": [ 6, 9, 12, 10 ], "texture": "#texture2" } + } + }, + { + "__comment": "Cube11", + "from": [ 5, -3, 2 ], + "to": [ 11, 3, 3 ], + "shade": false, + "faces": { + "down": { "uv": [ 5, 10, 11, 11 ], "texture": "#texture2" }, + "up": { "uv": [ 5, 5, 11, 6 ], "texture": "#texture2" }, + "north": { "uv": [ 5, 9, 11, 15 ], "texture": "#texture2" }, + "south": { "uv": [ 5, 9, 11, 15 ], "texture": "#texture2" }, + "west": { "uv": [ 5, 9, 6, 15 ], "texture": "#texture2" }, + "east": { "uv": [ 10, 9, 11, 15 ], "texture": "#texture2" } + } + }, + { + "__comment": "Cube13", + "from": [ 5, -3, -2 ], + "to": [ 6, 3, 2 ], + "shade": false, + "faces": { + "down": { "uv": [ 5, 6, 6, 10 ], "texture": "#texture2" }, + "up": { "uv": [ 5, 6, 6, 10 ], "texture": "#texture2" }, + "north": { "uv": [ 10, 9, 11, 15 ], "texture": "#texture2" }, + "south": { "uv": [ 5, 9, 6, 15 ], "texture": "#texture2" }, + "west": { "uv": [ 6, 9, 10, 15 ], "texture": "#texture2" }, + "east": { "uv": [ 6, 9, 10, 15 ], "texture": "#texture2" } + } + }, + { + "__comment": "Cube13", + "from": [ 10, -3, -2 ], + "to": [ 11, 3, 2 ], + "shade": false, + "faces": { + "down": { "uv": [ 5, 6, 6, 10 ], "texture": "#texture2" }, + "up": { "uv": [ 5, 6, 6, 10 ], "texture": "#texture2" }, + "north": { "uv": [ 10, 9, 11, 15 ], "texture": "#texture2" }, + "south": { "uv": [ 5, 9, 6, 15 ], "texture": "#texture2" }, + "west": { "uv": [ 6, 9, 10, 15 ], "texture": "#texture2" }, + "east": { "uv": [ 6, 9, 10, 15 ], "texture": "#texture2" } + } + }, + { + "__comment": "Cube15", + "from": [ 4, 1, -2 ], + "to": [ 5, 2, 2 ], + "shade": false, + "faces": { + "down": { "uv": [ 4, 6, 5, 10 ], "texture": "#texture2" }, + "up": { "uv": [ 4, 6, 5, 10 ], "texture": "#texture2" }, + "north": { "uv": [ 11, 10, 12, 11 ], "texture": "#texture2" }, + "south": { "uv": [ 4, 10, 5, 11 ], "texture": "#texture2" }, + "west": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture2" }, + "east": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture2" } + } + }, + { + "__comment": "Cube15", + "from": [ 11, 1, -2 ], + "to": [ 12, 2, 2 ], + "shade": false, + "faces": { + "down": { "uv": [ 4, 6, 5, 10 ], "texture": "#texture2" }, + "up": { "uv": [ 4, 6, 5, 10 ], "texture": "#texture2" }, + "north": { "uv": [ 11, 10, 12, 11 ], "texture": "#texture2" }, + "south": { "uv": [ 4, 10, 5, 11 ], "texture": "#texture2" }, + "west": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture2" }, + "east": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture2" } + } + }, + { + "__comment": "Cube17", + "from": [ 6, 1, -4 ], + "to": [ 10, 2, -3 ], + "shade": false, + "faces": { + "down": { "uv": [ 6, 11, 10, 12 ], "texture": "#texture2" }, + "up": { "uv": [ 6, 4, 10, 5 ], "texture": "#texture2" }, + "north": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture2" }, + "south": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture2" }, + "west": { "uv": [ 4, 10, 5, 11 ], "texture": "#texture2" }, + "east": { "uv": [ 11, 10, 12, 11 ], "texture": "#texture2" } + } + }, + { + "__comment": "Cube18", + "from": [ 6, 1, 3 ], + "to": [ 10, 2, 4 ], + "shade": false, + "faces": { + "down": { "uv": [ 6, 4, 10, 5 ], "texture": "#texture2" }, + "up": { "uv": [ 6, 11, 10, 12 ], "texture": "#texture2" }, + "north": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture2" }, + "south": { "uv": [ 6, 10, 10, 11 ], "texture": "#texture2" }, + "west": { "uv": [ 11, 10, 12, 11 ], "texture": "#texture2" }, + "east": { "uv": [ 4, 10, 5, 11 ], "texture": "#texture2" } + } + }, + { + "__comment": "Cube11", + "from": [ 5, -3, -3 ], + "to": [ 11, 3, -2 ], + "shade": false, + "faces": { + "down": { "uv": [ 5, 10, 11, 11 ], "texture": "#texture2" }, + "up": { "uv": [ 5, 5, 11, 6 ], "texture": "#texture2" }, + "north": { "uv": [ 5, 7, 11, 13 ], "texture": "#texture2" }, + "south": { "uv": [ 5, 9, 11, 15 ], "texture": "#texture2" }, + "west": { "uv": [ 5, 9, 6, 15 ], "texture": "#texture2" }, + "east": { "uv": [ 10, 9, 11, 15 ], "texture": "#texture2" } + } + } + ], + "display": { + "thirdperson_righthand": { + "rotation": [60, 0, 0], + "translation": [ 0, 8.9, 3.7 ] + }, + "firstperson_righthand": { + "translation": [ 0, 5.5, -7 ] + }, + "gui": { + "rotation": [ 90, 0, 0 ], + "scale": [ 0.95, 0.95, 0.95 ] + }, + "ground": { + "translation": [ 0, 4, 0 ] + }, + "fixed": { + "rotation": [ 90, 0, 0 ], + "translation": [ 0, 0, 8 ] + } + } +} \ No newline at end of file diff --git a/1.11/src/main/resources/assets/forgecraft/models/item/stonetongs_emptyhotcracked.json b/1.11/src/main/resources/assets/forgecraft/models/item/stonetongs_emptyhotcracked.json new file mode 100644 index 00000000..82826832 --- /dev/null +++ b/1.11/src/main/resources/assets/forgecraft/models/item/stonetongs_emptyhotcracked.json @@ -0,0 +1,10 @@ +{ + "forge_marker":1, + "textures": { + "particle": "forgecraft:blocks/stone_slab", + "texture": "forgecraft:blocks/stone_slab", + "texture1": "forgecraft:blocks/stone_slab_cracked", + "texture2": "forgecraft:blocks/stone_slab_cracked_hot" + }, + "parent": "forgecraft:item/stonetongs_emptyhot" +} \ No newline at end of file diff --git a/1.11/src/main/resources/assets/forgecraft/textures/blocks/stone_slab_hot.png b/1.11/src/main/resources/assets/forgecraft/textures/blocks/stone_slab_hot.png index 84616fbd..84289a5b 100644 Binary files a/1.11/src/main/resources/assets/forgecraft/textures/blocks/stone_slab_hot.png and b/1.11/src/main/resources/assets/forgecraft/textures/blocks/stone_slab_hot.png differ