public void Fill(ExpoStandCompanyInfoSO companyInfoSo)
        {
            _currentCompanyInfo = companyInfoSo;

            _companyName.text   = companyInfoSo.CompanyName;
            _companyLogo.sprite = companyInfoSo.CompanyLogo;

            _visitSiteButton.SetActive(!string.IsNullOrEmpty(companyInfoSo.CompanyUrl));

            for (int i = 0; i < _companyCountryInfoParent.childCount; i++)
            {
                var child = _companyCountryInfoParent.GetChild(i);
                Destroy(child.gameObject);
            }

            foreach (var countryInfo in companyInfoSo.CompanyCountryInfos)
            {
                var country = Instantiate(_companyLinkPrefab, _companyCountryInfoParent);
                country.GetComponent <CompanyInfoLinkController>()?.SetData(countryInfo);
            }

            if (!_interactedCompanies.ContainsKey(companyInfoSo.CompanyId))
            {
                _interactedCompanies.Add(companyInfoSo.CompanyId, false);
            }
        }
Esempio n. 2
0
        private void AfterConnectedToPhoton()
        {
            _handle = _companyReference.LoadAssetAsync <ExpoStandCompanyInfoSO>();

            _handle.Completed += operationHandle =>
            {
                if (!operationHandle.IsValid())
                {
                    Debug.LogError("Could not load company Addressable");
                    return;
                }

                _currentRoom = ConferenceRoomManager.Instance.CurrentRoom;

                _companyInfo = operationHandle.Result;

                if (_companyInfo == null)
                {
                    gameObject.SetActive(false);
                    return;
                }

                LoadStandData(_companyInfo);
            };
        }
Esempio n. 3
0
        public void Fill(ExpoStandCompanyInfoSO companyInfoSo)
        {
            for (int i = 0; i < _linkHoldersParent.childCount; i++)
            {
                Transform child = _linkHoldersParent.GetChild(i);
                Destroy(child.gameObject);
            }

            foreach (CompanyLink link in companyInfoSo.CompanyLinks)
            {
                LinkHolder linkHolder = _linkHolders.FirstOrDefault(a => a.Type == link.Type);

                if (linkHolder != null)
                {
                    var obj = Instantiate(linkHolder.Prefab, _linkHoldersParent);
                    obj.GetComponent <LinkRow>().Fill(link);
                }
            }
        }
Esempio n. 4
0
        public void LoadStandData(ExpoStandCompanyInfoSO companyInfo)
        {
            _companyInfo = companyInfo;

            if (_triggerCollider != null)
            {
                _triggerCollider.enabled = true;
            }

            foreach (ExpoStandData expoStandData in _companyInfo.StandDatas)
            {
                var faceInfo = _facesHolders.FirstOrDefault(a => a.FaceId == expoStandData.FaceId);

                if (faceInfo == null)
                {
                    Debug.LogError($"Could not find face id: {expoStandData.FaceId}");
                    continue;
                }

                faceInfo.Television.SetCompanyId(_companyInfo.CompanyId);
                faceInfo.Television.SetFace(faceInfo.FaceType, expoStandData);
            }

            foreach (FacesHolder facesHolder in _facesHolders)
            {
                if (_companyInfo.CompanyLogo != null)
                {
                    facesHolder.Television.SetPlaceHolder(_companyInfo.CompanyLogo.texture);
                }
            }

            if (_logoRenderer != null)
            {
                _logoRenderer.materials[1].SetTexture("_BaseMap", _companyInfo.CompanyLogo.texture);
            }
        }