From 10a2b69436a1ebb09fa49a339655e150bfda70a8 Mon Sep 17 00:00:00 2001
From: xdh <xiefantasy@qq.com>
Date: 星期六, 13 四月 2019 17:16:54 +0800
Subject: [PATCH] 6457 新增GM命令 AddFairyEvent 事件ID 事件ID。。

---
 ServerPython/CoreServerGroup/GameServer/Script/Player/ChPlayer.py |   79 +++++++++++++++++++++++----------------
 1 files changed, 47 insertions(+), 32 deletions(-)

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/Player/ChPlayer.py b/ServerPython/CoreServerGroup/GameServer/Script/Player/ChPlayer.py
index 2481af4..9ab6681 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/Player/ChPlayer.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/Player/ChPlayer.py
@@ -27,28 +27,21 @@
 import GMCommon
 import ShareDefine
 #import PlayerFamilyTech
-import PlayerDataCollect
 import time
 import ChPyNetSendPack
 import NetPackCommon
 import GameDataRecord
-import GameConfig
-import ReadChConfig
 import UpdatePlayerName
 import GameWorldBoss
 import PlayerFamilyBoss
-#import PlayerManorWar
 import PlayerBourse
-import GameWorldActionTeHui
+import PlayerZhuXianBoss
 import PlayerXMZZ
-import GameWorldShopItem
 import PlayerTruck
-import HighLadder
-import EventReport
+import PlayerHorsePetBoss
 import PlayerCompensation
 import PlayerFamilyRedPacket
-import PlayerFamilyStore
-import PyDataManager
+#import PlayerFamilyStore
 import PlayerSocial
 import PlayerFamilyParty
 import PlayerSealDemon
@@ -67,9 +60,19 @@
 import GMShell
 import IPY_PlayerDefine
 import CrossRealmPK
+import AuctionHouse
 #---------------------------------------------------------------------
 
 #---------------------------------------------------------------------
+
+def DoRefreshMainServerRole(curPlayer):
+    ## 刷新本服角色信息
+    
+    curTeam = curPlayer.GetTeam()
+    if curTeam:
+        PlayerTeam.Sync_TeamMemberInfo(curTeam)
+    return
+
 ## 玩家登录初始化(封包参数)
 #  @param index 玩家索引
 #  @param tick 当前时间
@@ -103,6 +106,20 @@
     InitPlayerOnLineReply(curPlayer, tick)
     # 统计登入人数
     GameDataRecord.PlayerLoginRecord(curPlayer, tick)
+    __DoPlayerLoginServer(curPlayer, tick)
+    
+    #通知地图服务器自己初始化成功
+    curPlayer.MapServer_InitOK()
+    return
+
+def __DoPlayerLoginServer(curPlayer, tick):
+    ''' 玩家登录需要处理的内容,本服及跨服服务器分开
+    '''
+    if GameWorld.IsCrossServer():
+        #跨服PK
+        CrossRealmPK.OnPlayerLoginCrossServer(curPlayer)
+        return
+    
     #玩家家族刷新
     #家族任务需要刷新 FamilyLV, 地图服务器需要知道FamilyLV来通知玩家家族任务次数 
     PlayerFamily.PlayerLoginRefreshFamily(curPlayer, tick)
@@ -126,14 +143,16 @@
         PlayerTruck.SyncPlayerTruckStartTime(curPlayer)
         #通知玩家交易所挂单情况
         PlayerBourse.OnPlayerLogin(curPlayer)
-
+        #拍卖行
+        AuctionHouse.OnPlayerLogin(curPlayer)
+        
         #上线广播
         __CheckWorldNotifyOnLogin(curPlayer, tick)
         
         #仙盟红包
         PlayerFamilyRedPacket.OnPlayerLogin(curPlayer)
         #仙盟仓库
-        PlayerFamilyStore.OnPlayerLogin(curPlayer)
+        #PlayerFamilyStore.OnPlayerLogin(curPlayer)
         #仙盟宴会
         PlayerFamilyParty.OnPlayerLogin(curPlayer)
         #封魔坛
@@ -162,12 +181,11 @@
         PlayerFBHelpBattle.OnHelpPlayerLogin(curPlayer)
         #跨服PK
         CrossRealmPK.OnPlayerLogin(curPlayer)
-        
-        GMShell.OnPlayerLogin(curPlayer)
+        #诛仙BOSS
+        PlayerZhuXianBoss.OnPlayerLogin(curPlayer)
+        #骑宠boss状态通知
+        PlayerHorsePetBoss.OnLogin(curPlayer)
         GMT_CTG.OnPlayerLogin(curPlayer)
-        
-    #通知地图服务器自己初始化成功
-    curPlayer.MapServer_InitOK()
     return
 
 ## 增加高手玩家上线广播
@@ -198,9 +216,6 @@
             if checkMark not in ShareDefine.BillboardTypeList:
                 continue
             
-            if checkMark in [ShareDefine.Def_BT_HighLadder]:
-                continue
-            
             billboard = GameWorld.GetBillboard().FindBillboard(checkMark)
             if not billboard:
                 continue
@@ -219,11 +234,7 @@
                 objBillboard = billboard.At(index)
                 if curPlayer.GetID() == objBillboard.GetID():
                     msgMark = notifyDict[order]
-                    break
-#        # 竞技场
-#        elif checkMark == "HighLadder":
-#            highLadderOrder = HighLadder.GetPlayerOrder(curPlayer.GetID()) + 1
-#            msgMark = notifyDict.get(highLadderOrder, "")             
+                    break           
         
         # 有可以广播的,马上广播,退出,不再检查
         if msgMark:
@@ -491,7 +502,8 @@
     PlayerGeTui.NewGuyCallBackGeTui(curPlayer, tick)
     # 设置家族成员离线时间
     SetPlayerOfflineTime(curPlayer)
-    
+    #拍卖行
+    AuctionHouse.OnPlayerLeaveServer(curPlayer)
     #------------镖车逻辑
     #TruckPlayerDisconnectProcess(curPlayer, tick)
     return
@@ -598,8 +610,6 @@
 
     elif packType == IPY_GameServer.CDBPlayerRefresh_Job:
         curPlayer.SetJob(packValue)
-    elif packType == IPY_GameServer.CDBPlayerRefresh_ExAttr1:
-        PlayerControl.SetJobRank(curPlayer, packValue)
         
 #    elif packType == IPY_GameServer.CDBPlayerRefresh_CurrentPlayerType:
 #        #这里应该通知组队那边刷新
@@ -629,7 +639,10 @@
         
     elif packType == IPY_GameServer.CDBPlayerRefresh_ExAttr11:
         PlayerControl.SetTodayXianyuanCoin(curPlayer, packValue)
-
+        
+    elif packType == IPY_GameServer.CDBPlayerRefresh_ExAttr13:
+        PlayerControl.SetPlayerServerGroupID(curPlayer, packValue)
+        
     elif packType == IPY_GameServer.CDBPlayerRefresh_OperateInfo:
         curPlayer.SetOperateInfo(packValue);
     
@@ -753,7 +766,7 @@
 #===============================================================================
     #自己已经初始化成功
     curPlayer.SetInitOK(True)
-    
+    GMShell.OnPlayerLogin(curPlayer)
     #发送请求至目标地图(任务需要登陆家族长触发事件)
     __RefreshFamilyToMapServer(curPlayer)
     return
@@ -879,11 +892,13 @@
     fblinePack = ChPyNetSendPack.tagGCFBLinePlayerCnt()
     fblinePack.MapID = tagMapID
     fblinePack.FBLineInfoList = []
-    for lineID, playerCnt in fbLinePlayerCntDict.items():
+    for lineID, infoList in fbLinePlayerCntDict.items():
         mapLineState = ChPyNetSendPack.tagGCFBLineInfo()
         mapLineState.Clear()
         mapLineState.FBLineID = lineID
-        mapLineState.PlayerCnt = playerCnt
+        mapLineState.PlayerCnt = infoList[0] if infoList else 0
+        mapLineState.ExtraStr = infoList[1] if len(infoList) > 1 else ''
+        mapLineState.ExtraStrLen = len(mapLineState.ExtraStr)
         fblinePack.FBLineInfoList.append(mapLineState)
     
     fblinePack.Count = len(fblinePack.FBLineInfoList)

--
Gitblit v1.8.0