CraneAttribute 鹤属性
加班制作中...一定不鸽!
自定义属性类型
允许外部注册不同的属性类型
默认有几个常用属性类型ATTACK_AND_DEFENSE:攻击和防御类型ACCIDENTAL_DAMAGED:意外受伤类型,比如溺水、摔落、窒息、CUSTOM等UPDATE:属性更新类型RUNTIME:每隔几秒运行一次类型KILL:击杀实体类型DEFAULT:默认类型
使用 AttributeType.create(type: String, trigger: AttributeTrigger<out Event>) 注册
属性触发器
每个属性类型都对应一个属性触发器,它决定了这个属性类型是如何被触发的
比如 ATTACK_AND_DEFENSE 属性类型对应一个 AttackAndDefenseTrigger 触发器
所有类型(DEFAULT 除外)都应该对应一个触发器
属性处理器
每个属性类型都对应一个属性处理器,它在这个属性类型触发时使用,它决定了这个属性类型中的属性是如何处理的
比如 ATTACK_AND_DEFENSE 属性类型对应一个 AttackAndDefenseHandler 处理器
所有类型(DEFAULT 除外)都应该对应一个处理器,一旦触发,就应该发生处理
自定义属性
完全使用脚本属性,只有几个属性是插件注册的
自定义条件
属性源
允许外部注册不同的属性源类型
默认有几个常用属性源类型EquipmentAttributeSource:解析装备格子上的物品的Lore和NBT中的属性ItemStackAttributeSource:解析物品的Lore和NBT中的属性ListAttributeSource:解析 List<String> 中的属性DoubleArrayAttributeSource:解析 Map<String, Array<Double>> 中的属性DoubleAttributeSource:解析 Map<String, Double> 中的属性
兼容AttributePlus
兼容AttributePlus中的AttributeAPI,也就是大部分AttributePlus附属插件都可以使用
