附加值强化
功能介绍
首次强化时附加额外数值(如 +10),后续升级基于基础值提升括号内数值。支持强化掉级,消耗材料随等级变化,提供强化结果与属性变化预览
效果展示


配置文件
yaml
# Powered by core #
# https://www.goodmc.cn/ #
# 配置介绍:
# 在首次强化时会添加附加数值,例如 (+10)。后续升级将根据基础值,增加括号内的数值。
#
# 使用时请将该强化方案添加至 GUI 配置
# 相关表达式文档:
# - 操作器文档: https://www.goodmc.cn/YeeCore/expression/操作器.html
# - 数值解析文档: https://www.goodmc.cn/YeeCore/expression/数值.html#数值解析
title: "§3强化页面"
layout:
- "#########"
- "# #"
- "# A B #"
- "# #"
- "#########"
# 变量库
entry:
"物品目标": "${物品目标('chest', '20')}"
"当前等级": "${int(数值解析(获取物品名(),'rb1'))}"
"强化等级": "${{当前等级}+1}"
"物品名-初始值": "${获取NBT('初始值.物品名')}"
"攻击力-索引": "${词条定位('攻击力')}"
"攻击力-词条": "${词条获取({攻击力-索引})}"
"攻击力-初始值": "${数值解析('{攻击力-词条}','num1')}"
"攻击力-附加值": "${数值解析('{攻击力-词条}','rb1')}"
"暴击几率-索引": "${词条定位('暴击几率')}"
"暴击几率-词条": "${词条获取({暴击几率-索引})}"
"暴击几率-初始值": "${数值解析('{暴击几率-词条}','num1')}"
"暴击几率-附加值": "${数值解析('{暴击几率-词条}','rb1')}"
"暴击伤害-索引": "${词条定位('暴击伤害')}"
"暴击伤害-词条": "${词条获取({暴击伤害-索引})}"
"暴击伤害-初始值": "${数值解析('{暴击伤害-词条}','num1')}"
"暴击伤害-附加值": "${数值解析('{暴击伤害-词条}','rb1')}"
"成功率": |-
if({强化等级}>=15){
return 0.5;
}
if({强化等级}>=10){
return 0.75;
}
if({强化等级}>=5){
return 0.9;
}
return 1.0;
"掉级等级": "${{当前等级}-1}"
"掉级几率": |-
if({强化等级}>=15){
return 0.8;
}
if({强化等级}>=10){
return 0.6;
}
if({强化等级}>=5){
return 0.5;
}
return 0;
# 每次强化增加5%数值
"强化加成": 0.05
function:
"玻璃板":
char: "#"
display:
material: BLACK_STAINED_GLASS_PANE
name: " "
"槽位":
char: "A"
display:
material: ORANGE_STAINED_GLASS_PANE
name: "§f槽位 (请放入装备)"
slot:
# 允许强化的装备
match:
- "match.name('测试武器')"
- "match.name('帝国立法者圣剑')"
"强化":
char: "B"
display:
material: ANVIL
name: "&f开始强化"
lore:
- ""
- "§7成功 &f{当前等级} &f→ &a{强化等级} &f(${{成功率}*100}%)"
- "§7失败 &f{当前等级} &f→ &c${{掉级几率}>0 ? '{掉级等级}' : '@hide'} &f(${{掉级几率}*100}%)"
- "§7属性"
# 攻击力词条不存在时使用@hide隐藏词条
- " &f- &f攻击力: &e{攻击力-附加值} &f→ &a${{攻击力-初始值}==0 ? '@hide' : {攻击力-初始值}*{强化加成}*{强化等级}}"
- " &f- &f暴击几率: &e{暴击几率-附加值} &f→ &a${{暴击几率-初始值}==0 ? '@hide' : {暴击几率-初始值}*{强化加成}*{强化等级}}"
- " &f- &f暴击伤害: &e{暴击伤害-附加值} &f→ &a${{暴击伤害-初始值}==0 ? '@hide' : {暴击伤害-初始值}*{强化加成}*{强化等级}}"
- ""
- "&7强化需求"
- "{demand-desc}"
# 强化需求
demand:
- "money 10000"
# 增加额外需求
demand-rules:
- condition:
- "{当前等级}>=5"
demand:
- "money 50000"
- "mm 强化材料 5"
- condition:
- "{当前等级}>=10"
demand:
- "money 100000"
- "mm 强化材料 10"
- condition:
- "{当前等级}>=15"
demand:
- "money 150000"
- "mm 强化材料 15"
entry:
强化结果: "${random()<{成功率}}"
掉级结果: "${!{强化结果} && random()<{掉级几率}}"
rules:
# 等级限制
- condition:
- "{当前等级}>=20"
action:
- "msg('{prefix}§7已达强化等级上限')"
break: true
# 强化掉级
- condition:
- "{掉级结果}"
action:
- "设置物品名('{物品名-初始值} §f(+{掉级等级})')"
- "词条设置(数值操作('{攻击力-词条}','rb1={攻击力-初始值}*{强化加成}*{掉级等级}'),{攻击力-索引})"
- "词条设置(数值操作('{暴击几率-词条}','rb1={暴击几率-初始值}*{强化加成}*{掉级等级}'),{暴击几率-索引})"
- "词条设置(数值操作('{暴击伤害-词条}','rb1={暴击伤害-初始值}*{强化加成}*{掉级等级}'),{暴击伤害-索引})"
- sound('BLOCK_ANVIL_BREAK')
- msg('{prefix}§7强化失败,装备已将至{掉级等级}级')
break: true
# 强化失败
- condition:
- "!{强化结果}"
action:
- sound('BLOCK_ANVIL_BREAK')
- msg('{prefix}§7强化失败')
break: true
# 初次强化
- condition:
- "{当前等级}==0"
action:
- "设置NBT('初始值.物品名',获取物品名())"
- "词条设置('{攻击力-词条} (+${{攻击力-初始值}*{强化加成}})',{攻击力-索引})"
- "词条设置('{暴击几率-词条} (+${{暴击几率-初始值}*{强化加成}})',{暴击几率-索引})"
- "词条设置('{暴击伤害-词条} (+${{暴击伤害-初始值}*{强化加成}})',{暴击伤害-索引})"
- "设置物品名(获取物品名()+' §f(+1)')"
- sound('BLOCK_ANVIL_LAND')
- msg('{prefix}§7强化成功')
break: true
# 强化升级
- condition:
- "{当前等级}>0"
action:
- "设置物品名('{物品名-初始值} §f(+{强化等级})')"
# 默认按基础值进行 5% 属性加成,可在变量库中配置每级不同的加成比例
- "词条设置(数值操作('{攻击力-词条}','rb1={攻击力-初始值}*{强化加成}*{强化等级}'),{攻击力-索引})"
- "词条设置(数值操作('{暴击几率-词条}','rb1={暴击几率-初始值}*{强化加成}*{强化等级}'),{暴击几率-索引})"
- "词条设置(数值操作('{暴击伤害-词条}','rb1={暴击伤害-初始值}*{强化加成}*{强化等级}'),{暴击伤害-索引})"
- "sound('BLOCK_ANVIL_LAND')"
- "msg('{prefix}§7强化成功')"
break: true
message:
slot_match_false: "§7物品无法强化"
money_false: "§7没有足够的金币进行强化"
points_false: "§7没有足够的点券进行强化"
variable_false: "§7没有足够的{0}§7进行强化"
material_false: "§7没有足够的 §r{0} §7进行强化"
purchase-limit_false: "§7已达到购买上限"
desc:
icon:
enough: §a✔§r
insufficient: §c✘§r
demand:
item: '§7[%icon%§7] §f%name% §r× %demand%'
money: '§7[%icon%§7] §f金币 §r× %demand%'
points: '§7[%icon%§7] §f点券 §r× %demand%'
currency: '§7[%icon%§7] §f%name% §r× %demand%'
state:
enough: "§3点击强化 §7[§a✔§7]"
insufficient: "§3点击强化 §7[§c✘§7]"
condition: "§c强化条件不足"