public Enhancement Read() { var enhancement = new Enhancement(); enhancement.Index = _reader.ReadInt32(); enhancement.Name = _reader.ReadString(); enhancement.ShortName = _reader.ReadString(); enhancement.Description = _reader.ReadString(); enhancement.TypeId = _reader.ReadInt32(); enhancement.SubTypeId = _reader.ReadInt32(); enhancement.ClassIds = new int[_reader.ReadInt32() + 1]; for (var index = 0; index < enhancement.ClassIds.Length; index++) { enhancement.ClassIds[index] = _reader.ReadInt32(); } enhancement.Image = _reader.ReadString(); enhancement.EnhancementSetId = _reader.ReadInt32(); enhancement.EnhancementSetName = _reader.ReadString(); enhancement.EffectChance = _reader.ReadSingle(); enhancement.LevelMin = _reader.ReadInt32(); enhancement.LevelMax = _reader.ReadInt32(); enhancement.Unique = _reader.ReadBoolean(); enhancement.MutuallyExclusiveId = _reader.ReadInt32(); enhancement.BuffMode = _reader.ReadInt32(); enhancement.Effects = new EnhancementEffect[_reader.ReadInt32() + 1]; for (var index = 0; index < enhancement.Effects.Length; index++) { enhancement.Effects[index] = _enhancementEffectReader.Read(); } enhancement.UniqueIdentifier = _reader.ReadString(); enhancement.Recipe = _reader.ReadString(); enhancement.Superior = _reader.ReadBoolean(); return(enhancement); }
public void Write(Enhancement enhancement) { _writer.Write(enhancement.Index); _writer.Write(enhancement.Name); _writer.Write(enhancement.ShortName); _writer.Write(enhancement.Description); _writer.Write(enhancement.TypeId); _writer.Write(enhancement.SubTypeId); _writer.Write(enhancement.ClassIds.Length - 1); for (int index = 0; index < enhancement.ClassIds.Length; ++index) { _writer.Write(enhancement.ClassIds[index]); } _writer.Write(enhancement.Image); _writer.Write(enhancement.EnhancementSetId); _writer.Write(enhancement.EnhancementSetName); _writer.Write(enhancement.EffectChance); _writer.Write(enhancement.LevelMin); _writer.Write(enhancement.LevelMax); _writer.Write(enhancement.Unique); _writer.Write(enhancement.MutuallyExclusiveId); _writer.Write(enhancement.BuffMode); _writer.Write(enhancement.Effects.Length - 1); for (int index = 0; index < enhancement.Effects.Length; ++index) { _enhancementEffectWriter.Write(enhancement.Effects[index]); } _writer.Write(enhancement.UniqueIdentifier); _writer.Write(enhancement.Recipe); _writer.Write(enhancement.Superior); }