コード例 #1
0
ファイル: BBPersistent.cs プロジェクト: SylarLi/BBTester
    public static void Export(BBConfig config, BBMacro macro, string path)
    {
        StringBuilder builder = new StringBuilder();

        config.ToCString(builder, "config");
        builder.AppendLine();
        macro.ToCString(builder, "macro");
        File.WriteAllText(path, builder.ToString());
    }
コード例 #2
0
ファイル: BBMacro.cs プロジェクト: SylarLi/BBTester
 public virtual void ToCString(StringBuilder builder, string macroName)
 {
     builder.AppendLine(string.Format("BBMacro {0} = new BBMacro();", macroName));
     string[] fieldNames = new string[] { "code", "button", "key", "data", "times", "duration", "delay", "script", "scriptData" };
     foreach (string fieldName in fieldNames)
     {
         FieldInfo fieldInfo = GetType().GetField(fieldName, BindingFlags.GetField | BindingFlags.Instance | BindingFlags.Public);
         builder.Append(string.Format("{0}.{1} = ", macroName, fieldName));
         BBUtil.ConcatMemberString(builder, fieldInfo.FieldType, fieldInfo.GetValue(this));
         builder.AppendLine(";");
     }
     if (next != null)
     {
         string nextMacroName = macroName + "_n";
         next.ToCString(builder, nextMacroName);
         builder.AppendLine(string.Format("{0}.next = {1};", macroName, nextMacroName));
     }
 }