洗炼
功能介绍
从词条库中随机抽取词条添加至装备,可通过道具锁定指定词条,支持重新洗炼和设置洗炼上限
效果展示



配套UI购买 2529210584

配置文件
yaml
# Powered by core #
# https://www.goodmc.cn/ #
title: "§3洗炼页面"
layout:
- "#########"
- "# #"
- "# A B #"
- "# #"
- "#1234567#"
# 变量库
entry:
"物品目标": "${物品目标('chest', '20')}"
# int() 用于将获取到的字符串转数值类型,若获取的NBT为空(不存在)时转数值,结果为0
洗炼0: "§8「§9☆§8」§c洗炼失败,无属性加成"
洗炼1: "§8「§9☆§8」§9暴击几率: §a1% §8[&d◆◇◇◇◇§8]"
洗炼2: "§8「§9☆§8」§9暴击几率: §a1% §8[&d◆◇◇◇◇§8]"
洗炼3: "§8「§9☆§8」§9暴击几率: §a2% §8[&d◆◆◇◇◇§8]"
洗炼4: "§8「§9☆§8」§9暴击几率: §a3% §8[&d◆◆◆◇◇§8]"
洗炼5: "§8「§9☆§8」§9暴击几率: §a4% §8[&d◆◆◆◆◇§8]"
洗炼6: "§8「§9☆§8」§9暴击几率: §a5% §8[&d◆◆◆◆◆§8]"
洗炼7: "§8「§9☆§8」§9吸血几率: §a1% §8[&d◆◇◇◇◇§8]"
洗炼8: "§8「§9☆§8」§9吸血几率: §a2% §8[&d◆◆◇◇◇§8]"
洗炼9: "§8「§9☆§8」§9吸血几率: §a3% §8[&d◆◆◆◇◇§8]"
洗炼10: "§8「§9☆§8」§9吸血几率: §a4% §8[&d◆◆◆◆◇§8]"
洗炼11: "§8「§9☆§8」§9吸血几率: §a5% §8[&d◆◆◆◆◆§8]"
洗炼12: "§8「§9☆§8」§9暴击伤害: §a10% §8[&d◆◇◇◇◇§8]"
洗炼13: "§8「§9☆§8」§9暴击伤害: §a20% §8[&d◆◆◇◇◇§8]"
洗炼14: "§8「§9☆§8」§9暴击伤害: §a30% §8[&d◆◆◆◇◇§8]"
洗炼15: "§8「§9☆§8」§9暴击伤害: §a40% §8[&d◆◆◆◆◇§8]"
洗炼16: "§8「§9☆§8」§9暴击伤害: §a50% §8[&d◆◆◆◆◆§8]"
洗炼17: "§8「§9☆§8」§9攻击加成: §a1% §8[&d◆◇◇◇◇§8]"
洗炼18: "§8「§9☆§8」§9攻击加成: §a2% §8[&d◆◆◇◇◇§8]"
洗炼19: "§8「§9☆§8」§9攻击加成: §a3% §8[&d◆◆◆◇◇§8]"
洗炼20: "§8「§9☆§8」§9攻击加成: §a4% §8[&d◆◆◆◆◇§8]"
洗炼21: "§8「§9☆§8」§9攻击加成: §a5% §8[&d◆◆◆◆◆§8]"
# §洗§炼 是隐藏字符,用于洗炼词条定位
洗炼词条1: "§洗§炼{洗炼${random(22)}}"
洗炼词条2: "§洗§炼{洗炼${random(22)}}"
洗炼词条3: "§洗§炼{洗炼${random(22)}}"
洗炼词条4: "§洗§炼{洗炼${random(22)}}"
function:
"槽位":
char: "A"
display:
material: ORANGE_STAINED_GLASS_PANE
name: "§f槽位 (请放入装备)"
slot:
match:
- "match.lore('洗炼')"
# 物品取出时重置锁词条数据
take:
action:
- "tempvar.set('洗炼-锁1',0)"
- "tempvar.set('洗炼-锁2',0)"
- "tempvar.set('洗炼-锁3',0)"
- "tempvar.set('洗炼-锁4',0)"
- "tempvar.set('洗炼-锁5',0)"
- "tempvar.set('洗炼-锁6',0)"
- "tempvar.set('洗炼-锁7',0)"
"洗炼":
char: "B"
display:
material: ANVIL
name: "§f点击洗炼"
lore:
- ""
desc:
- "&3洗炼需求"
- "{demand-desc}"
entry:
"初始定位": "${词条定位('可洗炼',1)}"
"词条1定位": "${词条定位('§洗§炼',1)}"
"词条2定位": "${词条定位('§洗§炼',2)}"
"词条3定位": "${词条定位('§洗§炼',3)}"
"词条4定位": "${词条定位('§洗§炼',4)}"
"洗炼次数-索引": "${词条定位('洗炼次数')}"
"洗炼次数-词条": "${词条获取({洗炼次数-索引})}"
"洗炼次数": "${数值解析('{洗炼次数-词条}','num1')}"
# 洗炼需求
demand:
- "points 1000"
# 每锁一个词条需要一个锁定石
- "mm 锁定石 ${%tempvar_info_洗炼-锁1%+%tempvar_info_洗炼-锁2%+%tempvar_info_洗炼-锁3%+%tempvar_info_洗炼-锁4%+%tempvar_info_洗炼-锁5%+%tempvar_info_洗炼-锁6%+%tempvar_info_洗炼-锁7%}"
# 判断装备槽
condition:
- "match.lore('洗炼') else '{prefix}§7请放入装备'"
rules:
# 初次洗炼
- condition:
- "{初始定位}>-1"
action:
- "词条设置('§8§m-------§8「§d 洗炼 §8」§8§m-------',{初始定位})"
- "词条添加('§3洗炼次数: §f1/20',{初始定位}+1)"
- "词条添加('{洗炼词条1}',{初始定位}+2)"
- "词条添加('{洗炼词条2}',{初始定位}+3)"
- "词条添加('{洗炼词条3}',{初始定位}+4)"
- "词条添加('{洗炼词条4}',{初始定位}+5)"
- "msg('{prefix}§7洗炼成功')"
break: true
# 洗炼上限
- condition:
- "{洗炼次数}>=20"
action:
- "msg('{prefix}§7已达洗炼上限')"
break: true
# 二次洗炼
- condition:
- "{洗炼次数}>0"
action:
- "词条设置(数值操作('{洗炼次数-词条}','num1=n+1'),{洗炼次数-索引})"
- "{词条1定位}>-1 && tempvar.get('洗炼-锁1')==0 && 词条设置('{洗炼词条1}',{词条1定位})"
- "{词条2定位}>-1 && tempvar.get('洗炼-锁2')==0 && 词条设置('{洗炼词条2}',{词条2定位})"
- "{词条3定位}>-1 && tempvar.get('洗炼-锁3')==0 && 词条设置('{洗炼词条3}',{词条3定位})"
- "{词条4定位}>-1 && tempvar.get('洗炼-锁4')==0 && 词条设置('{洗炼词条4}',{词条4定位})"
- "msg('{prefix}§7洗炼成功')"
break: true
"玻璃板":
char: "#"
display:
material: BLACK_STAINED_GLASS_PANE
name: " "
"锁词条1":
char: "1"
entry:
"词条定位": "${词条定位('§洗§炼',1)}"
"洗炼词条": "${词条获取({词条定位})}"
display:
material: GLASS_PANE
name: "§f(无)"
rules:
- condition:
- "{词条定位}>=0&&tempvar.get('洗炼-锁1')==1"
material: LIME_STAINED_GLASS_PANE
name: "§f[§a锁§f] {洗炼词条}"
break: true
- condition:
- "{词条定位}>=0"
material: RED_STAINED_GLASS_PANE
name: "§f[§c锁§f] {洗炼词条}"
# 锁定切换
action:
- "tempvar.set('洗炼-锁1',tempvar.get('洗炼-锁1')==0 ? 1 : 0)"
"锁词条2":
char: "2"
entry:
"词条定位": "${词条定位('§洗§炼',2)}"
"洗炼词条": "${词条获取({词条定位})}"
display:
material: GLASS_PANE
name: "§f(无)"
rules:
- condition:
- "{词条定位}>=0&&tempvar.get('洗炼-锁2')==1"
material: LIME_STAINED_GLASS_PANE
name: "§f[§a锁§f] {洗炼词条}"
break: true
- condition:
- "{词条定位}>=0"
material: RED_STAINED_GLASS_PANE
name: "§f[§c锁§f] {洗炼词条}"
action:
- "tempvar.set('洗炼-锁2',tempvar.get('洗炼-锁2')==0 ? 1 : 0)"
"锁词条3":
char: "3"
entry:
"词条定位": "${词条定位('§洗§炼',3)}"
"洗炼词条": "${词条获取({词条定位})}"
display:
material: GLASS_PANE
name: "§f(无)"
rules:
- condition:
- "{词条定位}>=0&&tempvar.get('洗炼-锁3')==1"
material: LIME_STAINED_GLASS_PANE
name: "§f[§a锁§f] {洗炼词条}"
break: true
- condition:
- "{词条定位}>=0"
material: RED_STAINED_GLASS_PANE
name: "§f[§c锁§f] {洗炼词条}"
action:
- "tempvar.set('洗炼-锁3',tempvar.get('洗炼-锁3')==0 ? 1 : 0)"
"锁词条4":
char: "4"
entry:
"词条定位": "${词条定位('§洗§炼',4)}"
"洗炼词条": "${词条获取({词条定位})}"
display:
material: GLASS_PANE
name: "§f(无)"
rules:
- condition:
- "{词条定位}>=0&&tempvar.get('洗炼-锁4')==1"
material: LIME_STAINED_GLASS_PANE
name: "§f[§a锁§f] {洗炼词条}"
break: true
- condition:
- "{词条定位}>=0"
material: RED_STAINED_GLASS_PANE
name: "§f[§c锁§f] {洗炼词条}"
action:
- "tempvar.set('洗炼-锁4',tempvar.get('洗炼-锁4')==0 ? 1 : 0)"
"锁词条5":
char: "5"
entry:
"词条定位": "${词条定位('§洗§炼',5)}"
"洗炼词条": "${词条获取({词条定位})}"
display:
material: GLASS_PANE
name: "§f(无)"
rules:
- condition:
- "{词条定位}>=0&&tempvar.get('洗炼-锁5')==1"
material: LIME_STAINED_GLASS_PANE
name: "§f[§a锁§f] {洗炼词条}"
break: true
- condition:
- "{词条定位}>=0"
material: RED_STAINED_GLASS_PANE
name: "§f[§c锁§f] {洗炼词条}"
action:
- "tempvar.set('洗炼-锁5',tempvar.get('洗炼-锁5')==0 ? 1 : 0)"
"锁词条6":
char: "6"
entry:
"词条定位": "${词条定位('§洗§炼',6)}"
"洗炼词条": "${词条获取({词条定位})}"
display:
material: GLASS_PANE
name: "§f(无)"
rules:
- condition:
- "{词条定位}>=0&&tempvar.get('洗炼-锁6')==1"
material: LIME_STAINED_GLASS_PANE
name: "§f[§a锁§f] {洗炼词条}"
break: true
- condition:
- "{词条定位}>=0"
material: RED_STAINED_GLASS_PANE
name: "§f[§c锁§f] {洗炼词条}"
action:
- "tempvar.set('洗炼-锁6',tempvar.get('洗炼-锁6')==0 ? 1 : 0)"
"锁词条7":
char: "7"
entry:
"词条定位": "${词条定位('§洗§炼',7)}"
"洗炼词条": "${词条获取({词条定位})}"
display:
material: GLASS_PANE
name: "§f(无)"
rules:
- condition:
- "{词条定位}>=0&&tempvar.get('洗炼-锁7')==1"
material: LIME_STAINED_GLASS_PANE
name: "§f[§a锁§f] {洗炼词条}"
break: true
- condition:
- "{词条定位}>=0"
material: RED_STAINED_GLASS_PANE
name: "§f[§c锁§f] {洗炼词条}"
action:
- "tempvar.set('洗炼-锁7',tempvar.get('洗炼-锁7')==0 ? 1 : 0)"
on-open:
# 打开页面重置锁词条数据
action:
- "tempvar.set('洗炼-锁1',0)"
- "tempvar.set('洗炼-锁2',0)"
- "tempvar.set('洗炼-锁3',0)"
- "tempvar.set('洗炼-锁4',0)"
- "tempvar.set('洗炼-锁5',0)"
- "tempvar.set('洗炼-锁6',0)"
- "tempvar.set('洗炼-锁7',0)"
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洗炼条件不足"