public void Write(OutBlob stream) { stream.WriteBits(11, _pid + 1); // id stream.WriteBits(1, _needsUpdate ? 1 : 0); // needs update? stream.WriteBits(1, 1); // todo : setpos flag stream.WriteBits(5, _ydelta); // ydelta stream.WriteBits(5, _xdelta); // xdelta }
public void Write(OutBlob stream) { stream.WriteBits(1, 1); // continue reading? stream.WriteBits(2, 1); // type stream.WriteBits(3, (byte)_dir); stream.WriteBits(1, _needsUpdate ? 1 : 0); // add to needs updating list }
private static void WriteInitSegmentsEndMarkerIfNeeded( OutBlob stream, IList <IUpdateSegment> flagSegments, int numIdBits, int maxIdValue) { if (flagSegments.Any()) { stream.WriteBits(numIdBits, maxIdValue); } }
private static void WriteSyncSegments(OutBlob stream, IEnumerable <IUpdateSegment> syncSegments) { // avoid double enumeration if the syncSegments IEnumerable var enumeratedSyncSegments = syncSegments as IList <IUpdateSegment> ?? syncSegments.ToList(); stream.WriteBits(8, enumeratedSyncSegments.Count); foreach (var segment in enumeratedSyncSegments) { segment.Write(stream); } }
public void Write(OutBlob stream) { stream.WriteBits(1, 1); // continue reading? stream.WriteBits(2, 3); // type stream.WriteBits(2, _local.Z); // plane stream.WriteBits(1, 1); // todo : setpos flag stream.WriteBits(1, _needsUpdate ? 1 : 0); // add to needs updating list stream.WriteBits(7, _local.Y); // local y stream.WriteBits(7, _local.X); // local x }
public void Write(OutBlob stream) { stream.WriteBits(14, _npcInstanceId); stream.WriteBits(5, _yDelta); stream.WriteBits(5, _xDelta); stream.WriteBits(1, 1); // setpos?? flag // todo : setpos flag stream.WriteBits(12, _definitionId); stream.WriteBits(1, _needsUpdate ? 1 : 0); }
public void Write(OutBlob stream) { stream.WriteBits(1, 1); // is not noop? stream.WriteBits(2, 3); // type }
public void Write(OutBlob stream) { stream.WriteBits(1, 1); // continue reading? stream.WriteBits(2, 0); // type }