xdh
2018-12-19 57a7f963e83329c191e135c8102b0614dea6d5b4
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
@@ -246,6 +246,11 @@
    
    #同步GameServer自己的地图ID
    curPlayer.Sync_GameServer_MapID()
    # 屏蔽跨服下关闭和子服重复的数据的发送 pushsend接口, notifyall正常发送
    # !!!必要发送的数据要注意位置
    if GameWorld.IsMergeServer():
        curPlayer.SetForbiddenSyncClientState(True)
    
    SyncGuideState(curPlayer)
    
@@ -559,7 +564,8 @@
    SyncChatBubbleBoxState(curPlayer)
    # 副本助战
    FBHelpBattle.DoPlayerLogin(curPlayer)
    # 聚魂
    PlayerGatherSoul.PlayerLogin(curPlayer)
    curPlayer.SetState(0)   # 脱机挂恢复为正常上线
    curPlayer.SetFacePic(0) # 通知数据库是否保存还是下线,做一次恢复,1为保存 0为正常下线
    tjgTime = PlayerTJG.GetTJGTime(curPlayer)
@@ -569,6 +575,12 @@
    # 如果被禁言的,上线同步前端
    if curPlayer.GetGMForbidenTalk():
        curPlayer.SendPropertyRefresh(ShareDefine.CDBPlayerRefresh_ForbidenTalk, curPlayer.GetGMForbidenTalk(), False)
    # 屏蔽跨服下关闭和子服重复的数据的发送 pushsend接口, notifyall正常发送
    # !!!必要发送的数据要注意位置
    if GameWorld.IsMergeServer():
        curPlayer.SetForbiddenSyncClientState(False)
    return
@@ -2507,7 +2519,7 @@
    PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_RoomID, 0)
    
    #下线召回宠物
    #PetControl.ReCallFightPet(curPlayer)
    PetControl.ReCallFightPet(curPlayer)
    
    PlayerTJG.CalcPlayerTJG(curPlayer, tick)
    
@@ -3923,8 +3935,13 @@
        SkillCommon.AddBuffBySkillType_NoRefurbish(curPlayer , ChConfig.Def_SkillID_ReviveTired, tick, buffSkillLV)
        GameWorld.DebugLog('    复活疲劳BUff buffSkillLV=%s'%(buffSkillLV))
        PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_IsAddReviveTired,0)
    #复活后清除角色身上的打BOSS和PK状态
    validTime = IpyGameDataPY.GetFuncCfg("PKConfig", 4) * 1000
    if PlayerState.IsInPKState(curPlayer):
        PlayerState.SetPKStateTick(curPlayer, tick - validTime)
    if PlayerState.IsInBossState(curPlayer):
        PlayerState.SetBossStateTick(curPlayer, tick- validTime)
    
    #重算属性
    playerControl = PlayerControl.PlayerControl(curPlayer)
    playerControl.RefreshAllState()