hxp
2022-08-23 5fa02b1adbf1900358ab44a915cd9e841dcdf45f
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py
@@ -1215,6 +1215,12 @@
    if not GameWorld.IsCrossServer() and (PlayerControl.GetCrossMapID(curPlayer) or PlayerControl.GetCustomMapID(curPlayer)):
        GameWorld.DebugLog("===登录本服地图时,处于跨服或自定义场景状态,不刷新视野!", curPlayer.GetPlayerID())
        PlayerControl.SetPlayerSightLevel(curPlayer, curPlayer.GetID())
    elif not GameWorld.IsCrossServer():
        realmDifficulty = PlayerControl.GetMapRealmDifficulty(curPlayer)
        if realmDifficulty:
            GameWorld.DebugLog("===登录本服地图时,处于境界难度地图,自动设置难度! realmDifficulty=%s" % realmDifficulty, curPlayer.GetPlayerID())
            PlayerControl.SetRealmDifficulty(curPlayer, realmDifficulty)
    PlayerState.ChangePlayerSigh(curPlayer, tick)
    
    if GameWorld.IsCrossServer():
@@ -1573,6 +1579,12 @@
        if not GameWorld.IsCrossServer() and (PlayerControl.GetCrossMapID(curPlayer) or curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_ClientCustomScene)):
            GameWorld.DebugLog("===本服LoadMapOK时玩家处于跨服或自定义场景状态,不设置可见!", curPlayer.GetPlayerID())
            PlayerControl.SetPlayerSightLevel(curPlayer, curPlayer.GetID())
        elif not GameWorld.IsCrossServer():
            realmDifficulty = PlayerControl.GetMapRealmDifficulty(curPlayer)
            if realmDifficulty:
                GameWorld.DebugLog("===本服LoadMapOK时玩家处于境界难度地图,自动设置难度!realmDifficulty=%s" % realmDifficulty, curPlayer.GetPlayerID())
                PlayerControl.SetRealmDifficulty(curPlayer, realmDifficulty)
        curPlayer.RefreshView()
        curPlayer.SetVisible(True)
        
@@ -6164,3 +6176,16 @@
        GameObj.SetHP(curPlayer, updHP)
        
    return
#// A2 35 选择境界难度层级 #tagCMSelectRealmDifficulty
#
#struct    tagCMSelectRealmDifficulty
#{
#    tagHead        Head;
#    BYTE        RealmDifficulty;    //境界难度 = 100 + 所选境界等级,如境界13,则发113
#};
def OnSelectRealmDifficulty(index, clientData, tick):
    curPlayer = GameWorld.GetPlayerManager().GetPlayerByIndex(index)
    PlayerControl.SetRealmDifficulty(curPlayer, clientData.RealmDifficulty)
    return