实体对象说明&变量值说明
2020/11/07 日 1.1.0 版本内容更新
最后更新于
2020/11/07 日 1.1.0 版本内容更新
最后更新于
需要注意的时候,当属性类型为 "RUNTIME" 伤害,不管是 attacker 还是 entity 该对象都是自身 attacker-r/entity-r 示例 - 对被攻击者10格范围内除攻击者外的所有实体造成 1000 点伤害 - "attack entity-r:10,true,false 1000" 如果是只要对 玩家类型 造成伤害 - "attack entity-r:10,true,false,[PLAYER] 1000"
type类型列表: https://bukkit.windit.net/javadoc/org/bukkit/entity/EntityType.html
每个属性配置都会有 run 这部分的配置,属性的效果也是在这里实现,变量值的关键词为 "value" 具体格式是
一个属性配置的 run 列表可以存在 无限个变量值
这个很简单 [计算公式] 内部有一个通用变量 {实体 取值名(属性名)} 通过该变量即可获取对应实体身上的对应属性值,取值名 一般都是 属性名 但也有两个特殊的 "当前生命 / 最大生命" 该取值名不是属性,而是内部的一个取值名,可获取实体当前剩余生命力及实体的最大生命(由于怪物无法使用生命力属性,所以需要通过这个方式来读取怪物的最大生命值)
如果取值名为 AttributePlus 自带属性的话,你要注意输入的 属性名 必须是 attribute.yml 内默认的属性名,而不是你修改后的属性名 默认属性名你可以在这里查看: https://www.mcbbs.net/thread-898670-1-1.html
像 物理伤害 这种 支持最小值~最大值随机 的属性,我们要获取其最小值跟最大值分别为
{entity 物理伤害} — 最小值
{entity 物理伤害[1]} — 最大值
在变量值内可以使用 %ae_<r-v:变量名-变量名>% 或 %ae_<r-a:属性名-属性名[1]>% 两个 PlaceholderAPI 变量来得出 随机值!
很简单,你只需要在公式计算内加上 {value 变量名} 即可,该方法存在于 1.0.2 以上版本
类型
对象
attacker
触发者(攻击者) / 自身
entity
被触发者(被攻击者) / 自身
attacker-r:半径范围,排除触发者,排除被触发者,(可选)[类型,类型]
以触发者为半径的所有实体
entity-r:半径范围,排除触发者,排除被触发者,(可选)[类型,类型]
以被触发者为半径的所有实体