fixing the bugs
This commit is contained in:
@@ -6,7 +6,7 @@ org.gradle.jvmargs=-Xmx3G
|
|||||||
mod_group=nmd.primal.forgecraft
|
mod_group=nmd.primal.forgecraft
|
||||||
mod_name=ForgeCraft
|
mod_name=ForgeCraft
|
||||||
|
|
||||||
mod_version=1.6.02
|
mod_version=1.6.03
|
||||||
forge_version=14.23.4.2744
|
forge_version=14.23.4.2744
|
||||||
mcp_mappings=snapshot_20171003
|
mcp_mappings=snapshot_20171003
|
||||||
mc_version=1.12.2
|
mc_version=1.12.2
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ public class ModInfo {
|
|||||||
//public static final String MOD_PREFIX = MOD_ID + ":";
|
//public static final String MOD_PREFIX = MOD_ID + ":";
|
||||||
public static final String MOD_CHANNEL = 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 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,);";
|
public static final String DEPENDENCIES = "required-after:forge@[14.21.1.2400,);" + "required-after:primal@[0.6.69,);";
|
||||||
|
|
||||||
|
|||||||
@@ -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<ItemStack> ingList = NonNullList.<ItemStack>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;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
@@ -69,23 +69,24 @@ public class CastingForm extends CustomContainerFacing implements CastingFormHan
|
|||||||
SlottedTongs tongs = (SlottedTongs) pItem.getItem();
|
SlottedTongs tongs = (SlottedTongs) pItem.getItem();
|
||||||
if(tongs.getSlotList().get(0).getItem().equals(Item.getItemFromBlock(ModBlocks.nbtCrucible))) {
|
if(tongs.getSlotList().get(0).getItem().equals(Item.getItemFromBlock(ModBlocks.nbtCrucible))) {
|
||||||
ItemStack tongsStack = tongs.getSlotList().get(0).copy();
|
ItemStack tongsStack = tongs.getSlotList().get(0).copy();
|
||||||
|
|
||||||
NBTTagCompound tag = tongsStack.getTagCompound().copy();
|
NBTTagCompound tag = tongsStack.getTagCompound().copy();
|
||||||
|
|
||||||
if(tag != null){
|
if(tag != null){
|
||||||
NonNullList<ItemStack> ingList = NonNullList.<ItemStack>withSize(5, ItemStack.EMPTY);
|
NonNullList<ItemStack> ingList = NonNullList.<ItemStack>withSize(5, ItemStack.EMPTY);
|
||||||
NonNullList<ItemStack> ingListEmpty = NonNullList.<ItemStack>withSize(5, ItemStack.EMPTY);
|
NonNullList<ItemStack> ingListEmpty = NonNullList.<ItemStack>withSize(5, ItemStack.EMPTY);
|
||||||
ItemStackHelper.loadAllItems(tag.getCompoundTag("BlockEntityTag"), ingList);
|
ItemStackHelper.loadAllItems(tag.getCompoundTag("BlockEntityTag"), ingList);
|
||||||
|
CrucibleCrafting crucibleRecipe = CrucibleCrafting.getRecipe(ingList.get(0), ingList.get(1), ingList.get(2), ingList.get(3), ingList.get(4));
|
||||||
CrucibleCrafting recipe = CrucibleCrafting.getRecipe(ingList.get(0), ingList.get(1), ingList.get(2), ingList.get(3), ingList.get(4));
|
if(crucibleRecipe != null){
|
||||||
if(recipe != null){
|
|
||||||
if(tag.getCompoundTag("BlockEntityTag").getBoolean("status") && tag.getCompoundTag("BlockEntityTag").getInteger("hot") == 15){
|
if(tag.getCompoundTag("BlockEntityTag").getBoolean("status") && tag.getCompoundTag("BlockEntityTag").getInteger("hot") == 15){
|
||||||
Item[] tempArray = new Item[25];
|
Item[] tempArray = new Item[25];
|
||||||
for(int i=0; i<25; i++){
|
for(int i=0; i<25; i++){
|
||||||
tempArray[i] = tile.getSlotStack(i).getItem();
|
tempArray[i] = tile.getSlotStack(i).getItem();
|
||||||
}
|
}
|
||||||
|
|
||||||
CastingCrafting casting = CastingCrafting.getRecipe(tongsStack, tempArray);
|
CastingCrafting casting = CastingCrafting.getRecipe(tongsStack, tempArray);
|
||||||
if(casting != null){
|
if(casting != null){
|
||||||
NBTTagCompound tagOutput = recipe.getDropsCooked().getTagCompound().copy();
|
NBTTagCompound tagOutput = casting.getOutput().getSubCompound("tag");
|
||||||
|
|
||||||
if(tagOutput != null) {
|
if(tagOutput != null) {
|
||||||
ItemStack dropStack = casting.getOutput();
|
ItemStack dropStack = casting.getOutput();
|
||||||
dropStack.setTagCompound(new NBTTagCompound());
|
dropStack.setTagCompound(new NBTTagCompound());
|
||||||
@@ -121,6 +122,17 @@ public class CastingForm extends CustomContainerFacing implements CastingFormHan
|
|||||||
tongs.getSlotList().get(0).setTagCompound(tag);
|
tongs.getSlotList().get(0).setTagCompound(tag);
|
||||||
return true;
|
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;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -28,6 +28,7 @@ import nmd.primal.core.common.helper.NBTHelper;
|
|||||||
import nmd.primal.core.common.helper.PlayerHelper;
|
import nmd.primal.core.common.helper.PlayerHelper;
|
||||||
import nmd.primal.forgecraft.ModInfo;
|
import nmd.primal.forgecraft.ModInfo;
|
||||||
import nmd.primal.forgecraft.crafting.CrucibleCrafting;
|
import nmd.primal.forgecraft.crafting.CrucibleCrafting;
|
||||||
|
import nmd.primal.forgecraft.init.ModBlocks;
|
||||||
import nmd.primal.forgecraft.items.SlottedTongs;
|
import nmd.primal.forgecraft.items.SlottedTongs;
|
||||||
import nmd.primal.forgecraft.tiles.TileNBTCrucible;
|
import nmd.primal.forgecraft.tiles.TileNBTCrucible;
|
||||||
|
|
||||||
@@ -149,9 +150,8 @@ public class NBTCrucible extends BlockContainer implements ITileEntityProvider {
|
|||||||
@Override
|
@Override
|
||||||
public boolean removedByPlayer(IBlockState state, World world, BlockPos pos, EntityPlayer player, boolean willHarvest)
|
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);
|
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)
|
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));
|
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) {
|
if (!world.isRemote) {
|
||||||
TileEntity tile = world.getTileEntity(pos);
|
TileEntity tile = world.getTileEntity(pos);
|
||||||
if (tile instanceof TileNBTCrucible) {
|
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));
|
world.setBlockState(pos, this.getReplacementBlock(world, pos, state));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -27,7 +27,6 @@ public class ModBlocks {
|
|||||||
public static Block bloomery_adobe;
|
public static Block bloomery_adobe;
|
||||||
public static Block blockbreaker;
|
public static Block blockbreaker;
|
||||||
public static Block castingform;
|
public static Block castingform;
|
||||||
public static Block castingblock;
|
|
||||||
|
|
||||||
public static Block pistonbellowsoak;
|
public static Block pistonbellowsoak;
|
||||||
public static Block pistonbellowsjungle;
|
public static Block pistonbellowsjungle;
|
||||||
@@ -87,7 +86,6 @@ public class ModBlocks {
|
|||||||
bloomery_adobe = new BloomeryBase(Material.ROCK, "bloomery_adobe", 5000);
|
bloomery_adobe = new BloomeryBase(Material.ROCK, "bloomery_adobe", 5000);
|
||||||
blockbreaker = new Breaker(Material.WOOD, "blockbreaker", 4.0f);
|
blockbreaker = new Breaker(Material.WOOD, "blockbreaker", 4.0f);
|
||||||
castingform = new CastingForm(Material.WOOD, "castingform");
|
castingform = new CastingForm(Material.WOOD, "castingform");
|
||||||
castingblock = new CastingBlock(Material.ROCK, "castingblock");
|
|
||||||
|
|
||||||
pistonbellowsoak = new PistonBellows(Material.WOOD, "pistonbellowsoak");
|
pistonbellowsoak = new PistonBellows(Material.WOOD, "pistonbellowsoak");
|
||||||
pistonbellowsjungle = new PistonBellows(Material.WOOD, "pistonbellowsjungle");
|
pistonbellowsjungle = new PistonBellows(Material.WOOD, "pistonbellowsjungle");
|
||||||
@@ -377,7 +375,6 @@ public class ModBlocks {
|
|||||||
registerBlockWithItem(bloomery_adobe);
|
registerBlockWithItem(bloomery_adobe);
|
||||||
registerBlockWithItem(blockbreaker);
|
registerBlockWithItem(blockbreaker);
|
||||||
registerBlockWithItem(castingform);
|
registerBlockWithItem(castingform);
|
||||||
registerBlockWithItem(castingblock);
|
|
||||||
|
|
||||||
registerBlockWithItem(pistonbellowsoak);
|
registerBlockWithItem(pistonbellowsoak);
|
||||||
registerBlockWithItem(pistonbellowsjungle);
|
registerBlockWithItem(pistonbellowsjungle);
|
||||||
@@ -437,7 +434,6 @@ public class ModBlocks {
|
|||||||
registerRender(forge_brick);
|
registerRender(forge_brick);
|
||||||
registerRender(forge_adobe);
|
registerRender(forge_adobe);
|
||||||
registerRender(castingform);
|
registerRender(castingform);
|
||||||
registerRender(castingblock);
|
|
||||||
|
|
||||||
registerRender(blockbreaker);
|
registerRender(blockbreaker);
|
||||||
registerRender(pistonbellowsoak);
|
registerRender(pistonbellowsoak);
|
||||||
|
|||||||
@@ -3,10 +3,12 @@ package nmd.primal.forgecraft.init;
|
|||||||
import net.minecraft.block.BlockPlanks;
|
import net.minecraft.block.BlockPlanks;
|
||||||
import net.minecraft.init.Blocks;
|
import net.minecraft.init.Blocks;
|
||||||
import net.minecraft.init.Items;
|
import net.minecraft.init.Items;
|
||||||
|
import net.minecraft.inventory.ItemStackHelper;
|
||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.item.crafting.Ingredient;
|
import net.minecraft.item.crafting.Ingredient;
|
||||||
import net.minecraft.nbt.NBTTagCompound;
|
import net.minecraft.nbt.NBTTagCompound;
|
||||||
|
import net.minecraft.util.NonNullList;
|
||||||
import net.minecraftforge.oredict.OreDictionary;
|
import net.minecraftforge.oredict.OreDictionary;
|
||||||
import net.minecraftforge.oredict.OreIngredient;
|
import net.minecraftforge.oredict.OreIngredient;
|
||||||
import nmd.primal.core.api.PrimalAPI;
|
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.CastingCrafting;
|
||||||
import nmd.primal.forgecraft.crafting.CrucibleCrafting;
|
import nmd.primal.forgecraft.crafting.CrucibleCrafting;
|
||||||
import nmd.primal.forgecraft.crafting.ForgeCrafting;
|
import nmd.primal.forgecraft.crafting.ForgeCrafting;
|
||||||
|
import nmd.primal.forgecraft.util.ToolNBT;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
import java.util.Random;
|
import java.util.Random;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -28,9 +32,14 @@ public class ModCrafting{
|
|||||||
Random rand = new Random();
|
Random rand = new Random();
|
||||||
ItemStack emptyAir = ItemStack.EMPTY;
|
ItemStack emptyAir = ItemStack.EMPTY;
|
||||||
|
|
||||||
|
NBTTagCompound newTag = new NBTTagCompound();
|
||||||
|
|
||||||
|
|
||||||
NBTTagCompound setHot = new NBTTagCompound();
|
NBTTagCompound setHot = new NBTTagCompound();
|
||||||
setHot.setBoolean("hot", true);
|
setHot.setBoolean("hot", true);
|
||||||
|
|
||||||
|
ItemStack hotBronzeIngot = new ItemStack(ModItems.bronzeingotball, 1);
|
||||||
|
hotBronzeIngot.setTagCompound(setHot);
|
||||||
ItemStack hotIronIngot = new ItemStack(ModItems.ironingotball, 1);
|
ItemStack hotIronIngot = new ItemStack(ModItems.ironingotball, 1);
|
||||||
hotIronIngot.setTagCompound(setHot);
|
hotIronIngot.setTagCompound(setHot);
|
||||||
ItemStack hotCleanIronIngot = new ItemStack(ModItems.ironcleaningotball, 1);
|
ItemStack hotCleanIronIngot = new ItemStack(ModItems.ironcleaningotball, 1);
|
||||||
@@ -40,15 +49,14 @@ public class ModCrafting{
|
|||||||
ItemStack hotWootzIngot = new ItemStack(ModItems.wootzingotball, 1);
|
ItemStack hotWootzIngot = new ItemStack(ModItems.wootzingotball, 1);
|
||||||
hotWootzIngot.setTagCompound(setHot);
|
hotWootzIngot.setTagCompound(setHot);
|
||||||
|
|
||||||
|
ItemStack hotBronzeChunk = new ItemStack( ModItems.bronzechunk, 1);
|
||||||
|
hotBronzeChunk.setTagCompound(setHot);
|
||||||
ItemStack hotChunk = new ItemStack( ModItems.wroughtironchunk, 1);
|
ItemStack hotChunk = new ItemStack( ModItems.wroughtironchunk, 1);
|
||||||
hotChunk.setTagCompound(setHot);
|
hotChunk.setTagCompound(setHot);
|
||||||
|
|
||||||
ItemStack hotCleanChunk = new ItemStack(ModItems.ironcleanchunk, 1);
|
ItemStack hotCleanChunk = new ItemStack(ModItems.ironcleanchunk, 1);
|
||||||
hotCleanChunk.setTagCompound(setHot);
|
hotCleanChunk.setTagCompound(setHot);
|
||||||
|
|
||||||
ItemStack hotSteelChunk = new ItemStack(ModItems.steelchunk, 1);
|
ItemStack hotSteelChunk = new ItemStack(ModItems.steelchunk, 1);
|
||||||
hotSteelChunk.setTagCompound(setHot);
|
hotSteelChunk.setTagCompound(setHot);
|
||||||
|
|
||||||
ItemStack hotWootzChunk = new ItemStack(ModItems.wootzchunk, 1);
|
ItemStack hotWootzChunk = new ItemStack(ModItems.wootzchunk, 1);
|
||||||
hotWootzChunk.setTagCompound(setHot);
|
hotWootzChunk.setTagCompound(setHot);
|
||||||
|
|
||||||
@@ -60,61 +68,191 @@ public class ModCrafting{
|
|||||||
ItemStack redstone = new ItemStack(Items.REDSTONE, 1);
|
ItemStack redstone = new ItemStack(Items.REDSTONE, 1);
|
||||||
ItemStack lapis = new ItemStack(Items.DYE, 1, 4);
|
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);
|
ItemStack pickaxehead = new ItemStack(ModItems.pickaxehead, 1);
|
||||||
|
pickaxehead.setTagCompound(newTag);
|
||||||
|
toolArray[4] = pickaxehead;
|
||||||
ItemStack ironaxehead = new ItemStack(ModItems.ironaxehead, 1);
|
ItemStack ironaxehead = new ItemStack(ModItems.ironaxehead, 1);
|
||||||
|
ironaxehead.setTagCompound(newTag);
|
||||||
|
toolArray[5] = ironaxehead;
|
||||||
ItemStack ironshovelhead = new ItemStack(ModItems.ironshovelhead, 1);
|
ItemStack ironshovelhead = new ItemStack(ModItems.ironshovelhead, 1);
|
||||||
|
ironshovelhead.setTagCompound(newTag);
|
||||||
|
toolArray[6] = ironshovelhead;
|
||||||
ItemStack ironhoehead = new ItemStack(ModItems.ironhoehead, 1);
|
ItemStack ironhoehead = new ItemStack(ModItems.ironhoehead, 1);
|
||||||
|
ironhoehead.setTagCompound(newTag);
|
||||||
|
toolArray[7] = ironhoehead;
|
||||||
|
|
||||||
ItemStack cleanpickaxehead = new ItemStack(ModItems.cleanironpickaxehead, 1);
|
ItemStack cleanpickaxehead = new ItemStack(ModItems.cleanironpickaxehead, 1);
|
||||||
|
cleanpickaxehead.setTagCompound(newTag);
|
||||||
|
toolArray[8] = cleanpickaxehead;
|
||||||
ItemStack cleanaxehead = new ItemStack(ModItems.cleanironaxehead, 1);
|
ItemStack cleanaxehead = new ItemStack(ModItems.cleanironaxehead, 1);
|
||||||
|
cleanaxehead.setTagCompound(newTag);
|
||||||
|
toolArray[9] = cleanaxehead;
|
||||||
ItemStack cleanshovelhead = new ItemStack(ModItems.cleanironshovelhead, 1);
|
ItemStack cleanshovelhead = new ItemStack(ModItems.cleanironshovelhead, 1);
|
||||||
|
cleanshovelhead.setTagCompound(newTag);
|
||||||
|
toolArray[10] = cleanshovelhead;
|
||||||
ItemStack cleanhoehead = new ItemStack(ModItems.cleanironhoehead, 1);
|
ItemStack cleanhoehead = new ItemStack(ModItems.cleanironhoehead, 1);
|
||||||
|
cleanhoehead.setTagCompound(newTag);
|
||||||
|
toolArray[11] =cleanhoehead ;
|
||||||
|
|
||||||
ItemStack steelpickaxehead = new ItemStack(ModItems.steelpickaxehead, 1);
|
ItemStack steelpickaxehead = new ItemStack(ModItems.steelpickaxehead, 1);
|
||||||
|
steelpickaxehead.setTagCompound(newTag);
|
||||||
|
toolArray[12] = steelpickaxehead;
|
||||||
ItemStack steelaxehead = new ItemStack(ModItems.steelaxehead, 1);
|
ItemStack steelaxehead = new ItemStack(ModItems.steelaxehead, 1);
|
||||||
|
steelaxehead.setTagCompound(newTag);
|
||||||
|
toolArray[13] =steelaxehead ;
|
||||||
ItemStack steelshovelhead = new ItemStack(ModItems.steelshovelhead, 1);
|
ItemStack steelshovelhead = new ItemStack(ModItems.steelshovelhead, 1);
|
||||||
|
steelshovelhead.setTagCompound(newTag);
|
||||||
|
toolArray[14] = steelshovelhead;
|
||||||
ItemStack steelhoehead = new ItemStack(ModItems.steelhoehead, 1);
|
ItemStack steelhoehead = new ItemStack(ModItems.steelhoehead, 1);
|
||||||
|
steelhoehead.setTagCompound(newTag);
|
||||||
|
toolArray[15] =steelhoehead ;
|
||||||
|
|
||||||
ItemStack wootzpickaxehead = new ItemStack(ModItems.wootzpickaxehead, 1);
|
ItemStack wootzpickaxehead = new ItemStack(ModItems.wootzpickaxehead, 1);
|
||||||
|
wootzpickaxehead.setTagCompound(newTag);
|
||||||
|
toolArray[16] = wootzpickaxehead;
|
||||||
ItemStack wootzaxehead = new ItemStack(ModItems.wootzaxehead, 1);
|
ItemStack wootzaxehead = new ItemStack(ModItems.wootzaxehead, 1);
|
||||||
|
wootzaxehead.setTagCompound(newTag);
|
||||||
|
toolArray[17] = wootzaxehead;
|
||||||
ItemStack wootzshovelhead = new ItemStack(ModItems.wootzshovelhead, 1);
|
ItemStack wootzshovelhead = new ItemStack(ModItems.wootzshovelhead, 1);
|
||||||
|
wootzshovelhead.setTagCompound(newTag);
|
||||||
|
toolArray[18] =wootzshovelhead ;
|
||||||
ItemStack wootzhoehead = new ItemStack(ModItems.wootzhoehead, 1);
|
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);
|
ItemStack hotpickaxehead = pickaxehead.copy();
|
||||||
hotcleanpickaxehead.setTagCompound(setHot);
|
hotToolArray[0] =hotpickaxehead;
|
||||||
ItemStack hotcleanaxehead = new ItemStack(ModItems.cleanironaxehead, 1);
|
ItemStack hotironaxehead = ironaxehead.copy();
|
||||||
hotcleanaxehead.setTagCompound(setHot);
|
hotToolArray[1] =hotironaxehead;
|
||||||
ItemStack hotcleanshovelhead = new ItemStack(ModItems.cleanironshovelhead, 1);
|
ItemStack hotironshovelhead = ironshovelhead.copy();
|
||||||
hotcleanshovelhead.setTagCompound(setHot);
|
hotToolArray[2] =hotironshovelhead;
|
||||||
ItemStack hotcleanhoehead = new ItemStack(ModItems.cleanironhoehead, 1);
|
ItemStack hotironhoehead = ironhoehead.copy();
|
||||||
hotcleanhoehead.setTagCompound(setHot);
|
hotToolArray[3] =hotironhoehead;
|
||||||
|
|
||||||
ItemStack hotsteelpickaxehead = new ItemStack(ModItems.steelpickaxehead, 1);
|
ItemStack hotcleanpickaxehead = cleanpickaxehead.copy();
|
||||||
hotsteelpickaxehead.setTagCompound(setHot);
|
hotToolArray[4] = hotcleanpickaxehead;
|
||||||
ItemStack hotsteelaxehead = new ItemStack(ModItems.steelaxehead, 1);
|
ItemStack hotcleanaxehead = cleanaxehead.copy();
|
||||||
hotsteelaxehead.setTagCompound(setHot);
|
hotToolArray[5] = hotcleanaxehead;
|
||||||
ItemStack hotsteelshovelhead = new ItemStack(ModItems.steelshovelhead, 1);
|
ItemStack hotcleanshovelhead = cleanshovelhead.copy();
|
||||||
hotsteelshovelhead.setTagCompound(setHot);
|
hotToolArray[6] = hotcleanshovelhead;
|
||||||
ItemStack hotsteelhoehead = new ItemStack(ModItems.steelhoehead, 1);
|
ItemStack hotcleanhoehead = cleanhoehead.copy();
|
||||||
hotsteelhoehead.setTagCompound(setHot);
|
hotToolArray[7] = hotcleanhoehead;
|
||||||
|
|
||||||
ItemStack hotwootzpickaxehead = new ItemStack(ModItems.wootzpickaxehead, 1);
|
ItemStack hotsteelpickaxehead = steelpickaxehead.copy();
|
||||||
hotwootzpickaxehead.setTagCompound(setHot);
|
hotToolArray[8] = hotsteelpickaxehead;
|
||||||
ItemStack hotwootzaxehead = new ItemStack(ModItems.wootzaxehead, 1);
|
ItemStack hotsteelaxehead = steelaxehead.copy();
|
||||||
hotwootzaxehead.setTagCompound(setHot);
|
hotToolArray[9] = hotsteelaxehead;
|
||||||
ItemStack hotwootzshovelhead = new ItemStack(ModItems.wootzshovelhead, 1);
|
ItemStack hotsteelshovelhead = steelshovelhead.copy();
|
||||||
hotwootzshovelhead.setTagCompound(setHot);
|
hotToolArray[10] = hotsteelshovelhead;
|
||||||
ItemStack hotwootzhoehead = new ItemStack(ModItems.wootzhoehead, 1);
|
ItemStack hotsteelhoehead = steelhoehead.copy();
|
||||||
hotwootzhoehead.setTagCompound(setHot);
|
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));
|
//RecipeHandler.addSmelting(ModItems.softcrucible, new ItemStack(ModBlocks.nbtCrucible, 1));
|
||||||
|
|
||||||
@@ -131,9 +269,21 @@ public class ModCrafting{
|
|||||||
Ingredient.EMPTY,
|
Ingredient.EMPTY,
|
||||||
new ItemStack(Blocks.IRON_ORE, 1),
|
new ItemStack(Blocks.IRON_ORE, 1),
|
||||||
new ItemStack(ModItems.ironingotball, 1),
|
new ItemStack(ModItems.ironingotball, 1),
|
||||||
100,
|
1400,
|
||||||
100,
|
1200,
|
||||||
1000);
|
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(
|
CrucibleCrafting.addRecipe(
|
||||||
new OreIngredient("dustIron"),
|
new OreIngredient("dustIron"),
|
||||||
@@ -143,9 +293,9 @@ public class ModCrafting{
|
|||||||
Ingredient.EMPTY,
|
Ingredient.EMPTY,
|
||||||
new ItemStack(PrimalAPI.Items.IRON_DUST, 1),
|
new ItemStack(PrimalAPI.Items.IRON_DUST, 1),
|
||||||
new ItemStack(ModItems.ironcleaningotball, 1),
|
new ItemStack(ModItems.ironcleaningotball, 1),
|
||||||
100,
|
1550,
|
||||||
100,
|
1200,
|
||||||
1000);
|
800);
|
||||||
|
|
||||||
CrucibleCrafting.addRecipe(
|
CrucibleCrafting.addRecipe(
|
||||||
Ingredient.fromStacks(new ItemStack(ModItems.ironcleaningotball, 1)),
|
Ingredient.fromStacks(new ItemStack(ModItems.ironcleaningotball, 1)),
|
||||||
@@ -155,8 +305,8 @@ public class ModCrafting{
|
|||||||
Ingredient.EMPTY,
|
Ingredient.EMPTY,
|
||||||
new ItemStack(ModItems.ironcleaningotball, 1),
|
new ItemStack(ModItems.ironcleaningotball, 1),
|
||||||
new ItemStack(ModItems.steelingotball, 1),
|
new ItemStack(ModItems.steelingotball, 1),
|
||||||
100,
|
2100,
|
||||||
100,
|
1500,
|
||||||
1000);
|
1000);
|
||||||
|
|
||||||
CrucibleCrafting.addRecipe(
|
CrucibleCrafting.addRecipe(
|
||||||
@@ -167,9 +317,9 @@ public class ModCrafting{
|
|||||||
Ingredient.fromStacks(new ItemStack(PrimalAPI.Items.CHARCOAL_PURE, 1)),
|
Ingredient.fromStacks(new ItemStack(PrimalAPI.Items.CHARCOAL_PURE, 1)),
|
||||||
new ItemStack(PrimalAPI.Blocks.ORE_MAGNETITE, 1),
|
new ItemStack(PrimalAPI.Blocks.ORE_MAGNETITE, 1),
|
||||||
new ItemStack(ModItems.wootzingotball, 1),
|
new ItemStack(ModItems.wootzingotball, 1),
|
||||||
100,
|
2100,
|
||||||
100,
|
1800,
|
||||||
1000);
|
1500);
|
||||||
|
|
||||||
CrucibleCrafting.addRecipe(
|
CrucibleCrafting.addRecipe(
|
||||||
new OreIngredient("magnetite"),
|
new OreIngredient("magnetite"),
|
||||||
@@ -179,9 +329,9 @@ public class ModCrafting{
|
|||||||
Ingredient.fromStacks(new ItemStack(PrimalAPI.Items.CHARCOAL_PURE, 1)),
|
Ingredient.fromStacks(new ItemStack(PrimalAPI.Items.CHARCOAL_PURE, 1)),
|
||||||
new ItemStack(PrimalAPI.Blocks.ORE_MAGNETITE, 1),
|
new ItemStack(PrimalAPI.Blocks.ORE_MAGNETITE, 1),
|
||||||
new ItemStack(ModItems.wootzingotball, 1),
|
new ItemStack(ModItems.wootzingotball, 1),
|
||||||
100,
|
2100,
|
||||||
100,
|
1800,
|
||||||
1000);
|
1500);
|
||||||
|
|
||||||
CrucibleCrafting.addRecipe(
|
CrucibleCrafting.addRecipe(
|
||||||
new OreIngredient("dustCopper"),
|
new OreIngredient("dustCopper"),
|
||||||
@@ -191,9 +341,9 @@ public class ModCrafting{
|
|||||||
Ingredient.EMPTY,
|
Ingredient.EMPTY,
|
||||||
new ItemStack(PrimalAPI.Items.SLAG, 1),
|
new ItemStack(PrimalAPI.Items.SLAG, 1),
|
||||||
new ItemStack(ModItems.bronzeingotball, 1),
|
new ItemStack(ModItems.bronzeingotball, 1),
|
||||||
100,
|
1100,
|
||||||
100,
|
800,
|
||||||
1000);
|
600);
|
||||||
|
|
||||||
NBTTagCompound tagBronzeDefault = new NBTTagCompound();
|
NBTTagCompound tagBronzeDefault = new NBTTagCompound();
|
||||||
tagBronzeDefault.setString("upgrades", "");
|
tagBronzeDefault.setString("upgrades", "");
|
||||||
@@ -207,9 +357,9 @@ public class ModCrafting{
|
|||||||
Ingredient.EMPTY,
|
Ingredient.EMPTY,
|
||||||
new ItemStack(PrimalAPI.Items.SLAG, 1),
|
new ItemStack(PrimalAPI.Items.SLAG, 1),
|
||||||
defaultBronze,
|
defaultBronze,
|
||||||
100,
|
1100,
|
||||||
100,
|
800,
|
||||||
1000);
|
600);
|
||||||
|
|
||||||
CrucibleCrafting.addRecipe(
|
CrucibleCrafting.addRecipe(
|
||||||
new OreIngredient("ingotBronze"),
|
new OreIngredient("ingotBronze"),
|
||||||
@@ -219,9 +369,9 @@ public class ModCrafting{
|
|||||||
Ingredient.EMPTY,
|
Ingredient.EMPTY,
|
||||||
new ItemStack(PrimalAPI.Items.SLAG, 1),
|
new ItemStack(PrimalAPI.Items.SLAG, 1),
|
||||||
defaultBronze,
|
defaultBronze,
|
||||||
100,
|
1100,
|
||||||
100,
|
800,
|
||||||
1000);
|
600);
|
||||||
|
|
||||||
NBTTagCompound tag = new NBTTagCompound();
|
NBTTagCompound tag = new NBTTagCompound();
|
||||||
tag.setString("upgrades", "redstone");
|
tag.setString("upgrades", "redstone");
|
||||||
@@ -235,9 +385,9 @@ public class ModCrafting{
|
|||||||
Ingredient.EMPTY,
|
Ingredient.EMPTY,
|
||||||
new ItemStack(PrimalAPI.Items.SLAG, 1),
|
new ItemStack(PrimalAPI.Items.SLAG, 1),
|
||||||
redBronze,
|
redBronze,
|
||||||
100,
|
1100,
|
||||||
100,
|
800,
|
||||||
100);
|
600);
|
||||||
|
|
||||||
NBTTagCompound diamondBronzeTag = new NBTTagCompound();
|
NBTTagCompound diamondBronzeTag = new NBTTagCompound();
|
||||||
tag.setString("upgrades", "diamond");
|
tag.setString("upgrades", "diamond");
|
||||||
@@ -251,9 +401,9 @@ public class ModCrafting{
|
|||||||
Ingredient.EMPTY,
|
Ingredient.EMPTY,
|
||||||
new ItemStack(PrimalAPI.Items.SLAG, 1),
|
new ItemStack(PrimalAPI.Items.SLAG, 1),
|
||||||
diamondBronze,
|
diamondBronze,
|
||||||
100,
|
1100,
|
||||||
100,
|
800,
|
||||||
100);
|
600);
|
||||||
|
|
||||||
NBTTagCompound emeraldBronzeTag = new NBTTagCompound();
|
NBTTagCompound emeraldBronzeTag = new NBTTagCompound();
|
||||||
tag.setString("upgrades", "emerald");
|
tag.setString("upgrades", "emerald");
|
||||||
@@ -267,9 +417,9 @@ public class ModCrafting{
|
|||||||
Ingredient.EMPTY,
|
Ingredient.EMPTY,
|
||||||
new ItemStack(PrimalAPI.Items.SLAG, 1),
|
new ItemStack(PrimalAPI.Items.SLAG, 1),
|
||||||
emeraldBronze,
|
emeraldBronze,
|
||||||
100,
|
1100,
|
||||||
100,
|
800,
|
||||||
100);
|
600);
|
||||||
|
|
||||||
NBTTagCompound tagBronzeLapis = new NBTTagCompound();
|
NBTTagCompound tagBronzeLapis = new NBTTagCompound();
|
||||||
tagBronzeDefault.setString("upgrades", "lapis");
|
tagBronzeDefault.setString("upgrades", "lapis");
|
||||||
@@ -283,9 +433,9 @@ public class ModCrafting{
|
|||||||
Ingredient.EMPTY,
|
Ingredient.EMPTY,
|
||||||
new ItemStack(PrimalAPI.Items.SLAG, 1),
|
new ItemStack(PrimalAPI.Items.SLAG, 1),
|
||||||
lapisBronze,
|
lapisBronze,
|
||||||
100,
|
1100,
|
||||||
100,
|
800,
|
||||||
1000);
|
600);
|
||||||
|
|
||||||
CrucibleCrafting.addRecipe(
|
CrucibleCrafting.addRecipe(
|
||||||
new OreIngredient("dustCopper"),
|
new OreIngredient("dustCopper"),
|
||||||
@@ -295,9 +445,9 @@ public class ModCrafting{
|
|||||||
new OreIngredient("dustRedstone"),
|
new OreIngredient("dustRedstone"),
|
||||||
new ItemStack(PrimalAPI.Items.SLAG, 1),
|
new ItemStack(PrimalAPI.Items.SLAG, 1),
|
||||||
redBronze,
|
redBronze,
|
||||||
100,
|
1100,
|
||||||
100,
|
800,
|
||||||
1000);
|
600);
|
||||||
|
|
||||||
CrucibleCrafting.addRecipe(
|
CrucibleCrafting.addRecipe(
|
||||||
new OreIngredient("dustCopper"),
|
new OreIngredient("dustCopper"),
|
||||||
@@ -307,9 +457,9 @@ public class ModCrafting{
|
|||||||
new OreIngredient("dustDiamond"),
|
new OreIngredient("dustDiamond"),
|
||||||
new ItemStack(PrimalAPI.Items.SLAG, 1),
|
new ItemStack(PrimalAPI.Items.SLAG, 1),
|
||||||
diamondBronze,
|
diamondBronze,
|
||||||
100,
|
1100,
|
||||||
100,
|
800,
|
||||||
1000);
|
600);
|
||||||
|
|
||||||
CrucibleCrafting.addRecipe(
|
CrucibleCrafting.addRecipe(
|
||||||
new OreIngredient("dustCopper"),
|
new OreIngredient("dustCopper"),
|
||||||
@@ -319,9 +469,9 @@ public class ModCrafting{
|
|||||||
new OreIngredient("dustEmerald"),
|
new OreIngredient("dustEmerald"),
|
||||||
new ItemStack(PrimalAPI.Items.SLAG, 1),
|
new ItemStack(PrimalAPI.Items.SLAG, 1),
|
||||||
emeraldBronze,
|
emeraldBronze,
|
||||||
100,
|
1100,
|
||||||
100,
|
800,
|
||||||
1000);
|
600);
|
||||||
|
|
||||||
CrucibleCrafting.addRecipe(
|
CrucibleCrafting.addRecipe(
|
||||||
new OreIngredient("dustCopper"),
|
new OreIngredient("dustCopper"),
|
||||||
@@ -331,27 +481,10 @@ public class ModCrafting{
|
|||||||
new OreIngredient("dustLapis"),
|
new OreIngredient("dustLapis"),
|
||||||
new ItemStack(PrimalAPI.Items.SLAG, 1),
|
new ItemStack(PrimalAPI.Items.SLAG, 1),
|
||||||
lapisBronze,
|
lapisBronze,
|
||||||
100,
|
1100,
|
||||||
100,
|
800,
|
||||||
1000);
|
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***/
|
/***CASTING FORM***/
|
||||||
RecipeHandler.addShapedOreRecipe(new ItemStack(ModBlocks.castingform, 1),
|
RecipeHandler.addShapedOreRecipe(new ItemStack(ModBlocks.castingform, 1),
|
||||||
@@ -882,7 +1015,7 @@ public class ModCrafting{
|
|||||||
empty,muddd,muddd,muddd,empty,
|
empty,muddd,muddd,muddd,empty,
|
||||||
muddd,muddd,muddd,muddd,muddd,
|
muddd,muddd,muddd,muddd,muddd,
|
||||||
muddd,muddd,muddd,muddd,muddd },
|
muddd,muddd,muddd,muddd,muddd },
|
||||||
new ItemStack(ModItems.bronzepickaxehead, 1)
|
bronzepickaxehead
|
||||||
);
|
);
|
||||||
|
|
||||||
//Casting Shovel
|
//Casting Shovel
|
||||||
@@ -894,7 +1027,7 @@ public class ModCrafting{
|
|||||||
muddd,empty,empty,empty,muddd,
|
muddd,empty,empty,empty,muddd,
|
||||||
muddd,empty,empty,empty,muddd,
|
muddd,empty,empty,empty,muddd,
|
||||||
muddd,empty,muddd,empty,muddd },
|
muddd,empty,muddd,empty,muddd },
|
||||||
new ItemStack(ModItems.bronzeshovelhead, 1)
|
bronzeshovelhead
|
||||||
);
|
);
|
||||||
|
|
||||||
//Casting Axe
|
//Casting Axe
|
||||||
@@ -906,7 +1039,7 @@ public class ModCrafting{
|
|||||||
muddd,empty,empty,empty,muddd,
|
muddd,empty,empty,empty,muddd,
|
||||||
muddd,empty,muddd,muddd,muddd,
|
muddd,empty,muddd,muddd,muddd,
|
||||||
muddd,muddd,muddd,muddd,muddd },
|
muddd,muddd,muddd,muddd,muddd },
|
||||||
new ItemStack(ModItems.bronzeaxehead, 1)
|
bronzeaxehead
|
||||||
);
|
);
|
||||||
|
|
||||||
//Casting Hoe
|
//Casting Hoe
|
||||||
@@ -918,7 +1051,7 @@ public class ModCrafting{
|
|||||||
muddd,empty,muddd,muddd,muddd,
|
muddd,empty,muddd,muddd,muddd,
|
||||||
empty,muddd,muddd,muddd,muddd,
|
empty,muddd,muddd,muddd,muddd,
|
||||||
muddd,muddd,muddd,muddd,muddd },
|
muddd,muddd,muddd,muddd,muddd },
|
||||||
new ItemStack(ModItems.bronzehoehead, 1)
|
bronzehoehead
|
||||||
);
|
);
|
||||||
|
|
||||||
//Casting Gladius
|
//Casting Gladius
|
||||||
|
|||||||
@@ -12,7 +12,6 @@ import nmd.primal.core.api.PrimalAPI;
|
|||||||
import nmd.primal.forgecraft.items.*;
|
import nmd.primal.forgecraft.items.*;
|
||||||
import nmd.primal.forgecraft.items.armor.CustomHelmet;
|
import nmd.primal.forgecraft.items.armor.CustomHelmet;
|
||||||
import nmd.primal.forgecraft.items.blocks.ItemNBTCrucible;
|
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.BronzeToolPart;
|
||||||
import nmd.primal.forgecraft.items.parts.ToolPart;
|
import nmd.primal.forgecraft.items.parts.ToolPart;
|
||||||
import nmd.primal.forgecraft.items.tools.*;
|
import nmd.primal.forgecraft.items.tools.*;
|
||||||
@@ -47,13 +46,6 @@ public class ModItems {
|
|||||||
public static Item wootzingotball;
|
public static Item wootzingotball;
|
||||||
public static Item wootzchunk;
|
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 pickaxehead;
|
||||||
public static Item ironaxehead;
|
public static Item ironaxehead;
|
||||||
public static Item ironshovelhead;
|
public static Item ironshovelhead;
|
||||||
@@ -158,16 +150,6 @@ public class ModItems {
|
|||||||
longbow = new Longbow("longbow");
|
longbow = new Longbow("longbow");
|
||||||
//matchlockmusket = new Musket("matchlock_musket");
|
//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
|
TOOL PARTS
|
||||||
**********/
|
**********/
|
||||||
@@ -300,15 +282,6 @@ public class ModItems {
|
|||||||
|
|
||||||
//ForgeRegistries.ITEMS.register(test);
|
//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
|
TOOL PARTS
|
||||||
**********/
|
**********/
|
||||||
@@ -428,15 +401,6 @@ public class ModItems {
|
|||||||
|
|
||||||
//registerRender(test);
|
//registerRender(test);
|
||||||
|
|
||||||
/**********
|
|
||||||
CASTING PARTS
|
|
||||||
**********/
|
|
||||||
registerRender(cast_axe);
|
|
||||||
registerRender(cast_gladius);
|
|
||||||
registerRender(cast_hoe);
|
|
||||||
registerRender(cast_pickaxe);
|
|
||||||
registerRender(cast_shovel);
|
|
||||||
|
|
||||||
/**********
|
/**********
|
||||||
TOOL PARTS
|
TOOL PARTS
|
||||||
**********/
|
**********/
|
||||||
|
|||||||
@@ -16,7 +16,6 @@ public class ModTiles {
|
|||||||
registerTileEntity(TileAnvil.class, "anvil");
|
registerTileEntity(TileAnvil.class, "anvil");
|
||||||
registerTileEntity(TileBreaker.class, "breaker");
|
registerTileEntity(TileBreaker.class, "breaker");
|
||||||
registerTileEntity(TileCastingForm.class, "castingform");
|
registerTileEntity(TileCastingForm.class, "castingform");
|
||||||
registerTileEntity(TileCastingBlock.class, "castingblock");
|
|
||||||
registerTileEntity(TileNBTCrucible.class, "nbtcrucible");
|
registerTileEntity(TileNBTCrucible.class, "nbtcrucible");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -44,7 +44,6 @@ public class ClientProxy implements CommonProxy {
|
|||||||
ClientRegistry.bindTileEntitySpecialRenderer(TileAnvil.class, new TileAnvilRender());
|
ClientRegistry.bindTileEntitySpecialRenderer(TileAnvil.class, new TileAnvilRender());
|
||||||
ClientRegistry.bindTileEntitySpecialRenderer(TileBreaker.class, new TileBreakerRender());
|
ClientRegistry.bindTileEntitySpecialRenderer(TileBreaker.class, new TileBreakerRender());
|
||||||
ClientRegistry.bindTileEntitySpecialRenderer(TileCastingForm.class, new TileCastingformRender());
|
ClientRegistry.bindTileEntitySpecialRenderer(TileCastingForm.class, new TileCastingformRender());
|
||||||
ClientRegistry.bindTileEntitySpecialRenderer(TileCastingBlock.class, new TileCastingBlockRender());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void registerModels(){
|
public void registerModels(){
|
||||||
|
|||||||
@@ -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 <TileCastingBlock>
|
|
||||||
{
|
|
||||||
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();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -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;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
@@ -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));
|
//CrucibleCrafting recipe = CrucibleCrafting.getRecipe(ingList.get(0), ingList.get(1), ingList.get(2), ingList.get(3), ingList.get(4));
|
||||||
//this.setDrops(recipe.getDropsCooked());
|
//this.setDrops(recipe.getDropsCooked());
|
||||||
this.setStatus(true);
|
this.setStatus(true);
|
||||||
System.out.println("Ready to harvest: " + this.getDrops());
|
|
||||||
world.setBlockState(pos, state.withProperty(PrimalAPI.States.LAYERS, 6), 2);
|
world.setBlockState(pos, state.withProperty(PrimalAPI.States.LAYERS, 6), 2);
|
||||||
this.updateBlock();
|
this.updateBlock();
|
||||||
this.markDirty();
|
this.markDirty();
|
||||||
|
|||||||
Binary file not shown.
|
After Width: | Height: | Size: 159 B |
@@ -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" }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -2,7 +2,7 @@
|
|||||||
"modid": "forgecraft",
|
"modid": "forgecraft",
|
||||||
"name": "Kitsu's Forgecraft",
|
"name": "Kitsu's Forgecraft",
|
||||||
"description": "Forged with sweat and blood",
|
"description": "Forged with sweat and blood",
|
||||||
"version": "1.6.02",
|
"version": "1.6.03",
|
||||||
"mcversion": "1.12.2",
|
"mcversion": "1.12.2",
|
||||||
"url": "",
|
"url": "",
|
||||||
"updateUrl": "",
|
"updateUrl": "",
|
||||||
|
|||||||
Reference in New Issue
Block a user