From ba71a1935d5e96c54131173c1eccb5678efc9827 Mon Sep 17 00:00:00 2001
From: xdh <xiefantasy@qq.com>
Date: 星期一, 08 四月 2019 10:19:08 +0800
Subject: [PATCH] 6341 【后端】【2.0】境界改版开发单(经验buff叠加问题)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCoin.py |   28 ++++++++++++++++++++--------
 1 files changed, 20 insertions(+), 8 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 954cf21..082fe20 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCoin.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCoin.py
@@ -44,9 +44,11 @@
 import ShareDefine
 import PlayerFlashGiftbag
 import PlayerFairyCeremony
+import PlayerNewFairyCeremony
 import PlayerGoldGift
 import PlayerActTotalRecharge
 import OpenServerCampaign
+import PlayerWeekParty
 import ItemCommon
 
 import time
@@ -59,11 +61,11 @@
 def GetCoinRate(): return IpyGameDataPY.GetFuncCfg("PayRMB")
 
 def OnLogin(curPlayer):
-    DoResetCTGCount(curPlayer) 
-    Sync_CoinToGoldCountInfo(curPlayer)
+    if not DoResetCTGCountByTime(curPlayer):
+        Sync_CoinToGoldCountInfo(curPlayer)
     return
 
-def DoResetCTGCount(curPlayer):
+def DoResetCTGCountByTime(curPlayer):
     # 重置充值次数
     ctgResetTimeYMD = IpyGameDataPY.GetFuncCfg("CTG", 1)
     if not ctgResetTimeYMD:
@@ -72,7 +74,7 @@
         GameWorld.ErrLog("充值重置时间配置必须是数值格式,不能包含符号!")
         return
     curTime = int(time.time())
-    playerID = curPlayer.GetPlayerID()
+    #playerID = curPlayer.GetPlayerID()
     resetTime = GameWorld.ChangeTimeStrToNum(str(ctgResetTimeYMD), "%Y%m%d")
     if curTime < resetTime:
         #GameWorld.DebugLog("还未到达充值充值次数时间!curTime=%s < resetTime=%s" % (curTime, resetTime), playerID)
@@ -83,6 +85,13 @@
         return
     PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_CTGCountResetTime, resetTime)
     
+    DoResetCTGCount(curPlayer, ctgResetTimeYMD)
+    return True
+
+def DoResetCTGCount(curPlayer, resetEvent):
+    # 重置充值次数
+    
+    playerID = curPlayer.GetPlayerID()
     ipyDataMgr = IpyGameDataPY.IPY_Data()
     for i in xrange(ipyDataMgr.GetCTGCount()):
         ipyData = ipyDataMgr.GetCTGByIndex(i)
@@ -93,11 +102,12 @@
             continue
         PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_CTGGoodsBuyCount % recordID, 0)
         PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_TodayCTGCount % recordID, 0)
-        drDict = {"PlayerID":curPlayer.GetPlayerID(),"AccID":curPlayer.GetAccID(), "ResetTimeYMD":ctgResetTimeYMD,
+        drDict = {"PlayerID":curPlayer.GetPlayerID(),"AccID":curPlayer.GetAccID(), "ResetEvent":resetEvent,
                   "totalBuyCount":totalBuyCount, "todayBuyCount":todayBuyCount, "recordID":recordID}
         DataRecordPack.SendEventPack("ResetCTGCount", drDict, curPlayer)
-        GameWorld.Log("重置充值次数: ResetTimeYMD=%s,recordID=%s,totalBuyCount=%s,todayBuyCount=%s" 
-                      % (ctgResetTimeYMD, recordID, totalBuyCount, todayBuyCount), playerID)
+        GameWorld.Log("重置充值次数: resetEvent=%s,recordID=%s,totalBuyCount=%s,todayBuyCount=%s" 
+                      % (resetEvent, recordID, totalBuyCount, todayBuyCount), playerID)
+    Sync_CoinToGoldCountInfo(curPlayer)
     return
 
 
@@ -261,7 +271,7 @@
             PlayerControl.SendMailByKey("", [curPlayer.GetPlayerID()], giveItemList)
         else:
             for itemID, itemCount, isBind in giveItemList:
-                ItemControler.GivePlayerItem(curPlayer, itemID, itemCount, isBind, [IPY_GameWorld.rptItem], 
+                ItemControler.GivePlayerItem(curPlayer, itemID, itemCount, 0, [IPY_GameWorld.rptItem], 
                                              event=[ChConfig.ItemGive_CTG, True, addDRDict])
         if notifyMark:
             mainItemID = giveItemList[0][0]
@@ -285,11 +295,13 @@
     #---充值成功后逻辑---
     #仙界盛典-充值大礼
     PlayerFairyCeremony.OnFCRecharge(curPlayer)
+    PlayerNewFairyCeremony.OnFCRecharge(curPlayer)
     PlayerGoldGift.DayChargeRedPackAward(curPlayer)
     #累积充值X元
     PlayerActTotalRecharge.AddTotalRechargeGold(curPlayer, orderCoin/100)
     #开服活动
     OpenServerCampaign.AddOpenServerCampaignRecordData(curPlayer, ShareDefine.Def_Campaign_Type_Recharge, orderCoin)
+    PlayerWeekParty.AddWeekPartyActionCnt(curPlayer, ChConfig.Def_WPAct_Recharge, addVIPExp)
     GameWorld.Log("Billing: eventName=%s, %s" % (eventName, addDRDict), curPlayer.GetPlayerID())
     return
 

--
Gitblit v1.8.0