RUNTIME 类属性
RUNTIME 类型的属性,会隔几秒就生效一次,仅玩家生效。
隔几秒到底是几秒?这取决于你在 attribute.yml 中的配置。比如这里就是 5 秒。
YAML
attribute:
options:
runtimeAttributeTime: 5生命恢复
我们写一个简单的生命恢复属性。
介绍
每1点生命恢复,就会每隔几秒恢复1点生命。 因为 RUNTIME 类属性是隔几秒就生效一次的,也就是周期性的,最符合这个逻辑的就是生命恢复这个属性了。
思路
JavaScript
var priority = 131
var combatPower = 1.0
var attributeName = "生命恢复"
var attributeType = "RUNTIME"
var placeholder = "health_regeneration"
function onLoad(attr) {
return attr
}
//编写对应的 run 函数
function run(attr, entity, handle) {
//通过 attr.getRandomValue 获取触发者的对应属性值
var regenerationValue = attr.getRandomValue(entity, "生命恢复", handle)
//使用 Utils.safeHeal 安全的为触发者恢复血量
Utils.safeHeal(entity, regenerationValue)
return true
}