void ParseFontCharPairProperty(ref FontPair fontCharPair, string name) { switch (name) { case "CharCodeL": fontCharPair.A = (char)lexer.ParseInt(); break; case "CharCodeR": fontCharPair.B = (char)lexer.ParseInt(); break; case "Delta": fontCharPair.Kerning = lexer.ParseFloat(); break; default: throw new Exception("Unknown property '{0}'. Parsing: {1}", name, fontCharPair); } }
protected void ParseGraphicProperty(Node node, string name) { Widget widget = (Widget)node; switch (name) { case "Anchors": widget.Anchors = (Anchors)lexer.ParseInt(); break; case "HitTestMethod": widget.HitTestMethod = (HitTestMethod)lexer.ParseInt(); break; case "SkinningWeights": widget.SkinningWeights = lexer.ParseSkinningWeights(); break; case "Visible": widget.Visible = lexer.ParseBool(); break; case "Position": widget.Position = lexer.ParseVector2(); break; case "Pivot": widget.Pivot = lexer.ParseVector2(); break; case "Size": widget.Size = lexer.ParseVector2(); break; case "Scale": widget.Scale = lexer.ParseVector2(); break; case "Color": widget.Color = lexer.ParseColor4(); break; case "Rotation": widget.Rotation = lexer.ParseFloat(); break; case "BlendMode": var t = ParseBlendMode(); widget.Blending = t.Item1; widget.Shader = t.Item2; break; case "SuppressSkin": lexer.ParseBool(); break; case "VisualName": lexer.ParseQuotedString(); System.Console.WriteLine("WARNING: Citrus doesn't support skins. VisualName must be empty"); break; default: ParseActorProperty(node, name); break; } }