From 207fa68f5a9d50ef0bd176cf98adb81827f492f0 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期四, 04 十二月 2025 16:14:43 +0800
Subject: [PATCH] 16 卡牌服务端(分包下载奖励15支持;)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py | 41 +++++++++++++++++++++++++++++++++++++----
1 files changed, 37 insertions(+), 4 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py
index 1107e1b..5646fef 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py
@@ -649,6 +649,8 @@
PlayerActSingleRecharge.OnPlayerLogin(curPlayer)
# 转盘活动
PlayerActTurntable.OnPlayerLogin(curPlayer)
+ # 分支下载奖励记录通知
+ SyncPackDownloadAward(curPlayer)
# 登录触发功能开启(老号处理)
GameFuncComm.DoFuncOpenLogic(curPlayer)
# 神兽
@@ -735,7 +737,7 @@
PlayerTravel.OnPlayerLogin(curPlayer)
# 上线查询一次充值订单
- curPlayer.SendDBQueryRecharge()
+ # curPlayer.SendDBQueryRecharge() 不查了,由在线轮询触发即可
# 通知GameServer地图最终登录成功了
isMixServerFirstLogin = curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_MixServerFirstLogin)
@@ -3189,6 +3191,9 @@
# 红颜等级奖励
elif rewardType == ChConfig.Def_RewardType_BeautyLVAward:
PlayerBeauty.GetBeautyLVAward(curPlayer, dataEx)
+ # 领取分包下载奖励
+ elif rewardType == ChConfig.Def_RewardType_DownLoad:
+ GetDownloadAward(curPlayer, dataEx)
# 每日免费直购礼包
@@ -3278,9 +3283,6 @@
#历史累计充值领取
elif rewardType == ChConfig.Def_RewardType_HistoryChargeAward:
PlayerGoldGift.OnGetHistoryRechargeAward(curPlayer, dataEx)
- #在线特惠充值额外奖励
- elif rewardType == ChConfig.Def_RewardType_OnlineRechargeTH:
- PlayerCoin.OnGetOnlineRechargeTH(curPlayer)
#创角奖励
elif rewardType == ChConfig.Def_RewardType_CreateRole:
OnGetCreateRoleAward(curPlayer)
@@ -3439,6 +3441,37 @@
NetPackCommon.SendFakePack(curPlayer, sendPack)
return
+def GetDownloadAward(curPlayer, dataEx):
+ ##分包下载奖励 dataEx 0直接领取 1发邮件
+ playerID = curPlayer.GetPlayerID()
+ downloadAwardNum = IpyGameDataPY.GetFuncCfg('DownReward', 2)
+ curAwardNum = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_DownloadAwardState)
+ if curAwardNum == downloadAwardNum:
+ GameWorld.DebugLog("已领取分包奖励! curAwardNum(%s) == downloadAwardNum(%s)" % (curAwardNum, downloadAwardNum), playerID)
+ return
+
+ awardItemList = IpyGameDataPY.GetFuncEvalCfg('DownReward', 1)
+ if not awardItemList:
+ return
+
+ PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_DownloadAwardState, downloadAwardNum)
+ GameWorld.DebugLog("领取分包下载奖励: curAwardNum=%s,downloadAwardNum=%s" % (curAwardNum, downloadAwardNum), playerID)
+ if dataEx == 1:
+ PlayerMail.SendMailByKey('SubpackageDownload', curPlayer.GetID(), awardItemList)
+ else:
+ ItemControler.GivePlayerItemOrMail(curPlayer, awardItemList, event=["PackDownload", False, {}])
+ SyncPackDownloadAward(curPlayer)
+ return
+
+def SyncPackDownloadAward(curPlayer):
+ #分包下载奖励记录通知
+ downloadAwardNum = IpyGameDataPY.GetFuncCfg('DownReward', 2)
+ sendPack = ChPyNetSendPack.tagMCPackDownloadRecord()
+ sendPack.Clear()
+ sendPack.Record = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_DownloadAwardState) == downloadAwardNum
+ NetPackCommon.SendFakePack(curPlayer, sendPack)
+ return
+
def OnGiveAwardByClient(curPlayer, rewardType, dictKey, awardCfg, eventName=""):
## 发放前端控制的奖励,后端只负责发放奖励,是否可领奖前端自行判断
if curPlayer.NomalDictGetProperty(dictKey):
--
Gitblit v1.8.0