From 7151eef0001fd80739f0477afc3e32a39ac15c26 Mon Sep 17 00:00:00 2001 From: Mohammad-Ali Minaie Date: Thu, 20 Sep 2018 18:36:13 -0400 Subject: [PATCH] fixing the bugs --- kfc/gradle.properties | 2 +- .../java/nmd/primal/forgecraft/ModInfo.java | 2 +- .../forgecraft/blocks/CastingBlock.java | 713 ------------------ .../primal/forgecraft/blocks/CastingForm.java | 22 +- .../blocks/Crucibles/NBTCrucible.java | 10 +- .../nmd/primal/forgecraft/init/ModBlocks.java | 4 - .../primal/forgecraft/init/ModCrafting.java | 339 ++++++--- .../nmd/primal/forgecraft/init/ModItems.java | 36 - .../nmd/primal/forgecraft/init/ModTiles.java | 1 - .../primal/forgecraft/proxy/ClientProxy.java | 1 - .../blocks/TileCastingBlockRender.java | 103 --- .../forgecraft/tiles/TileCastingBlock.java | 14 - .../forgecraft/tiles/TileNBTCrucible.java | 1 - .../forgecraft/models/item/e_particle.png | Bin 0 -> 159 bytes .../forgecraft/models/item/toolAssembly.json | 66 ++ kfc/src/main/resources/mcmod.info | 2 +- 16 files changed, 328 insertions(+), 988 deletions(-) delete mode 100644 kfc/src/main/java/nmd/primal/forgecraft/blocks/CastingBlock.java delete mode 100644 kfc/src/main/java/nmd/primal/forgecraft/renders/blocks/TileCastingBlockRender.java delete mode 100644 kfc/src/main/java/nmd/primal/forgecraft/tiles/TileCastingBlock.java create mode 100644 kfc/src/main/resources/assets/forgecraft/models/item/e_particle.png create mode 100644 kfc/src/main/resources/assets/forgecraft/models/item/toolAssembly.json diff --git a/kfc/gradle.properties b/kfc/gradle.properties index c685ec98..ab8aec41 100644 --- a/kfc/gradle.properties +++ b/kfc/gradle.properties @@ -6,7 +6,7 @@ org.gradle.jvmargs=-Xmx3G mod_group=nmd.primal.forgecraft mod_name=ForgeCraft -mod_version=1.6.02 +mod_version=1.6.03 forge_version=14.23.4.2744 mcp_mappings=snapshot_20171003 mc_version=1.12.2 diff --git a/kfc/src/main/java/nmd/primal/forgecraft/ModInfo.java b/kfc/src/main/java/nmd/primal/forgecraft/ModInfo.java index 2ce4bd0f..7e294fa0 100644 --- a/kfc/src/main/java/nmd/primal/forgecraft/ModInfo.java +++ b/kfc/src/main/java/nmd/primal/forgecraft/ModInfo.java @@ -21,7 +21,7 @@ public class ModInfo { //public static final String MOD_PREFIX = MOD_ID + ":"; public static final String MOD_CHANNEL = MOD_ID; - public static final String MOD_VERSION = "1.6.02"; + public static final String MOD_VERSION = "1.6.03"; public static final String MC_VERSIONS = "[1.12.0, 1.13.0)"; public static final String DEPENDENCIES = "required-after:forge@[14.21.1.2400,);" + "required-after:primal@[0.6.69,);"; diff --git a/kfc/src/main/java/nmd/primal/forgecraft/blocks/CastingBlock.java b/kfc/src/main/java/nmd/primal/forgecraft/blocks/CastingBlock.java deleted file mode 100644 index f564b01a..00000000 --- a/kfc/src/main/java/nmd/primal/forgecraft/blocks/CastingBlock.java +++ /dev/null @@ -1,713 +0,0 @@ -package nmd.primal.forgecraft.blocks; - -import net.minecraft.block.material.Material; -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.item.EntityItem; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.inventory.ItemStackHelper; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.*; -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.core.common.helper.PlayerHelper; -import nmd.primal.forgecraft.ModInfo; -import nmd.primal.forgecraft.crafting.CrucibleCrafting; -import nmd.primal.forgecraft.init.ModBlocks; -import nmd.primal.forgecraft.init.ModItems; -import nmd.primal.forgecraft.items.SlottedTongs; -import nmd.primal.forgecraft.items.casting.CastingPart; -import nmd.primal.forgecraft.tiles.TileCastingBlock; - -import java.util.Random; -import java.util.concurrent.ThreadLocalRandom; - -import static nmd.primal.core.api.PrimalAPI.randomCheck; - -/** - * Created by mminaie on 6/24/17. - */ -public class CastingBlock extends CustomContainerFacing { - - protected static AxisAlignedBB bound = new AxisAlignedBB(0/16D, 0.0D, 0/16D, 16/16D, 5.5/16D, 16/16D); - - public CastingBlock(Material material, String registryName) { - super(material, registryName); - setDefaultState(this.blockState.getBaseState().withProperty(FACING, EnumFacing.NORTH)); - setCreativeTab(ModInfo.TAB_FORGECRAFT); - } - private void makeEmbers(World world, BlockPos pos, Random rand){ - double d0 = (double)pos.getX() + 0.5D; - double d1 = (double)pos.getY() + 0.2D; - double d2 = (double)pos.getZ() + 0.5D; - double d3 = 0.52D; - double d4 = ThreadLocalRandom.current().nextDouble(0.066, 0.33); - double ySpeed = ThreadLocalRandom.current().nextDouble(0.05, 0.20); - - if(rand.nextInt(3) == 0){ - world.spawnParticle(EnumParticleTypes.FLAME, d0+d4, d1, d2+d4, ySpeed, ySpeed, ySpeed, new int[0]); - world.spawnParticle(EnumParticleTypes.FLAME, d0+d4, d1, d2-d4, ySpeed, ySpeed, ySpeed, new int[0]); - } - if(rand.nextInt(3) == 1){ - world.spawnParticle(EnumParticleTypes.FLAME, d0+d4, d1, d2-d4, ySpeed, ySpeed, ySpeed, new int[0]); - world.spawnParticle(EnumParticleTypes.FLAME, d0-d4, d1, d2+d4, ySpeed, ySpeed, ySpeed, new int[0]); - } - if(rand.nextInt(3) == 2){ - world.spawnParticle(EnumParticleTypes.FLAME, d0-d4, d1, d2+d4, ySpeed, ySpeed, ySpeed, new int[0]); - world.spawnParticle(EnumParticleTypes.FLAME, d0-d4, d1, d2-d4, ySpeed, ySpeed, ySpeed, new int[0]); - } - if(rand.nextInt(3) == 3){ - world.spawnParticle(EnumParticleTypes.FLAME, d0-d4, d1, d2-d4, ySpeed, ySpeed, ySpeed, new int[0]); - world.spawnParticle(EnumParticleTypes.FLAME, d0+d4, d1, d2+d4, ySpeed, ySpeed, ySpeed, new int[0]); - } - } - - @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) { - TileCastingBlock tile = (TileCastingBlock) world.getTileEntity(pos); - ItemStack pItem = player.inventory.getCurrentItem(); - - if (player.isSneaking()) { - if (!tile.getSlotStack(0).isEmpty()) { - ItemStack copyStack = tile.getSlotStack(0).copy(); - PlayerHelper.spawnItemOnPlayer(world, player, copyStack); - tile.setSlotStack(0, ItemStack.EMPTY); - tile.updateBlock(); - return true; - } - } - - if (pItem.getItem() instanceof CastingPart) { - if (!player.isSneaking()) { - if (tile.getSlotStack(0).isEmpty()) { - ItemStack copyStack = pItem.copy(); - copyStack.setCount(1); - pItem.shrink(1); - tile.setSlotStack(0, copyStack); - tile.updateBlock(); - return true; - } - } - } - - if (pItem.getItem() == ModItems.slottedtongs) { - //TODO need to fix dropCrucible with default state - ItemStack dropCrucible = new ItemStack(ModBlocks.nbtCrucible); - NonNullList ingList = NonNullList.withSize(5, ItemStack.EMPTY); - SlottedTongs tongs = (SlottedTongs) pItem.getItem(); - ItemStack slotStack = tongs.getSlotList().get(0); - if (!tongs.getSlotList().isEmpty()) { - ingList = tongs.getSlotList(); - NBTTagCompound tag = slotStack.getSubCompound("BlockEntityTag"); - if (tag != null) { - ItemStackHelper.loadAllItems(tag, ingList); - CrucibleCrafting recipe = CrucibleCrafting.getRecipe(ingList.get(0), ingList.get(1), ingList.get(2), ingList.get(3), ingList.get(4)); - if (recipe != null) { - ItemStack outputStack = recipe.getDropsCooked(); - if (outputStack.getItem() == ModItems.bronzeingotball) { - NBTTagCompound recipeTag = outputStack.getTagCompound(); - if (recipeTag != null) { - - /**Vanilla Bronze**/ - if (recipeTag.getString("upgrades") == ("")) { - if (tile.getSlotStack(0).getItem() == ModItems.cast_hoe) { - ItemStack dropStack = new ItemStack(ModItems.bronzehoehead); - - PlayerHelper.spawnItemOnGround(world, pos, dropStack); - PlayerHelper.spawnItemOnGround(world, pos, dropCrucible); - pItem.getTagCompound().setInteger("type", 0); - if (randomCheck(2)) { - tile.setSlotStack(0, ItemStack.EMPTY); - } - //makeEmbers(world, pos, world.rand); - return true; - } - if (tile.getSlotStack(0).getItem() == ModItems.cast_pickaxe) { - ItemStack dropStack = new ItemStack(ModItems.bronzepickaxehead); - PlayerHelper.spawnItemOnGround(world, pos, dropStack); - PlayerHelper.spawnItemOnGround(world, pos, dropCrucible); - pItem.getTagCompound().setInteger("type", 0); - if (randomCheck(2)) { - tile.setSlotStack(0, ItemStack.EMPTY); - } - return true; - } - if (tile.getSlotStack(0).getItem() == ModItems.cast_axe) { - ItemStack dropStack = new ItemStack(ModItems.bronzeaxehead); - PlayerHelper.spawnItemOnGround(world, pos, dropStack); - PlayerHelper.spawnItemOnGround(world, pos, dropCrucible); - pItem.getTagCompound().setInteger("type", 0); - if (randomCheck(2)) { - tile.setSlotStack(0, ItemStack.EMPTY); - } - return true; - } - if (tile.getSlotStack(0).getItem() == ModItems.cast_shovel) { - ItemStack dropStack = new ItemStack(ModItems.bronzeshovelhead); - PlayerHelper.spawnItemOnGround(world, pos, dropStack); - PlayerHelper.spawnItemOnGround(world, pos, dropCrucible); - pItem.getTagCompound().setInteger("type", 0); - if (randomCheck(2)) { - tile.setSlotStack(0, ItemStack.EMPTY); - } - return true; - } - if (tile.getSlotStack(0).getItem() == ModItems.cast_gladius) { - ItemStack dropStack = new ItemStack(ModItems.bronzegladius); - PlayerHelper.spawnItemOnGround(world, pos, dropStack); - PlayerHelper.spawnItemOnGround(world, pos, dropCrucible); - pItem.getTagCompound().setInteger("type", 0); - if (randomCheck(2)) { - tile.setSlotStack(0, ItemStack.EMPTY); - } - return true; - } - } - - /**Emerald Bronze**/ - if (recipeTag.getString("upgrades") == ("emerald")) { - if (tile.getSlotStack(0).getItem() == ModItems.cast_hoe) { - ItemStack dropStack = new ItemStack(ModItems.bronzehoehead); - dropStack.setTagCompound(new NBTTagCompound()); - NBTTagCompound tags = new NBTTagCompound(); - - dropStack.getTagCompound().setTag("tags", tags); - dropStack.getSubCompound("tags").setBoolean("hot", false); - - dropStack.getSubCompound("tags").setBoolean("emerald", true); - dropStack.getSubCompound("tags").setInteger("diamond", 0); - dropStack.getSubCompound("tags").setInteger("redstone", 0); - dropStack.getSubCompound("tags").setInteger("lapis", 0); - - dropStack.getSubCompound("tags").setInteger("modifiers", 1); - PlayerHelper.spawnItemOnGround(world, pos, dropStack); - PlayerHelper.spawnItemOnGround(world, pos, dropCrucible); - pItem.getTagCompound().setInteger("type", 0); - if (randomCheck(2)) { - tile.setSlotStack(0, ItemStack.EMPTY); - } - return true; - } - if (tile.getSlotStack(0).getItem() == ModItems.cast_pickaxe) { - ItemStack dropStack = new ItemStack(ModItems.bronzepickaxehead); - dropStack.setTagCompound(new NBTTagCompound()); - NBTTagCompound tags = new NBTTagCompound(); - - dropStack.getTagCompound().setTag("tags", tags); - dropStack.getSubCompound("tags").setBoolean("hot", false); - - dropStack.getSubCompound("tags").setBoolean("emerald", true); - dropStack.getSubCompound("tags").setInteger("diamond", 0); - dropStack.getSubCompound("tags").setInteger("redstone", 0); - dropStack.getSubCompound("tags").setInteger("lapis", 0); - - dropStack.getSubCompound("tags").setInteger("modifiers", 1); - PlayerHelper.spawnItemOnGround(world, pos, dropStack); - PlayerHelper.spawnItemOnGround(world, pos, dropCrucible); - pItem.getTagCompound().setInteger("type", 0); - if (randomCheck(2)) { - tile.setSlotStack(0, ItemStack.EMPTY); - } - return true; - } - if (tile.getSlotStack(0).getItem() == ModItems.cast_axe) { - ItemStack dropStack = new ItemStack(ModItems.bronzeaxehead); - dropStack.setTagCompound(new NBTTagCompound()); - NBTTagCompound tags = new NBTTagCompound(); - - dropStack.getTagCompound().setTag("tags", tags); - dropStack.getSubCompound("tags").setBoolean("hot", false); - - dropStack.getSubCompound("tags").setBoolean("emerald", true); - dropStack.getSubCompound("tags").setInteger("diamond", 0); - dropStack.getSubCompound("tags").setInteger("redstone", 0); - dropStack.getSubCompound("tags").setInteger("lapis", 0); - - dropStack.getSubCompound("tags").setInteger("modifiers", 1); - PlayerHelper.spawnItemOnGround(world, pos, dropStack); - PlayerHelper.spawnItemOnGround(world, pos, dropCrucible); - pItem.getTagCompound().setInteger("type", 0); - if (randomCheck(2)) { - tile.setSlotStack(0, ItemStack.EMPTY); - } - return true; - } - if (tile.getSlotStack(0).getItem() == ModItems.cast_shovel) { - ItemStack dropStack = new ItemStack(ModItems.bronzeshovelhead); - dropStack.setTagCompound(new NBTTagCompound()); - NBTTagCompound tags = new NBTTagCompound(); - - dropStack.getTagCompound().setTag("tags", tags); - dropStack.getSubCompound("tags").setBoolean("hot", false); - - dropStack.getSubCompound("tags").setBoolean("emerald", true); - dropStack.getSubCompound("tags").setInteger("diamond", 0); - dropStack.getSubCompound("tags").setInteger("redstone", 0); - dropStack.getSubCompound("tags").setInteger("lapis", 0); - - dropStack.getSubCompound("tags").setInteger("modifiers", 1); - PlayerHelper.spawnItemOnGround(world, pos, dropStack); - PlayerHelper.spawnItemOnGround(world, pos, dropCrucible); - pItem.getTagCompound().setInteger("type", 0); - if (randomCheck(2)) { - tile.setSlotStack(0, ItemStack.EMPTY); - } - return true; - } - - if (tile.getSlotStack(0).getItem() == ModItems.cast_gladius) { - ItemStack dropStack = new ItemStack(ModItems.bronzegladius); - PlayerHelper.spawnItemOnGround(world, pos, dropStack); - PlayerHelper.spawnItemOnGround(world, pos, dropCrucible); - pItem.getTagCompound().setInteger("type", 0); - if (randomCheck(2)) { - tile.setSlotStack(0, ItemStack.EMPTY); - } - return true; - } - - /**Diamond Bronze**/ - if (recipeTag.getString("upgrades") == ("diamond")) { - if (tile.getSlotStack(0).getItem() == ModItems.cast_hoe) { - ItemStack dropStack = new ItemStack(ModItems.bronzehoehead); - dropStack.setTagCompound(new NBTTagCompound()); - - NBTTagCompound tags = new NBTTagCompound(); - dropStack.getTagCompound().setTag("tags", tags); - dropStack.getSubCompound("tags").setBoolean("hot", false); - dropStack.getSubCompound("tags").setBoolean("emerald", false); - dropStack.getSubCompound("tags").setInteger("diamond", 1); - dropStack.getSubCompound("tags").setInteger("redstone", 0); - dropStack.getSubCompound("tags").setInteger("lapis", 0); - dropStack.getSubCompound("tags").setInteger("modifiers", 1); - - PlayerHelper.spawnItemOnGround(world, pos, dropStack); - PlayerHelper.spawnItemOnGround(world, pos, dropCrucible); - pItem.getTagCompound().setInteger("type", 0); - if (randomCheck(2)) { - tile.setSlotStack(0, ItemStack.EMPTY); - } - return true; - } - if (tile.getSlotStack(0).getItem() == ModItems.cast_pickaxe) { - ItemStack dropStack = new ItemStack(ModItems.bronzepickaxehead); - dropStack.setTagCompound(new NBTTagCompound()); - - NBTTagCompound tags = new NBTTagCompound(); - dropStack.getTagCompound().setTag("tags", tags); - dropStack.getSubCompound("tags").setBoolean("hot", false); - dropStack.getSubCompound("tags").setBoolean("emerald", false); - dropStack.getSubCompound("tags").setInteger("diamond", 1); - dropStack.getSubCompound("tags").setInteger("redstone", 0); - dropStack.getSubCompound("tags").setInteger("lapis", 0); - dropStack.getSubCompound("tags").setInteger("modifiers", 1); - - PlayerHelper.spawnItemOnGround(world, pos, dropStack); - PlayerHelper.spawnItemOnGround(world, pos, dropCrucible); - pItem.getTagCompound().setInteger("type", 0); - if (randomCheck(2)) { - tile.setSlotStack(0, ItemStack.EMPTY); - } - return true; - } - if (tile.getSlotStack(0).getItem() == ModItems.cast_axe) { - ItemStack dropStack = new ItemStack(ModItems.bronzeaxehead); - dropStack.setTagCompound(new NBTTagCompound()); - - - NBTTagCompound tags = new NBTTagCompound(); - dropStack.getTagCompound().setTag("tags", tags); - dropStack.getSubCompound("tags").setBoolean("hot", false); - dropStack.getSubCompound("tags").setBoolean("emerald", false); - dropStack.getSubCompound("tags").setInteger("diamond", 1); - dropStack.getSubCompound("tags").setInteger("redstone", 0); - dropStack.getSubCompound("tags").setInteger("lapis", 0); - dropStack.getSubCompound("tags").setInteger("modifiers", 1); - - - PlayerHelper.spawnItemOnGround(world, pos, dropStack); - PlayerHelper.spawnItemOnGround(world, pos, dropCrucible); - pItem.getTagCompound().setInteger("type", 0); - if (randomCheck(2)) { - tile.setSlotStack(0, ItemStack.EMPTY); - } - return true; - } - if (tile.getSlotStack(0).getItem() == ModItems.cast_shovel) { - ItemStack dropStack = new ItemStack(ModItems.bronzeshovelhead); - dropStack.setTagCompound(new NBTTagCompound()); - - - NBTTagCompound tags = new NBTTagCompound(); - dropStack.getTagCompound().setTag("tags", tags); - dropStack.getSubCompound("tags").setBoolean("hot", false); - dropStack.getSubCompound("tags").setBoolean("emerald", false); - dropStack.getSubCompound("tags").setInteger("diamond", 1); - dropStack.getSubCompound("tags").setInteger("redstone", 0); - dropStack.getSubCompound("tags").setInteger("lapis", 0); - dropStack.getSubCompound("tags").setInteger("modifiers", 1); - - - PlayerHelper.spawnItemOnGround(world, pos, dropStack); - PlayerHelper.spawnItemOnGround(world, pos, dropCrucible); - pItem.getTagCompound().setInteger("type", 0); - if (randomCheck(2)) { - tile.setSlotStack(0, ItemStack.EMPTY); - } - return true; - } - if (tile.getSlotStack(0).getItem() == ModItems.cast_gladius) { - ItemStack dropStack = new ItemStack(ModItems.bronzegladius); - PlayerHelper.spawnItemOnGround(world, pos, dropStack); - PlayerHelper.spawnItemOnGround(world, pos, dropCrucible); - pItem.getTagCompound().setInteger("type", 0); - if (randomCheck(2)) { - tile.setSlotStack(0, ItemStack.EMPTY); - } - return true; - } - } - - /**Redstone Bronze**/ - if (recipeTag.getString("upgrades") == ("redstone")) { - if (tile.getSlotStack(0).getItem() == ModItems.cast_hoe) { - ItemStack dropStack = new ItemStack(ModItems.bronzehoehead); - dropStack.setTagCompound(new NBTTagCompound()); - - NBTTagCompound tags = new NBTTagCompound(); - dropStack.getTagCompound().setTag("tags", tags); - dropStack.getSubCompound("tags").setBoolean("hot", false); - dropStack.getSubCompound("tags").setBoolean("emerald", false); - dropStack.getSubCompound("tags").setInteger("diamond", 0); - dropStack.getSubCompound("tags").setInteger("redstone", 1); - dropStack.getSubCompound("tags").setInteger("lapis", 0); - dropStack.getSubCompound("tags").setInteger("modifiers", 1); - - PlayerHelper.spawnItemOnGround(world, pos, dropStack); - PlayerHelper.spawnItemOnGround(world, pos, dropCrucible); - pItem.getTagCompound().setInteger("type", 0); - if (randomCheck(2)) { - tile.setSlotStack(0, ItemStack.EMPTY); - } - return true; - } - if (tile.getSlotStack(0).getItem() == ModItems.cast_pickaxe) { - ItemStack dropStack = new ItemStack(ModItems.bronzepickaxehead); - dropStack.setTagCompound(new NBTTagCompound()); - - NBTTagCompound tags = new NBTTagCompound(); - dropStack.getTagCompound().setTag("tags", tags); - dropStack.getSubCompound("tags").setBoolean("hot", false); - dropStack.getSubCompound("tags").setBoolean("emerald", false); - dropStack.getSubCompound("tags").setInteger("diamond", 0); - dropStack.getSubCompound("tags").setInteger("redstone", 1); - dropStack.getSubCompound("tags").setInteger("lapis", 0); - dropStack.getSubCompound("tags").setInteger("modifiers", 1); - - PlayerHelper.spawnItemOnGround(world, pos, dropStack); - PlayerHelper.spawnItemOnGround(world, pos, dropCrucible); - pItem.getTagCompound().setInteger("type", 0); - if (randomCheck(2)) { - tile.setSlotStack(0, ItemStack.EMPTY); - } - return true; - } - if (tile.getSlotStack(0).getItem() == ModItems.cast_axe) { - ItemStack dropStack = new ItemStack(ModItems.bronzeaxehead); - dropStack.setTagCompound(new NBTTagCompound()); - - - NBTTagCompound tags = new NBTTagCompound(); - dropStack.getTagCompound().setTag("tags", tags); - dropStack.getSubCompound("tags").setBoolean("hot", false); - dropStack.getSubCompound("tags").setBoolean("emerald", false); - dropStack.getSubCompound("tags").setInteger("diamond", 0); - dropStack.getSubCompound("tags").setInteger("redstone", 1); - dropStack.getSubCompound("tags").setInteger("lapis", 0); - dropStack.getSubCompound("tags").setInteger("modifiers", 1); - - - PlayerHelper.spawnItemOnGround(world, pos, dropStack); - PlayerHelper.spawnItemOnGround(world, pos, dropCrucible); - pItem.getTagCompound().setInteger("type", 0); - if (randomCheck(2)) { - tile.setSlotStack(0, ItemStack.EMPTY); - } - return true; - } - if (tile.getSlotStack(0).getItem() == ModItems.cast_shovel) { - ItemStack dropStack = new ItemStack(ModItems.bronzeshovelhead); - dropStack.setTagCompound(new NBTTagCompound()); - - - NBTTagCompound tags = new NBTTagCompound(); - dropStack.getTagCompound().setTag("tags", tags); - dropStack.getSubCompound("tags").setBoolean("hot", false); - dropStack.getSubCompound("tags").setBoolean("emerald", false); - dropStack.getSubCompound("tags").setInteger("diamond", 0); - dropStack.getSubCompound("tags").setInteger("redstone", 1); - dropStack.getSubCompound("tags").setInteger("lapis", 0); - dropStack.getSubCompound("tags").setInteger("modifiers", 1); - - - PlayerHelper.spawnItemOnGround(world, pos, dropStack); - PlayerHelper.spawnItemOnGround(world, pos, dropCrucible); - pItem.getTagCompound().setInteger("type", 0); - if (randomCheck(2)) { - tile.setSlotStack(0, ItemStack.EMPTY); - } - return true; - } - if (tile.getSlotStack(0).getItem() == ModItems.cast_gladius) { - ItemStack dropStack = new ItemStack(ModItems.bronzegladius); - PlayerHelper.spawnItemOnGround(world, pos, dropStack); - PlayerHelper.spawnItemOnGround(world, pos, dropCrucible); - pItem.getTagCompound().setInteger("type", 0); - if (randomCheck(2)) { - tile.setSlotStack(0, ItemStack.EMPTY); - } - return true; - } - } - /**Lapis Bronze**/ - if (recipeTag.getString("upgrades") == ("lapis")) { - if (tile.getSlotStack(0).getItem() == ModItems.cast_hoe) { - ItemStack dropStack = new ItemStack(ModItems.bronzehoehead); - dropStack.setTagCompound(new NBTTagCompound()); - - NBTTagCompound tags = new NBTTagCompound(); - dropStack.getTagCompound().setTag("tags", tags); - dropStack.getSubCompound("tags").setBoolean("hot", false); - dropStack.getSubCompound("tags").setBoolean("emerald", false); - dropStack.getSubCompound("tags").setInteger("diamond", 0); - dropStack.getSubCompound("tags").setInteger("redstone", 0); - dropStack.getSubCompound("tags").setInteger("lapis", 1); - dropStack.getSubCompound("tags").setInteger("modifiers", 1); - - PlayerHelper.spawnItemOnGround(world, pos, dropStack); - PlayerHelper.spawnItemOnGround(world, pos, dropCrucible); - pItem.getTagCompound().setInteger("type", 0); - if (randomCheck(2)) { - tile.setSlotStack(0, ItemStack.EMPTY); - } - return true; - } - if (tile.getSlotStack(0).getItem() == ModItems.cast_pickaxe) { - ItemStack dropStack = new ItemStack(ModItems.bronzepickaxehead); - dropStack.setTagCompound(new NBTTagCompound()); - - NBTTagCompound tags = new NBTTagCompound(); - dropStack.getTagCompound().setTag("tags", tags); - dropStack.getSubCompound("tags").setBoolean("hot", false); - dropStack.getSubCompound("tags").setBoolean("emerald", false); - dropStack.getSubCompound("tags").setInteger("diamond", 0); - dropStack.getSubCompound("tags").setInteger("redstone", 0); - dropStack.getSubCompound("tags").setInteger("lapis", 1); - dropStack.getSubCompound("tags").setInteger("modifiers", 1); - - PlayerHelper.spawnItemOnGround(world, pos, dropStack); - PlayerHelper.spawnItemOnGround(world, pos, dropCrucible); - pItem.getTagCompound().setInteger("type", 0); - if (randomCheck(2)) { - tile.setSlotStack(0, ItemStack.EMPTY); - } - return true; - } - if (tile.getSlotStack(0).getItem() == ModItems.cast_axe) { - ItemStack dropStack = new ItemStack(ModItems.bronzeaxehead); - dropStack.setTagCompound(new NBTTagCompound()); - - - NBTTagCompound tags = new NBTTagCompound(); - dropStack.getTagCompound().setTag("tags", tags); - dropStack.getSubCompound("tags").setBoolean("hot", false); - dropStack.getSubCompound("tags").setBoolean("emerald", false); - dropStack.getSubCompound("tags").setInteger("diamond", 0); - dropStack.getSubCompound("tags").setInteger("redstone", 0); - dropStack.getSubCompound("tags").setInteger("lapis", 1); - dropStack.getSubCompound("tags").setInteger("modifiers", 1); - - - PlayerHelper.spawnItemOnGround(world, pos, dropStack); - PlayerHelper.spawnItemOnGround(world, pos, dropCrucible); - pItem.getTagCompound().setInteger("type", 0); - if (randomCheck(2)) { - tile.setSlotStack(0, ItemStack.EMPTY); - } - return true; - } - if (tile.getSlotStack(0).getItem() == ModItems.cast_shovel) { - ItemStack dropStack = new ItemStack(ModItems.bronzeshovelhead); - dropStack.setTagCompound(new NBTTagCompound()); - - - NBTTagCompound tags = new NBTTagCompound(); - dropStack.getTagCompound().setTag("tags", tags); - dropStack.getSubCompound("tags").setBoolean("hot", false); - dropStack.getSubCompound("tags").setBoolean("emerald", false); - dropStack.getSubCompound("tags").setInteger("diamond", 0); - dropStack.getSubCompound("tags").setInteger("redstone", 0); - dropStack.getSubCompound("tags").setInteger("lapis", 1); - dropStack.getSubCompound("tags").setInteger("modifiers", 1); - - - PlayerHelper.spawnItemOnGround(world, pos, dropStack); - PlayerHelper.spawnItemOnGround(world, pos, dropCrucible); - pItem.getTagCompound().setInteger("type", 0); - if (randomCheck(2)) { - tile.setSlotStack(0, ItemStack.EMPTY); - } - return true; - } - if (tile.getSlotStack(0).getItem() == ModItems.cast_gladius) { - ItemStack dropStack = new ItemStack(ModItems.bronzegladius); - PlayerHelper.spawnItemOnGround(world, pos, dropStack); - PlayerHelper.spawnItemOnGround(world, pos, dropCrucible); - pItem.getTagCompound().setInteger("type", 0); - if (randomCheck(2)) { - tile.setSlotStack(0, ItemStack.EMPTY); - } - return true; - } - } - } - } - } - } - } - } - } - } - return false; - } - - @Override - public void breakBlock(World world, BlockPos pos, IBlockState state) - { - if (!world.isRemote && world.getGameRules().getBoolean("doTileDrops")) - { - TileCastingBlock tile = (TileCastingBlock) world.getTileEntity(pos); - if (tile !=null) - { - for (ItemStack stack : tile.getSlotList()) - { - if (stack != null) { - float offset = 0.7F; - double offsetX = world.rand.nextFloat() * offset + (1.0F - offset) * 0.5D; - double offsetY = world.rand.nextFloat() * offset + (1.0F - offset) * 0.5D; - double offsetZ = world.rand.nextFloat() * offset + (1.0F - offset) * 0.5D; - EntityItem item = new EntityItem(world, pos.getX() + offsetX, pos.getY() + offsetY, pos.getZ() + offsetZ, stack); - item.setDefaultPickupDelay(); - world.spawnEntity(item); - } - } - } - } - - super.breakBlock(world, pos, state); - } - - @Override - public TileEntity createNewTileEntity(World worldIn, int meta) { - return new TileCastingBlock(); - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess source, BlockPos pos) - { - return bound; - } - - @Override - public void onBlockPlacedBy(World worldIn, BlockPos pos, IBlockState state, EntityLivingBase placer, ItemStack stack) - { - //if(!worldIn.isRemote) { - worldIn.setBlockState(pos, state.withProperty(FACING, placer.getHorizontalFacing()), 2); - //} - } - - @Override - public int getMetaFromState(IBlockState state) { - int i = 0; - - if( state.getValue(FACING) == EnumFacing.EAST) { - i = 0; - return i; - } - if( state.getValue(FACING) == EnumFacing.WEST) { - i = 1; - return i; - } - if( state.getValue(FACING) == EnumFacing.SOUTH){ - i = 2; - return i; - } - if( state.getValue(FACING) == EnumFacing.NORTH){ - i = 3; - return i; - } - return i; - } - - @Override - public IBlockState getStateFromMeta(int meta) - { - IBlockState iblockstate = this.getDefaultState(); - - if (meta == 0){ - iblockstate = iblockstate.withProperty(FACING, EnumFacing.EAST); - } - if (meta == 1) { - iblockstate = iblockstate.withProperty(FACING, EnumFacing.WEST); - } - if (meta == 2) { - iblockstate = iblockstate.withProperty(FACING, EnumFacing.SOUTH); - } - if (meta == 3) { - iblockstate = iblockstate.withProperty(FACING, EnumFacing.NORTH); - } - return iblockstate; - } - - @Override - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {FACING}); - } - - @Override - public boolean isFullCube(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/kfc/src/main/java/nmd/primal/forgecraft/blocks/CastingForm.java b/kfc/src/main/java/nmd/primal/forgecraft/blocks/CastingForm.java index 196acf60..6bb6d8e4 100644 --- a/kfc/src/main/java/nmd/primal/forgecraft/blocks/CastingForm.java +++ b/kfc/src/main/java/nmd/primal/forgecraft/blocks/CastingForm.java @@ -69,23 +69,24 @@ public class CastingForm extends CustomContainerFacing implements CastingFormHan SlottedTongs tongs = (SlottedTongs) pItem.getItem(); if(tongs.getSlotList().get(0).getItem().equals(Item.getItemFromBlock(ModBlocks.nbtCrucible))) { ItemStack tongsStack = tongs.getSlotList().get(0).copy(); - NBTTagCompound tag = tongsStack.getTagCompound().copy(); + if(tag != null){ NonNullList ingList = NonNullList.withSize(5, ItemStack.EMPTY); NonNullList ingListEmpty = NonNullList.withSize(5, ItemStack.EMPTY); ItemStackHelper.loadAllItems(tag.getCompoundTag("BlockEntityTag"), ingList); - - CrucibleCrafting recipe = CrucibleCrafting.getRecipe(ingList.get(0), ingList.get(1), ingList.get(2), ingList.get(3), ingList.get(4)); - if(recipe != null){ + CrucibleCrafting crucibleRecipe = CrucibleCrafting.getRecipe(ingList.get(0), ingList.get(1), ingList.get(2), ingList.get(3), ingList.get(4)); + if(crucibleRecipe != null){ if(tag.getCompoundTag("BlockEntityTag").getBoolean("status") && tag.getCompoundTag("BlockEntityTag").getInteger("hot") == 15){ Item[] tempArray = new Item[25]; for(int i=0; i<25; i++){ tempArray[i] = tile.getSlotStack(i).getItem(); } + CastingCrafting casting = CastingCrafting.getRecipe(tongsStack, tempArray); if(casting != null){ - NBTTagCompound tagOutput = recipe.getDropsCooked().getTagCompound().copy(); + NBTTagCompound tagOutput = casting.getOutput().getSubCompound("tag"); + if(tagOutput != null) { ItemStack dropStack = casting.getOutput(); dropStack.setTagCompound(new NBTTagCompound()); @@ -121,6 +122,17 @@ public class CastingForm extends CustomContainerFacing implements CastingFormHan tongs.getSlotList().get(0).setTagCompound(tag); return true; } + if(tagOutput == null){ + if( !(casting.getOutput().getItem() instanceof BronzeToolPart) ){ + ItemStack dropStack = casting.getOutput(); + CommonUtils.spawnItemEntityFromWorld(world, pos, dropStack); + tag.getCompoundTag("BlockEntityTag").setBoolean("status", false); + tag.getCompoundTag("BlockEntityTag").setInteger("hot", 0); + ItemStackHelper.saveAllItems(tag.getCompoundTag("BlockEntityTag"), ingListEmpty); + tongs.getSlotList().get(0).setTagCompound(tag); + return true; + } + } } } } diff --git a/kfc/src/main/java/nmd/primal/forgecraft/blocks/Crucibles/NBTCrucible.java b/kfc/src/main/java/nmd/primal/forgecraft/blocks/Crucibles/NBTCrucible.java index db2d8f44..6dcf8c64 100644 --- a/kfc/src/main/java/nmd/primal/forgecraft/blocks/Crucibles/NBTCrucible.java +++ b/kfc/src/main/java/nmd/primal/forgecraft/blocks/Crucibles/NBTCrucible.java @@ -28,6 +28,7 @@ import nmd.primal.core.common.helper.NBTHelper; import nmd.primal.core.common.helper.PlayerHelper; import nmd.primal.forgecraft.ModInfo; import nmd.primal.forgecraft.crafting.CrucibleCrafting; +import nmd.primal.forgecraft.init.ModBlocks; import nmd.primal.forgecraft.items.SlottedTongs; import nmd.primal.forgecraft.tiles.TileNBTCrucible; @@ -149,9 +150,8 @@ public class NBTCrucible extends BlockContainer implements ITileEntityProvider { @Override public boolean removedByPlayer(IBlockState state, World world, BlockPos pos, EntityPlayer player, boolean willHarvest) { - System.out.println("Removed by player"); this.onBlockHarvested(world, pos, state, player); - return this.takeBlock(world, pos, state, EnumFacing.UP, player); + return this.destroyBlock(world, pos, state, EnumFacing.UP, player); } public ItemStack getCrucibleItem(World world, BlockPos pos, IBlockState state, EntityPlayer player) @@ -159,12 +159,14 @@ public class NBTCrucible extends BlockContainer implements ITileEntityProvider { return NBTHelper.getStackBlockNBT(world, pos, state, super.getPickBlock(state, null, world, pos, player)); } - public boolean takeBlock(World world, BlockPos pos, IBlockState state, EnumFacing face, EntityPlayer player) + public boolean destroyBlock(World world, BlockPos pos, IBlockState state, EnumFacing face, EntityPlayer player) { if (!world.isRemote) { TileEntity tile = world.getTileEntity(pos); if (tile instanceof TileNBTCrucible) { - PlayerHelper.playerTakeItem(world, pos, EnumFacing.DOWN, player, player.getActiveHand(), this.getCrucibleItem(world, pos, state, player)); + //PlayerHelper.playerTakeItem(world, pos, EnumFacing.DOWN, player, player.getActiveHand(), this.getCrucibleItem(world, pos, state, player)); + ItemStack dropStack = new ItemStack(ModBlocks.nbtCrucible, 1); + PlayerHelper.spawnItemOnPlayer(world, player, dropStack); world.setBlockState(pos, this.getReplacementBlock(world, pos, state)); return true; } 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 e79d6033..4a3f1404 100644 --- a/kfc/src/main/java/nmd/primal/forgecraft/init/ModBlocks.java +++ b/kfc/src/main/java/nmd/primal/forgecraft/init/ModBlocks.java @@ -27,7 +27,6 @@ public class ModBlocks { public static Block bloomery_adobe; public static Block blockbreaker; public static Block castingform; - public static Block castingblock; public static Block pistonbellowsoak; public static Block pistonbellowsjungle; @@ -87,7 +86,6 @@ 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"); - castingblock = new CastingBlock(Material.ROCK, "castingblock"); pistonbellowsoak = new PistonBellows(Material.WOOD, "pistonbellowsoak"); pistonbellowsjungle = new PistonBellows(Material.WOOD, "pistonbellowsjungle"); @@ -377,7 +375,6 @@ public class ModBlocks { registerBlockWithItem(bloomery_adobe); registerBlockWithItem(blockbreaker); registerBlockWithItem(castingform); - registerBlockWithItem(castingblock); registerBlockWithItem(pistonbellowsoak); registerBlockWithItem(pistonbellowsjungle); @@ -437,7 +434,6 @@ public class ModBlocks { registerRender(forge_brick); registerRender(forge_adobe); registerRender(castingform); - registerRender(castingblock); registerRender(blockbreaker); registerRender(pistonbellowsoak); diff --git a/kfc/src/main/java/nmd/primal/forgecraft/init/ModCrafting.java b/kfc/src/main/java/nmd/primal/forgecraft/init/ModCrafting.java index a9f8d5cb..010b85ad 100644 --- a/kfc/src/main/java/nmd/primal/forgecraft/init/ModCrafting.java +++ b/kfc/src/main/java/nmd/primal/forgecraft/init/ModCrafting.java @@ -3,10 +3,12 @@ package nmd.primal.forgecraft.init; import net.minecraft.block.BlockPlanks; import net.minecraft.init.Blocks; import net.minecraft.init.Items; +import net.minecraft.inventory.ItemStackHelper; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.item.crafting.Ingredient; import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.util.NonNullList; import net.minecraftforge.oredict.OreDictionary; import net.minecraftforge.oredict.OreIngredient; import nmd.primal.core.api.PrimalAPI; @@ -15,7 +17,9 @@ import nmd.primal.forgecraft.crafting.AnvilCrafting; import nmd.primal.forgecraft.crafting.CastingCrafting; import nmd.primal.forgecraft.crafting.CrucibleCrafting; import nmd.primal.forgecraft.crafting.ForgeCrafting; +import nmd.primal.forgecraft.util.ToolNBT; +import java.util.List; import java.util.Random; /** @@ -28,9 +32,14 @@ public class ModCrafting{ Random rand = new Random(); ItemStack emptyAir = ItemStack.EMPTY; + NBTTagCompound newTag = new NBTTagCompound(); + + NBTTagCompound setHot = new NBTTagCompound(); setHot.setBoolean("hot", true); + ItemStack hotBronzeIngot = new ItemStack(ModItems.bronzeingotball, 1); + hotBronzeIngot.setTagCompound(setHot); ItemStack hotIronIngot = new ItemStack(ModItems.ironingotball, 1); hotIronIngot.setTagCompound(setHot); ItemStack hotCleanIronIngot = new ItemStack(ModItems.ironcleaningotball, 1); @@ -40,15 +49,14 @@ public class ModCrafting{ ItemStack hotWootzIngot = new ItemStack(ModItems.wootzingotball, 1); hotWootzIngot.setTagCompound(setHot); + ItemStack hotBronzeChunk = new ItemStack( ModItems.bronzechunk, 1); + hotBronzeChunk.setTagCompound(setHot); ItemStack hotChunk = new ItemStack( ModItems.wroughtironchunk, 1); hotChunk.setTagCompound(setHot); - ItemStack hotCleanChunk = new ItemStack(ModItems.ironcleanchunk, 1); hotCleanChunk.setTagCompound(setHot); - ItemStack hotSteelChunk = new ItemStack(ModItems.steelchunk, 1); hotSteelChunk.setTagCompound(setHot); - ItemStack hotWootzChunk = new ItemStack(ModItems.wootzchunk, 1); hotWootzChunk.setTagCompound(setHot); @@ -60,61 +68,191 @@ public class ModCrafting{ ItemStack redstone = new ItemStack(Items.REDSTONE, 1); ItemStack lapis = new ItemStack(Items.DYE, 1, 4); + + + ItemStack[] toolArray = new ItemStack[20]; + ItemStack[] hotToolArray = new ItemStack[16]; + + ItemStack bronzepickaxehead = new ItemStack(ModItems.bronzepickaxehead, 1); + bronzepickaxehead.setTagCompound(newTag); + toolArray[0] = bronzepickaxehead; + ItemStack bronzeaxehead = new ItemStack(ModItems.bronzeaxehead, 1); + bronzeaxehead.setTagCompound(newTag); + toolArray[1] = bronzeaxehead; + ItemStack bronzeshovelhead = new ItemStack(ModItems.bronzeshovelhead, 1); + bronzeshovelhead.setTagCompound(newTag); + toolArray[2] = bronzeshovelhead; + ItemStack bronzehoehead = new ItemStack(ModItems.bronzehoehead, 1); + bronzehoehead.setTagCompound(newTag); + toolArray[3] = bronzehoehead; + ItemStack pickaxehead = new ItemStack(ModItems.pickaxehead, 1); + pickaxehead.setTagCompound(newTag); + toolArray[4] = pickaxehead; ItemStack ironaxehead = new ItemStack(ModItems.ironaxehead, 1); + ironaxehead.setTagCompound(newTag); + toolArray[5] = ironaxehead; ItemStack ironshovelhead = new ItemStack(ModItems.ironshovelhead, 1); + ironshovelhead.setTagCompound(newTag); + toolArray[6] = ironshovelhead; ItemStack ironhoehead = new ItemStack(ModItems.ironhoehead, 1); + ironhoehead.setTagCompound(newTag); + toolArray[7] = ironhoehead; ItemStack cleanpickaxehead = new ItemStack(ModItems.cleanironpickaxehead, 1); + cleanpickaxehead.setTagCompound(newTag); + toolArray[8] = cleanpickaxehead; ItemStack cleanaxehead = new ItemStack(ModItems.cleanironaxehead, 1); + cleanaxehead.setTagCompound(newTag); + toolArray[9] = cleanaxehead; ItemStack cleanshovelhead = new ItemStack(ModItems.cleanironshovelhead, 1); + cleanshovelhead.setTagCompound(newTag); + toolArray[10] = cleanshovelhead; ItemStack cleanhoehead = new ItemStack(ModItems.cleanironhoehead, 1); + cleanhoehead.setTagCompound(newTag); + toolArray[11] =cleanhoehead ; ItemStack steelpickaxehead = new ItemStack(ModItems.steelpickaxehead, 1); + steelpickaxehead.setTagCompound(newTag); + toolArray[12] = steelpickaxehead; ItemStack steelaxehead = new ItemStack(ModItems.steelaxehead, 1); + steelaxehead.setTagCompound(newTag); + toolArray[13] =steelaxehead ; ItemStack steelshovelhead = new ItemStack(ModItems.steelshovelhead, 1); + steelshovelhead.setTagCompound(newTag); + toolArray[14] = steelshovelhead; ItemStack steelhoehead = new ItemStack(ModItems.steelhoehead, 1); + steelhoehead.setTagCompound(newTag); + toolArray[15] =steelhoehead ; ItemStack wootzpickaxehead = new ItemStack(ModItems.wootzpickaxehead, 1); + wootzpickaxehead.setTagCompound(newTag); + toolArray[16] = wootzpickaxehead; ItemStack wootzaxehead = new ItemStack(ModItems.wootzaxehead, 1); + wootzaxehead.setTagCompound(newTag); + toolArray[17] = wootzaxehead; ItemStack wootzshovelhead = new ItemStack(ModItems.wootzshovelhead, 1); + wootzshovelhead.setTagCompound(newTag); + toolArray[18] =wootzshovelhead ; ItemStack wootzhoehead = new ItemStack(ModItems.wootzhoehead, 1); + wootzhoehead.setTagCompound(newTag); + toolArray[19] = wootzhoehead; - ItemStack hotpickaxehead = new ItemStack(ModItems.pickaxehead, 1); - hotpickaxehead.setTagCompound(setHot); - ItemStack hotironaxehead = new ItemStack(ModItems.ironaxehead, 1); - hotironaxehead.setTagCompound(setHot); - ItemStack hotironshovelhead = new ItemStack(ModItems.ironshovelhead, 1); - hotironshovelhead.setTagCompound(setHot); - ItemStack hotironhoehead = new ItemStack(ModItems.ironhoehead, 1); - hotironhoehead.setTagCompound(setHot); - ItemStack hotcleanpickaxehead = new ItemStack(ModItems.cleanironpickaxehead, 1); - hotcleanpickaxehead.setTagCompound(setHot); - ItemStack hotcleanaxehead = new ItemStack(ModItems.cleanironaxehead, 1); - hotcleanaxehead.setTagCompound(setHot); - ItemStack hotcleanshovelhead = new ItemStack(ModItems.cleanironshovelhead, 1); - hotcleanshovelhead.setTagCompound(setHot); - ItemStack hotcleanhoehead = new ItemStack(ModItems.cleanironhoehead, 1); - hotcleanhoehead.setTagCompound(setHot); + ItemStack hotpickaxehead = pickaxehead.copy(); + hotToolArray[0] =hotpickaxehead; + ItemStack hotironaxehead = ironaxehead.copy(); + hotToolArray[1] =hotironaxehead; + ItemStack hotironshovelhead = ironshovelhead.copy(); + hotToolArray[2] =hotironshovelhead; + ItemStack hotironhoehead = ironhoehead.copy(); + hotToolArray[3] =hotironhoehead; - ItemStack hotsteelpickaxehead = new ItemStack(ModItems.steelpickaxehead, 1); - hotsteelpickaxehead.setTagCompound(setHot); - ItemStack hotsteelaxehead = new ItemStack(ModItems.steelaxehead, 1); - hotsteelaxehead.setTagCompound(setHot); - ItemStack hotsteelshovelhead = new ItemStack(ModItems.steelshovelhead, 1); - hotsteelshovelhead.setTagCompound(setHot); - ItemStack hotsteelhoehead = new ItemStack(ModItems.steelhoehead, 1); - hotsteelhoehead.setTagCompound(setHot); + ItemStack hotcleanpickaxehead = cleanpickaxehead.copy(); + hotToolArray[4] = hotcleanpickaxehead; + ItemStack hotcleanaxehead = cleanaxehead.copy(); + hotToolArray[5] = hotcleanaxehead; + ItemStack hotcleanshovelhead = cleanshovelhead.copy(); + hotToolArray[6] = hotcleanshovelhead; + ItemStack hotcleanhoehead = cleanhoehead.copy(); + hotToolArray[7] = hotcleanhoehead; - ItemStack hotwootzpickaxehead = new ItemStack(ModItems.wootzpickaxehead, 1); - hotwootzpickaxehead.setTagCompound(setHot); - ItemStack hotwootzaxehead = new ItemStack(ModItems.wootzaxehead, 1); - hotwootzaxehead.setTagCompound(setHot); - ItemStack hotwootzshovelhead = new ItemStack(ModItems.wootzshovelhead, 1); - hotwootzshovelhead.setTagCompound(setHot); - ItemStack hotwootzhoehead = new ItemStack(ModItems.wootzhoehead, 1); - hotwootzhoehead.setTagCompound(setHot); + ItemStack hotsteelpickaxehead = steelpickaxehead.copy(); + hotToolArray[8] = hotsteelpickaxehead; + ItemStack hotsteelaxehead = steelaxehead.copy(); + hotToolArray[9] = hotsteelaxehead; + ItemStack hotsteelshovelhead = steelshovelhead.copy(); + hotToolArray[10] = hotsteelshovelhead; + ItemStack hotsteelhoehead = steelhoehead.copy(); + hotToolArray[11] = hotsteelhoehead; + + ItemStack hotwootzpickaxehead = wootzpickaxehead.copy(); + hotToolArray[12] = hotwootzpickaxehead; + ItemStack hotwootzaxehead = wootzaxehead.copy(); + hotToolArray[13] = hotwootzaxehead; + ItemStack hotwootzshovelhead = wootzshovelhead.copy(); + hotToolArray[14] = hotwootzshovelhead; + ItemStack hotwootzhoehead = wootzhoehead.copy(); + hotToolArray[15] = hotwootzhoehead; + + + + for(ItemStack temp : toolArray) { + System.out.println(temp); + if(temp.getTagCompound() == null){ + System.out.println("NBT is Null"); + } + NBTTagCompound tags = new NBTTagCompound(); + temp.getTagCompound().setTag("tags", tags); + + temp.getSubCompound("tags").setBoolean("hot", false); + temp.getSubCompound("tags").setBoolean("emerald", false); + temp.getSubCompound("tags").setInteger("diamond", 0); + temp.getSubCompound("tags").setInteger("redstone", 0); + temp.getSubCompound("tags").setInteger("lapis", 0); + temp.getSubCompound("tags").setInteger("modifiers", 0); + } + + bronzepickaxehead = toolArray[0]; + bronzeaxehead = toolArray[1]; + bronzeshovelhead = toolArray[2]; + bronzehoehead = toolArray[3]; + + pickaxehead = toolArray[4]; + ironaxehead = toolArray[5]; + ironshovelhead = toolArray[6]; + ironhoehead = toolArray[7]; + + cleanpickaxehead = toolArray[8]; + cleanaxehead = toolArray[9]; + cleanshovelhead = toolArray[10]; + cleanhoehead = toolArray[11]; + + steelpickaxehead = toolArray[12] ; + steelaxehead = toolArray[13] ; + steelshovelhead = toolArray[14]; + steelhoehead = toolArray[15] ; + + wootzpickaxehead = toolArray[16]; + wootzaxehead = toolArray[17]; + wootzshovelhead = toolArray[18] ; + wootzhoehead = toolArray[19]; + + for(ItemStack temp : hotToolArray) { + //NBTTagCompound newTag = new NBTTagCompound(); + NBTTagCompound tags = new NBTTagCompound(); + + //temp.setTagCompound(newTag); + temp.getTagCompound().setTag("tags", tags); + + temp.getTagCompound().setTag("tags", tags); + temp.getSubCompound("tags").setBoolean("hot", true); + temp.getSubCompound("tags").setBoolean("emerald", false); + temp.getSubCompound("tags").setInteger("diamond", 0); + temp.getSubCompound("tags").setInteger("redstone", 0); + temp.getSubCompound("tags").setInteger("lapis", 0); + temp.getSubCompound("tags").setInteger("modifiers", 0); + } + + hotpickaxehead = hotToolArray[0]; + hotironaxehead = hotToolArray[1]; + hotironshovelhead = hotToolArray[2]; + hotironhoehead = hotToolArray[3]; + + hotcleanpickaxehead = hotToolArray[4]; + hotcleanaxehead = hotToolArray[5]; + hotcleanshovelhead = hotToolArray[6]; + hotcleanhoehead = hotToolArray[7]; + + hotsteelpickaxehead = hotToolArray[8] ; + hotsteelaxehead = hotToolArray[9] ; + hotsteelshovelhead = hotToolArray[10]; + hotsteelhoehead = hotToolArray[11] ; + + hotwootzpickaxehead = hotToolArray[12]; + hotwootzaxehead = hotToolArray[13]; + hotwootzshovelhead = hotToolArray[14] ; + hotwootzhoehead = hotToolArray[15]; //RecipeHandler.addSmelting(ModItems.softcrucible, new ItemStack(ModBlocks.nbtCrucible, 1)); @@ -131,9 +269,21 @@ public class ModCrafting{ Ingredient.EMPTY, new ItemStack(Blocks.IRON_ORE, 1), new ItemStack(ModItems.ironingotball, 1), - 100, - 100, - 1000); + 1400, + 1200, + 800); + + CrucibleCrafting.addRecipe( + new OreIngredient("dustIron"), + Ingredient.EMPTY, + Ingredient.EMPTY, + Ingredient.EMPTY, + Ingredient.EMPTY, + new ItemStack(Blocks.IRON_ORE, 1), + new ItemStack(ModItems.ironingotball, 1), + 1250, + 1100, + 800); CrucibleCrafting.addRecipe( new OreIngredient("dustIron"), @@ -143,9 +293,9 @@ public class ModCrafting{ Ingredient.EMPTY, new ItemStack(PrimalAPI.Items.IRON_DUST, 1), new ItemStack(ModItems.ironcleaningotball, 1), - 100, - 100, - 1000); + 1550, + 1200, + 800); CrucibleCrafting.addRecipe( Ingredient.fromStacks(new ItemStack(ModItems.ironcleaningotball, 1)), @@ -155,8 +305,8 @@ public class ModCrafting{ Ingredient.EMPTY, new ItemStack(ModItems.ironcleaningotball, 1), new ItemStack(ModItems.steelingotball, 1), - 100, - 100, + 2100, + 1500, 1000); CrucibleCrafting.addRecipe( @@ -167,9 +317,9 @@ public class ModCrafting{ Ingredient.fromStacks(new ItemStack(PrimalAPI.Items.CHARCOAL_PURE, 1)), new ItemStack(PrimalAPI.Blocks.ORE_MAGNETITE, 1), new ItemStack(ModItems.wootzingotball, 1), - 100, - 100, - 1000); + 2100, + 1800, + 1500); CrucibleCrafting.addRecipe( new OreIngredient("magnetite"), @@ -179,9 +329,9 @@ public class ModCrafting{ Ingredient.fromStacks(new ItemStack(PrimalAPI.Items.CHARCOAL_PURE, 1)), new ItemStack(PrimalAPI.Blocks.ORE_MAGNETITE, 1), new ItemStack(ModItems.wootzingotball, 1), - 100, - 100, - 1000); + 2100, + 1800, + 1500); CrucibleCrafting.addRecipe( new OreIngredient("dustCopper"), @@ -191,9 +341,9 @@ public class ModCrafting{ Ingredient.EMPTY, new ItemStack(PrimalAPI.Items.SLAG, 1), new ItemStack(ModItems.bronzeingotball, 1), - 100, - 100, - 1000); + 1100, + 800, + 600); NBTTagCompound tagBronzeDefault = new NBTTagCompound(); tagBronzeDefault.setString("upgrades", ""); @@ -207,9 +357,9 @@ public class ModCrafting{ Ingredient.EMPTY, new ItemStack(PrimalAPI.Items.SLAG, 1), defaultBronze, - 100, - 100, - 1000); + 1100, + 800, + 600); CrucibleCrafting.addRecipe( new OreIngredient("ingotBronze"), @@ -219,9 +369,9 @@ public class ModCrafting{ Ingredient.EMPTY, new ItemStack(PrimalAPI.Items.SLAG, 1), defaultBronze, - 100, - 100, - 1000); + 1100, + 800, + 600); NBTTagCompound tag = new NBTTagCompound(); tag.setString("upgrades", "redstone"); @@ -235,9 +385,9 @@ public class ModCrafting{ Ingredient.EMPTY, new ItemStack(PrimalAPI.Items.SLAG, 1), redBronze, - 100, - 100, - 100); + 1100, + 800, + 600); NBTTagCompound diamondBronzeTag = new NBTTagCompound(); tag.setString("upgrades", "diamond"); @@ -251,9 +401,9 @@ public class ModCrafting{ Ingredient.EMPTY, new ItemStack(PrimalAPI.Items.SLAG, 1), diamondBronze, - 100, - 100, - 100); + 1100, + 800, + 600); NBTTagCompound emeraldBronzeTag = new NBTTagCompound(); tag.setString("upgrades", "emerald"); @@ -267,9 +417,9 @@ public class ModCrafting{ Ingredient.EMPTY, new ItemStack(PrimalAPI.Items.SLAG, 1), emeraldBronze, - 100, - 100, - 100); + 1100, + 800, + 600); NBTTagCompound tagBronzeLapis = new NBTTagCompound(); tagBronzeDefault.setString("upgrades", "lapis"); @@ -283,9 +433,9 @@ public class ModCrafting{ Ingredient.EMPTY, new ItemStack(PrimalAPI.Items.SLAG, 1), lapisBronze, - 100, - 100, - 1000); + 1100, + 800, + 600); CrucibleCrafting.addRecipe( new OreIngredient("dustCopper"), @@ -295,9 +445,9 @@ public class ModCrafting{ new OreIngredient("dustRedstone"), new ItemStack(PrimalAPI.Items.SLAG, 1), redBronze, - 100, - 100, - 1000); + 1100, + 800, + 600); CrucibleCrafting.addRecipe( new OreIngredient("dustCopper"), @@ -307,9 +457,9 @@ public class ModCrafting{ new OreIngredient("dustDiamond"), new ItemStack(PrimalAPI.Items.SLAG, 1), diamondBronze, - 100, - 100, - 1000); + 1100, + 800, + 600); CrucibleCrafting.addRecipe( new OreIngredient("dustCopper"), @@ -319,9 +469,9 @@ public class ModCrafting{ new OreIngredient("dustEmerald"), new ItemStack(PrimalAPI.Items.SLAG, 1), emeraldBronze, - 100, - 100, - 1000); + 1100, + 800, + 600); CrucibleCrafting.addRecipe( new OreIngredient("dustCopper"), @@ -331,27 +481,10 @@ public class ModCrafting{ new OreIngredient("dustLapis"), new ItemStack(PrimalAPI.Items.SLAG, 1), lapisBronze, - 100, - 100, - 1000); + 1100, + 800, + 600); - /* - RecipeHandler.addShapedOreRecipe(new ItemStack(ModBlocks.rawcleanironcrucible), - "XL","Y ", - ('X'), "dustIron", - ('L'), PrimalAPI.Items.CARBONATE_SLACK, - ('Y'), ModBlocks.emptycrucible); - - RecipeHandler.addShapedOreRecipe(new ItemStack(ModBlocks.rawsteelcrucible), - "XC","Y ", - ('X'), new ItemStack(ModBlocks.ironcleanball, 1), - ('C'), new ItemStack(PrimalAPI.Items.CHARCOAL_HIGH), - ('Y'), ModBlocks.emptycrucible); - */ - - /***CASTING BLOCK***/ - RecipeHandler.addShapedOreRecipe(new ItemStack(ModBlocks.castingblock), - " B ", "BXB", " B ", 'X', Blocks.STONE_SLAB, 'B', PrimalAPI.Items.ADOBE_BRICK_DRY); /***CASTING FORM***/ RecipeHandler.addShapedOreRecipe(new ItemStack(ModBlocks.castingform, 1), @@ -882,7 +1015,7 @@ public class ModCrafting{ empty,muddd,muddd,muddd,empty, muddd,muddd,muddd,muddd,muddd, muddd,muddd,muddd,muddd,muddd }, - new ItemStack(ModItems.bronzepickaxehead, 1) + bronzepickaxehead ); //Casting Shovel @@ -894,7 +1027,7 @@ public class ModCrafting{ muddd,empty,empty,empty,muddd, muddd,empty,empty,empty,muddd, muddd,empty,muddd,empty,muddd }, - new ItemStack(ModItems.bronzeshovelhead, 1) + bronzeshovelhead ); //Casting Axe @@ -906,7 +1039,7 @@ public class ModCrafting{ muddd,empty,empty,empty,muddd, muddd,empty,muddd,muddd,muddd, muddd,muddd,muddd,muddd,muddd }, - new ItemStack(ModItems.bronzeaxehead, 1) + bronzeaxehead ); //Casting Hoe @@ -918,7 +1051,7 @@ public class ModCrafting{ muddd,empty,muddd,muddd,muddd, empty,muddd,muddd,muddd,muddd, muddd,muddd,muddd,muddd,muddd }, - new ItemStack(ModItems.bronzehoehead, 1) + bronzehoehead ); //Casting Gladius 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 06d7cc29..25b37570 100644 --- a/kfc/src/main/java/nmd/primal/forgecraft/init/ModItems.java +++ b/kfc/src/main/java/nmd/primal/forgecraft/init/ModItems.java @@ -12,7 +12,6 @@ import nmd.primal.core.api.PrimalAPI; import nmd.primal.forgecraft.items.*; import nmd.primal.forgecraft.items.armor.CustomHelmet; import nmd.primal.forgecraft.items.blocks.ItemNBTCrucible; -import nmd.primal.forgecraft.items.casting.CastingPart; import nmd.primal.forgecraft.items.parts.BronzeToolPart; import nmd.primal.forgecraft.items.parts.ToolPart; import nmd.primal.forgecraft.items.tools.*; @@ -47,13 +46,6 @@ public class ModItems { public static Item wootzingotball; public static Item wootzchunk; - public static Item cast_axe; - public static Item cast_gladius; - public static Item cast_hoe; - public static Item cast_pickaxe; - public static Item cast_shovel; - - public static Item pickaxehead; public static Item ironaxehead; public static Item ironshovelhead; @@ -158,16 +150,6 @@ public class ModItems { longbow = new Longbow("longbow"); //matchlockmusket = new Musket("matchlock_musket"); - - /********** - CASTING PARTS - **********/ - cast_axe = new CastingPart("cast_axe"); - cast_gladius = new CastingPart("cast_gladius"); - cast_hoe = new CastingPart("cast_hoe"); - cast_pickaxe = new CastingPart("cast_pickaxe"); - cast_shovel = new CastingPart("cast_shovel"); - /********** TOOL PARTS **********/ @@ -300,15 +282,6 @@ public class ModItems { //ForgeRegistries.ITEMS.register(test); - /********** - CASTING PARTS - **********/ - ForgeRegistries.ITEMS.register(cast_axe); - ForgeRegistries.ITEMS.register(cast_gladius); - ForgeRegistries.ITEMS.register(cast_hoe); - ForgeRegistries.ITEMS.register(cast_pickaxe); - ForgeRegistries.ITEMS.register(cast_shovel); - /********** TOOL PARTS **********/ @@ -428,15 +401,6 @@ public class ModItems { //registerRender(test); - /********** - CASTING PARTS - **********/ - registerRender(cast_axe); - registerRender(cast_gladius); - registerRender(cast_hoe); - registerRender(cast_pickaxe); - registerRender(cast_shovel); - /********** TOOL PARTS **********/ 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 cb0da4d3..535a4f43 100644 --- a/kfc/src/main/java/nmd/primal/forgecraft/init/ModTiles.java +++ b/kfc/src/main/java/nmd/primal/forgecraft/init/ModTiles.java @@ -16,7 +16,6 @@ public class ModTiles { registerTileEntity(TileAnvil.class, "anvil"); registerTileEntity(TileBreaker.class, "breaker"); registerTileEntity(TileCastingForm.class, "castingform"); - registerTileEntity(TileCastingBlock.class, "castingblock"); registerTileEntity(TileNBTCrucible.class, "nbtcrucible"); } diff --git a/kfc/src/main/java/nmd/primal/forgecraft/proxy/ClientProxy.java b/kfc/src/main/java/nmd/primal/forgecraft/proxy/ClientProxy.java index c953fdcb..475f82af 100644 --- a/kfc/src/main/java/nmd/primal/forgecraft/proxy/ClientProxy.java +++ b/kfc/src/main/java/nmd/primal/forgecraft/proxy/ClientProxy.java @@ -44,7 +44,6 @@ public class ClientProxy implements CommonProxy { ClientRegistry.bindTileEntitySpecialRenderer(TileAnvil.class, new TileAnvilRender()); ClientRegistry.bindTileEntitySpecialRenderer(TileBreaker.class, new TileBreakerRender()); ClientRegistry.bindTileEntitySpecialRenderer(TileCastingForm.class, new TileCastingformRender()); - ClientRegistry.bindTileEntitySpecialRenderer(TileCastingBlock.class, new TileCastingBlockRender()); } public void registerModels(){ diff --git a/kfc/src/main/java/nmd/primal/forgecraft/renders/blocks/TileCastingBlockRender.java b/kfc/src/main/java/nmd/primal/forgecraft/renders/blocks/TileCastingBlockRender.java deleted file mode 100644 index 9f3d949a..00000000 --- a/kfc/src/main/java/nmd/primal/forgecraft/renders/blocks/TileCastingBlockRender.java +++ /dev/null @@ -1,103 +0,0 @@ -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.Item; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.math.BlockPos; -import nmd.primal.forgecraft.blocks.CastingBlock; -import nmd.primal.forgecraft.blocks.CustomContainerFacing; -import nmd.primal.forgecraft.items.casting.CastingPart; -import nmd.primal.forgecraft.tiles.TileCastingBlock; -import org.lwjgl.opengl.GL11; - -/** - * Created by mminaie on 6/21/17. - */ -public class TileCastingBlockRender extends TileEntitySpecialRenderer -{ - private RenderItem renderItem = Minecraft.getMinecraft().getRenderItem(); - - @Override - public void render(TileCastingBlock tile, double x, double y, double z, float partialTicks, int destroyStage, float alpha) - { - BlockPos pos = tile.getPos(); - IBlockState state = this.getWorld().getBlockState(pos); - if (state.getBlock() instanceof CastingBlock) { - - GL11.glPushMatrix(); - GL11.glTranslated(x + 0.5, y + 0.25D, z + 0.5); - //GL11.glRotatef(90.0F, 0.0F, 0.0F, 1.0F); - Minecraft.getMinecraft().getTextureManager().bindTexture(TextureMap.LOCATION_BLOCKS_TEXTURE); - float prevLGTX = OpenGlHelper.lastBrightnessX; - float prevLGTY = OpenGlHelper.lastBrightnessY; - GL11.glScaled(0.99D, 0.99D, 0.99D); - int bright = tile.getWorld().getCombinedLight(pos.up(), 0); - OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, bright % 65536, bright / 65536); - - if (state.getValue(CustomContainerFacing.FACING) == EnumFacing.NORTH) { - if (!tile.getSlotStack(0).isEmpty()) { - Item item = tile.getSlotStack(0).getItem(); - - if (item instanceof CastingPart) { - GL11.glPushMatrix(); - GL11.glRotatef(180.0f, 0.0f, 1.0f, 0.0f); - GL11.glRotatef(90.0f, 1.0f, 0.0f, 0.0f); - - renderItem.renderItem(tile.getSlotStack(0), ItemCameraTransforms.TransformType.FIXED); - GL11.glPopMatrix(); - } - } - } - if (state.getValue(CustomContainerFacing.FACING) == EnumFacing.SOUTH) { - if (!tile.getSlotStack(0).isEmpty()) { - Item item = tile.getSlotStack(0).getItem(); - if (item instanceof CastingPart) { - GL11.glPushMatrix(); - GL11.glRotated(90.0D, 0.0D, 0.0D, 0.0D); - - renderItem.renderItem(tile.getSlotStack(0), ItemCameraTransforms.TransformType.FIXED); - GL11.glPopMatrix(); - } - } - } - - if (state.getValue(CustomContainerFacing.FACING) == EnumFacing.WEST) { - if (!tile.getSlotStack(0).isEmpty()) { - Item item = tile.getSlotStack(0).getItem(); - if (item instanceof CastingPart) { - GL11.glPushMatrix(); - GL11.glRotated(90.0D, 1.0D, 0.0D, 0.0D); - GL11.glRotated(90.0D, 0.0D, 0.0D, 1.0D); - //GL11.glRotated(180.0D, 0.0D, 1.0D, 0.0D); - renderItem.renderItem(tile.getSlotStack(0), ItemCameraTransforms.TransformType.FIXED); - GL11.glPopMatrix(); - } - } - } - if (state.getValue(CustomContainerFacing.FACING) == EnumFacing.EAST) { - if (!tile.getSlotStack(0).isEmpty()) { - Item item = tile.getSlotStack(0).getItem(); - if (item instanceof CastingPart) { - GL11.glPushMatrix(); - GL11.glRotated(90.0D, 1.0D, 0.0D, 0.0D); - GL11.glRotated(-90.0D, 0.0D, 0.0D, 1.0D); - - renderItem.renderItem(tile.getSlotStack(0), ItemCameraTransforms.TransformType.FIXED); - GL11.glPopMatrix(); - } - } - } - - - - OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, prevLGTX, prevLGTY); - GL11.glPopMatrix(); - } - } -} diff --git a/kfc/src/main/java/nmd/primal/forgecraft/tiles/TileCastingBlock.java b/kfc/src/main/java/nmd/primal/forgecraft/tiles/TileCastingBlock.java deleted file mode 100644 index f19a97be..00000000 --- a/kfc/src/main/java/nmd/primal/forgecraft/tiles/TileCastingBlock.java +++ /dev/null @@ -1,14 +0,0 @@ -package nmd.primal.forgecraft.tiles; - -/** - * Created by mminaie on 6/24/17. - */ -public class TileCastingBlock extends TileBaseSlot { - - - @Override - public int getSlotLimit() { - return 1; - } - -} diff --git a/kfc/src/main/java/nmd/primal/forgecraft/tiles/TileNBTCrucible.java b/kfc/src/main/java/nmd/primal/forgecraft/tiles/TileNBTCrucible.java index 2fdf4fb9..374e6f18 100644 --- a/kfc/src/main/java/nmd/primal/forgecraft/tiles/TileNBTCrucible.java +++ b/kfc/src/main/java/nmd/primal/forgecraft/tiles/TileNBTCrucible.java @@ -101,7 +101,6 @@ public class TileNBTCrucible extends BaseTile implements ITickable { //CrucibleCrafting recipe = CrucibleCrafting.getRecipe(ingList.get(0), ingList.get(1), ingList.get(2), ingList.get(3), ingList.get(4)); //this.setDrops(recipe.getDropsCooked()); this.setStatus(true); - System.out.println("Ready to harvest: " + this.getDrops()); world.setBlockState(pos, state.withProperty(PrimalAPI.States.LAYERS, 6), 2); this.updateBlock(); this.markDirty(); diff --git a/kfc/src/main/resources/assets/forgecraft/models/item/e_particle.png b/kfc/src/main/resources/assets/forgecraft/models/item/e_particle.png new file mode 100644 index 0000000000000000000000000000000000000000..e557878f9b0081df0e6c571ed915f4780bf1a2fc GIT binary patch literal 159 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61SBU+%rFB|X`U{QAsV7vCj@daC~~-LPd)$i z?$?xTj^-IIp9ACFK7V={aJAiXe!J@v0mIGT4Z3dBCY+nlAN}mLRowa~J3GYg{eRVX zXUUaN&3PXSznt{pUt?*oMTj?KX|GSjMcIr5t;EiVqsx9UI;{|T9DHPlG0;W^Pgg&e IbxsLQ03WwL?f?J) literal 0 HcmV?d00001 diff --git a/kfc/src/main/resources/assets/forgecraft/models/item/toolAssembly.json b/kfc/src/main/resources/assets/forgecraft/models/item/toolAssembly.json new file mode 100644 index 00000000..eae3aed1 --- /dev/null +++ b/kfc/src/main/resources/assets/forgecraft/models/item/toolAssembly.json @@ -0,0 +1,66 @@ +{ + "__comment": "Designed by Kitsushadow with Cubik Studio - https://cubik.studio", + "textures": { + "particle": "blocks/e_particle", + "texture": "blocks/stone" + }, + "elements": [ + { + "__comment": "Box1", + "from": [ 0, 0, 0 ], + "to": [ 16, 8, 7 ], + "faces": { + "down": { "uv": [ 0, 9, 16, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 7 ], "texture": "#texture" }, + "north": { "uv": [ 0, 8, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 8, 16, 16 ], "texture": "#texture" }, + "west": { "uv": [ 0, 8, 7, 16 ], "texture": "#texture" }, + "east": { "uv": [ 9, 8, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box1", + "from": [ 0, 0, 9 ], + "to": [ 16, 8, 16 ], + "faces": { + "down": { "uv": [ 0, 9, 16, 16 ], "texture": "#texture" }, + "up": { "uv": [ 0, 0, 16, 7 ], "texture": "#texture" }, + "north": { "uv": [ 0, 8, 16, 16 ], "texture": "#texture" }, + "south": { "uv": [ 0, 8, 16, 16 ], "texture": "#texture" }, + "west": { "uv": [ 0, 8, 7, 16 ], "texture": "#texture" }, + "east": { "uv": [ 9, 8, 16, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box4", + "from": [ 0, 0, 7 ], + "to": [ 7, 8, 9 ], + "faces": { + "down": { "uv": [ 0, 7, 7, 9 ], "texture": "#texture" }, + "up": { "uv": [ 0, 7, 7, 9 ], "texture": "#texture" }, + "west": { "uv": [ 7, 8, 9, 16 ], "texture": "#texture" }, + "east": { "uv": [ 7, 8, 9, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box4", + "from": [ 9, 0, 7 ], + "to": [ 16, 8, 9 ], + "faces": { + "down": { "uv": [ 0, 7, 7, 9 ], "texture": "#texture" }, + "up": { "uv": [ 0, 7, 7, 9 ], "texture": "#texture" }, + "west": { "uv": [ 7, 8, 9, 16 ], "texture": "#texture" }, + "east": { "uv": [ 7, 8, 9, 16 ], "texture": "#texture" } + } + }, + { + "__comment": "Box6", + "from": [ 7, 0, 7 ], + "to": [ 9, 1, 9 ], + "faces": { + "down": { "uv": [ 7, 7, 9, 9 ], "texture": "#texture" }, + "up": { "uv": [ 7, 7, 9, 9 ], "texture": "#texture" } + } + } + ] +} \ No newline at end of file diff --git a/kfc/src/main/resources/mcmod.info b/kfc/src/main/resources/mcmod.info index 3ce8467b..3fcca40c 100644 --- a/kfc/src/main/resources/mcmod.info +++ b/kfc/src/main/resources/mcmod.info @@ -2,7 +2,7 @@ "modid": "forgecraft", "name": "Kitsu's Forgecraft", "description": "Forged with sweat and blood", - "version": "1.6.02", + "version": "1.6.03", "mcversion": "1.12.2", "url": "", "updateUrl": "",