From e641855eb308bba24a5584511b92341731b18915 Mon Sep 17 00:00:00 2001
From: xdh <xiefantasy@qq.com>
Date: 星期六, 25 五月 2019 17:02:23 +0800
Subject: [PATCH] 6779 【后端】【2.0】BOSS之家多图合一 批(掉落广播修改)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PetControl.py | 27 ++++++++++++++++++---------
1 files changed, 18 insertions(+), 9 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PetControl.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PetControl.py
index 023be02..827b656 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PetControl.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PetControl.py
@@ -28,7 +28,6 @@
import IPY_GameWorld
import ChConfig
import GameWorld
-import ReadChConfig
import BuffSkill
import SkillShell
import PlayerPet
@@ -240,7 +239,7 @@
# @return 返回值无意义
# @remarks 初始化宠物属性
def InitRolePet(rolePet, canSyncClient=True):
- #---初始化时钟,致命一击倍率---
+ #---初始化时钟---
NPCCommon.InitNPC(rolePet)
#---初始化仇恨列表---
@@ -517,13 +516,23 @@
def DoLogic_PetInfo_OnLogin(curPlayer, tick):
petMgr = curPlayer.GetPetMgr()
-
- for index in range(0, petMgr.PetList_Cnt()):
- rolePet = petMgr.PetList_At(index)
- #刷新宠物信息并通知客户端
- __RefreshAndSyncPetInfo(rolePet)
- #自动出战宠物
- __AutoSummonPet_OnLogin(curPlayer, rolePet)
+ if GameWorld.IsCrossServer():
+ ''' 0435宠物出现包同步的ID是根据宠物的列表位置来的,比如在第2位发的就是2,而地图的可能是1,会导致ID不一致
+ 所以跨服服务器登录时先清除出战宠物列表,确保登录地图成功后都是从1开始的即可
+ '''
+ petList = []
+ for index in range(0, petMgr.PetList_Cnt()):
+ rolePet = petMgr.PetList_At(index)
+ petList.append(rolePet)
+ for rolePet in petList:
+ petMgr.PetList_SetFree(rolePet.GetRolePet().PetID)
+ else:
+ for index in range(0, petMgr.PetList_Cnt()):
+ rolePet = petMgr.PetList_At(index)
+ #刷新宠物信息并通知客户端
+ __RefreshAndSyncPetInfo(rolePet)
+ #自动出战宠物
+ __AutoSummonPet_OnLogin(curPlayer, rolePet)
return
#---------------------------------------------------------------------
--
Gitblit v1.8.0