From b71b41e5abb5882afe93850702c8567254e62a8f Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期二, 23 一月 2024 19:46:39 +0800
Subject: [PATCH] 10014 【主干】【港台】【砍树】多个直购一次打包购买功能(已经打包购买后,免费领取礼包未领取也不不补发)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerGoldGift.py |   10 ++++++++--
 1 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerGoldGift.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerGoldGift.py
index 54c1c58..2353871 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerGoldGift.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerGoldGift.py
@@ -280,6 +280,9 @@
         # 补发上次离线天的
         awardDays = alreadyAwardDays + 1
         for awardIndexStr, addItemList in giftItemDict.items():
+            if awardIndexStr not in actCTGIDDict:
+                GameWorld.DebugLog("    打包购买免费的不补发! awardIndex=%s" % (awardIndexStr), playerID)
+                continue
             if getRecord&pow(2, int(awardIndexStr)):
                 GameWorld.DebugLog("    已经领取过该奖励了,不补发! awardIndex=%s,getRecord=%s" % (awardIndexStr, getRecord), playerID)
                 continue
@@ -293,7 +296,10 @@
                 break
             paramList = [day]
             GameWorld.DebugLog("    补发完整天! day=%s" % (day), playerID)
-            for addItemList in giftItemDict.values():
+            for awardIndexStr, addItemList in giftItemDict.items():
+                if awardIndexStr not in actCTGIDDict:
+                    GameWorld.DebugLog("        免费的不补发! awardIndex=%s" % (awardIndexStr), playerID)
+                    continue
                 PlayerControl.SendMailByKey("DailyPackBuyGift1", [playerID], addItemList, paramList)
                 
         # 超过最大天了,重置所有
@@ -313,7 +319,7 @@
                                        % (awardIndexStr, packBuyTime, buyState), playerID)
                     continue
             else:
-                GameWorld.DebugLog("打包购买免费的不补发! awardIndex=%s" % (awardIndexStr), playerID)
+                GameWorld.DebugLog("没有打包购买且免费的不补发! awardIndex=%s" % (awardIndexStr), playerID)
                 continue
             if getRecord&pow(2, int(awardIndexStr)):
                 GameWorld.DebugLog("已经领取过该奖励了,不补发! awardIndex=%s,getRecord=%s" % (awardIndexStr, getRecord), playerID)

--
Gitblit v1.8.0