Exemplo n.º 1
0
        private Network.Options.Option DeserializeOption(BinaryReader r)
        {
            var o = new Network.Options.Option();

            o.Type = (Network.Options.Option.OptionType)r.ReadInt32();
            o.Main = DeserializeSubOption(r);

            int subCount = r.ReadInt32();

            o.Subs = new List <Network.Options.Option.SubOption>();
            for (int i = 0; i < subCount; ++i)
            {
                o.Subs.Add(DeserializeSubOption(r));
            }

            return(o);
        }
Exemplo n.º 2
0
        private void SerializeOption(Network.Options.Option o, BinaryWriter w)
        {
            w.Write((int)o.Type);

            SerializeSubOption(o.Main, w);

            var subs = o.Subs;

            if (subs == null)
            {
                w.Write(0);
            }
            else
            {
                w.Write(subs.Count);
                foreach (var so in subs)
                {
                    SerializeSubOption(so, w);
                }
            }
        }
 /// <summary>
 /// Snapshot play options.
 /// </summary>
 /// <param name="option">The Network Option.</param>
 /// <returns>The play options.</returns>
 private static IEnumerable <List <int> > SnapshotOptions(Network.Options.Option option)
 {
     if (option.Subs != null && option.Subs.Count > 0)
     {
         foreach (var sub in option.Subs)
         {
             foreach (var subOption in SnapshotSubOptions(sub))
             {
                 var ret = new List <int> {
                     option.Main.ID
                 };
                 ret.AddRange(subOption);
                 yield return(ret);
             }
         }
     }
     else
     {
         foreach (var mainOption in SnapshotSubOptions(option.Main))
         {
             yield return(mainOption);
         }
     }
 }
Exemplo n.º 4
0
 public void UpdateSubOptionHighlights(Network.Options.Option option)
 {
     object[] objArray1 = new object[] { option };
     base.method_8("UpdateSubOptionHighlights", objArray1);
 }