From ab34adf120bd1dfd17094b31af73679fadb70c22 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期一, 22 十二月 2025 09:43:25 +0800
Subject: [PATCH] 66 【公会】基础主体-服务端(修复自动转让离线时间优先级计算bug;)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCoin.py |   22 +++++++++++++++++-----
 1 files changed, 17 insertions(+), 5 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 ddfddca..2503a18 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCoin.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCoin.py
@@ -60,8 +60,8 @@
 import PlayerZhanling
 import PlayerGoldRush
 import PlayerLLMJ
-import ItemCommon
 import PyGameData
+import DBDataMgr
 import CommFunc
 
 import time
@@ -338,7 +338,7 @@
     PlayerControl.SendMailByKey("ExchangeToPayCoin", [playerID], addItemList, paramList)
     
     if payOrderType != PayOrderType_PayCoin:
-        serverDay = GameWorld.GetGameWorld().GetGameWorldDictByKey(ShareDefine.Def_Notify_WorldKey_ServerDay) + 1
+        serverDay = DBDataMgr.GetEventTrigMgr().GetValue(ShareDefine.Def_ServerDay) + 1
         addDRDict.update({"coinType":ChConfig.CoinType_ExchangePayCoin, "PayCoin":[befPayCoin, aftPayCoin], 
                           "VIPLv":curPlayer.GetVIPLv(), "ServerDay":serverDay, "eventName":eventName})
         DataRecordPack.DR_CTGOK(curPlayer, addDRDict)
@@ -719,16 +719,28 @@
     
     if ctgIpyData and ctgIpyData.GetPayType() == PayType_PayCoin:
         # 代币充值,仅给代币,不触发其他内容
+        ctgID = ctgIpyData.GetRecordID()
         coinType = ChConfig.CoinType_PayCoin
         orderInfo = addDRDict.get("orderInfo", "")
         orderCoin = addDRDict.get("orderCoin", 0)
         payOrderType = addDRDict.get("payOrderType", PayOrderType_Default)
         playerID = curPlayer.GetPlayerID()
+        moneyInfo = {}
         befPayCoin = PlayerControl.GetPayCoin(curPlayer)
         if addGold and moneyType == ShareDefine.TYPE_Price_PayCoin:
             drDict = {ChConfig.Def_Give_Reason_SonKey:orderInfo, "payOrderType":payOrderType, "orderInfo":orderInfo}
             PlayerControl.GiveMoney(curPlayer, moneyType, addGold, eventName, drDict)
+            moneyInfo[moneyType] = addGold
         aftPayCoin = PlayerControl.GetPayCoin(curPlayer)
+        # 三国版本充代币支持赠送元宝
+        prizeMoneyType = IPY_GameWorld.TYPE_Price_Gold_Money
+        if prizeGold > 0:
+            PlayerControl.GiveMoney(curPlayer, prizeMoneyType, prizeGold, eventName, addDRDict, isGiveBourseMoney=isAddBourseMoney)
+            moneyInfo[prizeMoneyType] = prizeGold
+            
+        if moneyInfo:
+            ItemControler.NotifyGiveAwardInfo(curPlayer, [], ChConfig.ItemGive_CTG, moneyInfo=moneyInfo, 
+                                              dataEx={"orderInfo":orderInfo, "ctgID":ctgID})
         
         isRealMoney = True if addDRDict.get("orderID") else False # tqxbqy 真实订单充代币算真实充值
         if isRealMoney:
@@ -737,8 +749,8 @@
         ctgRealToday = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_CTGRealToday) # 当日真实货币充值Coin数 ,不含后台充值- 今日
         ctgRealTotal = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_CTGRealTotal) # 累计真实货币充值Coin数 ,不包后台充值 - 总计
         ctgRealFirstTime = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_CTGRealFirstTime) # 首次真实货币充值时间戳
-        serverDay = GameWorld.GetGameWorld().GetGameWorldDictByKey(ShareDefine.Def_Notify_WorldKey_ServerDay) + 1
-        addDRDict.update({"coinType":coinType, "PayCoin":[befPayCoin, aftPayCoin], 
+        serverDay = DBDataMgr.GetEventTrigMgr().GetValue(ShareDefine.Def_ServerDay) + 1
+        addDRDict.update({"coinType":coinType, "PayCoin":[befPayCoin, aftPayCoin], "moneyInfo":moneyInfo,
                           "VIPLv":curPlayer.GetVIPLv(), "ServerDay":serverDay, "eventName":eventName, 
                           "ctgRealToday":ctgRealToday, "ctgRealTotal":ctgRealTotal, "ctgRealFirstTime":GameWorld.ChangeTimeNumToStr(ctgRealFirstTime) if ctgRealFirstTime else ""})
         DataRecordPack.DR_CTGOK(curPlayer, addDRDict)
@@ -835,7 +847,7 @@
         PlayerTongTianLing.OnActiviteTTTByCTGID(curPlayer, ctgID)
         PlayerLLMJ.OnActiviteByCTGID(curPlayer, ctgID)
         
-    serverDay = GameWorld.GetGameWorld().GetGameWorldDictByKey(ShareDefine.Def_Notify_WorldKey_ServerDay) + 1
+    serverDay = DBDataMgr.GetEventTrigMgr().GetValue(ShareDefine.Def_ServerDay) + 1
     addDRDict.update({"gold":[goldBefore, goldAfter], "changeCoinPoint":[changeCoinPointBefore, changeCoinPointAfter], "todayCTGCoinTotal":todayCTGCoinTotal,
                       "bourseMoney":[bourseMoneyBefore, bourseMoneyAfter], "addGold":addGold, "prizeGold":prizeGold, "giveItemList":giveItemList, "coinType":coinType,
                       "coinExp":coinExp, "addVIPExp":addVIPExp, "VIPLv":curPlayer.GetVIPLv(), "ServerDay":serverDay,

--
Gitblit v1.8.0