From 223d88c4b42d4541ed743b83cce2bbd4e1bdac59 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 04 一月 2019 21:06:29 +0800
Subject: [PATCH] 5424 【后端】【1.4】跨服竞技场开发(屏蔽部分日志)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PetControl.py | 36 ++++++++++++++++++++++++++++++++++++
1 files changed, 36 insertions(+), 0 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 a43d19e..bb71268 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PetControl.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PetControl.py
@@ -381,6 +381,7 @@
rolePet.SetMinAtk(PlayerControl.GetPetMinAtk(curPlayer))
rolePet.SetMaxAtk(PlayerControl.GetPetMaxAtk(curPlayer))
rolePet.SetSkillAtkRate(PlayerControl.GetPetSkillAtkRate(curPlayer))
+ GameObj.SetPetDamPer(rolePet, GameObj.GetPetDamPer(curPlayer))
#rolePet.SetMAtkMin(curPlayer.GetMAtkMin())
#rolePet.SetMAtkMax(curPlayer.GetMAtkMax())
rolePet.SetHit(curPlayer.GetHit())
@@ -523,6 +524,41 @@
__RefreshAndSyncPetInfo(rolePet)
#自动出战宠物
__AutoSummonPet_OnLogin(curPlayer, rolePet)
+
+ if not GameWorld.GetDictValueByBit(curPlayer, ChConfig.Def_Player_Dict_VersionFix, ChConfig.Def_VerFix_Pet):
+ GameWorld.SetDictValueByBit(curPlayer, ChConfig.Def_Player_Dict_VersionFix, ChConfig.Def_VerFix_Pet, 1)
+ #等级不能超上限,技能删了重新学
+
+ petPackIndex = ShareDefine.rptPet
+ petPack = curPlayer.GetItemManager().GetPack(petPackIndex)
+ for i in range(petPack.GetCount()):
+ petItem = petPack.GetAt(i)
+ if petItem.IsEmpty():
+ continue
+ petItemNPCID = petItem.GetUserAttr(ShareDefine.Def_IudetPet_NPCID)
+ curClassLV = petItem.GetUserAttr(ShareDefine.Def_IudetPet_ClassLV) + 1
+ petIpyData = PlayerPet.GetPetIpydata(petItemNPCID)
+ if not petIpyData:
+ continue
+ maxLV = petIpyData.GetMaxRank()
+ if curClassLV > maxLV:
+ petItem.SetUserAttr(ShareDefine.Def_IudetPet_ClassLV, max(0, maxLV - 1))
+ petItem.SetUserAttr(ShareDefine.Def_IudetPet_Exp, 0)
+ GameWorld.Log(' 老号宠物等级超过上限,宠物ID=%s,原LV=%s,重置为=%s'%(petItemNPCID, curClassLV, maxLV))
+ curClassLV = maxLV
+ petItem.ClearUserAttr(ShareDefine.Def_IudetPet_Skill)
+ petSkillList = petIpyData.GetSkillID()
+ petSkillUnLockList = petIpyData.GetSkillUnLock()
+ for i, skillid in enumerate(petSkillList):
+ limitPetClassLV = petSkillUnLockList[i] # 学习此技能所需宠物阶级
+ if curClassLV < limitPetClassLV:
+ continue
+ petItem.AddUserAttr(ShareDefine.Def_IudetPet_Skill, skillid)
+ if ReCallFightPet(curPlayer):
+ PlayerPet.AutoSummonPet(curPlayer)
+ # 重刷战力
+ PlayerPet.SetPetSkillFightPower(curPlayer) # 技能战力重算
+ PlayerPet.RefreshPetItemAddAttr(curPlayer, True)
return
#---------------------------------------------------------------------
--
Gitblit v1.8.0