Fix buckets, add crafting and wool slabs

This commit is contained in:
mDiyo committed 2013-08-16 13:51:33 -07:00
1 parent fcd041428c
commit 21153791dd
90 files changed
+2123 -107

No files matched your search

+18
View File
@@ -98,6 +98,23 @@
<entry key="block.fancybrick.stone.road.name">Stone Road</entry>
<entry key="block.fancybrick.stone.name">Fancy Stone Brick</entry>
<entry key="tile.cloth.white.slab.name">Wool Slab</entry>
<entry key="tile.cloth.orange.slab.name">Orange Wool Slab</entry>
<entry key="tile.cloth.magenta.slab.name">Magenta Wool Slab</entry>
<entry key="tile.cloth.lightBlue.slab.name">Light Blue Wool Slab</entry>
<entry key="tile.cloth.yellow.slab.name">Yellow Wool Slab</entry>
<entry key="tile.cloth.lime.slab.name">Lime Wool Slab</entry>
<entry key="tile.cloth.pink.slab.name">Pink Wool Slab</entry>
<entry key="tile.cloth.gray.slab.name">Gray Wool Slab</entry>
<entry key="tile.cloth.silver.slab.name">Light Gray Wool Slab</entry>
<entry key="tile.cloth.cyan.slab.name">Cyan Wool Slab</entry>
<entry key="tile.cloth.purple.slab.name">Purple Wool Slab</entry>
<entry key="tile.cloth.blue.slab.name">Blue Wool Slab</entry>
<entry key="tile.cloth.brown.slab.name">Brown Wool Slab</entry>
<entry key="tile.cloth.green.slab.name">Green Wool Slab</entry>
<entry key="tile.cloth.red.slab.name">Red Wool Slab</entry>
<entry key="tile.cloth.black.slab.name">Black Wool Slab</entry>
<entry key="item.oreberry.iron.name">Iron Oreberry</entry>
<entry key="item.oreberry.gold.name">Gold Oreberry</entry>
<entry key="item.oreberry.copper.name">Copper Oreberry</entry>
@@ -293,6 +310,7 @@
<entry key="item.tconstruct.bucket.Invar.name">Molten Invar Bucket</entry>
<entry key="item.tconstruct.bucket.Electrum.name">Molten Electrum Bucket</entry>
<entry key="item.tconstruct.bucket.Ender.name">Liquified Ender Bucket</entry>
<entry key="item.tconstruct.bucket.Slime.name">Liquid Slime Bucket</entry>
<entry key="item.tconstruct.bowstring.string.name">Bowstring</entry>
<entry key="item.tconstruct.bowstring.enchantedfabriI donc.name">Enchanted Bowstring</entry>
Binary file not shown.

After

Width:  |  Height:  |  Size: 405 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 807 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 795 B

@@ -0,0 +1,38 @@
0*2
1*2
2*2
3*2
4*2
5*2
6*2
7*2
8*2
9*2
10*2
11*2
12*2
13*2
14*2
15*2
16*2
17*2
18*2
19*2
18*2
17*2
16*2
15*2
14*2
13*2
12*2
11*2
10*2
9*2
8*2
7*2
6*2
5*2
4*2
3*2
2*2
1*2
@@ -0,0 +1,16 @@
0*3
1*3
2*3
3*3
4*3
5*3
6*3
7*3
8*3
9*3
10*3
11*3
12*3
13*3
14*3
15*3
@@ -0,0 +1,38 @@
0*2
1*2
2*2
3*2
4*2
5*2
6*2
7*2
8*2
9*2
10*2
11*2
12*2
13*2
14*2
15*2
16*2
17*2
18*2
19*2
18*2
17*2
16*2
15*2
14*2
13*2
12*2
11*2
10*2
9*2
8*2
7*2
6*2
5*2
4*2
3*2
2*2
1*2
@@ -0,0 +1,16 @@
0*3
1*3
2*3
3*3
4*3
5*3
6*3
7*3
8*3
9*3
10*3
11*3
12*3
13*3
14*3
15*3
@@ -0,0 +1,38 @@
0*2
1*2
2*2
3*2
4*2
5*2
6*2
7*2
8*2
9*2
10*2
11*2
12*2
13*2
14*2
15*2
16*2
17*2
18*2
19*2
18*2
17*2
16*2
15*2
14*2
13*2
12*2
11*2
10*2
9*2
8*2
7*2
6*2
5*2
4*2
3*2
2*2
1*2
@@ -0,0 +1,16 @@
0*3
1*3
2*3
3*3
4*3
5*3
6*3
7*3
8*3
9*3
10*3
11*3
12*3
13*3
14*3
15*3
@@ -0,0 +1,38 @@
0*2
1*2
2*2
3*2
4*2
5*2
6*2
7*2
8*2
9*2
10*2
11*2
12*2
13*2
14*2
15*2
16*2
17*2
18*2
19*2
18*2
17*2
16*2
15*2
14*2
13*2
12*2
11*2
10*2
9*2
8*2
7*2
6*2
5*2
4*2
3*2
2*2
1*2
@@ -0,0 +1,16 @@
0*3
1*3
2*3
3*3
4*3
5*3
6*3
7*3
8*3
9*3
10*3
11*3
12*3
13*3
14*3
15*3
@@ -0,0 +1,38 @@
0*2
1*2
2*2
3*2
4*2
5*2
6*2
7*2
8*2
9*2
10*2
11*2
12*2
13*2
14*2
15*2
16*2
17*2
18*2
19*2
18*2
17*2
16*2
15*2
14*2
13*2
12*2
11*2
10*2
9*2
8*2
7*2
6*2
5*2
4*2
3*2
2*2
1*2
@@ -0,0 +1,16 @@
0*3
1*3
2*3
3*3
4*3
5*3
6*3
7*3
8*3
9*3
10*3
11*3
12*3
13*3
14*3
15*3
@@ -0,0 +1,38 @@
0*2
1*2
2*2
3*2
4*2
5*2
6*2
7*2
8*2
9*2
10*2
11*2
12*2
13*2
14*2
15*2
16*2
17*2
18*2
19*2
18*2
17*2
16*2
15*2
14*2
13*2
12*2
11*2
10*2
9*2
8*2
7*2
6*2
5*2
4*2
3*2
2*2
1*2
@@ -0,0 +1,16 @@
0*3
1*3
2*3
3*3
4*3
5*3
6*3
7*3
8*3
9*3
10*3
11*3
12*3
13*3
14*3
15*3
@@ -0,0 +1,38 @@
0*2
1*2
2*2
3*2
4*2
5*2
6*2
7*2
8*2
9*2
10*2
11*2
12*2
13*2
14*2
15*2
16*2
17*2
18*2
19*2
18*2
17*2
16*2
15*2
14*2
13*2
12*2
11*2
10*2
9*2
8*2
7*2
6*2
5*2
4*2
3*2
2*2
1*2
@@ -0,0 +1,16 @@
0*3
1*3
2*3
3*3
4*3
5*3
6*3
7*3
8*3
9*3
10*3
11*3
12*3
13*3
14*3
15*3
@@ -0,0 +1,32 @@
0*2
1*2
2*2
3*2
4*2
5*2
6*2
7*2
8*2
9*2
10*2
11*2
12*2
13*2
14*2
15*2
16*2
17*2
18*2
19*2
20*2
21*2
22*2
23*2
24*2
25*2
26*2
27*2
28*2
29*2
30*2
31*2
Whitespace-only changes.
@@ -0,0 +1,38 @@
0*2
1*2
2*2
3*2
4*2
5*2
6*2
7*2
8*2
9*2
10*2
11*2
12*2
13*2
14*2
15*2
16*2
17*2
18*2
19*2
18*2
17*2
16*2
15*2
14*2
13*2
12*2
11*2
10*2
9*2
8*2
7*2
6*2
5*2
4*2
3*2
2*2
1*2
@@ -0,0 +1,16 @@
0*3
1*3
2*3
3*3
4*3
5*3
6*3
7*3
8*3
9*3
10*3
11*3
12*3
13*3
14*3
15*3
@@ -0,0 +1,32 @@
0*2
1*2
2*2
3*2
4*2
5*2
6*2
7*2
8*2
9*2
10*2
11*2
12*2
13*2
14*2
15*2
16*2
17*2
18*2
19*2
20*2
21*2
22*2
23*2
24*2
25*2
26*2
27*2
28*2
29*2
30*2
31*2
Whitespace-only changes.
@@ -0,0 +1,38 @@
0*2
1*2
2*2
3*2
4*2
5*2
6*2
7*2
8*2
9*2
10*2
11*2
12*2
13*2
14*2
15*2
16*2
17*2
18*2
19*2
18*2
17*2
16*2
15*2
14*2
13*2
12*2
11*2
10*2
9*2
8*2
7*2
6*2
5*2
4*2
3*2
2*2
1*2
@@ -0,0 +1,16 @@
0*3
1*3
2*3
3*3
4*3
5*3
6*3
7*3
8*3
9*3
10*3
11*3
12*3
13*3
14*3
15*3
@@ -0,0 +1,32 @@
0*2
1*2
2*2
3*2
4*2
5*2
6*2
7*2
8*2
9*2
10*2
11*2
12*2
13*2
14*2
15*2
16*2
17*2
18*2
19*2
20*2
21*2
22*2
23*2
24*2
25*2
26*2
27*2
28*2
29*2
30*2
31*2
Whitespace-only changes.
@@ -0,0 +1,38 @@
0*2
1*2
2*2
3*2
4*2
5*2
6*2
7*2
8*2
9*2
10*2
11*2
12*2
13*2
14*2
15*2
16*2
17*2
18*2
19*2
18*2
17*2
16*2
15*2
14*2
13*2
12*2
11*2
10*2
9*2
8*2
7*2
6*2
5*2
4*2
3*2
2*2
1*2
@@ -0,0 +1,16 @@
0*3
1*3
2*3
3*3
4*3
5*3
6*3
7*3
8*3
9*3
10*3
11*3
12*3
13*3
14*3
15*3
@@ -0,0 +1,38 @@
0*2
1*2
2*2
3*2
4*2
5*2
6*2
7*2
8*2
9*2
10*2
11*2
12*2
13*2
14*2
15*2
16*2
17*2
18*2
19*2
18*2
17*2
16*2
15*2
14*2
13*2
12*2
11*2
10*2
9*2
8*2
7*2
6*2
5*2
4*2
3*2
2*2
1*2
@@ -0,0 +1,16 @@
0*3
1*3
2*3
3*3
4*3
5*3
6*3
7*3
8*3
9*3
10*3
11*3
12*3
13*3
14*3
15*3
@@ -0,0 +1,38 @@
0*2
1*2
2*2
3*2
4*2
5*2
6*2
7*2
8*2
9*2
10*2
11*2
12*2
13*2
14*2
15*2
16*2
17*2
18*2
19*2
18*2
17*2
16*2
15*2
14*2
13*2
12*2
11*2
10*2
9*2
8*2
7*2
6*2
5*2
4*2
3*2
2*2
1*2
@@ -0,0 +1,16 @@
0*3
1*3
2*3
3*3
4*3
5*3
6*3
7*3
8*3
9*3
10*3
11*3
12*3
13*3
14*3
15*3
@@ -0,0 +1,38 @@
0*2
1*2
2*2
3*2
4*2
5*2
6*2
7*2
8*2
9*2
10*2
11*2
12*2
13*2
14*2
15*2
16*2
17*2
18*2
19*2
18*2
17*2
16*2
15*2
14*2
13*2
12*2
11*2
10*2
9*2
8*2
7*2
6*2
5*2
4*2
3*2
2*2
1*2
@@ -0,0 +1,16 @@
0*3
1*3
2*3
3*3
4*3
5*3
6*3
7*3
8*3
9*3
10*3
11*3
12*3
13*3
14*3
15*3
@@ -0,0 +1,38 @@
0*2
1*2
2*2
3*2
4*2
5*2
6*2
7*2
8*2
9*2
10*2
11*2
12*2
13*2
14*2
15*2
16*2
17*2
18*2
19*2
18*2
17*2
16*2
15*2
14*2
13*2
12*2
11*2
10*2
9*2
8*2
7*2
6*2
5*2
4*2
3*2
2*2
1*2
@@ -0,0 +1,16 @@
0*3
1*3
2*3
3*3
4*3
5*3
6*3
7*3
8*3
9*3
10*3
11*3
12*3
13*3
14*3
15*3
@@ -0,0 +1,38 @@
0*2
1*2
2*2
3*2
4*2
5*2
6*2
7*2
8*2
9*2
10*2
11*2
12*2
13*2
14*2
15*2
16*2
17*2
18*2
19*2
18*2
17*2
16*2
15*2
14*2
13*2
12*2
11*2
10*2
9*2
8*2
7*2
6*2
5*2
4*2
3*2
2*2
1*2
@@ -0,0 +1,16 @@
0*3
1*3
2*3
3*3
4*3
5*3
6*3
7*3
8*3
9*3
10*3
11*3
12*3
13*3
14*3
15*3
@@ -0,0 +1,38 @@
0*2
1*2
2*2
3*2
4*2
5*2
6*2
7*2
8*2
9*2
10*2
11*2
12*2
13*2
14*2
15*2
16*2
17*2
18*2
19*2
18*2
17*2
16*2
15*2
14*2
13*2
12*2
11*2
10*2
9*2
8*2
7*2
6*2
5*2
4*2
3*2
2*2
1*2
@@ -0,0 +1,16 @@
0*3
1*3
2*3
3*3
4*3
5*3
6*3
7*3
8*3
9*3
10*3
11*3
12*3
13*3
14*3
15*3
@@ -0,0 +1,38 @@
0*2
1*2
2*2
3*2
4*2
5*2
6*2
7*2
8*2
9*2
10*2
11*2
12*2
13*2
14*2
15*2
16*2
17*2
18*2
19*2
18*2
17*2
16*2
15*2
14*2
13*2
12*2
11*2
10*2
9*2
8*2
7*2
6*2
5*2
4*2
3*2
2*2
1*2
@@ -0,0 +1,16 @@
0*3
1*3
2*3
3*3
4*3
5*3
6*3
7*3
8*3
9*3
10*3
11*3
12*3
13*3
14*3
15*3
@@ -0,0 +1,38 @@
0*2
1*2
2*2
3*2
4*2
5*2
6*2
7*2
8*2
9*2
10*2
11*2
12*2
13*2
14*2
15*2
16*2
17*2
18*2
19*2
18*2
17*2
16*2
15*2
14*2
13*2
12*2
11*2
10*2
9*2
8*2
7*2
6*2
5*2
4*2
3*2
2*2
1*2
@@ -0,0 +1,16 @@
0*3
1*3
2*3
3*3
4*3
5*3
6*3
7*3
8*3
9*3
10*3
11*3
12*3
13*3
14*3
15*3
@@ -0,0 +1,32 @@
0*2
1*2
2*2
3*2
4*2
5*2
6*2
7*2
8*2
9*2
10*2
11*2
12*2
13*2
14*2
15*2
16*2
17*2
18*2
19*2
20*2
21*2
22*2
23*2
24*2
25*2
26*2
27*2
28*2
29*2
30*2
31*2
Whitespace-only changes.
@@ -0,0 +1,38 @@
0*2
1*2
2*2
3*2
4*2
5*2
6*2
7*2
8*2
9*2
10*2
11*2
12*2
13*2
14*2
15*2
16*2
17*2
18*2
19*2
18*2
17*2
16*2
15*2
14*2
13*2
12*2
11*2
10*2
9*2
8*2
7*2
6*2
5*2
4*2
3*2
2*2
1*2
@@ -0,0 +1,16 @@
0*3
1*3
2*3
3*3
4*3
5*3
6*3
7*3
8*3
9*3
10*3
11*3
12*3
13*3
14*3
15*3
@@ -0,0 +1,32 @@
0*2
1*2
2*2
3*2
4*2
5*2
6*2
7*2
8*2
9*2
10*2
11*2
12*2
13*2
14*2
15*2
16*2
17*2
18*2
19*2
20*2
21*2
22*2
23*2
24*2
25*2
26*2
27*2
28*2
29*2
30*2
31*2
Whitespace-only changes.
Binary file not shown.

After

Width:  |  Height:  |  Size: 357 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 421 B

@@ -0,0 +1,32 @@
0*2
1*2
2*2
3*2
4*2
5*2
6*2
7*2
8*2
9*2
10*2
11*2
12*2
13*2
14*2
15*2
16*2
17*2
18*2
19*2
20*2
21*2
22*2
23*2
24*2
25*2
26*2
27*2
28*2
29*2
30*2
31*2
Whitespace-only changes.
Binary file not shown.

After

Width:  |  Height:  |  Size: 357 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 423 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 357 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 547 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 45 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

+1 -1
View File
@@ -42,7 +42,7 @@ import cpw.mods.fml.common.registry.VillagerRegistry;
* @dependencies: IC2 API, MFR API
*/
@Mod(modid = "TConstruct", name = "TConstruct", version = "1.6.2_1.4.dev.27", dependencies = "required-after:Forge@[7.7.1.687,)")
@Mod(modid = "TConstruct", name = "TConstruct", version = "1.6.2_1.4.dev.28", dependencies = "required-after:Forge@[7.7.1.687,)")
@NetworkMod(serverSideRequired = false, clientSideRequired = true, channels = { "TConstruct" }, packetHandler = tconstruct.util.network.TPacketHandler.class)
public class TConstruct
{
+206
View File
@@ -0,0 +1,206 @@
package tconstruct.blocks;
import java.util.List;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.util.Icon;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
import tconstruct.TConstruct;
import tconstruct.blocks.logic.CraftingStationLogic;
import tconstruct.blocks.logic.PartBuilderLogic;
import tconstruct.blocks.logic.PatternChestLogic;
import tconstruct.blocks.logic.StencilTableLogic;
import tconstruct.blocks.logic.ToolForgeLogic;
import tconstruct.blocks.logic.ToolStationLogic;
import tconstruct.common.TContent;
import tconstruct.common.TProxyCommon;
import tconstruct.library.TConstructRegistry;
import tconstruct.library.blocks.InventoryBlock;
import tconstruct.util.PHConstruct;
public class CraftingSlab extends InventoryBlock
{
public CraftingSlab(int id, Material material)
{
super(id, material);
this.setCreativeTab(TConstructRegistry.blockTab);
this.setHardness(2f);
this.setStepSound(Block.soundWoodFootstep);
}
/* Rendering */
@Override
public String[] getTextureNames ()
{
String[] textureNames = {
"craftingstation_top", "craftingstation_slab_side", "craftingstation_bottom",
"toolstation_top", "toolstation_slab_side", "toolstation_bottom",
"partbuilder_oak_top", "partbuilder_slab_side", "partbuilder_oak_bottom",
"stenciltable_oak_top", "stenciltable_slab_side", "stenciltable_oak_bottom",
"patternchest_top", "patternchest_slab_side", "patternchest_bottom",
"toolforge_top", "toolforge_slab_side", "toolforge_top" };
return textureNames;
}
@Override
public Icon getIcon (int side, int meta)
{
return icons[(meta % 8) * 3 + getTextureIndex(side)];
}
public int getTextureIndex (int side)
{
if (side == 0)
return 2;
if (side == 1)
return 0;
return 1;
}
@Override
public boolean renderAsNormalBlock ()
{
return false;
}
@Override
public boolean isOpaqueCube ()
{
return false;
}
@Override
public boolean shouldSideBeRendered (IBlockAccess par1IBlockAccess, int par2, int par3, int par4, int par5)
{
return true;
}
public AxisAlignedBB getSelectedBoundingBoxFromPool (World world, int x, int y, int z)
{
int metadata = world.getBlockMetadata(x, y, z);
if (metadata == 5)
return AxisAlignedBB.getAABBPool().getAABB((double) x + this.minX, (double) y + this.minY, (double) z + this.minZ, (double) x + this.maxX, (double) y + this.maxY - 0.125,
(double) z + this.maxZ);
return AxisAlignedBB.getAABBPool().getAABB((double) x + this.minX, (double) y + this.minY, (double) z + this.minZ, (double) x + this.maxX, (double) y + this.maxY, (double) z + this.maxZ);
}
@Override
public TileEntity createTileEntity (World world, int metadata)
{
switch (metadata % 8)
{
case 0:
return new CraftingStationLogic();
case 1:
return new ToolStationLogic();
case 2:
return new PartBuilderLogic();
case 3:
return new StencilTableLogic();
case 4:
return new PatternChestLogic();
case 5:
return new ToolForgeLogic();
default:
return null;
}
}
@Override
public Integer getGui (World world, int x, int y, int z, EntityPlayer entityplayer)
{
int meta = world.getBlockMetadata(x, y, z);
switch (meta)
{
case 0:
return TProxyCommon.craftingStationID;
case 1:
return TProxyCommon.toolStationID;
case 2:
return TProxyCommon.partBuilderID;
case 3:
return TProxyCommon.stencilTableID;
case 4:
return TProxyCommon.patternChestID;
case 5:
return TProxyCommon.toolForgeID;
}
return -1;
}
@Override
public Object getModInstance ()
{
return TConstruct.instance;
}
@Override
public void getSubBlocks (int id, CreativeTabs tab, List list)
{
for (int iter = 0; iter < 6; iter++)
{
list.add(new ItemStack(id, 1, iter));
}
}
@Override
public void onBlockPlacedBy (World world, int x, int y, int z, EntityLivingBase entityliving, ItemStack stack)
{
if (PHConstruct.freePatterns)
{
int meta = world.getBlockMetadata(x, y, z);
if (meta == 4)
{
PatternChestLogic logic = (PatternChestLogic) world.getBlockTileEntity(x, y, z);
for (int i = 1; i <= 13; i++)
{
logic.setInventorySlotContents(i - 1, new ItemStack(TContent.woodPattern, 1, i));
}
logic.setInventorySlotContents(13, new ItemStack(TContent.woodPattern, 1, 22));
}
}
super.onBlockPlacedBy(world, x, y, z, entityliving, stack);
}
@Override
public void addCollisionBoxesToList (World world, int x, int y, int z, AxisAlignedBB axisalignedbb, List arraylist, Entity entity)
{
setBlockBoundsBasedOnState(world, x, y, z);
super.addCollisionBoxesToList(world, x, y, z, axisalignedbb, arraylist, entity);
}
public void setBlockBoundsForItemRender ()
{
setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.5F, 1.0F);
}
public void setBlockBoundsBasedOnState (IBlockAccess world, int x, int y, int z)
{
int meta = world.getBlockMetadata(x, y, z) / 8;
float minY = meta == 1 ? 0.5F : 0.0F;
float maxY = meta == 1 ? 1.0F : 0.5F;
setBlockBounds(0.0F, minY, 0F, 1.0F, maxY, 1.0F);
}
public int onBlockPlaced (World par1World, int blockX, int blockY, int blockZ, int side, float clickX, float clickY, float clickZ, int metadata)
{
if (side == 1)
return metadata;
if (side == 0 || clickY >= 0.5F)
return metadata | 8;
return metadata;
}
}
@@ -26,6 +26,7 @@ public class GlassBlockConnected extends Block
this.setStepSound(soundGlassFootstep);
folder = location;
renderPass = hasAlpha ? 1 : 0;
setHardness(0.3F);
this.setCreativeTab(TConstructRegistry.blockTab);
}
+6
View File
@@ -31,4 +31,10 @@ public class GlassPaneStained extends PaneBase
{
return 1;
}
@Override
public int damageDropped (int par1)
{
return par1;
}
}
+185
View File
@@ -0,0 +1,185 @@
package tconstruct.blocks;
import java.util.List;
import java.util.Random;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.ItemStack;
import net.minecraft.util.Icon;
import net.minecraft.world.World;
import tconstruct.library.TConstructRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
public class MeatBlock extends Block
{
public Icon[] icons;
public String[] textureNames = new String[] { "ham_skin", "ham_bone" };
public MeatBlock(int id)
{
super(id, Material.wood);
this.setHardness(1.0F);
this.setStepSound(Block.soundWoodFootstep);
//setBurnProperties(this.blockID, 5, 20);
this.setCreativeTab(TConstructRegistry.blockTab);
}
@Override
@SideOnly(Side.CLIENT)
public Icon getIcon (int side, int metadata)
{
int tex = (metadata % 4) * 2;
int orientation = metadata / 4;
switch (orientation)
//Ends of logs
{
case 0:
if (side == 0 || side == 1)
return icons[tex + 1];
break;
case 1:
if (side == 4 || side == 5)
return icons[tex + 1];
break;
case 2:
if (side == 2 || side == 3)
return icons[tex + 1];
break;
}
return icons[tex];
}
@Override
@SideOnly(Side.CLIENT)
public void registerIcons (IconRegister iconRegister)
{
this.icons = new Icon[textureNames.length];
for (int i = 0; i < this.icons.length; ++i)
{
this.icons[i] = iconRegister.registerIcon("tinker:" + textureNames[i]);
}
}
public int idDropped (int par1, Random par2Random, int par3)
{
return this.blockID;
}
/**
* ejects contained items into the world, and notifies neighbours of an update, as appropriate
*/
public void breakBlock (World par1World, int par2, int par3, int par4, int par5, int par6)
{
byte b0 = 4;
int j1 = b0 + 1;
if (par1World.checkChunksExist(par2 - j1, par3 - j1, par4 - j1, par2 + j1, par3 + j1, par4 + j1))
{
for (int k1 = -b0; k1 <= b0; ++k1)
{
for (int l1 = -b0; l1 <= b0; ++l1)
{
for (int i2 = -b0; i2 <= b0; ++i2)
{
int j2 = par1World.getBlockId(par2 + k1, par3 + l1, par4 + i2);
if (Block.blocksList[j2] != null)
{
Block.blocksList[j2].beginLeavesDecay(par1World, par2 + k1, par3 + l1, par4 + i2);
}
}
}
}
}
}
/**
* Called when a block is placed using its ItemBlock. Args: World, X, Y, Z, side, hitX, hitY, hitZ, block metadata
*/
public int onBlockPlaced (World par1World, int par2, int par3, int par4, int par5, float par6, float par7, float par8, int par9)
{
int j1 = par9 & 3;
byte b0 = 0;
switch (par5)
{
case 0:
case 1:
b0 = 0;
break;
case 2:
case 3:
b0 = 8;
break;
case 4:
case 5:
b0 = 4;
}
return j1 | b0;
}
/**
* Determines the damage on the item the block drops. Used in cloth and wood.
*/
public int damageDropped (int par1)
{
return par1 & 3;
}
/**
* returns a number between 0 and 3
*/
public static int limitToValidMetadata (int par0)
{
return par0 & 3;
}
protected ItemStack createStackedBlock (int par1)
{
return new ItemStack(this.blockID, 1, limitToValidMetadata(par1));
}
public boolean isBlockReplaceable (World world, int x, int y, int z)
{
return false;
}
/*public void onBlockHarvested (World world, int x, int y, int z, int meta, EntityPlayer player)
{
if (meta % 4 == 1)
{
if (world.difficultySetting > 2)
world.createExplosion(null, x, y, z, 1.75f, false);
else
world.createExplosion(null, x, y, z, 2f, false);
}
}*/
@SideOnly(Side.CLIENT)
@Override
public void getSubBlocks (int par1, CreativeTabs par2CreativeTabs, List par3List)
{
for (int i = 0; i < icons.length / 2; i++)
par3List.add(new ItemStack(par1, 1, i));
}
@Override
public boolean canSustainLeaves (World world, int x, int y, int z)
{
return true;
}
@Override
public boolean isWood (World world, int x, int y, int z)
{
return true;
}
}
+44
View File
@@ -4,16 +4,37 @@ import java.util.List;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.Entity;
import net.minecraft.item.ItemStack;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.util.Icon;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
import tconstruct.library.TConstructRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
public class SlabBase extends Block
{
Block modelBlock;
int startingMeta;
int totalSize;
public SlabBase(int id, Material material)
{
super(id, material);
this.setCreativeTab(TConstructRegistry.blockTab);
}
public SlabBase(int id, Material material, Block model, int meta, int totalSize)
{
super(id, material);
this.setCreativeTab(TConstructRegistry.blockTab);
this.modelBlock = model;
this.startingMeta = meta;
this.totalSize = totalSize;
}
@Override
@@ -55,4 +76,27 @@ public class SlabBase extends Block
{
return false;
}
@Override
@SideOnly(Side.CLIENT)
public void registerIcons (IconRegister iconRegister)
{
}
@Override
@SideOnly(Side.CLIENT)
public Icon getIcon (int side, int meta)
{
meta = meta % 8 + startingMeta;
return modelBlock.getIcon(side, meta);
}
@Override
public void getSubBlocks (int id, CreativeTabs tab, List list)
{
for (int iter = 0; iter < totalSize; iter++)
{
list.add(new ItemStack(id, 1, iter));
}
}
}
+1 -1
View File
@@ -128,7 +128,7 @@ public class ToolForgeBlock extends InventoryBlock
public Integer getGui (World world, int x, int y, int z, EntityPlayer entityplayer)
{
int md = world.getBlockMetadata(x, y, z);
return TProxyCommon.toolForge;
return TProxyCommon.toolForgeID;
//return -1;
}
+5 -5
View File
@@ -3,7 +3,7 @@ package tconstruct.blocks;
import java.util.List;
import tconstruct.TConstruct;
import tconstruct.blocks.logic.PartCrafterLogic;
import tconstruct.blocks.logic.PartBuilderLogic;
import tconstruct.blocks.logic.PatternChestLogic;
import tconstruct.blocks.logic.StencilTableLogic;
import tconstruct.blocks.logic.ToolStationLogic;
@@ -124,13 +124,13 @@ public class ToolStationBlock extends InventoryBlock
case 0:
return new ToolStationLogic();
case 1:
return new PartCrafterLogic();
return new PartBuilderLogic();
case 2:
return new PartCrafterLogic();
return new PartBuilderLogic();
case 3:
return new PartCrafterLogic();
return new PartBuilderLogic();
case 4:
return new PartCrafterLogic();
return new PartBuilderLogic();
case 5:
return new PatternChestLogic();
case 6:
@@ -13,12 +13,12 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;
public class PartCrafterLogic extends InventoryLogic implements ISidedInventory
public class PartBuilderLogic extends InventoryLogic implements ISidedInventory
{
boolean craftedTop;
boolean craftedBottom;
public PartCrafterLogic()
public PartBuilderLogic()
{
super(10);
craftedTop = false;
+1 -1
View File
@@ -44,7 +44,7 @@ public class SlimeFluid extends BlockFluidClassic
public void updateTick(World world, int x, int y, int z, Random rand)
{
super.updateTick(world, x, y, z, rand);
if (rand.nextInt(100) == 0 && world.checkNoEntityCollision(AxisAlignedBB.getBoundingBox(x - 1, y - 1, z - 1, x + 2, y + 2, z + 2)) )
if (rand.nextInt(100) == 0 && world.getBlockMetadata(x, y, z) == 0 && world.checkNoEntityCollision(AxisAlignedBB.getBoundingBox(x - 1, y - 1, z - 1, x + 2, y + 2, z + 2)) )
{
BlueSlime entityslime = new BlueSlime(world);
entityslime.setPosition((double)x + 0.5D, (double)y + 1.5D, (double)z + 0.5D);
+3 -1
View File
@@ -1,17 +1,19 @@
package tconstruct.blocks.traps;
import java.util.List;
import java.util.Random;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IconRegister;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLiving;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.item.EntityItem;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.potion.Potion;
import net.minecraft.potion.PotionEffect;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.util.DamageSource;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
+7 -7
View File
@@ -57,19 +57,19 @@ public class TProxyClient extends TProxyCommon {
@Override
public Object getClientGuiElement(int ID, EntityPlayer player, World world, int x, int y, int z) {
if (ID == stationGuiID)
if (ID == toolStationID)
return new ToolStationGui(player.inventory, (ToolStationLogic) world.getBlockTileEntity(x, y, z), world, x, y, z);
if (ID == partGuiID)
return new PartCrafterGui(player.inventory, (PartCrafterLogic) world.getBlockTileEntity(x, y, z), world, x, y, z);
if (ID == pchestGuiID)
if (ID == partBuilderID)
return new PartCrafterGui(player.inventory, (PartBuilderLogic) world.getBlockTileEntity(x, y, z), world, x, y, z);
if (ID == patternChestID)
return new PatternChestGui(player.inventory, (PatternChestLogic) world.getBlockTileEntity(x, y, z), world, x, y, z);
if (ID == frypanGuiID)
return new FrypanGui(player.inventory, (FrypanLogic) world.getBlockTileEntity(x, y, z), world, x, y, z);
if (ID == smelteryGuiID)
return new SmelteryGui(player.inventory, (SmelteryLogic) world.getBlockTileEntity(x, y, z), world, x, y, z);
if (ID == pshaperGuiID)
if (ID == stencilTableID)
return new StencilTableGui(player.inventory, (StencilTableLogic) world.getBlockTileEntity(x, y, z), world, x, y, z);
if (ID == toolForge)
if (ID == toolForgeID)
return new ToolForgeGui(player.inventory, (ToolForgeLogic) world.getBlockTileEntity(x, y, z), world, x, y, z);
if (ID == glowstoneAggregatorGui)
return new GlowstoneAggregatorGui(player.inventory, (GlowstoneAggregator) world.getBlockTileEntity(x, y, z), world, x, y, z);
@@ -484,7 +484,7 @@ public class TProxyClient extends TProxyCommon {
TConstructClientRegistry.registerManualModifier("tier2free", ironpick.copy(), new ItemStack(Item.netherStar));
TConstructClientRegistry.registerManualSmeltery("brownstone", new ItemStack(TContent.speedBlock), new ItemStack(TContent.moltenTin, 1), new ItemStack(Block.gravel));
TConstructClientRegistry.registerManualSmeltery("clearglass", new ItemStack(TContent.glass), new ItemStack(TContent.moltenGlass, 1), null);
TConstructClientRegistry.registerManualSmeltery("clearglass", new ItemStack(TContent.clearGlass), new ItemStack(TContent.moltenGlass, 1), null);
TConstructClientRegistry.registerManualSmeltery("searedstone", new ItemStack(TContent.smeltery, 1, 4), new ItemStack(TContent.moltenStone, 1), null);
}
+1 -1
View File
@@ -75,7 +75,7 @@ public class ToolCoreRenderer implements IItemRenderer
for (int i = 0; i < iconParts; ++i)
{
Icon part = tempParts[i];
if (part == null || part == ToolCore.blankSprite | part == ToolCore.emptyIcon)
if (part == null)// || part == ToolCore.blankSprite | part == ToolCore.emptyIcon)
++count;
else
parts[i - count] = part;
+3 -3
View File
@@ -12,7 +12,7 @@ import net.minecraft.world.World;
import org.lwjgl.input.Keyboard;
import org.lwjgl.opengl.GL11;
import tconstruct.blocks.logic.PartCrafterLogic;
import tconstruct.blocks.logic.PartBuilderLogic;
import tconstruct.inventory.ActiveContainer;
import tconstruct.inventory.PartCrafterChestContainer;
import tconstruct.library.TConstructRegistry;
@@ -21,14 +21,14 @@ import tconstruct.library.tools.ToolMaterial;
public class PartCrafterGui extends NewContainerGui
{
PartCrafterLogic logic;
PartBuilderLogic logic;
String title, otherTitle = "";
boolean drawChestPart;
boolean hasTop, hasBottom;
ItemStack topMaterial, bottomMaterial;
ToolMaterial topEnum, bottomEnum;
public PartCrafterGui(InventoryPlayer inventoryplayer, PartCrafterLogic partlogic, World world, int x, int y, int z)
public PartCrafterGui(InventoryPlayer inventoryplayer, PartBuilderLogic partlogic, World world, int x, int y, int z)
{
super((ActiveContainer) partlogic.getGuiContainer(inventoryplayer, world, x, y, z));
logic = partlogic;
+54 -15
View File
@@ -2,7 +2,6 @@ package tconstruct.common;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
import java.util.List;
@@ -13,7 +12,6 @@ import net.minecraft.block.material.MapColor;
import net.minecraft.block.material.Material;
import net.minecraft.block.material.MaterialLiquid;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.EnumCreatureType;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.item.crafting.FurnaceRecipes;
@@ -35,6 +33,7 @@ import net.minecraftforge.oredict.ShapedOreRecipe;
import net.minecraftforge.oredict.ShapelessOreRecipe;
import tconstruct.TConstruct;
import tconstruct.blocks.Aggregator;
import tconstruct.blocks.CraftingSlab;
import tconstruct.blocks.CraftingStationBlock;
import tconstruct.blocks.DryingRack;
import tconstruct.blocks.EquipBlock;
@@ -47,6 +46,7 @@ import tconstruct.blocks.GravelOre;
import tconstruct.blocks.LavaTankBlock;
import tconstruct.blocks.LightCrystalBase;
import tconstruct.blocks.LiquidMetalFinite;
import tconstruct.blocks.MeatBlock;
import tconstruct.blocks.MetalOre;
import tconstruct.blocks.MultiBrick;
import tconstruct.blocks.MultiBrickFancy;
@@ -55,6 +55,7 @@ import tconstruct.blocks.OreberryBushEssence;
import tconstruct.blocks.RedstoneMachine;
import tconstruct.blocks.SearedBlock;
import tconstruct.blocks.SearedSlab;
import tconstruct.blocks.SlabBase;
import tconstruct.blocks.SmelteryBlock;
import tconstruct.blocks.SoilBlock;
import tconstruct.blocks.SpeedBlock;
@@ -75,7 +76,7 @@ import tconstruct.blocks.logic.FrypanLogic;
import tconstruct.blocks.logic.GlowstoneAggregator;
import tconstruct.blocks.logic.LavaTankLogic;
import tconstruct.blocks.logic.MultiServantLogic;
import tconstruct.blocks.logic.PartCrafterLogic;
import tconstruct.blocks.logic.PartBuilderLogic;
import tconstruct.blocks.logic.PatternChestLogic;
import tconstruct.blocks.logic.SmelteryDrainLogic;
import tconstruct.blocks.logic.SmelteryLogic;
@@ -123,6 +124,7 @@ import tconstruct.items.armor.Knapsack;
import tconstruct.items.armor.TArmorBase;
import tconstruct.items.blocks.BarricadeItem;
import tconstruct.items.blocks.CraftedSoilItemBlock;
import tconstruct.items.blocks.CraftingSlabItemBlock;
import tconstruct.items.blocks.GlassBlockItem;
import tconstruct.items.blocks.GlassPaneItem;
import tconstruct.items.blocks.GravelOreItem;
@@ -149,6 +151,8 @@ import tconstruct.items.blocks.StainedGlassClearItem;
import tconstruct.items.blocks.StainedGlassClearPaneItem;
import tconstruct.items.blocks.ToolForgeItemBlock;
import tconstruct.items.blocks.ToolStationItemBlock;
import tconstruct.items.blocks.WoolSlab1Item;
import tconstruct.items.blocks.WoolSlab2Item;
import tconstruct.items.tools.Arrow;
import tconstruct.items.tools.BattleSign;
import tconstruct.items.tools.Battleaxe;
@@ -206,7 +210,7 @@ import cpw.mods.fml.common.IFuelHandler;
import cpw.mods.fml.common.event.FMLInterModComms;
import cpw.mods.fml.common.registry.EntityRegistry;
import cpw.mods.fml.common.registry.GameRegistry;
import extrabiomes.api.BiomeManager;
import cpw.mods.fml.common.registry.LanguageRegistry;
public class TContent implements IFuelHandler
{
@@ -289,6 +293,7 @@ public class TContent implements IFuelHandler
public static Block toolStationStone;
public static Block toolForge;
public static Block craftingStationWood;
public static Block craftingSlabWood;
public static Block heldItemBlock;
public static Block craftedSoil;
@@ -309,6 +314,10 @@ public class TContent implements IFuelHandler
public static Block searedSlab;
public static Block speedSlab;
public static Block meatBlock;
public static Block woolSlab1;
public static Block woolSlab2;
//Traps
public static Block landmine;
public static Block punji;
@@ -319,7 +328,7 @@ public class TContent implements IFuelHandler
//InfiBlocks
public static Block speedBlock;
public static Block glass;
public static Block clearGlass;
//public static Block stainedGlass;
public static Block stainedGlassClear;
public static Block glassPane;
@@ -509,7 +518,7 @@ public class TContent implements IFuelHandler
toolStationWood = new ToolStationBlock(PHConstruct.woodStation, Material.wood).setUnlocalizedName("ToolStation");
GameRegistry.registerBlock(toolStationWood, ToolStationItemBlock.class, "ToolStationBlock");
GameRegistry.registerTileEntity(ToolStationLogic.class, "ToolStation");
GameRegistry.registerTileEntity(PartCrafterLogic.class, "PartCrafter");
GameRegistry.registerTileEntity(PartBuilderLogic.class, "PartCrafter");
GameRegistry.registerTileEntity(PatternChestLogic.class, "PatternHolder");
GameRegistry.registerTileEntity(StencilTableLogic.class, "PatternShaper");
@@ -520,6 +529,9 @@ public class TContent implements IFuelHandler
craftingStationWood = new CraftingStationBlock(PHConstruct.woodCrafter, Material.wood).setUnlocalizedName("CraftingStation");
GameRegistry.registerBlock(craftingStationWood, "CraftingStation");
GameRegistry.registerTileEntity(CraftingStationLogic.class, "CraftingStation");
craftingSlabWood = new CraftingSlab(PHConstruct.woodCrafterSlab, Material.wood).setUnlocalizedName("CraftingSlab");
GameRegistry.registerBlock(craftingSlabWood, CraftingSlabItemBlock.class, "CraftingSlab");
heldItemBlock = new EquipBlock(PHConstruct.heldItemBlock, Material.wood).setUnlocalizedName("Frypan");
GameRegistry.registerBlock(heldItemBlock, "HeldItemBlock");
@@ -541,6 +553,19 @@ public class TContent implements IFuelHandler
metalBlock.stepSound = Block.soundMetalFootstep;
GameRegistry.registerBlock(metalBlock, MetalItemBlock.class, "MetalBlock");
meatBlock = new MeatBlock(PHConstruct.meatBlock).setUnlocalizedName("tconstruct.meatblock");
GameRegistry.registerBlock(meatBlock, "MeatBlock");
OreDictionary.registerOre("hambone", new ItemStack(meatBlock));
LanguageRegistry.addName(meatBlock, "Hambone");
GameRegistry.addRecipe(new ItemStack(meatBlock), "mmm", "mbm", "mmm", 'b', new ItemStack(Item.bone), 'm', new ItemStack(Item.porkRaw));
woolSlab1 = new SlabBase(PHConstruct.woolSlab1, Material.cloth, Block.cloth, 0, 8).setUnlocalizedName("cloth");
woolSlab1.setStepSound(Block.soundClothFootstep).setCreativeTab(CreativeTabs.tabDecorations);
GameRegistry.registerBlock(woolSlab1, WoolSlab1Item.class, "WoolSlab1");
woolSlab2 = new SlabBase(PHConstruct.woolSlab2, Material.cloth, Block.cloth, 8, 8).setUnlocalizedName("cloth");
woolSlab2.setStepSound(Block.soundClothFootstep).setCreativeTab(CreativeTabs.tabDecorations);
GameRegistry.registerBlock(woolSlab2, WoolSlab2Item.class, "WoolSlab2");
//Smeltery
smeltery = new SmelteryBlock(PHConstruct.smeltery).setUnlocalizedName("Smeltery");
GameRegistry.registerBlock(smeltery, SmelteryItemBlock.class, "Smeltery");
@@ -823,7 +848,7 @@ public class TContent implements IFuelHandler
blueSlimeFluid.setBlockID(slimePool);
fluids[24] = blueSlimeFluid;
fluidBlocks[24] = slimePool;
//FluidContainerRegistry.registerFluidContainer(new FluidContainerData(new FluidStack(blueSlimeFluid, 1), new ItemStack(buckets, 1, 24), new ItemStack(Item.bucketEmpty)));
FluidContainerRegistry.registerFluidContainer(new FluidContainerData(new FluidStack(blueSlimeFluid, 1), new ItemStack(buckets, 1, 24), new ItemStack(Item.bucketEmpty)));
slimeGel = new SlimeGel(PHConstruct.slimeGel).setStepSound(slimeStep).setUnlocalizedName("slime.gel");
GameRegistry.registerBlock(slimeGel, SlimeGelItemBlock.class, "slime.gel");
@@ -880,15 +905,15 @@ public class TContent implements IFuelHandler
GameRegistry.registerBlock(speedBlock, SpeedBlockItem.class, "SpeedBlock");
//Glass
glass = new GlassBlockConnected(PHConstruct.glass, "clear", false).setUnlocalizedName("GlassBlock");
glass.stepSound = Block.soundGlassFootstep;
GameRegistry.registerBlock(glass, GlassBlockItem.class, "GlassBlock");
clearGlass = new GlassBlockConnected(PHConstruct.glass, "clear", false).setUnlocalizedName("GlassBlock");
clearGlass.stepSound = Block.soundGlassFootstep;
GameRegistry.registerBlock(clearGlass, GlassBlockItem.class, "GlassBlock");
glassPane = new GlassPane(PHConstruct.glassPane);
GameRegistry.registerBlock(glassPane, GlassPaneItem.class, "GlassPane");
stainedGlassClear = new GlassBlockConnectedMeta(PHConstruct.stainedGlassClear, "stained", true, "white", "orange", "magenta", "light_blue", "yellow", "lime", "pink", "gray", "light_gray",
"cyan", "purple", "blue", "brown", "green", "red", "black").setUnlocalizedName("GlassBlock.StainedClear");//new GlassBlockStained(PHConstruct.stainedGlassClear, "stainedglass_").setUnlocalizedName("GlassBlock.StainedClear");
"cyan", "purple", "blue", "brown", "green", "red", "black").setUnlocalizedName("GlassBlock.StainedClear");
stainedGlassClear.stepSound = Block.soundGlassFootstep;
GameRegistry.registerBlock(stainedGlassClear, StainedGlassClearItem.class, "GlassBlock.StainedClear");
@@ -1397,7 +1422,7 @@ public class TContent implements IFuelHandler
basinCasting.addCastingRecipe(new ItemStack(metalBlock, 1, 8), new FluidStack(moltenAlumiteFluid, TConstruct.ingotLiquidValue * 9), null, true, 100); //alumite
basinCasting.addCastingRecipe(new ItemStack(Block.obsidian), new FluidStack(moltenObsidianFluid, TConstruct.ingotLiquidValue * 2), null, true, 100);// obsidian
basinCasting.addCastingRecipe(new ItemStack(metalBlock, 1, 9), new FluidStack(moltenSteelFluid, TConstruct.ingotLiquidValue * 9), null, true, 100); //steel
basinCasting.addCastingRecipe(new ItemStack(glass, 1, 0), new FluidStack(moltenGlassFluid, FluidContainerRegistry.BUCKET_VOLUME), null, true, 100); //glass
basinCasting.addCastingRecipe(new ItemStack(clearGlass, 1, 0), new FluidStack(moltenGlassFluid, FluidContainerRegistry.BUCKET_VOLUME), null, true, 100); //glass
basinCasting.addCastingRecipe(new ItemStack(smeltery, 1, 4), new FluidStack(moltenStoneFluid, TConstruct.ingotLiquidValue), null, true, 100); //seared stone
basinCasting.addCastingRecipe(new ItemStack(speedBlock, 1, 0), new FluidStack(moltenTinFluid, TConstruct.ingotLiquidValue / 9), new ItemStack(Block.gravel), true, 100); //brownstone
@@ -1432,7 +1457,7 @@ public class TContent implements IFuelHandler
Smeltery.addMelting(Block.stone, 0, 800, new FluidStack(moltenStoneFluid, TConstruct.ingotLiquidValue / 18));
Smeltery.addMelting(Block.cobblestone, 0, 800, new FluidStack(moltenStoneFluid, TConstruct.ingotLiquidValue / 18));
Smeltery.addMelting(glass, 0, 500, new FluidStack(moltenGlassFluid, 1000));
Smeltery.addMelting(clearGlass, 0, 500, new FluidStack(moltenGlassFluid, 1000));
Smeltery.addMelting(glassPane, 0, 350, new FluidStack(moltenGlassFluid, 250));
for (int i = 0; i < 16; i++)
@@ -1707,8 +1732,8 @@ public class TContent implements IFuelHandler
for (int i = 0; i < 16; i++)
{
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Block.cloth, 8, i), pattern, 'm', dyeTypes[15 - i], '#', new ItemStack(Block.cloth, 1, Short.MAX_VALUE)));
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(stainedGlassClear, 8, i), pattern, 'm', dyeTypes[15 - i], '#', glass));
GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(stainedGlassClear, 1, i), dyeTypes[15 - i], glass));
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(stainedGlassClear, 8, i), pattern, 'm', dyeTypes[15 - i], '#', clearGlass));
GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(stainedGlassClear, 1, i), dyeTypes[15 - i], clearGlass));
}
//Smeltery
@@ -1793,6 +1818,20 @@ public class TContent implements IFuelHandler
GameRegistry.addRecipe(new ItemStack(craftingStationWood, 1, 0), "b", 'b', new ItemStack(Block.workbench));
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(craftingStationWood, 1, 0), "b", 'b', "crafterWood"));
//Slab crafters
GameRegistry.addRecipe(new ItemStack(craftingSlabWood, 6, 0), "bbb", 'b', new ItemStack(Block.workbench));
GameRegistry.addRecipe(new ItemStack(craftingSlabWood, 1, 1), "b", 'b', new ItemStack(toolStationWood, 1, 0));
GameRegistry.addRecipe(new ItemStack(craftingSlabWood, 1, 2), "b", 'b', new ItemStack(toolStationWood, 1, 1));
GameRegistry.addRecipe(new ItemStack(craftingSlabWood, 1, 2), "b", 'b', new ItemStack(toolStationWood, 1, 2));
GameRegistry.addRecipe(new ItemStack(craftingSlabWood, 1, 2), "b", 'b', new ItemStack(toolStationWood, 1, 3));
GameRegistry.addRecipe(new ItemStack(craftingSlabWood, 1, 2), "b", 'b', new ItemStack(toolStationWood, 1, 4));
GameRegistry.addRecipe(new ItemStack(craftingSlabWood, 1, 4), "b", 'b', new ItemStack(toolStationWood, 1, 5));
GameRegistry.addRecipe(new ItemStack(craftingSlabWood, 1, 3), "b", 'b', new ItemStack(toolStationWood, 1, 10));
GameRegistry.addRecipe(new ItemStack(craftingSlabWood, 1, 3), "b", 'b', new ItemStack(toolStationWood, 1, 11));
GameRegistry.addRecipe(new ItemStack(craftingSlabWood, 1, 3), "b", 'b', new ItemStack(toolStationWood, 1, 12));
GameRegistry.addRecipe(new ItemStack(craftingSlabWood, 1, 3), "b", 'b', new ItemStack(toolStationWood, 1, 13));
GameRegistry.addRecipe(new ItemStack(craftingSlabWood, 1, 5), "b", 'b', new ItemStack(toolForge, 1, Short.MAX_VALUE));
}
void setupToolTabs ()
+5 -5
View File
@@ -22,12 +22,12 @@ import cpw.mods.fml.common.registry.LanguageRegistry;
public class TProxyCommon implements IGuiHandler
{
public static int stationGuiID = 0;
public static int partGuiID = 1;
public static int pchestGuiID = 2;
public static int pshaperGuiID = 3;
public static int toolStationID = 0;
public static int partBuilderID = 1;
public static int patternChestID = 2;
public static int stencilTableID = 3;
public static int frypanGuiID = 4;
public static int toolForge = 5;
public static int toolForgeID = 5;
public static int smelteryGuiID = 7;
public static int glowstoneAggregatorGui = 8;
public static int drawbridgeGui = 9;
@@ -1,6 +1,6 @@
package tconstruct.inventory;
import tconstruct.blocks.logic.PartCrafterLogic;
import tconstruct.blocks.logic.PartBuilderLogic;
import tconstruct.blocks.logic.PatternChestLogic;
import tconstruct.library.util.IPattern;
import net.minecraft.entity.player.EntityPlayer;
@@ -12,12 +12,12 @@ public class PartCrafterChestContainer extends ActiveContainer
{
protected PatternChestLogic patternLogic;
protected InventoryPlayer invPlayer;
protected PartCrafterLogic logic;
protected PartBuilderLogic logic;
protected Slot[] input;
protected Slot[] inventory;
public boolean largeInventory;
public PartCrafterChestContainer(InventoryPlayer inventoryplayer, PartCrafterLogic partLogic, PatternChestLogic pLogic)
public PartCrafterChestContainer(InventoryPlayer inventoryplayer, PartBuilderLogic partLogic, PatternChestLogic pLogic)
{
logic = partLogic;
patternLogic = pLogic;
@@ -1,6 +1,6 @@
package tconstruct.inventory;
import tconstruct.blocks.logic.PartCrafterLogic;
import tconstruct.blocks.logic.PartBuilderLogic;
import tconstruct.library.util.IPattern;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.InventoryPlayer;
@@ -10,12 +10,12 @@ import net.minecraft.item.ItemStack;
public class PartCrafterContainer extends ActiveContainer
{
protected InventoryPlayer invPlayer;
protected PartCrafterLogic logic;
protected PartBuilderLogic logic;
protected Slot[] input;
protected Slot[] inventory;
public boolean largeInventory;
public PartCrafterContainer(InventoryPlayer inventoryplayer, PartCrafterLogic partLogic)
public PartCrafterContainer(InventoryPlayer inventoryplayer, PartBuilderLogic partLogic)
{
invPlayer = inventoryplayer;
logic = partLogic;
+4 -1
View File
@@ -2,6 +2,7 @@ package tconstruct.inventory;
import tconstruct.blocks.logic.ToolForgeLogic;
import tconstruct.blocks.logic.ToolStationLogic;
import tconstruct.library.tools.ToolCore;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.inventory.Slot;
import net.minecraft.item.ItemStack;
@@ -75,8 +76,10 @@ public class ToolForgeContainer extends ToolStationContainer
if (!tags.getCompoundTag("InfiTool").hasKey("Built"))
{
tags.getCompoundTag("InfiTool").setBoolean("Built", true);
for (int i = 1; i <= 4; i++)
for (int i = 2; i <= 4; i++)
logic.decrStackSize(i, 1);
int amount = logic.getStackInSlot(1).getItem() instanceof ToolCore ? stack.stackSize : 1;
logic.decrStackSize(1, amount);
if (!logic.worldObj.isRemote)
logic.worldObj.playAuxSFX(1021, (int) logic.xCoord, (int) logic.yCoord, (int) logic.zCoord, 0);
}
+7 -4
View File
@@ -129,7 +129,7 @@ public class FilledBucket extends ItemBucket
}
}
public boolean tryPlaceContainedLiquid (World world, int clickX, int clickY, int clickZ, int meta)
public boolean tryPlaceContainedLiquid (World world, int clickX, int clickY, int clickZ, int type)
{
if (!world.isAirBlock(clickX, clickY, clickZ) && world.getBlockMaterial(clickX, clickY, clickZ).isSolid())
{
@@ -138,7 +138,10 @@ public class FilledBucket extends ItemBucket
else
{
int id = 0;
world.setBlock(clickX, clickY, clickZ, TContent.fluidBlocks[meta].blockID, 7, 3); //TODO: Merge liquids
int metadata = 7;
if (type == 24)
metadata = 0;
world.setBlock(clickX, clickY, clickZ, TContent.fluidBlocks[type].blockID, metadata, 3); //TODO: Merge liquids
return true;
}
@@ -177,8 +180,8 @@ public class FilledBucket extends ItemBucket
}
public static final String[] materialNames = new String[] { "Iron", "Gold", "Copper", "Tin", "Aluminum", "Cobalt", "Ardite", "Bronze", "AluBrass", "Manyullyn", "Alumite", "Obsidian", "Steel",
"Glass", "Stone", "Villager", "Cow", "Nickel", "Lead", "Silver", "Shiny", "Invar", "Electrum", "Ender" };
"Glass", "Stone", "Villager", "Cow", "Nickel", "Lead", "Silver", "Shiny", "Invar", "Electrum", "Ender", "Slime" };
public static final String[] textureNames = new String[] { "iron", "gold", "copper", "tin", "aluminum", "cobalt", "ardite", "bronze", "alubrass", "manyullyn", "alumite", "obsidian", "steel",
"glass", "stone", "emerald", "blood", "nickel", "lead", "silver", "shiny", "invar", "electrum", "ender" };
"glass", "stone", "emerald", "blood", "nickel", "lead", "silver", "shiny", "invar", "electrum", "ender", "slime" };
}
@@ -0,0 +1,33 @@
package tconstruct.items.blocks;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
import net.minecraft.util.MathHelper;
public class CraftingSlabItemBlock extends ItemBlock
{
public static final String blockType[] = { "tile.CraftingStation", "Crafter", "Parts", "PatternShaper", "PatternChest", "tile.ToolForge" };
public CraftingSlabItemBlock(int id)
{
super(id);
setMaxDamage(0);
setHasSubtypes(true);
}
public int getMetadata (int meta)
{
return meta;
}
@Override
public String getUnlocalizedName (ItemStack itemstack)
{
int pos = MathHelper.clamp_int(itemstack.getItemDamage(), 0, blockType.length - 1);
if (pos == 0 || pos == 5)
{
return blockType[pos];
}
return (new StringBuilder()).append("ToolStation.").append(blockType[pos]).toString();
}
}
@@ -0,0 +1,60 @@
package tconstruct.items.blocks;
import java.util.List;
import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemDye;
import net.minecraft.item.ItemStack;
import net.minecraft.util.MathHelper;
import net.minecraft.world.World;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
public class WoolSlab1Item extends ItemBlock
{
int blockID;
Block block;
public WoolSlab1Item(int id)
{
super(id);
this.blockID = id + 256;
this.block = Block.blocksList[id + 256];
setMaxDamage(0);
setHasSubtypes(true);
}
public int getMetadata (int meta)
{
return meta;
}
public String getUnlocalizedName(ItemStack par1ItemStack)
{
int i = MathHelper.clamp_int(par1ItemStack.getItemDamage(), 0, 7);
return super.getUnlocalizedName() + "." + ItemDye.dyeColorNames[15 - i] + ".slab";
}
@Override
public boolean onItemUse (ItemStack stack, EntityPlayer player, World world, int x, int y, int z, int side, float hitX, float hitY, float hitZ)
{
int id = world.getBlockId(x, y, z);
int meta = world.getBlockMetadata(x, y, z);
int trueMeta = meta % 8;
boolean flag = (id & 8) != 0;
if ((side == 1 && flag || side == 0 && !flag) && id == this.blockID && trueMeta == stack.getItemDamage())
{
if (world.setBlock(x, y, z, Block.cloth.blockID, trueMeta, 3))
{
world.playSoundEffect((double) ((float) x + 0.5F), (double) ((float) y + 0.5F), (double) ((float) z + 0.5F), this.block.stepSound.getPlaceSound(),
(this.block.stepSound.getVolume() + 1.0F) / 2.0F, this.block.stepSound.getPitch() * 0.8F);
--stack.stackSize;
return true;
}
}
return super.onItemUse(stack, player, world, x, y, z, side, hitX, hitY, hitZ);
}
}
@@ -0,0 +1,61 @@
package tconstruct.items.blocks;
import java.util.List;
import mods.natura.common.NContent;
import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemDye;
import net.minecraft.item.ItemStack;
import net.minecraft.util.MathHelper;
import net.minecraft.world.World;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
public class WoolSlab2Item extends ItemBlock
{
int blockID;
Block block;
public WoolSlab2Item(int id)
{
super(id);
this.blockID = id + 256;
this.block = Block.blocksList[id + 256];
setMaxDamage(0);
setHasSubtypes(true);
}
public int getMetadata (int meta)
{
return meta;
}
public String getUnlocalizedName(ItemStack par1ItemStack)
{
int i = MathHelper.clamp_int(par1ItemStack.getItemDamage(), 0, 7);
return super.getUnlocalizedName() + "." + ItemDye.dyeColorNames[7 - i] + ".slab";
}
@Override
public boolean onItemUse (ItemStack stack, EntityPlayer player, World world, int x, int y, int z, int side, float hitX, float hitY, float hitZ)
{
int id = world.getBlockId(x, y, z);
int meta = world.getBlockMetadata(x, y, z);
int trueMeta = meta % 8;
boolean flag = (id & 8) != 0;
if ((side == 1 && flag || side == 0 && !flag) && id == this.blockID && trueMeta == stack.getItemDamage())
{
if (world.setBlock(x, y, z, Block.cloth.blockID, trueMeta + 8, 3))
{
world.playSoundEffect((double) ((float) x + 0.5F), (double) ((float) y + 0.5F), (double) ((float) z + 0.5F), this.block.stepSound.getPlaceSound(),
(this.block.stepSound.getVolume() + 1.0F) / 2.0F, this.block.stepSound.getPitch() * 0.8F);
--stack.stackSize;
return true;
}
}
return super.onItemUse(stack, player, world, x, y, z, side, hitX, hitY, hitZ);
}
}
+6 -5
View File
@@ -87,6 +87,12 @@ public class Arrow extends ToolCore
return new String[] { "ammo" };
}
@Override
public float getDamageModifier ()
{
return 0.5f;
}
@Override
public void getSubItems (int id, CreativeTabs tab, List list)
{
@@ -201,11 +207,6 @@ public class Arrow extends ToolCore
if (!handleName.equals("") && handle != head)
list.add(getStyleForType(handle) + handleName);
int unbreaking = tags.getCompoundTag("InfiTool").getInteger("Unbreaking");
String reinforced = getReinforcedName(head, handle, 0, 0, unbreaking);
if (!reinforced.equals(""))
list.add(reinforced);
boolean displayToolTips = true;
int tipNum = 0;
while (displayToolTips)
-5
View File
@@ -63,9 +63,4 @@ public class Cutlass extends Weapon
{
return 1;
}
public void getSubItems (int id, CreativeTabs tab, List list)
{
}
}
+11
View File
@@ -155,6 +155,12 @@ public class PHConstruct
slimeTallGrass = config.getBlock("Slime Tall Grass", 3239).getInt(3239);
slimeLeaves = config.getBlock("Slime Grass Leaves", 3240).getInt(3240);
slimeSapling = config.getBlock("Slime Tree Sapling", 3241).getInt(3241);
meatBlock = config.getBlock("Meat Block", 3242).getInt(3242);
woodCrafterSlab = config.getBlock("Crafting Slab", 3243).getInt(3243);
woolSlab1 = config.getBlock("Wool Slab 1", 3244).getInt(3244);
woolSlab2 = config.getBlock("Wool Slab 2", 3245).getInt(3245);
castingChannel = config.getBlock("Casting Channel", 3249).getInt(3249);
/*golemCore = config.getBlock("Golem Core", 1481).getInt(1481);
golemHead = config.getBlock("Golem Head", 1482).getInt(1482);*/
@@ -352,11 +358,13 @@ public class PHConstruct
public static int toolForge;
public static int heldItemBlock;
public static int woodCrafter;
public static int woodCrafterSlab;
public static int ores;
public static int lavaTank;
public static int smeltery;
public static int searedTable;
public static int castingChannel;
public static int craftedSoil;
public static int oreSlag;
public static int oreGravel;
@@ -440,6 +448,9 @@ public class PHConstruct
public static int redstoneBallRepeater;
public static int searedSlab;
public static int speedSlab;
public static int meatBlock;
public static int woolSlab1;
public static int woolSlab2;
//Patterns and misc
public static int blankPattern;
+174 -44
View File
@@ -19,6 +19,8 @@ import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.potion.Potion;
import net.minecraft.potion.PotionEffect;
import net.minecraft.util.EnumMovingObjectType;
import net.minecraft.world.World;
import net.minecraft.world.chunk.Chunk;
@@ -26,6 +28,7 @@ import net.minecraftforge.event.Event.Result;
import net.minecraftforge.event.ForgeSubscribe;
import net.minecraftforge.event.entity.living.LivingDeathEvent;
import net.minecraftforge.event.entity.living.LivingDropsEvent;
import net.minecraftforge.event.entity.living.LivingHurtEvent;
import net.minecraftforge.event.entity.living.LivingSpawnEvent;
import net.minecraftforge.event.entity.player.FillBucketEvent;
import net.minecraftforge.event.world.ChunkDataEvent;
@@ -33,6 +36,7 @@ import net.minecraftforge.fluids.FluidStack;
import net.minecraftforge.oredict.OreDictionary;
import net.minecraftforge.oredict.OreDictionary.OreRegisterEvent;
import tconstruct.TConstruct;
import tconstruct.blocks.LiquidMetalFinite;
import tconstruct.common.TContent;
import tconstruct.crystal.TheftValueTracker;
import tconstruct.library.TConstructRegistry;
@@ -208,6 +212,9 @@ public class TEventHandler
public static boolean matchesLeaves (ItemStack stack)
{
if (stack.itemID >= 4096)
return false;
Block block = Block.blocksList[stack.itemID];
if (block != null)
{
@@ -216,6 +223,22 @@ public class TEventHandler
}
return false;
}
/* Damage */
@ForgeSubscribe
public void onHurt (LivingHurtEvent event)
{
if (event.entityLiving instanceof EntityPlayer)
{
EntityPlayer player = (EntityPlayer) event.entityLiving;
//Cutlass
ItemStack stack = player.getCurrentEquippedItem();
if (stack != null && stack.getItem() == TContent.cutlass && player.isUsingItem())
{
player.addPotionEffect(new PotionEffect(Potion.moveSpeed.id, 3 * 20, 1));
}
}
}
/* Drops */
@ForgeSubscribe
@@ -742,109 +765,109 @@ public class TEventHandler
}
//Dust
else if (evt.Name == "dustIron")
else if (evt.Name == "dustIron" || evt.Name == "crystallineIron")
{
Smeltery.addMelting(new ItemStack(evt.Ore.itemID, 2, evt.Ore.getItemDamage()), TContent.metalBlock.blockID, 3, 450, new FluidStack(TContent.moltenIronFluid, TConstruct.ingotLiquidValue));
}
else if (evt.Name == "dustGold")
else if (evt.Name == "dustGold" || evt.Name == "crystallineGold")
{
Smeltery.addMelting(new ItemStack(evt.Ore.itemID, 2, evt.Ore.getItemDamage()), TContent.metalBlock.blockID, 3, 450, new FluidStack(TContent.moltenGoldFluid, TConstruct.ingotLiquidValue));
}
else if (evt.Name == "dustCopper")
else if (evt.Name == "dustCopper" || evt.Name == "crystallineCopper")
{
Smeltery.addMelting(new ItemStack(evt.Ore.itemID, 2, evt.Ore.getItemDamage()), TContent.metalBlock.blockID, 3, 450, new FluidStack(TContent.moltenCopperFluid, TConstruct.ingotLiquidValue));
}
else if (evt.Name == "dustTin")
else if (evt.Name == "dustTin" || evt.Name == "crystallineTin")
{
Smeltery.addMelting(new ItemStack(evt.Ore.itemID, 2, evt.Ore.getItemDamage()), TContent.metalBlock.blockID, 5, 175, new FluidStack(TContent.moltenTinFluid, TConstruct.ingotLiquidValue));
}
else if (evt.Name == "dustBronze")
else if (evt.Name == "dustBronze" || evt.Name == "crystallineBronze")
{
Smeltery.addMelting(new ItemStack(evt.Ore.itemID, 2, evt.Ore.getItemDamage()), TContent.metalBlock.blockID, 4, 500, new FluidStack(TContent.moltenBronzeFluid, TConstruct.ingotLiquidValue));
}
else if (evt.Name == "dustCobalt")
else if (evt.Name == "dustCobalt" || evt.Name == "crystallineCobalt")
{
Smeltery.addMelting(new ItemStack(evt.Ore.itemID, 2, evt.Ore.getItemDamage()), TContent.metalBlock.blockID, 0, 650, new FluidStack(TContent.moltenCobaltFluid, TConstruct.ingotLiquidValue));
}
else if (evt.Name == "dustArdite")
else if (evt.Name == "dustArdite" || evt.Name == "crystallineArdite")
{
Smeltery.addMelting(new ItemStack(evt.Ore.itemID, 2, evt.Ore.getItemDamage()), TContent.metalBlock.blockID, 1, 650, new FluidStack(TContent.moltenArditeFluid, TConstruct.ingotLiquidValue));
}
else if (evt.Name == "dustManyullyn")
else if (evt.Name == "dustManyullyn" || evt.Name == "crystallineManyullyn")
{
Smeltery.addMelting(new ItemStack(evt.Ore.itemID, 2, evt.Ore.getItemDamage()), TContent.metalBlock.blockID, 2, 750, new FluidStack(TContent.moltenManyullynFluid,
TConstruct.ingotLiquidValue));
}
else if (evt.Name == "dustAluminum")
/*else if (evt.Name == "dustAluminum")
{
Smeltery.addMelting(new ItemStack(evt.Ore.itemID, 2, evt.Ore.getItemDamage()), TContent.metalBlock.blockID, 6, 250, new FluidStack(TContent.moltenAluminumFluid,
TConstruct.ingotLiquidValue));
}*/
else if (evt.Name == "dustNaturalAluminum" || evt.Name == "crystallineNaturalAluminum")
{
Smeltery.addMelting(new ItemStack(evt.Ore.itemID, 2, evt.Ore.getItemDamage()), TContent.metalBlock.blockID, 6, 250, new FluidStack(TContent.moltenAluminumFluid,
TConstruct.ingotLiquidValue));
}
else if (evt.Name == "dustNaturalAluminum")
{
Smeltery.addMelting(new ItemStack(evt.Ore.itemID, 2, evt.Ore.getItemDamage()), TContent.metalBlock.blockID, 6, 250, new FluidStack(TContent.moltenAluminumFluid,
TConstruct.ingotLiquidValue));
}
else if (evt.Name == "dustAluminumBrass")
else if (evt.Name == "dustAluminumBrass" || evt.Name == "crystallineAluminumBrass")
{
Smeltery.addMelting(new ItemStack(evt.Ore.itemID, 2, evt.Ore.getItemDamage()), TContent.metalBlock.blockID, 7, 350, new FluidStack(TContent.moltenAlubrassFluid,
TConstruct.ingotLiquidValue));
}
else if (evt.Name == "dustAlumite")
else if (evt.Name == "dustAlumite" || evt.Name == "crystallineAlumite")
{
Smeltery.addMelting(new ItemStack(evt.Ore.itemID, 2, evt.Ore.getItemDamage()), TContent.metalBlock.blockID, 8, 500,
new FluidStack(TContent.moltenAlumiteFluid, TConstruct.ingotLiquidValue));
}
else if (evt.Name == "dustSteel")
else if (evt.Name == "dustSteel" || evt.Name == "crystallineSteel")
{
Smeltery.addMelting(new ItemStack(evt.Ore.itemID, 2, evt.Ore.getItemDamage()), TContent.metalBlock.blockID, 9, 500, new FluidStack(TContent.moltenSteelFluid, TConstruct.ingotLiquidValue));
}
else if (evt.Name == "dustNickel")
else if (evt.Name == "dustNickel" || evt.Name == "crystallineNickel")
{
Smeltery.addMelting(new ItemStack(evt.Ore.itemID, 2, evt.Ore.getItemDamage()), TContent.metalBlock.blockID, 9, 500, new FluidStack(TContent.moltenNickelFluid, TConstruct.ingotLiquidValue));
}
else if (evt.Name == "dustLead")
else if (evt.Name == "dustLead" || evt.Name == "crystallineLead")
{
Smeltery.addMelting(new ItemStack(evt.Ore.itemID, 2, evt.Ore.getItemDamage()), TContent.metalBlock.blockID, 9, 500, new FluidStack(TContent.moltenLeadFluid, TConstruct.ingotLiquidValue));
}
else if (evt.Name == "dustSilver")
else if (evt.Name == "dustSilver" || evt.Name == "crystallineSilver")
{
Smeltery.addMelting(new ItemStack(evt.Ore.itemID, 2, evt.Ore.getItemDamage()), TContent.metalBlock.blockID, 9, 500, new FluidStack(TContent.moltenSilverFluid, TConstruct.ingotLiquidValue));
}
else if (evt.Name == "dustPlatinum")
else if (evt.Name == "dustPlatinum" || evt.Name == "crystallinePlatinum")
{
Smeltery.addMelting(new ItemStack(evt.Ore.itemID, 2, evt.Ore.getItemDamage()), TContent.metalBlock.blockID, 9, 500, new FluidStack(TContent.moltenShinyFluid, TConstruct.ingotLiquidValue));
}
else if (evt.Name == "dustInvar")
else if (evt.Name == "dustInvar" || evt.Name == "crystallineInvar")
{
Smeltery.addMelting(new ItemStack(evt.Ore.itemID, 2, evt.Ore.getItemDamage()), TContent.metalBlock.blockID, 9, 500, new FluidStack(TContent.moltenInvarFluid, TConstruct.ingotLiquidValue));
}
else if (evt.Name == "dustElectrum")
else if (evt.Name == "dustElectrum" || evt.Name == "crystallineElectrum")
{
Smeltery.addMelting(new ItemStack(evt.Ore.itemID, 2, evt.Ore.getItemDamage()), TContent.metalBlock.blockID, 9, 500, new FluidStack(TContent.moltenElectrumFluid,
TConstruct.ingotLiquidValue));
}
}
public void unfuxOreDictionary () //TODO: This isn't the best
public void unfuxOreDictionary ()
{
ArrayList<ItemStack> ores = OreDictionary.getOres("ingotCopper");
for (ItemStack ore : ores)
@@ -1213,6 +1236,102 @@ public class TEventHandler
Smeltery.addMelting(new ItemStack(ore.itemID, 2, ore.getItemDamage()), TContent.metalBlock.blockID, 0, 400, new FluidStack(TContent.moltenShinyFluid, TConstruct.ingotLiquidValue));
}
ores = OreDictionary.getOres("crystallineIron");
for (ItemStack ore : ores)
{
Smeltery.addMelting(new ItemStack(ore.itemID, 2, ore.getItemDamage()), TContent.metalBlock.blockID, 3, 450, new FluidStack(TContent.moltenIronFluid, TConstruct.ingotLiquidValue));
}
ores = OreDictionary.getOres("crystallineGold");
for (ItemStack ore : ores)
{
Smeltery.addMelting(new ItemStack(ore.itemID, 2, ore.getItemDamage()), TContent.metalBlock.blockID, 3, 450, new FluidStack(TContent.moltenGoldFluid, TConstruct.ingotLiquidValue));
}
ores = OreDictionary.getOres("crystallineCopper");
for (ItemStack ore : ores)
{
Smeltery.addMelting(new ItemStack(ore.itemID, 2, ore.getItemDamage()), TContent.metalBlock.blockID, 3, 450, new FluidStack(TContent.moltenCopperFluid, TConstruct.ingotLiquidValue));
}
ores = OreDictionary.getOres("crystallineTin");
for (ItemStack ore : ores)
{
Smeltery.addMelting(new ItemStack(ore.itemID, 2, ore.getItemDamage()), TContent.metalBlock.blockID, 5, 175, new FluidStack(TContent.moltenTinFluid, TConstruct.ingotLiquidValue));
}
ores = OreDictionary.getOres("crystallineBronze");
for (ItemStack ore : ores)
{
Smeltery.addMelting(new ItemStack(ore.itemID, 2, ore.getItemDamage()), TContent.metalBlock.blockID, 4, 500, new FluidStack(TContent.moltenBronzeFluid, TConstruct.ingotLiquidValue));
}
ores = OreDictionary.getOres("crystallineCobalt");
for (ItemStack ore : ores)
{
Smeltery.addMelting(new ItemStack(ore.itemID, 2, ore.getItemDamage()), TContent.metalBlock.blockID, 0, 650, new FluidStack(TContent.moltenCobaltFluid, TConstruct.ingotLiquidValue));
}
ores = OreDictionary.getOres("crystallineArdite");
for (ItemStack ore : ores)
{
Smeltery.addMelting(new ItemStack(ore.itemID, 2, ore.getItemDamage()), TContent.metalBlock.blockID, 1, 650, new FluidStack(TContent.moltenArditeFluid, TConstruct.ingotLiquidValue));
}
ores = OreDictionary.getOres("crystallineManyullyn");
for (ItemStack ore : ores)
{
Smeltery.addMelting(new ItemStack(ore.itemID, 2, ore.getItemDamage()), TContent.metalBlock.blockID, 2, 750, new FluidStack(TContent.moltenManyullynFluid, TConstruct.ingotLiquidValue));
}
ores = OreDictionary.getOres("crystallineNaturalAluminum");
for (ItemStack ore : ores)
{
Smeltery.addMelting(new ItemStack(ore.itemID, 2, ore.getItemDamage()), TContent.metalBlock.blockID, 6, 250, new FluidStack(TContent.moltenAluminumFluid, TConstruct.ingotLiquidValue));
}
ores = OreDictionary.getOres("crystallineAluminumBrass");
for (ItemStack ore : ores)
{
Smeltery.addMelting(new ItemStack(ore.itemID, 2, ore.getItemDamage()), TContent.metalBlock.blockID, 7, 350, new FluidStack(TContent.moltenAlubrassFluid, TConstruct.ingotLiquidValue));
}
ores = OreDictionary.getOres("crystallineAlumite");
for (ItemStack ore : ores)
{
Smeltery.addMelting(new ItemStack(ore.itemID, 2, ore.getItemDamage()), TContent.metalBlock.blockID, 8, 500, new FluidStack(TContent.moltenAlumiteFluid, TConstruct.ingotLiquidValue));
}
ores = OreDictionary.getOres("crystallineSteel");
for (ItemStack ore : ores)
{
Smeltery.addMelting(new ItemStack(ore.itemID, 2, ore.getItemDamage()), TContent.metalBlock.blockID, 9, 500, new FluidStack(TContent.moltenSteelFluid, TConstruct.ingotLiquidValue));
}
ores = OreDictionary.getOres("crystallineNickel");
for (ItemStack ore : ores)
{
Smeltery.addMelting(new ItemStack(ore.itemID, 2, ore.getItemDamage()), TContent.metalBlock.blockID, 0, 400, new FluidStack(TContent.moltenNickelFluid, TConstruct.ingotLiquidValue));
}
ores = OreDictionary.getOres("crystallineLead");
for (ItemStack ore : ores)
{
Smeltery.addMelting(new ItemStack(ore.itemID, 2, ore.getItemDamage()), TContent.metalBlock.blockID, 0, 400, new FluidStack(TContent.moltenLeadFluid, TConstruct.ingotLiquidValue));
}
ores = OreDictionary.getOres("crystallineSilver");
for (ItemStack ore : ores)
{
Smeltery.addMelting(new ItemStack(ore.itemID, 2, ore.getItemDamage()), TContent.metalBlock.blockID, 0, 400, new FluidStack(TContent.moltenSilverFluid, TConstruct.ingotLiquidValue));
}
ores = OreDictionary.getOres("crystallinePlatinum");
for (ItemStack ore : ores)
{
Smeltery.addMelting(new ItemStack(ore.itemID, 2, ore.getItemDamage()), TContent.metalBlock.blockID, 0, 400, new FluidStack(TContent.moltenShinyFluid, TConstruct.ingotLiquidValue));
}
ores = OreDictionary.getOres("dustInvar");
for (ItemStack ore : ores)
{
@@ -1311,40 +1430,51 @@ public class TEventHandler
}
else
{
int quanta = 0;
for (int posX = -1; posX <= 1; posX++)
if (TContent.fluidBlocks[id] instanceof LiquidMetalFinite)
{
for (int posZ = -1; posZ <= 1; posZ++)
int quanta = 0;
for (int posX = -1; posX <= 1; posX++)
{
int localID = evt.world.getBlockId(hitX + posX, hitY, hitZ + posZ);
if (localID == bID)
for (int posZ = -1; posZ <= 1; posZ++)
{
quanta += evt.world.getBlockMetadata(hitX + posX, hitY, hitZ + posZ) + 1;
int localID = evt.world.getBlockId(hitX + posX, hitY, hitZ + posZ);
if (localID == bID)
{
quanta += evt.world.getBlockMetadata(hitX + posX, hitY, hitZ + posZ) + 1;
}
}
}
}
if (quanta >= 8)
while (quanta > 0)
if (quanta >= 8)
{
for (int posX = -1; posX <= 1; posX++)
while (quanta > 0)
{
for (int posZ = -1; posZ <= 1; posZ++)
for (int posX = -1; posX <= 1; posX++)
{
int localID = evt.world.getBlockId(hitX + posX, hitY, hitZ + posZ);
if (localID == bID)
for (int posZ = -1; posZ <= 1; posZ++)
{
quanta -= 1;
int meta = evt.world.getBlockMetadata(hitX + posX, hitY, hitZ + posZ);
if (meta > 0)
evt.world.setBlockMetadataWithNotify(hitX + posX, hitY, hitZ + posZ, meta - 1, 3);
else
evt.world.setBlockToAir(hitX + posX, hitY, hitZ + posZ);
int localID = evt.world.getBlockId(hitX + posX, hitY, hitZ + posZ);
if (localID == bID)
{
quanta -= 1;
int meta = evt.world.getBlockMetadata(hitX + posX, hitY, hitZ + posZ);
if (meta > 0)
evt.world.setBlockMetadataWithNotify(hitX + posX, hitY, hitZ + posZ, meta - 1, 3);
else
evt.world.setBlockToAir(hitX + posX, hitY, hitZ + posZ);
}
}
}
}
}
}
else
{
evt.world.setBlockToAir(hitX, hitY, hitZ);
}
evt.setResult(Result.ALLOW);
evt.result = new ItemStack(TContent.buckets, 1, id);
}
}
}