public override void Deserialize( GenericReader reader ) { int version = reader.ReadInt(); if ( version < 5 ) { FixGuilds(); } switch ( version ) { case 5: { m_WarInitializations = reader.ReadGuildList(); m_WarKills = new WarKillsItem[reader.ReadInt()]; for ( int i = 0; i < m_WarKills.Length; ++i ) { m_WarKills[i].w_Guild = reader.ReadGuild() as Guild; m_WarKills[i].Kills = reader.ReadInt(); m_WarKills[i].MaxKills = reader.ReadInt(); m_WarKills[i].WarTime = (uint) reader.ReadInt(); m_WarKills[i].ExpTime = (uint) reader.ReadInt(); } m_AllianceLeader = reader.ReadBool(); m_AllianceName = reader.ReadString(); goto case 4; } case 4: { m_AllyDeclarations = reader.ReadGuildList(); m_AllyInvitations = reader.ReadGuildList(); goto case 3; } case 3: { m_TypeLastChange = reader.ReadDateTime(); goto case 2; } case 2: { m_Type = (GuildType) reader.ReadInt(); goto case 1; } case 1: { m_LastFealty = reader.ReadDateTime(); goto case 0; } case 0: { m_Leader = reader.ReadMobile(); m_Name = reader.ReadString(); m_Abbreviation = reader.ReadString(); m_Allies = reader.ReadGuildList(); m_Enemies = reader.ReadGuildList(); m_WarDeclarations = reader.ReadGuildList(); m_WarInvitations = reader.ReadGuildList(); m_Members = reader.ReadMobileList(); m_Candidates = reader.ReadMobileList(); m_Accepted = reader.ReadMobileList(); m_Guildstone = reader.ReadItem(); m_Teleporter = reader.ReadItem(); m_Charter = reader.ReadString(); m_Website = reader.ReadString(); break; } } if ( m_AllyDeclarations == null ) { m_AllyDeclarations = new ArrayList(); } if ( m_AllyInvitations == null ) { m_AllyInvitations = new ArrayList(); } if ( m_WarInitializations == null ) { m_WarInitializations = new ArrayList(); } if ( WarTimer1 == null ) { WarTimer1 = new WarTimer(); WarTimer1.Start(); } if ( m_Guildstone == null || m_Members.Count == 0 ) { Timer.DelayCall( TimeSpan.Zero, new TimerCallback( Disband ) ); } }
public void FixGuilds() { m_AllianceName = ""; m_AllianceLeader = false; m_WarInitializations = new ArrayList(); ArrayList list = new ArrayList(); m_WarKills = (WarKillsItem[]) list.ToArray( typeof( WarKillsItem ) ); if ( WarTimer1 == null ) { WarTimer1 = new WarTimer(); WarTimer1.Start(); } }
public Guild( Mobile leader, string name, string abbreviation ) : base() { m_Leader = leader; m_Members = new ArrayList(); m_Allies = new ArrayList(); m_Enemies = new ArrayList(); m_WarDeclarations = new ArrayList(); m_WarInvitations = new ArrayList(); m_AllyDeclarations = new ArrayList(); m_AllyInvitations = new ArrayList(); m_Candidates = new ArrayList(); m_Accepted = new ArrayList(); m_LastFealty = DateTime.Now; m_Name = name; m_Abbreviation = abbreviation; m_AllianceName = ""; m_AllianceLeader = false; m_WarInitializations = new ArrayList(); ArrayList list = new ArrayList(); m_WarKills = (WarKillsItem[]) list.ToArray( typeof( WarKillsItem ) ); m_TypeLastChange = DateTime.MinValue; AddMember( m_Leader ); if ( WarTimer1 == null ) { WarTimer1 = new WarTimer(); WarTimer1.Start(); } }