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); } } }