| | |
| | | import PlayerActivity
|
| | | import PlayerControl
|
| | | import IpyGameDataPY
|
| | | import SkillCommon
|
| | | import PyGameData
|
| | | import BuffSkill
|
| | | import PlayerTJG
|
| | | import NPCCommon
|
| | | import ChConfig
|
| | | import GameObj
|
| | |
| | | if not g_familyOwnerBossHurt:
|
| | | g_familyOwnerBossHurt = FamilyOwnerBossHurt()
|
| | | return g_familyOwnerBossHurt
|
| | |
|
| | | def OnPlayerLogin(curPlayer):
|
| | | if GameWorld.GetGameWorld().GetGameWorldDictByKey(ShareDefine.Def_Notify_WorldKey_DailyActionState % ShareDefine.DailyActionID_FamilyRobBoss):
|
| | | __DoCheckHorsePetRobBossKillCntBuff(curPlayer, GameWorld.GetGameWorld().GetTick())
|
| | | return
|
| | |
|
| | | def IsHorsePetRobBoss(bossID):
|
| | | ## 是否骑宠争夺bossID
|
| | |
| | | return hurtPack
|
| | |
|
| | |
|
| | | def OnFamilyKillHorsePetRobBossCntChange(tick):
|
| | | ## 仙盟击杀骑宠boss个数变更
|
| | | |
| | | playerManager = GameWorld.GetPlayerManager()
|
| | | for i in xrange(playerManager.OnlineCount()):
|
| | | curPlayer = playerManager.OnlineAt(i)
|
| | | if curPlayer.IsEmpty():
|
| | | continue
|
| | | __DoCheckHorsePetRobBossKillCntBuff(curPlayer, tick)
|
| | | |
| | | return
|
| | |
|
| | | def __DoCheckHorsePetRobBossKillCntBuff(curPlayer, tick):
|
| | | familyID = curPlayer.GetFamilyID()
|
| | | if not familyID:
|
| | | return
|
| | | |
| | | if PlayerTJG.GetIsTJG(curPlayer):
|
| | | return
|
| | | |
| | | killCount = PyGameData.g_familyKillHorsePetRobBossCntDict.get(familyID, 0)
|
| | | skillTypeID = ChConfig.Def_SkillID_HorsePetRobBossKillCntBuff
|
| | | |
| | | skillInfo = SkillCommon.FindBuffByID(curPlayer, skillTypeID)
|
| | | findBuff, buffManager, buffType, findSkill = skillInfo
|
| | | if not findSkill:
|
| | | return
|
| | | killLV = min(killCount, findSkill.GetSkillMaxLV())
|
| | | |
| | | if findBuff:
|
| | | buffSkill = findBuff.GetSkill()
|
| | | if not buffSkill:
|
| | | return
|
| | | curBuffLV = buffSkill.GetSkillLV()
|
| | | if curBuffLV == killLV:
|
| | | #GameWorld.DebugLog("骑宠怨念buff等级不变: familyID=%s,killLV=%s,curBuffLV=%s" % (familyID, killLV, curBuffLV), curPlayer.GetPlayerID())
|
| | | return
|
| | | |
| | | elif not killLV:
|
| | | #GameWorld.DebugLog("无骑宠怨念buff: familyID=%s,killLV=%s" % (familyID, killLV), curPlayer.GetPlayerID())
|
| | | return
|
| | | |
| | | if not killLV:
|
| | | #GameWorld.DebugLog("删除骑宠怨念buff: familyID=%s,killLV=%s" % (familyID, killLV), curPlayer.GetPlayerID())
|
| | | BuffSkill.DelBuffBySkillID(curPlayer, skillTypeID, tick)
|
| | | else:
|
| | | #GameWorld.DebugLog("变更骑宠怨念buff等级: familyID=%s,killLV=%s" % (familyID, killLV), curPlayer.GetPlayerID())
|
| | | curSkill = GameWorld.GetGameData().FindSkillByType(skillTypeID, killLV)
|
| | | BuffSkill.AddBuffNoRefreshState(curPlayer, buffType, curSkill, tick, [], curPlayer)
|
| | | |
| | | return
|
| | |
|
| | |
|
| | |
|
| | |
|