这个功能为什么只提供给 付费版 使用呢?
— "因为现在付费版只有 skill 一个付费关键词,显得付费版太单调"
这个功能未来会改为 免费版 功能嘛?
— "不一定,等付费版额外的方法功能多点应该会改"
那为什么不直接免费呢?
— "你养我嘛~"
这个功能主要是用于储存数据,配合该功能做到 数据达到一定值的时候触发 效果,下面会给出示例
数据储存为持久性,也就是你在下次触发属性的时候也能对其进行操作
该功能启动后将对 value 关键词新增 "{对象 data,数据名}" 变量,下面示例也会介绍到
同时该功能也会附带PAPI变量,格式为 "%ae_<data:数据名>%" 可以显示该数据的值 (1.0.7)
#示例效果
#受到攻击时抵消并吸收攻击者伤害,当吸收的伤害值达到 1000 时对下一个攻击者触发雷击伤害
#伤害为 储存的伤害数据 触发后重置数据值并重新累积
AttributeExtension:
#自定义
newInjured:
key: "伤害吸收"
placeholder: "newinjured"
run:
- "value v [{entity 伤害吸收}]"
# 这里的 {entity data,伤害吸收值} 就是读取该对象数据储存内 伤害吸收值 数据的值
- "value vDamage [{entity data,伤害吸收值}+{value v}]"
# 判断储存的数据值是否 大于或等于 1000 满足则继续执行,不满足则跳至 第九行(10)
- "premise vDamage >= 1000 true,false ~9"
# 满足时重置该对象数据储存内 伤害吸收值 数据的值
- "data entity 伤害吸收值 reset"
# 将伤害释放
- "attack attacker vDamage"
# 雷击特效
- "lightning attacker"
- "command entity [fly,say &f{e:attacker}说: &eAP牛逼]"
- "message entity [&6&l! &f伤害吸收达到 &c1000 &f点,对 &c{e:attacker} &f造成 &c{v:vDamage} &f伤害]"
- "end"
# 不满足上方 premise 条件时抵消攻击者伤害并往 伤害吸收值 数据内增加储存值
- "data entity 伤害吸收值 add v"
# 抵消伤害
- "damage take v"
- "message entity [&6&l! &f抵消 &c{v:v} &f点伤害并吸收,已吸收 &c{v:vDamage} &f点伤害值,达到&c1000&f点则释放伤害!]"
type: "INJURED"