From 26fabaa192b364b3815beb534e8c554fc1fb3912 Mon Sep 17 00:00:00 2001
From: QD-PangDeRong <593317293@qq.com>
Date: 星期五, 10 八月 2018 11:44:38 +0800
Subject: [PATCH] 修改全民冲榜推送
---
System/SystemSetting/ActivitiesPushMgr.cs | 141 ++++++++++++++++++++++++++++------------------
1 files changed, 86 insertions(+), 55 deletions(-)
diff --git a/System/SystemSetting/ActivitiesPushMgr.cs b/System/SystemSetting/ActivitiesPushMgr.cs
index 9cd9667..50f04f8 100644
--- a/System/SystemSetting/ActivitiesPushMgr.cs
+++ b/System/SystemSetting/ActivitiesPushMgr.cs
@@ -3,19 +3,28 @@
using System.Collections.Generic;
using System.Linq;
using System.Text;
+using TableConfig;
namespace Snxxz.UI
{
public class ActivitiesPushMgr : Model,IBeforePlayerDataInitialize,IAfterPlayerDataInitialize,IPlayerLoginOk
{
- public const int WholePeopleMountRank = 2090001; //鍏ㄦ皯鍐叉鍧愰獞姒�
- public const int WholePeopleMountRankEnd = 2090002; //鍏ㄦ皯鍐叉鍧愰獞姒滄埅姝�
+ public const int WholePeopleRankStart = 2091000; //鍏ㄦ皯鍐叉寮�濮�
+ public const int WholePeopleRankEnd = 20910000; //鍏ㄦ皯鍐叉鎴
ImpactRankModel impactRank { get { return ModelCenter.Instance.GetModel<ImpactRankModel>(); } }
+ private List<int> rankTypelist = new List<int>();
public override void Init()
{
-
+ List<OSCBillRankAwardConfig> configs = ConfigManager.Instance.GetAllValues<OSCBillRankAwardConfig>();
+ for(int i = 0; i < configs.Count; i++)
+ {
+ if(!rankTypelist.Contains(configs[i].RangListType))
+ {
+ rankTypelist.Add(configs[i].RangListType);
+ }
+ }
}
public void OnBeforePlayerDataInitialize()
@@ -30,8 +39,8 @@
public void OnPlayerLoginOk()
{
- SetMountRankPushInfo();
- SetMountRankEndPushInfo();
+ SetRankStartPushInfo();
+ SetRankEndPushInfo();
GlobalTimeEvent.Instance.minuteEvent -= RefreshMinuteTime;
GlobalTimeEvent.Instance.minuteEvent += RefreshMinuteTime;
OpenServerActivityCenter.Instance.openServerActivityStateChange -= RefreshOpenServerState;
@@ -46,49 +55,63 @@
private void RefreshMinuteTime()
{
- RemovePushByTime(PushInfoType.MountRankStart,11);
- RemovePushByTime(PushInfoType.MountRankEnd,23);
+ RemovePushByTime(PushInfoType.RankStart,11);
+ RemovePushByTime(PushInfoType.RankEnd,23);
}
private void RefreshOpenServerState()
{
- SetMountRankPushInfo();
- SetMountRankEndPushInfo();
+ SetRankStartPushInfo();
+ SetRankEndPushInfo();
}
- private void SetMountRankPushInfo()
+ private void SetRankStartPushInfo()
{
- if(impactRank.IsActivityClose(2))
+ for(int i = 0; i <rankTypelist.Count; i++)
{
- RemovePushInfo(WholePeopleMountRank);
- return;
- }
-
- int day = impactRank.GetOpenDay(2);
- int remainHour = 11 - TimeUtility.ServerNow.Hour;
- int remainMinute = 0 - TimeUtility.ServerNow.Minute;
- int remainSecond = day * 24 * 60 * 60 + remainHour * 60 * 60 + remainMinute * 60;
- if(remainSecond > 0)
- {
- GetPushJsonData(WholePeopleMountRank, remainSecond,Language.Get("SetUpPrivate106"),Language.Get("SetUpPrivate107"));
+ int rankStartId = WholePeopleRankStart + rankTypelist[i];
+ if (impactRank.IsActivityClose(rankTypelist[i]))
+ {
+ RemovePushInfo(rankStartId);
+ }
+ else
+ {
+ int day = impactRank.GetOpenDay(rankTypelist[i]);
+ int remainHour = 11 - TimeUtility.ServerNow.Hour;
+ int remainMinute = 0 - TimeUtility.ServerNow.Minute;
+ int remainSecond = day * 24 * 60 * 60 + remainHour * 60 * 60 + remainMinute * 60;
+ if (remainSecond > 0)
+ {
+ PlayerRankData.RankType rankType = impactRank.GetRankType(rankTypelist[i]);
+ string rankName = StringUtility.Contact("OSCBillRankTitle_", rankType);
+ GetPushJsonData(rankStartId, remainSecond, Language.Get("SetUpPrivate106"), Language.Get("SetUpPrivate107",rankName));
+ }
+ }
}
}
- private void SetMountRankEndPushInfo()
+ private void SetRankEndPushInfo()
{
- if (impactRank.IsActivityClose(2))
+ for(int i = 0; i < rankTypelist.Count; i++)
{
- RemovePushInfo(WholePeopleMountRankEnd);
- return;
- }
-
- int day = impactRank.GetSurplusDay(2);
- int remainHour = 23 - TimeUtility.ServerNow.Hour;
- int remainMinute = 0 - TimeUtility.ServerNow.Minute;
- int remainSecond = (day - 1) * 24 * 60 * 60 + remainHour * 60 * 60 + remainMinute * 60;
- if (remainSecond > 0)
- {
- GetPushJsonData(WholePeopleMountRankEnd, remainSecond, Language.Get("SetUpPrivate106"), Language.Get("SetUpPrivate108"));
+ int rankEndId = WholePeopleRankEnd + rankTypelist[i];
+ if (impactRank.IsActivityClose(rankTypelist[i]))
+ {
+ RemovePushInfo(rankEndId);
+ }
+ else
+ {
+ int day = impactRank.GetSurplusDay(rankTypelist[i]);
+ int remainHour = 23 - TimeUtility.ServerNow.Hour;
+ int remainMinute = 0 - TimeUtility.ServerNow.Minute;
+ int remainSecond = (day - 1) * 24 * 60 * 60 + remainHour * 60 * 60 + remainMinute * 60;
+ if (remainSecond > 0)
+ {
+ PlayerRankData.RankType rankType = impactRank.GetRankType(rankTypelist[i]);
+ string rankName = StringUtility.Contact("OSCBillRankTitle_", rankType);
+ GetPushJsonData(rankEndId, remainSecond, Language.Get("SetUpPrivate106"), Language.Get("SetUpPrivate108",rankName));
+ }
+ }
}
}
@@ -99,31 +122,39 @@
int remainSecond = remainHour * 60 * 60 + remainMinute * 60;
switch (type)
{
- case PushInfoType.MountRankStart:
- if (impactRank.IsActivityClose(2))
+ case PushInfoType.RankStart:
+ for (int i = 0; i < rankTypelist.Count; i++)
{
- RemovePushInfo(WholePeopleMountRank);
- }
- else
- {
- int day = impactRank.GetOpenDay(2);
- if(day <= 0 && remainSecond <= 120)
+ int rankStartId = WholePeopleRankStart + rankTypelist[i];
+ if (impactRank.IsActivityClose(rankTypelist[i]))
{
- RemovePushInfo(WholePeopleMountRank);
+ RemovePushInfo(rankStartId);
+ }
+ else
+ {
+ int day = impactRank.GetOpenDay(rankTypelist[i]);
+ if (day <= 0 && remainSecond <= 120)
+ {
+ RemovePushInfo(rankStartId);
+ }
}
}
break;
- case PushInfoType.MountRankEnd:
- if (impactRank.IsActivityClose(2))
+ case PushInfoType.RankEnd:
+ for (int i = 0; i < rankTypelist.Count; i++)
{
- RemovePushInfo(WholePeopleMountRankEnd);
- }
- else
- {
- int day = impactRank.GetSurplusDay(2);
- if (day <= 1 && remainSecond <= 120)
+ int rankEndId = WholePeopleRankEnd + rankTypelist[i];
+ if (impactRank.IsActivityClose(rankTypelist[i]))
{
- RemovePushInfo(WholePeopleMountRankEnd);
+ RemovePushInfo(rankEndId);
+ }
+ else
+ {
+ int day = impactRank.GetSurplusDay(rankTypelist[i]);
+ if (day <= 1 && remainSecond <= 120)
+ {
+ RemovePushInfo(rankEndId);
+ }
}
}
break;
@@ -154,8 +185,8 @@
public enum PushInfoType
{
- MountRankStart,
- MountRankEnd,
+ RankStart,
+ RankEnd,
}
}
}
--
Gitblit v1.8.0