Ejemplo n.º 1
0
            public static Filter CreateFilter(string filter)
            {
                var f = filter.ToLowerInvariant();

                switch (f)
                {
                case "<flats>": return(new NamespaceFilter(LumpNamespace.Flats));

                case "<patches>": return(new NamespaceFilter(LumpNamespace.Patches));

                case "<sprites>": return(new NamespaceFilter(LumpNamespace.Sprites));

                case "<maps>": return(new MapFilter(MapLump.Default));
                }
                if (f.StartsWith("<maps-") && f.EndsWith(">"))
                {
                    MapLump lumps = MapLump.None;
                    foreach (var split in f.Substring(6, f.Length - 7).Split('-'))
                    {
                        switch (split)
                        {
                        case "all": lumps |= MapLump.All; continue;

                        case "bm": lumps |= MapLump.BLOCKMAP; continue;

                        case "ld": lumps |= MapLump.LINEDEFS; continue;

                        case "n": lumps |= MapLump.NODES; continue;

                        case "r": lumps |= MapLump.REJECTS; continue;

                        case "s": lumps |= MapLump.SECTORS; continue;

                        case "sd": lumps |= MapLump.SIDEDEFS; continue;

                        case "sg": lumps |= MapLump.SEGS; continue;

                        case "ss": lumps |= MapLump.SSECTORS; continue;

                        case "t": lumps |= MapLump.THINGS; continue;

                        case "v": lumps |= MapLump.VERTEXES; continue;
                        }
                    }
                    return(new MapFilter(lumps));
                }
                return(new RegexFilter(filter));
            }
Ejemplo n.º 2
0
 bool HasFlag(MapLump lumps)
 {
     return((this.lumps & lumps) == lumps);
 }
Ejemplo n.º 3
0
 bool HasFlag(MapLump lumps)
 {
     return (this.lumps & lumps) == lumps;
 }
Ejemplo n.º 4
0
 public MapFilter(MapLump lumps)
 {
     this.lumps = lumps;
 }
Ejemplo n.º 5
0
 public MapFilter(MapLump lumps)
 {
     this.lumps = lumps;
 }