From 7fc14311b1a05376ffb63c6ddb8ccbfda6ee0456 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 11 一月 2019 21:59:21 +0800
Subject: [PATCH] 5722 【后端】【1.5】跨服BOSS开发(增加回本服时如果本服角色死亡则直接复活、回本服刷新本服队伍信息)
---
ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerQuery.py | 8 ++++++++
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py | 6 ++++++
ServerPython/CoreServerGroup/GameServer/Script/Player/ChPlayer.py | 9 +++++++++
3 files changed, 23 insertions(+), 0 deletions(-)
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/Player/ChPlayer.py b/ServerPython/CoreServerGroup/GameServer/Script/Player/ChPlayer.py
index 3e50463..8b9efa3 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/Player/ChPlayer.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/Player/ChPlayer.py
@@ -70,6 +70,15 @@
#---------------------------------------------------------------------
#---------------------------------------------------------------------
+
+def DoRefreshMainServerRole(curPlayer):
+ ## 刷新本服角色信息
+
+ curTeam = curPlayer.GetTeam()
+ if curTeam:
+ PlayerTeam.Sync_TeamMemberInfo(curTeam)
+ return
+
## 玩家登录初始化(封包参数)
# @param index 玩家索引
# @param tick 当前时间
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerQuery.py b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerQuery.py
index 535acd2..72d7a71 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerQuery.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerQuery.py
@@ -637,6 +637,14 @@
PlayerTalk.ChatPYSpeaker(curPlayer, eval(resultName))
return
+ #刷新本服角色信息
+ if callName == 'RefreshMainServerRole':
+ curPlayer = GameWorld.GetPlayerManager().FindPlayerByID(srcPlayerID)
+ if not curPlayer:
+ return
+ ChPlayer.DoRefreshMainServerRole(curPlayer)
+ return
+
# 战盟联赛
if callName =="FamilyWarOver":
GameWorldFamilyWar.MapServer_FamilyWarOver(eval(resultName))
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 9ec0e31..454db42 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py
@@ -235,6 +235,10 @@
Sync_DBPlayer(curPlayer)
+ # 死亡复活
+ if curPlayer.GetHP() <=0 or curPlayer.GetPlayerAction() == IPY_GameWorld.paDie:
+ PlayerRebornByType(curPlayer, ChConfig.rebornType_System, tick)
+
# 强刷一次属性,刷之前重置还没同步过所有属性
curPlayer.SetDict(ChConfig.Def_PlayerKey_NotifyAllAttrState, 0)
playerControl = PlayerControl.PlayerControl(curPlayer)
@@ -243,6 +247,8 @@
if PlayerControl.GetCrossMapID(curPlayer):
CrossRealmPlayer.DoExitCrossRealm(curPlayer)
+ msgInfo = ""
+ GameWorld.GetPlayerManager().GameServer_QueryPlayerResult(curPlayer.GetPlayerID(), 0, 0, "RefreshMainServerRole", msgInfo, len(msgInfo))
return
def Sync_DBPlayer(curPlayer):
--
Gitblit v1.8.0