From 01bb36eca00e1fcd14bef76d78a6aa2e1ce0d803 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期一, 30 十二月 2019 18:52:26 +0800
Subject: [PATCH] 8346 【恺英】【后端】协助系统(添加第一名无归属时原因日志)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerGreatMaster.py |   30 +++++++++++++++++++++++++++---
 1 files changed, 27 insertions(+), 3 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerGreatMaster.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerGreatMaster.py
index cedbc3d..aee55dc 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerGreatMaster.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerGreatMaster.py
@@ -27,6 +27,7 @@
 import GameFuncComm
 import IpyGameDataPY
 import ItemCommon
+import PassiveBuffEffMng
 
 ## 大师功能是否开启
 #  @param curPlayer
@@ -35,6 +36,22 @@
     if not GameFuncComm.GetFuncCanUse(curPlayer, ShareDefine.GameFuncID_Talent):
         return False
     return True
+
+def DoTalentOpen(curPlayer):
+    '''天赋功能开启处理天赋点 '''
+    curLV = curPlayer.GetLV()
+    openLV = GameFuncComm.GetFuncLimitLV(ShareDefine.GameFuncID_Talent)
+    setTalentPoint = 0
+    for lv in xrange(openLV, curLV+1):
+        lvIpyData = PlayerControl.GetPlayerLVIpyData(lv)
+        addTalentPoint = lvIpyData.GetTalentPoint() if lvIpyData else 0
+        setTalentPoint += addTalentPoint
+    curFreeSkillPoint = GetGreatMasterFreeSkillPoint(curPlayer)
+    if setTalentPoint != curFreeSkillPoint:
+        SetGreatMasterFreeSkillPoint(curPlayer, setTalentPoint)
+        Sync_GreatMasterFreeSkillPoint(curPlayer)
+        GameWorld.Log('    天赋功能开启处理天赋点 beforeTalentPoint=%s,setTalentPoint=%s, curLV=%s'%(curFreeSkillPoint, setTalentPoint, curLV), curPlayer.GetID())
+    return
 
 ## 登录处理
 #  @param curPlayer
@@ -334,9 +351,16 @@
     SetGreatMasterFreeSkillPoint(curPlayer, freeSkillPoint + resetPoint)
     Sync_GreatMasterFreeSkillPoint(curPlayer)
     
+    # 重新刷新被动技能
+    passiveEff = PassiveBuffEffMng.GetPassiveEffManager().InitObjPassiveEff(curPlayer)
+    passiveEff.RefreshPassiveSkill()
+    DataRecordPack.Cache_FightPowerChangeInfo(curPlayer, ChConfig.PowerDownType_ResetTalent, {'resetPoint':resetPoint})
     if isRefreshAttr:
-        curControl = PlayerControl.PlayerControl(curPlayer)
-        #curControl.CalcPassiveBuffAttr()
-        curControl.RefreshPlayerAttrByBuff()
+        # 重刷被动技能
+        PassiveBuffEffMng.GetPassiveEffManager().RegistPassiveEff(curPlayer)
+    # 重刷技能战力
+    curControl = PlayerControl.PlayerControl(curPlayer)
+    curControl.RefreshAllSkill()
+    curControl.RefreshPlayerAttrState()
     return True
 

--
Gitblit v1.8.0