예제 #1
0
파일: Ruby.cs 프로젝트: Glitchfinder/OpenXP
 public void WriteScriptHive(ScriptHive hive)
 {
     try
     {
         IronRuby.Builtins.RubyArray ra = new IronRuby.Builtins.RubyArray();
         foreach (Script s in hive.Scripts)
         {
             IronRuby.Builtins.RubyArray ra_entry = new IronRuby.Builtins.RubyArray();
             ra_entry.Add(s.MagicNumber);
             ra_entry.Add(s.Name);
             var ms = new IronRuby.Builtins.MutableString();
             ms = ms.ChangeEncoding(IronRuby.Builtins.RubyEncoding.Binary, true);
             ms.Append(GameData.DataHelper.Deflate(s.Contents));
             ra_entry.Add(ms);
             ra.Add(ra_entry);
         }
         rbhelper.save_scripts(ra);
     }
     catch (Exception e)
     {
         System.Windows.Forms.MessageBox.Show(e.Message);
     }
 }
예제 #2
0
파일: Ruby.cs 프로젝트: Glitchfinder/OpenXP
 //language interops
 public static IronRuby.Builtins.MutableString RString(byte[] item)
 {
     IronRuby.Builtins.MutableString s = new IronRuby.Builtins.MutableString();
     s.Append(item);
     return(s);
 }