示例#1
0
    public void initJson(string json)
    {
        // 优先使用热更新的代码
        if (ILRuntimeUtil.getInstance().checkDllClassHasFunc("TurntableDataScript_hotfix", "initJson"))
        {
            ILRuntimeUtil.getInstance().getAppDomain().Invoke("HotFix_Project.TurntableDataScript_hotfix", "initJson", null, json);
            return;
        }

        m_dataList.Clear();

        {
            JsonData jd = JsonMapper.ToObject(json);

            for (int i = 0; i < jd["turntable_list"].Count; i++)
            {
                int    id          = (int)jd["turntable_list"][i]["id"];
                string reward      = (string)jd["turntable_list"][i]["reward"];
                int    probability = (int)jd["turntable_list"][i]["probability"];
                bool   isHuiZhang  = (id < 50 ? false:true);

                TurntableData temp = new TurntableData(id, reward, probability, isHuiZhang);
                m_dataList.Add(temp);
            }
        }
    }
示例#2
0
    public TurntableData getDataById(int id)
    {
        TurntableData temp = null;

        for (int i = 0; i < m_dataList.Count; i++)
        {
            if (m_dataList[i].m_id == id)
            {
                temp = m_dataList[i];
                break;
            }
        }

        return(temp);
    }
    public void addTurntableBroadcast(string name, int reward_id)
    {
        // 优先使用热更新的代码
        if (ILRuntimeUtil.getInstance().checkDllClassHasFunc("TurntablePanelScript_hotfix", "addTurntableBroadcast"))
        {
            ILRuntimeUtil.getInstance().getAppDomain().Invoke("HotFix_Project.TurntablePanelScript_hotfix", "addTurntableBroadcast", null, name, reward_id);
            return;
        }

        try
        {
            TurntableBroadcastDataScript.getInstance().addData(name, reward_id);

            {
                m_ListViewScript.clear();
                for (int i = 0; i < TurntableBroadcastDataScript.getInstance().getTurntableBroadcastDataList().Count; i++)
                {
                    GameObject prefab = Resources.Load("Prefabs/UI/Item/Item_zhuanpan_guangbo") as GameObject;
                    GameObject obj    = MonoBehaviour.Instantiate(prefab);

                    {
                        TurntableBroadcastData temp = TurntableBroadcastDataScript.getInstance().getTurntableBroadcastDataList()[i];

                        TurntableData data = TurntableDataScript.getInstance().getDataById(temp.m_reward_id);
                        if (data != null)
                        {
                            string reward    = TurntableDataScript.getInstance().getDataById(temp.m_reward_id).m_reward;
                            int    prop_id   = CommonUtil.splitStr_Start(reward, ':');
                            int    prop_num  = CommonUtil.splitStr_End(reward, ':');
                            string prop_name = PropData.getInstance().getPropInfoById(prop_id).m_name;

                            string content = "恭喜" + temp.m_name + "获得" + prop_name + "*" + prop_num;
                            obj.transform.Find("Text").GetComponent <Text>().text = content;
                        }
                    }

                    m_ListViewScript.addItem(obj);
                }

                m_ListViewScript.addItemEnd();
            }
        }
        catch (Exception ex)
        {
            LogUtil.Log("addTurntableBroadcast异常----" + ex.Message);
        }
    }
    public void loadReward()
    {
        // 优先使用热更新的代码
        if (ILRuntimeUtil.getInstance().checkDllClassHasFunc("TurntablePanelScript_hotfix", "loadReward"))
        {
            ILRuntimeUtil.getInstance().getAppDomain().Invoke("HotFix_Project.TurntablePanelScript_hotfix", "loadReward", null, null);
            return;
        }

        m_rewardObj_list.Clear();

        for (int i = 0; i < TurntableDataScript.getInstance().getDataList().Count; i++)
        {
            GameObject obj = gameObject.transform.Find("Image_bg/Left/Reward/Item" + (i + 1).ToString()).gameObject;

            m_rewardObj_list.Add(obj);

            // 具体数据
            {
                TurntableData temp = TurntableDataScript.getInstance().getDataList()[i];

                int id = temp.m_id;
                obj.transform.name = id.ToString();

                string        reward = temp.m_reward;
                List <string> list   = new List <string>();
                CommonUtil.splitStr(reward, list, ':');
                int prop_id  = int.Parse(list[0]);
                int prop_num = int.Parse(list[1]);

                // 图标
                CommonUtil.setImageSprite(obj.transform.Find("Image_icon").GetComponent <Image>(), GameUtil.getPropIconPath(prop_id));

                // 数量
                obj.transform.Find("Text_num").GetComponent <Text>().text = prop_num.ToString();

                // 徽章角标
                if (temp.m_isHuiZhang)
                {
                    obj.transform.Find("Image_huizhangjiaobiao").localScale = new Vector3(1, 1, 1);
                }
            }
        }
    }