Пример #1
0
    /// <summary>
    /// 初始化星动之约任务数据
    /// </summary>
    private void InitStarActivityMission()
    {
        Debug.LogError("初始化星动之约活动数据");
        _starActivityMissions = new Dictionary <int, List <UserMissionVo> >();
        StarActivityNum       = 0;

        var isNew = IsNewStarActivity();

        Debug.LogError("isNew===>" + isNew);

        MissionTypePB type = isNew ? MissionTypePB.NewStarryCovenant : MissionTypePB.StarryCovenant;

        foreach (var t in UserMissionList)
        {
            if (t.MissionType == type)
            {
                StarActivityNum++;
                var day   = _missionBaseDataDict[t.MissionId].Extra.Days;
                var isKey = _starActivityMissions.ContainsKey(day);
                if (isKey == false)
                {
                    _starActivityMissions[day] = new List <UserMissionVo>();
                }

                if (!_starActivityMissions[day].Contains(t))
                {
                    _starActivityMissions[day].Add(t);
                }
            }
        }

        Debug.LogError("星动之约任务总数===>" + StarActivityNum);
    }
Пример #2
0
 public void InitData(MissionRulePB pb)
 {
     MissionId   = pb.MissionId;
     MissionName = pb.MissionName;
     MissionType = pb.MissionType;
     Award       = pb.Award.ToList();
     MissionDesc = pb.MissionDesc;
     JumpTo      = pb.JumpTo;
 }
Пример #3
0
        private void ReceiveActReward(MissionTypePB missionTypePb, int weight, PlayerPB playerPb)
        {
            _curPlayerPb = playerPb;
            var buffer = NetWorkManager.GetByteData(new MissionActivityAwardsReq()
            {
                MissionType = missionTypePb, Weight = weight, Player = playerPb
            });

            NetWorkManager.Instance.Send <MissionActivityAwardsRes>(CMD.MISSION_ACTIVITYAWARDS, buffer, OnReceiveRewardCallBack);
        }
Пример #4
0
//        private long _refreshTime;
//        private string refreshPoint = "6:00:00";

        public override void Start()
        {
            //获取用户任务的数据源
            EventDispatcher.AddEventListener <UserMissionVo>(EventConst.RecieveTaskReward, OnReceiveReward);
            EventDispatcher.AddEventListener(EventConst.BuyGoldSuccess, GetData);
            EventDispatcher.AddEventListener <string>(EventConst.JumpToCMD, JumpToOtherView);
            curMissionTypePb = MissionTypePB.Daily;
            _missionModel    = GlobalData.MissionModel;
            GetData();
            EventDispatcher.AddEventListener(EventConst.DailyRefresh6, RefershTask);
        }
Пример #5
0
        private void ReceiveActReward(MissionTypePB missionTypePb, int weight)
        {
            curMissionTypePb = missionTypePb;
            LoadingOverlay.Instance.Show();
            var buffer = NetWorkManager.GetByteData(new MissionActivityAwardsReq()
            {
                MissionType = missionTypePb, Weight = weight
            });

            NetWorkManager.Instance.Send <MissionActivityAwardsRes>(CMD.MISSION_ACTIVITYAWARDS, buffer,
                                                                    OnReceiveRewardCallBack);
        }
Пример #6
0
    /// <summary>
    /// 领取活跃奖励
    /// </summary>
    /// <param name="type"></param>
    /// <param name="weight"></param>
    private void GetActiveReward(MissionTypePB type, int weight)
    {
        LoadingOverlay.Instance.Show();
        MissionActivityAwardsReq req = new MissionActivityAwardsReq
        {
            MissionType = type,
            Weight      = weight
        };

        byte[] data = NetWorkManager.GetByteData(req);
        NetWorkManager.Instance.Send <MissionActivityAwardsRes>(CMD.MISSION_ACTIVITYAWARDS, data, OnGetActiveRewardCallBack);
    }
Пример #7
0
        public void  InitData(UserMissionPB userMissionPb)
        {
            UserId      = userMissionPb.UserId;
            MissionId   = userMissionPb.MissionId;
            MissionType = userMissionPb.MissionType;
            Status      = userMissionPb.Status;
            Progress    = userMissionPb.Progress;
            Finish      = userMissionPb.Finish;

            //遇到奇葩的排序要求直接给权重
            UpdateMissionPro(Status);
        }
Пример #8
0
    public List <MissionRulePB> GetMissionRulePBListByType(MissionTypePB type)
    {
        List <MissionRulePB> resRule = new List <MissionRulePB>();

        foreach (var v in _missionBaseDataDict)
        {
            if (type == v.Value.MissionType)
            {
                resRule.Add(v.Value);
            }
        }

        return(resRule);
    }
Пример #9
0
    public List <UserMissionVo> GetMissionListByType(MissionTypePB type)
    {
        List <UserMissionVo> TargetTask = new List <UserMissionVo>();

        foreach (var task in UserMissionList)
        {
            if (type == task.MissionType)
            {
                TargetTask.Add(task);
            }
        }

        return(TargetTask);
    }
Пример #10
0
        private void OnReceiveReward(UserMissionVo vo)
        {
            if (vo.Status == MissionStatusPB.StatusUnclaimed)
            {
                LoadingOverlay.Instance.Show();
//            Debug.LogError("StatusUnclaimed");
                curMissionTypePb = vo.MissionType;
                // Debug.LogError(vo.MissionId+" "+vo.MissionType);
                var buffer = NetWorkManager.GetByteData(new MissionAwardsReq()
                {
                    MissionId = vo.MissionId, MissionType = vo.MissionType
                });
                NetWorkManager.Instance.Send <MissionAwardsRes>(CMD.MISSION_AWARDS, buffer, OnGetAwardCallBack);
            }
        }
Пример #11
0
        /// <summary>
        /// 处理View消息
        /// </summary>
        /// <param name="message"></param>
        public override void OnMessage(Message message)
        {
            string name = message.Name;

            object[] body = message.Params;
            switch (name)
            {
            case MessageConst.CMD_TASK_RECEIVE_ACTREWARD:
                ReceiveActReward((MissionTypePB)body[0], (int)body[1]);
                break;

            case MessageConst.CMD_RECOREDSTATE:
                curMissionTypePb = (MissionTypePB)message.Body;
                break;
            }
        }
Пример #12
0
        public void ChangeViewState(MissionTypePB state)
        {
//        Debug.LogError(state);
            if (state == MissionTypePB.Daily)
            {
                _dailyTask.gameObject.Show();
                _weekTask.gameObject.Hide();
                SetDailyMissionInfo();
            }
            else
            {
                _dailyTask.gameObject.Hide();
                _weekTask.gameObject.Show();
                SetWeekMissionInfo();
            }
            SendMessage(new Message(MessageConst.CMD_RECOREDSTATE, state));
            //_taskTips.gameObject.SetActive(state == MissionTypePB.Daily);
        }