public void Unpack(BinaryReader reader) { BaseQualities.Unpack(reader); Flags = reader.ReadUInt32(); HasHealth = reader.ReadBool32(); if ((Flags & 0x00000001) != 0) { AttribCache.Unpack(reader); } if ((Flags & 0x00000002) != 0) { SkillTable.Unpack(reader); } if ((Flags & 0x00000004) != 0) { Body.Unpack(reader); } if ((Flags & 0x00000100) != 0) { SpellBook.Unpack(reader); } if ((Flags & 0x00000200) != 0) { EnchantmentRegistry.Unpack(reader); } if ((Flags & 0x00000008) != 0) { Filter.Unpack(reader); } if ((Flags & 0x00000010) != 0) { Table.Unpack(reader); } if ((Flags & 0x00000020) != 0) { CreationProfile.Unpack(reader); } if ((Flags & 0x00000040) != 0) { PageDataList.Unpack(reader); } if ((Flags & 0x00000080) != 0) { GeneratorTable.Unpack(reader); } if ((Flags & 0x00000400) != 0) { GeneratorRegistry.Unpack(reader); } if ((Flags & 0x00000800) != 0) { GeneratorQueue.Unpack(reader); } }
public void Pack(BinaryWriter writer) { BaseQualities.Pack(writer); writer.Write(Flags); writer.WriteBool32(HasHealth); if ((Flags & 0x00000001) != 0) { AttribCache.Pack(writer); } if ((Flags & 0x00000002) != 0) { SkillTable.Pack(writer); } if ((Flags & 0x00000004) != 0) { Body.Pack(writer); } if ((Flags & 0x00000100) != 0) { SpellBook.Pack(writer); } if ((Flags & 0x00000200) != 0) { EnchantmentRegistry.Pack(writer); } if ((Flags & 0x00000008) != 0) { Filter.Pack(writer); } if ((Flags & 0x00000010) != 0) { Table.Pack(writer); } if ((Flags & 0x00000020) != 0) { CreationProfile.Pack(writer); } if ((Flags & 0x00000040) != 0) { PageDataList.Pack(writer); } if ((Flags & 0x00000080) != 0) { GeneratorTable.Pack(writer); } if ((Flags & 0x00000400) != 0) { GeneratorRegistry.Pack(writer); } if ((Flags & 0x00000800) != 0) { GeneratorQueue.Pack(writer); } }
/// <summary> /// Copies this entity's properties to another entity. /// </summary> /// <param name="entityAnimate">The entity to copy to.</param> /// <remarks>Doesn't copy IDs or cache type.</remarks> public virtual void CopyTo(EntityAnimate entityAnimate) { if (entityAnimate == null) { return; } base.CopyTo(entityAnimate); BaseMaxPools.CopyTo(entityAnimate.BaseMaxPools); BaseAttributes.CopyTo(entityAnimate.BaseAttributes); BaseQualities.CopyTo(entityAnimate.BaseQualities); Currency.CopyTo(entityAnimate.Currency); }