少年修仙传客户端代码仓库
client_Wu Xijin
2018-09-07 9c9dbd70fc61c18111802c43550b8bc02ae0e820
3243  【开发】开服限时活动定制
5个文件已修改
195 ■■■■ 已修改文件
System/DailyQuest/DailyQuestBehaviour.cs 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/DailyQuest/DailyQuestModel.cs 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DungeonModel.cs 43 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/SystemSetting/SetPrivateModel.cs 112 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Team/TeamTargetJoinLimitWin.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/DailyQuest/DailyQuestBehaviour.cs
@@ -197,8 +197,7 @@
            m_Locked.gameObject.SetActive(state == DailyQuestModel.DailyQuestState.Locked);
            m_UnLockCondition.gameObject.SetActive(state == DailyQuestModel.DailyQuestState.Locked);
            m_Supplementary.gameObject.SetActive(state == DailyQuestModel.DailyQuestState.ServerForbid
                || state == DailyQuestModel.DailyQuestState.OutTime);
            m_Supplementary.gameObject.SetActive(state == DailyQuestModel.DailyQuestState.OutTime);
            m_PracticePoint.gameObject.SetActive(state == DailyQuestModel.DailyQuestState.Normal || state == DailyQuestModel.DailyQuestState.CanBuyTimes);
            m_AssistPoint.gameObject.SetActive(state == DailyQuestModel.DailyQuestState.Completed);
@@ -209,24 +208,6 @@
            {
                case DailyQuestModel.DailyQuestState.Locked:
                    m_UnLockCondition.text = DailyQuestModel.GetDailyQuestUnLockDescription(data.id);
                    break;
                case DailyQuestModel.DailyQuestState.ServerForbid:
                    DailyQuestOpenTime openTime1;
                    if (model.TryGetOpenTime(data.id, out openTime1))
                    {
                        if (openTime1.openServerWeek > 0)
                        {
                            m_Supplementary.text = Language.Get("DailyQuest_ThatWeek", openTime1.openServerWeek);
                        }
                        else
                        {
                            m_Supplementary.text = Language.Get("DailyQuest_Day", openTime1.openServerDay);
                        }
                    }
                    else
                    {
                        m_Supplementary.text = "";
                    }
                    break;
                case DailyQuestModel.DailyQuestState.OutTime:
                    DailyQuestOpenTime openTime2;
System/DailyQuest/DailyQuestModel.cs
@@ -744,9 +744,9 @@
                    return 1;
                }
                var dayOfWeek = (int)DateTime.Now.DayOfWeek;
                var isActiveDay1 = openTime1.always || openTime1.openTimes.ContainsKey(dayOfWeek);
                var isActiveDay2 = openTime2.always || openTime2.openTimes.ContainsKey(dayOfWeek);
                var dayOfWeek = (int)TimeUtility.ServerNow.DayOfWeek;
                var isActiveDay1 = openTime1.always || openTime1.GetHourMinuteByWeek(dayOfWeek) != null;
                var isActiveDay2 = openTime2.always || openTime2.GetHourMinuteByWeek(dayOfWeek) != null;
                if (isActiveDay1 && !isActiveDay2)
                {
@@ -823,12 +823,6 @@
            DailyQuestOpenTime openTime;
            if (TryGetOpenTime(_dailyQuestId, out openTime))
            {
                var validServerTime = openTime.IsValidServerOpenTime();
                if (!validServerTime)
                {
                    return DailyQuestState.ServerForbid;
                }
                var inOpenTime = openTime.InOpenTime();
                if (!inOpenTime)
                {
@@ -1029,7 +1023,6 @@
        public enum DailyQuestState
        {
            Locked = 0,
            ServerForbid = 1,
            OutTime = 2,
            Normal = 3,
            CanBuyTimes = 5,
System/Dungeon/DungeonModel.cs
@@ -41,54 +41,65 @@
        List<Item> sweepResultItems = new List<Item>();
        int m_SweepDungeonTypeBuf = 0;
        public int sweepDungeonTypeBuf {
        public int sweepDungeonTypeBuf
        {
            get { return m_SweepDungeonTypeBuf; }
        }
        Dungeon m_SelectedTrialDungeon;
        public Dungeon selectedTrialDungeon {
        public Dungeon selectedTrialDungeon
        {
            get { return m_SelectedTrialDungeon; }
            set { m_SelectedTrialDungeon = value; }
        }
        Dungeon m_CurrentDungeon;
        public Dungeon currentDungeon {
        public Dungeon currentDungeon
        {
            get { return m_CurrentDungeon; }
            set { m_CurrentDungeon = value; }
        }
        int m_DungeonGrade = 0;
        public int dungeonGrade {
        public int dungeonGrade
        {
            get { return m_DungeonGrade; }
        }
        DungeonMissionData m_Mission;
        public DungeonMissionData mission {
        public DungeonMissionData mission
        {
            get { return m_Mission; }
        }
        DungeonResult m_DungeonResult;
        public DungeonResult dungeonResult {
        public DungeonResult dungeonResult
        {
            get { return m_DungeonResult; }
            set { m_DungeonResult = value; }
        }
        public int dungeonCoinInspireCount {
        public int dungeonCoinInspireCount
        {
            get; private set;
        }
        public int dungeonJadeInspireCount {
        public int dungeonJadeInspireCount
        {
            get; private set;
        }
        public int dungeonInspireUper {
        public int dungeonInspireUper
        {
            get; private set;
        }
        Dungeon m_SelectedKylinDungeon;
        public Dungeon selectedKylinDungeon {
        public Dungeon selectedKylinDungeon
        {
            get { return m_SelectedKylinDungeon; }
            set {
            set
            {
                if (m_SelectedKylinDungeon != value)
                {
                    m_SelectedKylinDungeon = value;
@@ -109,9 +120,11 @@
        public bool gradeTween = true;
        DungeonFightStage m_DungeonFightStage = DungeonFightStage.None;
        public DungeonFightStage dungeonFightStage {
        public DungeonFightStage dungeonFightStage
        {
            get { return m_DungeonFightStage; }
            set {
            set
            {
                if (m_DungeonFightStage != value)
                {
                    m_DungeonFightStage = value;
@@ -1334,7 +1347,9 @@
                if (!dungeonOpenTimes.ContainsKey(config.DataMapID))
                {
                    dungeonOpenTimes[config.DataMapID] = new DailyQuestOpenTime(config.DataMapID, DungeonStateTimeConfig.DungeonStateCanEnterFB(config.DataMapID));
                    var openTime = dungeonOpenTimes[config.DataMapID] = new DailyQuestOpenTime(config.DataMapID);
                    openTime.ParseDungeonNormalOpenTimes(DungeonStateTimeConfig.DungeonStateCanEnterFB(config.DataMapID));
                    //还有定制日期
                }
            }
System/SystemSetting/SetPrivateModel.cs
@@ -28,7 +28,7 @@
            hangUpPushlist.Add((int)PushNotifyType.PrivateChat);
            hangUpPushlist.Add((int)PushNotifyType.TJDead);
            hangUpPushlist.Add((int)PushNotifyType.TJWGTimeNoEnough);
        }
        public void OnBeforePlayerDataInitialize()
@@ -54,7 +54,7 @@
        public override void UnInit()
        {
        }
        public void SetActivityPushKey()
@@ -73,13 +73,17 @@
        {
            DailyQuestOpenTime dailyQuestOpenTime;
            dailyModel.TryGetOpenTime(dailyId, out dailyQuestOpenTime);
            foreach (var weekday in dailyQuestOpenTime.openTimes.Keys)
            for (int i = 0; i < 7; i++)
            {
                List<HourMinute> hourMinutelist = dailyQuestOpenTime.openTimes[weekday];
                for (int i = 0; i < hourMinutelist.Count; i++)
                var hourMinutelist = dailyQuestOpenTime.GetHourMinuteByWeek(i);
                if (hourMinutelist != null)
                {
                    string key = StringUtility.Contact(dailyId,weekday,hourMinutelist[i].hourBegin);
                    keylist.Add(key);
                    for (int j = 0; j < hourMinutelist.Count; j++)
                    {
                        var key = StringUtility.Contact(dailyId, i, hourMinutelist[i].hourBegin);
                        keylist.Add(key);
                    }
                }
            }
        }
@@ -165,7 +169,7 @@
        public void RemoveActivityPushByKey(int dailyId, string pushKey)
        {
            if(pushAtcivityKeyDict[dailyId].Contains(pushKey))
            if (pushAtcivityKeyDict[dailyId].Contains(pushKey))
            {
                SDKUtility.Instance.GeTui_RemoveLocalMessage(pushKey);
            }
@@ -190,10 +194,10 @@
            string content = Language.Get("SetUpPrivate102", UIHelper.ServerStringTrim(PlayerDatas.Instance.baseData.PlayerName).TrimEnd(), config.Title);
            List<JsonData> pushNotifylist = new List<JsonData>();
            List<string> pushKeylist = null;
            List<int> pushNotifyTimelist = GetPushNotifyTime(dailyId,out pushKeylist);
            List<int> pushNotifyTimelist = GetPushNotifyTime(dailyId, out pushKeylist);
            for (int i = 0; i < pushNotifyTimelist.Count; i++)
            {
                if(i < pushKeylist.Count)
                if (i < pushKeylist.Count)
                {
                    JsonData _params = new JsonData();
                    _params["code"] = 2005;
@@ -213,46 +217,52 @@
            return pushNotifylist;
        }
        private List<int> GetPushNotifyTime(int dailyId,out List<string> pushKey)
        private List<int> GetPushNotifyTime(int dailyId, out List<string> pushKey)
        {
            List<int> pushDelaySecond = new List<int>();
            pushKey = new List<string>();
            DailyQuestOpenTime dailyQuestOpenTime;
            dailyModel.TryGetOpenTime(dailyId, out dailyQuestOpenTime);
            foreach (var weekday in dailyQuestOpenTime.openTimes.Keys)
            for (int weekDay = 0; weekDay < 7; weekDay++)
            {
                int day = weekday > 0 ? weekday : 7;
                int curDay = (int)TimeUtility.ServerNow.DayOfWeek > 0 ? (int)TimeUtility.ServerNow.DayOfWeek : 7;
                List <HourMinute> hourMinutelist = dailyQuestOpenTime.openTimes[weekday];
                int remainDay = day - curDay;
                if (remainDay < 0)
                var hourMinutelist = dailyQuestOpenTime.GetHourMinuteByWeek(weekDay);
                if (hourMinutelist != null)
                {
                    remainDay = 7 + remainDay;
                }
                for (int i = 0; i < hourMinutelist.Count; i++)
                {
                    int remainHour = hourMinutelist[i].hourBegin - TimeUtility.ServerNow.Hour;
                    int remainMinute = hourMinutelist[i].minuteBegin - TimeUtility.ServerNow.Minute;
                    if(remainDay <= 0)
                    int day = weekDay > 0 ? weekDay : 7;
                    int curDay = (int)TimeUtility.ServerNow.DayOfWeek > 0 ? (int)TimeUtility.ServerNow.DayOfWeek : 7;
                    int remainDay = day - curDay;
                    if (remainDay < 0)
                    {
                        if (remainHour < 0)
                        remainDay = 7 + remainDay;
                    }
                    for (int i = 0; i < hourMinutelist.Count; i++)
                    {
                        int remainHour = hourMinutelist[i].hourBegin - TimeUtility.ServerNow.Hour;
                        int remainMinute = hourMinutelist[i].minuteBegin - TimeUtility.ServerNow.Minute;
                        if (remainDay <= 0)
                        {
                            remainDay = 7;
                            if (remainHour < 0)
                            {
                                remainDay = 7;
                            }
                            else if (remainHour == 0 && remainMinute < 0)
                            {
                                remainDay = 7;
                            }
                        }
                        else if (remainHour == 0 && remainMinute < 0)
                        int remainSecond = remainDay * 24 * 60 * 60 + remainHour * 60 * 60 + remainMinute * 60;
                        if (remainSecond > 120)
                        {
                            remainDay = 7;
                            string key = StringUtility.Contact(dailyId, weekDay, hourMinutelist[i].hourBegin);
                            pushKey.Add(key);
                            pushDelaySecond.Add(remainSecond);
                        }
                    }
                    int remainSecond = remainDay * 24 * 60 * 60 + remainHour * 60 * 60 + remainMinute * 60;
                    if (remainSecond > 120)
                    {
                        string key = StringUtility.Contact(dailyId,weekday,hourMinutelist[i].hourBegin);
                        pushKey.Add(key);
                        pushDelaySecond.Add(remainSecond);
                    }
                }
            }
            return pushDelaySecond;
        }
@@ -295,7 +305,7 @@
                }
            }
            int pushSet = Convert.ToInt32(pushSB.ToString(),2);
            int pushSet = Convert.ToInt32(pushSB.ToString(), 2);
            SendPushNotifyQuest(pushSet);
        }
@@ -307,12 +317,12 @@
            {
                if (i < hangUpPushlist.Count)
                {
                    if (vipLv > 0
                    if (vipLv > 0
                        && !vipModel.IsVipExperience())
                    {
                        pushSetDict[indexlist[i]] = true;
                    }
                    else if(vipLv < 1
                    else if (vipLv < 1
                        && !vipModel.IsVipExperience())
                    {
                        pushSetDict[indexlist[i]] = false;
@@ -347,7 +357,7 @@
                    {
                        pushSetDict[indexlist[i]] = true;
                    }
                    else if(!vipModel.IsVipExperience()
                    else if (!vipModel.IsVipExperience()
                        && PlayerDatas.Instance.baseData.VIPLv < 1)
                    {
                        pushSetDict[indexlist[i]] = false;
@@ -365,7 +375,7 @@
            }
            int pushSet = Convert.ToInt32(pushSB.ToString(), 2);
            SendPushNotifyQuest(pushSet);
            LocalSave.SetBool(VIPEXPERIENCERECORD,vipModel.IsVipExperience());
            LocalSave.SetBool(VIPEXPERIENCERECORD, vipModel.IsVipExperience());
        }
        public void RefreshPushSet(int switchIndex, bool isOpen)
@@ -401,7 +411,7 @@
                DailyQuestOpenTime dailyQuestOpenTime;
                dailyModel.TryGetOpenTime(quests[i], out dailyQuestOpenTime);
                var config = Config.Instance.Get<DailyQuestConfig>(quests[i]);
                if(isFunclimit)
                if (isFunclimit)
                {
                    if (dailyQuestOpenTime.IsValidServerOpenTime() && FuncOpen.Instance.IsFuncOpen(config.UnLockFuncID))
                    {
@@ -437,11 +447,15 @@
            week = dailyQuestOpenTime.ToOpenTimeString();
            title = config.Title;
            time = "";
            foreach (var weekday in dailyQuestOpenTime.openTimes.Keys)
            for (int i = 0; i < 7; i++)
            {
                List<HourMinute> hourMinutelist = dailyQuestOpenTime.openTimes[weekday];
                time = StringUtility.Contact(hourMinutelist[0].hourBegin > 9 ? hourMinutelist[0].hourBegin.ToString() : "0" + hourMinutelist[0].hourBegin, ":", hourMinutelist[0].minuteBegin > 9 ? hourMinutelist[0].minuteBegin.ToString() : "0" + hourMinutelist[0].minuteBegin);
                break;
                var hourMinutelist = dailyQuestOpenTime.GetHourMinuteByWeek(i);
                if (hourMinutelist != null)
                {
                    time = StringUtility.Contact(hourMinutelist[0].hourBegin > 9 ? hourMinutelist[0].hourBegin.ToString() : "0" + hourMinutelist[0].hourBegin, ":", hourMinutelist[0].minuteBegin > 9 ? hourMinutelist[0].minuteBegin.ToString() : "0" + hourMinutelist[0].minuteBegin);
                    break;
                }
            }
        }
@@ -477,7 +491,7 @@
            }
            pushSB.Length = 0;
            List<int> indexlist = pushSetDict.Keys.ToList();
            for(int i = indexlist.Count - 1; i > -1; i--)
            for (int i = indexlist.Count - 1; i > -1; i--)
            {
                if (pushSetDict[indexlist[i]])
                {
@@ -536,9 +550,9 @@
            DailyQuestOpenTime openTime;
            dailyModel.TryGetOpenTime(dailyId, out openTime);
            var dayOfWeek = (int)TimeUtility.ServerNow.DayOfWeek;
            if (openTime.openTimes.ContainsKey(dayOfWeek))
            var hourMinutes = openTime.GetHourMinuteByWeek(dayOfWeek);
            if (hourMinutes != null)
            {
                var hourMinutes = openTime.openTimes[dayOfWeek];
                for (int i = 0; i < hourMinutes.Count; i++)
                {
                    var minutes = TimeUtility.ServerNow.Hour * 60 + TimeUtility.ServerNow.Minute;
@@ -546,7 +560,7 @@
                    if (minuteOffset <= 2 && minuteOffset > 0)
                    {
                        string key = StringUtility.Contact(dailyId, dayOfWeek, hourMinutes[i].hourBegin);
                        RemoveActivityPushByKey(dailyId,key);
                        RemoveActivityPushByKey(dailyId, key);
                    }
                }
            }
System/Team/TeamTargetJoinLimitWin.cs
@@ -278,10 +278,10 @@
                }
                else
                {
                    var week = DateTime.Now.DayOfWeek;
                    if (openTime.openTimes.ContainsKey((int)week))
                    var week = (int)TimeUtility.ServerNow.DayOfWeek;
                    var durations = openTime.GetHourMinuteByWeek(week);
                    if (durations != null)
                    {
                        var durations = openTime.openTimes[(int)week];
                        var stringArray = new string[durations.Count];
                        for (int i = 0; i < durations.Count; i++)
                        {