public override void OnSelect(TabButton tabButton) { CharacterData cData = m_client.CharData; m_charUi.charName.text = CharacterUI.FormatName(cData.firstname, cData.lastname); m_charUi.position.text = CharacterUI.FormatPos(cData.position); m_charUi.height.text = CharacterUI.FormatHeight(cData.height); m_charUi.weight.text = CharacterUI.FormatWeight(cData.weight); m_charUi.wingspan.text = CharacterUI.FormatHeight(cData.wingspan); // Uses reflection to set UI values for stats Type to = m_charUi.skillTexts.GetType(); Type from = cData.stats.GetType(); for (int i = 0; i < to.GetFields().Length; i++) { FieldInfo fTo = to.GetFields()[i]; FieldInfo fFrom = from.GetFields()[i]; if (fTo == null || fFrom == null) { continue; } Text t = (Text)fTo.GetValue(m_charUi.skillTexts); t.text = fFrom.GetValue(cData.stats).ToString(); } if (profileCam) { profileCam.gameObject.SetActive(true); } }