Пример #1
0
        void IDumpabled.Dump(string name, ObjectDumper dumper)
        {
            dumper.DumpText(name, "{");
            if (dumper.Enter())
            {
                dumper.DumpText("Function", FunctionToString());

                if (Field.Flags.HasFlag(ConditionFlags.UseGlobal))
                {
                    dumper.DumpObject("Operand", Provider.CreateReferenceProxy <GlobProxy>(Field.GlobalVariableOperand));
                }
                else
                {
                    dumper.DumpObject("Operand", Field.FloatOperand);
                }

                if (Field.FunctionTarget == FunctionTarget.Reference && Field.FunctionTargetReference == PlayerRefFormId)
                {
                    dumper.DumpText("RunOn", "Player");
                }
                else
                {
                    dumper.DumpObject("RunOn", Field.FunctionTarget);
                    if (Field.FunctionTarget == FunctionTarget.Reference || Field.FunctionTarget == FunctionTarget.LinkedReference)
                    {
                        dumper.DumpObject("RunOnReference", Provider.CreateReferenceProxy <FormProxy>(Field.FunctionTargetReference));
                    }
                }

                dumper.DumpObject("Flags", Field.Flags);
                dumper.Leave();
            }
            dumper.DumpText("}");
        }
Пример #2
0
 void IDumpabled.Dump(string name, ObjectDumper dumper)
 {
     dumper.DumpText(name, "{{ {0} }}", ToString());
 }
Пример #3
0
        void IDumpabled.Dump(string name, ObjectDumper dumper)
        {
            dumper.DumpText(name, "{");
            if (dumper.Enter())
            {
                dumper.DumpText("Name", Field.Name);

                // Dump script properties
                dumper.DumpText("Properties", "{");
                if (dumper.Enter())
                {
                    dumper.DumpText("Count", Field.Properties.Count.ToString());
                    dumper.DumpText("[");
                    if (dumper.Enter())
                    {
                        foreach (var prop in Field.Properties)
                        {
                            // Dump property
                            dumper.DumpText(prop.Name, "{");
                            if (dumper.Enter())
                            {
                                dumper.DumpText("Type", prop.Type.ToString());
                                dumper.DumpText("Values", ScriptPropertyValuesToString(prop));

                                dumper.Leave();
                            }
                            dumper.DumpText("}");
                        }
                        dumper.Leave();
                    }
                    dumper.DumpText("]");
                    dumper.Leave();
                }
                dumper.DumpText("}");
                dumper.Leave();
            }
            dumper.DumpText("}");
        }