Implement portion of recipes

This commit is contained in:
Cuber 2015-02-08 02:42:38 +02:00
parent 7c4c2ef5fc
commit ae54e69de6
26 changed files with 726 additions and 25 deletions

View File

@ -4,7 +4,8 @@ namespace TrueCraft.API.Logic
{ {
public interface ICraftingRecipe public interface ICraftingRecipe
{ {
ItemStack[,] Pattern { get; } ItemStack[,] Pattern { get; }
ItemStack Output { get; } ItemStack Output { get; }
bool SignificantMetadata { get; }
} }
} }

View File

@ -1,9 +1,11 @@
using System; using System;
using TrueCraft.API;
using TrueCraft.API.Logic; using TrueCraft.API.Logic;
using TrueCraft.Core.Logic.Items;
namespace TrueCraft.Core.Logic.Blocks namespace TrueCraft.Core.Logic.Blocks
{ {
public class BookshelfBlock : BlockProvider public class BookshelfBlock : BlockProvider, ICraftingRecipe
{ {
public static readonly byte BlockID = 0x2F; public static readonly byte BlockID = 0x2F;
@ -21,5 +23,40 @@ namespace TrueCraft.Core.Logic.Blocks
{ {
return new Tuple<int, int>(3, 2); return new Tuple<int, int>(3, 2);
} }
public ItemStack[,] Pattern
{
get
{
return new[,]
{
{
new ItemStack(WoodenPlanksBlock.BlockID),
new ItemStack(WoodenPlanksBlock.BlockID),
new ItemStack(WoodenPlanksBlock.BlockID)
},
{
new ItemStack(BookItem.ItemID),
new ItemStack(BookItem.ItemID),
new ItemStack(BookItem.ItemID)
},
{
new ItemStack(WoodenPlanksBlock.BlockID),
new ItemStack(WoodenPlanksBlock.BlockID),
new ItemStack(WoodenPlanksBlock.BlockID)
}
};
}
}
public ItemStack Output
{
get { return new ItemStack(BlockID); }
}
public bool SignificantMetadata
{
get { return false; }
}
} }
} }

View File

@ -1,9 +1,11 @@
using System; using System;
using TrueCraft.API;
using TrueCraft.API.Logic; using TrueCraft.API.Logic;
using TrueCraft.Core.Logic.Items;
namespace TrueCraft.Core.Logic.Blocks namespace TrueCraft.Core.Logic.Blocks
{ {
public class BricksBlock : BlockProvider public class BricksBlock : BlockProvider, ICraftingRecipe
{ {
public static readonly byte BlockID = 0x2D; public static readonly byte BlockID = 0x2D;
@ -21,5 +23,27 @@ namespace TrueCraft.Core.Logic.Blocks
{ {
return new Tuple<int, int>(7, 0); return new Tuple<int, int>(7, 0);
} }
public ItemStack[,] Pattern
{
get
{
return new[,]
{
{new ItemStack(BrickItem.ItemID), new ItemStack(BrickItem.ItemID)},
{new ItemStack(BrickItem.ItemID), new ItemStack(BrickItem.ItemID)}
};
}
}
public ItemStack Output
{
get { return new ItemStack(BlockID); }
}
public bool SignificantMetadata
{
get { return false; }
}
} }
} }

View File

@ -1,9 +1,10 @@
using System; using System;
using TrueCraft.API;
using TrueCraft.API.Logic; using TrueCraft.API.Logic;
namespace TrueCraft.Core.Logic.Blocks namespace TrueCraft.Core.Logic.Blocks
{ {
public class ButtonBlock : BlockProvider public class ButtonBlock : BlockProvider, ICraftingRecipe
{ {
public static readonly byte BlockID = 0x4D; public static readonly byte BlockID = 0x4D;
@ -18,5 +19,26 @@ namespace TrueCraft.Core.Logic.Blocks
public override bool Opaque { get { return false; } } public override bool Opaque { get { return false; } }
public override string DisplayName { get { return "Button"; } } public override string DisplayName { get { return "Button"; } }
public ItemStack[,] Pattern
{
get
{
return new[,]
{
{new ItemStack(StoneBlock.BlockID)}
};
}
}
public ItemStack Output
{
get { return new ItemStack(BlockID); }
}
public bool SignificantMetadata
{
get { return false; }
}
} }
} }

View File

@ -1,9 +1,11 @@
using System; using System;
using TrueCraft.API;
using TrueCraft.API.Logic; using TrueCraft.API.Logic;
using TrueCraft.Core.Logic.Items;
namespace TrueCraft.Core.Logic.Blocks namespace TrueCraft.Core.Logic.Blocks
{ {
public class CakeBlock : BlockProvider public class CakeBlock : BlockProvider, ICraftingRecipe
{ {
public static readonly byte BlockID = 0x5C; public static readonly byte BlockID = 0x5C;
@ -23,5 +25,40 @@ namespace TrueCraft.Core.Logic.Blocks
{ {
return new Tuple<int, int>(9, 7); return new Tuple<int, int>(9, 7);
} }
public ItemStack[,] Pattern
{
get
{
return new[,]
{
{
new ItemStack(MilkItem.ItemID),
new ItemStack(MilkItem.ItemID),
new ItemStack(MilkItem.ItemID)
},
{
new ItemStack(SugarItem.ItemID),
new ItemStack(EggItem.ItemID),
new ItemStack(SugarItem.ItemID)
},
{
new ItemStack(WheatItem.ItemID),
new ItemStack(WheatItem.ItemID),
new ItemStack(WheatItem.ItemID)
}
};
}
}
public ItemStack Output
{
get { return new ItemStack(BlockID); }
}
public bool SignificantMetadata
{
get { return false; }
}
} }
} }

View File

@ -1,9 +1,11 @@
using System; using System;
using TrueCraft.API;
using TrueCraft.Core.Logic.Items;
using TrueCraft.API.Logic; using TrueCraft.API.Logic;
namespace TrueCraft.Core.Logic.Blocks namespace TrueCraft.Core.Logic.Blocks
{ {
public class ChestBlock : BlockProvider public class ChestBlock : BlockProvider, ICraftingRecipe
{ {
public static readonly byte BlockID = 0x36; public static readonly byte BlockID = 0x36;
@ -23,5 +25,40 @@ namespace TrueCraft.Core.Logic.Blocks
{ {
return new Tuple<int, int>(10, 1); return new Tuple<int, int>(10, 1);
} }
public ItemStack[,] Pattern
{
get
{
return new[,]
{
{
new ItemStack(WoodenPlanksBlock.BlockID),
new ItemStack(WoodenPlanksBlock.BlockID),
new ItemStack(WoodenPlanksBlock.BlockID)
},
{
new ItemStack(WoodenPlanksBlock.BlockID),
ItemStack.EmptyStack,
new ItemStack(WoodenPlanksBlock.BlockID)
},
{
new ItemStack(WoodenPlanksBlock.BlockID),
new ItemStack(WoodenPlanksBlock.BlockID),
new ItemStack(WoodenPlanksBlock.BlockID)
}
};
}
}
public ItemStack Output
{
get { return new ItemStack(BlockID); }
}
public bool SignificantMetadata
{
get { return false; }
}
} }
} }

View File

@ -6,7 +6,7 @@ using TrueCraft.Core.Logic.Items;
namespace TrueCraft.Core.Logic.Blocks namespace TrueCraft.Core.Logic.Blocks
{ {
public class ClayBlock : BlockProvider public class ClayBlock : BlockProvider, ICraftingRecipe
{ {
public static readonly byte BlockID = 0x52; public static readonly byte BlockID = 0x52;
@ -29,5 +29,27 @@ namespace TrueCraft.Core.Logic.Blocks
{ {
return new[] { new ItemStack(ClayItem.ItemID, 4) }; return new[] { new ItemStack(ClayItem.ItemID, 4) };
} }
public ItemStack[,] Pattern
{
get
{
return new[,]
{
{new ItemStack(ClayItem.ItemID), new ItemStack(ClayItem.ItemID)},
{new ItemStack(ClayItem.ItemID), new ItemStack(ClayItem.ItemID)}
};
}
}
public ItemStack Output
{
get { return new ItemStack(BlockID); }
}
public bool SignificantMetadata
{
get { return false; }
}
} }
} }

View File

@ -52,5 +52,10 @@ namespace TrueCraft.Core.Logic.Blocks
return new ItemStack(BlockID); return new ItemStack(BlockID);
} }
} }
public bool SignificantMetadata
{
get { return false; }
}
} }
} }

View File

@ -1,9 +1,11 @@
using System; using System;
using TrueCraft.API.Logic; using TrueCraft.API.Logic;
using TrueCraft.API;
using TrueCraft.Core.Logic.Items;
namespace TrueCraft.Core.Logic.Blocks namespace TrueCraft.Core.Logic.Blocks
{ {
public class DiamondBlock : BlockProvider public class DiamondBlock : BlockProvider, ICraftingRecipe
{ {
public static readonly byte BlockID = 0x39; public static readonly byte BlockID = 0x39;
@ -21,5 +23,28 @@ namespace TrueCraft.Core.Logic.Blocks
{ {
return new Tuple<int, int>(8, 1); return new Tuple<int, int>(8, 1);
} }
public ItemStack[,] Pattern
{
get
{
return new [,]
{
{new ItemStack(DiamondItem.ItemID), new ItemStack(DiamondItem.ItemID), new ItemStack(DiamondItem.ItemID)},
{new ItemStack(DiamondItem.ItemID), new ItemStack(DiamondItem.ItemID), new ItemStack(DiamondItem.ItemID)},
{new ItemStack(DiamondItem.ItemID), new ItemStack(DiamondItem.ItemID), new ItemStack(DiamondItem.ItemID)}
};
}
}
public ItemStack Output
{
get { return new ItemStack(BlockID); }
}
public bool SignificantMetadata
{
get { return false; }
}
} }
} }

View File

@ -1,9 +1,11 @@
using System; using System;
using TrueCraft.API.Logic; using TrueCraft.API.Logic;
using TrueCraft.API;
using TrueCraft.Core.Logic.Items;
namespace TrueCraft.Core.Logic.Blocks namespace TrueCraft.Core.Logic.Blocks
{ {
public class DispenserBlock : BlockProvider public class DispenserBlock : BlockProvider, ICraftingRecipe
{ {
public static readonly byte BlockID = 0x17; public static readonly byte BlockID = 0x17;
@ -21,5 +23,40 @@ namespace TrueCraft.Core.Logic.Blocks
{ {
return new Tuple<int, int>(13, 2); return new Tuple<int, int>(13, 2);
} }
public ItemStack[,] Pattern
{
get
{
return new[,]
{
{
new ItemStack(CobblestoneBlock.BlockID),
new ItemStack(CobblestoneBlock.BlockID),
new ItemStack(CobblestoneBlock.BlockID)
},
{
new ItemStack(CobblestoneBlock.BlockID),
new ItemStack(BowItem.ItemID),
new ItemStack(CobblestoneBlock.BlockID)
},
{
new ItemStack(CobblestoneBlock.BlockID),
new ItemStack(RedstoneItem.ItemID),
new ItemStack(CobblestoneBlock.BlockID)
}
};
}
}
public ItemStack Output
{
get { return new ItemStack(BlockID); }
}
public bool SignificantMetadata
{
get { return false; }
}
} }
} }

View File

@ -1,9 +1,11 @@
using System; using System;
using TrueCraft.API.Logic; using TrueCraft.API.Logic;
using TrueCraft.API;
using TrueCraft.Core.Logic.Items;
namespace TrueCraft.Core.Logic.Blocks namespace TrueCraft.Core.Logic.Blocks
{ {
public class FenceBlock : BlockProvider public class FenceBlock : BlockProvider, ICraftingRecipe
{ {
public static readonly byte BlockID = 0x55; public static readonly byte BlockID = 0x55;
@ -23,5 +25,35 @@ namespace TrueCraft.Core.Logic.Blocks
{ {
return new Tuple<int, int>(4, 0); return new Tuple<int, int>(4, 0);
} }
public ItemStack[,] Pattern
{
get
{
return new[,]
{
{
new ItemStack(StickItem.ItemID),
new ItemStack(WoodenPlanksBlock.BlockID),
new ItemStack(StickItem.ItemID)
},
{
new ItemStack(StickItem.ItemID),
new ItemStack(WoodenPlanksBlock.BlockID),
new ItemStack(StickItem.ItemID)
}
};
}
}
public ItemStack Output
{
get { return new ItemStack(BlockID); }
}
public bool SignificantMetadata
{
get { return false; }
}
} }
} }

View File

@ -1,9 +1,10 @@
using System; using System;
using TrueCraft.API.Logic; using TrueCraft.API.Logic;
using TrueCraft.API;
namespace TrueCraft.Core.Logic.Blocks namespace TrueCraft.Core.Logic.Blocks
{ {
public class FurnaceBlock : BlockProvider public class FurnaceBlock : BlockProvider, ICraftingRecipe
{ {
public static readonly byte BlockID = 0x3D; public static readonly byte BlockID = 0x3D;
@ -21,6 +22,41 @@ namespace TrueCraft.Core.Logic.Blocks
{ {
return new Tuple<int, int>(13, 2); return new Tuple<int, int>(13, 2);
} }
public ItemStack[,] Pattern
{
get
{
return new[,]
{
{
new ItemStack(CobblestoneBlock.BlockID),
new ItemStack(CobblestoneBlock.BlockID),
new ItemStack(CobblestoneBlock.BlockID)
},
{
new ItemStack(CobblestoneBlock.BlockID),
ItemStack.EmptyStack,
new ItemStack(CobblestoneBlock.BlockID)
},
{
new ItemStack(CobblestoneBlock.BlockID),
new ItemStack(CobblestoneBlock.BlockID),
new ItemStack(CobblestoneBlock.BlockID)
}
};
}
}
public ItemStack Output
{
get { return new ItemStack(BlockID); }
}
public bool SignificantMetadata
{
get { return false; }
}
} }
public class LitFurnaceBlock : FurnaceBlock public class LitFurnaceBlock : FurnaceBlock

View File

@ -5,7 +5,7 @@ using TrueCraft.Core.Logic.Items;
namespace TrueCraft.Core.Logic.Blocks namespace TrueCraft.Core.Logic.Blocks
{ {
public class GlowstoneBlock : BlockProvider public class GlowstoneBlock : BlockProvider, ICraftingRecipe
{ {
public static readonly byte BlockID = 0x59; public static readonly byte BlockID = 0x59;
@ -30,5 +30,33 @@ namespace TrueCraft.Core.Logic.Blocks
{ {
return new[] { new ItemStack(GlowstoneDustItem.ItemID, (sbyte)new Random().Next(2, 4), descriptor.Metadata) }; return new[] { new ItemStack(GlowstoneDustItem.ItemID, (sbyte)new Random().Next(2, 4), descriptor.Metadata) };
} }
public ItemStack[,] Pattern
{
get
{
return new[,]
{
{
new ItemStack(GlowstoneDustItem.ItemID),
new ItemStack(GlowstoneDustItem.ItemID)
},
{
new ItemStack(GlowstoneDustItem.ItemID),
new ItemStack(GlowstoneDustItem.ItemID)
}
};
}
}
public ItemStack Output
{
get { return new ItemStack(BlockID); }
}
public bool SignificantMetadata
{
get { return false; }
}
} }
} }

View File

@ -1,9 +1,11 @@
using System; using System;
using TrueCraft.API.Logic; using TrueCraft.API.Logic;
using TrueCraft.API;
using TrueCraft.Core.Logic.Items;
namespace TrueCraft.Core.Logic.Blocks namespace TrueCraft.Core.Logic.Blocks
{ {
public class GoldBlock : BlockProvider public class GoldBlock : BlockProvider, ICraftingRecipe
{ {
public static readonly byte BlockID = 0x29; public static readonly byte BlockID = 0x29;
@ -21,5 +23,28 @@ namespace TrueCraft.Core.Logic.Blocks
{ {
return new Tuple<int, int>(7, 1); return new Tuple<int, int>(7, 1);
} }
public ItemStack[,] Pattern
{
get
{
return new [,]
{
{new ItemStack(GoldIngotItem.ItemID), new ItemStack(GoldIngotItem.ItemID), new ItemStack(GoldIngotItem.ItemID)},
{new ItemStack(GoldIngotItem.ItemID), new ItemStack(GoldIngotItem.ItemID), new ItemStack(GoldIngotItem.ItemID)},
{new ItemStack(GoldIngotItem.ItemID), new ItemStack(GoldIngotItem.ItemID), new ItemStack(GoldIngotItem.ItemID)}
};
}
}
public ItemStack Output
{
get { return new ItemStack(BlockID); }
}
public bool SignificantMetadata
{
get { return false; }
}
} }
} }

View File

@ -1,9 +1,11 @@
using System; using System;
using TrueCraft.API.Logic; using TrueCraft.API.Logic;
using TrueCraft.API;
using TrueCraft.Core.Logic.Items;
namespace TrueCraft.Core.Logic.Blocks namespace TrueCraft.Core.Logic.Blocks
{ {
public class IronBlock : BlockProvider public class IronBlock : BlockProvider, ICraftingRecipe
{ {
public static readonly byte BlockID = 0x2A; public static readonly byte BlockID = 0x2A;
@ -21,5 +23,28 @@ namespace TrueCraft.Core.Logic.Blocks
{ {
return new Tuple<int, int>(6, 1); return new Tuple<int, int>(6, 1);
} }
public ItemStack[,] Pattern
{
get
{
return new[,]
{
{new ItemStack(IronIngotItem.ItemID), new ItemStack(IronIngotItem.ItemID), new ItemStack(IronIngotItem.ItemID)},
{new ItemStack(IronIngotItem.ItemID), new ItemStack(IronIngotItem.ItemID), new ItemStack(IronIngotItem.ItemID)},
{new ItemStack(IronIngotItem.ItemID), new ItemStack(IronIngotItem.ItemID), new ItemStack(IronIngotItem.ItemID)}
};
}
}
public ItemStack Output
{
get { return new ItemStack(BlockID); }
}
public bool SignificantMetadata
{
get { return false; }
}
} }
} }

View File

@ -1,9 +1,11 @@
using System; using System;
using TrueCraft.API.Logic; using TrueCraft.API.Logic;
using TrueCraft.API;
using TrueCraft.Core.Logic.Items;
namespace TrueCraft.Core.Logic.Blocks namespace TrueCraft.Core.Logic.Blocks
{ {
public class IronDoorBlock : BlockProvider public class IronDoorBlock : BlockProvider, ICraftingRecipe
{ {
public static readonly byte BlockID = 0x47; public static readonly byte BlockID = 0x47;
@ -23,5 +25,28 @@ namespace TrueCraft.Core.Logic.Blocks
{ {
return new Tuple<int, int>(1, 6); return new Tuple<int, int>(1, 6);
} }
public ItemStack[,] Pattern
{
get
{
return new[,]
{
{new ItemStack(IronIngotItem.ItemID), new ItemStack(IronIngotItem.ItemID)},
{new ItemStack(IronIngotItem.ItemID), new ItemStack(IronIngotItem.ItemID)},
{new ItemStack(IronIngotItem.ItemID), new ItemStack(IronIngotItem.ItemID)}
};
}
}
public ItemStack Output
{
get { return new ItemStack(BlockID); }
}
public bool SignificantMetadata
{
get { return false; }
}
} }
} }

View File

@ -1,9 +1,11 @@
using System; using System;
using TrueCraft.API.Logic; using TrueCraft.API.Logic;
using TrueCraft.API;
using TrueCraft.Core.Logic.Items;
namespace TrueCraft.Core.Logic.Blocks namespace TrueCraft.Core.Logic.Blocks
{ {
public class JukeboxBlock : BlockProvider public class JukeboxBlock : BlockProvider, ICraftingRecipe
{ {
public static readonly byte BlockID = 0x54; public static readonly byte BlockID = 0x54;
@ -21,5 +23,43 @@ namespace TrueCraft.Core.Logic.Blocks
{ {
return new Tuple<int, int>(10, 4); return new Tuple<int, int>(10, 4);
} }
public ItemStack[,] Pattern
{
get
{
return new[,]
{
{
new ItemStack(WoodenPlanksBlock.BlockID),
new ItemStack(WoodenPlanksBlock.BlockID),
new ItemStack(WoodenPlanksBlock.BlockID)
},
{
new ItemStack(WoodenPlanksBlock.BlockID),
new ItemStack(DiamondItem.ItemID),
new ItemStack(WoodenPlanksBlock.BlockID)
},
{
new ItemStack(WoodenPlanksBlock.BlockID),
new ItemStack(WoodenPlanksBlock.BlockID),
new ItemStack(WoodenPlanksBlock.BlockID)
}
};
}
}
public ItemStack Output
{
get { return new ItemStack(BlockID); }
}
public bool SignificantMetadata
{
get
{
return false;
}
}
} }
} }

View File

@ -1,9 +1,11 @@
using System; using System;
using TrueCraft.API.Logic; using TrueCraft.API.Logic;
using TrueCraft.API;
using TrueCraft.Core.Logic.Items;
namespace TrueCraft.Core.Logic.Blocks namespace TrueCraft.Core.Logic.Blocks
{ {
public class LadderBlock : BlockProvider public class LadderBlock : BlockProvider, ICraftingRecipe
{ {
public static readonly byte BlockID = 0x41; public static readonly byte BlockID = 0x41;
@ -23,5 +25,40 @@ namespace TrueCraft.Core.Logic.Blocks
{ {
return new Tuple<int, int>(3, 5); return new Tuple<int, int>(3, 5);
} }
public ItemStack[,] Pattern
{
get
{
return new[,]
{
{
new ItemStack(StickItem.ItemID),
ItemStack.EmptyStack,
new ItemStack(StickItem.ItemID)
},
{
new ItemStack(StickItem.ItemID),
new ItemStack(StickItem.ItemID),
new ItemStack(StickItem.ItemID)
},
{
new ItemStack(StickItem.ItemID),
ItemStack.EmptyStack,
new ItemStack(StickItem.ItemID)
}
};
}
}
public ItemStack Output
{
get { return new ItemStack(BlockID); }
}
public bool SignificantMetadata
{
get { return false; }
}
} }
} }

View File

@ -1,9 +1,11 @@
using System; using System;
using TrueCraft.API.Logic; using TrueCraft.API.Logic;
using TrueCraft.API;
using TrueCraft.Core.Logic.Items;
namespace TrueCraft.Core.Logic.Blocks namespace TrueCraft.Core.Logic.Blocks
{ {
public class LapisLazuliBlock : BlockProvider public class LapisLazuliBlock : BlockProvider, ICraftingRecipe
{ {
public static readonly byte BlockID = 0x16; public static readonly byte BlockID = 0x16;
@ -21,5 +23,28 @@ namespace TrueCraft.Core.Logic.Blocks
{ {
return new Tuple<int, int>(0, 9); return new Tuple<int, int>(0, 9);
} }
public ItemStack[,] Pattern
{
get
{
return new [,]
{
{new ItemStack(DyeItem.ItemID, 1, 4), new ItemStack(DyeItem.ItemID, 1, 4), new ItemStack(DyeItem.ItemID, 1, 4)},
{new ItemStack(DyeItem.ItemID, 1, 4), new ItemStack(DyeItem.ItemID, 1, 4), new ItemStack(DyeItem.ItemID, 1, 4)},
{new ItemStack(DyeItem.ItemID, 1, 4), new ItemStack(DyeItem.ItemID, 1, 4), new ItemStack(DyeItem.ItemID, 1, 4)}
};
}
}
public ItemStack Output
{
get { return new ItemStack(BlockID); }
}
public bool SignificantMetadata
{
get { return true; }
}
} }
} }

View File

@ -1,5 +1,7 @@
using System; using System;
using TrueCraft.API;
using TrueCraft.API.Logic; using TrueCraft.API.Logic;
using TrueCraft.Core.Logic.Items;
namespace TrueCraft.Core.Logic.Blocks namespace TrueCraft.Core.Logic.Blocks
{ {
@ -21,5 +23,10 @@ namespace TrueCraft.Core.Logic.Blocks
{ {
return new Tuple<int, int>(0, 10); return new Tuple<int, int>(0, 10);
} }
protected override ItemStack[] GetDrop(BlockDescriptor descriptor)
{
return new[] { new ItemStack(DyeItem.ItemID, (sbyte)new Random().Next(4, 8), 4) };
}
} }
} }

View File

@ -1,9 +1,11 @@
using System; using System;
using TrueCraft.API.Logic; using TrueCraft.API.Logic;
using TrueCraft.API;
using TrueCraft.Core.Logic.Items;
namespace TrueCraft.Core.Logic.Blocks namespace TrueCraft.Core.Logic.Blocks
{ {
public class LeverBlock : BlockProvider public class LeverBlock : BlockProvider, ICraftingRecipe
{ {
public static readonly byte BlockID = 0x45; public static readonly byte BlockID = 0x45;
@ -23,5 +25,27 @@ namespace TrueCraft.Core.Logic.Blocks
{ {
return new Tuple<int, int>(0, 6); return new Tuple<int, int>(0, 6);
} }
public ItemStack[,] Pattern
{
get
{
return new[,]
{
{new ItemStack(StickItem.ItemID)},
{new ItemStack(CobblestoneBlock.BlockID)}
};
}
}
public ItemStack Output
{
get { return new ItemStack(BlockID); }
}
public bool SignificantMetadata
{
get { return false; }
}
} }
} }

View File

@ -1,9 +1,11 @@
using System; using System;
using TrueCraft.API;
using TrueCraft.API.Logic; using TrueCraft.API.Logic;
using TrueCraft.Core.Logic.Items;
namespace TrueCraft.Core.Logic.Blocks namespace TrueCraft.Core.Logic.Blocks
{ {
public class NoteBlockBlock : BlockProvider public class NoteBlockBlock : BlockProvider, ICraftingRecipe
{ {
public static readonly byte BlockID = 0x19; public static readonly byte BlockID = 0x19;
@ -21,5 +23,40 @@ namespace TrueCraft.Core.Logic.Blocks
{ {
return new Tuple<int, int>(10, 4); return new Tuple<int, int>(10, 4);
} }
public ItemStack[,] Pattern
{
get
{
return new[,]
{
{
new ItemStack(WoodenPlanksBlock.BlockID),
new ItemStack(WoodenPlanksBlock.BlockID),
new ItemStack(WoodenPlanksBlock.BlockID)
},
{
new ItemStack(WoodenPlanksBlock.BlockID),
new ItemStack(RedstoneItem.ItemID),
new ItemStack(WoodenPlanksBlock.BlockID)
},
{
new ItemStack(WoodenPlanksBlock.BlockID),
new ItemStack(WoodenPlanksBlock.BlockID),
new ItemStack(WoodenPlanksBlock.BlockID)
}
};
}
}
public ItemStack Output
{
get { return new ItemStack(BlockID); }
}
public bool SignificantMetadata
{
get { return false; }
}
} }
} }

View File

@ -1,9 +1,11 @@
using System; using System;
using TrueCraft.API.Logic; using TrueCraft.API.Logic;
using TrueCraft.API;
using TrueCraft.Core.Logic.Items;
namespace TrueCraft.Core.Logic.Blocks namespace TrueCraft.Core.Logic.Blocks
{ {
public class PistonBlock : BlockProvider public class PistonBlock : BlockProvider, ICraftingRecipe
{ {
public static readonly byte BlockID = 0x21; public static readonly byte BlockID = 0x21;
@ -23,9 +25,44 @@ namespace TrueCraft.Core.Logic.Blocks
{ {
return new Tuple<int, int>(11, 6); return new Tuple<int, int>(11, 6);
} }
public ItemStack[,] Pattern
{
get
{
return new[,]
{
{
new ItemStack(WoodenPlanksBlock.BlockID),
new ItemStack(WoodenPlanksBlock.BlockID),
new ItemStack(WoodenPlanksBlock.BlockID)
},
{
new ItemStack(CobblestoneBlock.BlockID),
new ItemStack(IronIngotItem.ItemID),
new ItemStack(CobblestoneBlock.BlockID)
},
{
new ItemStack(CobblestoneBlock.BlockID),
new ItemStack(RedstoneItem.ItemID),
new ItemStack(CobblestoneBlock.BlockID)
}
};
}
}
public ItemStack Output
{
get { return new ItemStack(BlockID); }
}
public bool SignificantMetadata
{
get { return false; }
}
} }
public class StickyPistonBlock : BlockProvider public class StickyPistonBlock : BlockProvider, ICraftingRecipe
{ {
public static readonly byte BlockID = 0x1D; public static readonly byte BlockID = 0x1D;
@ -45,6 +82,28 @@ namespace TrueCraft.Core.Logic.Blocks
{ {
return new Tuple<int, int>(10, 6); return new Tuple<int, int>(10, 6);
} }
public ItemStack[,] Pattern
{
get
{
return new[,]
{
{new ItemStack(SlimeballItem.ItemID)},
{new ItemStack(PistonBlock.BlockID)}
};
}
}
public ItemStack Output
{
get { return new ItemStack(BlockID); }
}
public bool SignificantMetadata
{
get { return false; }
}
} }
public class PistonPlungerBlock : BlockProvider public class PistonPlungerBlock : BlockProvider

View File

@ -1,5 +1,6 @@
using System; using System;
using TrueCraft.API.Logic; using TrueCraft.API.Logic;
using TrueCraft.API;
namespace TrueCraft.Core.Logic.Blocks namespace TrueCraft.Core.Logic.Blocks
{ {
@ -14,20 +15,63 @@ namespace TrueCraft.Core.Logic.Blocks
public override bool Opaque { get { return false; } } public override bool Opaque { get { return false; } }
} }
public class WoodenPressurePlateBlock : PressurePlateBlock public class WoodenPressurePlateBlock : PressurePlateBlock, ICraftingRecipe
{ {
public static readonly byte BlockID = 0x48; public static readonly byte BlockID = 0x48;
public override byte ID { get { return 0x48; } } public override byte ID { get { return 0x48; } }
public override string DisplayName { get { return "Wooden Pressure Plate"; } } public override string DisplayName { get { return "Wooden Pressure Plate"; } }
public ItemStack[,] Pattern
{
get
{
return new[,]
{
{new ItemStack(WoodenPlanksBlock.BlockID), new ItemStack(WoodenPlanksBlock.BlockID)}
};
}
}
public ItemStack Output
{
get { return new ItemStack(BlockID); }
}
public bool SignificantMetadata
{
get { return false; }
}
} }
public class StonePressurePlateBlock : PressurePlateBlock { public class StonePressurePlateBlock : PressurePlateBlock, ICraftingRecipe
{
public static readonly byte BlockID = 0x46; public static readonly byte BlockID = 0x46;
public override byte ID { get { return 0x46; } } public override byte ID { get { return 0x46; } }
public override string DisplayName { get { return "Stone Pressure Plate"; } } public override string DisplayName { get { return "Stone Pressure Plate"; } }
public ItemStack[,] Pattern
{
get
{
return new[,]
{
{new ItemStack(StoneBlock.BlockID), new ItemStack(StoneBlock.BlockID)}
};
}
}
public ItemStack Output
{
get { return new ItemStack(BlockID); }
}
public bool SignificantMetadata
{
get { return false; }
}
} }
} }

View File

@ -41,5 +41,10 @@ namespace TrueCraft.Core.Logic.Blocks
return new ItemStack(BlockID, 4); return new ItemStack(BlockID, 4);
} }
} }
public bool SignificantMetadata
{
get { return false; }
}
} }
} }

View File

@ -87,5 +87,10 @@ namespace TrueCraft.Core.Logic.Items
return new ItemStack(ItemID); return new ItemStack(ItemID);
} }
} }
public bool SignificantMetadata
{
get { return false; }
}
} }
} }