Exemple #1
0
        public static WorldChatAccountEntry FindWorldChatAccountEntry(PlayerMobile player)
        {
            if (player == null)
            {
                return(null);
            }
            if (player.Account == null)
            {
                return(null);
            }

            string accountName = player.Account.Username;

            WorldChatAccountEntry WorldChatAccountEntry = null;

            foreach (WorldChatAccountEntry entry in m_WorldChatAccountEntries)
            {
                if (entry.m_AccountUsername == accountName && !entry.Deleted)
                {
                    WorldChatAccountEntry = entry;
                    break;
                }
            }

            return(WorldChatAccountEntry);
        }
Exemple #2
0
        public static void CreateWorldChatAccountEntry(PlayerMobile player)
        {
            if (player == null)
            {
                return;
            }
            if (player.Account == null)
            {
                return;
            }

            string accountName = player.Account.Username;

            WorldChatAccountEntry WorldChatAccountEntry = null;

            foreach (WorldChatAccountEntry entry in m_WorldChatAccountEntries)
            {
                if (entry.m_AccountUsername == accountName && !entry.Deleted)
                {
                    player.m_WorldChatAccountEntry = entry;
                    return;
                }
            }

            WorldChatAccountEntry newEntry = new WorldChatAccountEntry(accountName);

            Account account = player.Account as Account;

            if (account == null)
            {
                return;
            }
            if (account.accountMobiles == null)
            {
                return;
            }

            for (int a = 0; a < account.accountMobiles.Length; a++)
            {
                Mobile mobile = account.accountMobiles[a] as Mobile;

                if (mobile != null)
                {
                    PlayerMobile pm_Mobile = mobile as PlayerMobile;

                    if (pm_Mobile != null)
                    {
                        pm_Mobile.m_WorldChatAccountEntry = newEntry;
                    }
                }
            }
        }
Exemple #3
0
        public static void SortSquelchedPlayersByDate(WorldChatAccountEntry accountEntry)
        {
            List <PlayerSquelchEntry> m_TempEntries = new List <PlayerSquelchEntry>();

            foreach (PlayerSquelchEntry entry in accountEntry.m_PlayersSquelched)
            {
                m_TempEntries.Add(entry);
            }

            accountEntry.m_PlayersSquelched.Clear();

            for (int a = 0; a < m_TempEntries.Count; a++)
            {
                if (m_TempEntries[a].m_Player == null)
                {
                    continue;
                }
                if (m_TempEntries[a].m_Player.RawName == null)
                {
                    continue;
                }

                int index = -1;

                if (accountEntry.m_PlayersSquelched.Count > 0)
                {
                    index = 0;
                }

                for (int b = 0; b < accountEntry.m_PlayersSquelched.Count; b++)
                {
                    if (accountEntry.m_PlayersSquelched[b] == null)
                    {
                        continue;
                    }
                    if (accountEntry.m_PlayersSquelched[b].m_Player == null)
                    {
                        continue;
                    }

                    if (m_TempEntries[a].m_SquelchExpiration > accountEntry.m_PlayersSquelched[b].m_SquelchExpiration)
                    {
                        index = b + 1;
                    }
                }

                if (index == -1)
                {
                    accountEntry.m_PlayersSquelched.Add(m_TempEntries[a]);
                }

                else
                {
                    if (index >= accountEntry.m_PlayersSquelched.Count)
                    {
                        accountEntry.m_PlayersSquelched.Add(m_TempEntries[a]);
                    }
                    else
                    {
                        accountEntry.m_PlayersSquelched.Insert(index, m_TempEntries[a]);
                    }
                }
            }
        }
Exemple #4
0
        public static void SortSquelchedPlayersByName(WorldChatAccountEntry accountEntry)
        {
            List <PlayerSquelchEntry> m_TempEntries = new List <PlayerSquelchEntry>();

            foreach (PlayerSquelchEntry entry in accountEntry.m_PlayersSquelched)
            {
                m_TempEntries.Add(entry);
            }

            accountEntry.m_PlayersSquelched.Clear();

            for (int a = 0; a < m_TempEntries.Count; a++)
            {
                if (m_TempEntries[a].m_Player == null)
                {
                    continue;
                }
                if (m_TempEntries[a].m_Player.RawName == null)
                {
                    continue;
                }

                string tempPlayer = m_TempEntries[a].m_Player.RawName.ToLower();

                int index = -1;

                if (accountEntry.m_PlayersSquelched.Count > 0)
                {
                    index = 0;
                }

                for (int b = 0; b < accountEntry.m_PlayersSquelched.Count; b++)
                {
                    if (accountEntry.m_PlayersSquelched[b] == null)
                    {
                        continue;
                    }
                    if (accountEntry.m_PlayersSquelched[b].m_Player == null)
                    {
                        continue;
                    }

                    string squelchedPlayer = accountEntry.m_PlayersSquelched[b].m_Player.RawName.ToLower();

                    int compareValue = tempPlayer.CompareTo(squelchedPlayer);

                    if (compareValue > 0)
                    {
                        index = b + 1;
                    }
                }

                if (index == -1)
                {
                    accountEntry.m_PlayersSquelched.Add(m_TempEntries[a]);
                }

                else
                {
                    if (index >= accountEntry.m_PlayersSquelched.Count)
                    {
                        accountEntry.m_PlayersSquelched.Add(m_TempEntries[a]);
                    }
                    else
                    {
                        accountEntry.m_PlayersSquelched.Insert(index, m_TempEntries[a]);
                    }
                }
            }
        }