예제 #1
0
        // 显示发布展开界面
        public void OnShowUnfoldPublishWnd(long llContactID)
        {
            List <Task_List_Node> listTask = LogicDataCenter.taskDataManager.ListTaskData;

            if (listTask == null)
            {
                return;
            }
            int nIndex = listTask.FindIndex(item => item.llContactID == llContactID);

            if (nIndex < 0)
            {
                return;
            }
            m_unfoldTask = listTask[nIndex];

            // 更新显示
            UpdateUnfoldWndView();
        }
예제 #2
0
        public void SetData()
        {
            List <Task_List_Node> listTask = LogicDataCenter.taskDataManager.ListTaskData;

            if (listTask == null)
            {
                return;
            }
            int nIndex = listTask.FindIndex(item => item.nTaskType == (int)ENTASK_TYPE.ENTASK_TYPE_RANK);

            if (nIndex < 0 || listTask[nIndex].nTaskState == (int)Task_State_Type.TaskStateType_End)
            {
                TaskDesc.text       = "周任务全部完成";
                GetBtn.interactable = false;
                return;
            }

            Task_List_Node task = listTask[nIndex];

            m_nTaskID = task.nTaskID;

            string strTaskDesc = String.Format("参加<color=#ffca27>{0}</color>场领取", task.szHit);

            UBB.toHtml(ref strTaskDesc);
            TaskDesc.text = strTaskDesc;

            GetBtnDesc.text = "领取";

            GetBtn.interactable = (task.nTaskState == (int)Task_State_Type.TaskStateType_Finish);

            string strTip = ULocalizationService.Instance.Get("UIView", "RankSeason", "TaskTip");

            UBB.toHtml(ref strTip);
            Trigger.SetText(UTooltipParamName.BodyText, strTip);

            string strPrizeTip = task.szDescription;

            UBB.toHtml(ref strPrizeTip);
            PrizeTip.SetText(UTooltipParamName.BodyText, strPrizeTip);
        }
예제 #3
0
        // 设置显示
        public void SetData(Task_List_Node node)
        {
            m_nTaskID     = node.nTaskID;
            m_llContactID = node.llContactID;
            m_nTaskState  = node.nTaskState;
            // 图标
            if (node.nTaskID <= 0)
            {
                NormalIcon.sprite = USpriteManager.Instance.GetSprite(USpriteManager.ESpriteType.EST_Task, "chat_normal", WndID.WND_ID_TASK_MAIN);
                SelectIcon.sprite = USpriteManager.Instance.GetSprite(USpriteManager.ESpriteType.EST_Task, "chat_select", WndID.WND_ID_TASK_MAIN);
            }
            else
            {
                int nTaskLevel = TaskConfig.Instance.GetTaskLevel(node.nTaskID, node.nTaskType, node.nTaskSubType, node.nTaskSpecificType);
                if (nTaskLevel == (int)Task_Level.Level_3)
                {
                    if (node.nTaskType == (int)ENTASK_TYPE.ENTASK_TYPE_CONTACT)
                    {
                        NormalIcon.sprite = USpriteManager.Instance.GetSprite(USpriteManager.ESpriteType.EST_Task, "subType_gold_normal_" + node.nTaskSubType, WndID.WND_ID_TASK_MAIN);
                        SelectIcon.sprite = USpriteManager.Instance.GetSprite(USpriteManager.ESpriteType.EST_Task, "subType_gold_select_" + node.nTaskSubType, WndID.WND_ID_TASK_MAIN);
                    }
                    else
                    {
                        NormalIcon.sprite = USpriteManager.Instance.GetSprite(USpriteManager.ESpriteType.EST_Task, "type_gold_normal_" + node.nTaskType, WndID.WND_ID_TASK_MAIN);
                        SelectIcon.sprite = USpriteManager.Instance.GetSprite(USpriteManager.ESpriteType.EST_Task, "type_gold_select_" + node.nTaskType, WndID.WND_ID_TASK_MAIN);
                    }
                }
                else
                {
                    if (node.nTaskType == (int)ENTASK_TYPE.ENTASK_TYPE_CONTACT)
                    {
                        NormalIcon.sprite = USpriteManager.Instance.GetSprite(USpriteManager.ESpriteType.EST_Task, "subType_normal_" + node.nTaskSubType, WndID.WND_ID_TASK_MAIN);
                        SelectIcon.sprite = USpriteManager.Instance.GetSprite(USpriteManager.ESpriteType.EST_Task, "subType_select_" + node.nTaskSubType, WndID.WND_ID_TASK_MAIN);
                    }
                    else
                    {
                        NormalIcon.sprite = USpriteManager.Instance.GetSprite(USpriteManager.ESpriteType.EST_Task, "type_normal_" + node.nTaskType, WndID.WND_ID_TASK_MAIN);
                        SelectIcon.sprite = USpriteManager.Instance.GetSprite(USpriteManager.ESpriteType.EST_Task, "type_select_" + node.nTaskType, WndID.WND_ID_TASK_MAIN);
                    }
                }
            }
            SelectIcon.gameObject.SetActive(false);
            // 描述
            TaskDesc.color = UDefines.CommomColor(ECommonColor.ECC_Blue1);
            if (node.nTaskID <= 0)
            {
                DateTime publishTime = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Unspecified).AddSeconds(node.nPublishTime);
                publishTime = publishTime.ToLocalTime();
                int nGapTime = node.nServerTime - node.nPublishTime;
                if (nGapTime < 60)//1分钟
                {
                    TaskDesc.text = String.Format("{0}秒前", nGapTime);
                }
                else if (nGapTime < 3600)//1小时
                {
                    TaskDesc.text = String.Format("{0}分钟前", nGapTime / 60);
                }
                else if (nGapTime < 24 * 3600)//1天
                {
                    TaskDesc.text = String.Format("{0}小时前", nGapTime / 3600);
                }
                else if (nGapTime < 2 * 24 * 3600)//2天
                {
                    TaskDesc.text = String.Format("昨天");
                }
                else if (nGapTime < 3 * 24 * 3600)//3天
                {
                    TaskDesc.text = String.Format("前天");
                }
                else
                {
                    TaskDesc.text = String.Format("{0}-{1}-{2}", publishTime.Year, publishTime.Month, publishTime.Day);
                }
            }
            else if (node.nTaskState == (int)Task_State_Type.TaskStateType_End)// 设置首胜,特殊处理
            {
                int nRemianTime = LogicDataCenter.taskDataManager.FirstWinRemainTime;
                int nHour       = nRemianTime / 3600;
                int nMin        = nRemianTime % 3600 / 60;
                TaskDesc.text       = String.Format("{0}{1:D2}:{2:D2}", ULocalizationService.Instance.Get("UIView", "Task", "FirstWinRemainDesc"), nHour, nMin);
                m_fFirstWinCoolTime = Time.unscaledTime;
            }
            else if (node.nTaskState == (int)Task_State_Type.TaskStateType_Finish)
            {
                TaskDesc.text  = ULocalizationService.Instance.Get("UIView", "Common", "Finish");
                TaskDesc.color = UDefines.CommomColor(ECommonColor.ECC_Green2);
            }
            else
            {
                TaskDesc.text = String.IsNullOrEmpty(node.szHit) ? "(0/1)" : node.szHit;
            }
            // 回复数
            ReplyCountDesc.text = node.listReply.Count.ToString();
            ReplyCountDesc.gameObject.SetActive(node.nTaskID <= 0);
            // 红点
            OnUpdateRedTip();
            // 光效
            if (node.nTaskID > 0 && node.nTaskState == (int)Task_State_Type.TaskStateType_Finish)
            {
                if (finishParam == null)
                {
                    finishParam = new UEffectPrefabParam(_eType: UEffectPrefabType.UEPT_TaskMain_FinishState, _tfAttachParent: attachPoint, _bAutoDestroy: false);
                    UEffectManager.Instance.CreateEffect(UEffectType.UET_EffectPrefab, ref finishParam);
                }
            }
            else
            {
                if (finishParam != null)
                {
                    UEffectManager.Instance.DestroyEffect(UEffectType.UET_EffectPrefab, ref finishParam);
                    finishParam = null;
                }
            }

            this.gameObject.SetActive(true);
        }