| | |
| | | import IPY_GameWorld
|
| | | import ChConfig
|
| | | import GameWorld
|
| | | import ReadChConfig
|
| | | import BuffSkill
|
| | | import SkillShell
|
| | | import PlayerPet
|
| | |
| | | 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
|
| | | #---------------------------------------------------------------------
|