Ejemplo n.º 1
0
        public IEnumerator LoadFaceIcon(int characterId)
        {
            if (icon == null)
            {
                icon = this.GetComponent <Image>();
            }
            icon.color = new Color32(255, 255, 255, 1);
            while (FaceCacher.Instance.IsLoadingId(characterId))
            {
                yield return(new WaitForEndOfFrame());
            }
            App.Model.Scriptable.MFace mFace = FaceCacher.Instance.Get(characterId);
            if (mFace != null)
            {
                icon.sprite = Sprite.Create(mFace.image, new Rect(0, 0, mFace.image.width, mFace.image.height), Vector2.zero);
                icon.color  = new Color32(255, 255, 255, 255);
                yield break;
            }
            string url = string.Format(App.Model.Scriptable.FaceAsset.FaceUrl, characterId);

            FaceCacher.Instance.LoadingId(characterId);
            yield return(this.StartCoroutine(Global.SUser.Download(url, App.Util.Global.versions.face, (AssetBundle assetbundle) => {
                App.Model.Scriptable.FaceAsset.assetbundle = assetbundle;
                mFace = App.Model.Scriptable.FaceAsset.Data.face;
                icon.sprite = Sprite.Create(mFace.image, new Rect(0, 0, mFace.image.width, mFace.image.height), Vector2.zero);
                mFace.id = characterId;
                FaceCacher.Instance.Set(mFace);
                icon.color = new Color32(255, 255, 255, 255);
            })));
        }
Ejemplo n.º 2
0
        public IEnumerator LoadFaceIcon(int characterId)
        {
            if (icon == null)
            {
                icon = this.GetComponent <RawImage>();
            }
            while (FaceCacher.Instance.IsLoadingId(characterId))
            {
                yield return(new WaitForEndOfFrame());
            }
            App.Model.Scriptable.MFace mFace = FaceCacher.Instance.Get(characterId);
            if (mFace != null)
            {
                icon.texture = mFace.image as Texture;
                icon.uvRect  = mFace.rect;
                yield break;
            }
            string url = string.Format(App.Model.Scriptable.FaceAsset.FaceUrl, characterId);

            FaceCacher.Instance.LoadingId(characterId);
            yield return(this.StartCoroutine(Global.SUser.Download(url, App.Util.Global.versions.face, (AssetBundle assetbundle) => {
                App.Model.Scriptable.FaceAsset.assetbundle = assetbundle;
                mFace = App.Model.Scriptable.FaceAsset.Data.face;
                icon.texture = mFace.image as Texture;
                icon.uvRect = mFace.rect;
                mFace.id = characterId;
                FaceCacher.Instance.Set(mFace);
            }, true, false)));
        }