Beispiel #1
0
 /// <summary>
 /// 从缓冲区中读取书封面并刷新
 /// </summary>
 /// <param name="pCover"></param>
 public void RefreshPictures(BookCoverParams pCover)
 {
     if (pCover.coverModelSc is CoverContent)
     {
         CoverContent cc = (pCover.coverModelSc as CoverContent);
         cc.ConverPicture.texture = pCover.CoverImg;
         cc.LogoPicture.texture   = pCover.LogoImg;
         //rawImg.texture = pCover.LogoImg;
         //Debug.Log(pCover.coverModelSc.LogoPicture.transform.parent.parent.gameObject.name + "->" + pCover.coverModelSc.LogoPicture.transform.parent.gameObject.name + ":" + pCover.coverModelSc.LogoPicture.gameObject.name);
         for (int i = 0; i < cc.CoverMats.Length; i++)
         {
             cc.CoverMats[i].mainTexture = pCover.AsideImg;
         }
     }
     else if (pCover.coverModelSc is EditCoverContent)
     {
         EditCoverContent cc = (pCover.coverModelSc as EditCoverContent);
         cc.ConverPicture.texture = pCover.CoverImg;
         cc.LogoPicture.texture   = pCover.LogoImg;
         //rawImg.texture = pCover.LogoImg;
         //Debug.Log(pCover.coverModelSc.LogoPicture.transform.parent.parent.gameObject.name + "->" + pCover.coverModelSc.LogoPicture.transform.parent.gameObject.name + ":" + pCover.coverModelSc.LogoPicture.gameObject.name);
         for (int i = 0; i < cc.CoverMats.Length; i++)
         {
             cc.CoverMats[i].mainTexture = pCover.AsideImg;
         }
     }
     pCover.coverModelSc.gameObject.SetActive(true);
     pCover.SetActiveObj.SetActive(true);
 }
Beispiel #2
0
    public void Init(List <GameObject> models, List <GameObject> btnModels)
    {
        //Debug.Log("Model->Init.");
        ModelNumDic = new Dictionary <int, Content>();
        Content    cont;
        GameObject obj;

        for (int i = 0; i < models.Count; i++)
        {
            //Debug.Log(i + " == null " + (models[i] == null));
            obj = Instantiate(models[i], models[i].transform.position, models[i].transform.rotation) as GameObject;

            cont = obj.GetComponent <Content>();
            if (cont != null)
            {
                switch (modelType)
                {
                case ModelType.Cover:
                    break;

                case ModelType.Page:
                    break;

                case ModelType.Catalogue:
                    (cont as Catalogue).PageTab = PageTab;
                    break;
                }
                if (cont is EditCoverContent)
                {
                    EditCoverContent conte = cont as EditCoverContent;
                    conte.oPicButtonPrefab = oPicButtonPrefab;
                    conte.fPageWidth       = fPageWidth;
                    conte.fPageHeight      = fPageHeight;
                }
                else if (cont is EditContent)
                {
                    EditContent conte = cont as EditContent;
                    conte.oPicButtonPrefab = oPicButtonPrefab;
                    conte.oPicButtonPrefab = oPicButtonPrefab;
                    conte.fPageWidth       = fPageWidth;
                    conte.fPageHeight      = fPageHeight;
                }
                Debug.Log(":-=>" + cont.ModleNum);

                ModelNumDic.Add(cont.ModleNum, cont);
            }
            else
            {
                Exception ex = new Exception("Model:获取的Content脚本为空!");
                throw ex;
            }
        }

        transform.DetachChildren();
        if (TestCode)
        {
            for (int i = 0; i < Contents.Count; i++)
            {
                Contents[i].gameObject.transform.parent = transform;
                Contents[i].Init();
                RectTransform recf = Contents[i].gameObject.GetComponent <RectTransform>();
                recf.offsetMin  = Vector2.zero;
                recf.offsetMax  = Vector2.zero;
                recf.localScale = Vector3.one;
            }
        }
        else
        {
            foreach (Content con in ModelNumDic.Values)
            {
                con.gameObject.transform.parent = transform;
                con.Init();
                RectTransform recf = con.gameObject.GetComponent <RectTransform>();
                recf.offsetMin  = Vector2.zero;
                recf.offsetMax  = Vector2.zero;
                recf.localScale = Vector3.one;
            }
        }

        if (PageTabPar != null)
        {
            PageTabPar.transform.parent = transform;
            RectTransform rect = PageTabPar.GetComponent <RectTransform>();
            rect.anchorMin = Vector2.zero;
            rect.anchorMax = Vector2.one;
            rect.offsetMin = Vector2.zero;
            rect.offsetMax = Vector2.zero;
        }

        CreateModelBtn(btnModels);
    }
Beispiel #3
0
    public IEnumerator LoadPicture(BookCoverParams pBook)
    {
        WWW      www;
        bool     addFlg = true;
        RawImage img;

        Camera.main.GetComponent <MsgCenter_h>().TestText.text += "\nLoadPicture[Start]:";
        foreach (string item in pBook.bookCover.Items.Keys)
        {
            if (pBook.coverModelSc.Items.ContainsKey(item) && pBook.coverModelSc.Items[item].type == ItemType.RawImage)
            {
                www = new WWW(GetXml.Instances.LoadUrl + pBook.bookCover.Items[item].target as string);
                yield return(www);

                //Debug.Log(www.url);
                if (www.error == null && www.isDone)
                {
                    img         = pBook.coverModelSc.Items[item].target as RawImage;
                    img.texture = www.texture;
                    img.gameObject.SetActive(true);
                }
                else
                {
                    Debug.Log("err:" + www.error);
                    addFlg = false;
                }
                www.Dispose();
            }
        }

        if (string.IsNullOrEmpty(pBook.bookCover.FrontUrl))
        {
            for (int i = 0; i < 2; i++)
            {
                if (pBook.coverModelSc is CoverContent)
                {
                    (pBook.coverModelSc as CoverContent).CoverMats[i].mainTexture = DefualtCover2;
                }
                else if (pBook.coverModelSc is EditCoverContent)
                {
                    (pBook.coverModelSc as EditCoverContent).CoverMats[i].mainTexture = DefualtCover2;
                }
            }
        }
        else
        {
            www = new WWW(GetXml.Instances.LoadUrl + pBook.bookCover.FrontUrl);
            yield return(www);

            if (www.error == null && www.isDone)
            {
                for (int i = 0; i < 2; i++)
                {
                    if (pBook.coverModelSc is CoverContent)
                    {
                        (pBook.coverModelSc as CoverContent).CoverMats[i].mainTexture = www.texture;
                    }
                    else if (pBook.coverModelSc is EditCoverContent)
                    {
                        (pBook.coverModelSc as EditCoverContent).CoverMats[i].mainTexture = www.texture;
                    }
                }
                pBook.AsideImg = www.texture;
            }
            else
            {
                addFlg = false;
            }
            www.Dispose();
        }

        if (string.IsNullOrEmpty(pBook.bookCover.BehindUrl))
        {
            if (pBook.coverModelSc is CoverContent)
            {
                CoverContent cc = (pBook.coverModelSc as CoverContent);
                for (int i = 2; i < cc.CoverMats.Length; i++)
                {
                    cc.CoverMats[i].mainTexture = DefaultCover3;
                }
            }
            else if (pBook.coverModelSc is EditCoverContent)
            {
                EditCoverContent cc = (pBook.coverModelSc as EditCoverContent);
                for (int i = 2; i < cc.CoverMats.Length; i++)
                {
                    cc.CoverMats[i].mainTexture = DefaultCover3;
                }
            }
        }
        else
        {
            www = new WWW(GetXml.Instances.LoadUrl + pBook.bookCover.BehindUrl);
            yield return(www);

            if (www.error == null && www.isDone)
            {
                if (pBook.coverModelSc is CoverContent)
                {
                    CoverContent cc = (pBook.coverModelSc as CoverContent);
                    for (int i = 2; i < cc.CoverMats.Length; i++)
                    {
                        cc.CoverMats[i].mainTexture = www.texture;
                    }
                }
                else if (pBook.coverModelSc is EditCoverContent)
                {
                    EditCoverContent cc = (pBook.coverModelSc as EditCoverContent);
                    for (int i = 2; i < cc.CoverMats.Length; i++)
                    {
                        cc.CoverMats[i].mainTexture = www.texture;
                    }
                }
                pBook.AsideImg = www.texture;
            }
            else
            {
                addFlg = false;
            }
            www.Dispose();
        }


        if (addFlg && !_coverBuffer.ContainsKey(pBook.bookCover))
        {
            _coverBuffer.Add(pBook.bookCover, pBook);
        }

        pBook.coverModelSc.gameObject.SetActive(true);
        Camera.main.GetComponent <MsgCenter_h>().TestText.text += "\nLoadPicture[Cover]:over; pBook.SetActiveObj != null == " + (pBook.SetActiveObj != null);
        if (pBook.SetActiveObj != null)
        {
            pBook.SetActiveObj.SetActive(true);
        }
        pBook.SetActiveObj = BookRoot;
        _loadFlg           = false;
    }