2683 子 天赋技能和新增双职业各两个技能 / 【后端】天赋技能 - buff层级变化触发技能,添加精灵召唤兽
#ntSummon:(3)普通召唤兽,可继承主人基础属性如攻击
#ntElf:(4)玩家替身,完全拥有玩家属性和被动功能
#ntFairy :(7)同ntSummon,但技能可触发被动功能
| | |
| | | TriggerType_OneDamage, # 伤害降低到1点 49
|
| | | TriggerType_LuckyHit, # 会心一击时增加会心伤害百分比 50
|
| | | TriggerType_ChangeHurtToHP, # 把受到伤害的xx%转化为生命值 51
|
| | | ) = range(1, 52)
|
| | | TriggerType_AddLayer, # BUFF层级增加时 52
|
| | | ) = range(1, 53)
|
| | |
|
| | |
|
| | | # NPC功能类型定义
|
| | |
| | | else:
|
| | | curBuff.SetLayer(layerMaxCnt)
|
| | | changeLayer = True
|
| | | #BUFF层级变化触发被动
|
| | | if buffOwner:
|
| | | PassiveBuffEffMng.OnPassiveSkillTrigger(buffOwner, curObj, curSkill, ChConfig.TriggerType_AddLayer, tick)
|
| | |
|
| | | __BuffCanRemain(buffState, curBuff, i, resultTime, plusValueList, buffOwner)
|
| | | # 此处考虑下plusValue变强是否刷属性
|
| | |
| | |
|
| | | return True
|
| | |
|
| | |
|
| | | #ntSummon:(3)普通召唤兽,可继承主人基础属性如攻击 |
| | | #ntElf:(4)玩家替身,完全拥有玩家属性和被动功能
|
| | | #ntFairy :(7)同ntSummon,但技能可触发被动功能
|
| | |
|
| | | # ntElf 定义为人物使用对地持续性技能,并且人物可以移动,则需要ntElf做依托物的情况
|
| | | # 那么ntElf执行人物的伤害计算和被动触发效果
|
| | | # 被动技能只处理玩家,宠物,和灵
|
| | |
| | | return attacker
|
| | |
|
| | | npcType = attacker.GetType()
|
| | | if npcType not in [IPY_GameWorld.ntPet, IPY_GameWorld.ntElf]:
|
| | | if npcType not in [IPY_GameWorld.ntPet, IPY_GameWorld.ntElf, IPY_GameWorld.ntFairy]:
|
| | | if attacker.GetIsBoss():
|
| | | return attacker
|
| | | return
|
| | |
| | | # --宠物
|
| | | return attacker
|
| | |
|
| | | if npcType == IPY_GameWorld.ntElf:
|
| | | else:
|
| | | # ntElf 定义为人物使用对地持续性技能,并且人物可以移动,则需要ntElf做依托物的情况
|
| | | # 那么ntElf执行人物的伤害计算和被动触发效果
|
| | | attacker = NPCCommon.GetSummonNPCOwner(IPY_GameWorld.gotPlayer, attacker)
|
| | |
| | |
|
| | | if skillAim == ChConfig.Def_UseSkillAim_None:
|
| | | if curSkill.GetSkillType() in ChConfig.Def_CanAttackSkill_List:
|
| | | if target and target.GetGameObjType() == IPY_GameWorld.gotNPC and target.GetType() == IPY_GameWorld.ntElf:
|
| | | if target and target.GetGameObjType() == IPY_GameWorld.gotNPC and target.GetGameNPCObjType() == IPY_GameWorld.gnotSummon:
|
| | | owner = NPCCommon.GetNpcObjOwnerDetail(target)
|
| | | if owner and owner.GetID() == attacker.GetID():
|
| | | # 有害技能特殊处理,不能对自己的召唤物释放
|
| | | target = None
|
| | |
|