public BOBSmallEntry( GenericReader reader ) { int version = reader.ReadEncodedInt(); switch ( version ) { case 0: { string type = reader.ReadString(); if ( type != null ) m_ItemType = ScriptCompiler.FindTypeByFullName( type ); m_RequireExceptional = reader.ReadBool(); m_DeedType = (BODType)reader.ReadEncodedInt(); m_Material = (BulkMaterialType)reader.ReadEncodedInt(); m_AmountCur = reader.ReadEncodedInt(); m_AmountMax = reader.ReadEncodedInt(); m_Number = reader.ReadEncodedInt(); m_Graphic = reader.ReadEncodedInt(); m_Price = reader.ReadEncodedInt(); break; } } }
public VendorInventory(BaseHouse house, GenericReader reader) { this.m_House = house; int version = reader.ReadEncodedInt(); this.m_Owner = reader.ReadMobile(); this.m_VendorName = reader.ReadString(); this.m_ShopName = reader.ReadString(); this.m_Items = reader.ReadStrongItemList(); this.m_Gold = reader.ReadInt(); this.m_ExpireTime = reader.ReadDeltaTime(); if (this.m_Items.Count == 0 && this.m_Gold == 0) { Timer.DelayCall(TimeSpan.Zero, new TimerCallback(Delete)); } else { TimeSpan delay = this.m_ExpireTime - DateTime.Now; this.m_ExpireTimer = new ExpireTimer(this, delay > TimeSpan.Zero ? delay : TimeSpan.Zero); this.m_ExpireTimer.Start(); } }
public override void Deserialize(GenericReader reader) { base.Deserialize( reader ); int version = reader.ReadInt(); switch ( version ) { case 0: { PersistedType type; while ( (type = (PersistedType)reader.ReadEncodedInt()) != PersistedType.Terminator ) { switch ( type ) { case PersistedType.Faction: new FactionState( reader ); break; case PersistedType.Town: new TownState( reader ); break; } } break; } } }
public override void Deserialize( GenericReader reader ) { base.Deserialize( reader ); int version = reader.ReadEncodedInt(); switch ( version ) { case 1: { m_Music = (MusicName) reader.ReadInt(); break; } } if ( version == 0 ) // Music wasn't serialized in version 0, pick a new track of random rarity { DawnsMusicRarity rarity; double rand = Utility.RandomDouble(); if ( rand < 0.025 ) rarity = DawnsMusicRarity.Rare; else if ( rand < 0.225 ) rarity = DawnsMusicRarity.Uncommon; else rarity = DawnsMusicRarity.Common; m_Music = DawnsMusicBox.RandomTrack( rarity ); } }
public PlayerState(GenericReader reader, Faction faction, List<PlayerState> owner) { this.m_Faction = faction; this.m_Owner = owner; int version = reader.ReadEncodedInt(); switch ( version ) { case 1: { this.m_IsActive = reader.ReadBool(); this.m_LastHonorTime = reader.ReadDateTime(); goto case 0; } case 0: { this.m_Mobile = reader.ReadMobile(); this.m_KillPoints = reader.ReadEncodedInt(); this.m_MerchantTitle = (MerchantTitle)reader.ReadEncodedInt(); this.m_Leaving = reader.ReadDateTime(); break; } } this.Attach(); }
public Preferences(GenericReader reader) { int version = reader.ReadEncodedInt(); switch ( version ) { case 0: { int count = reader.ReadEncodedInt(); this.m_Table = new Hashtable(count); this.m_Entries = new ArrayList(count); for (int i = 0; i < count; ++i) { PreferencesEntry entry = new PreferencesEntry(reader, this, version); if (entry.Mobile != null) { this.m_Table[entry.Mobile] = entry; this.m_Entries.Add(entry); } } break; } } }
public BOBLargeEntry( GenericReader reader ) { int version = reader.ReadEncodedInt(); switch ( version ) { case 0: { m_RequireExceptional = reader.ReadBool(); m_DeedType = (BODType)reader.ReadEncodedInt(); m_Material = (BulkMaterialType)reader.ReadEncodedInt(); m_AmountMax = reader.ReadEncodedInt(); m_Price = reader.ReadEncodedInt(); m_Entries = new BOBLargeSubEntry[reader.ReadEncodedInt()]; for ( int i = 0; i < m_Entries.Length; ++i ) m_Entries[i] = new BOBLargeSubEntry( reader ); break; } } }
public Orders( BaseFactionGuard guard, GenericReader reader ) { m_Guard = guard; int version = reader.ReadEncodedInt(); switch ( version ) { case 1: { m_Follow = reader.ReadMobile(); goto case 0; } case 0: { int count = reader.ReadEncodedInt(); m_Reactions = new ArrayList( count ); for ( int i = 0; i < count; ++i ) m_Reactions.Add( new Reaction( reader ) ); m_Movement = (MovementType)reader.ReadEncodedInt(); break; } } }
public static Type ReadType(Type[] referenceTable, GenericReader reader) { int encoding = reader.ReadEncodedInt(); switch ( encoding ) { default: case 0x00: // null { return null; } case 0x01: // indexed { int index = reader.ReadEncodedInt(); if (index >= 0 && index < referenceTable.Length) return referenceTable[index]; return null; } case 0x02: // by name { string fullName = reader.ReadString(); if (fullName == null) return null; return ScriptCompiler.FindTypeByFullName(fullName, false); } } }
public Election(GenericReader reader) { int version = reader.ReadEncodedInt(); switch ( version ) { case 0: { this.m_Faction = Faction.ReadReference(reader); this.m_LastStateTime = reader.ReadDateTime(); this.m_State = (ElectionState)reader.ReadEncodedInt(); this.m_Candidates = new List<Candidate>(); int count = reader.ReadEncodedInt(); for (int i = 0; i < count; ++i) { Candidate cd = new Candidate(reader); if (cd.Mobile != null) this.m_Candidates.Add(cd); } break; } } this.StartTimer(); }
public override void Deserialize(GenericReader reader) { base.Deserialize( reader ); int version = reader.ReadEncodedInt(); m_Level = (SecureLevel) reader.ReadEncodedInt(); }
public PowerScrollFilter(GenericReader reader) { int version = reader.ReadEncodedInt(); switch (version) { case 1: m_SkillCat = (SkillCategory)reader.ReadEncodedInt(); m_SkillValue = reader.ReadEncodedInt(); break; } }
public PowerScrollBookEntry(GenericReader reader) { int version = reader.ReadEncodedInt(); switch (version) { case 0: m_Skill = (SkillName)reader.ReadEncodedInt(); m_SkillValue = reader.ReadEncodedInt(); m_Price = reader.ReadEncodedInt(); break; } }
public TamingBOBFilter( GenericReader reader ) { int version = reader.ReadEncodedInt(); switch ( version ) { case 1: { m_Type = reader.ReadEncodedInt(); m_Quantity = reader.ReadEncodedInt(); break; } } }
public TalismanAttribute(GenericReader reader) { int version = reader.ReadInt(); SaveFlag flags = (SaveFlag)reader.ReadEncodedInt(); if (GetSaveFlag(flags, SaveFlag.Type)) this.m_Type = ScriptCompiler.FindTypeByFullName(reader.ReadString(), false); if (GetSaveFlag(flags, SaveFlag.Name)) this.m_Name = TextDefinition.Deserialize(reader); if (GetSaveFlag(flags, SaveFlag.Amount)) this.m_Amount = reader.ReadEncodedInt(); }
public Reaction( GenericReader reader ) { int version = reader.ReadEncodedInt(); switch ( version ) { case 0: { m_Faction = Faction.ReadReference( reader ); m_Type = (ReactionType) reader.ReadEncodedInt(); break; } } }
public static QuestConversation DeserializeConversation( Type[] referenceTable, GenericReader reader ) { int encoding = reader.ReadEncodedInt(); switch ( encoding ) { default: case 0x00: // null { return null; } case 0x01: { Type type = ReadType( referenceTable, reader ); QuestConversation conv = Construct( type ) as QuestConversation; if ( conv != null ) { conv.BaseDeserialize( reader ); } return conv; } } }
public override void Deserialize(GenericReader reader) // Default Deserialize method { base.Deserialize(reader); int version = reader.ReadInt(); m_Guild = reader.ReadEncodedInt(); }
public EthicsItem( GenericReader reader, Ethic ethic ) { int version = reader.ReadEncodedInt(); switch ( version ) { case 2: { m_IsRunic = reader.ReadBool(); m_OrigHue = reader.ReadInt(); goto case 0; } case 1: { /*m_OrigLootType = (LootType)*/reader.ReadByte(); m_OrigHue = reader.ReadInt(); goto case 0; } case 0: { m_Item = reader.ReadItem(); m_Expiration = reader.ReadDateTime(); break; } } m_Ethic = ethic; }
public override void Deserialize( GenericReader reader ) { base.Deserialize( reader ); /*int version = */ reader.ReadEncodedInt(); }
public override void Deserialize( GenericReader reader ) { base.Deserialize( reader ); LootType = LootType.Blessed; int version = reader.ReadEncodedInt(); }
public VendorInventory(BaseHouse house, GenericReader reader) { House = house; reader.ReadEncodedInt(); Owner = reader.ReadMobile(); VendorName = reader.ReadString(); ShopName = reader.ReadString(); Items = reader.ReadStrongItemList(); Currency = reader.ReadInt(); ExpireTime = reader.ReadDeltaTime(); if (Items.Count == 0 && Currency == 0) { Timer.DelayCall(TimeSpan.Zero, Delete); } else { TimeSpan delay = ExpireTime - DateTime.UtcNow; m_ExpireTimer = new ExpireTimer(this, delay > TimeSpan.Zero ? delay : TimeSpan.Zero); m_ExpireTimer.Start(); } }
public static QuestObjective DeserializeObjective( Type[] referenceTable, GenericReader reader ) { int encoding = reader.ReadEncodedInt(); switch ( encoding ) { default: case 0x00: // null { return null; } case 0x01: { Type type = ReadType( referenceTable, reader ); QuestObjective obj = Construct( type ) as QuestObjective; if ( obj != null ) { obj.BaseDeserialize( reader ); } return obj; } } }
public override void Deserialize( GenericReader reader ) { base.Deserialize( reader ); int version = reader.ReadEncodedInt(); m_ForumAccount = reader.ReadString(); }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadEncodedInt(); m_Owner = reader.ReadMobile(); }
public override void Deserialize( GenericReader reader ) { base.Deserialize( reader ); int version = reader.ReadEncodedInt(); m_Sound = reader.ReadInt(); }
public static QuestSystem DeserializeQuest( GenericReader reader ) { int encoding = reader.ReadEncodedInt(); switch ( encoding ) { default: case 0x00: // null { return null; } case 0x01: { Type type = ReadType( QuestSystem.QuestTypes, reader ); QuestSystem qs = Construct( type ) as QuestSystem; if ( qs != null ) { qs.BaseDeserialize( reader ); } return qs; } } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); this.m_Image = (ImageType)reader.ReadEncodedInt(); }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadEncodedInt(); m_IsRewardItem = reader.ReadBool(); }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); reader.ReadEncodedInt(); //m_Charge = reader.ReadDouble(); }
public override void ChildDeserialize(GenericReader reader) { /*int version = */ reader.ReadEncodedInt(); m_Step = (KillHordeMinionsStep)reader.ReadEncodedInt(); }
public override void ChildDeserialize(GenericReader reader) { /*int version = */ reader.ReadEncodedInt(); m_Ambushed = reader.ReadBool(); }
public override void ChildDeserialize(GenericReader reader) { /*int version = */ reader.ReadEncodedInt(); m_CorpseWithBone = (Container)reader.ReadItem(); }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadEncodedInt(); }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); switch (version) { case 3: { m_MaxHitPoints = reader.ReadEncodedInt(); m_HitPoints = reader.ReadEncodedInt(); goto case 2; } case 2: { m_Resource = (CraftResource)reader.ReadEncodedInt(); m_GemType = (GemType)reader.ReadEncodedInt(); goto case 1; } case 1: { m_AosAttributes = new AosAttributes(this, reader); m_AosResistances = new AosElementAttributes(this, reader); m_AosSkillBonuses = new AosSkillBonuses(this, reader); if (Core.AOS && Parent is Mobile) { m_AosSkillBonuses.AddTo((Mobile)Parent); } int strBonus = m_AosAttributes.BonusStr; int dexBonus = m_AosAttributes.BonusDex; int intBonus = m_AosAttributes.BonusInt; if (Parent is Mobile && (strBonus != 0 || dexBonus != 0 || intBonus != 0)) { Mobile m = (Mobile)Parent; string modName = Serial.ToString(); if (strBonus != 0) { m.AddStatMod(new StatMod(StatType.Str, modName + "Str", strBonus, TimeSpan.Zero)); } if (dexBonus != 0) { m.AddStatMod(new StatMod(StatType.Dex, modName + "Dex", dexBonus, TimeSpan.Zero)); } if (intBonus != 0) { m.AddStatMod(new StatMod(StatType.Int, modName + "Int", intBonus, TimeSpan.Zero)); } } if (Parent is Mobile) { ((Mobile)Parent).CheckStatTimers(); } break; } case 0: { m_AosAttributes = new AosAttributes(this); m_AosResistances = new AosElementAttributes(this); m_AosSkillBonuses = new AosSkillBonuses(this); break; } } if (version < 2) { m_Resource = CraftResource.Iron; m_GemType = GemType.None; } }
public override void ChildDeserialize(GenericReader reader) { int version = reader.ReadEncodedInt(); m_CursedSoul = reader.ReadBool(); }
public override void ChildDeserialize(GenericReader reader) { int version = reader.ReadEncodedInt(); m_Theater = (Theater)reader.ReadEncodedInt(); }
public override void ChildDeserialize(GenericReader reader) { int version = reader.ReadEncodedInt(); m_KilledCat = reader.ReadBool(); }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); switch (version) { case 9: { SaveFlag flags = (SaveFlag)reader.ReadEncodedInt(); if (GetSaveFlag(flags, SaveFlag.Resource)) { m_Resource = (CraftResource)reader.ReadInt(); } else { m_Resource = DefaultResource; } if (GetSaveFlag(flags, SaveFlag.Attributes)) { m_MagicalAttributes = new MagicalAttributes(this, reader); } else { m_MagicalAttributes = new MagicalAttributes(this); } if (GetSaveFlag(flags, SaveFlag.ClothingAttributes)) { m_ClothingAttributes = new ArmorAttributes(this, reader); } else { m_ClothingAttributes = new ArmorAttributes(this); } if (GetSaveFlag(flags, SaveFlag.SkillBonuses)) { m_SkillBonuses = new SkillBonuses(this, reader); } else { m_SkillBonuses = new SkillBonuses(this); } if (GetSaveFlag(flags, SaveFlag.Resistances)) { m_Resistances = new ElementAttributes(this, reader); } else { m_Resistances = new ElementAttributes(this); } if (GetSaveFlag(flags, SaveFlag.MaxHitPoints)) { m_MaxHitPoints = reader.ReadInt(); } if (GetSaveFlag(flags, SaveFlag.HitPoints)) { m_HitPoints = reader.ReadInt(); } if (GetSaveFlag(flags, SaveFlag.Crafter)) { m_Crafter = reader.ReadMobile(); } if (GetSaveFlag(flags, SaveFlag.Exceptional)) { m_Exceptional = true; } if (GetSaveFlag(flags, SaveFlag.PlayerConstructed)) { m_PlayerConstructed = true; } if (GetSaveFlag(flags, SaveFlag.AbsorptionAttributes)) { m_AbsorptionAttributes = new AbsorptionAttributes(this, reader); } else { m_AbsorptionAttributes = new AbsorptionAttributes(this); } if (GetSaveFlag(flags, SaveFlag.Altered)) { m_Altered = true; } break; } case 8: { m_AbsorptionAttributes = new AbsorptionAttributes(this, reader); m_MaxHitPoints = reader.ReadInt(); m_HitPoints = reader.ReadInt(); m_Resource = (CraftResource)reader.ReadInt(); m_MagicalAttributes = new MagicalAttributes(this, reader); m_ClothingAttributes = new ArmorAttributes(this, reader); m_SkillBonuses = new SkillBonuses(this, reader); m_Resistances = new ElementAttributes(this, reader); break; } } Mobile parent = Parent as Mobile; if (parent != null) { m_SkillBonuses.AddTo(parent); AddStatBonuses(parent); parent.CheckStatTimers(); } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); SaveFlag flags = (SaveFlag)reader.ReadEncodedInt(); if (GetSaveFlag(flags, SaveFlag.Attributes)) { this.m_Attributes = new AosAttributes(this, reader); } else { this.m_Attributes = new AosAttributes(this); } if (GetSaveFlag(flags, SaveFlag.LowerAmmoCost)) { this.m_LowerAmmoCost = reader.ReadInt(); } if (GetSaveFlag(flags, SaveFlag.WeightReduction)) { this.m_WeightReduction = reader.ReadInt(); } if (GetSaveFlag(flags, SaveFlag.DamageIncrease)) { this.m_DamageIncrease = reader.ReadInt(); } if (GetSaveFlag(flags, SaveFlag.Crafter)) { this.m_Crafter = reader.ReadMobile(); } if (GetSaveFlag(flags, SaveFlag.Quality)) { this.m_Quality = (ClothingQuality)reader.ReadInt(); } if (GetSaveFlag(flags, SaveFlag.Capacity)) { this.m_Capacity = reader.ReadInt(); } #region Mondain's Legacy Sets if (GetSaveFlag(flags, SaveFlag.SetAttributes)) { this.m_SetAttributes = new AosAttributes(this, reader); } else { this.m_SetAttributes = new AosAttributes(this); } if (GetSaveFlag(flags, SaveFlag.SetSkillAttributes)) { this.m_SetSkillBonuses = new AosSkillBonuses(this, reader); } else { this.m_SetSkillBonuses = new AosSkillBonuses(this); } if (GetSaveFlag(flags, SaveFlag.SetHue)) { this.m_SetHue = reader.ReadInt(); } if (GetSaveFlag(flags, SaveFlag.LastEquipped)) { this.m_LastEquipped = reader.ReadBool(); } if (GetSaveFlag(flags, SaveFlag.SetEquipped)) { this.m_SetEquipped = reader.ReadBool(); } #endregion }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); switch (version) { case 4: { m_SecureLevel = (SecureLevel)reader.ReadInt(); goto case 3; } case 3: case 2: { BookContent content = this.DefaultContent; SaveFlags flags = (SaveFlags)reader.ReadByte(); if ((flags & SaveFlags.Title) != 0) { m_Title = Utility.Intern(reader.ReadString()); } else if (content != null) { m_Title = content.Title; } if ((flags & SaveFlags.Author) != 0) { m_Author = reader.ReadString(); } else if (content != null) { m_Author = content.Author; } m_Writable = (flags & SaveFlags.Writable) != 0; if ((flags & SaveFlags.Content) != 0) { m_Pages = new BookPageInfo[reader.ReadEncodedInt()]; for (int i = 0; i < m_Pages.Length; ++i) { m_Pages[i] = new BookPageInfo(reader); } } else { if (content != null) { m_Pages = content.Copy(); } else { m_Pages = new BookPageInfo[0]; } } break; } case 1: case 0: { m_Title = reader.ReadString(); m_Author = reader.ReadString(); m_Writable = reader.ReadBool(); if (version == 0 || reader.ReadBool()) { m_Pages = new BookPageInfo[reader.ReadInt()]; for (int i = 0; i < m_Pages.Length; ++i) { m_Pages[i] = new BookPageInfo(reader); } } else { BookContent content = this.DefaultContent; if (content != null) { m_Pages = content.Copy(); } else { m_Pages = new BookPageInfo[0]; } } break; } } if (version < 3 && (Weight == 1 || Weight == 2)) { Weight = -1; } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); switch (version) { case 5: { SaveFlag flags = (SaveFlag)reader.ReadEncodedInt(); if (GetSaveFlag(flags, SaveFlag.Resource)) { m_Resource = (CraftResource)reader.ReadEncodedInt(); } else { m_Resource = DefaultResource; } if (GetSaveFlag(flags, SaveFlag.Attributes)) { m_AosAttributes = new AosAttributes(this, reader); } else { m_AosAttributes = new AosAttributes(this); } if (GetSaveFlag(flags, SaveFlag.ClothingAttributes)) { m_AosClothingAttributes = new AosArmorAttributes(this, reader); } else { m_AosClothingAttributes = new AosArmorAttributes(this); } if (GetSaveFlag(flags, SaveFlag.SkillBonuses)) { m_AosSkillBonuses = new AosSkillBonuses(this, reader); } else { m_AosSkillBonuses = new AosSkillBonuses(this); } if (GetSaveFlag(flags, SaveFlag.Resistances)) { m_AosResistances = new AosElementAttributes(this, reader); } else { m_AosResistances = new AosElementAttributes(this); } if (GetSaveFlag(flags, SaveFlag.MaxHitPoints)) { m_MaxHitPoints = reader.ReadEncodedInt(); } if (GetSaveFlag(flags, SaveFlag.HitPoints)) { m_HitPoints = reader.ReadEncodedInt(); } if (GetSaveFlag(flags, SaveFlag.Crafter)) { m_Crafter = reader.ReadMobile(); } if (GetSaveFlag(flags, SaveFlag.Quality)) { m_Quality = (ClothingQuality)reader.ReadEncodedInt(); } else { m_Quality = ClothingQuality.Regular; } if (GetSaveFlag(flags, SaveFlag.StrReq)) { m_StrReq = reader.ReadEncodedInt(); } else { m_StrReq = -1; } if (GetSaveFlag(flags, SaveFlag.PlayerConstructed)) { m_PlayerConstructed = true; } break; } case 4: { m_Resource = (CraftResource)reader.ReadInt(); goto case 3; } case 3: { m_AosAttributes = new AosAttributes(this, reader); m_AosClothingAttributes = new AosArmorAttributes(this, reader); m_AosSkillBonuses = new AosSkillBonuses(this, reader); m_AosResistances = new AosElementAttributes(this, reader); goto case 2; } case 2: { m_PlayerConstructed = reader.ReadBool(); goto case 1; } case 1: { m_Crafter = reader.ReadMobile(); m_Quality = (ClothingQuality)reader.ReadInt(); break; } case 0: { m_Crafter = null; m_Quality = ClothingQuality.Regular; break; } } if (version < 2) { m_PlayerConstructed = true; // we don't know, so, assume it's crafted } if (version < 3) { m_AosAttributes = new AosAttributes(this); m_AosClothingAttributes = new AosArmorAttributes(this); m_AosSkillBonuses = new AosSkillBonuses(this); m_AosResistances = new AosElementAttributes(this); } if (version < 4) { m_Resource = DefaultResource; } if (m_MaxHitPoints == 0 && m_HitPoints == 0) { m_HitPoints = m_MaxHitPoints = Utility.RandomMinMax(InitMinHits, InitMaxHits); } Mobile parent = Parent as Mobile; if (parent != null) { if (Core.AOS) { m_AosSkillBonuses.AddTo(parent); } AddStatBonuses(parent); parent.CheckStatTimers(); } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); switch (version) { case 12: case 11: { m_SetPhysicalBonus = reader.ReadInt(); m_SetFireBonus = reader.ReadInt(); m_SetColdBonus = reader.ReadInt(); m_SetPoisonBonus = reader.ReadInt(); m_SetEnergyBonus = reader.ReadInt(); goto case 10; } case 10: { m_PlayerConstructed = reader.ReadBool(); goto case 9; } case 9: { m_TalismanProtection = new TalismanAttribute(reader); goto case 8; } case 8: { if (version == 11) { reader.ReadBool(); } _Owner = reader.ReadMobile(); _OwnerName = reader.ReadString(); goto case 7; } case 7: { m_IsImbued = reader.ReadBool(); goto case 6; } case 6: { m_NegativeAttributes = new NegativeAttributes(this, reader); goto case 5; } case 5: { #region Runic Reforging m_ReforgedPrefix = (ReforgedPrefix)reader.ReadInt(); m_ReforgedSuffix = (ReforgedSuffix)reader.ReadInt(); m_ItemPower = (ItemPower)reader.ReadInt(); if (version < 12 && reader.ReadBool()) { m_NegativeAttributes.NoRepair = 1; } #endregion #region Stygian Abyss m_GorgonLenseCharges = reader.ReadInt(); m_GorgonLenseType = (LenseType)reader.ReadInt(); #endregion goto case 4; } case 4: { #region Stygian Abyss m_TimesImbued = reader.ReadEncodedInt(); m_SAAbsorptionAttributes = new SAAbsorptionAttributes(this, reader); #endregion m_BlessedBy = reader.ReadMobile(); m_LastEquipped = reader.ReadBool(); m_SetEquipped = reader.ReadBool(); m_SetHue = reader.ReadEncodedInt(); m_SetAttributes = new AosAttributes(this, reader); m_SetSkillBonuses = new AosSkillBonuses(this, reader); m_Crafter = reader.ReadMobile(); m_Quality = (ItemQuality)reader.ReadInt(); goto case 3; } case 3: { m_MaxHitPoints = reader.ReadEncodedInt(); m_HitPoints = reader.ReadEncodedInt(); goto case 2; } case 2: { m_Resource = (CraftResource)reader.ReadEncodedInt(); m_GemType = (GemType)reader.ReadEncodedInt(); goto case 1; } case 1: { m_AosAttributes = new AosAttributes(this, reader); m_AosResistances = new AosElementAttributes(this, reader); m_AosSkillBonuses = new AosSkillBonuses(this, reader); if (Core.AOS && Parent is Mobile) { m_AosSkillBonuses.AddTo((Mobile)Parent); } int strBonus = m_AosAttributes.BonusStr; int dexBonus = m_AosAttributes.BonusDex; int intBonus = m_AosAttributes.BonusInt; if (Parent is Mobile && (strBonus != 0 || dexBonus != 0 || intBonus != 0)) { Mobile m = (Mobile)Parent; string modName = Serial.ToString(); if (strBonus != 0) { m.AddStatMod(new StatMod(StatType.Str, modName + "Str", strBonus, TimeSpan.Zero)); } if (dexBonus != 0) { m.AddStatMod(new StatMod(StatType.Dex, modName + "Dex", dexBonus, TimeSpan.Zero)); } if (intBonus != 0) { m.AddStatMod(new StatMod(StatType.Int, modName + "Int", intBonus, TimeSpan.Zero)); } } if (Parent is Mobile) { ((Mobile)Parent).CheckStatTimers(); } break; } case 0: { m_AosAttributes = new AosAttributes(this); m_AosResistances = new AosElementAttributes(this); m_AosSkillBonuses = new AosSkillBonuses(this); break; } } if (m_NegativeAttributes == null) { m_NegativeAttributes = new NegativeAttributes(this); } if (m_TalismanProtection == null) { m_TalismanProtection = new TalismanAttribute(); } #region Mondain's Legacy Sets if (m_SetAttributes == null) { m_SetAttributes = new AosAttributes(this); } if (m_SetSkillBonuses == null) { m_SetSkillBonuses = new AosSkillBonuses(this); } #endregion if (version < 2) { m_Resource = CraftResource.Iron; m_GemType = GemType.None; } }
public override void ChildDeserialize(GenericReader reader) { int version = reader.ReadEncodedInt(); this.m_HasLeftTheMansion = reader.ReadBool(); }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); switch (version) { case 0: { SaveFlag flags = (SaveFlag)reader.ReadEncodedInt(); if (GetSaveFlag(flags, SaveFlag.Attributes)) { this.m_AosAttributes = new AosAttributes(this, reader); } else { this.m_AosAttributes = new AosAttributes(this); } if (GetSaveFlag(flags, SaveFlag.SkillBonuses)) { this.m_AosSkillBonuses = new AosSkillBonuses(this, reader); } else { this.m_AosSkillBonuses = new AosSkillBonuses(this); } // Backward compatibility if (GetSaveFlag(flags, SaveFlag.Owner)) { this.BlessedFor = reader.ReadMobile(); } if (GetSaveFlag(flags, SaveFlag.Protection)) { this.m_Protection = new TalismanAttribute(reader); } else { this.m_Protection = new TalismanAttribute(); } if (GetSaveFlag(flags, SaveFlag.Killer)) { this.m_Killer = new TalismanAttribute(reader); } else { this.m_Killer = new TalismanAttribute(); } if (GetSaveFlag(flags, SaveFlag.Summoner)) { this.m_Summoner = new TalismanAttribute(reader); } else { this.m_Summoner = new TalismanAttribute(); } if (GetSaveFlag(flags, SaveFlag.Removal)) { this.m_Removal = (TalismanRemoval)reader.ReadEncodedInt(); } if (GetSaveFlag(flags, SaveFlag.OldKarmaLoss)) { this.m_AosAttributes.IncreasedKarmaLoss = reader.ReadEncodedInt(); } if (GetSaveFlag(flags, SaveFlag.Skill)) { this.m_Skill = (SkillName)reader.ReadEncodedInt(); } if (GetSaveFlag(flags, SaveFlag.SuccessBonus)) { this.m_SuccessBonus = reader.ReadEncodedInt(); } if (GetSaveFlag(flags, SaveFlag.ExceptionalBonus)) { this.m_ExceptionalBonus = reader.ReadEncodedInt(); } if (GetSaveFlag(flags, SaveFlag.MaxCharges)) { this.m_MaxCharges = reader.ReadEncodedInt(); } if (GetSaveFlag(flags, SaveFlag.Charges)) { this.m_Charges = reader.ReadEncodedInt(); } if (GetSaveFlag(flags, SaveFlag.MaxChargeTime)) { this.m_MaxChargeTime = reader.ReadEncodedInt(); } if (GetSaveFlag(flags, SaveFlag.ChargeTime)) { this.m_ChargeTime = reader.ReadEncodedInt(); } if (GetSaveFlag(flags, SaveFlag.Slayer)) { this.m_Slayer = (TalismanSlayerName)reader.ReadEncodedInt(); } this.m_Blessed = GetSaveFlag(flags, SaveFlag.Blessed); break; } } if (this.Parent is Mobile) { Mobile m = (Mobile)this.Parent; this.m_AosAttributes.AddStatBonuses(m); this.m_AosSkillBonuses.AddTo(m); if (this.m_ChargeTime > 0) { this.StartTimer(); } } }
public virtual void ChildDeserialize(GenericReader reader) { _ = reader.ReadEncodedInt(); }
public override void ChildDeserialize(GenericReader reader) { int version = reader.ReadEncodedInt(); m_ImpLocation = reader.ReadPoint3D(); }
public override void Deserialize( GenericReader reader ) { base.Deserialize( reader ); int version = reader.ReadInt(); switch ( version ) { case 0: { m_EffectDelay = reader.ReadTimeSpan(); m_TriggerDelay = reader.ReadTimeSpan(); m_SoundDelay = reader.ReadTimeSpan(); m_Source = ReadEntity( reader ); m_Target = ReadEntity( reader ); m_Trigger = reader.ReadItem() as EffectController; m_FixedDirection = reader.ReadBool(); m_Explodes = reader.ReadBool(); m_PlaySoundAtTrigger = reader.ReadBool(); m_EffectType = (ECEffectType)reader.ReadEncodedInt(); m_EffectLayer = (EffectLayer)reader.ReadEncodedInt(); m_TriggerType = (EffectTriggerType)reader.ReadEncodedInt(); m_ItemID = reader.ReadEncodedInt(); m_Hue = reader.ReadEncodedInt(); m_RenderMode = reader.ReadEncodedInt(); m_Speed = reader.ReadEncodedInt(); m_Duration = reader.ReadEncodedInt(); m_ParticleEffect = reader.ReadEncodedInt(); m_ExplodeParticleEffect = reader.ReadEncodedInt(); m_ExplodeSound = reader.ReadEncodedInt(); m_Unknown = reader.ReadEncodedInt(); m_SoundID = reader.ReadEncodedInt(); m_TriggerRange = reader.ReadEncodedInt(); break; } } }
public override void ChildDeserialize(GenericReader reader) { int version = reader.ReadEncodedInt(); m_StolenTreasure = reader.ReadBool(); }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); switch (version) { case 5: m_ArrowType = (ArrowType)reader.ReadEncodedInt(); goto case 4; case 4: case 3: { if (version == 3 && reader.ReadBool()) { Attributes.BalancedWeapon = 1; } m_Velocity = reader.ReadInt(); goto case 2; } case 2: case 1: { break; } case 0: { /*m_EffectID =*/ reader.ReadInt(); break; } } if (version < 2) { WeaponAttributes.MageWeapon = 0; WeaponAttributes.UseBestSkill = 0; } if (ArrowSelection == ArrowType.Normal) { if (AmmoType == typeof(Bolt)) { SpecialAmmoType = typeof(Bolt); } else { SpecialAmmoType = typeof(Arrow); } } if (ArrowSelection == ArrowType.Poison) { if (AmmoType == typeof(Bolt)) { SpecialAmmoType = typeof(PoisonBolt); } else { SpecialAmmoType = typeof(PoisonArrow); } } else if (ArrowSelection == ArrowType.Explosive) { if (AmmoType == typeof(Bolt)) { SpecialAmmoType = typeof(ExplosiveBolt); } else { SpecialAmmoType = typeof(ExplosiveArrow); } } else if (ArrowSelection == ArrowType.ArmorPiercing) { if (AmmoType == typeof(Bolt)) { SpecialAmmoType = typeof(ArmorPiercingBolt); } else { SpecialAmmoType = typeof(ArmorPiercingArrow); } } else if (ArrowSelection == ArrowType.Freeze) { if (AmmoType == typeof(Bolt)) { SpecialAmmoType = typeof(FreezeBolt); } else { SpecialAmmoType = typeof(FreezeArrow); } } else if (ArrowSelection == ArrowType.Lightning) { if (AmmoType == typeof(Bolt)) { SpecialAmmoType = typeof(LightningBolt); } else { SpecialAmmoType = typeof(LightningArrowAmmo); } } }
public override void ChildDeserialize(GenericReader reader) { int version = reader.ReadEncodedInt(); m_FromUzeraan = reader.ReadBool(); }
public override void ChildDeserialize(GenericReader reader) { int version = reader.ReadEncodedInt(); m_MaxProgress = reader.ReadInt(); }