Example #1
0
        public void GetEquip(List <string> buffer, int section, bool clear = false)
        {
            if (buffer.Count > 0)
            {
                buffer.Clear();
            }

            switch (section)
            {
            case 5:
                Weapons.ForEach(x => buffer.Add(x.ToString()));
                break;

            case 6:
                Skins.ForEach(x => buffer.Add(x.ToString()));
                break;

            case 7:
                Hats.ForEach(x => buffer.Add(x.ToString()));
                break;

            case 8:
                Perks.ForEach(x => buffer.Add(x.ToString()));
                break;

            case 9:
                Items.ForEach(x => buffer.Add(x.ToString()));
                break;
            }

            int  min;
            int  max;
            Type enm;

            GetEqInfo(section, out min, out max, out enm);

            int sz = max - min;

            if (sz < 0 || enm == null)
            {
                return;
            }

            if (buffer == m_ReusableBuffer || clear)
            {
                buffer.Clear();
            }

            for (int i = 0; i <= sz; i++)
            {
                int    eidx = Equip[min + i];
                string str  = eidx != EQP_NONE?Enum.GetName(enm, Equip[min + i]) : "None";

                if (str != null && !buffer.Contains(str))
                {
                    buffer.Add(str);
                }
            }
        }