public WarTableEntry Read(DAIIO io) { xLength = io.ReadBit2(LengthBits); IsEmpty = io.ReadBoolean(); if (!IsEmpty) { WarTable = new WarTable().Read(io); } if (_isfirst) { ProgressTime = SStructure.ProjectVersion < 0x1A ? io.ReadInt32().ToUnixTime() : ((int)io.ReadInt64()).ToUnixTime(); } return(this); }
public bool Write(DAIIO io, bool skiplength = false) { try { if (!skiplength) { io.WriteBits(Length, LengthBits); } io.WriteBoolean(IsEmpty); if (!IsEmpty) { if (WarTable == null) { WarTable = new WarTable(); } WarTable.Write(io); } if (_isfirst) { if (SStructure.ProjectVersion < 0x1A) { io.WriteInt32(ProgressTime.ToUnixSecondsNoAdd()); } else { io.WriteInt64(ProgressTime.ToUnixSecondsNoAdd()); } } return(true); } catch (Exception) { return(false); } }