public void Initialize(IVesselItem vessel)
        {
            if (vessel == null)
            {
                return;
            }

            _vesselInterface = vessel;

            if (m_Toggle != null)
            {
                m_Toggle.group = vessel.VesselToggleGroup;
            }

            if (m_NameText != null)
            {
                m_NameText.OnTextUpdate.Invoke(vessel.VesselName);
            }

            if (m_SituationText != null)
            {
                m_SituationText.OnTextUpdate.Invoke(vessel.VesselSituation);
            }

            if (m_InfoText != null)
            {
                m_InfoText.OnTextUpdate.Invoke(vessel.VesselInfo);
            }

            AssignVesselSprite(vessel.VesselImage);

            vessel.SetFullUI(this);
        }
Esempio n. 2
0
        private void OnWidgetSelected(TrackingStationWidget widget)
        {
            if (_TrackingGroups == null || _TrackingGroups.Count <= 0)
            {
                return;
            }

            if (widget == null)
            {
                return;
            }
            else if (widget.vessel == null)
            {
                return;
            }

            for (int i = _TrackingGroups.Count - 1; i >= 0; i--)
            {
                IVesselItem vessel = _TrackingGroups[i].FindVessel(widget.vessel);

                if (vessel != null)
                {
                    vessel.OnVesselSelect();
                    break;
                }
            }
        }
        private void AddVessel(IVesselItem vessel, bool last)
        {
            if (vessel == null)
            {
                return;
            }

            VesselItem obj = Instantiate(m_VesselPrefab);

            obj.transform.SetParent(m_VesselGroup, false);
            obj.Initialize(vessel, last);

            _vesselList.Add(obj);
        }
        public void Initialize(IVesselItem vessel, bool last, bool final)
        {
            if (vessel == null)
            {
                return;
            }

            _vesselInterface = vessel;

            if (m_Toggle != null)
            {
                m_Toggle.group = vessel.VesselToggleGroup;
            }

            if (m_NameText != null)
            {
                m_NameText.OnTextUpdate.Invoke(vessel.VesselName);
            }

            if (m_SituationText != null)
            {
                m_SituationText.OnTextUpdate.Invoke(vessel.VesselSituation);
            }

            if (m_InfoText != null)
            {
                m_InfoText.OnTextUpdate.Invoke(vessel.VesselInfo);
            }

            if (m_ConnectorIcon != null)
            {
                m_ConnectorIcon.sprite = last ? m_EndConnector : m_DoubleConnector;
            }

            if (final && m_ByConnectorIcon != null)
            {
                m_ByConnectorIcon.gameObject.SetActive(false);
            }

            AssignVesselSprite(vessel.VesselImage);

            vessel.SetSubUI(this);
        }
        public IVesselItem FindVessel(Vessel vessel)
        {
            for (int i = _vessels.Count - 1; i >= 0; i--)
            {
                if (((Tracking_Vessel)_vessels[i]).Vessel == vessel)
                {
                    return(_vessels[i]);
                }
            }

            for (int i = _subGroups.Count - 1; i >= 0; i--)
            {
                IVesselItem v = ((Tracking_SubGroup)_subGroups[i]).FindVessel(vessel);

                if (v != null)
                {
                    return(v);
                }
            }

            return(null);
        }