merging master branch into feature branch

This commit is contained in:
Mohammad-Ali Minaie
2019-07-15 23:07:48 -04:00
29 changed files with 434 additions and 345 deletions

115
.idea/workspace.xml generated
View File

@@ -5,6 +5,7 @@
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
</list>
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
<option name="TRACKING_ENABLED" value="true" />
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
@@ -49,7 +50,7 @@
<detection-done>true</detection-done>
<sorting>DEFINITION_ORDER</sorting>
</component>
<component name="ProjectFrameBounds">
<component name="ProjectFrameBounds" extendedState="6">
<option name="y" value="22" />
<option name="width" value="1680" />
<option name="height" value="1050" />
@@ -84,13 +85,15 @@
<select />
</subPane>
</pane>
<pane id="Scope" />
<pane id="PackagesPane" />
<pane id="Scope" />
<pane id="AndroidView" />
</panes>
</component>
<component name="PropertiesComponent">
<property name="WebServerToolWindowFactoryState" value="false" />
<property name="aspect.path.notification.shown" value="true" />
<property name="last_opened_file_path" value="$PROJECT_DIR$/kfc/build.gradle" />
<property name="project.structure.last.edited" value="Project" />
<property name="project.structure.proportion" value="0.0" />
<property name="project.structure.side.proportion" value="0.0" />
@@ -110,27 +113,65 @@
<component name="RunManager">
<configuration default="true" type="Applet" factoryName="Applet">
<option name="POLICY_FILE" value="$APPLICATION_HOME_DIR$/bin/appletviewer.policy" />
<method v="2">
<method>
<option name="Make" enabled="true" />
</method>
</configuration>
<configuration default="true" type="Application" factoryName="Application">
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
<method v="2">
<method>
<option name="Make" enabled="true" />
</method>
</configuration>
<configuration name="build" type="GroovyScriptRunConfiguration" factoryName="Groovy" temporary="true">
<module name="ForgeCraft" />
<setting name="path" value="file://$PROJECT_DIR$/kfc/build.gradle" />
<setting name="vmparams" value="" />
<setting name="params" value="" />
<setting name="workDir" value="file://$PROJECT_DIR$/kfc" />
<setting name="debug" value="false" />
</configuration>
<configuration default="true" type="JUnit" factoryName="JUnit">
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
<option name="ALTERNATIVE_JRE_PATH" />
<option name="PACKAGE_NAME" />
<option name="MAIN_CLASS_NAME" />
<option name="METHOD_NAME" />
<option name="TEST_OBJECT" value="class" />
<option name="VM_PARAMETERS" />
<option name="PARAMETERS" />
<option name="WORKING_DIRECTORY" value="$MODULE_DIR$" />
<method v="2">
<option name="PASS_PARENT_ENVS" value="true" />
<option name="TEST_SEARCH_SCOPE">
<value defaultName="singleModule" />
</option>
<patterns />
<method>
<option name="Make" enabled="true" />
</method>
</configuration>
<configuration default="true" type="TestNG" factoryName="TestNG">
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
<option name="ALTERNATIVE_JRE_PATH" />
<option name="SUITE_NAME" />
<option name="PACKAGE_NAME" />
<option name="MAIN_CLASS_NAME" />
<option name="METHOD_NAME" />
<option name="GROUP_NAME" />
<option name="TEST_OBJECT" value="CLASS" />
<option name="VM_PARAMETERS" />
<option name="PARAMETERS" />
<option name="WORKING_DIRECTORY" value="$MODULE_DIR$" />
<option name="OUTPUT_DIRECTORY" />
<option name="PASS_PARENT_ENVS" value="true" />
<option name="TEST_SEARCH_SCOPE">
<value defaultName="singleModule" />
</option>
<option name="USE_DEFAULT_REPORTERS" value="false" />
<option name="PROPERTIES_FILE" />
<properties />
<listeners />
<method v="2">
<method>
<option name="Make" enabled="true" />
</method>
</configuration>
@@ -139,10 +180,15 @@
<option name="VM_PARAMETERS" value="-Xmx512m -Xms256m -XX:MaxPermSize=250m -ea" />
<option name="PROGRAM_PARAMETERS" />
<predefined_log_file id="idea.log" enabled="true" />
<method v="2">
<method>
<option name="Make" enabled="true" />
</method>
</configuration>
<recent_temporary>
<list>
<item itemvalue="Groovy.build" />
</list>
</recent_temporary>
</component>
<component name="SvnConfiguration">
<configuration />
@@ -163,37 +209,38 @@
<option name="totallyTimeSpent" value="44000" />
</component>
<component name="ToolWindowManager">
<frame x="0" y="22" width="1680" height="1050" extended-state="0" />
<frame x="-8" y="-8" width="2576" height="1416" extended-state="6" />
<layout>
<window_info id="Structure" order="0" weight="0.25" />
<window_info id="Nl-Palette" order="1" />
<window_info id="Favorites" order="2" side_tool="true" />
<window_info id="Image Layers" order="3" />
<window_info id="Designer" order="4" />
<window_info id="UI Designer" order="5" />
<window_info id="Capture Tool" order="6" />
<window_info anchor="bottom" id="Message" order="0" />
<window_info anchor="bottom" id="Find" order="1" />
<window_info anchor="bottom" id="Run" order="2" />
<window_info anchor="bottom" id="Debug" order="3" weight="0.4" />
<window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
<window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
<window_info anchor="bottom" id="TODO" order="6" />
<window_info active="true" anchor="bottom" id="Terminal" order="7" visible="true" weight="0.47181627" />
<window_info anchor="bottom" id="Event Log" order="8" side_tool="true" weight="0.32958034" />
<window_info anchor="bottom" id="Version Control" order="9" />
<window_info anchor="bottom" id="Database Changes" order="10" show_stripe_button="false" />
<window_info anchor="right" id="Database" order="0" />
<window_info anchor="right" id="Commander" order="1" weight="0.4" />
<window_info anchor="right" id="Ant Build" order="2" weight="0.25" />
<window_info anchor="right" content_ui="combo" id="Hierarchy" order="3" weight="0.25" />
<window_info anchor="right" id="Palette" order="4" />
<window_info anchor="right" id="Capture Analysis" order="5" />
<window_info anchor="right" id="Theme Preview" order="6" />
<window_info anchor="right" id="Properties" order="7" />
<window_info anchor="bottom" id="TODO" order="6" />
<window_info anchor="bottom" id="Messages" />
<window_info anchor="right" id="Palette&#9;" order="8" />
<window_info id="Image Layers" order="3" />
<window_info anchor="right" id="Capture Analysis" order="5" />
<window_info anchor="bottom" id="Event Log" order="8" side_tool="true" weight="0.32958034" />
<window_info anchor="right" id="Maven Projects" order="9" />
<window_info anchor="right" content_ui="combo" id="Project" order="10" visible="true" weight="0.25457877" />
<window_info anchor="bottom" id="Run" order="2" />
<window_info anchor="bottom" id="Version Control" order="9" />
<window_info active="true" anchor="bottom" id="Terminal" order="7" visible="true" weight="0.33386454" />
<window_info id="Capture Tool" order="6" />
<window_info id="Designer" order="4" />
<window_info anchor="right" content_ui="combo" id="Project" order="10" visible="true" weight="0.16613673" />
<window_info id="Structure" order="0" side_tool="true" weight="0.25" />
<window_info anchor="right" id="Ant Build" order="2" weight="0.25" />
<window_info id="UI Designer" order="5" />
<window_info anchor="right" id="Theme Preview" order="6" />
<window_info anchor="bottom" id="Debug" order="3" weight="0.4" />
<window_info id="Favorites" order="2" side_tool="true" />
<window_info anchor="right" content_ui="combo" id="Hierarchy" order="3" weight="0.25" />
<window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
<window_info id="Nl-Palette" order="1" />
<window_info anchor="right" id="Commander" order="1" weight="0.4" />
<window_info anchor="right" id="Properties" order="7" />
<window_info anchor="right" id="Database" order="0" />
<window_info anchor="bottom" id="Message" order="0" />
<window_info anchor="bottom" id="Database Changes" order="10" show_stripe_button="false" />
<window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
<window_info anchor="bottom" id="Find" order="1" />
</layout>
</component>
<component name="TypeScriptGeneratedFilesManager">

View File

@@ -1,9 +1,11 @@
// -Dhttps.protocols=TLSv1.2
//org.gradle.jvmargs="-Dhttps.protocols=TLSv1.2"
buildscript {
repositories {
jcenter()
maven {
name = "forge"
url = "http://files.minecraftforge.net/maven"
url = "https://files.minecraftforge.net/maven"
}
maven {
name = "sonatype"
@@ -22,7 +24,7 @@ repositories {
maven {
name = "jei"
url "http://dvs1.progwml6.com/files/maven"
url "https://dvs1.progwml6.com/files/maven"
}
maven {
@@ -64,6 +66,8 @@ dependencies {
// CraftTweaker
//compile "CraftTweaker2:CraftTweaker2-MC1120-Main:${craftweaker_version}"
//compile "CraftTweaker2:CraftTweaker2-API:${craftweaker_version}"
//compile "CraftTweaker2:CraftTweaker2-MC1120-Main:${mc_major_version}-${craftweaker_version}"
//compile "CraftTweaker2:CraftTweaker2-API:${craftweaker_version}"
}
processResources {

View File

@@ -1,18 +1,19 @@
# ~/.gradle/gradle.properties
#
#org.gradle.daemon=true
org.gradle.jvmargs=-Xmx3G
org.gradle.jvmargs=-Xmx3G
mod_group=nmd.primal.forgecraft
mod_name=ForgeCraft
mod_version=1.6.42
forge_version=14.23.4.2765
mod_version=1.6.51
forge_version=14.23.5.2806
mcp_mappings=snapshot_20171003
mc_version=1.12.2
mc_major_version=1.12
primal_version=0.6+
jei_version=4.12+
waila_version=1.7.0-B3
apple_version=2.1+
craftweaker_version=4.1.6.465
craftweaker_version=4.1.6.465

View File

@@ -6,8 +6,8 @@ import net.minecraft.util.NonNullList;
import net.minecraftforge.fml.common.eventhandler.EventPriority;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
import nmd.primal.core.api.events.CauldronRecipeEvent;
import nmd.primal.core.common.crafting.handlers.tile.CauldronRecipe;
import nmd.primal.core.common.helper.RecipeHelper;
import nmd.primal.core.common.recipes.tile.CauldronRecipe;
import nmd.primal.core.common.tiles.machines.TileCauldron;
import nmd.primal.forgecraft.items.parts.WeaponPart;
import nmd.primal.forgecraft.util.WeaponNBT;
@@ -21,7 +21,6 @@ public class CommonEvents implements WeaponNBT {
public void onItemCrafted(CauldronRecipeEvent.Pre event){
CauldronRecipe recipe = event.getRecipe();
System.out.println(recipe.getRecipeName());
if (recipe.matches("forgecraft:cauldron_item.rawcoppergladiussmite", "forgecraft:cauldron_item.rawcoppergladiusbane", "forgecraft:cauldron_item.rawcoppergladiusfire", "forgecraft:cauldron_item.rawcoppergladiusfortune",
"forgecraft:cauldron_item.rawbronzegladiussmite", "forgecraft:cauldron_item.rawbronzegladiusbane", "forgecraft:cauldron_item.rawbronzegladiusfire", "forgecraft:cauldron_item.rawbronzegladiusfortune",
"forgecraft:cauldron_item.rawwroughtirongladiussmite", "forgecraft:cauldron_item.rawwroughtirongladiusbane", "forgecraft:cauldron_item.rawwroughtirongladiusfire", "forgecraft:cauldron_item.rawwroughtirongladiusfortune",
@@ -86,11 +85,9 @@ public class CommonEvents implements WeaponNBT {
for (int i = 0; i < inputList.size(); i++) {
if(inputList.get(i) != ItemStack.EMPTY && !(inputList.get(i).getItem() instanceof WeaponPart) ){
System.out.println(inputList.get(i));
modStack = inputList.get(i);
}
}
System.out.println(modStack);
return modStack;
}

View File

@@ -55,6 +55,7 @@ public class ForgeCraft
ModDictionary.registerDictionaryNames();
ModTiles.registerTileEntities();
ModSounds.registerSounds();
ModCrafting.register();
//ModEvents.registerClientEvents();
// ModItems.registerRenders();
@@ -68,7 +69,7 @@ public class ForgeCraft
//this.proxy.init(event);
proxy.init();
ModCrafting.register();
//proxy.registerModelBakeryVariants();
}

View File

@@ -24,7 +24,7 @@ public class ModInfo {
//public static final String MOD_PREFIX = MOD_ID + ":";
public static final String MOD_CHANNEL = MOD_ID;
public static final String MOD_VERSION = "1.6.42";
public static final String MOD_VERSION = "1.6.51";
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,);";

View File

@@ -26,8 +26,8 @@ import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import net.minecraftforge.items.IItemHandler;
import nmd.primal.core.api.PrimalAPI;
import nmd.primal.core.common.crafting.handlers.inworld.FireSource;
import nmd.primal.core.common.helper.PlayerHelper;
import nmd.primal.core.common.recipes.inworld.FireSource;
import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.blocks.CustomContainerFacing;
import nmd.primal.forgecraft.crafting.CrucibleCrafting;

View File

@@ -23,8 +23,8 @@ import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.core.api.PrimalAPI;
import nmd.primal.core.common.crafting.handlers.inworld.FireSource;
import nmd.primal.core.common.helper.PlayerHelper;
import nmd.primal.core.common.recipes.inworld.FireSource;
import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.blocks.CustomContainerFacing;
import nmd.primal.forgecraft.tiles.TileForge;

View File

@@ -23,6 +23,7 @@ import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import net.minecraftforge.items.ItemHandlerHelper;
import nmd.primal.core.api.PrimalAPI;
import nmd.primal.core.common.helper.NBTHelper;
import nmd.primal.core.common.helper.PlayerHelper;
@@ -32,6 +33,7 @@ import nmd.primal.forgecraft.init.ModBlocks;
import nmd.primal.forgecraft.items.misc.SlottedTongs;
import nmd.primal.forgecraft.tiles.TileNBTCrucible;
import javax.swing.plaf.basic.BasicComboBoxUI;
import java.util.Random;
@@ -65,13 +67,18 @@ public class NBTCrucible extends BlockContainer implements ITileEntityProvider {
/**PICKS UP THE CRUCIBLE**/
if (playerStackStart.isEmpty()) {
if (!player.isSneaking()) {
//System.out.println(tile.getHot());
CrucibleCrafting recipe = CrucibleCrafting.getRecipe(tile.ingList.get(0), tile.ingList.get(1), tile.ingList.get(2), tile.ingList.get(3), tile.ingList.get(4));
if (recipe != null) {
tile.setDrops(recipe.getDropsRaw());
System.out.println(tile.getDrops());
//tile.setDrops(recipe.getDropsRaw());
}
PlayerHelper.playerTakeItem(world, pos, EnumFacing.DOWN, player, player.getActiveHand(), this.getCrucibleItem(world, pos, state, player));
//ItemHandlerHelper.giveItemToPlayer(player, this.getCrucibleItem(world, pos, state, player));
world.setBlockState(pos, this.getReplacementBlock(world, pos, state));
world.markTileEntityForRemoval(tile);
//System.out.println(player.getHeldItemMainhand().getTagCompound());
return true;
}
}
@@ -129,7 +136,9 @@ public class NBTCrucible extends BlockContainer implements ITileEntityProvider {
if (player.isSneaking()) {
ItemStack pItem = player.inventory.getCurrentItem().copy();
if (pItem.isEmpty()) {
//TileNBTCrucible tile = (TileNBTCrucible) world.getTileEntity(pos);
if (tile.getStatus() && tile.getHot() == 6) {
System.out.println(tile.getDrops());
ItemStack dropStack = tile.getDrops().copy();
world.setBlockState(pos, state.withProperty(PrimalAPI.States.LAYERS, 0), 2);
tile.setHot(0);

View File

@@ -60,6 +60,7 @@ public class CTCrucible {
CraftTweakerAPI.apply(new Remove(recipe_name));
}
@ZenMethod
public static void removeAll()
{

View File

@@ -7,10 +7,15 @@ import mezz.jei.api.gui.IRecipeLayout;
import mezz.jei.api.ingredients.IIngredients;
import net.minecraft.client.Minecraft;
import net.minecraft.client.resources.I18n;
import net.minecraft.item.ItemStack;
import net.minecraft.util.ResourceLocation;
import nmd.primal.core.common.helper.CommonUtils;
import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.compat.jei.AbstractCategory;
import nmd.primal.forgecraft.items.parts.ToolPart;
import nmd.primal.forgecraft.items.parts.WeaponPart;
import nmd.primal.forgecraft.util.ToolNBT;
import nmd.primal.forgecraft.util.WeaponNBT;
import javax.annotation.Nonnull;
@@ -101,7 +106,16 @@ public class CastingRecipeCategory extends AbstractCategory<CastingRecipeWrapper
/***OUTPUTS***/
items.init(26, false, 133, 77);
items.set(26, recipe.output);
if(recipe.output.getItem() instanceof WeaponPart){
ItemStack tempStack = new ItemStack(recipe.output.getItem(), 1);
WeaponNBT.setDefaultNBT(tempStack);
items.set(26, tempStack);
} else if(recipe.output.getItem() instanceof ToolPart){
ItemStack tempStack = new ItemStack(recipe.output.getItem(), 1);
ToolNBT.setDefaultNBT(tempStack);
items.set(26, tempStack);
} else {items.set(26, recipe.output);}
/***EXTRAS***/
//items.init(26, false, 105, 28);

View File

@@ -4,7 +4,7 @@ import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
import net.minecraft.item.crafting.Ingredient;
import net.minecraftforge.registries.IForgeRegistry;
import nmd.primal.core.common.recipes.AbstractRecipe;
import nmd.primal.core.common.crafting.AbstractRecipe;
import nmd.primal.forgecraft.ModInfo;
import javax.annotation.Nullable;
@@ -228,14 +228,11 @@ public class CrucibleCrafting extends AbstractRecipe<CrucibleCrafting> { //exten
}
@Override
public Collection<CrucibleCrafting> getRecipes() {
return RECIPES;
}
@Override
public String getRecipePrefix() {
return RECIPE_PREFIX;
}

View File

@@ -4,8 +4,8 @@ import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
import net.minecraft.item.crafting.Ingredient;
import net.minecraftforge.registries.IForgeRegistry;
import nmd.primal.core.common.crafting.AbstractRecipe;
import nmd.primal.core.common.helper.RecipeHelper;
import nmd.primal.core.common.recipes.AbstractRecipe;
import nmd.primal.forgecraft.ModInfo;
import javax.annotation.Nullable;
@@ -13,6 +13,8 @@ import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import static nmd.primal.core.common.crafting.AbstractRecipe.getFullRecipeName;
/**
* Created by mminaie on 11/11/17.
*/
@@ -189,12 +191,10 @@ public class WorkbenchCrafting extends AbstractRecipe<WorkbenchCrafting> { //ext
}*/
@Override
public Collection<WorkbenchCrafting> getRecipes() {
return RECIPES;
}
@Override
public String getRecipePrefix() {
return RECIPE_PREFIX;
}

View File

@@ -23,244 +23,7 @@ public final class RecipesCrucible {
PrimalAPI.logger(7, "Registering Recipes: " + CrucibleCrafting.RECIPE_PREFIX);
final IForgeRegistry<CrucibleCrafting> recipes = event.getRegistry();
/*
ItemStack emptyAir = ItemStack.EMPTY;
NBTTagCompound newTag = new NBTTagCompound();
NBTTagCompound setHot = new NBTTagCompound();
setHot.setBoolean("hot", true);
ItemStack hotBronzeIngot = new ItemStack(ModItems.bronzeingotball, 1);
hotBronzeIngot.setTagCompound(setHot);
ItemStack hotIronIngot = new ItemStack(ModItems.ironingotball, 1);
hotIronIngot.setTagCompound(setHot);
ItemStack hotCleanIronIngot = new ItemStack(ModItems.ironcleaningotball, 1);
hotCleanIronIngot.setTagCompound(setHot);
ItemStack hotSteelIngot = new ItemStack(ModItems.steelingotball, 1);
hotSteelIngot.setTagCompound(setHot);
ItemStack hotWootzIngot = new ItemStack(ModItems.wootzingotball, 1);
hotWootzIngot.setTagCompound(setHot);
ItemStack hotBronzeChunk = new ItemStack( ModItems.bronzechunk, 1);
hotBronzeChunk.setTagCompound(setHot);
ItemStack hotChunk = new ItemStack( ModItems.wroughtironchunk, 1);
hotChunk.setTagCompound(setHot);
ItemStack hotCleanChunk = new ItemStack(ModItems.ironcleanchunk, 1);
hotCleanChunk.setTagCompound(setHot);
ItemStack hotSteelChunk = new ItemStack(ModItems.steelchunk, 1);
hotSteelChunk.setTagCompound(setHot);
ItemStack hotWootzChunk = new ItemStack(ModItems.wootzchunk, 1);
hotWootzChunk.setTagCompound(setHot);
ItemStack diamond = new ItemStack(Items.DIAMOND, 1);
ItemStack emerald = new ItemStack(Items.EMERALD, 1);
ItemStack emeraldShard = new ItemStack(PrimalAPI.Items.EMERALD_KNAPP, 1);
ItemStack diamondShard = new ItemStack(PrimalAPI.Items.DIAMOND_KNAPP, 1);
ItemStack redstone = new ItemStack(Items.REDSTONE, 1);
ItemStack lapis = new ItemStack(Items.DYE, 1, 4);
ItemStack[] toolArray = new ItemStack[24];
ItemStack[] hotToolArray = new ItemStack[16];
ItemStack bronzepickaxehead = new ItemStack(ModItems.bronzepickaxehead, 1);
bronzepickaxehead.setTagCompound(newTag);
toolArray[0] = bronzepickaxehead;
ItemStack bronzeaxehead = new ItemStack(ModItems.bronzeaxehead, 1);
bronzeaxehead.setTagCompound(newTag);
toolArray[1] = bronzeaxehead;
ItemStack bronzeshovelhead = new ItemStack(ModItems.bronzeshovelhead, 1);
bronzeshovelhead.setTagCompound(newTag);
toolArray[2] = bronzeshovelhead;
ItemStack bronzehoehead = new ItemStack(ModItems.bronzehoehead, 1);
bronzehoehead.setTagCompound(newTag);
toolArray[3] = bronzehoehead;
ItemStack pickaxehead = new ItemStack(ModItems.pickaxehead, 1);
pickaxehead.setTagCompound(newTag);
toolArray[4] = pickaxehead;
ItemStack ironaxehead = new ItemStack(ModItems.ironaxehead, 1);
ironaxehead.setTagCompound(newTag);
toolArray[5] = ironaxehead;
ItemStack ironshovelhead = new ItemStack(ModItems.ironshovelhead, 1);
ironshovelhead.setTagCompound(newTag);
toolArray[6] = ironshovelhead;
ItemStack ironhoehead = new ItemStack(ModItems.ironhoehead, 1);
ironhoehead.setTagCompound(newTag);
toolArray[7] = ironhoehead;
ItemStack cleanpickaxehead = new ItemStack(ModItems.cleanironpickaxehead, 1);
cleanpickaxehead.setTagCompound(newTag);
toolArray[8] = cleanpickaxehead;
ItemStack cleanaxehead = new ItemStack(ModItems.cleanironaxehead, 1);
cleanaxehead.setTagCompound(newTag);
toolArray[9] = cleanaxehead;
ItemStack cleanshovelhead = new ItemStack(ModItems.cleanironshovelhead, 1);
cleanshovelhead.setTagCompound(newTag);
toolArray[10] = cleanshovelhead;
ItemStack cleanhoehead = new ItemStack(ModItems.cleanironhoehead, 1);
cleanhoehead.setTagCompound(newTag);
toolArray[11] =cleanhoehead ;
ItemStack steelpickaxehead = new ItemStack(ModItems.steelpickaxehead, 1);
steelpickaxehead.setTagCompound(newTag);
toolArray[12] = steelpickaxehead;
ItemStack steelaxehead = new ItemStack(ModItems.steelaxehead, 1);
steelaxehead.setTagCompound(newTag);
toolArray[13] =steelaxehead ;
ItemStack steelshovelhead = new ItemStack(ModItems.steelshovelhead, 1);
steelshovelhead.setTagCompound(newTag);
toolArray[14] = steelshovelhead;
ItemStack steelhoehead = new ItemStack(ModItems.steelhoehead, 1);
steelhoehead.setTagCompound(newTag);
toolArray[15] =steelhoehead ;
ItemStack wootzpickaxehead = new ItemStack(ModItems.wootzpickaxehead, 1);
wootzpickaxehead.setTagCompound(newTag);
toolArray[16] = wootzpickaxehead;
ItemStack wootzaxehead = new ItemStack(ModItems.wootzaxehead, 1);
wootzaxehead.setTagCompound(newTag);
toolArray[17] = wootzaxehead;
ItemStack wootzshovelhead = new ItemStack(ModItems.wootzshovelhead, 1);
wootzshovelhead.setTagCompound(newTag);
toolArray[18] =wootzshovelhead ;
ItemStack wootzhoehead = new ItemStack(ModItems.wootzhoehead, 1);
wootzhoehead.setTagCompound(newTag);
toolArray[19] = wootzhoehead;
ItemStack copperpickaxehead = new ItemStack(ModItems.copperpickaxehead, 1);
copperpickaxehead.setTagCompound(newTag);
toolArray[20] = copperpickaxehead;
ItemStack copperaxehead = new ItemStack(ModItems.copperaxehead, 1);
copperaxehead.setTagCompound(newTag);
toolArray[21] = copperaxehead;
ItemStack coppershovelhead = new ItemStack(ModItems.coppershovelhead, 1);
coppershovelhead.setTagCompound(newTag);
toolArray[22] =coppershovelhead ;
ItemStack copperhoehead = new ItemStack(ModItems.copperhoehead, 1);
copperhoehead.setTagCompound(newTag);
toolArray[23] = copperhoehead;
ItemStack hotpickaxehead = pickaxehead.copy();
hotToolArray[0] =hotpickaxehead;
ItemStack hotironaxehead = ironaxehead.copy();
hotToolArray[1] =hotironaxehead;
ItemStack hotironshovelhead = ironshovelhead.copy();
hotToolArray[2] =hotironshovelhead;
ItemStack hotironhoehead = ironhoehead.copy();
hotToolArray[3] =hotironhoehead;
ItemStack hotcleanpickaxehead = cleanpickaxehead.copy();
hotToolArray[4] = hotcleanpickaxehead;
ItemStack hotcleanaxehead = cleanaxehead.copy();
hotToolArray[5] = hotcleanaxehead;
ItemStack hotcleanshovelhead = cleanshovelhead.copy();
hotToolArray[6] = hotcleanshovelhead;
ItemStack hotcleanhoehead = cleanhoehead.copy();
hotToolArray[7] = hotcleanhoehead;
ItemStack hotsteelpickaxehead = steelpickaxehead.copy();
hotToolArray[8] = hotsteelpickaxehead;
ItemStack hotsteelaxehead = steelaxehead.copy();
hotToolArray[9] = hotsteelaxehead;
ItemStack hotsteelshovelhead = steelshovelhead.copy();
hotToolArray[10] = hotsteelshovelhead;
ItemStack hotsteelhoehead = steelhoehead.copy();
hotToolArray[11] = hotsteelhoehead;
ItemStack hotwootzpickaxehead = wootzpickaxehead.copy();
hotToolArray[12] = hotwootzpickaxehead;
ItemStack hotwootzaxehead = wootzaxehead.copy();
hotToolArray[13] = hotwootzaxehead;
ItemStack hotwootzshovelhead = wootzshovelhead.copy();
hotToolArray[14] = hotwootzshovelhead;
ItemStack hotwootzhoehead = wootzhoehead.copy();
hotToolArray[15] = hotwootzhoehead;
for(ItemStack temp : toolArray) {
NBTTagCompound tags = temp.getTagCompound();
tags.setTag("tags", tags);
tags.getCompoundTag("tags").setBoolean("hot", false);
tags.getCompoundTag("tags").setBoolean("emerald", false);
tags.getCompoundTag("tags").setInteger("diamond", 0);
tags.getCompoundTag("tags").setInteger("redstone", 0);
tags.getCompoundTag("tags").setInteger("lapis", 0);
tags.getCompoundTag("tags").setInteger("modifiers", 0);
temp.setTagCompound(tags);
}
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];
copperpickaxehead = toolArray[20];
copperaxehead = toolArray[21];
coppershovelhead = toolArray[22];
copperhoehead = toolArray[23];
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));
/***********************/

View File

@@ -7,8 +7,7 @@ import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraftforge.oredict.OreDictionary;
import nmd.primal.core.api.PrimalAPI;
import nmd.primal.core.common.helper.RecipeHelper;
import nmd.primal.core.common.recipes.irecipe.RecipeHandler;
import nmd.primal.core.common.crafting.handlers.irecipe.RecipeHandler;
import nmd.primal.forgecraft.crafting.AnvilCrafting;
import nmd.primal.forgecraft.crafting.CastingCrafting;
import nmd.primal.forgecraft.crafting.ForgeCrafting;

View File

@@ -9,8 +9,8 @@ import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
import net.minecraftforge.fml.common.registry.GameRegistry;
import net.minecraftforge.registries.IForgeRegistry;
import nmd.primal.core.api.PrimalAPI;
import nmd.primal.core.common.crafting.handlers.tile.CauldronRecipe;
import nmd.primal.core.common.helper.RecipeHelper;
import nmd.primal.core.common.recipes.tile.CauldronRecipe;
import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.init.ModItems;

View File

@@ -6,7 +6,7 @@ import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
import net.minecraftforge.fml.common.registry.GameRegistry;
import net.minecraftforge.registries.IForgeRegistry;
import nmd.primal.core.common.recipes.tile.DryingRecipe;
import nmd.primal.core.common.crafting.handlers.tile.DryingRecipe;
import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.init.ModBlocks;
import nmd.primal.forgecraft.init.ModItems;

View File

@@ -6,7 +6,7 @@ import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
import net.minecraftforge.fml.common.registry.GameRegistry;
import net.minecraftforge.registries.IForgeRegistry;
import nmd.primal.core.common.recipes.tile.HibachiRecipe;
import nmd.primal.core.common.crafting.handlers.tile.HibachiRecipe;
import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.init.ModBlocks;
import nmd.primal.forgecraft.init.ModItems;

View File

@@ -102,7 +102,7 @@ public class ItemNBTCrucible extends ItemBlock {
@Override
public void onUpdate(ItemStack item, World world, Entity player, int itemSlot, boolean isSelected) {
if(!world.isRemote) {
System.out.println(getHot(item));
if (!item.hasTagCompound()) {
NonNullList<ItemStack> list = NonNullList.withSize(5, ItemStack.EMPTY);
item.setTagCompound(new NBTTagCompound());

View File

@@ -12,8 +12,8 @@ import net.minecraft.item.ItemStack;
import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.core.common.crafting.handlers.irecipe.ToolCraftingRecipe;
import nmd.primal.core.common.items.tools.Gallagher;
import nmd.primal.core.common.recipes.irecipe.ToolCraftingRecipe;
import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.util.ToolMaterialMap;

View File

@@ -106,25 +106,27 @@ public class WeaponPart extends Item implements WeaponNBT {
{
if(stack.hasTagCompound()) {
if (stack.getSubCompound("tags") != null) {
//System.out.println(WeaponNBT.materialModifiers.get(this.toolMaterial));
//System.out.println(stack.getSubCompound("tags").getInteger("modifiers"));
tooltip.add(ChatFormatting.GRAY + "Upgrades left: " + (WeaponNBT.materialModifiers.get(this.toolMaterial) - WeaponNBT.getModifiers(stack)));
if (WeaponNBT.getSmiteLevel(stack) > 0) {
//if (WeaponNBT.getSmiteLevel(stack) > 0) {
tooltip.add(ChatFormatting.GOLD + "Holy: " + WeaponNBT.getSmiteLevel(stack));
}
if (WeaponNBT.getBaneLevel(stack) > 0) {
//}
//if (WeaponNBT.getBaneLevel(stack) > 0) {
tooltip.add(ChatFormatting.GREEN + "Spider Killing: " + WeaponNBT.getBaneLevel(stack));
}
if (WeaponNBT.getFireLevel(stack) > 0) {
//}
//if (WeaponNBT.getFireLevel(stack) > 0) {
tooltip.add(ChatFormatting.RED + "Flame: " + WeaponNBT.getFireLevel(stack));
}
if (WeaponNBT.getFortuneLevel(stack) > 0) {
//}
//if (WeaponNBT.getFortuneLevel(stack) > 0) {
tooltip.add(ChatFormatting.BLUE + "Thieving: " + WeaponNBT.getFortuneLevel(stack));
}
if (WeaponNBT.getLeechLevel(stack) > 0) {
tooltip.add(ChatFormatting.BLACK + "Life Steal: " + WeaponNBT.getLeechLevel(stack));
}
if (WeaponNBT.getSharpnessLevel(stack) > 0) {
//}
//if (WeaponNBT.getLeechLevel(stack) > 0) {
tooltip.add(ChatFormatting.LIGHT_PURPLE + "Life Steal: " + WeaponNBT.getLeechLevel(stack));
//}
//if (WeaponNBT.getSharpnessLevel(stack) > 0) {
tooltip.add(ChatFormatting.WHITE + "Sharpness: " + WeaponNBT.getSharpnessLevel(stack));
}
//}
}
}
}

View File

@@ -33,7 +33,7 @@ import java.util.List;
public class CustomSword extends ItemSword implements WeaponNBT {
private double attack, speed;
private ToolMaterial toolMaterial;
public ToolMaterial toolMaterial;
public CustomSword(String name, ToolMaterial material, double attackDamage, double attackSpeed) {
super(material);
this.setUnlocalizedName(name);
@@ -64,7 +64,7 @@ public class CustomSword extends ItemSword implements WeaponNBT {
return 0;
}
@Override
/*@Override
public void onUpdate(ItemStack stack, World world, Entity playerin, int itemSlot, boolean isSelected) {
if(!world.isRemote){
if(isSelected) {
@@ -100,6 +100,22 @@ public class CustomSword extends ItemSword implements WeaponNBT {
//System.out.println(WeaponNBT.getSharpnessLevel(stack));
}
}
}*/
@Override
public void onUpdate(ItemStack item, World world, Entity player, int itemSlot, boolean isSelected) {
//System.out.println(item.getTagCompound());
if(!item.hasTagCompound()) {
WeaponNBT.setDefaultNBT(item);
}
}
@Override
public void onCreated(ItemStack item, World worldIn, EntityPlayer playerIn) {
if(!item.hasTagCompound()) {
WeaponNBT.setDefaultNBT(item);
}
}
@Override
@@ -145,21 +161,28 @@ public class CustomSword extends ItemSword implements WeaponNBT {
tooltip.add(ChatFormatting.LIGHT_PURPLE + "Damage: " + stack.getItemDamage() );
if(stack.hasTagCompound())
{
tooltip.add(ChatFormatting.GRAY + "Upgrades left: " + (WeaponNBT.materialModifiers.get(this.toolMaterial) - WeaponNBT.getModifiers(stack)));
if (WeaponNBT.getSmiteLevel(stack) > 0) {
if (stack.getSubCompound("tags") != null) {
//System.out.println(WeaponNBT.materialModifiers.get(this.toolMaterial));
//System.out.println(stack.getSubCompound("tags").getInteger("modifiers"));
tooltip.add(ChatFormatting.GRAY + "Upgrades left: " + (WeaponNBT.materialModifiers.get(this.toolMaterial) - WeaponNBT.getModifiers(stack)));
//if (WeaponNBT.getSmiteLevel(stack) > 0) {
tooltip.add(ChatFormatting.GOLD + "Holy: " + WeaponNBT.getSmiteLevel(stack));
}
if (WeaponNBT.getBaneLevel(stack) > 0) {
//}
//if (WeaponNBT.getBaneLevel(stack) > 0) {
tooltip.add(ChatFormatting.GREEN + "Spider Killing: " + WeaponNBT.getBaneLevel(stack));
}
if (WeaponNBT.getFireLevel(stack) > 0) {
//}
//if (WeaponNBT.getFireLevel(stack) > 0) {
tooltip.add(ChatFormatting.RED + "Flame: " + WeaponNBT.getFireLevel(stack));
}
if (WeaponNBT.getFortuneLevel(stack) > 0) {
//}
//if (WeaponNBT.getFortuneLevel(stack) > 0) {
tooltip.add(ChatFormatting.BLUE + "Thieving: " + WeaponNBT.getFortuneLevel(stack));
}
if (WeaponNBT.getLeechLevel(stack) > 0) {
tooltip.add(ChatFormatting.BLACK + "Life Steal: " + WeaponNBT.getLeechLevel(stack));
//}
//if (WeaponNBT.getLeechLevel(stack) > 0) {
tooltip.add(ChatFormatting.LIGHT_PURPLE + "Life Steal: " + WeaponNBT.getLeechLevel(stack));
//}
//if (WeaponNBT.getSharpnessLevel(stack) > 0) {
tooltip.add(ChatFormatting.WHITE + "Sharpness: " + WeaponNBT.getSharpnessLevel(stack));
//}
}
}
}

View File

@@ -2,6 +2,8 @@ package nmd.primal.forgecraft.items.weapons;
import com.google.common.collect.HashMultimap;
import com.google.common.collect.Multimap;
import com.mojang.realmsclient.gui.ChatFormatting;
import net.minecraft.client.util.ITooltipFlag;
import net.minecraft.entity.Entity;
import net.minecraft.entity.SharedMonsterAttributes;
import net.minecraft.entity.ai.attributes.AttributeModifier;
@@ -17,6 +19,9 @@ import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.util.WeaponNBT;
import javax.annotation.Nullable;
import java.util.List;
/**
* Created by mminaie on 6/25/17.
*/
@@ -61,4 +66,34 @@ public class SlayerSword extends CustomSword {
}
}
@Override
@SideOnly(Side.CLIENT)
public void addInformation(ItemStack stack, @Nullable World world, List<String> tooltip, ITooltipFlag flagIn) {
tooltip.add(ChatFormatting.LIGHT_PURPLE + "Damage: " + stack.getItemDamage());
if (stack.hasTagCompound()) {
if (stack.getSubCompound("tags") != null) {
//System.out.println(WeaponNBT.materialModifiers.get(this.toolMaterial));
//System.out.println(stack.getSubCompound("tags").getInteger("modifiers"));
tooltip.add(ChatFormatting.GRAY + "Upgrades left: " + (WeaponNBT.materialModifiers.get(this.toolMaterial) - WeaponNBT.getModifiers(stack)));
//if (WeaponNBT.getSmiteLevel(stack) > 0) {
tooltip.add(ChatFormatting.GOLD + "Holy: " + WeaponNBT.getSmiteLevel(stack));
//}
//if (WeaponNBT.getBaneLevel(stack) > 0) {
tooltip.add(ChatFormatting.GREEN + "Spider Killing: " + WeaponNBT.getBaneLevel(stack));
//}
//if (WeaponNBT.getFireLevel(stack) > 0) {
tooltip.add(ChatFormatting.RED + "Flame: " + WeaponNBT.getFireLevel(stack));
//}
//if (WeaponNBT.getFortuneLevel(stack) > 0) {
tooltip.add(ChatFormatting.BLUE + "Thieving: " + WeaponNBT.getFortuneLevel(stack));
//}
//if (WeaponNBT.getLeechLevel(stack) > 0) {
tooltip.add(ChatFormatting.LIGHT_PURPLE + "Life Steal: " + WeaponNBT.getLeechLevel(stack));
//}
//if (WeaponNBT.getSharpnessLevel(stack) > 0) {
tooltip.add(ChatFormatting.WHITE + "Sharpness: " + WeaponNBT.getSharpnessLevel(stack));
//}
}
}
}
}

View File

@@ -76,15 +76,18 @@ public class TileNBTCrucible extends BaseTile implements ITickable {
private void dropsManager(){
CrucibleCrafting recipe = CrucibleCrafting.getRecipe(this.ingList.get(0), this.ingList.get(1), this.ingList.get(2), this.ingList.get(3), this.ingList.get(4));
if(recipe!=null){
if( (this.getHot() == 15) && (this.getStatus()) ){
this.setDrops(recipe.getDropsCooked());
this.updateBlock();
this.markDirty();
} else if ((this.getHot() == 15) && (!this.getStatus())){
if(recipe!=null) {
if(this.getDrops() == null){
this.setDrops(recipe.getDropsRaw());
this.updateBlock();
this.markDirty();
}
if(this.getDrops() != recipe.getDropsCooked()) {
if ((this.getHot() == 6) && (this.getStatus())) {
this.setDrops(recipe.getDropsCooked());
}
if ((this.getHot() == 15) && (this.getStatus())) {
this.setDrops(recipe.getDropsRaw());
}
}
}
}
@@ -95,8 +98,6 @@ public class TileNBTCrucible extends BaseTile implements ITickable {
if(this.getHeat() > 0){
this.setHeat( this.getHeat() - 1);
world.setBlockState(pos, state.withProperty(PrimalAPI.States.LAYERS, 15), 2);
this.updateBlock();
this.markDirty();
}
if(this.getHeat() == 0){
this.setHot(6);

View File

@@ -8,9 +8,9 @@ import net.minecraft.util.EnumFacing;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
import nmd.primal.core.api.PrimalAPI;
import nmd.primal.core.common.crafting.handlers.inworld.GallagherRecipe;
import nmd.primal.core.common.helper.PlayerHelper;
import nmd.primal.core.common.helper.RecipeHelper;
import nmd.primal.core.common.recipes.inworld.GallagherRecipe;
import nmd.primal.forgecraft.blocks.CustomContainerFacing;
import nmd.primal.forgecraft.tiles.TileBreaker;

View File

@@ -105,4 +105,15 @@ public interface ToolNBT {
return null;
}
static void setDefaultNBT(ItemStack stack) {
stack.getOrCreateSubCompound("tags");
stack.getSubCompound("tags").setBoolean("hot", false);
stack.getSubCompound("tags").setBoolean("emerald", false);
stack.getSubCompound("tags").setInteger("diamond", 0);
stack.getSubCompound("tags").setInteger("redstone", 0);
stack.getSubCompound("tags").setInteger("lapis", 0);
stack.getSubCompound("tags").setInteger("modifiers", 0);
}
}

View File

@@ -0,0 +1,183 @@
itemGroup.forgecraft=ForgeCraft
tile.castingform.name=Литейная Форма
tile.castingblock.name=Литейный Блок
tile.bloomery_adobe.name=Кричная Плавильня
tile.bloomery_brick.name=Саманная Плавильня
tile.forge_brick.name=Киричная кузница
tile.forge_adobe.name=Саманная кузница
tile.blockbreaker.name=Разрушитель Блоков
tile.stoneanvil.name=Каменная Наковальня
tile.ironanvil.name=Железная Наковальня
tile.yewstave.name=Тисовый Стан
tile.nbtcrucible.name=Тигель
tile.pistonbellowsoak.name=Дубовые Кузнечные Меха
tile.pistonbellowsjungle.name=Тропические Кузнечные Меха
tile.pistonbellowsbirch.name=Березовые Кузнечные Меха
tile.pistonbellowsspruce.name=Еловые Кузнечные Меха
tile.pistonbellowsdarkoak.name=Темнодеревные Кузнечные Меха
tile.pistonbellowsacacia.name=Акациевые Кузнечные Меха
tile.steelchisel.name=Стальное Зубило
tile.wootzchisel.name= Дамасское Зубило
tile.cleanironchisel.name=Чистое железное Зубило
tile.ironchisel.name=Зубило из кованого железа
tile.copperchisel.name=Медное Зубило
tile.bronzechisel.name=Бронзовое Зубило
tile.toolbench.name=Инструментальный Стол
tile.sharpbench.name=Точильный Стол
item.bronzeingotball.name=Бронзовый Слиток
item.bronzechunk.name=Кусочек Бронзы
item.ironingotball.name=Кованный Железный Слиток
item.wroughtironchunk.name=Кованный Железный Кусочек
item.ironcleaningotball.name=Чистый Железный Слиток
item.ironcleanchunk.name=Кусочек Чистого Железа
item.steelingotball.name=Стальной Слиток
item.steelchunk.name=Стальной Кусочек
item.wootzingotball.name=Слиток Дамасской Стали
item.wootzchunk.name=Кусочек Дамасской Стали
item.brokenbronzetool.name=Сломанный Бронзовый Инструмент
item.brokenwroughtirontool.name=Сломанный Инструмент Из Кованого Железа
item.brokencleanirontool.name=Сломанный Инструмент из Чистого Железа
item.brokensteeltool.name=Сломанный Стальной Инструмет
item.brokenwootztool.name=Сломанный Инструмент из Дамасской Стали
item.unstrunglongbow.name=Обработанный Длинный Лук
item.longbow.name=Длинный Лук
item.rawlongbow.name=Необработанный Длинный Лук
item.grindingwheel.name=Шлифовальный круг
item.rawironslayer.name=Необработанный убийца из кованого железа
item.bellowshandle.name=Ручка Мехов
item.softcrucible.name=Мягкий Тигель
item.slottedtongs.name=Каменные Щипцы
item.forgehammer.name=Кузнечный Молот
item.cast_axe.name=Отлитый Топор
item.cast_gladius.name=Отлитый Меч
item.cast_pickaxe.name=Отлитая Кирка
item.cast_shovel.name=Отлитая Лопата
item.cast_hoe.name=Отлитая Мотыга
item.castingmud.name=Отливочная глина
item.rawcoppergladius.name=Необработанный Медный Меч
item.rawbronzegladius.name=Необработанный Бронзовый Меч
item.rawwroughtirongladius.name=Необработанный Меч из Кованного Железа
item.rawcleanirongladius.name=Необработанный Меч из Чистого Железа
item.rawsteelgladius.name=Необработанный Стальной Меч
item.rawwootzgladius.name=Необработанный Меч из Дамасской Стали
item.rawcleanironlongsword.name=Необработанный Clean Iron Longsword
item.rawsteellongsword.name=Необработанный Steel Longsword
item.rawwootzlongsword.name=Необработанный Damascus Longsword
item.rawtironslayer.name=Необработанный Кованный Убийца
item.rawcleanironslayer.name=Необработанный Убийца из Чистого Железа
item.rawsteelslayer.name=Необработанный Стальной Убийца
item.rawwootzslayer.name=Необработанный Убийца из Дамасской Стали
item.coppergladius.name=Медный Меч
item.bronzegladius.name=Бронзовый Меч
item.wroughtirongladius.name=Кованный Меч
item.cleanirongladius.name=Меч из Чистого Желаза
item.steelgladius.name=Стальной Меч
item.wootzgladius.name=Дамасский Меч
item.cleanironlongsword.name=Чистый Железный Длинный Меч
item.steellongsword.name=Стальной Длинный Меч
item.wootzlongsword.name=Дамасский Длинный Меч
item.wroughtironslayer.name=Кованный Убийца
item.cleanironslayer.name=Чистый Железный Убийца
item.steelslayer.name=Стальной Убийца
item.wootzslayer.name=Дамасский Убийца
item.bronzepickaxehead.name=Бронзовоя навершие кирки
item.bronzeaxehead.name=Бронзовое навершие топора
item.bronzeshovelhead.name=Бронзовое навершие лопаты
item.bronzehoehead.name=Бронзовое навершие мотыги
item.bronzepickaxe.name=Бронзовая Кирка
item.bronzeaxe.name=Бронзовый Топор
item.bronzeshovel.name=Бронзовая Лопата
item.bronzehoe.name=Бронзовая Мотыга
item.ironpickaxehead.name=Железное навершие кирки
item.ironaxehead.name=Железное навершие топора
item.ironshovelhead.name=Железное навершие лопаты
item.ironhoehead.name=Железное навершие мотыги
item.ironpickaxe.name=Железная Кирка
item.ironaxe.name=Железный Топор
item.ironshovel.name=Железная Лопата
item.ironhoe.name=Железная Мотыга
item.ironsword.name=Железный Меч
item.cleanironpickaxehead.name=Чистое железное навершие кирки
item.cleanironaxehead.name=Чистое железное навершие топора
item.cleanironshovelhead.name=Чистое железное навершие лопаты
item.cleanironhoehead.name=Чистое железное навершие мотыги
item.cleanironpickaxe.name=Чистая железная кирка
item.cleanironaxe.name=Чистый Железный Топор
item.cleanironshovel.name=Чистая Железная Лопата
item.cleanironhoe.name=Чистая Железная Мотыга
#item.cleanironsword.name=Чистый Железный Меч
item.steelpickaxehead.name=Стальное навершие кирки
item.steelaxehead.name=Стальное навершие топора
item.steelshovelhead.name=Стальное навершие лопаты
item.steelhoehead.name=Стальное навершие мотыги
item.steelpickaxe.name=Стальная Кирка
item.steelaxe.name=Стальной Топор
item.steelshovel.name=Стальная Лопата
item.steelhoe.name=Стальная Мотыга
#item.steelsword.name=Стальной Меч
item.wootzpickaxehead.name=Дамасское навершие кирки
item.wootzaxehead.name=Дамасское навершие топора
item.wootzshovelhead.name=Дамасское навершие лопаты
item.wootzhoehead.name=Дамасское навершие мотыги
item.wootzpickaxe.name=Дамасская Кирка
item.wootzaxe.name=Дамасский Топор
item.wootzshovel.name=Дамасская Лопата
item.wootzhoe.name=Дамасская Мотыга
item.copperpickaxehead.name=Медное навершие Кирки
item.copperaxehead.name=Медное навершие топора
item.coppershovelhead.name=Медное навершие лопаты
item.copperhoehead.name=Медное навершие мотыги
item.copperpickaxe.name=Медная Кирка
item.copperaxe.name=Медный Топор
item.coppershovel.name=Медная Лопата
item.copperhoe.name=Медная Мотыга
item.coppergladius.name=Медный Меч
item.leatherhelmet.name=Закаленный кожаный шлем
item.wootzsledgehammer.name=Дамасский Кузнечный Молот
item.steelsledgehammer.name=Стальной Кузнечный Молот
item.cleanironsledgehammer.name=Чистый Железный Кузнечный Молот
item.ironsledgehammer.name=Кованный Кузнечный Молот
item.bronzesledgehammer.name=Бронзовый Кузнечный Молот
item.coppersledgehammer.name=Медный Кузнечный Молот
item.wootzworkblade.name=Дамасский Рабочий Нож
# -- configuration -- #
forgecraft.config.title=ForgeCraft Config
forgecraft.compatibility=Совместимость
forgecraft.compatibility.tooltip=Особенности Совместимости
jei.category.forgecraft.crucible=Изготовление Тиглей
jei.category.forgecraft.anvil=Изготовление Наковален
jei.category.forgecraft.casting=Литье
jei.category.forgecraft.forging=Кузница
jei.category.forgecraft.workbench=Инструментальный Стол
jei.info.forgecraft.casting=Щелкните правой кнопкой мыши форму литья, удерживая горячий тигель из крафт-материала.
jei.info.forgecraft.sharpbench=Щелкните правой кнопкой мыши пустой рукой, чтобы запустить шлифовальный круг. Прикоснитесь к шлифовальному кругу, держа головку оружия или инструмента.

View File

@@ -1,8 +1,9 @@
{
"parent": "forgecraft:block/castingcrucible",
"parent": "forgecraft:block/castingcrucible3",
"textures": {
"particle": "forgecraft:blocks/stone_slab_hot",
"texture": "forgecraft:blocks/stone_slab_hot",
"texture1": "forgecraft:items/hot_bronze"
"particle": "forgecraft:blocks/stone_slab",
"texture": "forgecraft:blocks/stone_slab",
"texture1": "forgecraft:blocks/crucible_cooked",
"texture3": "forgecraft:blocks/crucible_cooked"
}
}
}

View File

@@ -2,7 +2,7 @@
"modid": "forgecraft",
"name": "Kitsu's Forgecraft",
"description": "Forged with sweat and blood",
"version": "1.6.42",
"version": "1.6.51",
"mcversion": "1.12.2",
"url": "",
"updateUrl": "",