【快捷药水】GermShortcutPotion
GermShortcutPotion简介
GermShortcutPotion 是萌芽引擎的免费附属插件,它支持指定扩展槽位通过按键快捷使用具有AttributePlus2&3属性、SX-Attribute2&3属性、PxRpg属性、OriginAttribute属性等等各种各样的药水;同时支持为药水设置冷却组,实现共用冷却。(需要依赖AttributeCompatibleAPI.jar)
使用须知
前置: GermPlugin, AttributeCompatibleAPI,KetherEngine
| 指令 | 功能 |
|---|---|
| /gsp reload | 重载配置文件 |
配置 文件
config.yml
# 按键设置
# 格式是 按键数字ID`<->`检测的槽位ID
# 检测槽位的物品通过某个药水设置的条件后触发
KeySettings:
- '44`<->`germplugin_potion_1'
- '45`<->`germplugin_potion_2'
# 冷却槽位设置
# 填写槽位ID
# 药水使用成功后 下列槽位内的同冷却组的药水将在槽位内显示冷却时间
CooldownSlotSettings:
- 'germplugin_potion_1'
- 'germplugin_potion_2'
# 药水设置
PotionSetting:
# 是否开启手动喝药
# 开启后允许玩家手持药水左键空气或方块喝药
enableLeftClick: false
# 是否开启手动喝药
# 开启后允许玩家手持药水右键空气或方块喝药
enableRightClick: false
potion/default.yml
defaultPotion:
#如果触发成功减少数量
decreaseAmount: 1
#匹配该药水的条件
#可以使用药水的条件设置
conditions:
#冷却相关设置(可删除整个cooldown配置节点)
#删除后不再计算内置冷却并且不再运行冷却槽位
cooldown:
#该冷却的组名 同一组的冷却共享
group: 'potionplugin_cooldown_1'
#使用后延迟多少秒才能通过此条件 单位秒 (重启服务器将会被重置)
delay: 100
#玩家相关的设置 (可删除整个player配置节点)
#不需要的配置项直接删除即可
player:
#玩家有十级通过此条条件
hasLevel: 10
#玩家低于一百级通过此条条件
notLevel: 100
#玩家拥有这么多金币通过此条条件
hasMoney: 10
#玩家没有这么多金币通过此条条件
notMoney: 100
#玩家拥有这些权限才可以使用
hasPermissions:
- "germ.potion.potion1"
#玩家没有这些权限才可以使用
notPermissions:
- "germ.potion.potion1"
#物品相关的条件(可删除整个item配置节点)
#不需要的配置项直接删除即可
item:
#物品是这些材质通过此条条件 不可删除
#(名字 或者 ID 如果需要子ID, 那么 名字:子ID 或者 ID:子ID)
hasTypes:
- '437'
#物品数量大于等于下面数值通过此条条件
hasAmonut: 1
#物品的名字存在下列的任意一行通过此条条件
nameContains:
- '萌芽药水'
#物品的名字与下列任意一行中的字符相等通过此条条件
nameEquals:
- '萌芽药水'
#物品的任意一行描述存在下列任意一行中的字符通过此条条件
loreContains:
- '可使用的药水'
#物品的任意一行描述与下列任意一行字符相等通过此条条件
loreEquals:
- '可使用的药水'
#物品不是这些材质通过此条条件(名字 或者 ID 如果需要子ID,那么 名字:子ID 或者 ID:子ID)
notTypes:
- '351:8'
#物品数量小于下面的数量通过此条条件
notAmonut: 1
#物品的名字不存在下列的任何一行通过此条条件
nameNotContains:
- '违禁品药水'
#物品的名字与下列任意一行中的字符都不相等通过此条条件
nameNotEquals:
- '违禁品药水'
#物品的任意一行描述都不存在下列任何一行中的字符通过此条条件
loreNotContains:
- '未绑定的药水'
#物品的任意一行描述与下列任意一行字符都不相等通过此条条件
loreNotEquals:
- '未绑定的药水'
#关于表达式的设置(可删除整个expression配置节点)
#不需要的配置项直接删除即可
expression:
#表达式都成立通过此条件
allTrue:
- 'str(%player_name%,GermMC)'
#表达式都不成立通过此条件
allFalse:
- 'notStr(%player_name%,GermMC)'
# 当玩家成功触发并使用药水后将运行如下Kether动作
# 增加Kether动作如下
# 以id为索引名增加玩家属性(列表中value的格式取决于AttributeCompatibleAPI的兼容读取格式)
# potion attribute add [ *value1 , *value2 , ... ] by *id
# 以id为索引名减少玩家属性
# potion attribute remove *id
# 下面的动作需要前置SkillAPI启用后才会加载
# 玩家的SkillAPI蓝量+100
# player skillapi mana add 100
# 玩家的SkillAPI蓝量-100
# player skillapi mana sub 100
# 玩家的SkillAPI蓝量设为100
# player skillapi mana to 100
onPotion: |-
potion attribute add [ "物理伤害: +100" ] by sss
delay 200s
potion attribute remove sss