public static ActionPrioriyList FromString(String s) { var lines = s.Split(new string[] { "\r\n", "\n" }, StringSplitOptions.None); //if (lines.Length < 2) // lines = s.Split(new string[] { "\r" }, StringSplitOptions.None); var apl = new ActionPrioriyList(); if (!apl.SetAplHeader(s)) { return(apl); } foreach (var l in lines) { var expr = ParseLine(l, apl); if (expr is AplAction) { apl.Actions.Add((AplAction)expr); } else if (expr is EquippedItem) { apl.Items.Add(((EquippedItem)expr).slot, (EquippedItem)expr); } if (expr is Comment) { CommentBuffer.Add(((Comment)expr).Content); } if (expr is APLHotkey) { apl.hotkeys.Add((APLHotkey)expr); } } foreach (var a in apl.Actions) { a.ParseAction(); } return(apl); }
public static ActionPrioriyList FromString(String s) { var lines = s.Split(new string[] { "\r\n", "\n" }, StringSplitOptions.None); //if (lines.Length < 2) // lines = s.Split(new string[] { "\r" }, StringSplitOptions.None); var apl = new ActionPrioriyList(); if (!apl.SetAplHeader(s)) return apl; foreach (var l in lines) { var expr = ParseLine(l,apl); if (expr is AplAction) apl.Actions.Add((AplAction)expr); else if (expr is EquippedItem) apl.Items.Add(((EquippedItem)expr).slot,(EquippedItem)expr); if (expr is Comment) CommentBuffer.Add(((Comment)expr).Content); if (expr is APLHotkey) apl.hotkeys.Add((APLHotkey)expr); } foreach (var a in apl.Actions) { a.ParseAction(); } return apl; }