public void UpdateElement(IVesselElement element) { if (element == null) { return; } vesselElementInterface = element; m_vesselName.OnTextUpdate.Invoke(element.VesselName); if (element.VesselIcon != m_vesselIcon.sprite) { m_vesselIcon.sprite = element.VesselIcon; } m_persistentThrustToggle.isOn = element.HasPersistentThrustActive; m_vesselInfoToggle.isOn = element.HasInfoWindowActive; m_vesselName.OnColorUpdate.Invoke(vesselElementInterface.IsVesselCommandable ? Color.white : Color.yellow); if (currentAutopilotMode != element.VesselAutopilotMode) { UpdateElementAutopilotInfo(element.VesselAutopilotMode); currentAutopilotMode = element.VesselAutopilotMode; } }
public void SetElement(IVesselElement element) { if (element == null) { return; } vesselElementInterface = element; if (element.VesselName != null) { m_vesselName.OnTextUpdate.Invoke(element.VesselName); } if (element.VesselIcon != null) { m_vesselIcon.sprite = element.VesselIcon; } m_persistentThrustToggle.isOn = element.HasPersistentThrustActive; m_vesselInfoToggle.isOn = element.HasInfoWindowActive; currentAutopilotMode = element.VesselAutopilotMode; if (goToButton != null && element.IsActiveVessel) { goToButton.enabled = false; } m_vesselName.OnColorUpdate.Invoke(vesselElementInterface.IsVesselCommandable ? Color.white : Color.yellow); UpdateElementAutopilotInfo(element.VesselAutopilotMode); }
public void RemoveVessel(IVesselElement elementInterface) { if (!vesselElements.ContainsKey(elementInterface.VesselId)) { return; } Destroy(vesselElements[elementInterface.VesselId].gameObject); }
private void AddVessel(IVesselElement elementInterface) { GameObject obj = Instantiate(m_VesselElementPrefab) as GameObject; if (obj == null) { return; } obj.transform.SetParent(m_VesselListTransform, false); VesselElement vElement = obj.GetComponent <VesselElement>(); if (vElement == null) { return; } vElement.SetElement(elementInterface); vElement.gameObject.SetActive(mainWindowInterface.IsVisible); vElement.m_infoToggle.group = m_infoToggleGroup; vesselElements.Add(elementInterface.VesselId, vElement); }
private void CreateVesselList(IList <IVesselElement> elements) { if (elements == null) { return; } if (m_VesselElementPrefab == null || m_VesselListTransform == null) { return; } for (int i = elements.Count - 1; i >= 0; i--) { IVesselElement e = elements[i]; if (e == null) { continue; } AddVessel(e); } }