/// look up registered entries from TerrainData.xml
        public Material(String name)
        {
            int    id;
            ushort type;
            ushort value;

            MaterialData.GetItemIdOrCubeValues(name, out id, out type, out value);
            if (type == 0)
            {
                throw new IncorrectKeyForBlockTypeOrValueException();
            }
            this.Type  = type;
            this.Value = value;
        }