From 27787b6525ef2be4357440c64d6e045fa3cf504b Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期一, 12 四月 2021 16:17:21 +0800
Subject: [PATCH] 8873 【BT2】【主干】【后端】新增在线特惠(创角后充值1000、30元档;  主干)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCoin.py |   41 +++++++++++++++++++++++++++++++++++++++++
 1 files changed, 41 insertions(+), 0 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 1776a82..3059ea1 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCoin.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCoin.py
@@ -89,6 +89,8 @@
         Sync_CoinToGoldCountInfo(curPlayer)
     if curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_DayFreeGoldGiftState):
         Sync_DayFreeGoldGiftState(curPlayer)
+    if curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_OnlineRechargeTHAward):
+        SyncOnlineRechargeTH(curPlayer)
     return
 
 def DoResetCTGCountByTime(curPlayer):
@@ -594,3 +596,42 @@
     return
 
 ## ------------------------------------------
+## ---------- 创角在线充值特惠 ---------------
+
+def OnGetOnlineRechargeTH(curPlayer):
+    ## 领取创角在线充值特惠
+    awardState = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_OnlineRechargeTHAward)
+    if awardState:
+        #GameWorld.DebugLog("已领取该奖励!")
+        return
+    
+    # 后端只验证是否有充值其中一个即可,不验证充值时间(充值同步到游戏服务器有时间差)
+    canGet = False
+    needCtgIDList = IpyGameDataPY.GetFuncEvalCfg("OnlineRechargeTH", 2)
+    for ctgID in needCtgIDList:
+        if curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_CTGGoodsBuyCount % ctgID):
+            canGet = True
+            break
+        
+    if not canGet:
+        return
+    
+    awardItemList = IpyGameDataPY.GetFuncEvalCfg("OnlineRechargeTH", 3)
+    if not ItemControler.CheckPackSpaceEnough(curPlayer, awardItemList):
+        return
+    PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_OnlineRechargeTHAward, 1)
+    
+    for itemID, itemCount, isAuctionItem in awardItemList:
+        ItemControler.GivePlayerItem(curPlayer, itemID, itemCount, isAuctionItem, [IPY_GameWorld.rptItem], 
+                                     event=["OnlineRechargeTH", False, {}])
+        
+    SyncOnlineRechargeTH(curPlayer)
+    return
+
+def SyncOnlineRechargeTH(curPlayer):
+    clientPack = ChPyNetSendPack.tagMCOnlineRechargeTH()
+    clientPack.AwardState = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_OnlineRechargeTHAward)
+    NetPackCommon.SendFakePack(curPlayer, clientPack)
+    return
+
+## ------------------------------------------
\ No newline at end of file

--
Gitblit v1.8.0