private void SetToggleBGImage(KToggle toggle, Tag elem) { if ((Object)toggle == (Object)selectedToggle) { toggle.GetComponentsInChildren <Image>()[1].material = GlobalResources.Instance().AnimUIMaterial; toggle.GetComponent <ImageToggleState>().SetActive(); } else if (WorldInventory.Instance.GetAmount(elem) >= activeMass || DebugHandler.InstantBuildMode || Game.Instance.SandboxModeActive) { toggle.GetComponentsInChildren <Image>()[1].material = GlobalResources.Instance().AnimUIMaterial; toggle.GetComponentsInChildren <Image>()[1].color = Color.white; toggle.GetComponent <ImageToggleState>().SetInactive(); } else { toggle.GetComponentsInChildren <Image>()[1].material = GlobalResources.Instance().AnimMaterialUIDesaturated; toggle.GetComponentsInChildren <Image>()[1].color = new Color(1f, 1f, 1f, 0.6f); if (!AllowInsufficientMaterialBuild()) { toggle.GetComponent <ImageToggleState>().SetDisabled(); } } }
private void RefreshButtons() { foreach (KToggle toggle in toggles) { if ((Object)toggle != (Object)null) { Object.Destroy(toggle.gameObject); } } toggles.Clear(); if (this.toggleInfo != null) { Transform parent = (!((Object)toggleParent != (Object)null)) ? base.transform : toggleParent; for (int i = 0; i < this.toggleInfo.Count; i++) { int idx = i; ToggleInfo toggleInfo = this.toggleInfo[i]; if (toggleInfo == null) { toggles.Add(null); } else { KToggle kToggle = Object.Instantiate(prefab, Vector3.zero, Quaternion.identity); kToggle.gameObject.name = "Toggle:" + toggleInfo.text; kToggle.transform.SetParent(parent, false); kToggle.group = group; kToggle.onClick += delegate { OnClick(idx); }; Text text = kToggle.GetComponentsInChildren <Text>(true)[0]; text.text = toggleInfo.text; toggleInfo.toggle = kToggle; toggles.Add(kToggle); } } } }