working on capabilities optimized imports

This commit is contained in:
Mohammad-Ali Minaie
2018-09-23 12:21:57 -04:00
parent 8dc5089de3
commit 4818efe33c
35 changed files with 118 additions and 197 deletions

View File

@@ -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.07 mod_version=1.6.08
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

View File

@@ -2,11 +2,8 @@ package nmd.primal.forgecraft;
import net.minecraft.creativetab.CreativeTabs; import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraftforge.fml.common.registry.GameRegistry;
import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.relauncher.SideOnly;
import net.minecraftforge.registries.IForgeRegistry;
import nmd.primal.forgecraft.crafting.CrucibleCrafting;
import nmd.primal.forgecraft.init.ModItems; import nmd.primal.forgecraft.init.ModItems;
//import nmd.primal.forgecraft.Item.ModItems; //import nmd.primal.forgecraft.Item.ModItems;
@@ -21,7 +18,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.07"; public static final String MOD_VERSION = "1.6.08";
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,);";

View File

@@ -3,7 +3,6 @@ package nmd.primal.forgecraft.blocks.Anvil;
import net.minecraft.block.material.Material; import net.minecraft.block.material.Material;
import net.minecraft.block.state.IBlockState; import net.minecraft.block.state.IBlockState;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.util.EnumFacing; import net.minecraft.util.EnumFacing;
import net.minecraft.util.EnumHand; import net.minecraft.util.EnumHand;
@@ -33,6 +32,7 @@ public class AnvilIron extends AnvilBase implements AnvilHandler {
if (!world.isRemote) { if (!world.isRemote) {
ItemStack pItem = player.inventory.getCurrentItem(); ItemStack pItem = player.inventory.getCurrentItem();
TileAnvil tile = (TileAnvil) world.getTileEntity(pos); TileAnvil tile = (TileAnvil) world.getTileEntity(pos);
ItemStack stack12 = tile.getSlotStack(12).copy();
if (tile != null) { if (tile != null) {
if ((pItem.getItem() instanceof Gallagher) || (pItem.getItem() == ModItems.forgehammer)) { if ((pItem.getItem() instanceof Gallagher) || (pItem.getItem() == ModItems.forgehammer)) {
ItemStack[] tempArray = new ItemStack[25]; ItemStack[] tempArray = new ItemStack[25];
@@ -52,7 +52,7 @@ public class AnvilIron extends AnvilBase implements AnvilHandler {
} }
} }
}*/ }*/
doAnvilRecipe(pItem, tempArray, world, tile, pos, player); doAnvilRecipe(pItem, stack12, tempArray, world, tile, pos, player);
return true; return true;
} }
doAnvilInventoryManager(pItem, world, tile, pos, hitx, hity, hitz, state, player); doAnvilInventoryManager(pItem, world, tile, pos, hitx, hity, hitz, state, player);

View File

@@ -3,7 +3,6 @@ package nmd.primal.forgecraft.blocks.Anvil;
import net.minecraft.block.material.Material; import net.minecraft.block.material.Material;
import net.minecraft.block.state.IBlockState; import net.minecraft.block.state.IBlockState;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.EnumFacing; import net.minecraft.util.EnumFacing;
@@ -115,7 +114,7 @@ public class AnvilStone extends AnvilBase {
for (int i = 0; i < 25; i++) { for (int i = 0; i < 25; i++) {
tempArray[i] = tile.getSlotStack(i); tempArray[i] = tile.getSlotStack(i);
} }
doAnvilRecipe(pItem, tempArray, world, tile, pos, player); doAnvilRecipe(pItem, stack12, tempArray, world, tile, pos, player);
return true; return true;
} }

View File

@@ -11,7 +11,6 @@ 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.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.EnumBlockRenderType; import net.minecraft.util.EnumBlockRenderType;
import net.minecraft.util.EnumFacing; import net.minecraft.util.EnumFacing;
@@ -26,7 +25,6 @@ import net.minecraftforge.fml.relauncher.SideOnly;
import net.minecraftforge.items.IItemHandler; import net.minecraftforge.items.IItemHandler;
import nmd.primal.forgecraft.CommonUtils; import nmd.primal.forgecraft.CommonUtils;
import nmd.primal.forgecraft.ModInfo; import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.blocks.Crucibles.NBTCrucible;
import nmd.primal.forgecraft.blocks.CustomContainerFacing; import nmd.primal.forgecraft.blocks.CustomContainerFacing;
import nmd.primal.forgecraft.crafting.CastingCrafting; import nmd.primal.forgecraft.crafting.CastingCrafting;
import nmd.primal.forgecraft.crafting.CrucibleCrafting; import nmd.primal.forgecraft.crafting.CrucibleCrafting;
@@ -34,14 +32,10 @@ import nmd.primal.forgecraft.init.ModBlocks;
import nmd.primal.forgecraft.init.ModItems; import nmd.primal.forgecraft.init.ModItems;
import nmd.primal.forgecraft.items.SlottedTongs; import nmd.primal.forgecraft.items.SlottedTongs;
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.tiles.TileCastingForm; import nmd.primal.forgecraft.tiles.TileCastingForm;
import nmd.primal.forgecraft.util.CastingFormHandler; import nmd.primal.forgecraft.util.CastingFormHandler;
import nmd.primal.forgecraft.util.ToolNBT; import nmd.primal.forgecraft.util.ToolNBT;
import java.util.Random;
import static nmd.primal.core.api.PrimalAPI.randomCheck;
import static nmd.primal.forgecraft.items.SlottedTongs.ITEM_HANDLER; import static nmd.primal.forgecraft.items.SlottedTongs.ITEM_HANDLER;
/** /**

View File

@@ -9,7 +9,6 @@ import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.item.EntityItem; import net.minecraft.entity.item.EntityItem;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Items;
import net.minecraft.init.SoundEvents; import net.minecraft.init.SoundEvents;
import net.minecraft.item.ItemSpade; import net.minecraft.item.ItemSpade;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
@@ -25,14 +24,9 @@ import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.core.api.PrimalAPI; import nmd.primal.core.api.PrimalAPI;
import nmd.primal.core.common.helper.PlayerHelper; import nmd.primal.core.common.helper.PlayerHelper;
import nmd.primal.core.common.helper.RecipeHelper;
import nmd.primal.core.common.recipes.inworld.FireSource; import nmd.primal.core.common.recipes.inworld.FireSource;
import nmd.primal.forgecraft.ModInfo; import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.blocks.CustomContainerFacing; import nmd.primal.forgecraft.blocks.CustomContainerFacing;
import nmd.primal.forgecraft.init.ModItems;
import nmd.primal.forgecraft.items.BaseMultiItem;
import nmd.primal.forgecraft.items.SlottedTongs;
import nmd.primal.forgecraft.items.parts.ToolPart;
import nmd.primal.forgecraft.tiles.TileForge; import nmd.primal.forgecraft.tiles.TileForge;
import nmd.primal.forgecraft.util.ForgeHandler; import nmd.primal.forgecraft.util.ForgeHandler;

View File

@@ -3,20 +3,10 @@ package nmd.primal.forgecraft.compat.JEI.anvil;
import mezz.jei.api.ingredients.IIngredients; import mezz.jei.api.ingredients.IIngredients;
import mezz.jei.api.recipe.IRecipeWrapper; import mezz.jei.api.recipe.IRecipeWrapper;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.init.Items;
import net.minecraft.inventory.ItemStackHelper;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.fml.common.registry.ForgeRegistries;
import nmd.primal.core.api.PrimalAPI;
import nmd.primal.forgecraft.crafting.AnvilCrafting; import nmd.primal.forgecraft.crafting.AnvilCrafting;
import nmd.primal.forgecraft.init.ModItems;
import javax.annotation.Nonnull; import javax.annotation.Nonnull;
import java.awt.*;
import java.util.Arrays;
import java.util.List;
/** /**
* Created by mminaie on 9/16/18. * Created by mminaie on 9/16/18.

View File

@@ -7,12 +7,10 @@ import mezz.jei.api.gui.IRecipeLayout;
import mezz.jei.api.ingredients.IIngredients; import mezz.jei.api.ingredients.IIngredients;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.resources.I18n; import net.minecraft.client.resources.I18n;
import net.minecraft.item.ItemStack;
import net.minecraft.util.ResourceLocation; import net.minecraft.util.ResourceLocation;
import nmd.primal.core.common.helper.CommonUtils; import nmd.primal.core.common.helper.CommonUtils;
import nmd.primal.forgecraft.ModInfo; import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.compat.JEI.AbstractCategory; import nmd.primal.forgecraft.compat.JEI.AbstractCategory;
import nmd.primal.forgecraft.init.ModItems;
import javax.annotation.Nonnull; import javax.annotation.Nonnull;

View File

@@ -1,6 +1,5 @@
package nmd.primal.forgecraft.compat.JEI.casting; package nmd.primal.forgecraft.compat.JEI.casting;
import nmd.primal.forgecraft.crafting.AnvilCrafting;
import nmd.primal.forgecraft.crafting.CastingCrafting; import nmd.primal.forgecraft.crafting.CastingCrafting;
import java.util.ArrayList; import java.util.ArrayList;

View File

@@ -5,7 +5,6 @@ import mezz.jei.api.recipe.IRecipeWrapper;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.item.Item; import net.minecraft.item.Item;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import nmd.primal.forgecraft.crafting.AnvilCrafting;
import nmd.primal.forgecraft.crafting.CastingCrafting; import nmd.primal.forgecraft.crafting.CastingCrafting;
import javax.annotation.Nonnull; import javax.annotation.Nonnull;

View File

@@ -1,13 +1,14 @@
package nmd.primal.forgecraft.compat.JEI.crucible; package nmd.primal.forgecraft.compat.JEI.crucible;
import mezz.jei.api.IGuiHelper; import mezz.jei.api.IGuiHelper;
import mezz.jei.api.gui.*; import mezz.jei.api.gui.IDrawable;
import mezz.jei.api.gui.IGuiItemStackGroup;
import mezz.jei.api.gui.IRecipeLayout;
import mezz.jei.api.ingredients.IIngredients; import mezz.jei.api.ingredients.IIngredients;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.resources.I18n; import net.minecraft.client.resources.I18n;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.util.ResourceLocation; import net.minecraft.util.ResourceLocation;
import nmd.primal.core.common.helper.CommonUtils; import nmd.primal.core.common.helper.CommonUtils;
import nmd.primal.forgecraft.ModInfo; import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.compat.JEI.AbstractCategory; import nmd.primal.forgecraft.compat.JEI.AbstractCategory;

View File

@@ -5,12 +5,9 @@ import mezz.jei.api.recipe.IRecipeWrapper;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
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.util.NonNullList;
import nmd.primal.forgecraft.crafting.CrucibleCrafting; import nmd.primal.forgecraft.crafting.CrucibleCrafting;
import nmd.primal.forgecraft.init.ModBlocks;
import javax.annotation.Nonnull; import javax.annotation.Nonnull;
import java.awt.*; import java.awt.*;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;

View File

@@ -1,6 +1,5 @@
package nmd.primal.forgecraft.compat.JEI.forge; package nmd.primal.forgecraft.compat.JEI.forge;
import nmd.primal.forgecraft.crafting.CastingCrafting;
import nmd.primal.forgecraft.crafting.ForgeCrafting; import nmd.primal.forgecraft.crafting.ForgeCrafting;
import java.util.ArrayList; import java.util.ArrayList;

View File

@@ -2,7 +2,6 @@ package nmd.primal.forgecraft.compat.JEI.forge;
import mezz.jei.api.recipe.IRecipeWrapper; import mezz.jei.api.recipe.IRecipeWrapper;
import mezz.jei.api.recipe.IRecipeWrapperFactory; import mezz.jei.api.recipe.IRecipeWrapperFactory;
import nmd.primal.forgecraft.crafting.CastingCrafting;
import nmd.primal.forgecraft.crafting.ForgeCrafting; import nmd.primal.forgecraft.crafting.ForgeCrafting;
import javax.annotation.Nonnull; import javax.annotation.Nonnull;

View File

@@ -5,7 +5,6 @@ import mezz.jei.api.recipe.IRecipeWrapper;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.item.Item; import net.minecraft.item.Item;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import nmd.primal.forgecraft.crafting.CastingCrafting;
import nmd.primal.forgecraft.crafting.ForgeCrafting; import nmd.primal.forgecraft.crafting.ForgeCrafting;
import javax.annotation.Nonnull; import javax.annotation.Nonnull;

View File

@@ -1,70 +0,0 @@
package nmd.primal.forgecraft.crafting;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.registries.IForgeRegistryEntry;
import nmd.primal.core.api.interfaces.ICustomRecipe;
import nmd.primal.forgecraft.ModInfo;
import java.util.Collection;
/**
* Created by mminaie on 9/15/18.
*/
public abstract class AbstractCrafting <RECIPE extends IForgeRegistryEntry.Impl<RECIPE>> extends IForgeRegistryEntry.Impl<RECIPE> implements ICustomRecipe<RECIPE>
{
private boolean is_disabled, is_hidden;
public AbstractCrafting()
{
this.is_disabled = false;
this.is_hidden = false;
}
abstract public Collection<RECIPE> getRecipes();
// ***************************************************************************** //
// Disable/Hidden Recipe controls
// ***************************************************************************** //
@Override
public RECIPE setDisabled(boolean is_disabled)
{
this.is_disabled = is_disabled;
return (RECIPE) this;
}
@Override
public RECIPE setHidden(boolean is_hidden)
{
this.is_hidden = is_hidden;
return (RECIPE) this;
}
@Override
public boolean isDisabled()
{
return this.is_disabled;
}
@Override
public boolean isHidden()
{
return this.is_hidden;
}
// ***************************************************************************** //
// Helper Methods
// ***************************************************************************** //
public static ResourceLocation getFullRecipeName(String prefix, String name)
{
return getFullRecipeName(ModInfo.MOD_ID, prefix, name);
}
public static ResourceLocation getFullRecipeName(String id, String prefix, String name)
{
return new ResourceLocation(id, prefix + "_" + name);
}
// ***************************************************************************** //
// ..
// ***************************************************************************** //
}

View File

@@ -1,6 +1,5 @@
package nmd.primal.forgecraft.crafting; package nmd.primal.forgecraft.crafting;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import java.util.ArrayList; import java.util.ArrayList;

View File

@@ -3,7 +3,8 @@ package nmd.primal.forgecraft.crafting;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.item.crafting.Ingredient; import net.minecraft.item.crafting.Ingredient;
import java.util.*; import java.util.ArrayList;
import java.util.List;
/** /**
* Created by mminaie on 11/11/17. * Created by mminaie on 11/11/17.

View File

@@ -12,8 +12,8 @@ import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.forgecraft.blocks.Anvil.AnvilIron; import nmd.primal.forgecraft.blocks.Anvil.AnvilIron;
import nmd.primal.forgecraft.blocks.Anvil.AnvilStone; import nmd.primal.forgecraft.blocks.Anvil.AnvilStone;
import nmd.primal.forgecraft.blocks.*;
import nmd.primal.forgecraft.blocks.Crucibles.NBTCrucible; import nmd.primal.forgecraft.blocks.Crucibles.NBTCrucible;
import nmd.primal.forgecraft.blocks.YewStave;
import nmd.primal.forgecraft.blocks.machine.*; import nmd.primal.forgecraft.blocks.machine.*;
/** /**

View File

@@ -3,12 +3,10 @@ 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;
@@ -17,9 +15,7 @@ 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;
/** /**
@@ -1419,7 +1415,7 @@ public class ModCrafting{
"null" "null"
); );
/*** Temp Clean Iron Sword ***/ /*** Temp Clean Iron Sword ***/
//TODO uncomment this
AnvilCrafting.addRecipe( AnvilCrafting.addRecipe(
new ItemStack [] { new ItemStack [] {
emptyAir,emptyAir,emptyAir,emptyAir,emptyAir, emptyAir,emptyAir,emptyAir,emptyAir,emptyAir,
@@ -1453,7 +1449,6 @@ public class ModCrafting{
"null" "null"
); );
/*** Temp Clean Iron LongSword ***/ /*** Temp Clean Iron LongSword ***/
//TODO uncomment this
AnvilCrafting.addRecipe( AnvilCrafting.addRecipe(
new ItemStack [] { new ItemStack [] {
emptyAir,emptyAir,hotCleanChunk,emptyAir,emptyAir, emptyAir,emptyAir,hotCleanChunk,emptyAir,emptyAir,

View File

@@ -1,19 +1,14 @@
package nmd.primal.forgecraft.init.recipes; package nmd.primal.forgecraft.init.recipes;
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagCompound;
import net.minecraftforge.event.RegistryEvent; import net.minecraftforge.event.RegistryEvent;
import net.minecraftforge.fluids.FluidRegistry;
import net.minecraftforge.fluids.FluidStack;
import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
import net.minecraftforge.fml.common.registry.GameRegistry; import net.minecraftforge.fml.common.registry.GameRegistry;
import net.minecraftforge.registries.IForgeRegistry; import net.minecraftforge.registries.IForgeRegistry;
import nmd.primal.core.common.recipes.tile.CauldronRecipe; import nmd.primal.core.common.recipes.tile.CauldronRecipe;
import nmd.primal.core.common.recipes.tile.HibachiRecipe;
import nmd.primal.forgecraft.ModInfo; import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.init.ModBlocks;
import nmd.primal.forgecraft.init.ModItems; import nmd.primal.forgecraft.init.ModItems;
@GameRegistry.ObjectHolder(ModInfo.MOD_ID) @GameRegistry.ObjectHolder(ModInfo.MOD_ID)

View File

@@ -2,7 +2,6 @@ package nmd.primal.forgecraft.init.recipes;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraftforge.event.RegistryEvent; import net.minecraftforge.event.RegistryEvent;
import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
import net.minecraftforge.fml.common.registry.GameRegistry; import net.minecraftforge.fml.common.registry.GameRegistry;

View File

@@ -16,6 +16,7 @@ import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.core.api.PrimalAPI; import nmd.primal.core.api.PrimalAPI;
import nmd.primal.core.common.helper.FireHelper;
import nmd.primal.forgecraft.init.ModItems; import nmd.primal.forgecraft.init.ModItems;
import javax.annotation.Nullable; import javax.annotation.Nullable;
@@ -181,6 +182,18 @@ public class BaseMultiItem extends BaseItem {
if (!stack.hasTagCompound()) { if (!stack.hasTagCompound()) {
stack.setTagCompound(new NBTTagCompound()); stack.setTagCompound(new NBTTagCompound());
stack.getTagCompound().setBoolean("hot", false); stack.getTagCompound().setBoolean("hot", false);
}
if (stack.hasTagCompound()) {
if (stack.getTagCompound().getBoolean("hot")) {
if (stack.getTagCompound().getBoolean("hot")) {
player.setFire(1);
}
if (PrimalAPI.randomCheck(50)) {
stack.getTagCompound().setBoolean("hot", false);
player.getEntityWorld().playSound(null, player.getPosition(), SoundEvents.BLOCK_FIRE_EXTINGUISH, SoundCategory.AMBIENT, 1.0F, PrimalAPI.getRandom().nextFloat() * 0.4F + 0.8F);
}
}
} }
} }
@@ -196,6 +209,10 @@ public class BaseMultiItem extends BaseItem {
} }
} }
} }
if(!entityItem.isWet()){
FireHelper.setFire(entityItem.getEntityWorld(),entityItem.getPosition());
return true;
}
return false; return false;
} }

View File

@@ -7,6 +7,7 @@ import net.minecraft.client.util.ITooltipFlag;
import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.SoundEvents; import net.minecraft.init.SoundEvents;
import net.minecraft.inventory.ItemStackHelper;
import net.minecraft.item.IItemPropertyGetter; import net.minecraft.item.IItemPropertyGetter;
import net.minecraft.item.Item; import net.minecraft.item.Item;
import net.minecraft.item.ItemBlock; import net.minecraft.item.ItemBlock;
@@ -64,8 +65,10 @@ public class SlottedTongs extends Item implements IPickup, AnvilHandler{
@SideOnly(Side.CLIENT) @SideOnly(Side.CLIENT)
public float apply(ItemStack stack, @Nullable World worldIn, @Nullable EntityLivingBase entityIn) public float apply(ItemStack stack, @Nullable World worldIn, @Nullable EntityLivingBase entityIn)
{ {
IItemHandler inventory = stack.getCapability(ITEM_HANDLER, null); IItemHandler inventory = stack.getCapability(ITEM_HANDLER, null);
ItemStack slotStack = inventory.getStackInSlot(0).copy(); ItemStack slotStack = inventory.getStackInSlot(0);
//System.out.println(stack.getTagCompound());
if (stack.getItem() instanceof SlottedTongs) { if (stack.getItem() instanceof SlottedTongs) {
if (slotStack.getItem() instanceof ItemNBTCrucible) { if (slotStack.getItem() instanceof ItemNBTCrucible) {
@@ -283,32 +286,7 @@ public class SlottedTongs extends Item implements IPickup, AnvilHandler{
@Override
public ICapabilityProvider initCapabilities(final ItemStack stack, NBTTagCompound nbt)
{
return new ICapabilityProvider()
{
final ItemStackHandler itemHandler = new ItemStackHandler(1);
@Override
public boolean hasCapability(Capability<?> capability, @Nullable EnumFacing facing)
{
if (capability == ITEM_HANDLER)
return true;
return false;
}
@SuppressWarnings("unchecked")
@Nullable
@Override
public <T> T getCapability(Capability<T> capability, @Nullable EnumFacing facing)
{
if (capability == ITEM_HANDLER)
return (T) itemHandler;
return null;
}
};
}
@Override @Override
public EnumActionResult onItemUse(EntityPlayer player, World world, BlockPos pos, EnumHand hand, EnumFacing face, float hitx, float hity, float hitz) public EnumActionResult onItemUse(EntityPlayer player, World world, BlockPos pos, EnumHand hand, EnumFacing face, float hitx, float hity, float hitz)
@@ -486,28 +464,65 @@ public class SlottedTongs extends Item implements IPickup, AnvilHandler{
} }
} }
@Override
public ICapabilityProvider initCapabilities(final ItemStack stack, NBTTagCompound nbt)
{
return new ICapabilityProvider()
{
final ItemStackHandler itemHandler = new ItemStackHandler(1);
@Override
public boolean hasCapability(Capability<?> capability, @Nullable EnumFacing facing)
{
if (capability == ITEM_HANDLER)
return true;
return false;
}
@SuppressWarnings("unchecked")
@Nullable @Nullable
@Override
public <T> T getCapability(Capability<T> capability, @Nullable EnumFacing facing)
{
if (capability == ITEM_HANDLER)
return (T) itemHandler;
return null;
}
};
}
@Override @Override
public NBTTagCompound getNBTShareTag(ItemStack stack) public NBTTagCompound getNBTShareTag(ItemStack stack)
{ {
return super.getNBTShareTag(stack); //return stack.getCapability(ITEM_HANDLER, null).
//IItemHandler inventory = stack.getCapability(ITEM_HANDLER, null); /*
//NonNullList<ItemStack> setList = NonNullList.<ItemStack>withSize(1, ItemStack.EMPTY); AntibarrelData data = stack.getCapability(CAP, null);
//ItemStackHelper.saveAllItems(stack.getTagCompound(), setList);
//return stack.getTagCompound(); if (BlockUtils.hasData(stack))
{
data.deserializeNBT(BlockUtils.getData(stack));
BlockUtils.removeData(stack);
}
*/
IItemHandler data = stack.getCapability(ITEM_HANDLER, null);
} }
@Override @Override
public void readNBTShareTag(ItemStack stack, @Nullable NBTTagCompound nbt) public void readNBTShareTag(ItemStack stack, @Nullable NBTTagCompound nbt)
{ {
super.readNBTShareTag(stack, nbt); if (nbt != null)
{
//stack.deserializeNBT(nbt); AntibarrelData.get(stack).deserializeNBT(nbt);
//IItemHandler inventory = stack.getCapability(ITEM_HANDLER, null); }
//NonNullList<ItemStack> setList = NonNullList.<ItemStack>withSize(1, ItemStack.EMPTY); }
//ItemStackHelper.loadAllItems(nbt, setList);
//inventory.insertItem(0, setList.get(0), false);
@Override
public boolean getShareTag()
{
return true;
} }
} }

View File

@@ -16,6 +16,7 @@ import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.core.api.PrimalAPI; import nmd.primal.core.api.PrimalAPI;
import nmd.primal.core.common.helper.FireHelper;
import nmd.primal.forgecraft.ModInfo; import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.util.ToolNBT; import nmd.primal.forgecraft.util.ToolNBT;
@@ -274,6 +275,15 @@ public class ToolPart extends Item implements ToolNBT{
setLapisLevel(item, 0); setLapisLevel(item, 0);
setModifiers(item, 0); setModifiers(item, 0);
} }
if (item.hasTagCompound()) {
if (item.getSubCompound("tags").getBoolean("hot")) {
player.setFire(1);
if (PrimalAPI.randomCheck(50)) {
item.getSubCompound("tags").setBoolean("hot", false);
player.getEntityWorld().playSound(null, player.getPosition(), SoundEvents.BLOCK_FIRE_EXTINGUISH, SoundCategory.AMBIENT, 1.0F, PrimalAPI.getRandom().nextFloat() * 0.4F + 0.8F);
}
}
}
} }
@@ -289,6 +299,10 @@ public class ToolPart extends Item implements ToolNBT{
} }
} }
} }
if(!entityItem.isWet()){
FireHelper.setFire(entityItem.getEntityWorld(),entityItem.getPosition());
return true;
}
return false; return false;
} }

View File

@@ -12,7 +12,6 @@ import net.minecraft.inventory.EntityEquipmentSlot;
import net.minecraft.item.Item; import net.minecraft.item.Item;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.item.ItemSword; import net.minecraft.item.ItemSword;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.world.World; import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.relauncher.SideOnly;

View File

@@ -1,6 +1,5 @@
package nmd.primal.forgecraft.renders.blocks; package nmd.primal.forgecraft.renders.blocks;
import net.minecraft.block.Block;
import net.minecraft.block.state.IBlockState; import net.minecraft.block.state.IBlockState;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.OpenGlHelper; import net.minecraft.client.renderer.OpenGlHelper;

View File

@@ -10,8 +10,8 @@ import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.item.Item; import net.minecraft.item.Item;
import net.minecraft.util.EnumFacing; import net.minecraft.util.EnumFacing;
import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.BlockPos;
import nmd.primal.forgecraft.blocks.machine.CastingForm;
import nmd.primal.forgecraft.blocks.CustomContainerFacing; import nmd.primal.forgecraft.blocks.CustomContainerFacing;
import nmd.primal.forgecraft.blocks.machine.CastingForm;
import nmd.primal.forgecraft.init.ModItems; import nmd.primal.forgecraft.init.ModItems;
import nmd.primal.forgecraft.tiles.TileCastingForm; import nmd.primal.forgecraft.tiles.TileCastingForm;
import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL11;

View File

@@ -7,16 +7,12 @@ import net.minecraft.client.renderer.RenderItem;
import net.minecraft.client.renderer.block.model.ItemCameraTransforms; import net.minecraft.client.renderer.block.model.ItemCameraTransforms;
import net.minecraft.client.renderer.texture.TextureMap; import net.minecraft.client.renderer.texture.TextureMap;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.init.Items;
import net.minecraft.item.EnumDyeColor;
import net.minecraft.item.Item; import net.minecraft.item.Item;
import net.minecraft.item.ItemBlock; import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.util.EnumFacing; import net.minecraft.util.EnumFacing;
import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.BlockPos;
import nmd.primal.core.api.PrimalAPI;
import nmd.primal.forgecraft.blocks.machine.Forge; import nmd.primal.forgecraft.blocks.machine.Forge;
import nmd.primal.forgecraft.init.ModItems;
import nmd.primal.forgecraft.items.BaseMultiItem; import nmd.primal.forgecraft.items.BaseMultiItem;
import nmd.primal.forgecraft.items.parts.ToolPart; import nmd.primal.forgecraft.items.parts.ToolPart;
import nmd.primal.forgecraft.tiles.TileForge; import nmd.primal.forgecraft.tiles.TileForge;

View File

@@ -14,8 +14,8 @@ import net.minecraft.world.World;
import nmd.primal.core.api.PrimalAPI; import nmd.primal.core.api.PrimalAPI;
import nmd.primal.core.common.helper.FireHelper; import nmd.primal.core.common.helper.FireHelper;
import nmd.primal.core.common.helper.RecipeHelper; import nmd.primal.core.common.helper.RecipeHelper;
import nmd.primal.forgecraft.blocks.machine.BloomeryBase;
import nmd.primal.forgecraft.blocks.Crucibles.NBTCrucible; import nmd.primal.forgecraft.blocks.Crucibles.NBTCrucible;
import nmd.primal.forgecraft.blocks.machine.BloomeryBase;
import nmd.primal.forgecraft.crafting.CrucibleCrafting; import nmd.primal.forgecraft.crafting.CrucibleCrafting;
import nmd.primal.forgecraft.init.ModItems; import nmd.primal.forgecraft.init.ModItems;

View File

@@ -6,7 +6,6 @@ import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.ITickable; import net.minecraft.util.ITickable;
import net.minecraft.util.NonNullList;
import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World; import net.minecraft.world.World;
import nmd.primal.core.api.PrimalAPI; import nmd.primal.core.api.PrimalAPI;
@@ -145,7 +144,6 @@ public class TileForge extends TileBaseSlot implements ITickable, ToolNBT{
} }
} }
if(stack.isEmpty() || RecipeHelper.getBurnTime(stack) <=0){ if(stack.isEmpty() || RecipeHelper.getBurnTime(stack) <=0){
System.out.println(stack);
world.setBlockState(pos, state.withProperty(PrimalAPI.States.ACTIVE, false), 2); world.setBlockState(pos, state.withProperty(PrimalAPI.States.ACTIVE, false), 2);
} }
if(this.getSlotStack(0).getItem() == PrimalAPI.Items.CHARCOAL_FAIR){ if(this.getSlotStack(0).getItem() == PrimalAPI.Items.CHARCOAL_FAIR){
@@ -210,6 +208,8 @@ public class TileForge extends TileBaseSlot implements ITickable, ToolNBT{
if (cookCounter2 >= recipe.getIdealTime()) { if (cookCounter2 >= recipe.getIdealTime()) {
ItemStack outputStack = recipe.getOutput().copy(); ItemStack outputStack = recipe.getOutput().copy();
outputStack.setItemDamage(stack.getItemDamage()); outputStack.setItemDamage(stack.getItemDamage());
outputStack.setTagCompound(stackCompound);
outputStack.getSubCompound("tags").setBoolean("hot", true);
this.setSlotStack(i, outputStack); this.setSlotStack(i, outputStack);
cookCounter2 = 0; cookCounter2 = 0;
} }
@@ -224,7 +224,8 @@ public class TileForge extends TileBaseSlot implements ITickable, ToolNBT{
if (cookCounter3 >= recipe.getIdealTime()) { if (cookCounter3 >= recipe.getIdealTime()) {
ItemStack outputStack = recipe.getOutput().copy(); ItemStack outputStack = recipe.getOutput().copy();
outputStack.setItemDamage(stack.getItemDamage()); outputStack.setItemDamage(stack.getItemDamage());
outputStack.setTagCompound(stackCompound);
outputStack.getSubCompound("tags").setBoolean("hot", true);
this.setSlotStack(i, outputStack); this.setSlotStack(i, outputStack);
cookCounter3 = 0; cookCounter3 = 0;
@@ -240,6 +241,8 @@ public class TileForge extends TileBaseSlot implements ITickable, ToolNBT{
if (cookCounter4 >= recipe.getIdealTime()) { if (cookCounter4 >= recipe.getIdealTime()) {
ItemStack outputStack = recipe.getOutput().copy(); ItemStack outputStack = recipe.getOutput().copy();
outputStack.setItemDamage(stack.getItemDamage()); outputStack.setItemDamage(stack.getItemDamage());
outputStack.setTagCompound(stackCompound);
outputStack.getSubCompound("tags").setBoolean("hot", true);
this.setSlotStack(i, outputStack); this.setSlotStack(i, outputStack);
cookCounter4 = 0; cookCounter4 = 0;
} }
@@ -254,6 +257,8 @@ public class TileForge extends TileBaseSlot implements ITickable, ToolNBT{
if (cookCounter5 >= recipe.getIdealTime()) { if (cookCounter5 >= recipe.getIdealTime()) {
ItemStack outputStack = recipe.getOutput().copy(); ItemStack outputStack = recipe.getOutput().copy();
outputStack.setItemDamage(stack.getItemDamage()); outputStack.setItemDamage(stack.getItemDamage());
outputStack.setTagCompound(stackCompound);
outputStack.getSubCompound("tags").setBoolean("hot", true);
this.setSlotStack(i, outputStack); this.setSlotStack(i, outputStack);
cookCounter5 = 0; cookCounter5 = 0;
} }

View File

@@ -9,12 +9,8 @@ import net.minecraft.util.NonNullList;
import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World; import net.minecraft.world.World;
import nmd.primal.core.api.PrimalAPI; import nmd.primal.core.api.PrimalAPI;
import nmd.primal.core.api.interfaces.IRecipeCache;
import nmd.primal.forgecraft.crafting.CrucibleCrafting; import nmd.primal.forgecraft.crafting.CrucibleCrafting;
import java.util.ArrayList;
import java.util.List;
/** /**
* Created by mminaie on 11/11/17. * Created by mminaie on 11/11/17.
*/ */

View File

@@ -5,7 +5,6 @@ import net.minecraft.entity.item.EntityItem;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Items; import net.minecraft.init.Items;
import net.minecraft.item.EnumDyeColor; import net.minecraft.item.EnumDyeColor;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.EnumFacing; import net.minecraft.util.EnumFacing;
@@ -19,7 +18,6 @@ import nmd.primal.forgecraft.crafting.AnvilCrafting;
import nmd.primal.forgecraft.init.ModItems; import nmd.primal.forgecraft.init.ModItems;
import nmd.primal.forgecraft.items.BaseMultiItem; import nmd.primal.forgecraft.items.BaseMultiItem;
import nmd.primal.forgecraft.items.ForgeHammer; import nmd.primal.forgecraft.items.ForgeHammer;
import nmd.primal.forgecraft.items.SlottedTongs;
import nmd.primal.forgecraft.items.parts.ToolPart; import nmd.primal.forgecraft.items.parts.ToolPart;
import nmd.primal.forgecraft.tiles.TileAnvil; import nmd.primal.forgecraft.tiles.TileAnvil;
@@ -57,7 +55,7 @@ public interface AnvilHandler {
return reverseMax[x]; return reverseMax[x];
} }
default boolean doAnvilRecipe(ItemStack pItem, ItemStack[] tempArray, World world, TileAnvil tile, BlockPos pos, EntityPlayer player) { default boolean doAnvilRecipe(ItemStack pItem, ItemStack stack12, ItemStack[] tempArray, World world, TileAnvil tile, BlockPos pos, EntityPlayer player) {
AnvilCrafting recipe = AnvilCrafting.getRecipe(tempArray); AnvilCrafting recipe = AnvilCrafting.getRecipe(tempArray);
if (recipe != null) { if (recipe != null) {
if (pItem.getItem() instanceof Gallagher) { if (pItem.getItem() instanceof Gallagher) {
@@ -68,12 +66,14 @@ public interface AnvilHandler {
} }
world.playEvent(1031, pos, 0); world.playEvent(1031, pos, 0);
if (ThreadLocalRandom.current().nextInt(0, 2) == 0) { if (ThreadLocalRandom.current().nextInt(0, 2) == 0) {
if (recipe.getOutput().getItem() instanceof ToolPart) { if (recipe.getOutput().getItem() instanceof ToolPart) {
if (!tile.getSlotStack(12).getItem().equals(recipe.getOutput().getItem())) { System.out.println(tile.getSlotStack(12).getTagCompound());
if (!tile.getSlotStack(12).getItem().equals(recipe.getOutput().getItem()) ) {
ItemStack tempStack = recipe.getOutput(); ItemStack tempStack = recipe.getOutput();
tempStack.setTagCompound(new NBTTagCompound()); tempStack.setTagCompound(new NBTTagCompound());
NBTTagCompound tags = new NBTTagCompound(); NBTTagCompound tags = new NBTTagCompound();
@@ -98,10 +98,12 @@ public interface AnvilHandler {
outputStack.getTagCompound().setTag("tags", tempNBT); outputStack.getTagCompound().setTag("tags", tempNBT);
outputStack.getSubCompound("tags").setBoolean("hot", false); outputStack.getSubCompound("tags").setBoolean("hot", false);
if (recipe.getUpgrade() == "repair") { if (recipe.getUpgrade() == "repair") {
CommonUtils.spawnItemEntityFromWorld(world, pos, outputStack); CommonUtils.spawnItemEntityFromWorld(world, pos, outputStack);
} }
if (outputStack.getSubCompound("tags").getInteger("modifiers") < 3) { if (outputStack.getSubCompound("tags").getInteger("modifiers") < 3) {
//Upgrade emerald //Upgrade emerald
@@ -253,9 +255,9 @@ public interface AnvilHandler {
if (!tongStack.isEmpty()) { if (!tongStack.isEmpty()) {
if (tile.getSlotStack(counter).isEmpty()) { if (tile.getSlotStack(counter).isEmpty()) {
ItemStack tempStack = tongStack.copy(); //ItemStack tempStack = tongStack.copy();
tile.setSlotStack(counter, tempStack); tile.setSlotStack(counter, inventory.extractItem(0, 1, false));
inventory.extractItem(0, 1, false); //System.out.println(tile.getSlotStack(counter).getTagCompound());
return true; return true;
} }
} }

View File

@@ -2,21 +2,15 @@ package nmd.primal.forgecraft.util;
import net.minecraft.block.state.IBlockState; import net.minecraft.block.state.IBlockState;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.util.EnumFacing; import net.minecraft.util.EnumFacing;
import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World; import net.minecraft.world.World;
import net.minecraftforge.items.IItemHandler; import net.minecraftforge.items.IItemHandler;
import net.minecraftforge.items.IItemHandlerModifiable;
import nmd.primal.core.common.helper.RecipeHelper; import nmd.primal.core.common.helper.RecipeHelper;
import nmd.primal.core.common.items.tools.Gallagher;
import nmd.primal.forgecraft.init.ModItems; import nmd.primal.forgecraft.init.ModItems;
import nmd.primal.forgecraft.items.BaseMultiItem; import nmd.primal.forgecraft.items.BaseMultiItem;
import nmd.primal.forgecraft.items.ForgeHammer;
import nmd.primal.forgecraft.items.SlottedTongs;
import nmd.primal.forgecraft.items.parts.ToolPart; import nmd.primal.forgecraft.items.parts.ToolPart;
import nmd.primal.forgecraft.tiles.TileAnvil;
import nmd.primal.forgecraft.tiles.TileForge; import nmd.primal.forgecraft.tiles.TileForge;
import static nmd.primal.forgecraft.blocks.CustomContainerFacing.FACING; import static nmd.primal.forgecraft.blocks.CustomContainerFacing.FACING;

View File

@@ -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.07", "version": "1.6.08",
"mcversion": "1.12.2", "mcversion": "1.12.2",
"url": "", "url": "",
"updateUrl": "", "updateUrl": "",