• 周年纪念勋章活动已圆满结束,如有已购买但仍未申请的用户,可以通过对应勋章的下载链接申请~
资源图标

原创 闭源 娱乐 AttributePotion——属性药水|AP.SX属性兼容|龙核萌芽按键兼容 2.0.9

版权类型
原创
插件中文名称
属性药水
插件英文名称
AttributePotion
原帖地址
#
支持的核心(服务端)
  1. Spigot
  2. Paper
语言支持
中文(简体)
前置组件
适配版本(Java)
  1. 1.20
  2. 1.19
  3. 1.18
  4. 1.17
  5. 1.16
  6. 1.15
  7. 1.14
  8. 1.13
  9. 1.12
注:本插件为2.0版本,是基于1x版本进行的更新(修复bug、优化性能、更新功能【1x版本很多地方性能写的很烂,2x性能至少提升200%】),1x已开源(github),2x版本闭源并进行混淆(承诺绝无恶意代码、后门),如该混淆不符合论坛规定版主可关闭该帖。

功能介绍:
1.属性兼容AP2/AP3/SX2/SX3
2.识别方式有name/lore/nbt识别药水
3.支持龙核/萌芽按键使用药水
4.可设置药水组,同组药水受限于组冷却
5.药水可判断条件进行使用
6.药水拥有独立冷却时间
7.药水添加属性支持变量与运算
8.可添加原版药水效果
9.支持生命/魔力/饥饿值固定恢复、当前百分比恢复、最大百分比恢复
10.可在开始使用药水/使用失败/使用成功/药水结束时执行指令
11.可设置药水使用后是否消耗
12.可设置是否需要按shift使用药水
13.可设置死亡、退服时是否清除药水属性效果
14.可设置物品原版冷却效果显示
15.可设置给范围内所有玩家添加药水属性
16.可在文件夹内创建独立药水文件或一个文件里写多个药水

配置文件:
YAML:
# 进服数据加载延迟,单位tick,20tick=1秒
LoadDelay: 60

# 数据库设置
MySQL:
  # 是否启用mysql数据库存储,false则SQLite存储
  enable: false
  host: localhost
  port: 3306
  username: root
  password: root
  fileName: AttributePotion
  tableName: data
  # MySQL5 使用: com.mysql.jdbc.Driver
  # MySQL8 使用: com.mysql.cj.jdbc.Driver
  driver: 'com.mysql.jdbc.Driver'
  jdbc: '?useSSL=false&useUnicode=true&characterEncoding=utf8'

# 启用什么插件属性,默认AP3(可填AP3/AP2/SX3/SX2任意一个)
AttributePlugin: 'AP3'

# 用什么识别药水,name/lore/nbt,nbt的话需要写NbtKey节点
Match: 'name'

# 匹配nbt时判断的键,例如
# nbt:
#   apn: '测试药水'
NbtKey: 'apn'

# 是否仅包含匹配内容即可,false则整个需要匹配
Contain: true

# 是否启用龙核兼容,修改之后需要重启
DragonCore: false

# 按键及对应的槽位
DragonKey:
  Z: '额外槽位1'
  X: '额外槽位2'
  C: '额外槽位3'

# 是否启用萌芽兼容,修改之后需要重启
GermPlugin: false

GermKey:
  44: '额外槽位1'
  45: '额外槽位2'
  46: '额外槽位3'

# 药水组设置,每个药水有单独的冷却,同组的药水共享冷却,例如使用了力量药水,30秒内无法再次使用力量或体力药水
# 而30秒后初级药水组冷却完毕,但力量药水冷却60秒,仍旧无法使用,此时你只能使用体力药水
Group:
  初级药水组: 10
  中级药水组: 30
  高级药水组: 60

# 消息
Messages:
  reload: "&a插件配置重载成功!"
  shift: '&a请按住shift再使用药水!'
  usePotion: "&a成功为玩家&6 %player% &a添加 %potion% &a效果,持续&e %time% &a秒"
  useDeny: "&c您不满足 %id% &c药水的使用条件!"
  outPotion: "%potion% &5效果已结束!"
  onPotionCooldown: "&b%potion% &7冷却中,剩余&e %cooldown% &7秒!"
  onGroupCooldown: "&b%group% &7冷却中,剩余&e %cooldown% &7秒!"
  nearPotion: '&7成功为&e %range% &7格范围内的玩家:&6%playerList% &7使用了&b %potion%'
  otherPotion: '&7您享受到来自&6 %player% &7的&b %potion% &7属性效果!'

YAML:
# 药水节点名,不可重复
测试药水:
  # match识别的内容,不填的话默认为节点名
  id: '&a测试药水'
  # 药水所属药水组(可选,默认为空)
  group: '初级药水组'
  # 药水冷却时间,单位/秒(默认是0,double类型,可写小数)
  cooldown: 30.0
  # 使用药水的条件,可以用变量,支持运算,后面是条件不满足时发生的消息
  conditions:
    - '%player_level% >= 10;&c你的等级不足10级,无法使用{id}!'
    - '"%player_has_permission_vip%" == "yes";&c你没有VIP权限,无法使用{id}!'
  # 药水属性持续时间,单位是秒,可写小数,写-1的话表示永久属性,不写默认为0立即使用
  time: 10.0
  # 药水添加的属性,格式是 【属性: 数值】,不支持xx-xx格式
  # 可以用变量,进行运算。你也可以用math拓展进行运算,例如%math_0_{player_level}*2+10%(可选)
  attributes:
    物理伤害: 100
    生命力: "%player_level%*2+100"
  # 原版药水效果
  effects:
    # 药水效果: '药水等级-持续时间' ,例如这个是给予1级夜视效果,持续10秒,用{time}可以取上面写的药水属性持续时间
    # 药水效果参见https://bukkit.windit.net/javadoc/org/bukkit/potion/PotionEffectType.html
    NIGHT_VISION: '1-10'
  # 使用后的恢复效果(可选)
  regen:
    # 三个参数分别是数值,时间,模式,用{time}可以取上面写的药水属性持续时间,这里的时间只能是整数
    # 回复生命值,写0表示立即回复,写负数也可以,就是扣除生命
    # 0表示固定数值回复,例如这里表示每秒回复10点,持续5秒
    # 1表示当前生命百分比回复,写1表示每秒回复当前生命的10%,持续5秒
    # 2表示最大生命百分比回复,写2表示每秒回复最大生命的10%,持续5秒
    health: '10-5-2'
    # 回复SkillAPI的魔力值
    mana: '10-{time}-1'
    # 回复饥饿值
    hunger: '2-5-0'
  # 使用药水执行的指令,console表示以控制台执行,不写表示玩家身份执行(可选) [注:不支持op执行]
  command:
    # 开始使用药水后执行,注意此时并未通过条件和冷却判断
    start:
      - 'say &e尝试使用{id}...'
    # 使用药水失败后执行,可能是因为条件或冷却导致失败
    failed:
      - 'say &c使用{id}失败了!'
    # 成功使用药水后执行
    success:
      - 'say &a成功使用了{id}!奖励你一个钻石'
      - '[console]give %player_name% diamond 1'
    # 药水结束后执行
    end:
      - 'say &c{id}效果结束了!送给你一个泥土'
      - '[console]give %player_name% dirt 1'
  # 范围大小(可选,需要你启用下面的给范围内所有玩家添加药水,默认0)
  distance: 10.0
  # 其他设置
  optional:
    # 使用药水后是否消耗
    consume: true
    # 是否需要蹲下才能使用
    shift: false
    # 死亡后是否清除药水属性/恢复状态
    death: false
    # 退出服务器后是否清除药水属性/恢复状态
    quit: false
    # 是否设置物品冷却。这是原版的那种,较为直观展示冷却时间,但是会导致同类型材料的物品显示一同进入冷却
    cool: false
    # 是否范围内所有玩家享受药水效果
    range: false


# 一个什么作用都没有的药水,你可以删除任何一项配置
空药水:
  id: '空药水'
  cooldown: 0.0
  group: ''
  conditions: []
  attributes: ''
  time: 0.0
  regen:
  effects:
  command:
    start: []
    failed: []
    success: []
    end: []
  distance: 0.0
  optional:
    consume: true
    shift: false
    death: false
    quit: false
    cool: false
    range: false

插件指令:
/apn reload - 重载插件配置
/apn debug - 切换debug模式
/apn add 玩家名 药水节点 [force] - 给玩家使用药水,不需要玩家拥有药水物品,当不带force参数时需要判断条件、冷却,带上时不判断直接成功添加

插件变量:
%apn_id_药水节点% - 获取药水的id,也就是用于识别的那个
%apn_group_药水节点% - 获取药水的药水组
%apn_time_药水节点% - 获取药水的持续时间
%apn_cooldown_药水节点% - 获取药水的冷却时间(配置里写的那个)
%apn_distance_药水节点% - 获取药水的范围距离
%apn_consume_药水节点% - 获取药水使用后是否消耗
%apn_shift_药水节点% - 获取药水是否需要按shift使用
%apn_cool_药水节点% - 获取药水是否会设置原版冷却效果
%apn_death_药水节点% - 获取药水死亡后是否清除
%apn_quit_药水节点% - 获取药水退出服务器后是否清除
%apn_range_药水节点% - 获取药水是否可以给范围内玩家添加属性
%apn_stats_药水节点% - 获取当前是否拥有该药水效果
%apn_remain_药水节点% - 获取药水剩余冷却时间(例如冷却10秒,过去了7秒,剩余3秒)
%apn_attr_药水节点% - 获取已使用药水添加的属性
%apn_duration_药水节点% - 药水剩余生效时间

作者交流群:806195283
作者
Cordori
价格
200金粒
下载
20
查看
660
首次发布
最后更新

评分

0.00 星 0 次评分

最新更新

  1. 2.0.9

    v2.0.6 1.增加恢复的变量 %apn_health-value_药水节点% %apn_health-time_药水节点% %apn_health-mode_药水节点%...
  2. 2.0.5

    1.修复不存在药水组时的冷却问题 2.修复药水组为空导致的冷却问题
  3. V2.0.4

    v2.0.3 1.修复药水冷却问题 2.修复指令延长药水剩余生效时间变量不正确问题 3.执行指令增加一个[msg]发送消息方法 4.修复扣除属性时不存在属性插件的报错 v2.0.4...
后退
顶部 底部