fCraft.MapConversion.INIFile.Contains C# (CSharp) 메소드

Contains() 공개 메소드

public Contains ( [ section ) : bool
section [
리턴 bool
        public bool Contains( [NotNull] string section, [NotNull] params string[] keys ) {
            if ( section == null )
                throw new ArgumentNullException( "section" );
            if ( keys == null )
                throw new ArgumentNullException( "keys" );
            if ( contents.ContainsKey( section.ToLower() ) ) {
                return keys.All( key => contents[section.ToLower()].ContainsKey( key.ToLower() ) );
            } else {
                return false;
            }
        }

Usage Example

예제 #1
0
        private static Map LoadMeta([NotNull] Stream stream)
        {
            if (stream == null)
            {
                throw new ArgumentNullException("stream");
            }
            INIFile metaFile = new INIFile(stream);

            if (metaFile.IsEmpty)
            {
                throw new Exception("Metadata file is empty or incorrectly formatted.");
            }
            if (!metaFile.Contains("size", "x", "y", "z"))
            {
                throw new Exception("Metadata file is missing map dimensions.");
            }

            int width  = Int32.Parse(metaFile["size", "x"]);
            int length = Int32.Parse(metaFile["size", "z"]);
            int height = Int32.Parse(metaFile["size", "y"]);

            Map map = new Map(null, width, length, height, false);

            if (!map.ValidateHeader())
            {
                throw new MapFormatException("One or more of the map dimensions are invalid.");
            }

            if (metaFile.Contains("spawn", "x", "y", "z", "h"))
            {
                map.Spawn = new Position
                {
                    X = (short)(Int16.Parse(metaFile["spawn", "x"]) * 32 + 16),
                    Y = (short)(Int16.Parse(metaFile["spawn", "z"]) * 32 + 16),
                    Z = (short)(Int16.Parse(metaFile["spawn", "y"]) * 32 + 16),
                    R = Byte.Parse(metaFile["spawn", "h"]),
                    L = 0
                };
            }
            return(map);
        }
All Usage Examples Of fCraft.MapConversion.INIFile::Contains