Пример #1
0
    public void OnItemClick(MainPage_Item item)
    {
        AudioManager.PlaySe("button");

        var param = new PicturePageParam();

        param.pageType = item.data.pageType;
        if (item.data.pageType == PicturePageType.Pictype)
        {
            param.picTypeId = item.data.row.Get <string>("id");
        }

        var rt   = item.GetComponent <RectTransform>();
        var rect = RectTransformUtil.GetWorldRect(rt);

        var admission = new Admission_ScaleUpNewPage(rect);

        UIEngine.Forward <PicturePage>(param, admission);

        HeadBarFloating.admission = new Admission_ScaleDownOldPage(rect);

        RadioStation.Brodcast("SELECT_PIC_TYPE");
    }
Пример #2
0
    void SetData(MainPage_Item item, MainPage_ItemData data)
    {
        // var sw = new Stopwatch();
        // sw.Start();

        item.data = data;
        item.gameObject.SetActive(data.visible);
        if (data.pageType == PicturePageType.Uncomplete)
        {
            uncompleteItem = item;
        }
        else if (data.pageType == PicturePageType.Complete)
        {
            completeItem = item;
        }
        if (!data.visible)
        {
            return;
        }

        // 如果是一个图片分类
        if (data.pageType == PicturePageType.Pictype)
        {
            item.label.text = data.row.Get <string>("display_name");
            var picType = data.row.Get <string>("id");
            var row     = PicLibrary.FindFirstRowOfType(picType);
            var file    = row?.Get <string>("file");
            var sprite  = PicLibrary.LoadContentSprite(file);
            item.Facade = sprite;

            item.name = data.row.TryGet <string>("id", "no_id");
            if (item.name == "animal")
            {
                animal = item;
            }
        }

        // 如果是未完成的拼图
        if (data.pageType == PicturePageType.Uncomplete)
        {
            item.label.text = "未完成";
            if (PlayerStatus.uncompletePuzzle.Count > 0)
            {
                var firstCoreInfo = PlayerStatus.FirstUncompletePuzzleInfo;
                var picId         = firstCoreInfo.picId;
                var picRow        = StaticDataLite.GetRow("pic", picId.ToString());
                var fileName      = picRow.Get <string>("file");
                var sprite        = PicLibrary.LoadContentSprite(fileName);
                item.Facade = sprite;
            }
        }

        // 如果是已完成的拼图
        if (data.pageType == PicturePageType.Complete)
        {
            item.label.text = "已完成";
            CompleteInfo firstInfo = null;
            foreach (var kv in PlayerStatus.completeDic)
            {
                firstInfo = kv.Value;
                break;
            }
            var picId    = firstInfo.pid;
            var picRow   = StaticDataLite.GetRow("pic", picId.ToString());
            var fileName = picRow.Get <string>("file");
            var sprite   = PicLibrary.LoadContentSprite(fileName);
            item.Facade = sprite;
        }


        // sw.Stop();
        // Debug.Log("set item: " + sw.Elapsed.TotalSeconds);
    }
Пример #3
0
 void PutItem(MainPage_Item item)
 {
     item.gameObject.SetActive(false);
     item.transform.parent = null;
     pool.Enqueue(item);
 }