| | |
| | | if defenderCampType == ChConfig.CampType_Justice:
|
| | | return ChConfig.Type_Relation_Friend, ChConfig.Def_PASysMessage_None
|
| | |
|
| | | #私有木桩只能自己打自己的
|
| | | if curTagNormalNPC.GetType() in [ChConfig.ntPriWoodPilePVE, ChConfig.ntPriWoodPilePVP]:
|
| | | summonPlayerID = curTagNormalNPC.GetDictByKey(ChConfig.Def_NPC_Dict_PriWoodPilePlayerID)
|
| | | if curPlayer.GetPlayerID() != summonPlayerID:
|
| | | return ChConfig.Type_Relation_Friend , ChConfig.Def_PASysMessage_None
|
| | | return ChConfig.Type_Relation_Enemy , ChConfig.Def_PASysMessage_None
|
| | | |
| | | return ChConfig.Type_Relation_Enemy , ChConfig.Def_PASysMessage_None
|
| | |
|
| | | ## 攻击
|
| | |
| | | # @return hurtType : HurtType 伤害结构体类
|
| | | # @remarks 函数详细说明.
|
| | | def DoAttack(curPlayer, curTagNormalNPC, skill, skillValue, skillPercent, skillHurtList, tick):
|
| | | #finalHurtPer = SkillCommon.GetSkillFinalHurtPer(curPlayer, curTagNormalNPC, skill, tick)
|
| | |
|
| | | curTagNPCHPBeforeAtk = GameObj.GetHP(curTagNormalNPC)
|
| | | hurtType = AttackCommon.GetHurtHP(curPlayer, curTagNormalNPC, skill, skillValue, skillPercent, tick)
|
| | |
| | | return
|
| | |
|
| | | if GameObj.GetHP(curTagNormalNPC) <= 0:
|
| | | if not ChNPC.OnCheckCanDie(curPlayer, curTagNormalNPC, skill, tick):
|
| | | return
|
| | | #执行击杀NPC逻辑
|
| | | FBLogic.DoFB_Player_KillNPC(curPlayer , curTagNormalNPC , tick)
|
| | | NPCCommon.OnPlayerAttackNPCDie(curTagNormalNPC, curPlayer, skill)
|
| | | FBLogic.DoFB_Player_KillNPC(curPlayer , curTagNormalNPC , tick)
|
| | | #NPC死亡
|
| | | curTagNormalNPCControl = NPCCommon.NPCControl(curTagNormalNPC)
|
| | | curTagNormalNPCControl.SetKilled()
|