
锻造台
Q 铁砧将以玩家生命值、可选的QShop货币和灵活的KubeJS自定义功能取代基于经验的铁砧费用。
Q 铁砧
Q 铁砧为 Forge 1.20.1 添加了一种新型铁砧,它使用玩家生命值而非经验等级来运作。
该模组专为那些希望铁砧系统基于生存资源而非经验值的整合包而设计。Q 铁砧在正常使用过程中不会损坏,因此玩家可以反复使用而无需担心方块消失。
特性
- 使用玩家生命值来操作铁砧,而非经验等级。
- Q 铁砧在正常使用过程中不会损坏。
- 可选集成 Q 商店。当 Q 商店安装后,Q 铁砧可以使用诸如
coins之类的货币来替代生命值或与生命值同时使用。 - 可在通用配置文件中配置默认支付模式、货币 ID、生命值消耗和货币消耗。
- 当
config/qanvil-common.toml中的max_input_stack_size设置为999时,输入槽最多可支持 999 个物品。默认值仍为 64。 - KubeJS 集成允许你自定义输出、支付类型、支付数量、材料消耗以及每次操作的执行行为。
- 原版铁砧的合成配方仍然可用;KubeJS 也可以针对特定的左右输入替换其产物。
截图


配置
通用配置文件位于:
config/qanvil-common.toml
默认支付模式为生命值。可用的支付模式为 health(生命值)、currency(货币)和 both(两者兼有)。Q 商店是可选的;未安装 Q 商店时,Q 铁砧仍可在生命值模式下正常工作。
要允许两个输入槽中堆叠数量大于 64,请更改:
max_input_stack_size = 999
允许的范围是 1 到 999。
KubeJS 集成
KubeJS 集成是可选的。将脚本放入 kubejs/server_scripts/ 并监听 QAnvilEvents.update。
该事件提供以下内容:
event.left或event.input:左侧输入物品。event.right或event.addition:右侧输入物品。event.originalOutput:根据原版铁砧计算出的结果。event.output:Q 铁砧显示并产出的最终物品。event.currencyId:本次操作所使用的货币 ID。event.currencyCost:本次操作扣除的货币数量。event.healthCost:本次操作扣除的玩家生命值数量。event.materialCost:取出产物后消耗的右侧物品数量。
KubeJS 的值对于单次操作而言优先于配置。这使得脚本可以在某次合成中使用货币,而在另一次合成中使用生命值,即使默认配置使用了不同的支付模式。
自定义输出与货币支付
QAnvilEvents.update(event => {
const left = event.left;
const right = event.right; if (left.id != 'minecraft:diamond_sword') return;
if (right.id != 'minecraft:netherite_ingot') return;
event.output = Item.of('minecraft:netherite_sword');
event.currencyId = 'coins';
event.currencyCost = 25;
event.healthCost = 0;
event.materialCost = 1;
});
自定义输出与生命值支付
QAnvilEvents.update(event => {
if (event.left.id != 'minecraft:diamond_sword') return;
if (event.right.id != 'minecraft:stick') return; event.setOutput(Item.of('minecraft:iron_sword'));
event.healthCost = 4;
event.currencyCost = 0;
event.setMaterialCost(1);
});
保留原版结果并更改支付方式
QAnvilEvents.update(event => {
if (event.originalOutput.empty) return;
if (event.left.id != 'minecraft:diamond_pickaxe') return; event.output = event.originalOutput.copy();
event.currencyId = 'points';
event.currencyCost = 30;
event.healthCost = 0;
});
Forge 风格消耗方法
该事件还支持常见的 Forge 风格方法:
QAnvilEvents.update(event => {
if (event.left.id != 'minecraft:iron_sword') return; event.setOutput(event.left.copy());
event.setCost(5);
event.setMaterialCost(1);
});
setCost(5) 使用已配置的支付模式。显式的 currencyCost 和 healthCost 值优先于 setCost(5)。当某次操作需要同时扣除货币和生命值时,请同时设置这两个显式值。
要完全取消某次操作:
QAnvilEvents.update(event => {
if (event.right.id == 'minecraft:bedrock') {
event.cancel();
}
});
Q 铁砧可以通过在原版锻造台上使用下界合金升级锻造模板、原版铁砧和一个下界合金锭来获得。也可以通过以下指令获得:
/give @s qanvil:q_anvil正在加载版本记录…
正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。