服务器版本1.12.2,AttributePlus版本是3.3.1.1,求一个百分比伤害的属性(包括当前生命百分比和最大生命百分比两种,且可被插件自带的defence属性抵消)
AP3自带百分比属性 , 在属性lore的后面输入 (%) 即可
例子:
- "物理伤害: 100 (%)"
例子:
- "物理伤害: 100 (%)"
梦九之魂 发表于 2023-8-14 22:49
AP3自带百分比属性 , 在属性lore的后面输入 (%) 即可
例子:
需要的是造成攻击目标百分比生命伤害的属性
没测试过,你自己试下,优先级设置低于defence
复制代码
- var priority = 1
- var attributeName = "百分比伤害"
- var placeholder = "percentdamage"
- var attributeType = "ATTACK"
- var combatPower = 1.0
- function onLoad(Attr){
- Attr.setSkipFilter(true)
- Utils.registerOtherAttribute("当前生命百分比伤害", 1.0, "healthdamage")
- Utils.registerOtherAttribute("最大生命百分比伤害", 1.0, "maxhealthdamage")
- return Attr
- }
- function runAttack(Attr, attacker, entity){
- var value1 = Attr.getRandomValue(attacker, "当前生命百分比伤害") / 100
- var value2 = Attr.getRandomValue(attacker, "最大生命百分比伤害") / 100
- var healthdamage = 0.0
- var maxhealthdamage = 0.0
-
- if(value1 > 0.0) var healthdamage = entity.getHealth() * value1
- if(value2 > 0.0) var maxhealthdamage = entity.getMaxHealth() * value2
- var damage = healthdamage + maxhealthdamage
- Attr.addDamage(attacker, damage)
- }