public GYamlDataCollection(GYamlNode parent) { DataPairs.Add(new GYamlDataPair("name", string.Empty)); DataPairs.Add(new GYamlDataPair("id", "0")); if (Line.IsNull()) { Line = string.Empty; } Parent = parent; }
public static bool TryParse(this GYamlDocument input) { GList <GValueSet <string, GYamlNodeType> > NodeTypesList = new GList <GValueSet <string, GYamlNodeType> > { new GValueSet <string, GYamlNodeType>("Block", GYamlNodeType.Block), new GValueSet <string, GYamlNodeType>("Child", GYamlNodeType.Child), new GValueSet <string, GYamlNodeType>("Item", GYamlNodeType.Item), new GValueSet <string, GYamlNodeType>("Entity", GYamlNodeType.Entity), new GValueSet <string, GYamlNodeType>("Template", GYamlNodeType.Template), new GValueSet <string, GYamlNodeType>("Container", GYamlNodeType.Container), new GValueSet <string, GYamlNodeType>("LootGroup", GYamlNodeType.LootGroup) }; if (input.Lines.Count == 0) { return(false); } bool MadeNode = false; GYamlNode newNode = new GYamlNode(GYamlNodeType.Unknown); foreach (string line in input.Lines) { string lineTemp = line; if (lineTemp.StartsWith(NodeBrackets[0]) && !MadeNode) { newNode = new GYamlNode(GYamlNodeType.Unknown); newNode.Lines.Add(line); lineTemp = lineTemp.TrimStart(NodeBrackets[0]).Replace(" ", string.Empty); for (int i = 0; i < NodeTypesList.Count; i++) { if (lineTemp.StartsWith(NodeTypesList[i].Val1)) { newNode.NodeType = NodeTypesList[i].Val2; if (lineTemp.RemoveFirst(NodeTypesList[i].Val1, out string outStr)) { lineTemp = outStr.TrimStart(' '); if (lineTemp.ToLower().StartsWith("id:") && lineTemp.TrySplit(": ", out string[] tempIDSplit) && tempIDSplit.Length == 2)
public GYamlDataCollection(string line, GYamlNode parent) : this(parent) => Line = line;