| | |
| | | import BuffSkill
|
| | | import FBLogic
|
| | | import SkillShell
|
| | | import EventShell
|
| | | import PetControl
|
| | | import random
|
| | | import OperControlManager
|
| | |
| | | result = "SummonNPC"
|
| | | else:
|
| | | result = "NormalNPC"
|
| | | |
| | | elif npcObjType == IPY_GameWorld.gnotTruck: #骠车
|
| | | result = "Truck"
|
| | |
|
| | | elif npcObjType == IPY_GameWorld.gnotPet: #宠物
|
| | | result = "Pet"
|
| | |
| | | if not IsSkipSkillCD(curPlayer, target, curSkill, tick):
|
| | | #设置玩家所学技能冷却CD
|
| | | SkillCommon.SetSkillRemainTime(curPlayerSkill, PlayerControl.GetReduceSkillCDPer(curPlayer), tick, curPlayer)
|
| | | #调用任务触发器
|
| | | #EventShell.EventRespons_UseSkillOK(curPlayer, skillTypeID)
|
| | | #执行连环被动技能处理
|
| | | #__DealWithPassivitySkill( curPlayer, target, curPlayerSkill, tick )
|
| | | #执行被动buff
|
| | |
| | | if GameObj.GetHP(curNPC) <= 0:
|
| | | return
|
| | |
|
| | | #排除镖车
|
| | | if curNPC.GetGameNPCObjType() == IPY_GameWorld.gnotTruck:
|
| | | return
|
| | | |
| | | #排除鹿
|
| | | if curNPC.GetType() == IPY_GameWorld.ntDeer:
|
| | | return
|
| | |
| | | #攻击对象
|
| | | curTag = GameWorld.GetObj(objID, curObjType)
|
| | | if not curTag:
|
| | | continue
|
| | | |
| | | #链式攻击不能对镖车释放
|
| | | if curObjType == IPY_GameWorld.gotNPC and curTag.GetGameNPCObjType() == IPY_GameWorld.gnotTruck:
|
| | | continue
|
| | |
|
| | | #具体判定对象是否可攻击
|
| | |
| | | #攻击对象
|
| | | curTag = GameWorld.GetObj(curObj.GetID(), curObjType)
|
| | | if not curTag:
|
| | | continue
|
| | | |
| | | #链式攻击不能对镖车释放
|
| | | if curObjType == IPY_GameWorld.gotNPC and curTag.GetGameNPCObjType() == IPY_GameWorld.gnotTruck:
|
| | | continue
|
| | |
|
| | | if __IsAlreadyAttack(curTag, resultList):
|