コード例 #1
0
    private void SetRewardState(int index, AcitivityRewardState tagData)
    {
        if (GameManager.gameManager.PlayerDataPool.OnActivityRewardTable.ContainsKey(index))
        {
            ActivityRewardData rewardData = GameManager.gameManager.PlayerDataPool.OnActivityRewardTable[index];
            rewardData.State = AcitivityRewardState.RECEIVE;
            GameManager.gameManager.PlayerDataPool.OnActivityRewardTable[index] = rewardData;
        }

        if (m_ItemList.ContainsKey(index))
        {
            if (m_ItemList[index])
            {
                //对应的显示物品详细信息
                SpringRewardItem rewardItem = m_ItemList[index].GetComponent <SpringRewardItem>();
                if (rewardItem != null)
                {
                    rewardItem.SetShowState(tagData);

                    if (tagData == AcitivityRewardState.RECEIVE)
                    {
                        rewardItem.IsChoose = true;
                    }
                    else
                    {
                        rewardItem.IsChoose = false;
                    }
                }
            }
        }
    }
コード例 #2
0
    /// <summary>
    /// 请求获取奖励物品返回值
    /// </summary>
    /// <param name="index"></param>
    /// <param name="resultTag"></param>
    public void OnReceiveResult(int index, int resultTag)
    {
        if (resultTag == 1)
        {
            //同时修改客户端本地数据
            GameManager.gameManager.PlayerDataPool.ActivityRewardJoinNum++;
            SetShowBar();      //修改参与进度

            SetJoinNumState(); //参加次数状态显示

            if (GameManager.gameManager.PlayerDataPool.OnActivityRewardTable.ContainsKey(index))
            {
                ActivityRewardData rewardData = GameManager.gameManager.PlayerDataPool.OnActivityRewardTable[index];
                rewardData.State = AcitivityRewardState.NORECEIVE;
                GameManager.gameManager.PlayerDataPool.OnActivityRewardTable[index] = rewardData;
            }

            //将状态设置成 已领取状态
            if (m_ItemList != null && m_ItemList.ContainsKey(index))
            {
                GameObject curObject = m_ItemList[index];
                if (curObject == null)
                {
                    return;
                }

                SpringRewardItem rewardItem = curObject.GetComponent <SpringRewardItem>();
                if (rewardItem != null)
                {
                    rewardItem.m_RewardData.State = AcitivityRewardState.NORECEIVE;
                    rewardItem.SetShowState(rewardItem.m_RewardData.State);
                    rewardItem.IsChoose = false;
                }
            }

            GameManager.gameManager.PlayerDataPool.m_ActivityRewardIndex = -1;
            if (CurrentReceiveIndex == index)
            {
                CurrentReceiveIndex = -1;
                GameManager.gameManager.PlayerDataPool.m_IsActivityReward = false;

                if (FestivalController.Instance() != null)
                {
                    FestivalController.Instance().UpdateBaiNianTip();
                }
            }
        }
    }
コード例 #3
0
    /// <summary>
    /// 显示物品信息
    /// </summary>
    /// <param name="reward"></param>
    /// <param name="posX"></param>
    /// <param name="posY"></param>
    private void ShowActivityReward(ActivityRewardData reward, int posX, int posY)
    {
        if (m_ItemList.ContainsKey(reward.Index))
        {
            return;
        }

        //设置位置
        GameObject curItem = Utils.BindObjToParent(ActivityRewardItem, ShowListGrid);

        if (curItem == null)
        {
            return;
        }

        curItem.name = "Item" + reward.Index;
        curItem.transform.localPosition = new Vector3(posX, posY, 0);

        m_ItemList.Add(reward.Index, curItem);

        //对应的显示物品详细信息
        SpringRewardItem rewardItem = curItem.GetComponent <SpringRewardItem>();

        if (rewardItem != null)
        {
            rewardItem.SetRewardInfo(reward);

            //根据当时时间 进行对不,看有选中状态的物品没
            DateTime rewarDateTime = rewardItem.CurDateTime;
            TimeSpan timeSpan      = CurrentDateTime.Subtract(rewardItem.CurDateTime);
            if (timeSpan.Days == 0)
            {
                if (CurrentDateTime.ToString("yyyy-MM-dd") == rewarDateTime.ToString("yyyy-MM-dd") &&
                    reward.State == AcitivityRewardState.RECEIVE)
                {
                    rewardItem.IsChoose = true;
                    CurrentReceiveIndex = reward.Index;
                    GameManager.gameManager.PlayerDataPool.m_ActivityRewardIndex = reward.Index;
                    GameManager.gameManager.PlayerDataPool.m_IsActivityReward    = true;

                    if (FestivalController.Instance() != null)
                    {
                        FestivalController.Instance().UpdateBaiNianTip();
                    }
                }
            }
        }
    }