Silky
@ -59,6 +59,34 @@
|
||||
<entry key="item.oreberry.aluminum.name">Aluminum Oreberry</entry>
|
||||
<entry key="item.oreberry.silver.name">Silver Oreberry</entry>
|
||||
|
||||
<entry key="item.tconstruct.Materials.PaperStack.name">Paper Stack</entry>
|
||||
<entry key="item.tconstruct.Materials.SlimeCrystal.name">Slime Crystal</entry>
|
||||
<entry key="item.tconstruct.Materials.SearedBrick.name">Seared Brick</entry>
|
||||
<entry key="item.tconstruct.Materials.CobaltIngot.name">Cobalt Ingot</entry>
|
||||
<entry key="item.tconstruct.Materials.ArditeIngot.name">Ardite Ingot</entry>
|
||||
<entry key="item.tconstruct.Materials.ManyullynIngot.name">Manyullyn Ingot</entry>
|
||||
<entry key="item.tconstruct.Materials.Mossball.name">Ball of Moss</entry>
|
||||
<entry key="item.tconstruct.Materials.LavaCrystal.name">Lava Crystal</entry>
|
||||
<entry key="item.tconstruct.Materials.NecroticBone.name">Necrotic Bone"</entry>
|
||||
<entry key="item.tconstruct.Materials.CopperIngot.name">Copper Ingot</entry>
|
||||
<entry key="item.tconstruct.Materials.TinIngot.name">Tin Ingot</entry>
|
||||
<entry key="item.tconstruct.Materials.AluminumIngot.name">Aluminum Ingot</entry>
|
||||
<entry key="item.tconstruct.Materials.RawAluminum.name">Raw Aluminum</entry>
|
||||
<entry key="item.tconstruct.Materials.BronzeIngot.name">Bronze Ingot</entry>
|
||||
<entry key="item.tconstruct.Materials.AluBrassIngot.name">Aluminum Brass Ingot</entry>
|
||||
<entry key="item.tconstruct.Materials.AlumiteIngot.name">Alumite Ingot</entry>
|
||||
<entry key="item.tconstruct.Materials.SteelIngot.name">Steel Ingot</entry>
|
||||
<entry key="item.tconstruct.Materials.BlueSlimeCrystal.name">Slime Crystal</entry>
|
||||
<entry key="item.tconstruct.Materials.ObsidianIngot.name">Obsidian Ingot</entry>
|
||||
<entry key="item.tconstruct.Materials.IronNugget.name">Iron Nugget</entry>
|
||||
<entry key="item.tconstruct.Materials.CopperNugget.name">Copper Nugget</entry>
|
||||
<entry key="item.tconstruct.Materials.TinNugget.name">Tin Nugget</entry>
|
||||
<entry key="item.tconstruct.Materials.AluminumNugget.name">Aluminum Nugget</entry>
|
||||
<entry key="item.tconstruct.Materials.SilverNugget.name">Silver Nugget</entry>
|
||||
<entry key="item.tconstruct.Materials.AluBrassNugget.name">Aluminum Brass Nugget</entry>
|
||||
<entry key="item.tconstruct.Materials.SilkyCloth.name">Silky Cloth</entry>
|
||||
<entry key="item.tconstruct.Materials.SilkyJewel.name">Silky Jewel</entry>
|
||||
|
||||
<entry key="Smeltery.Controller.name">Smeltery Controller</entry>
|
||||
<entry key="Smeltery.Drain.name">Smeltery Drain</entry>
|
||||
<entry key="Smeltery.Brick.name">Seared Bricks</entry>
|
||||
@ -112,7 +140,7 @@
|
||||
<entry key="LiquidMetal.Cobalt.name">Liquid Cobalt</entry>
|
||||
<entry key="LiquidMetal.Ardite.name">Liquid Ardite</entry>
|
||||
<entry key="LiquidMetal.Bronze.name">Liquid Bronze</entry>
|
||||
<entry key="LiquidMetal.AlBrass.name">Liquid Aluminum Brass</entry>
|
||||
<entry key="LiquidMetal.AluBrass.name">Liquid Aluminum Brass</entry>
|
||||
<entry key="LiquidMetal.Manyullyn.name">Liquid Manyullyn</entry>
|
||||
<entry key="LiquidMetal.Alumite.name">Liquid Alumite</entry>
|
||||
<entry key="LiquidMetal.Obsidian.name">Liquid Obsidian</entry>
|
||||
|
@ -524,6 +524,7 @@ Effects:
|
||||
- Smelts blocks as they're harvested
|
||||
- Sets mobs on fire for 3 seconds
|
||||
- Stacks with Luck
|
||||
- Not compatible with Silky
|
||||
|
||||
Type: Multi-use
|
||||
Stackable: No</text>
|
||||
@ -542,6 +543,7 @@ Effects:
|
||||
- Adds fortune or looting, depends on tool type
|
||||
- Increases level at a maximum threshold, but has a chance of increasing before
|
||||
- Sometimes adds extra pieces for free
|
||||
- Not compatible with Silky
|
||||
|
||||
Type: Single-use
|
||||
Stackable: No</text>
|
||||
@ -603,6 +605,39 @@ Stackable: Yes</text>
|
||||
<recipe>necroticmod</recipe>
|
||||
</page>
|
||||
|
||||
<page type="sectionpage">
|
||||
<title>Silky</title>
|
||||
<text>Adding a large glob of alunimum brass or gold and a bunch of string seems to give the tool silky-smooth properties.
|
||||
|
||||
Effects:
|
||||
- Allows blocks to be harvested directly
|
||||
- Not compatible with Luck or Auto-Smelt
|
||||
|
||||
Type: Single-use
|
||||
Stackable: No</text>
|
||||
</page>
|
||||
|
||||
<page type="modifier">
|
||||
<tooltype>tool</tooltype>
|
||||
<recipe>silkymod</recipe>
|
||||
</page>
|
||||
|
||||
<page type="crafting">
|
||||
<text>Silky Cloth</text>
|
||||
<recipe>
|
||||
<name>silkycloth</name>
|
||||
<size>three</size>
|
||||
</recipe>
|
||||
</page>
|
||||
|
||||
<page type="crafting">
|
||||
<text>Silky Jewel</text>
|
||||
<recipe>
|
||||
<name>silkyjewel</name>
|
||||
<size>three</size>
|
||||
</recipe>
|
||||
</page>
|
||||
|
||||
<page type="sectionpage">
|
||||
<title>Electric</title>
|
||||
<text>Adding a battery and a circuit to a tool gives it an electric field. The tool still functions properly when the battery has no charge.
|
||||
|
@ -32,10 +32,10 @@ import cpw.mods.fml.common.registry.VillagerRegistry;
|
||||
/** TConstruct, the tool mod.
|
||||
* Craft your tools with style, then modify until the original is gone!
|
||||
* @author: mDiyo
|
||||
* @dependencies: IC2 API, EBXL API
|
||||
* @dependencies: IC2 API
|
||||
*/
|
||||
|
||||
@Mod(modid = "TConstruct", name = "TConstruct", version = "1.5.1_1.3.2.dev31", dependencies = "required-after:Forge@[7.7.1.675,)")
|
||||
@Mod(modid = "TConstruct", name = "TConstruct", version = "1.5.1_1.3.2.dev33", dependencies = "required-after:Forge@[7.7.1.675,)")
|
||||
@NetworkMod(serverSideRequired = false, clientSideRequired = true, channels = { "TConstruct" }, packetHandler = mods.tinker.tconstruct.util.network.TPacketHandler.class)
|
||||
public class TConstruct
|
||||
{
|
||||
|
@ -303,6 +303,7 @@ public class TProxyClient extends TProxyCommon
|
||||
TConstructClientRegistry.registerManualIcon("copperingot", new ItemStack(TContent.materials, 1, 9));
|
||||
TConstructClientRegistry.registerManualIcon("steelingot", new ItemStack(TContent.materials, 1, 16));
|
||||
|
||||
|
||||
//Tool parts
|
||||
TConstructClientRegistry.registerManualIcon("pickhead", new ItemStack(TContent.pickaxeHead, 1, 2));
|
||||
TConstructClientRegistry.registerManualIcon("shovelhead", new ItemStack(TContent.shovelHead, 1, 2));
|
||||
@ -366,6 +367,9 @@ public class TProxyClient extends TProxyCommon
|
||||
ItemStack slimyMud = new ItemStack(TContent.craftedSoil);
|
||||
ItemStack blazerod = new ItemStack(Item.blazeRod);
|
||||
ItemStack firecharge = new ItemStack(Item.fireballCharge);
|
||||
ItemStack string = new ItemStack(Item.silk);
|
||||
|
||||
ItemStack silkyCloth = new ItemStack(TContent.materials, 1, 25);
|
||||
|
||||
//TConstruct recipes
|
||||
TConstructClientRegistry.registerManualSmallRecipe("blankpattern", pattern, plank, stick, stick, plank);
|
||||
@ -381,6 +385,10 @@ public class TProxyClient extends TProxyCommon
|
||||
mossycobble, mossycobble, mossycobble);
|
||||
TConstructClientRegistry.registerManualLargeRecipe("lavacrystal", new ItemStack(TContent.materials, 1, 7), blazerod, firecharge, blazerod, firecharge, new ItemStack(Item.bucketLava),
|
||||
firecharge, blazerod, firecharge, blazerod);
|
||||
TConstructClientRegistry.registerManualLargeRecipe("silkycloth", silkyCloth, string, string, string, string, new ItemStack(TContent.materials, 1, 24),
|
||||
string, string, string, string);
|
||||
TConstructClientRegistry.registerManualLargeRecipe("silkyjewel", new ItemStack(TContent.materials, 1, 26), null, silkyCloth, null, silkyCloth, new ItemStack(Item.emerald),
|
||||
silkyCloth, null, silkyCloth, null);
|
||||
|
||||
TConstructClientRegistry.registerManualSmallRecipe("grout", grout, sand, gravel, null, clay);
|
||||
TConstructClientRegistry.registerManualFurnaceRecipe("searedbrick", searedbrick, grout);
|
||||
@ -418,6 +426,7 @@ public class TProxyClient extends TProxyCommon
|
||||
TConstructClientRegistry.registerManualModifier("quartzmod", ironlongsword.copy(), new ItemStack(Item.netherQuartz), new ItemStack(Block.blockNetherQuartz));
|
||||
TConstructClientRegistry.registerManualModifier("blazemod", ironlongsword.copy(), new ItemStack(Item.blazePowder));
|
||||
TConstructClientRegistry.registerManualModifier("necroticmod", ironlongsword.copy(), new ItemStack(TContent.materials, 1, 8));
|
||||
TConstructClientRegistry.registerManualModifier("silkymod", ironpick.copy(), new ItemStack(TContent.materials, 1, 26));
|
||||
TConstructClientRegistry.registerManualModifier("electricmod", ironpick.copy(), new ItemStack(Block.dirt), new ItemStack(Block.dirt));
|
||||
TConstructClientRegistry.registerManualModifier("tier1free", ironpick.copy(), new ItemStack(Item.diamond), new ItemStack(Block.blockGold));
|
||||
TConstructClientRegistry.registerManualModifier("tier2free", ironpick.copy(), new ItemStack(Item.netherStar));
|
||||
@ -517,12 +526,12 @@ public class TProxyClient extends TProxyCommon
|
||||
{
|
||||
String[] partTypes = { "wood", "stone", "iron", "flint", "cactus", "bone", "obsidian", "netherrack", "slime", "paper", "cobalt", "ardite", "manyullyn", "copper", "bronze", "alumite", "steel",
|
||||
"blueslime" };
|
||||
String[] effectTypes = { "diamond", "emerald", "redstone", "glowstone", "moss", "ice", "lava", "blaze", "necrotic", "electric", "lapis", "quartz" };
|
||||
int[] validHarvestEffects = { 0, 1, 2, 4, 6, 7, 8, 9, 10, 11 };
|
||||
int[] validWeaponEffects = { 0, 1, 4, 5, 6, 7, 8, 9, 10, 11};
|
||||
String[] effectTypes = { "diamond", "emerald", "redstone", "glowstone", "moss", "ice", "lava", "blaze", "necrotic", "electric", "lapis", "quartz", "silk" };
|
||||
int[] validHarvestEffects = { 0, 1, 2, 4, 6, 7, 8, 9, 10, 11, 12 };
|
||||
int[] validWeaponEffects = { 0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 12 };
|
||||
int[] validUtilityEffects = { 0, 1, 4, 9 };
|
||||
|
||||
int[] validDaggerEffects = { 0, 1, 2, 4, 5, 6, 7, 8, 9, 10, 11};
|
||||
int[] validDaggerEffects = { 0, 1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 12 };
|
||||
|
||||
for (int partIter = 0; partIter < partTypes.length; partIter++)
|
||||
{
|
||||
|
@ -36,6 +36,7 @@ import mods.tinker.tconstruct.items.CraftingItem;
|
||||
import mods.tinker.tconstruct.items.FilledBucket;
|
||||
import mods.tinker.tconstruct.items.HeartContainer;
|
||||
import mods.tinker.tconstruct.items.Manual;
|
||||
import mods.tinker.tconstruct.items.MaterialItem;
|
||||
import mods.tinker.tconstruct.items.MetalPattern;
|
||||
import mods.tinker.tconstruct.items.OreBerries;
|
||||
import mods.tinker.tconstruct.items.Pattern;
|
||||
@ -77,8 +78,9 @@ import mods.tinker.tconstruct.library.crafting.ToolBuilder;
|
||||
import mods.tinker.tconstruct.library.tools.ToolCore;
|
||||
import mods.tinker.tconstruct.library.util.IPattern;
|
||||
import mods.tinker.tconstruct.modifiers.ModAttack;
|
||||
import mods.tinker.tconstruct.modifiers.ModAutoSmelt;
|
||||
import mods.tinker.tconstruct.modifiers.ModBlaze;
|
||||
import mods.tinker.tconstruct.modifiers.ModBoolean;
|
||||
import mods.tinker.tconstruct.modifiers.ModButtertouch;
|
||||
import mods.tinker.tconstruct.modifiers.ModDurability;
|
||||
import mods.tinker.tconstruct.modifiers.ModElectric;
|
||||
import mods.tinker.tconstruct.modifiers.ModExtraModifier;
|
||||
@ -374,15 +376,7 @@ public class TContent implements IFuelHandler
|
||||
String[] blanks = new String[] { "blank_pattern", "blank_cast" };
|
||||
blankPattern = new CraftingItem(PHConstruct.blankPattern, blanks, blanks, "materials/").setUnlocalizedName("tconstruct.Pattern");
|
||||
|
||||
String[] craftingMaterials = new String[] { "PaperStack", "SlimeCrystal", "SearedBrick", "CobaltIngot", "ArditeIngot", "ManyullynIngot", "Mossball", "LavaCrystal", "NecroticBone",
|
||||
"CopperIngot", "TinIngot", "AluminumIngot", "RawAluminum", "BronzeIngot", "AlBrassIngot", "AlumiteIngot", "SteelIngot", "BlueSlimeCrystal", "ObsidianIngot", "IronNugget",
|
||||
"CopperNugget", "TinNugget", "AluminumNugget", "SilverNugget" };
|
||||
String[] craftingTextures = new String[] { "material_paperstack", "material_slimecrystal", "material_searedbrick", "material_cobaltingot", "material_arditeingot", "material_manyullyningot",
|
||||
"material_mossball", "material_lavacrystal", "material_necroticbone", "material_copperingot", "material_tiningot", "material_aluminumingot", "material_aluminumraw",
|
||||
"material_bronzeingot", "material_alubrassingot", "material_alumiteingot", "material_steelingot", "material_blueslimecrystal", "material_obsidianingot", "material_nugget_iron",
|
||||
"material_nugget_copper", "material_nugget_tin", "material_nugget_aluminum", "material_nugget_silver" };
|
||||
|
||||
materials = new CraftingItem(PHConstruct.materials, craftingMaterials, craftingTextures, "materials/").setUnlocalizedName("tconstruct.Materials");
|
||||
materials = new MaterialItem(PHConstruct.materials).setUnlocalizedName("tconstruct.Materials");
|
||||
toolRod = new ToolPart(PHConstruct.toolRod, "ToolRod", "_rod").setUnlocalizedName("tconstruct.ToolRod");
|
||||
TConstructRegistry.toolRod = toolRod;
|
||||
toolShard = new ToolShard(PHConstruct.toolShard, "ToolShard", "_chunk").setUnlocalizedName("tconstruct.ToolShard");
|
||||
@ -578,7 +572,7 @@ public class TContent implements IFuelHandler
|
||||
ItemStack blazePowder = new ItemStack(Item.blazePowder);
|
||||
tb.registerToolMod(new ModBlaze(new ItemStack[] { blazePowder }, 7, 1));
|
||||
tb.registerToolMod(new ModBlaze(new ItemStack[] { blazePowder, blazePowder }, 7, 2));
|
||||
tb.registerToolMod(new ModBoolean(new ItemStack[] { new ItemStack(materials, 1, 7) }, 6, "Lava", "\u00a74", "Auto-Smelt"));
|
||||
tb.registerToolMod(new ModAutoSmelt(new ItemStack[] { new ItemStack(materials, 1, 7) }, 6, "Lava", "\u00a74", "Auto-Smelt"));
|
||||
tb.registerToolMod(new ModInteger(new ItemStack[] { new ItemStack(materials, 1, 8) }, 8, "Necrotic", 1, "\u00a78", "Life Steal"));
|
||||
|
||||
ItemStack quartzItem = new ItemStack(Item.netherQuartz);
|
||||
@ -592,6 +586,9 @@ public class TContent implements IFuelHandler
|
||||
tb.registerToolMod(new ModExtraModifier(new ItemStack[] { diamond, new ItemStack(Block.blockGold) }, "Tier1Free"));
|
||||
tb.registerToolMod(new ModExtraModifier(new ItemStack[] { new ItemStack(Item.netherStar) }, "Tier2Free"));
|
||||
|
||||
ItemStack silkyJewel = new ItemStack(materials, 1, 26);
|
||||
tb.registerToolMod(new ModButtertouch(new ItemStack[] {silkyJewel}, 12));
|
||||
|
||||
/* Smeltery */
|
||||
ItemStack ingotcast = new ItemStack(metalPattern, 1, 0);
|
||||
|
||||
@ -746,6 +743,10 @@ public class TContent implements IFuelHandler
|
||||
FurnaceRecipes.smelting().addSmelting(craftedSoil.blockID, 2, new ItemStack(materials, 1, 17), 2f); //Blue Slime
|
||||
//GameRegistry.addRecipe(new ItemStack(oreSlag, 1, 0), "pp", "pp", 'p', new ItemStack(materials, 1, 2)); //Seared brick block
|
||||
|
||||
GameRegistry.addRecipe(new ItemStack(materials, 1, 25), "sss", "sns", "sss", 'n', new ItemStack(materials, 1, 24), 's', new ItemStack(Item.silk)); //Silky Cloth
|
||||
GameRegistry.addRecipe(new ItemStack(materials, 1, 25), "sss", "sns", "sss", 'n', new ItemStack(Item.goldNugget), 's', new ItemStack(Item.silk));
|
||||
GameRegistry.addRecipe(new ItemStack(materials, 1, 26), " c ", "cec", " c ", 'c', new ItemStack(materials, 1, 25), 'e', new ItemStack(Item.emerald)); //Silky Jewel
|
||||
|
||||
//FurnaceRecipes.smelting().addSmelting(oreSlag.blockID, 1, new ItemStack(materials, 1, 3), 3f);
|
||||
//FurnaceRecipes.smelting().addSmelting(oreSlag.blockID, 2, new ItemStack(materials, 1, 4), 3f);
|
||||
FurnaceRecipes.smelting().addSmelting(oreSlag.blockID, 3, new ItemStack(materials, 1, 9), 0.5f);
|
||||
@ -783,6 +784,12 @@ public class TContent implements IFuelHandler
|
||||
GameRegistry.addRecipe(new ItemStack(materials, 1, 9), "mmm", "mmm", "mmm", 'm', new ItemStack(materials, 1, 20)); //Copper
|
||||
GameRegistry.addRecipe(new ItemStack(materials, 1, 10), "mmm", "mmm", "mmm", 'm', new ItemStack(materials, 1, 21)); //Tin
|
||||
GameRegistry.addRecipe(new ItemStack(materials, 1, 12), "mmm", "mmm", "mmm", 'm', new ItemStack(materials, 1, 22)); //Aluminum
|
||||
GameRegistry.addRecipe(new ItemStack(materials, 1, 14), "mmm", "mmm", "mmm", 'm', new ItemStack(materials, 1, 24)); //Aluminum Brass
|
||||
|
||||
GameRegistry.addRecipe(new ItemStack(materials, 9, 24), "m", 'm', new ItemStack(materials, 1, 14)); //Aluminum Brass Nugget
|
||||
|
||||
/*OreDictionary.registerOre("ingotAluminumBrass", new ItemStack(materials, 1, 14));
|
||||
OreDictionary.registerOre("nuggetAluminumBrass", new ItemStack(materials, 1, 24));*/
|
||||
|
||||
//Smeltery
|
||||
ItemStack searedBrick = new ItemStack(materials, 1, 2);
|
||||
@ -870,6 +877,7 @@ public class TContent implements IFuelHandler
|
||||
OreDictionary.registerOre("nuggetTin", new ItemStack(materials, 1, 21));
|
||||
OreDictionary.registerOre("nuggetNaturalAluminum", new ItemStack(materials, 1, 22));
|
||||
OreDictionary.registerOre("nuggetSilver", new ItemStack(materials, 1, 23));
|
||||
OreDictionary.registerOre("nuggetAluminumBrass", new ItemStack(materials, 1, 24));
|
||||
|
||||
String[] names = new String[] { "Iron", "Gold", "Copper", "Tin", "Aluminum", "Cobalt", "Ardite", "Bronze", "Brass", "Manyullyn", "Alumite", "Obsidian", "Steel" };
|
||||
liquidIcons = new LiquidStack[names.length];
|
||||
|
@ -104,12 +104,12 @@ public class TProxyCommon implements IGuiHandler
|
||||
LanguageRegistry.instance().addStringLocalization(internalName, "en_US", visibleName);
|
||||
}
|
||||
|
||||
for (int i = 0; i < materialItemNames.length; i++)
|
||||
/*for (int i = 0; i < materialItemNames.length; i++)
|
||||
{
|
||||
String internalName = "item.tconstruct.Materials." + materialItemInternalNames[i] + ".name";
|
||||
String visibleName = materialItemNames[i];
|
||||
LanguageRegistry.instance().addStringLocalization(internalName, "en_US", visibleName);
|
||||
}
|
||||
}*/
|
||||
|
||||
for (int i = 0; i < patterns.length; i++)
|
||||
{
|
||||
@ -162,13 +162,13 @@ public class TProxyCommon implements IGuiHandler
|
||||
public static final String[] shardNames = new String[] { "Wood", "Stone Shard", "Iron Chunk", "Flint Shard", "Cactus Shard", "Bone", "Obsidian Shard", "Netherrack Shard",
|
||||
"Slime Crystal Fragment", "Paper", "Cobalt Chunk", "Ardite Chunk", "Manyullyn Chunk", "Copper Chunk", "Bronze Chunk", "Alumite Chunk", "Steel Chunk", "Slime Crystal Fragment" };
|
||||
|
||||
public static final String[] materialItemInternalNames = new String[] { "PaperStack", "SlimeCrystal", "SearedBrick", "CobaltIngot", "ArditeIngot", "ManyullynIngot", "Mossball", "LavaCrystal",
|
||||
"NecroticBone", "CopperIngot", "TinIngot", "AluminumIngot", "RawAluminum", "BronzeIngot", "AlBrassIngot", "AlumiteIngot", "SteelIngot", "BlueSlimeCrystal", "ObsidianIngot", "IronNugget",
|
||||
/*public static final String[] materialItemInternalNames = new String[] {
|
||||
"IronNugget",
|
||||
"CopperNugget", "TinNugget", "AluminumNugget", "SilverNugget" };
|
||||
|
||||
public static final String[] materialItemNames = new String[] { "Paper Stack", "Slime Crystal", "Seared Brick", "Cobalt Ingot", "Ardite Ingot", "Manyullyn Ingot", "Ball of Moss", "Lava Crystal",
|
||||
"Necrotic Bone", "Copper Ingot", "Tin Ingot", "Aluminum Ingot", "Raw Aluminum", "Bronze Ingot", "Aluminum Brass Ingot", "Alumite Ingot", "Steel Ingot", "Slime Crystal", "Obsidian Ingot", "Iron Nugget",
|
||||
"Copper Nugget", "Tin Nugget", "Aluminum Nugget", "Silver Nugget" };
|
||||
public static final String[] materialItemNames = new String[] {
|
||||
"Iron Nugget",
|
||||
"Copper Nugget", "Tin Nugget", "Aluminum Nugget", "Silver Nugget" };*/
|
||||
|
||||
public static final String[] toolMaterialNames = new String[] { "Wood", "Stone", "Iron", "Flint", "Cactus", "Bone", "Obsidian", "Netherrack", "Slime", "Paper", "Cobalt", "Ardite", "Manyullyn",
|
||||
"Copper", "Bronze", "Alumite", "Steel", "Blue Slime" };
|
||||
|
@ -24,6 +24,7 @@ public class NitroCreeper extends EntityCreeper
|
||||
super(world);
|
||||
this.tasks.addTask(4, new EntityAIAttackOnCollide(this, 1.0F, false));
|
||||
this.texture = "/mods/tinker/textures/mob/creeperunstable.png";
|
||||
this.isImmuneToFire = true;
|
||||
}
|
||||
|
||||
/*@Override
|
||||
|
27
mods/tinker/tconstruct/items/MaterialItem.java
Normal file
@ -0,0 +1,27 @@
|
||||
package mods.tinker.tconstruct.items;
|
||||
|
||||
public class MaterialItem extends CraftingItem
|
||||
{
|
||||
|
||||
public MaterialItem(int id)
|
||||
{
|
||||
super(id, materialNames, getTextures(), "materials/");
|
||||
}
|
||||
|
||||
private static String[] getTextures ()
|
||||
{
|
||||
String[] names = new String[craftingTextures.length];
|
||||
for (int i = 0; i < craftingTextures.length; i++)
|
||||
names[i] = "material_" + craftingTextures[i];
|
||||
return names;
|
||||
}
|
||||
|
||||
static String[] materialNames = new String[] { "PaperStack", "SlimeCrystal", "SearedBrick", "CobaltIngot", "ArditeIngot", "ManyullynIngot", "Mossball", "LavaCrystal", "NecroticBone",
|
||||
"CopperIngot", "TinIngot", "AluminumIngot", "RawAluminum", "BronzeIngot", "AluBrassIngot", "AlumiteIngot", "SteelIngot", "BlueSlimeCrystal", "ObsidianIngot", "IronNugget", "CopperNugget",
|
||||
"TinNugget", "AluminumNugget", "SilverNugget", "AluBrassNugget", "SilkyCloth", "SilkyJewel" };
|
||||
|
||||
static String[] craftingTextures = new String[] { "paperstack", "slimecrystal", "searedbrick", "cobaltingot", "arditeingot", "manyullyningot", "mossball", "lavacrystal", "necroticbone",
|
||||
"copperingot", "tiningot", "aluminumingot", "aluminumraw", "bronzeingot", "alubrassingot", "alumiteingot", "steelingot", "blueslimecrystal", "obsidianingot", "nugget_iron",
|
||||
"nugget_copper", "nugget_tin", "nugget_aluminum", "nugget_silver", "nugget_alubrass", "silkycloth", "silkyjewel" };
|
||||
|
||||
}
|
23
mods/tinker/tconstruct/modifiers/ModAutoSmelt.java
Normal file
@ -0,0 +1,23 @@
|
||||
package mods.tinker.tconstruct.modifiers;
|
||||
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.nbt.NBTTagCompound;
|
||||
|
||||
public class ModAutoSmelt extends ModBoolean
|
||||
{
|
||||
|
||||
public ModAutoSmelt(ItemStack[] items, int effect, String tag, String c, String tip)
|
||||
{
|
||||
super(items, effect, tag, c, tip);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected boolean canModify (ItemStack tool, ItemStack[] input)
|
||||
{
|
||||
NBTTagCompound tags = tool.getTagCompound().getCompoundTag("InfiTool");
|
||||
if (tags.getBoolean("Silk Touch"))
|
||||
return false;
|
||||
return tags.getInteger("Modifiers") > 0 && !tags.getBoolean(key); //Will fail if the modifier is false or the tag doesn't exist
|
||||
}
|
||||
|
||||
}
|
117
mods/tinker/tconstruct/modifiers/ModButtertouch.java
Normal file
@ -0,0 +1,117 @@
|
||||
package mods.tinker.tconstruct.modifiers;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import mods.tinker.tconstruct.library.tools.ToolCore;
|
||||
import mods.tinker.tconstruct.library.tools.ToolMod;
|
||||
import mods.tinker.tconstruct.library.tools.Weapon;
|
||||
import net.minecraft.enchantment.Enchantment;
|
||||
import net.minecraft.enchantment.EnchantmentHelper;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.nbt.NBTTagCompound;
|
||||
import net.minecraft.nbt.NBTTagList;
|
||||
|
||||
public class ModButtertouch extends ModBoolean
|
||||
{
|
||||
|
||||
public ModButtertouch(ItemStack[] items, int effect)
|
||||
{
|
||||
super(items, effect, "Silk Touch", "\u00a7e", "Silky");
|
||||
}
|
||||
|
||||
@Override
|
||||
protected boolean canModify (ItemStack tool, ItemStack[] input)
|
||||
{
|
||||
ToolCore toolItem = (ToolCore) tool.getItem();
|
||||
if (!validType(toolItem))
|
||||
return false;
|
||||
|
||||
NBTTagCompound tags = tool.getTagCompound().getCompoundTag("InfiTool");
|
||||
if (!tags.getBoolean("Lava") && !tags.hasKey("Lapis"))
|
||||
{
|
||||
return tags.getInteger("Modifiers") > 0 && !tags.getBoolean(key);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void modify (ItemStack[] input, ItemStack tool)
|
||||
{
|
||||
NBTTagCompound tags = tool.getTagCompound().getCompoundTag("InfiTool");
|
||||
tags.setBoolean(key, true);
|
||||
addEnchantment(tool, Enchantment.silkTouch, 1);
|
||||
|
||||
int modifiers = tags.getInteger("Modifiers");
|
||||
modifiers -= 1;
|
||||
tags.setInteger("Modifiers", modifiers);
|
||||
|
||||
int attack = tags.getInteger("Attack");
|
||||
attack -= 3;
|
||||
if (attack < 0)
|
||||
attack = 0;
|
||||
tags.setInteger("Attack", attack);
|
||||
|
||||
int miningSpeed = tags.getInteger("MiningSpeed");
|
||||
miningSpeed -= 300;
|
||||
if (miningSpeed < 0)
|
||||
miningSpeed = 0;
|
||||
tags.setInteger("MiningSpeed", miningSpeed);
|
||||
|
||||
if (tags.hasKey("MiningSpeed2"))
|
||||
{
|
||||
int miningSpeed2 = tags.getInteger("MiningSpeed2");
|
||||
miningSpeed2 -= 300;
|
||||
if (miningSpeed2 < 0)
|
||||
miningSpeed2 = 0;
|
||||
tags.setInteger("MiningSpeed2", miningSpeed2);
|
||||
}
|
||||
|
||||
addToolTip(tool, color+tooltipName, color+key);
|
||||
}
|
||||
|
||||
public void addEnchantment (ItemStack tool, Enchantment enchant, int level)
|
||||
{
|
||||
NBTTagList tags = new NBTTagList("ench");
|
||||
Map enchantMap = EnchantmentHelper.getEnchantments(tool);
|
||||
Iterator iterator = enchantMap.keySet().iterator();
|
||||
int index;
|
||||
int lvl;
|
||||
boolean hasEnchant = false;
|
||||
while (iterator.hasNext())
|
||||
{
|
||||
NBTTagCompound enchantTag = new NBTTagCompound();
|
||||
index = ((Integer) iterator.next()).intValue();
|
||||
lvl = (Integer) enchantMap.get(index);
|
||||
if (index == enchant.effectId)
|
||||
{
|
||||
hasEnchant = true;
|
||||
enchantTag.setShort("id", (short) index);
|
||||
enchantTag.setShort("lvl", (short) ((byte) level));
|
||||
tags.appendTag(enchantTag);
|
||||
}
|
||||
else
|
||||
{
|
||||
enchantTag.setShort("id", (short) index);
|
||||
enchantTag.setShort("lvl", (short) ((byte) lvl));
|
||||
tags.appendTag(enchantTag);
|
||||
}
|
||||
}
|
||||
if (!hasEnchant)
|
||||
{
|
||||
NBTTagCompound enchantTag = new NBTTagCompound();
|
||||
enchantTag.setShort("id", (short) enchant.effectId);
|
||||
enchantTag.setShort("lvl", (short) ((byte) level));
|
||||
tags.appendTag(enchantTag);
|
||||
}
|
||||
tool.stackTagCompound.setTag("ench", tags);
|
||||
}
|
||||
|
||||
public boolean validType (ToolCore tool)
|
||||
{
|
||||
List list = Arrays.asList(tool.toolCategories());
|
||||
return list.contains("weapon") || list.contains("harvest");
|
||||
}
|
||||
}
|
@ -35,6 +35,10 @@ public class ModLapis extends ToolMod
|
||||
return false;
|
||||
|
||||
NBTTagCompound tags = tool.getTagCompound().getCompoundTag("InfiTool");
|
||||
|
||||
if (tags.getBoolean("Silk Touch"))
|
||||
return false;
|
||||
|
||||
if (!tags.hasKey(key))
|
||||
return tags.getInteger("Modifiers") > 0;
|
||||
|
||||
|
@ -80,6 +80,8 @@ public class TEventHandler
|
||||
/* Drops */
|
||||
@ForgeSubscribe
|
||||
public void onLivingDrop (LivingDropsEvent event)
|
||||
{
|
||||
if (!event.entityLiving.isChild())
|
||||
{
|
||||
if (event.entityLiving.getClass() == EntityCow.class)
|
||||
{
|
||||
@ -100,6 +102,7 @@ public class TEventHandler
|
||||
event.entityLiving.dropItem(Item.feather.itemID, 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
else if (event.recentlyHit && event.entityLiving.getClass() == EntitySkeleton.class)
|
||||
{
|
||||
|
@ -13,7 +13,7 @@ public class VillageSmelteryHandler implements IVillageCreationHandler
|
||||
@Override
|
||||
public StructureVillagePieceWeight getVillagePieceWeight (Random random, int i)
|
||||
{
|
||||
return new StructureVillagePieceWeight(ComponentSmeltery.class, 18, i);
|
||||
return new StructureVillagePieceWeight(ComponentSmeltery.class, 18, i + 1);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -13,7 +13,7 @@ public class VillageToolStationHandler implements IVillageCreationHandler
|
||||
@Override
|
||||
public StructureVillagePieceWeight getVillagePieceWeight (Random random, int i)
|
||||
{
|
||||
return new StructureVillagePieceWeight(ComponentToolWorkshop.class, 30, random.nextInt(3) + i);
|
||||
return new StructureVillagePieceWeight(ComponentToolWorkshop.class, 30, i + 2);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
BIN
mods/tinker/textures/items/axe/silk_axe_effect.png
Normal file
After Width: | Height: | Size: 218 B |
BIN
mods/tinker/textures/items/battlesign/silk_battlesign_effect.png
Normal file
After Width: | Height: | Size: 271 B |
BIN
mods/tinker/textures/items/broadsword/silk_sword_effect.png
Normal file
After Width: | Height: | Size: 421 B |
BIN
mods/tinker/textures/items/dagger/silk_dagger_effect.png
Normal file
After Width: | Height: | Size: 274 B |
BIN
mods/tinker/textures/items/frypan/silk_frypan_effect.png
Normal file
After Width: | Height: | Size: 407 B |
BIN
mods/tinker/textures/items/longsword/silk_longsword_effect.png
Normal file
After Width: | Height: | Size: 406 B |
After Width: | Height: | Size: 227 B |
BIN
mods/tinker/textures/items/materials/material_silkycloth.png
Normal file
After Width: | Height: | Size: 496 B |
BIN
mods/tinker/textures/items/materials/material_silkyjewel.png
Normal file
After Width: | Height: | Size: 551 B |
BIN
mods/tinker/textures/items/mattock/silk_mattock_effect.png
Normal file
After Width: | Height: | Size: 400 B |
BIN
mods/tinker/textures/items/pickaxe/silk_pickaxe_effect.png
Normal file
After Width: | Height: | Size: 421 B |
BIN
mods/tinker/textures/items/rapier/silk_rapier_effect.png
Normal file
After Width: | Height: | Size: 412 B |
BIN
mods/tinker/textures/items/shovel/silk_shovel_effect.png
Normal file
After Width: | Height: | Size: 416 B |
Before Width: | Height: | Size: 54 KiB After Width: | Height: | Size: 54 KiB |
Before Width: | Height: | Size: 60 KiB After Width: | Height: | Size: 60 KiB |
Before Width: | Height: | Size: 54 KiB After Width: | Height: | Size: 54 KiB |
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 22 KiB |
Before Width: | Height: | Size: 58 KiB After Width: | Height: | Size: 58 KiB |
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 18 KiB |
Before Width: | Height: | Size: 52 KiB After Width: | Height: | Size: 53 KiB |
Before Width: | Height: | Size: 53 KiB After Width: | Height: | Size: 53 KiB |
Before Width: | Height: | Size: 52 KiB After Width: | Height: | Size: 52 KiB |
Before Width: | Height: | Size: 56 KiB After Width: | Height: | Size: 56 KiB |
@ -131,11 +131,7 @@ public class XinBuilder extends Item
|
||||
float f6 = MathHelper.sin(-f1 * 0.017453292F);
|
||||
float f7 = f4 * f5;
|
||||
float f8 = f3 * f5;
|
||||
double d3 = 500.0D;
|
||||
if (par2EntityPlayer instanceof EntityPlayerMP)
|
||||
{
|
||||
d3 = ((EntityPlayerMP) par2EntityPlayer).theItemInWorldManager.getBlockReachDistance();
|
||||
}
|
||||
double d3 = 500.0D; //Max range
|
||||
Vec3 vec31 = vec3.addVector((double) f7 * d3, (double) f6 * d3, (double) f8 * d3);
|
||||
return par1World.rayTraceBlocks_do_do(vec3, vec31, par3, !par3);
|
||||
}
|
||||
|