From 07423ad90ce28a8817671e8266a4aba2ea294935 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期三, 18 三月 2026 17:43:29 +0800
Subject: [PATCH] 571 【荣耀战将】删档测试充值返利

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py |   36 ++++++++++++++++++++++++++++++++++--
 1 files changed, 34 insertions(+), 2 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py
index 0b9de40..0fd83dd 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py
@@ -1113,7 +1113,7 @@
     playerControl.RefreshAllState()
             
     #玩家下线更新排行榜
-    PlayerBillboard.UpdatePlayerBillboardOnLeaveServer(curPlayer) #排行榜已实时更新,故下线不再同步
+    #PlayerBillboard.UpdatePlayerBillboardOnLeaveServer(curPlayer) #排行榜已实时更新,故下线不再同步
     
     #玩家下线通知gameserver记录缓存(放在下线更新排行榜之后,方便Gameserver判断是否需要存入数据库中)
     PlayerViewCache.OnPlayerLogout(curPlayer)
@@ -3311,6 +3311,7 @@
             
         #不需要做升级任务, 设置玩家经验
         SetPlayerTotalExp(curPlayer, curTotalExp) 
+        DoDeleteTestRebate(curPlayer)
         return
     
     def __GiveLVMailAward(self, curLV):
@@ -4617,4 +4618,35 @@
         if not curSummon:
             continue
         curSummon.SetSightLevel(sightLevel)
-    return
\ No newline at end of file
+    return
+
+def DoDeleteTestRebate(curPlayer):
+    playerID = curPlayer.GetPlayerID()
+    appID = IpyGameDataPY.GetFuncCfg("DeleteTestRebate", 1)
+    if GameWorld.GetAppIDByAccID(curPlayer.GetAccID()) != appID:
+        #GameWorld.DebugLog("非返利渠道AppID! appID=%s" % appID, playerID)
+        return
+    if curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_DeleteTestRebate):
+        GameWorld.DebugLog("删档测试返利已经处理过,不再请求!", playerID)
+        return
+    if curPlayer.GetLV() < IpyGameDataPY.GetFuncCfg("DeleteTestRebate", 2):
+        GameWorld.DebugLog("等级不足不处理删档测试返利! lv=%s" % curPlayer.GetLV(), playerID)
+        return
+    rebateRate = IpyGameDataPY.GetFuncCfg("DeleteTestRebate", 5)
+    if rebateRate <= 0:
+        GameWorld.DebugLog("没有返利比例不处理!", playerID)
+        return
+    curTime = int(time.time())
+    testEndDate = IpyGameDataPY.GetFuncCfg("DeleteTestRebate", 3) # 删档测试结束日期
+    testEndTime = GameWorld.ChangeTimeStrToNum("%s235959" % testEndDate, ChConfig.TYPE_Time_Format_YmdHMS)
+    if curTime <= testEndTime:
+        GameWorld.DebugLog("删档测试期间不处理删档测试返利! testEndDate=%s" % testEndDate, playerID)
+        return
+    rebateEndDate = IpyGameDataPY.GetFuncCfg("DeleteTestRebate", 4) # 返利结束日期,由公测日期+有效天数得到
+    rebateEndTime = GameWorld.ChangeTimeStrToNum("%s235959" % rebateEndDate, ChConfig.TYPE_Time_Format_YmdHMS)
+    if curTime > rebateEndTime:
+        GameWorld.DebugLog("返利有效期已结束不处理删档测试返利! rebateEndDate=%s" % rebateEndDate, playerID)
+        return
+    import EventReport
+    EventReport.EventReport("DeleteTestRebate", "testEndDate=%s"%(testEndDate), curPlayer, checkNeed=False)
+    return

--
Gitblit v1.8.0