public void ShowPanel(WeaponPart part) { if (part == null) { Hide(); return; } RectTransform rt = GetComponent <RectTransform>(); rt.pivot = new Vector2(Input.mousePosition.x <= Screen.width / 2f ? 0 : 1, Input.mousePosition.y <= Screen.height / 2f ? 0 : 1); transform.position = Input.mousePosition; for (int i = 0; i < statsPanel.childCount; i++) { Destroy(statsPanel.GetChild(i).gameObject); } partName.text = part.name; partName.color = part.quality.color; partLevel.text = "LEVEL REQUIREMENT: " + part.level; partCost.text = "$" + part.price; partIcon.sprite = part.icon; foreach (var stat in part.stats) { switch (stat.statsType) { case StatsType.Base: AddStat(stat, part.GetStats(stat.stats)); break; case StatsType.Additive: AddStat(stat, part.GetStats(stat.stats)); break; case StatsType.Modifier: AddModifier(stat, part.GetStats(stat.stats)); break; default: break; } } }