Esempio n. 1
0
 public RewardStageData(int id, int stage, List <LTShowItemData> awards, eReceiveState state)
 {
     this.Id           = id;
     this.Stage        = stage;
     this.Awards       = awards;
     this.ReceiveState = state;
 }
Esempio n. 2
0
 public RewardStageData(int id, int stage, LTShowItemData award, eReceiveState state = eReceiveState.cannot)
 {
     this.Id     = id;
     this.Stage  = stage;
     this.Awards = new List <LTShowItemData>();
     this.Awards.Add(award);
     this.ReceiveState = state;
 }
Esempio n. 3
0
        public bool UpdateChest()
        {
            int currAchievement = 0;

            DataLookupsCache.Instance.SearchIntByID("user_prize_data.taskacm.curr", out currAchievement);

            List <Hotfix_LT.Data.TimeLimitActivityStageTemplate> stages = Hotfix_LT.Data.EventTemplateManager.Instance.GetTimeLimitActivityStages(ActivityId);
            int stageCount = stages.Count;

            LTHotfixManager.GetManager <TaskManager>().CurrentIndex = GetCurrentStageIndex();
            if (LTHotfixManager.GetManager <TaskManager>().CurrentIndex <= -1 || LTHotfixManager.GetManager <TaskManager>().CurrentIndex >= stageCount)
            {
                EB.Debug.LogError("CurrentIndex <= -1 || CurrentIndex >= stageCount");
                return(false);
            }
            var currentStageData = stages[LTHotfixManager.GetManager <TaskManager>().CurrentIndex];
            int maxAchievement   = currentStageData.stage;

            List <LTShowItemData> itemDatas = new List <LTShowItemData>();

            for (int j = 0; j < currentStageData.reward_items.Count; ++j)
            {
                var            reward   = currentStageData.reward_items[j];
                string         id       = reward.id.ToString();
                int            count    = reward.quantity;
                string         type     = reward.type;
                LTShowItemData itemData = new LTShowItemData(id, count, type, false);
                itemDatas.Add(itemData);
            }

            bool received;

            DataLookupsCache.Instance.SearchDataByID <bool>("user_prize_data.taskacm_reward." + currentStageData.id, out received);
            eReceiveState state = eReceiveState.cannot;

            if (currAchievement >= currentStageData.stage)
            {
                if (received)
                {
                    state = eReceiveState.have;
                }
                else
                {
                    state = eReceiveState.can;
                }
            }
            m_Chest.SetUI(new RewardStageData(currentStageData.id, currentStageData.stage, itemDatas, state));

            LTUIUtil.SetText(m_ProgressLabel, string.Format("{0}/{1}", currAchievement, maxAchievement));
            m_AchievementProgressBar.value = currAchievement / (float)maxAchievement;
            m_ChestRoot.SetActive(true);

            return(true);
        }
Esempio n. 4
0
        void InitItems()
        {
            if (curIdc == LTWelfareModel.Instance.ComeBackLoginDayCount)
            {
                return;
            }
            curIdc        = LTWelfareModel.Instance.ComeBackLoginDayCount;
            DayLabel.text = string.Format(EB.Localizer.GetString("ID_WELFARE_QIRI_LEIJI"), curIdc);
            List <Hotfix_LT.Data.TimeLimitActivityStageTemplate> stages = Hotfix_LT.Data.EventTemplateManager.Instance.GetTimeLimitActivityStages(LTWelfareModel.ComeBackActivityID);

            for (int i = 0; i < Items.Count; ++i)
            {
                Hotfix_LT.Data.TimeLimitActivityStageTemplate data = FindStageTpl(stages, i + 1);
                List <LTShowItemData> itemDatas = new List <LTShowItemData>();
                eReceiveState         state     = eReceiveState.cannot;
                if (data != null && data.reward_items != null)
                {
                    for (int j = 0; j < data.reward_items.Count; j++)
                    {
                        string id    = data.reward_items[j].id.ToString();
                        int    count = data.reward_items[j].quantity;
                        string type  = data.reward_items[j].type;
                        itemDatas.Add(new LTShowItemData(id, count, type, false));
                    }
                    if (i + 1 <= curIdc)
                    {
                        if (GetReceiveState(i + 1))
                        {
                            state = eReceiveState.have;
                        }
                        else
                        {
                            state = eReceiveState.can;
                        }
                    }
                    else
                    {
                        state = eReceiveState.cannot;
                    }
                }
                Items[i].SetUI(new RewardStageData(data.id, i + 1, itemDatas, state), LTWelfareSevenDayAwardItem.ItemType.ComeBack);
            }
        }
Esempio n. 5
0
        public void UpdateChest(int currLiveness)
        {
            List <Hotfix_LT.Data.TimeLimitActivityStageTemplate> stages = LTLegionWarManager.Instance.GetQualityRewardList();
            int maxLiveness = LTLegionWarManager.Instance.MaxScore;

            for (int i = 0; i < stages.Count; ++i)
            {
                var stage = stages[i];
                List <LTShowItemData> itemDatas = new List <LTShowItemData>();
                for (int j = 0; j < stage.reward_items.Count; ++j)
                {
                    var            reward   = stage.reward_items[j];
                    string         id       = reward.id.ToString();
                    int            count    = reward.quantity;
                    string         type     = reward.type;
                    LTShowItemData itemData = new LTShowItemData(id, count, type, false);
                    itemDatas.Add(itemData);
                }

                bool received = false;
                received = LTLegionWarManager.Instance.QualifyEnemyList.awarScoreReward.Contains(stage.stage.ToString());
                eReceiveState rs = eReceiveState.cannot;
                if (currLiveness >= stage.stage)
                {
                    if (received)
                    {
                        rs = eReceiveState.have;
                    }
                    else
                    {
                        rs = eReceiveState.can;
                    }
                }
                if (m_Chests[i] != null)
                {
                    m_Chests[i].SetUI(new RewardStageData(stage.id, stage.stage, itemDatas, rs));
                }
                float x = length * ((float)stage.stage / (float)maxLiveness) + leftPos;
                m_Chests[i].Open.transform.parent.transform.localPosition = new Vector3(x, m_Chests[i].Open.transform.parent.transform.localPosition.y, 0);
            }
            m_CurrLivenessLabel.text    = m_CurrLivenessLabel.transform.GetChild(0).GetComponent <UILabel>().text = currLiveness.ToString();
            m_LivenessProgressBar.value = currLiveness / (float)maxLiveness;
        }
Esempio n. 6
0
        private void UpdateReceiveState(eReceiveState state)
        {
            switch (state)
            {
            case eReceiveState.cannot:
                FxObj.CustomSetActive(false);
                hasReceiveObj.CustomSetActive(false);
                Btn.gameObject.CustomSetActive(false);
                break;

            case eReceiveState.can:
                FxObj.CustomSetActive(true);
                hasReceiveObj.CustomSetActive(false);
                Btn.gameObject.CustomSetActive(true);
                break;

            case eReceiveState.have:
                FxObj.CustomSetActive(false);
                hasReceiveObj.CustomSetActive(true);
                Btn.gameObject.CustomSetActive(false);
                break;
            }
        }
Esempio n. 7
0
        public void UpdateReceiveState(eReceiveState state, bool isResignin = false)
        {
            switch (state)
            {
            case eReceiveState.cannot:
                FxObj.CustomSetActive(false);
                hasReceiveObj.CustomSetActive(false);
                Btn.gameObject.CustomSetActive(false);
                break;

            case eReceiveState.can:
                if (isResignin)
                {
                    TipObj.CustomSetActive(true);
                    FxObj.CustomSetActive(false);
                }
                else
                {
                    TipObj.CustomSetActive(LTWelfareDataManager.Instance.SignInData.IsSigned);
                    FxObj.CustomSetActive(true);
                    FxObj.GetComponent <ParticleSystemUIComponent>().Play();
                    FxObj.GetComponent <EffectClip>().Init();
                }
                hasReceiveObj.CustomSetActive(false);
                Btn.gameObject.CustomSetActive(true);
                break;

            case eReceiveState.have:
                TipObj.CustomSetActive(false);
                FxObj.CustomSetActive(false);
                hasReceiveObj.CustomSetActive(true);
                Btn.gameObject.CustomSetActive(false);
                BgSprite.spriteName = "Welfare_Qiandao_Di3";
                break;
            }
        }
Esempio n. 8
0
        public override void SetData(object netData)
        {
            base.SetData(netData);
            //
            Items = new List <LTWelfareSevenDayAwardItem>();
            DynamicMonoILR[] items = mDMono.transform.Find("GiftGrid").GetComponentsInChildren <DynamicMonoILR>();
            for (int i = 0; i < items.Length; i++)
            {
                LTWelfareSevenDayAwardItem temp = items[i]._ilrObject as LTWelfareSevenDayAwardItem;
                if (temp != null)
                {
                    Items.Add(temp);
                    temp.mDMono.gameObject.SetActive(false);
                }
            }
            //
            int ActivityId = EB.Dot.Integer("activity_id", netData, 0);
            //
            Hashtable activityData;

            DataLookupsCache.Instance.SearchDataByID("tl_acs." + ActivityId, out activityData);
            int LoginDayCount = EB.Dot.Integer("total", activityData, 0);
            //获取相应连续几日活动的配置数据
            List <Hotfix_LT.Data.TimeLimitActivityStageTemplate> stages = Hotfix_LT.Data.EventTemplateManager.Instance.GetTimeLimitActivityStages(ActivityId);

            for (int i = 0; i < Items.Count; ++i)
            {
                if (stages.Count > i)
                {
                    Hotfix_LT.Data.TimeLimitActivityStageTemplate data = FindStageTpl(stages, i + 1);
                    List <LTShowItemData> itemDatas = new List <LTShowItemData>();
                    eReceiveState         state     = eReceiveState.cannot;
                    if (data != null && data.reward_items != null)
                    {
                        for (int j = 0; j < data.reward_items.Count; j++)
                        {
                            string id    = data.reward_items[j].id.ToString();
                            int    count = data.reward_items[j].quantity;
                            string type  = data.reward_items[j].type;
                            itemDatas.Add(new LTShowItemData(id, count, type, false));
                        }
                        if (i + 1 <= LoginDayCount)
                        {
                            if (GetReceiveState(stages[i].id, activityData))
                            {
                                state = eReceiveState.have;
                            }
                            else
                            {
                                state = eReceiveState.can;
                            }
                        }
                        else
                        {
                            state = eReceiveState.cannot;
                        }
                    }
                    Items[i].SetUI(new RewardStageData(stages[i].id, stages[i].activity_id, stages[i].stage, itemDatas, state), LTWelfareSevenDayAwardItem.ItemType.Activity);
                    Items[i].mDMono.gameObject.SetActive(true);
                }
            }
            //GiftGrid.Reposition();
            SetItemsPos(stages.Count);
        }
Esempio n. 9
0
        public void UpdateReceiveState(eReceiveState rs)
        {
            StageData.ReceiveState = rs;
            switch (this.StageData.ReceiveState)
            {
            case eReceiveState.cannot:
            {
                UnOpen.CustomSetActive(true);
                Open.CustomSetActive(false);
                Light.CustomSetActive(false);
                TweenPosition tp = UnOpen.GetComponent <TweenPosition>();
                if (tp != null)
                {
                    UnOpen.transform.localPosition = OriginPos;
                }
                UnOpen.transform.localScale = Vector3.one;
                UITweener[] tws = UnOpen.GetComponents <UITweener>();
                for (int i = 0; i < tws.Length; i++)
                {
                    tws[i].enabled = false;
                }
            }
            break;

            case eReceiveState.have:
            {
                UnOpen.CustomSetActive(true);
                Open.CustomSetActive(true);
                Light.CustomSetActive(false);
                TweenPosition tp = UnOpen.GetComponent <TweenPosition>();
                if (tp != null)
                {
                    UnOpen.transform.localPosition = OriginPos;
                }
                UnOpen.transform.localScale = Vector3.one;
                UITweener[] tws = UnOpen.GetComponents <UITweener>();
                for (int i = 0; i < tws.Length; i++)
                {
                    tws[i].enabled = false;
                }
            }
            break;

            case eReceiveState.can:
            {
                UnOpen.CustomSetActive(true);
                Open.CustomSetActive(false);
                Light.CustomSetActive(true);
                TweenPosition tp = UnOpen.GetComponent <TweenPosition>();
                if (tp != null)
                {
                    tp.from.y = OriginPos.y;
                    tp.to.y   = tp.from.y + 21;
                }
                UITweener[] tws = UnOpen.GetComponents <UITweener>();
                for (int i = 0; i < tws.Length; i++)
                {
                    tws[i].ResetToBeginning();
                    tws[i].PlayForward();
                }
            }
            break;
            }
        }
Esempio n. 10
0
        public void UpdateChest()
        {
            int    currLiveness = 0;
            string key          = mTaskType == eTaskType.Normal?"user_prize_data.taskliveness.curr":"user_prize_data.taskweekliveness.curr";

            DataLookupsCache.Instance.SearchIntByID(key, out currLiveness);

            List <Hotfix_LT.Data.TimeLimitActivityStageTemplate> stages = Hotfix_LT.Data.EventTemplateManager.Instance.GetTimeLimitActivityStages(ActivityId);
            int maxLiveness = stages[stages.Count - 1].stage;

            for (int i = 0; i < stages.Count; ++i)
            {
                var stage = stages[i];
                List <LTShowItemData> itemDatas = new List <LTShowItemData>();
                for (int j = 0; j < stage.reward_items.Count; ++j)
                {
                    var    reward = stage.reward_items[j];
                    string id     = reward.id.ToString();
                    if (id.Equals("xp") && BalanceResourceUtil.GetUserLevel() >= Hotfix_LT.Data.CharacterTemplateManager.Instance.GetMaxPlayerLevel())
                    {
                        id = "poten-gold";
                    }
                    int            count    = reward.quantity;
                    string         type     = reward.type;
                    LTShowItemData itemData = new LTShowItemData(id, count, type, false);
                    itemDatas.Add(itemData);
                }

                bool received;
                key = mTaskType == eTaskType.Normal?"user_prize_data.taskliveness_reward.":"user_prize_data.taskliveness_week_reward.";
                DataLookupsCache.Instance.SearchDataByID <bool>(key + stage.id, out received);

                eReceiveState rs = eReceiveState.cannot;
                if (currLiveness >= stage.stage)
                {
                    if (received)
                    {
                        rs = eReceiveState.have;
                    }
                    else
                    {
                        rs = eReceiveState.can;
                    }
                }
                if (m_Chests[i] != null)
                {
                    m_Chests[i].SetUI(new RewardStageData(stage.id, stage.stage, itemDatas, rs));
                }
            }
            float chestY = m_Chests[0].Open.transform.parent.transform.position.y;

            for (int chestIndex = 0; chestIndex < stages.Count; ++chestIndex)
            {
                float x = m_ProgressBarLeftPos.position.x + (m_ProgressBarRightPos.position.x - m_ProgressBarLeftPos.position.x) * (float)m_Chests[chestIndex].StageData.Stage / m_Chests[stages.Count - 1].StageData.Stage;
                m_Chests[chestIndex].Open.transform.parent.transform.position = new Vector3(x, chestY, 0);
            }

            LTUIUtil.SetText(m_CurrLivenessLabel, currLiveness.ToString());
            m_LivenessProgressBar.value = currLiveness / (float)maxLiveness;

            //weekReward
            UpdateWeekReward();

            m_ChestRoot.CustomSetActive(true);
        }