From b31e57a8079f5bf8fae3dc607929d72939e7e7c0 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期三, 13 一月 2021 18:25:05 +0800
Subject: [PATCH] 8677 【BT】【后端】跨服冲榜活动; 新增跨服活动时间管理模块、跨服榜单;跨服邮件;跨服广播优化;相关GM命令、后台工具;(冲突补同步)

---
 ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py |   37 +++++++++++++++++++++++++++++++++----
 1 files changed, 33 insertions(+), 4 deletions(-)

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py b/ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py
index 2b0d82a..820ffd7 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py
@@ -146,6 +146,7 @@
 Def_Notify_WorldKey_MapServerScriptReloadVersion = 'MapServerScriptReloadVersion'  # MapServer 脚本重读版本标记
 Def_Notify_WorldKey_InitGameWorldTime = "InitGameWorldTime"  #启动服务器时间
 Def_Notify_WorldKey_OperationActionInfo = "OperationActionInfo_%s" # 运营活动信息,参数为运营活动名
+Def_Notify_WorldKey_CrossActInfo = "CrossActInfo_%s" # 跨服运营活动信息,参数为运营活动名
 Def_Notify_WorldKey_ActionBossRebornSign = "ActBossSign_%s" # 活动boss重生标记,参数为日常活动ID 或 运营活动名
 Def_Notify_WorldKey_DailyActionState = "DailyActionState_%s" # 日常活动状态,参数为日常活动ID
 Def_Notify_WorldKey_CrossDailyActionState = "CrossDailyActionState_%s" # 跨服日常活动状态,参数为日常活动ID
@@ -243,13 +244,24 @@
                                    OperationActionName_CostRebate, OperationActionName_FlashGiftbag,
                                    OperationActionName_SpringSale, OperationActionName_LuckyTreasure]
 
+#跨服运营活动表名定义
+CrossActName_CTGBillboard = "CrossActCTGBillboard" # 充值排行榜
+
+#跨服运营活动列表
+CrossActNameList = [CrossActName_CTGBillboard]
+
 #活动信息字典key定义
 ActKey_ID = "ID" # 活动ID,唯一标识的ID,一般是活动开启的time值
 ActKey_State = "State" # 活动状态 0-未开启, >0开启中,也代表当日的第几个时间段
 ActKey_CfgID = "CfgID" # 活动表配置ID
-ActKey_DayIndex = "DayIndex" # 活动表配置ID
+ActKey_DayIndex = "DayIndex" # 当前活动天索引,0开始,代表第1天
+ActKey_TemplateID = "TemplateID" # 当前活动模板ID
 ActKey_WorldLV = "WorldLV" # 活动开启时世界等级
 ActKey_WorldLVList = "WorldLVList" # 活动每天的世界等级列表
+
+ActKey_ServerIDRangeList = "ServerIDRangeList" # 活动服务器ID范围信息
+ActKey_IpyDataInfo = "IpyDataInfo" # 活动对应 IpyData 信息
+ActKey_DBInfo = "DBInfo" # 保存db的历史活动信息
 
 #答题类型枚举
 Def_Game_ExamTypeList = range(1, 4 + 1)
@@ -667,7 +679,16 @@
     
     Def_BT_Max, #排行榜最大类型
 ) = range(0, 28 + 2) 
-    
+
+''' 跨服排行榜类型, 从 150 开始
+与本服榜单存储的是不一样的数据库表格,理论上类型可以和本服榜单类型重复,为了做下区分防误导,跨服榜单从 150 开始
+跨服榜单表(tagDBCrossBillboard)
+本服榜单表(tagDBBillboard)
+'''
+CrossBillboardTypeList = (
+Def_CBT_ActCTG, # 跨服运营活动 - 充值榜 150
+) = range(150, 150 + 1)
+
 #职业对应战力排行榜类型
 JobFightPowerBillboardDict = {
                               PlayerJob_Warrior:Def_BT_FightPower_Warrior,
@@ -1065,7 +1086,7 @@
                                 Def_UniversalGameRecType_FairyDomain, #缥缈仙域事件次数记录13
                                 Def_UniversalGameRecType_Reward,    # 通用奖励表(TopBar)14
                                 Def_UniversalGameRecType_ArenaBattleRecord, # 竞技场玩家挑战记录 15
-                                Def_UniversalGameRecType_16,
+                                Def_UniversalGameRecType_CrossActInfo, # 跨服运营活动信息记录 16
                                 Def_UniversalGameRecType_17,
                                 Def_UniversalGameRecType_18,
                                 Def_UniversalGameRecType_19,
@@ -1251,6 +1272,7 @@
 CrossServerMsg_PKOverInfo = "PKOverInfo"                # 跨服PK结果
 CrossServerMsg_PKSeasonInfo = "PKSeasonInfo"            # 跨服PK赛季信息
 CrossServerMsg_PKSyncBillboard = "PKSyncBillboard"      # 跨服PK同步排行榜 
+CrossServerMsg_SyncBillboard = "SyncBillboard"          # 跨服同步排行榜 
 CrossServerMsg_CrossBossInfo = "CrossBossInfo"          # 跨服Boss信息
 CrossServerMsg_CrossBossState = "CrossBossState"        # 跨服Boss状态
 CrossServerMsg_PutInItem = "PutInItem"                  # 获得物品
@@ -1262,8 +1284,11 @@
 CrossServerMsg_EnterFBRet = "EnterFBRet"                # 请求进入跨服副本返回信息
 CrossServerMsg_FBEnd = "FBEnd"                          # 完成跨服副本
 CrossServerMsg_NPCAttackCount = "NPCAttackCount"        # 攻击NPC次数记录
-CrossServerMsg_SendMail = "SendMail"                    # 发送邮件
+CrossServerMsg_SendMail = "SendMail"                    # 发送邮件,已知玩家目标服务器,主动发送
 CrossServerMsg_FBPlayerCount = "FBPlayerCount"          # 副本功能线路人数同步
+CrossServerMsg_CrossActInfo = "CrossActInfo"            # 跨服运营活动信息
+CrossServerMsg_MailPlayerIDList = "MailPlayerIDList"    # 跨服邮件玩家ID通知,玩家目标服务器可能无法知道,被动推送
+CrossServerMsg_MailContent = "MailContent"              # 跨服邮件内容通知
 
 # 子服发送跨服信息定义
 ClientServerMsg_ServerInitOK = "ServerInitOK"           # 子服启动成功
@@ -1275,6 +1300,9 @@
 ClientServerMsg_PKCancel = "PKCancel"                   # 跨服PK取消匹配
 ClientServerMsg_PKPrepareOK = "PKPrepareOK"             # 跨服PK准备完毕
 ClientServerMsg_PKBillboard = "PKBillboard"             # 跨服PK排行榜
+ClientServerMsg_QueryBillboard = "QueryBillboard"       # 跨服排行榜 - 查询、同步等
+ClientServerMsg_UpdateBillboard = "UpdateBillboard"     # 跨服排行榜 - 更新
+ClientServerMsg_MailContent = "MailContent"             # 跨服邮件内容同步 - 请求同步、汇报成功等
 ClientServerMsg_Reborn = "Reborn"                       # 复活
 ClientServerMsg_QueryNPCInfo = "QueryNPCInfo"           # 查询跨服地图NPC信息
 ClientServerMsg_SetPlayerAttrValue = "SetPlayerAttrValue" # 玩家属性数值更新
@@ -1283,6 +1311,7 @@
 ClientServerMsg_AddBuff = "AddBuff"                     # 添加BUFF
 
 #跨服广播类型定义
+CrossNotify_CrossAct = "CrossAct"
 CrossNotify_World = "World"
 CrossNotify_Family = "Family"
 CrossNotify_Player = "Player"

--
Gitblit v1.8.0