Пример #1
0
        private SortedList <string, object> GetGamePrefs()
        {
            var sortedList = new SortedList <string, object>();

            var enumerator = Enum.GetValues(typeof(EnumGamePrefs)).GetEnumerator();

            while (enumerator.MoveNext())
            {
                if (enumerator.Current == null)
                {
                    continue;
                }

                var enumGamePrefs = (EnumGamePrefs)(int)enumerator.Current;
                if (!IsViewablePref(enumGamePrefs))
                {
                    continue;
                }

                try
                {
                    sortedList.Add(enumGamePrefs.ToString(), GamePrefs.GetObject(enumGamePrefs));
                }
                catch (Exception)
                {
                    //Log.Out("Exception getting object for " + enumGamePrefs);
                }
            }
            (enumerator as IDisposable)?.Dispose();

            sortedList.Add("ServerHostIP", BCUtils.GetIPAddress());

            return(sortedList);
        }
        public override void Run(string[] _params)
        {
            try {
                EnumGamePrefs enumGamePrefs = EnumGamePrefs.Last;

                if (_params.Length > 0)
                {
                    try {
                        enumGamePrefs = (EnumGamePrefs)((int)Enum.Parse(typeof(EnumGamePrefs), _params [0]));
                    } catch (Exception e) {
                        Log.Out("Error in GetGamePrefs.Run: " + e);
                    }
                }

                if (enumGamePrefs == EnumGamePrefs.Last)
                {
                    SortedList <string, string> sortedList = new SortedList <string, string> ();
                    foreach (EnumGamePrefs gp in Enum.GetValues(typeof(EnumGamePrefs)))
                    {
                        if ((_params.Length == 0) || (gp.ToString().ToLower().Contains(_params [0].ToLower())))
                        {
                            if (prefAccessAllowed(gp))
                            {
                                sortedList.Add(gp.ToString(), string.Format("{0} = {1}", gp.ToString(), GamePrefs.GetObject(gp)));
                            }
                        }
                    }
                    foreach (string s in sortedList.Keys)
                    {
                        m_Console.SendResult(sortedList [s]);
                    }
                }
                else
                {
                    if (prefAccessAllowed(enumGamePrefs))
                    {
                        m_Console.SendResult(string.Format("{0} = {1}", enumGamePrefs, GamePrefs.GetObject(enumGamePrefs)));
                    }
                    else
                    {
                        m_Console.SendResult("Je ne peux communiquer cette information.");
                    }
                }
            } catch (Exception e) {
                Log.Out("Error in GetGamePrefs.Run: " + e);
            }
        }