public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); switch (version) { case 1: { TimeSpan duration = reader.ReadTimeSpan(); m_Timer = new InternalTimer(this, duration); m_Timer.Start(); m_End = DateTime.Now + duration; break; } case 0: { TimeSpan duration = TimeSpan.FromSeconds(10.0); m_Timer = new InternalTimer(this, duration); m_Timer.Start(); m_End = DateTime.Now + duration; break; } } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); switch (version) { case 1: { reader.ReadItemList(); goto case 0; } case 0: { reader.ReadBool(); reader.ReadItemList(); reader.ReadItemList(); reader.ReadItemList(); reader.ReadItemList(); reader.ReadItemList(); reader.ReadTimeSpan(); reader.ReadInt(); break; } } DeleteAll(); Delete(); }
public EnchantContext( GenericReader reader, BaseWeapon weapon ) { m_Owner = reader.ReadMobile(); m_Attribute = (WeaponAttribute) reader.ReadInt(); m_SpellChanneling = reader.ReadBool(); m_Timer = Timer.DelayCall( reader.ReadTimeSpan(), new TimerStateCallback<BaseWeapon>( EnchantSpell.RemoveEnchantContext ), weapon ); weapon.EnchantContext = this; }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.GetVersion(); switch (version) { case 0: AccountAge = reader.ReadTimeSpan(); break; } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); b_switchon = reader.ReadBool(); t_autotime = reader.ReadTimeSpan(); t_RestartTime = reader.ReadDateTime(); if (b_switchon) { I_Auto_Restarter tmr = new I_Auto_Restarter(this); tmr.Start(); } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); /*int version = */ reader.ReadInt(); m_LifeSpan = reader.ReadTimeSpan(); m_CreationTime = reader.ReadDateTime(); if (m_LifeSpan != TimeSpan.Zero) { m_Timer = Timer.DelayCall(TimeSpan.FromSeconds(5), TimeSpan.FromSeconds(5), new TimerCallback(CheckExpiry)); } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); switch (version) { case 1: { m_Deed = reader.ReadItem <HouseRaffleDeed>(); goto case 0; } case 0: { m_Active = reader.ReadBool(); m_Bounds = reader.ReadRect2D(); m_Facet = reader.ReadMap(); m_Winner = reader.ReadMobile(); m_TicketPrice = reader.ReadInt(); m_Started = reader.ReadDateTime(); m_Duration = reader.ReadTimeSpan(); int entryCount = reader.ReadInt(); m_Entries = new List <RaffleEntry>(entryCount); for (int i = 0; i < entryCount; i++) { RaffleEntry entry = new RaffleEntry(reader, version); if (entry.From == null) { continue; // Character was deleted } m_Entries.Add(entry); } InvalidateRegion(); m_AllStones.Add(this); break; } } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); if (version >= 0) { m_SpawnRange = reader.ReadInt(); m_NextSpawnDelay = reader.ReadTimeSpan(); } m_NextSpawn = DateTime.Now; }
public DuelInfo(GenericReader reader) { int version = reader.ReadEncodedInt(); switch (version) { case 0: { m_DuelTime = reader.ReadTimeSpan(); m_AgainstList = reader.ReadStrongMobileList(); break; } } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); switch (version) { case 1: Range = reader.ReadInt(); goto case 0; case 0: // version 0 Message = reader.ReadString(); ActivationWord = reader.ReadString(); Charges = reader.ReadInt(); Refractory = reader.ReadTimeSpan(); TimeSpan remaining = reader.ReadTimeSpan(); m_EndTime = DateTime.UtcNow + remaining; break; } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); // version 0 m_Word = reader.ReadString(); m_Skill = (SkillName)reader.ReadInt(); m_Value = reader.ReadInt(); m_Duration = reader.ReadTimeSpan(); m_RequireIdentification = reader.ReadBool(); m_Identified = reader.ReadBool(); }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); var v = reader.GetVersion(); if (v > 0) { MatchSuddenDeath = reader.ReadDouble(); } else { MatchSuddenDeath = 0.25; } MatchDelay = reader.ReadTimeSpan(); MatchDuration = reader.ReadTimeSpan(); FinalBestOfCur = reader.ReadInt(); FinalBestOfMax = reader.ReadInt(); Matches = reader.ReadBlockList(r => new TournamentMatch(r), Matches); }
// this is called from the engine's deserialize to create a new set of // levels based upon the serialized data public ChampLevelData(GenericReader reader) { int version = reader.ReadInt(); switch (version) { case 2: { m_Flags = (SpawnFlags)reader.ReadInt(); goto case 0; // skip case 1 } case 1: { bool unused = reader.ReadBool(); goto case 0; } case 0: { // read in a seriliased level ! Monsters = new string[reader.ReadInt()]; for (int i = 0; i < Monsters.Length; ++i) { Monsters[i] = reader.ReadString(); } m_MaxKills = reader.ReadInt(); m_MaxMobs = reader.ReadInt(); m_MaxSpawn = reader.ReadInt(); m_MaxRange = reader.ReadInt(); m_SpawnDelay = reader.ReadTimeSpan(); m_ExpireDelay = reader.ReadTimeSpan(); break; } } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); switch (version) { case 2: { m_TerMurSpawn = reader.ReadItemList(); goto case 1; } case 1: { m_MalasSpawn = reader.ReadItemList(); //m_TerMurSpawn = reader.ReadItemList(); goto case 0; } case 0: { m_Active = reader.ReadBool(); m_AllSpawn = reader.ReadItemList(); m_DungeonsSpawn = reader.ReadItemList(); m_LostLandsSpawn = reader.ReadItemList(); m_IlshenarSpawn = reader.ReadItemList(); m_TokunoSpawn = reader.ReadItemList(); m_RandomizeDelay = reader.ReadTimeSpan(); m_ActiveAltars = reader.ReadInt(); //m_SpawnRange = 24; m_ExpireDelay = TimeSpan.FromMinutes(10.0); m_RestartDelay = TimeSpan.FromMinutes(15.0); if (m_Active) { m_Timer = new RandomizeTimer(this, m_RandomizeDelay); m_Timer.Start(); } break; } } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); switch (version) { case 3: { Level = (SecureLevel)reader.ReadInt(); goto case 2; } case 2: { _PlayerConstructed = reader.ReadBool(); goto case 1; } case 1: { _Resource = (CraftResource)reader.ReadInt(); _Crafter = reader.ReadMobile(); _Quality = (ItemQuality)reader.ReadInt(); goto case 0; } case 0: { m_BurntOut = reader.ReadBool(); m_Burning = reader.ReadBool(); m_Duration = reader.ReadTimeSpan(); m_Protected = reader.ReadBool(); if (m_Burning && m_Duration != TimeSpan.Zero) { DoTimer(reader.ReadDeltaTime() - DateTime.UtcNow); } break; } } if (version == 2) { Level = SecureLevel.Friends; } }
public virtual void Deserialize(GenericReader reader) { int version = reader.ReadInt(); //Version switch (version) { case 0: { _Parent = (VoteItem)reader.ReadItem(); _Name = (string)reader.ReadString(); _URL = (string)reader.ReadString(); _CoolDown = (TimeSpan)reader.ReadTimeSpan(); } break; } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); var version = reader.GetVersion(); switch (version) { case 0: Duration = CoolDown = reader.ReadTimeSpan(); break; } Timer.DelayCall(TimeSpan.FromSeconds(60), InternalSync); }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); /*int version = */ reader.ReadEncodedInt(); m_MaxElevation = reader.ReadEncodedInt(); m_MoveSound = reader.ReadEncodedInt(); m_StopSound = reader.ReadEncodedInt(); m_CloseDelay = reader.ReadTimeSpan(); int elevation = reader.ReadEncodedInt(); this.Z -= elevation; }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); switch (version) { case 1: // version 1 this.proximityrange = reader.ReadInt(); goto case 0; case 0: // version 0 this.SoundValue = reader.ReadInt(); this.ActivationWord = reader.ReadString(); this.Charges = reader.ReadInt(); this.Refractory = reader.ReadTimeSpan(); TimeSpan remaining = reader.ReadTimeSpan(); this.m_EndTime = DateTime.Now + remaining; break; } }
public override void Deserialize(GenericReader reader) { int version = reader.ReadInt(); switch (version) { case 0: { AutoDetectClient = reader.ReadBool(); ClientPath = reader.ReadString(); OldClientResponse = (OldClientResponse)reader.ReadByte(); RequiredClientVersion = new ClientVersion(reader.ReadInt(), reader.ReadInt(), reader.ReadInt(), reader.ReadInt()); AllowRegular = reader.ReadBool(); AllowUOTD = reader.ReadBool(); AllowGod = reader.ReadBool(); AgeLeniency = reader.ReadTimeSpan(); GameTimeLeniency = reader.ReadTimeSpan(); KickDelay = reader.ReadTimeSpan(); } break; } }
public sealed override void Deserialize(GenericReader reader) { int version = reader.ReadInt(); switch (version) { case 0: { this._AutoDetectClient = reader.ReadBool(); this._ClientPath = reader.ReadString(); this._OldClientResponse = (OldClientResponse)reader.ReadByte(); this._RequiredVersion = new ClientVersion(reader.ReadInt(), reader.ReadInt(), reader.ReadInt(), reader.ReadInt()); this._AllowRegular = reader.ReadBool(); this._AllowUOTD = reader.ReadBool(); this._AllowGod = reader.ReadBool(); this._AgeLeniency = reader.ReadTimeSpan(); this._GameTimeLeniency = reader.ReadTimeSpan(); this._KickDelay = reader.ReadTimeSpan(); break; } } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); m_Liquor = (Liquor)reader.ReadInt(); m_MaturationBegin = reader.ReadDateTime(); m_MaturationDuration = reader.ReadTimeSpan(); m_Label = reader.ReadString(); m_IsStrong = reader.ReadBool(); m_UsesRemaining = reader.ReadInt(); m_Exceptional = reader.ReadBool(); m_Crafter = reader.ReadMobile(); m_Distiller = reader.ReadMobile(); }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); switch (version) { case 0: { m_Delay = reader.ReadTimeSpan(); m_Charges = reader.ReadInt(); } break; } }
public override void Deserialize(GenericReader reader) { Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("en-GB"); base.Deserialize(reader); int version = reader.ReadInt(); switch (version) { case 1: { m_Chance = reader.ReadDouble(); goto case 0; } case 0: { m_Active = reader.ReadBool(); m_Creature = reader.ReadString(); m_Message = reader.ReadString(); m_Location = reader.ReadPoint3D(); m_HomeRange = reader.ReadInt(); m_Team = reader.ReadInt(); m_Limit = reader.ReadInt(); m_NextSpawn = DateTime.Parse(reader.ReadString()); m_Delay = reader.ReadTimeSpan(); int size = reader.ReadInt(); m_Creatures = new ArrayList(size); for (int i = 0; i < size; ++i) { IEntity e = World.FindEntity(reader.ReadInt()); if (e != null) { m_Creatures.Add(e); } } break; } } if (version == 0) { m_Chance = 1; } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); m_NestSpawnType = reader.ReadString(); m_Spawn = reader.ReadMobileList(); m_MaxCount = reader.ReadInt(); m_RespawnTime = reader.ReadTimeSpan(); m_HitsMax = reader.ReadInt(); m_Hits = reader.ReadInt(); m_RangeHome = reader.ReadInt(); m_LootLevel = reader.ReadInt(); m_Entity = reader.ReadMobile(); }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); switch (version) { case 0: { this._ServiceTimespan = reader.ReadTimeSpan(); this._ExchangeRate = reader.ReadDouble(); break; } } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.GetVersion(); switch (version) { case 0: { Threshold = reader.ReadTimeSpan(); DetectAction = reader.ReadFlag <SpeedhackAction>(); } break; } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); if (version == 1) { m_Interval = reader.ReadTimeSpan(); } if (Core.AOS && NameHue == 0x35) { NameHue = -1; } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); switch (version) { case 4: { m_CriminalCheck = reader.ReadBool(); goto case 3; } case 3: { m_CombatCheck = reader.ReadBool(); goto case 2; } case 2: { m_SourceEffect = reader.ReadBool(); m_DestEffect = reader.ReadBool(); m_Delay = reader.ReadTimeSpan(); m_SoundID = reader.ReadEncodedInt(); goto case 1; } case 1: { m_Creatures = reader.ReadBool(); goto case 0; } case 0: { m_Active = reader.ReadBool(); m_PointDest = reader.ReadPoint3D(); m_MapDest = reader.ReadMap(); break; } } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); m_MaxFel = reader.ReadInt(); m_MaxTram = reader.ReadInt(); m_MaxTokuno = reader.ReadInt(); m_SpawnTime = reader.ReadTimeSpan(); m_Active = reader.ReadBool(); int count = reader.ReadInt(); for (int i = 0; i < count; i++) { SpawnZone zone = (SpawnZone)reader.ReadInt(); int c = reader.ReadInt(); for (int j = 0; j < c; j++) { BaseShipCaptain capt = reader.ReadMobile() as BaseShipCaptain; if (capt != null && !capt.Deleted && capt.Alive) { m_ActiveZones[zone].Add(capt); } } } count = reader.ReadInt(); for (int i = 0; i < count; i++) { Mobile mob = reader.ReadMobile(); int amt = reader.ReadInt(); if (mob != null && !mob.Deleted) { m_Bounties.Add(mob, amt); } } m_Instance = this; if (m_Active) { m_Timer = Timer.DelayCall(m_SpawnTime, m_SpawnTime, new TimerCallback(OnTick)); } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); m_BandageContainer = reader.ReadItem() as Container; m_GHPotionContainer = reader.ReadItem() as Container; m_ReagentContainer = reader.ReadItem() as Container; m_Running = reader.ReadBool(); if (m_Running) { TimeSpan delay = reader.ReadTimeSpan(); DoTimer(delay); } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); switch (version) { case 0: { m_Skill = (SkillName)reader.ReadInt(); m_Duration = reader.ReadTimeSpan(); break; } } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); m_Delay = reader.ReadTimeSpan(); m_Town = (TownStone)reader.ReadItem(); m_SpawnedGuard = (PomiGuard)reader.ReadMobile(); m_RangeHome = reader.ReadInt(); m_Running = reader.ReadBool(); if (m_Running) { m_timer = new SpawnTimer(m_Town, this, m_Delay); m_timer.Start(); } }
/// <summary> /// Loads the object /// </summary> /// <param name="reader">reader that loads the info</param> public virtual void Load(GenericReader reader) { int size = reader.ReadInt(); for (int i = 0; i < size; i++) { m_Mobs.Add(reader.ReadString()); } size = reader.ReadInt(); for (int i = 0; i < size; i++) { m_MobAmts.Add(reader.ReadInt()); } m_TimeLimit = reader.ReadTimeSpan(); }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); m_TimeoutDelay = reader.ReadTimeSpan(); m_CantTeleport = new Dictionary <Mobile, DateTime>(); int count = reader.ReadInt(); for (int i = 0; i < count; ++i) { Mobile m = reader.ReadMobile(); DateTime end = reader.ReadDateTime(); } }
public override void Deserialize( GenericReader reader ) { base.Deserialize( reader ); int version = reader.ReadInt(); switch (version) { case 0: m_MemberShipTime = TimeSpan.Zero; break; case 1: m_MemberShipTime = reader.ReadTimeSpan(); break; default: m_MemberShipTime = TimeSpan.Zero; break; } }
public override void Deserialize(GenericReader reader) { base.Deserialize( reader ); int version = reader.ReadInt(); switch ( version ) { case 0: { int count = reader.ReadInt(); for ( int i = 0; i < count; ++i ) { Mobile m = reader.ReadMobile(); DisguiseTimers.CreateTimer( m, reader.ReadTimeSpan() ); m.NameMod = reader.ReadString(); } break; } } }
public override void Deserialize( GenericReader reader ) { base.Deserialize( reader ); int version = reader.ReadInt(); m_CurrentAI = (AIType)reader.ReadInt(); m_DefaultAI = (AIType)reader.ReadInt(); m_iRangePerception = reader.ReadInt(); m_iRangeFight = reader.ReadInt(); m_iTeam = reader.ReadInt(); m_dActiveSpeed = reader.ReadDouble(); m_dPassiveSpeed = reader.ReadDouble(); m_dCurrentSpeed = reader.ReadDouble(); if ( m_iRangePerception == OldRangePerception ) m_iRangePerception = DefaultRangePerception; m_pHome.X = reader.ReadInt(); m_pHome.Y = reader.ReadInt(); m_pHome.Z = reader.ReadInt(); if ( version >= 1 ) { m_iRangeHome = reader.ReadInt(); int i, iCount; iCount = reader.ReadInt(); for ( i=0; i< iCount; i++ ) { string str = reader.ReadString(); Type type = Type.GetType( str ); if ( type != null ) { m_arSpellAttack.Add( type ); } } iCount = reader.ReadInt(); for ( i=0; i< iCount; i++ ) { string str = reader.ReadString(); Type type = Type.GetType( str ); if ( type != null ) { m_arSpellDefense.Add( type ); } } } else { m_iRangeHome = 0; } if ( version >= 2 ) { m_FightMode = ( FightMode )reader.ReadInt(); m_bControlled = reader.ReadBool(); m_ControlMaster = reader.ReadMobile(); m_ControlTarget = reader.ReadMobile(); m_ControlDest = reader.ReadPoint3D(); m_ControlOrder = (OrderType) reader.ReadInt(); m_dMinTameSkill = reader.ReadDouble(); if ( version < 9 ) reader.ReadDouble(); m_bTamable = reader.ReadBool(); m_bSummoned = reader.ReadBool(); if ( m_bSummoned ) { m_SummonEnd = reader.ReadDeltaTime(); new UnsummonTimer( m_ControlMaster, this, m_SummonEnd - DateTime.Now ).Start(); } m_iControlSlots = reader.ReadInt(); } else { m_FightMode = FightMode.Closest; m_bControlled = false; m_ControlMaster = null; m_ControlTarget = null; m_ControlOrder = OrderType.None; } if ( version >= 3 ) m_Loyalty = reader.ReadInt(); else m_Loyalty = MaxLoyalty; // Wonderfully Happy if ( version >= 4 ) m_CurrentWayPoint = reader.ReadItem() as WayPoint; if ( version >= 5 ) m_SummonMaster = reader.ReadMobile(); if ( version >= 6 ) { m_HitsMax = reader.ReadInt(); m_StamMax = reader.ReadInt(); m_ManaMax = reader.ReadInt(); m_DamageMin = reader.ReadInt(); m_DamageMax = reader.ReadInt(); } if ( version >= 7 ) { m_PhysicalResistance = reader.ReadInt(); m_PhysicalDamage = reader.ReadInt(); m_FireResistance = reader.ReadInt(); m_FireDamage = reader.ReadInt(); m_ColdResistance = reader.ReadInt(); m_ColdDamage = reader.ReadInt(); m_PoisonResistance = reader.ReadInt(); m_PoisonDamage = reader.ReadInt(); m_EnergyResistance = reader.ReadInt(); m_EnergyDamage = reader.ReadInt(); } if ( version >= 8 ) m_Owners = reader.ReadStrongMobileList(); else m_Owners = new List<Mobile>(); if ( version >= 10 ) { m_IsDeadPet = reader.ReadBool(); m_IsBonded = reader.ReadBool(); m_BondingBegin = reader.ReadDateTime(); m_OwnerAbandonTime = reader.ReadDateTime(); } if ( version >= 11 ) m_HasGeneratedLoot = reader.ReadBool(); else m_HasGeneratedLoot = true; if ( version >= 12 ) m_Paragon = reader.ReadBool(); else m_Paragon = false; if ( version >= 13 && reader.ReadBool() ) m_Friends = reader.ReadStrongMobileList(); else if ( version < 13 && m_ControlOrder >= OrderType.Unfriend ) ++m_ControlOrder; if ( version < 16 && Loyalty != MaxLoyalty ) Loyalty *= 10; double activeSpeed = m_dActiveSpeed; double passiveSpeed = m_dPassiveSpeed; SpeedInfo.GetSpeeds( this, ref activeSpeed, ref passiveSpeed ); bool isStandardActive = false; for ( int i = 0; !isStandardActive && i < m_StandardActiveSpeeds.Length; ++i ) isStandardActive = ( m_dActiveSpeed == m_StandardActiveSpeeds[i] ); bool isStandardPassive = false; for ( int i = 0; !isStandardPassive && i < m_StandardPassiveSpeeds.Length; ++i ) isStandardPassive = ( m_dPassiveSpeed == m_StandardPassiveSpeeds[i] ); if ( isStandardActive && m_dCurrentSpeed == m_dActiveSpeed ) m_dCurrentSpeed = activeSpeed; else if ( isStandardPassive && m_dCurrentSpeed == m_dPassiveSpeed ) m_dCurrentSpeed = passiveSpeed; if ( isStandardActive && !m_Paragon ) m_dActiveSpeed = activeSpeed; if ( isStandardPassive && !m_Paragon ) m_dPassiveSpeed = passiveSpeed; if ( version >= 14 ) { m_RemoveIfUntamed = reader.ReadBool(); m_RemoveStep = reader.ReadInt(); } TimeSpan deleteTime = TimeSpan.Zero; if ( version >= 17 ) deleteTime = reader.ReadTimeSpan(); if ( deleteTime > TimeSpan.Zero || LastOwner != null && !Controlled && !IsStabled ) { if ( deleteTime == TimeSpan.Zero ) deleteTime = TimeSpan.FromDays( 3.0 ); m_DeleteTimer = new DeleteTimer( this, deleteTime ); m_DeleteTimer.Start(); } if( version <= 14 && m_Paragon && Hue == 0x31 ) { Hue = Paragon.Hue; //Paragon hue fixed, should now be 0x501. } CheckStatTimers(); ChangeAIType(m_CurrentAI); AddFollowers(); if ( IsAnimatedDead ) Spells.Necromancy.AnimateDeadSpell.Register( m_SummonMaster, this ); }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); switch ( version ) { case 0: { this.m_BurntOut = reader.ReadBool(); this.m_Burning = reader.ReadBool(); this.m_Duration = reader.ReadTimeSpan(); this.m_Protected = reader.ReadBool(); if (this.m_Burning && this.m_Duration != TimeSpan.Zero) this.DoTimer(reader.ReadDeltaTime() - DateTime.Now); break; } } }
public override void Deserialize( GenericReader reader ) { base.Deserialize( reader ); int version = reader.ReadInt(); switch ( version ) { case 0: { m_BombHome = reader.ReadPoint3D(); m_Duration = reader.ReadTimeSpan(); m_TeamInfo = new BRTeamInfo[reader.ReadEncodedInt()]; for ( int i = 0; i < m_TeamInfo.Length; ++i ) m_TeamInfo[i] = new BRTeamInfo( i, reader ); break; } } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); if (version >= 0) { this.m_SpawnRange = reader.ReadInt(); this.m_NextSpawnDelay = reader.ReadTimeSpan(); } this.m_NextSpawn = DateTime.Now; }
public static void LBSDeserialize(GenericReader reader) { int version = reader.ReadInt(); switch(version) { case 1: m_SystemBroadcast = reader.ReadBool(); goto case 0; case 0: bool running = reader.ReadBool(); m_LeaderboardSaveInterval = reader.ReadTimeSpan(); m_LeaderboardSaveRanks = reader.ReadInt(); m_LeaderboardFile = reader.ReadString(); if (running) { if (m_LeaderboardTimer != null) m_LeaderboardTimer.Stop(); m_LeaderboardTimer = new LeaderboardTimer(m_LeaderboardFile, m_LeaderboardSaveInterval, m_LeaderboardSaveRanks); m_LeaderboardTimer.Start(); } break; } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); switch (version) { case 3: this.m_MaxTargetRange = reader.ReadInt(); goto case 2; case 2: this.m_TargetingEnabled = reader.ReadBool(); this.m_TargetingAction = reader.ReadString(); this.m_TargetCondition = reader.ReadString(); this.m_TargetFailureAction = reader.ReadString(); this.m_TargetFailureReward = reader.ReadString(); goto case 1; case 1: this.m_AllowCarried = reader.ReadBool(); goto case 0; case 0: // version 0 this.m_RequireLOS = reader.ReadBool(); this.m_MaxRange = reader.ReadInt(); this.Refractory = reader.ReadTimeSpan(); TimeSpan remaining = reader.ReadTimeSpan(); this.m_EndTime = DateTime.UtcNow + remaining; this.m_MaxUses = reader.ReadInt(); this.m_NUses = reader.ReadInt(); this.m_BlockDefaultUse = reader.ReadBool(); this.m_Condition = reader.ReadString(); this.m_SuccessAction = reader.ReadString(); this.m_SuccessReward = reader.ReadString(); this.m_FailureAction = reader.ReadString(); this.m_FailureReward = reader.ReadString(); this.m_RefractoryAction = reader.ReadString(); this.m_RefractoryReward = reader.ReadString(); this.m_MaxUsesAction = reader.ReadString(); this.m_MaxUsesReward = reader.ReadString(); break; } }
public virtual void Deserialize(GenericReader reader) { int version = reader.ReadInt(); switch (version) { case 2: this.m_AttachedBy = reader.ReadString(); goto case 1; case 1: int owned = reader.ReadInt(); if (owned == 0) { this.OwnedBy = reader.ReadItem(); } else if (owned == 1) { this.OwnedBy = reader.ReadMobile(); } else this.OwnedBy = null; goto case 0; case 0: // version 0 this.Name = (string)reader.ReadString(); this.m_Expiration = reader.ReadTimeSpan(); TimeSpan remaining = (TimeSpan)reader.ReadTimeSpan(); if (remaining > TimeSpan.Zero) this.DoTimer(remaining); this.m_CreationTime = reader.ReadDateTime(); break; } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); switch(version) { case 1: // version 1 this.Range = reader.ReadInt(); goto case 0; case 0: // version 0 this.m_Drain = reader.ReadInt(); this.Refractory = reader.ReadTimeSpan(); TimeSpan remaining = reader.ReadTimeSpan(); this.m_EndTime = DateTime.UtcNow + remaining; break; } }
public override void Deserialize( GenericReader reader ) { base.Deserialize( reader ); int version = reader.ReadEncodedInt(); m_MaxElevation = reader.ReadEncodedInt(); m_MoveSound = reader.ReadEncodedInt(); m_StopSound = reader.ReadEncodedInt(); m_CloseDelay = reader.ReadTimeSpan(); int elevation = reader.ReadEncodedInt(); Z -= elevation; }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); switch (version) { case 14: { int nentries = reader.ReadInt(); if (nentries > 0) { this.m_Journal = new ArrayList(); for (int i = 0; i < nentries; i++) { string entryID = reader.ReadString(); string entryText = reader.ReadString(); this.m_Journal.Add(new XmlQuest.JournalEntry(entryID, entryText)); } } goto case 13; } case 13: { this.m_Repeatable = reader.ReadBool(); goto case 12; } case 12: { this.m_QuestDifficulty = reader.ReadInt(); goto case 11; } case 11: { this.m_AttachmentString = reader.ReadString(); goto case 10; } case 10: { this.m_NextRepeatable = reader.ReadTimeSpan(); goto case 9; } case 9: { this.m_RewardAttachmentSerialNumber = reader.ReadInt(); goto case 8; } case 8: { this.m_ReturnContainer = (Container)reader.ReadItem(); goto case 7; } case 7: { this.m_Pack = (Container)reader.ReadItem(); this.m_RewardItem = reader.ReadItem(); this.m_AutoReward = reader.ReadBool(); this.m_CanSeeReward = reader.ReadBool(); this.m_PlayerMade = reader.ReadBool(); this.m_Creator = reader.ReadMobile() as PlayerMobile; goto case 6; } case 6: { this.m_Description1 = reader.ReadString(); this.m_Description2 = reader.ReadString(); this.m_Description3 = reader.ReadString(); this.m_Description4 = reader.ReadString(); this.m_Description5 = reader.ReadString(); goto case 5; } case 5: { this.m_Owner = reader.ReadMobile() as PlayerMobile; goto case 4; } case 4: { this.m_RewardString = reader.ReadString(); goto case 3; } case 3: { this.m_ConfigFile = reader.ReadString(); this.m_NoteString = reader.ReadString(); this.m_TitleString = reader.ReadString(); goto case 2; } case 2: { this.m_PartyEnabled = reader.ReadBool(); this.m_PartyRange = reader.ReadInt(); goto case 1; } case 1: { this.m_State1 = reader.ReadString(); this.m_State2 = reader.ReadString(); this.m_State3 = reader.ReadString(); this.m_State4 = reader.ReadString(); this.m_State5 = reader.ReadString(); goto case 0; } case 0: { this.m_wasMoved = reader.ReadBool(); this.Expiration = reader.ReadDouble(); this.m_TimeCreated = reader.ReadDateTime(); this.m_Objective1 = reader.ReadString(); this.m_Objective2 = reader.ReadString(); this.m_Objective3 = reader.ReadString(); this.m_Objective4 = reader.ReadString(); this.m_Objective5 = reader.ReadString(); this.m_Completed1 = reader.ReadBool(); this.m_Completed2 = reader.ReadBool(); this.m_Completed3 = reader.ReadBool(); this.m_Completed4 = reader.ReadBool(); this.m_Completed5 = reader.ReadBool(); } break; } }
public override void Deserialize(GenericReader reader) { int version = reader.GetVersion(); switch (version) { case 0: { _level = reader.ReadInt(); Name = reader.ReadString(); MetaSkillType = (MetaSkillType) reader.ReadInt(); ChanceToActivate = reader.ReadDouble(); CoolDown = reader.ReadTimeSpan(); AbilityMultiplier = reader.ReadDouble(); Experience = reader.ReadInt(); NextLevelExperience = reader.ReadInt(); MaxLevel = reader.ReadInt(); } break; } }
public void Deserialize(GenericReader reader) { int version = reader.ReadInt(); switch (version) { case 1: this.Flags = (KeywordFlags)reader.ReadInt(); goto case 0; case 0: this.m_Spawner = (XmlSpawner)reader.ReadItem(); this.Type = reader.ReadInt(); this.Serial = reader.ReadInt(); if (this.Type == 0) { // get any timer info TimeSpan delay = reader.ReadTimeSpan(); this.m_Delay = reader.ReadTimeSpan(); this.m_Condition = reader.ReadString(); this.m_Goto = reader.ReadInt(); TimeSpan timeoutdelay = reader.ReadTimeSpan(); this.m_TimeoutEnd = DateTime.Now + timeoutdelay; this.m_Timeout = reader.ReadTimeSpan(); this.m_TrigMob = reader.ReadMobile(); this.DoTimer(delay, this.m_Delay, this.m_Condition, this.m_Goto); } break; } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); // version 0 this.Word = reader.ReadString(); this.Charges = reader.ReadInt(); this.Duration = reader.ReadTimeSpan(); this.Refractory = reader.ReadTimeSpan(); TimeSpan remaining = reader.ReadTimeSpan(); this.m_EndTime = DateTime.Now + remaining; this.m_RequireIdentification = reader.ReadBool(); this.m_Identified = reader.ReadBool(); }
public override void Deserialize( GenericReader reader ) { base.Deserialize(reader); int version = reader.ReadInt(); switch( version ) { case 2: { alignment = (Alignment)reader.ReadInt(); goto case 1; } case 1: { TimeSpan deleteTime = TimeSpan.Zero; if( version >= 1 ) deleteTime = reader.ReadTimeSpan(); if( deleteTime > TimeSpan.Zero || LastOwner != null && !Controlled && !IsStabled ) { if( deleteTime <= TimeSpan.Zero || deleteTime > TimeSpan.FromDays(3.0) ) deleteTime = TimeSpan.FromDays(3.0); m_DeleteTimer = new DeleteTimer(this, deleteTime); m_DeleteTimer.Start(); } goto case 0; } case 0: { m_CurrentAI = (AIType)reader.ReadInt(); m_DefaultAI = (AIType)reader.ReadInt(); m_iRangePerception = reader.ReadInt(); m_iRangeFight = reader.ReadInt(); m_iRangeHome = reader.ReadInt(); m_iTeam = reader.ReadInt(); m_dActiveSpeed = reader.ReadDouble(); m_dPassiveSpeed = reader.ReadDouble(); m_dCurrentSpeed = reader.ReadDouble(); if( m_iRangePerception == OldRangePerception ) m_iRangePerception = DefaultRangePerception; m_pHome.X = reader.ReadInt(); m_pHome.Y = reader.ReadInt(); m_pHome.Z = reader.ReadInt(); int i, iCount; iCount = reader.ReadInt(); for( i = 0; i < iCount; i++ ) { string str = reader.ReadString(); Type type = Type.GetType(str); if( type != null ) { m_arSpellAttack.Add(type); } } iCount = reader.ReadInt(); for( i = 0; i < iCount; i++ ) { string str = reader.ReadString(); Type type = Type.GetType(str); if( type != null ) { m_arSpellDefense.Add(type); } } m_FightMode = (FightMode)reader.ReadInt(); m_bControlled = reader.ReadBool(); m_ControlMaster = reader.ReadMobile(); m_ControlTarget = reader.ReadMobile(); m_ControlDest = reader.ReadPoint3D(); m_ControlOrder = (OrderType)reader.ReadInt(); m_dMinTameSkill = reader.ReadDouble(); m_bTamable = reader.ReadBool(); m_bSummoned = reader.ReadBool(); if( m_bSummoned ) { m_SummonEnd = reader.ReadDeltaTime(); new UnsummonTimer(m_ControlMaster, this, m_SummonEnd - DateTime.Now).Start(); } m_iControlSlots = reader.ReadInt(); m_Loyalty = reader.ReadInt(); m_CurrentWayPoint = reader.ReadItem() as WayPoint; m_SummonMaster = reader.ReadMobile(); m_HitsMax = reader.ReadInt(); m_StamMax = reader.ReadInt(); m_ManaMax = reader.ReadInt(); m_DamageMin = reader.ReadInt(); m_DamageMax = reader.ReadInt(); m_PhysicalResistance = reader.ReadInt(); m_PhysicalDamage = reader.ReadInt(); m_FireResistance = reader.ReadInt(); m_FireDamage = reader.ReadInt(); m_ColdResistance = reader.ReadInt(); m_ColdDamage = reader.ReadInt(); m_PoisonResistance = reader.ReadInt(); m_PoisonDamage = reader.ReadInt(); m_EnergyResistance = reader.ReadInt(); m_EnergyDamage = reader.ReadInt(); m_Owners = reader.ReadStrongMobileList(); m_IsDeadPet = reader.ReadBool(); m_IsBonded = reader.ReadBool(); m_BondingBegin = reader.ReadDateTime(); m_OwnerAbandonTime = reader.ReadDateTime(); m_HasGeneratedLoot = reader.ReadBool(); bool hasFriends = reader.ReadBool(); if( hasFriends ) m_Friends = reader.ReadStrongMobileList(); else m_Friends = new List<Mobile>(); m_RemoveIfUntamed = reader.ReadBool(); m_RemoveStep = reader.ReadInt(); _spawner = reader.ReadItem(); _spawnerHome = reader.ReadPoint3D(); break; } } double activeSpeed = m_dActiveSpeed; double passiveSpeed = m_dPassiveSpeed; SpeedInfo.GetSpeeds(this, ref activeSpeed, ref passiveSpeed); bool isStandardActive = false; for( int i = 0; !isStandardActive && i < m_StandardActiveSpeeds.Length; ++i ) isStandardActive = (m_dActiveSpeed == m_StandardActiveSpeeds[i]); bool isStandardPassive = false; for( int i = 0; !isStandardPassive && i < m_StandardPassiveSpeeds.Length; ++i ) isStandardPassive = (m_dPassiveSpeed == m_StandardPassiveSpeeds[i]); if( isStandardActive && m_dCurrentSpeed == m_dActiveSpeed ) m_dCurrentSpeed = activeSpeed; else if( isStandardPassive && m_dCurrentSpeed == m_dPassiveSpeed ) m_dCurrentSpeed = passiveSpeed; if( isStandardActive ) m_dActiveSpeed = activeSpeed; if( isStandardPassive ) m_dPassiveSpeed = passiveSpeed; if( Core.AOS && NameHue == 0x35 ) NameHue = -1; CheckStatTimers(); ChangeAIType(m_CurrentAI); AddFollowers(); }
public virtual void Deserialize(GenericReader reader) { int version = reader.ReadInt(); SaveFlag flags = SaveFlag.None; if (version >= 4) { flags = (SaveFlag)reader.ReadInt(); } switch (version) { case 4: if (GetSaveFlag(flags, SaveFlag.ExpireActCondition)) { m_ExpireActCondition = reader.ReadString(); } if (GetSaveFlag(flags, SaveFlag.ExpireAction)) { m_ExpireAction = reader.ReadString(); } if (GetSaveFlag(flags, SaveFlag.ExpireTrigMob)) { m_ExpireTrigMob = reader.ReadMobile(); } if (GetSaveFlag(flags, SaveFlag.AttachedBy)) { m_AttachedBy = reader.ReadString(); } if (GetSaveFlag(flags, SaveFlag.OwnedByMobile)) { OwnedBy = reader.ReadMobile(); } else if (GetSaveFlag(flags, SaveFlag.OwnedByItem)) { OwnedBy = reader.ReadItem(); } if (GetSaveFlag(flags, SaveFlag.Name)) { Name = reader.ReadString(); } // if there are any active timers, then serialize if (GetSaveFlag(flags, SaveFlag.Expiration)) { m_Expiration = reader.ReadTimeSpan(); } if (GetSaveFlag(flags, SaveFlag.ExpirationEnd)) { TimeSpan remainingTime = reader.ReadTimeSpan(); if (remainingTime > TimeSpan.Zero) { DoTimer(remainingTime); } } if (GetSaveFlag(flags, SaveFlag.CreationTime)) { m_CreationTime = reader.ReadDateTime(); } // DO NOT GO ON TO CASE 3 OR BELOW! break; // =============== OLD DESERIALIZATION ===================== case 3: m_ExpireAction = reader.ReadString(); m_ExpireActCondition = reader.ReadString(); m_ExpireTrigMob = reader.ReadMobile(); goto case 2; case 2: m_AttachedBy = reader.ReadString(); goto case 1; case 1: int owned = reader.ReadInt(); if (owned == 0) { OwnedBy = reader.ReadItem(); } else if (owned == 1) { OwnedBy = reader.ReadMobile(); } else { OwnedBy = null; } goto case 0; case 0: // version 0 Name = reader.ReadString(); m_Expiration = reader.ReadTimeSpan(); TimeSpan remaining = reader.ReadTimeSpan(); if (remaining > TimeSpan.Zero) { DoTimer(remaining); } m_CreationTime = reader.ReadDateTime(); break; } }
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 = (EffectType)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 Tournament(GenericReader reader) { int version = reader.ReadEncodedInt(); switch ( version ) { case 4: { this.m_EventController = reader.ReadItem() as EventController; goto case 3; } case 3: { this.m_SuddenDeathRounds = reader.ReadEncodedInt(); goto case 2; } case 2: { this.m_TournyType = (TournyType)reader.ReadEncodedInt(); goto case 1; } case 1: { this.m_GroupType = (GroupingType)reader.ReadEncodedInt(); this.m_TieType = (TieType)reader.ReadEncodedInt(); this.m_SignupPeriod = reader.ReadTimeSpan(); goto case 0; } case 0: { if (version < 3) this.m_SuddenDeathRounds = 3; this.m_ParticipantsPerMatch = reader.ReadEncodedInt(); this.m_PlayersPerParticipant = reader.ReadEncodedInt(); this.m_SignupPeriod = reader.ReadTimeSpan(); this.m_Stage = TournamentStage.Inactive; this.m_Pyramid = new TournyPyramid(); this.m_Ruleset = new Ruleset(RulesetLayout.Root); this.m_Ruleset.ApplyDefault(this.m_Ruleset.Layout.Defaults[0]); this.m_Participants = new ArrayList(); this.m_Undefeated = new ArrayList(); this.m_Arenas = new ArrayList(); break; } } Timer.DelayCall(SliceInterval, SliceInterval, new TimerCallback(Slice)); }
public override void Deserialize( GenericReader reader ) { base.Deserialize( reader ); int version = reader.ReadInt(); switch ( version ) { case 28: { m_PeacedUntil = reader.ReadDateTime(); goto case 27; } case 27: { m_AnkhNextUse = reader.ReadDateTime(); goto case 26; } case 26: { m_AutoStabled = reader.ReadStrongMobileList(); goto case 25; } case 25: { int recipeCount = reader.ReadInt(); if( recipeCount > 0 ) { m_AcquiredRecipes = new Dictionary<int, bool>(); for( int i = 0; i < recipeCount; i++ ) { int r = reader.ReadInt(); if( reader.ReadBool() ) //Don't add in recipies which we haven't gotten or have been removed m_AcquiredRecipes.Add( r, true ); } } goto case 24; } case 24: { m_LastHonorLoss = reader.ReadDeltaTime(); goto case 23; } case 23: { m_ChampionTitles = new ChampionTitleInfo( reader ); goto case 22; } case 22: { m_LastValorLoss = reader.ReadDateTime(); goto case 21; } case 21: { m_ToTItemsTurnedIn = reader.ReadEncodedInt(); m_ToTTotalMonsterFame = reader.ReadInt(); goto case 20; } case 20: { m_AllianceMessageHue = reader.ReadEncodedInt(); m_GuildMessageHue = reader.ReadEncodedInt(); goto case 19; } case 19: { int rank = reader.ReadEncodedInt(); int maxRank = Guilds.RankDefinition.Ranks.Length -1; if( rank > maxRank ) rank = maxRank; m_GuildRank = Guilds.RankDefinition.Ranks[rank]; m_LastOnline = reader.ReadDateTime(); goto case 18; } case 18: { m_SolenFriendship = (SolenFriendship) reader.ReadEncodedInt(); goto case 17; } case 17: // changed how DoneQuests is serialized case 16: { m_Quest = QuestSerializer.DeserializeQuest( reader ); if ( m_Quest != null ) m_Quest.From = this; int count = reader.ReadEncodedInt(); if ( count > 0 ) { m_DoneQuests = new List<QuestRestartInfo>(); for ( int i = 0; i < count; ++i ) { Type questType = QuestSerializer.ReadType( QuestSystem.QuestTypes, reader ); DateTime restartTime; if ( version < 17 ) restartTime = DateTime.MaxValue; else restartTime = reader.ReadDateTime(); m_DoneQuests.Add( new QuestRestartInfo( questType, restartTime ) ); } } m_Profession = reader.ReadEncodedInt(); goto case 15; } case 15: { m_LastCompassionLoss = reader.ReadDeltaTime(); goto case 14; } case 14: { m_CompassionGains = reader.ReadEncodedInt(); if ( m_CompassionGains > 0 ) m_NextCompassionDay = reader.ReadDeltaTime(); goto case 13; } case 13: // just removed m_PayedInsurance list case 12: { m_BOBFilter = new Engines.BulkOrders.BOBFilter( reader ); goto case 11; } case 11: { if ( version < 13 ) { List<Item> payed = reader.ReadStrongItemList(); for ( int i = 0; i < payed.Count; ++i ) payed[i].PayedInsurance = true; } goto case 10; } case 10: { if ( reader.ReadBool() ) { m_HairModID = reader.ReadInt(); m_HairModHue = reader.ReadInt(); m_BeardModID = reader.ReadInt(); m_BeardModHue = reader.ReadInt(); } goto case 9; } case 9: { SavagePaintExpiration = reader.ReadTimeSpan(); if ( SavagePaintExpiration > TimeSpan.Zero ) { BodyMod = ( Female ? 184 : 183 ); HueMod = 0; } goto case 8; } case 8: { m_NpcGuild = (NpcGuild)reader.ReadInt(); m_NpcGuildJoinTime = reader.ReadDateTime(); m_NpcGuildGameTime = reader.ReadTimeSpan(); goto case 7; } case 7: { m_PermaFlags = reader.ReadStrongMobileList(); goto case 6; } case 6: { NextTailorBulkOrder = reader.ReadTimeSpan(); goto case 5; } case 5: { NextSmithBulkOrder = reader.ReadTimeSpan(); goto case 4; } case 4: { m_LastJusticeLoss = reader.ReadDeltaTime(); m_JusticeProtectors = reader.ReadStrongMobileList(); goto case 3; } case 3: { m_LastSacrificeGain = reader.ReadDeltaTime(); m_LastSacrificeLoss = reader.ReadDeltaTime(); m_AvailableResurrects = reader.ReadInt(); goto case 2; } case 2: { m_Flags = (PlayerFlag)reader.ReadInt(); goto case 1; } case 1: { m_LongTermElapse = reader.ReadTimeSpan(); m_ShortTermElapse = reader.ReadTimeSpan(); m_GameTime = reader.ReadTimeSpan(); goto case 0; } case 0: { if( version < 26 ) m_AutoStabled = new List<Mobile>(); break; } } if (m_RecentlyReported == null) m_RecentlyReported = new List<Mobile>(); // Professions weren't verified on 1.0 RC0 if ( !CharacterCreation.VerifyProfession( m_Profession ) ) m_Profession = 0; if ( m_PermaFlags == null ) m_PermaFlags = new List<Mobile>(); if ( m_JusticeProtectors == null ) m_JusticeProtectors = new List<Mobile>(); if ( m_BOBFilter == null ) m_BOBFilter = new Engines.BulkOrders.BOBFilter(); if( m_GuildRank == null ) m_GuildRank = Guilds.RankDefinition.Member; //Default to member if going from older verstion to new version (only time it should be null) if( m_LastOnline == DateTime.MinValue && Account != null ) m_LastOnline = ((Account)Account).LastLogin; if( m_ChampionTitles == null ) m_ChampionTitles = new ChampionTitleInfo(); if ( AccessLevel > AccessLevel.Player ) m_IgnoreMobiles = true; List<Mobile> list = this.Stabled; for ( int i = 0; i < list.Count; ++i ) { BaseCreature bc = list[i] as BaseCreature; if ( bc != null ) bc.IsStabled = true; } CheckAtrophies( this ); if( Hidden ) //Hiding is the only buff where it has an effect that's serialized. AddBuff( new BuffInfo( BuffIcon.HidingAndOrStealth, 1075655 ) ); }
public override void Deserialize( GenericReader reader ) { base.Deserialize( reader ); int version = reader.ReadInt(); switch( version ) { case 7: { m_RestFlags = (EGRFlags)PSerial.ReadEncodedLong( reader ); m_OptFlags = (EGateOptFlags)reader.ReadEncodedInt(); m_MaxPlayers = reader.ReadInt(); m_TollItem = Reflector.Deserialize( reader ); m_TollAmount = reader.ReadInt(); m_SkillName1 = (SkillName)reader.ReadInt(); m_SkillName2 = (SkillName)reader.ReadInt(); m_SkillValue1 = reader.ReadDouble(); m_SkillValue2 = reader.ReadDouble(); m_GMsNeeded = reader.ReadInt(); m_StrValue = reader.ReadInt(); m_IntValue = reader.ReadInt(); m_DexValue = reader.ReadInt(); m_Confirmation = reader.ReadString(); m_GameRobeHue = reader.ReadInt(); m_Delay = reader.ReadTimeSpan(); m_KarmaThreshold = reader.ReadInt(); break; } case 6: { switch ( reader.ReadInt() ) { case 0: TollLocation = TollOption.Backpack; break; case 1: TollLocation = TollOption.BankBox; break; case 2: TollLocation = TollOption.Both; break; } goto case 5; } case 5: { CannotFleeFromBattle = reader.ReadBool(); goto case 4; } case 4: { m_GameRobeHue = reader.ReadInt(); GiveGameRobe = !reader.ReadBool(); goto case 3; } case 3: { StaffOverride = !reader.ReadBool(); m_Confirmation = reader.ReadString(); StaffOnly = reader.ReadBool(); switch( reader.ReadInt() ) //Sex-Select { case 1: Gender = GenderOption.Male; break; case 2: Gender = GenderOption.Female; break; } int npcguild = reader.ReadInt(); if ( npcguild > 0 ) { SetRestFlag( EGRFlags.No_NPCGuilds, true ); SetRestFlag( (EGRFlags)(1ul<<(25+npcguild)), false ); } switch( reader.ReadInt() ) //Faction-Select { case 1: SetRestFlag( EGRFlags.No_Factions, true ); break; case 2: SetRestFlag( EGRFlags.No_Factionless, true ); break; case 3: SetRestFlag( EGRFlags.No_Minax | EGRFlags.No_Shadowlords | EGRFlags.No_TrueBrits, true ); break; case 4: SetRestFlag( EGRFlags.No_COM | EGRFlags.No_Shadowlords | EGRFlags.No_TrueBrits, true ); break; case 5: SetRestFlag( EGRFlags.No_COM | EGRFlags.No_Minax | EGRFlags.No_TrueBrits, true ); break; case 6: SetRestFlag( EGRFlags.No_COM | EGRFlags.No_Minax | EGRFlags.No_Shadowlords, true ); break; } switch( reader.ReadInt() ) //ChaosOrder-Select { case 1: SetRestFlag( EGRFlags.No_ChaosGuild | EGRFlags.No_OrderGuild, true ); break; case 2: SetRestFlag( EGRFlags.No_RegGuild | EGRFlags.No_Guildless, true ); break; case 3: SetRestFlag( EGRFlags.No_OrderGuild | EGRFlags.No_RegGuild | EGRFlags.No_Guildless, true ); break; case 4: SetRestFlag( EGRFlags.No_ChaosGuild | EGRFlags.No_RegGuild | EGRFlags.No_Guildless, true ); break; } goto case 2; } case 2: { switch( reader.ReadInt() ) //Young-Select { case 1: Veterans = VetOption.Veteran; break; case 2: Veterans = VetOption.Young; break; } switch( reader.ReadInt() ) //Factioners-Select { case 1: SetRestFlag( EGRFlags.No_Factions, true ); break; case 2: No_Factionless = true; break; } goto case 1; } case 1: { int stat = reader.ReadInt(); int amount = (int)reader.ReadDouble(); switch( stat ) { case 1: m_StrValue = amount; break; case 2: m_IntValue = amount; break; case 3: m_DexValue = amount; break; } reader.ReadString(); //obselete switch( reader.ReadInt() ) { case 1: SetRestFlag( EGRFlags.No_Ghosts, true ); break; case 2: SetRestFlag( EGRFlags.No_Living, true ); break; } ResGhosts = reader.ReadBool(); RemoveFSL = reader.ReadBool(); SetOptFlag( EGateOptFlags.StrMax | EGateOptFlags.IntMax | EGateOptFlags.DexMax, reader.ReadInt() == 0 ); reader.ReadInt(); //obselete m_MaxPlayers = reader.ReadInt(); HideWhenFull = reader.ReadBool(); switch( reader.ReadInt() ) { case 1: Mounted = MountOption.Unmounted; break; case 2: Mounted = MountOption.Mounted; break; } TransportPets = reader.ReadBool(); SetRestFlag( EGRFlags.No_Clothed, reader.ReadBool() ); SetRestFlag( EGRFlags.No_NonDonators, reader.ReadBool() ); switch( reader.ReadInt() ) { case 1: No_Murderer = true; break; case 2: No_BlueKarma = No_GrayKarma = No_Criminal = true; break; } m_TollItem = ScriptCompiler.FindTypeByFullName( reader.ReadString() ); m_TollAmount = reader.ReadInt(); FreeForDonators = reader.ReadBool(); m_SkillName1 = (SkillName)reader.ReadInt(); m_SkillValue1 = reader.ReadDouble(); reader.ReadString(); //obselete m_GMsNeeded = reader.ReadInt(); break; } } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); switch(version) { case 8: { this.m_StartingLoc = reader.ReadPoint3D(); try { this.m_StartingMap = Map.Parse(reader.ReadString()); } catch { } goto case 7; } case 7: { string langstr = reader.ReadString(); try { this.m_CurrentLanguage = (LanguageType)Enum.Parse(typeof(LanguageType), langstr); } catch { } goto case 6; } case 6: { this.m_ChallengeGame = (BaseChallengeGame)reader.ReadItem(); this.m_ChallengeSetup = (BaseChallengeGame)reader.ReadItem(); goto case 5; } case 5: { TimeSpan remaining = reader.ReadTimeSpan(); if (remaining > TimeSpan.Zero) { this.DoTimer(remaining); } goto case 4; } case 4: { this.m_ReceiveBroadcasts = reader.ReadBool(); goto case 3; } case 3: { this.m_Rank = reader.ReadInt(); this.m_DeltaRank = reader.ReadInt(); this.m_WhenRanked = reader.ReadDateTime(); this.m_LastDecay = reader.ReadDateTime(); goto case 2; } case 2: { this.m_Credits = reader.ReadInt(); goto case 1; } case 1: { this.m_Broadcast = reader.ReadBool(); goto case 0; } case 0: { this.m_Points = reader.ReadInt(); this.m_Kills = reader.ReadInt(); this.m_Deaths = reader.ReadInt(); this.m_Challenger = reader.ReadMobile(); this.m_LastKill = reader.ReadDateTime(); this.m_LastDeath = reader.ReadDateTime(); // read in the kill list int count = reader.ReadInt(); this.KillList = new ArrayList(); for (int i = 0; i < count; i++) { Mobile m = reader.ReadMobile(); DateTime t = reader.ReadDateTime(); if (m != null && !m.Deleted) { this.KillList.Add(new KillEntry(m,t)); } } // get the owner of this in order to rebuild the rankings Mobile killer = reader.ReadMobile(); // rebuild the ranking list // if they have never made a kill, then dont rank if (killer != null && this.m_Kills > 0) { UpdateRanking(killer, this); } break; } } }
public WarDeclaration( GenericReader reader ) { int version = reader.ReadInt(); switch ( version ) { case 0: { m_Kills = reader.ReadInt(); m_MaxKills = reader.ReadInt(); m_WarLength = reader.ReadTimeSpan(); m_WarBeginning = reader.ReadDateTime(); m_Guild = reader.ReadGuild() as Guild; m_Opponent = reader.ReadGuild() as Guild; m_WarRequester = reader.ReadBool(); break; } } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); switch ( version ) { case 0: { this.m_Title = reader.ReadString(); this.m_Duration = reader.ReadTimeSpan(); this.m_StartTime = reader.ReadDateTime(); this.m_Active = reader.ReadBool(); this.m_Options = new ShardPollOption[reader.ReadInt()]; for (int i = 0; i < this.m_Options.Length; ++i) this.m_Options[i] = new ShardPollOption(reader); if (this.m_Active) m_ActivePollers.Add(this); break; } } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); // version 0 m_Word = reader.ReadString(); m_Skill = (SkillName) reader.ReadInt(); m_Value = reader.ReadInt(); m_Duration = reader.ReadTimeSpan(); m_RequireIdentification = reader.ReadBool(); m_Identified = reader.ReadBool(); }