From 4a5de5f9b8f4617bdb7f6d4733fcc0200e458d65 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期一, 22 十一月 2021 17:02:25 +0800
Subject: [PATCH] 9367 【BT5】【主干】战力压制拓展到21亿以上

---
 ServerPython/CoreServerGroup/GameServer/Script/Player/ChPlayer.py |   31 ++++++++++++++++++++++++++-----
 1 files changed, 26 insertions(+), 5 deletions(-)

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/Player/ChPlayer.py b/ServerPython/CoreServerGroup/GameServer/Script/Player/ChPlayer.py
index 7c76f53..1a784f9 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/Player/ChPlayer.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/Player/ChPlayer.py
@@ -66,6 +66,8 @@
 import AuctionHouse
 import PlayerAssist
 import PlayerFB
+import PlayerLove
+import PlayerCharm
 #---------------------------------------------------------------------
 
 #---------------------------------------------------------------------
@@ -169,8 +171,6 @@
         PlayerStore.OnPlayerLogin(curPlayer)
         #通知世界boss信息
         GameWorldBoss.OnPlayerLogin(curPlayer)
-        #家族副本boss状态通知
-        PlayerFamilyBoss.OnLogin(curPlayer)
         #渡劫
         PlayerDuJie.OnPlayerLogin(curPlayer)
         #守卫人皇
@@ -199,6 +199,24 @@
     else:
         #协助
         PlayerAssist.OnPlayerLogin(curPlayer, True)
+        
+    return
+
+def DoPlayerRealLoginOK(curPlayer, tick):
+    ''' 玩家最终登录成功处理, 由  MapServer  DoPlayerRealLoginOK  通知
+        该函数为地图最终登录成功才会执行到,以后一些功能类的登录处理建议均写到这里
+        旧的功能先不动( __DoPlayerLoginServer 函数中的功能),如果有登录相关的bug再考虑是否移动到此函数
+    '''
+    
+    GameWorld.Log("GameServer->DoPlayerRealLoginOK", curPlayer.GetPlayerID())
+    
+    if not PlayerControl.GetIsTJG(curPlayer):
+        #家族副本boss状态通知
+        PlayerFamilyBoss.OnLogin(curPlayer)
+        #魅力
+        PlayerCharm.OnPlayerLogin(curPlayer)
+        #情缘
+        PlayerLove.OnPlayerLogin(curPlayer)
         
     return
 
@@ -552,6 +570,8 @@
     AuctionHouse.OnPlayerLeaveServer(curPlayer)
     #协助
     PlayerAssist.OnLeaveServer(curPlayer)
+    #红包
+    PlayerFamilyRedPacket.OnLeaveServer(curPlayer)
     #------------镖车逻辑
     #TruckPlayerDisconnectProcess(curPlayer, tick)
     
@@ -621,6 +641,7 @@
     
     playerStatePack = IPY_GameServer.IPY_GRefreshPlayerProperty()
     packValue = playerStatePack.GetValue()
+    packValueEx = playerStatePack.GetValueEx()
     packType = playerStatePack.GetType()
     
     #---特殊逻辑处理---
@@ -647,7 +668,7 @@
         return
     
     if packType == IPY_GameServer.CDBPlayerRefresh_FightPower:
-        curPlayer.SetFightPower(packValue)
+        curPlayer.SetFightPower(packValue, packValueEx)
         return
 
     if packType == IPY_GameServer.CDBPlayerRefresh_ExAttr2:
@@ -667,7 +688,7 @@
         
     elif packType == IPY_GameServer.CDBPlayerRefresh_LV:
         curPlayer.SetLV(packValue)
-        PlayerSocial.UpdateSocialInfo(curPlayer, packType, packValue)
+        PlayerSocial.UpdateSocialInfo(curPlayer.GetID(), packType, packValue)
         #玩家等级记录
         playerID = curPlayer.GetID()
         if playerID in PyGameData.g_todayPlayerLVDict:
@@ -714,7 +735,7 @@
     
     elif packType == IPY_GameServer.CDBPlayerRefresh_OfficialRank:
         curPlayer.SetOfficialRank(packValue)
-        PlayerSocial.UpdateSocialInfo(curPlayer, packType, packValue)
+        PlayerSocial.UpdateSocialInfo(curPlayer.GetID(), packType, packValue)
         #更新排行榜的境界
         PlayerBillboard.UpdateBillboardRealm(curPlayer)
         

--
Gitblit v1.8.0