From 9a5d8288ba607bdcd67cb93e03c7f09ece8b1569 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 13 三月 2026 14:29:24 +0800
Subject: [PATCH] 556 【付费功能】时装商店-服务端(优化时装转化碎片时A801通知,封包修改货币增加IsBind,同物品标记逻辑,时装转化标记=40;)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCoin.py |   76 ++++----------------------------------
 1 files changed, 8 insertions(+), 68 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCoin.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCoin.py
index 2503a18..a3ab2ee 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCoin.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCoin.py
@@ -41,22 +41,12 @@
 import NetPackCommon
 import IpyGameDataPY
 import ShareDefine
-import PlayerFlashGiftbag
-import PlayerDailyGiftbag
 import PlayerGoldGift
 import PlayerActTotalRecharge
-import PlayerActRechargeRebateGold
-import PlayerActFamilyCTGAssist
 import PlayerActManyDayRecharge
 import PlayerActSingleRecharge
-import PlayerActRechargePrize
-import CrossActCTGBillboard
-import CrossActAllRecharge
-import PlayerActGrowupBuy
-import PlayerWeekParty
+import PlayerActHeroAppear
 import PlayerGoldInvest
-import PlayerActTurntable
-import PlayerTongTianLing
 import PlayerZhanling
 import PlayerGoldRush
 import PlayerLLMJ
@@ -180,7 +170,6 @@
     ## 充值相关过天
     
     #在重置之前需要处理的
-    PlayerActGrowupBuy.DoUpdateGrowupBuyStateOnDay(curPlayer) # 成长必买
     
     PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_TodayCTGCoinTotal, 0)
     PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_CTGRealToday, 0)
@@ -492,13 +481,6 @@
             return
         moneyType, addGold, prizeGold, giveItemList, ctgIpyData = ctgResultInfo
         
-    elif ipyData.GetGiftbagID():
-        giftbagID = ipyData.GetGiftbagID()
-        if 100 <= giftbagID < 199:
-            if not PlayerDailyGiftbag.OnPlayerOrderDailyGiftbag(curPlayer, giftbagID, addDRDict):
-                return
-        elif not PlayerFlashGiftbag.OnPlayerOrderGiftbag(curPlayer, [ipyData.GetGiftbagID()], addDRDict):
-            return
     else:
         #用于支付其他的商品,待扩展...
         DataRecordPack.DR_CTGError(curPlayer, "The orderInfo is useless!", addDRDict)
@@ -531,13 +513,6 @@
     
     addDRDict.update({"recordID":recordID})
     
-    # 成长必买类型
-    if ipyData.GetPayType() == PayType_GrowupBuy:
-        canBuy, errInfo = PlayerActGrowupBuy.CheckGrowupBuyState(curPlayer, recordID)
-        if not canBuy:
-            DataRecordPack.DR_CTGError(curPlayer, errInfo, addDRDict)
-            return
-        
     totalBuyCountLimit = ipyData.GetTotalBuyCount()
     totalBuyCount = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_CTGGoodsBuyCount % recordID)
     if totalBuyCountLimit:
@@ -587,6 +562,7 @@
     giveItemList = []
     giveItemList += GetCTGGiveItemList(ipyData)
     giveItemList += selectItemList
+    giveItemList += PlayerActHeroAppear.GetCTGActItemList(curPlayer, recordID) # 武将登场
     
     #payType = ipyData.GetPayType()
     moneyType = ipyData.GetMoneyType() # 获得货币类型
@@ -594,14 +570,7 @@
     gainGoldPrize = ipyData.GetGainGoldPrize() # 赠送货币数,首次充值赠送仙玉时,此仙玉不给
     firstGoldPrize = ipyData.GetFirstGoldPrize() # 首次充值赠送的仙玉
     prizeGold = firstGoldPrize if (not totalBuyCount and firstGoldPrize) else gainGoldPrize
-    if moneyType == IPY_GameWorld.TYPE_Price_Gold_Money:
-        #if payType in [PayType_Gold, PayType_GoldPlus] and PlayerGoldInvest.GetInvestState(curPlayer, ChConfig.InvestType_Life):
-        #    prizeGold = addGold # bt tqxbqy 版本,永久卡仙玉直充固定双倍
-        actPrizeGold = PlayerActRechargePrize.DoAddPlayerActRechargePrizeCount(curPlayer, recordID)
-        if actPrizeGold:
-            prizeGold += actPrizeGold
-            addDRDict.update({"actRechargePrize":1})
-            
+    
     syncRecordIDList = [recordID]
     # 打包购买 - 目前用于每日特惠,有需要可扩展为通用
     if recordID == IpyGameDataPY.GetFuncCfg("DailyTehui", 2):
@@ -617,7 +586,8 @@
             syncRecordIDList.append(ctgID)
             ctgItemList = GetCTGGiveItemList(ctgIpyData)
             packCTGIDDict[ctgID] = ctgItemList
-            for itemID, itemCount, _ in ctgItemList:
+            for itemInfo in ctgItemList:
+                itemID, itemCount = itemInfo[:2]
                 packItemDict[itemID] = packItemDict.get(itemID, 0) + itemCount
             __addCTGIDBuyCnt(curPlayer, ctgID)
         if packCTGIDDict:
@@ -677,27 +647,9 @@
         return []
     
     gainItemList = ipyData.GetGainItemList()
-    actWorldLVGainItemInfo = ipyData.GetActWorldLVGainItemInfo()
-    giveItemList = []
-    # 活动世界等级对应物品信息,如果有对应活动支持 且 该配置有配,则默认走该配置,否则使用常规的默认物品配置
-    payTypeActNameDict = {PayType_GrowupBuy:ShareDefine.OperationActionName_GrowupBuy,
-                          
-                          # ... 有新增的活动需要支持,则在此新增配置上即可,后面取物品的逻辑都是一样的
-                          }
-    if actWorldLVGainItemInfo and ipyData.GetPayType() in payTypeActNameDict:
-        actName = payTypeActNameDict[ipyData.GetPayType()]
-        actInfo = PyGameData.g_operationActionDict.get(actName, {}) # 注:相关状态在前置逻辑已经判断过,这里不再判断
-        actWorldLV = actInfo.get(ShareDefine.ActKey_WorldLV, 0)
-        actWorldLVList = [int(strWorldLV) for strWorldLV in actWorldLVGainItemInfo.keys()]
-        actWorldLVList.sort() # 使用 int 的值排,否则可能引起排序错误
-        for worldLV in actWorldLVList:
-            if actWorldLV <= worldLV:
-                giveItemList = actWorldLVGainItemInfo[str(worldLV)]
-                break
-        if not giveItemList:
-            giveItemList = actWorldLVGainItemInfo[str(actWorldLVList[-1])] # 没有匹配到的话默认取最后一个等级配置
-    else:
-        giveItemList = gainItemList
+    #actWorldLVGainItemInfo = ipyData.GetActWorldLVGainItemInfo()
+    #giveItemList = []
+    giveItemList = gainItemList
     return giveItemList
 
 def __OnCTGReal(curPlayer, orderCoin):
@@ -821,30 +773,18 @@
     
     # 所有真实充值均有效的
     if coinType in [ChConfig.CoinType_Gold, ChConfig.CoinType_Buy, ChConfig.CoinType_UsePayCoin]:
-        #跨服充值排行活动
-        CrossActCTGBillboard.AddCTGRMB(curPlayer, orderCoin)
-        #跨服全民充值
-        CrossActAllRecharge.AddCTGRMB(curPlayer, orderCoin)
         PlayerActManyDayRecharge.AddManyDayRechargeValue(curPlayer, orderCoin) # 多日连充
-        
-    # 只算充仙玉的
-    if coinType == ChConfig.CoinType_Gold:
-        PlayerActRechargeRebateGold.AddRechargeRebateGoldRMB(curPlayer, addGold)
         
     #累积充值X元
     PlayerActTotalRecharge.AddTotalRechargeGold(curPlayer, orderCoin, coinType)
     PlayerActSingleRecharge.UpdSingleRechargeValue(curPlayer, orderCoin, coinType) # 单笔累充
-    PlayerActTurntable.OnPlayerRecharge(curPlayer, orderCoin, coinType) # 转盘
-    PlayerWeekParty.AddWeekPartyActionCnt(curPlayer, ChConfig.Def_WPAct_Recharge, addVIPExp)
     #投资
     if ctgIpyData:
         ctgID = ctgIpyData.GetRecordID()
-        #PlayerActFamilyCTGAssist.OnPlayerCTG(curPlayer, ctgID)
         PlayerGoldInvest.InvestByCTG(curPlayer, ctgID)
         PlayerGoldGift.OnGiftByCTGID(curPlayer, ctgID)
         PlayerZhanling.OnActiviteByCTGID(curPlayer, ctgID)
         PlayerGoldRush.OnGoldRushByCTGID(curPlayer, ctgID)
-        PlayerTongTianLing.OnActiviteTTTByCTGID(curPlayer, ctgID)
         PlayerLLMJ.OnActiviteByCTGID(curPlayer, ctgID)
         
     serverDay = DBDataMgr.GetEventTrigMgr().GetValue(ShareDefine.Def_ServerDay) + 1

--
Gitblit v1.8.0