From 41057fec56d9aac981044aead9a74aac4b09ba4f Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期一, 09 十一月 2020 17:43:55 +0800
Subject: [PATCH] 8596 【港台】【后端】每日分享好礼;8599 【港台】【后端】好评有礼;

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py           |   26 +++++++++++++++++++++++++-
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerEventCounter.py |    6 ++++++
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py                  |    7 ++++++-
 3 files changed, 37 insertions(+), 2 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
index 87ac492..e9887b5 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
@@ -3490,6 +3490,8 @@
 Def_PDict_OnlinePrizeNote = "OnlinePrizeNote%s"  # 当日在线奖励领取信息,记录信息 参数天数
 
 Def_PDict_CreateRoleAwardState = "CreateRoleAwardState"  # 创角奖励领取记录
+Def_PDict_ShareGameAwardState = "ShareGameAwardState"  # 每日分享游戏领奖记录
+Def_PDict_GoodGameAwardState = "GoodGameAwardState"  # 游戏好评领奖记录
 Def_PDict_EquipViewCacheState = "EquipViewCacheState"  # 本次上线是否同步过装备缓存
 Def_PDict_DayOnlineTime = "OnlineTime"  # 当日在线时长
 Def_PDict_OnlineStartTick = "OnlineStartTime"        # 在线计算时间
@@ -5317,7 +5319,10 @@
 Def_RewardType_ActivityPlace, #活跃放置奖励30
 Def_RewardType_SkyTowerServerChallengeReward, #天星塔全服挑战层领奖31
 Def_RewardType_CreateRole, #创角奖励32
-)= range(33)
+Def_RewardType_OnLineTotal, #累计在线奖励33
+Def_RewardType_ShareGame, #每日分享奖励34
+Def_RewardType_GoodGame, #游戏好评奖励35
+)= range(36)
 
 
 #boss复活相关活动定义
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 73220dd..b48fdb8 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py
@@ -722,7 +722,15 @@
     GY_Query_BossFirstKill.OnPlayerLogin(curPlayer)
     #创角奖励
     Sync_CreateRoleAwardInfo(curPlayer)
-    
+    #每日分享奖励
+    shareGameAwardState = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_ShareGameAwardState)
+    if shareGameAwardState:
+        Sync_RewardGetRecordInfo(curPlayer, ChConfig.Def_RewardType_ShareGame, shareGameAwardState)
+    #游戏好评奖励
+    goodGameAwardState = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_GoodGameAwardState)
+    if goodGameAwardState:
+        Sync_RewardGetRecordInfo(curPlayer, ChConfig.Def_RewardType_GoodGame, goodGameAwardState)
+        
     curPlayer.SetState(0)   # 脱机挂恢复为正常上线
     curPlayer.SetFacePic(0) # 通知数据库是否保存还是下线,做一次恢复,1为保存 0为正常下线
     tjgTime = PlayerTJG.GetTJGTime(curPlayer)
@@ -5391,6 +5399,12 @@
     #创角奖励
     elif rewardType == ChConfig.Def_RewardType_CreateRole:
         OnGetCreateRoleAward(curPlayer)
+    #每日分享奖励34
+    elif rewardType == ChConfig.Def_RewardType_ShareGame:
+        OnGiveAwardByClient(curPlayer, rewardType, ChConfig.Def_PDict_ShareGameAwardState, IpyGameDataPY.GetFuncEvalCfg("ShareGameReward", 1))
+    #游戏好评奖励35
+    elif rewardType == ChConfig.Def_RewardType_GoodGame:
+        OnGiveAwardByClient(curPlayer, rewardType, ChConfig.Def_PDict_GoodGameAwardState, IpyGameDataPY.GetFuncEvalCfg("GoodGameReward", 1))
     return
     
 ## 领取创角奖励
@@ -5414,6 +5428,16 @@
     NetPackCommon.SendFakePack(curPlayer, sendPack)
     return
 
+def OnGiveAwardByClient(curPlayer, rewardType, dictKey, awardCfg):
+    ## 发放前端控制的奖励,后端只负责发放奖励,是否可领奖前端自行判断
+    if curPlayer.NomalDictGetProperty(dictKey):
+        GameWorld.DebugLog("已领取过该奖励! rewardType=%s, dictKey=%s" % (rewardType, dictKey))
+        return
+    if not ItemCommon.GiveAwardItem(curPlayer, awardCfg):
+        return
+    PlayerControl.NomalDictSetProperty(curPlayer, dictKey, 1)
+    Sync_RewardGetRecordInfo(curPlayer, rewardType, 1)
+    return
 
 ## 通知各奖励领取记录信息
 #  @param curPlayer: 玩家实例
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerEventCounter.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerEventCounter.py
index 740a060..81d9dd6 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerEventCounter.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerEventCounter.py
@@ -522,6 +522,12 @@
         PlayerRefineStove.OnDay(curPlayer)
         #绑玉转盘
         PlayerBindJadeWheel.OnDay(curPlayer)
+        #每日分享奖励重置
+        shareGameAwardState = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_ShareGameAwardState)
+        if shareGameAwardState:
+            PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_ShareGameAwardState, 0)
+            ChPlayer.Sync_RewardGetRecordInfo(curPlayer, ChConfig.Def_RewardType_ShareGame, 0)
+            
     # 特殊时间点X点过天
     elif onEventType == ShareDefine.Def_OnEventTypeEx:
         # 资源找回

--
Gitblit v1.8.0