hxp
2018-12-22 ef11263b50150e4454815ffc85a78509989cc432
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py
@@ -76,7 +76,7 @@
import PlayerEquipDecompose
import PlayerCoat
import PlayerGreatMaster
import PlayerCostVIP
import PlayerGatherSoul
import PlayerMergeKing
import PlayerMergePK
import GameFuncComm
@@ -108,6 +108,7 @@
import PlayerActTotalRecharge
import PlayerSpringSale
import PlayerFairyCeremony
import CrossRealmPlayer
import ChNetSendPack
import FamilyRobBoss
import FBHelpBattle
@@ -249,7 +250,7 @@
    
    # 屏蔽跨服下关闭和子服重复的数据的发送 pushsend接口, notifyall正常发送
    # !!!必要发送的数据要注意位置
    if GameWorld.IsMergeServer():
    if GameWorld.IsCrossServer():
        curPlayer.SetForbiddenSyncClientState(True)
    
    SyncGuideState(curPlayer)
@@ -308,7 +309,10 @@
        PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FuncChangeLineID, 0)
        PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_HighChangeLineID, 0)
        #GameWorld.DebugLog("离线超过10秒重置切线临时保存的相关记录值!leaveServerSecond=%s" % leaveServerSecond, curPlayer.GetPlayerID())
        # 离线过久恢复为非跨服状态
        if PlayerControl.GetCrossRealmState(curPlayer):
            PlayerControl.SetCrossRealmState(curPlayer, 0)
    # 合服首登处理
    __DoMixServerFirstLogin(curPlayer)
    PlayerBillboard.BillboardOnLogin(curPlayer)
@@ -564,7 +568,8 @@
    SyncChatBubbleBoxState(curPlayer)
    # 副本助战
    FBHelpBattle.DoPlayerLogin(curPlayer)
    # 聚魂
    PlayerGatherSoul.PlayerLogin(curPlayer)
    curPlayer.SetState(0)   # 脱机挂恢复为正常上线
    curPlayer.SetFacePic(0) # 通知数据库是否保存还是下线,做一次恢复,1为保存 0为正常下线
    tjgTime = PlayerTJG.GetTJGTime(curPlayer)
@@ -577,8 +582,9 @@
        
    # 屏蔽跨服下关闭和子服重复的数据的发送 pushsend接口, notifyall正常发送
    # !!!必要发送的数据要注意位置
    if GameWorld.IsMergeServer():
    if GameWorld.IsCrossServer():
        curPlayer.SetForbiddenSyncClientState(False)
        PlayerControl.SetCrossRealmState(curPlayer, 1) # 因为主服上传数据之前该值为1,所以登录跨服后在跨服服务器要设置为1
        
    return
@@ -834,7 +840,7 @@
def UpdatePlayerServerGroupID(curPlayer):
    # 更新自己的服务器组ID, 跨服服务器不处理
    if GameWorld.IsMergeServer():
    if GameWorld.IsCrossServer():
        return
    serverGroupID = GameWorld.GetServerGroupID()
    if not serverGroupID:
@@ -3827,7 +3833,7 @@
    #复活冷却时间(秒)
    rebornTime = GetRebronTime(curPlayer, playerRebornType)    
    #冷却时间到了
    if not CanRebornByTimeOver(curPlayer, rebornTime):
    if playerRebornType != ChConfig.rebornType_System and not CanRebornByTimeOver(curPlayer, rebornTime):
        PlayerControl.NotifyCode(curPlayer, 'RebornCD')
        return False