Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Jun 17th, 2012  |  syntax: None  |  size: 2.33 KB  |  hits: 17  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5.  
  6. namespace Patterns
  7. {
  8.     class Program
  9.     {
  10.         static void Main(string[] args)
  11.         {
  12.             var pt = new PatternTree();
  13.  
  14.             // Register types.
  15.             pt.Add(new ItemType[2, 1]
  16.             {
  17.                 { ItemType.Flint },
  18.                 { ItemType.Wood }
  19.             }, ItemType.Torch);
  20.  
  21.             pt.Add(new ItemType[1, 3]
  22.             {
  23.                 { ItemType.Torch , ItemType.Torch, ItemType.Torch }
  24.             }, ItemType.TorchFence);
  25.  
  26.             pt.Add(new ItemType[3, 3]
  27.             {
  28.                 { ItemType.Wood , ItemType.Wood, ItemType.Wood },
  29.                 { ItemType.Wood , ItemType.Wood, ItemType.Wood },
  30.                 { ItemType.Wood , ItemType.Wood, ItemType.Wood }
  31.             }, ItemType.WoodWall);
  32.  
  33.             // Test it out
  34.             Console.WriteLine(pt[new ItemType[3, 3]
  35.             {
  36.                 {ItemType.Nothing, ItemType.Nothing, ItemType.Flint },
  37.                 {ItemType.Nothing, ItemType.Nothing, ItemType.Wood },
  38.                 {ItemType.Nothing, ItemType.Nothing, ItemType.Nothing },
  39.             }]);
  40.             Console.WriteLine(pt[new ItemType[3, 3]
  41.             {
  42.                 {ItemType.Nothing, ItemType.Nothing, ItemType.Nothing },
  43.                 {ItemType.Nothing, ItemType.Nothing, ItemType.Flint },
  44.                 {ItemType.Nothing, ItemType.Nothing, ItemType.Wood },
  45.             }]);
  46.             Console.WriteLine(pt[new ItemType[3, 3]
  47.             {
  48.                 {ItemType.Torch, ItemType.Torch, ItemType.Torch },
  49.                 {ItemType.Nothing, ItemType.Nothing, ItemType.Nothing },
  50.                 {ItemType.Nothing, ItemType.Nothing, ItemType.Nothing },
  51.             }]);
  52.             Console.WriteLine(pt[new ItemType[3, 3]
  53.             {
  54.                 { ItemType.Wood , ItemType.Wood, ItemType.Wood },
  55.                 { ItemType.Wood , ItemType.Wood, ItemType.Wood },
  56.                 { ItemType.Wood , ItemType.Wood, ItemType.Wood }
  57.             }]);
  58.             Console.WriteLine(pt[new ItemType[3, 3]
  59.             {
  60.                 { ItemType.Wood , ItemType.Wood, ItemType.Nothing },
  61.                 { ItemType.Wood , ItemType.Wood, ItemType.Wood },
  62.                 { ItemType.Wood , ItemType.Wood, ItemType.Wood }
  63.             }]);
  64.  
  65.             Console.ReadLine();
  66.         }
  67.     }
  68. }