예제 #1
0
 public void read(BinaryReader br, float ver)
 {
     items.read(br, ver);
     if (items.value() > 0)
     {
         zoodate.read(br, ver);
         donorcnt.read(br, ver);
         for (int i = 0; i < (int)donorcnt.value(); i++)
         {
             donors.Add(new Donor(br, ver));
         }
         zoocnt.read(br, ver);
         for (int i = 0; i < (int)zoocnt.value(); i++)
         {
             zoojobs.Add(new ZooJob(br, ver));
         }
         if (ver > 5.1)
         {
             strcount.read(br, ver);
             for (int i = 0; i < strcount.value(); i++)
             {
                 strings.Add(new MFString(br, ver));
             }
         }
     }
 }
예제 #2
0
 public ArcPlan(BinaryReader br, float ver)
 {
     date.read(br, ver);
     count.read(br, ver);
     for (int i = 0; i < count.value(); i++)
     {
         works.Add(new MFStringList(br, ver));
     }
 }
예제 #3
0
        public void Read(BinaryReader br, float ver)
        {
            TransferType = br.ReadByte();
            Notes.read(br, ver);
            When.read(br, ver);
            Units.read(br, ver);
            String msk = Masks[TransferType];

            for (int i = 0; i < msk.Length; i++)
            {
                IMFCommon obj = Getobj(msk[i], true);
                obj.read(br, ver);
            }
        }
예제 #4
0
 public void read(BinaryReader br, float ver)
 {
     child_count.read(br, ver);
     DBG.dbg2(child_count.log(), br);
     borns.read(br, ver);
     DBG.dbg2(borns.log(), br);
     ev_date.read(br, ver);
     DBG.dbg2(ev_date.log(), br);
     last_okrol.read(br, ver);
     DBG.dbg2(last_okrol.log(), br);
     ev_type.read(br, ver);
     DBG.dbg2(ev_type.log(), br);
     if (ver > 3.1)
     {
         lost_babies.read(br, ver);
     }
     DBG.dbg2(lost_babies.log(), br);
     if (ver > 5.1)
     {
         overall_babies.read(br, ver);
     }
     DBG.dbg2(overall_babies.log(), br);
     suckers.read(br, ver);
     DBG.dbg2(suckers.log(), br);
     fuckers_count.read(br, ver);
     DBG.dbg2(fuckers_count.log(), br);
     for (int i = 0; i < (int)fuckers_count.value(); i++)
     {
         fuckers.Add(new F****r(br, ver));
         DBG.dbg2(fuckers[i].log(), br);
     }
     if (ver > 5.1)
     {
         worker.read(br, ver);
         DBG.dbg2(worker.log(), br);
         no_kuk.read(br, ver);
         DBG.dbg2(no_kuk.log(), br);
         no_lact.read(br, ver);
         DBG.dbg2(no_lact.log(), br);
     }
 }
예제 #5
0
 public void Read(BinaryReader br, float ver)
 {
     sex.read(br, ver);
     DBG.dbg1(sex.log());
     if (ver > 3)
     {
         bon.read(br, ver);
     }
     DBG.dbg1(bon.log());
     for (int i = 0; i < proplist.Count; i++)
     {
         proplist[i].read(br, ver);
         DBG.dbg1(proplist[i].log());
     }
     weightcnt = br.ReadUInt16();
     DBG.dbg1("weight=" + weightcnt.ToString());
     for (int i = 0; i < weightcnt; i++)
     {
         weights.Add(br.ReadUInt32());
         DBG.dbg1("weight[" + i.ToString() + "]=" + weights[i].ToString());
     }
     borndate.read(br, ver);
     DBG.dbg1(borndate.log());
     gencnt = br.ReadUInt16();
     for (int i = 0; i < gencnt; i++)
     {
         genesis.Add(br.ReadUInt16());
     }
     if (sex.value() == 1)
     {
         lastfuck = new MFDate("lastfuck");
         status   = new MFByte("status");
         lastfuck.read(br, ver);
         status.read(br, ver);
     }
     if (sex.value() == 2)
     {
         female = new RabFemale(br, ver, males, females);
     }
 }