From a830c6c60f483697f29bf636df63996053479388 Mon Sep 17 00:00:00 2001 From: xdh <xiefantasy@qq.com> Date: 星期一, 27 五月 2019 15:11:17 +0800 Subject: [PATCH] 3729 【2.0】角色勾选自动原地复活消耗了双倍仙玉 --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py | 14 +++++++------- 1 files changed, 7 insertions(+), 7 deletions(-) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py index 898b782..a2d2c12 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py @@ -4093,6 +4093,13 @@ ''' 检查可否复活,为了逻辑统一,这里不适用玩家所在的地图,支持跨服状态下判断跨服地图 本函数不验证玩家死亡状态等,因为有可能前后端复活状态不一致,如果这里拦住可能导致前端躺尸复活不了 ''' + + if curPlayer.GetHP() > 0 and curPlayer.GetPlayerAction() != IPY_GameWorld.paDie: + # 当血量大于0收到复活请求时,一般是前后端复活状态不一致的情况下导致的 + # 由于前端需要根据复活状态判断复活界面相关逻辑,所以这里需要做一些特殊处理,防止某些情况下前后端复活状态不一致导致的一些异常问题 + # 后端非死亡状态的情况,补同步一次复活包给前端 + SyncPlayerReborn(curPlayer, rebornType) + return if rebornType not in ChConfig.Def_RebornTypeList: return @@ -4151,13 +4158,6 @@ def __DoPlayerReborn(curPlayer, rebornType, tick, mapBornPlace=0, isAddSuperBuff=True): ## 执行玩家复活逻辑,该函数没有执行验证是否可复活等,不可直接调用 - - if curPlayer.GetHP() > 0 and curPlayer.GetPlayerAction() != IPY_GameWorld.paDie: - # 当血量大于0收到复活请求时,一般是前后端复活状态不一致的情况下导致的 - # 由于前端需要根据复活状态判断复活界面相关逻辑,所以这里需要做一些特殊处理,防止某些情况下前后端复活状态不一致导致的一些异常问题 - # 后端非死亡状态的情况,补同步一次复活包给前端 - SyncPlayerReborn(curPlayer, rebornType) - return resetHpPercent = ChConfig.Def_MaxRateValue isFBReborn = False -- Gitblit v1.8.0