From 811d5acfb8bd5e562f1ff262b7dff52b0329f07a Mon Sep 17 00:00:00 2001 From: theabab2333 <2047477146@qq.com> Date: Mon, 29 Dec 2025 05:04:30 +0800 Subject: [PATCH 1/8] =?UTF-8?q?docs(guide):=20=E6=9B=B4=E6=96=B0=E6=96=87?= =?UTF-8?q?=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 修复紫水晶工具合成描述语法错误 - 添加护符(amulet)完整文档,包含普通护符和多合一护符介绍 - 添加牛肉炖蘑菇(beef_mushroom_stew)物品文档 - 添加锡罐与罐头食物(can)文档 - 添加电容器(capacitor)功能说明文档 - 添加各类巧克力(chocolate)效果介绍 - 添加磁盘(disk)使用说明文档 - 添加过滤器(filter)功能文档 - 更新珠宝匠(jeweler)村民交易列表 - 添加药片与药盒(pill)使用说明 - 优化UI显示相关代码和语言文件结构 --- gradle/scripts/moddevgradle.gradle | 8 +- .../ember_smithing_table.md} | 0 .../block/jewelcrafting_table.md | 0 .../item/amethyst_tools.md | 2 +- .../items-blocks-machines/item/amulet.md | 106 ++++++++++++ .../items-blocks-machines/item/amulet_box.md | 5 +- .../item/anvil_hammer.md | 14 +- .../item/beef_mushroom_stew.md | 21 +++ guidebook/items-blocks-machines/item/can.md | 46 +++++ .../items-blocks-machines/item/capacitor.md | 52 ++++++ .../items-blocks-machines/item/chocolate.md | 43 +++++ .../items-blocks-machines/item/crab_claw.md | 3 +- guidebook/items-blocks-machines/item/disk.md | 28 ++++ .../items-blocks-machines/item/dragon_rod.md | 4 +- .../item/ember_metal_tools.md | 6 +- .../items-blocks-machines/item/filter.md | 28 ++++ .../item/frost_metal_tools.md | 2 +- .../item/ionocraft_backpack.md | 7 +- .../items-blocks-machines/item/jeweler.md | 26 ++- guidebook/items-blocks-machines/item/pill.md | 38 +++++ .../item/royal_steel_tools.md | 2 +- .../item/spectral_slingshot.md | 18 +- .../item/transcendence_tools.md | 2 + .../item/upgrade_smithing_template.md | 134 +++++++++++++++ .../assets/anvilcraft_guideme/lang/en_ud.json | 4 +- .../assets/anvilcraft_guideme/lang/en_us.json | 4 +- .../guideme/data/lang/LangHandler.java | 12 +- .../guideme/data/lang/ModInfoLang.java | 10 ++ .../guideme/data/lang/RecipeLang.java | 9 + .../guide/RecipeTypeContributions.java | 158 ++++++------------ .../guide/compiler/tag/KeyMapTagCompiler.java | 2 +- .../compiler/tag/ModInfoTagCompiler.java | 12 +- .../guide/recipe/LytItemCompressRecipe.java | 2 +- .../guide/recipe/LytItemCrushRecipe.java | 2 +- .../guide/recipe/LytStampingRecipe.java | 2 +- .../guideme/guide/slot/LytBlockSlot.java | 15 +- .../guideme/guide/slot/LytOutputItemSlot.java | 2 +- .../assets/anvilcraft_guideme/lang/zh_cn.json | 4 +- 38 files changed, 655 insertions(+), 178 deletions(-) rename guidebook/items-blocks-machines/{item/jewelcrafting_table.md => block/ember_smithing_table.md} (100%) create mode 100644 guidebook/items-blocks-machines/block/jewelcrafting_table.md create mode 100644 guidebook/items-blocks-machines/item/amulet.md create mode 100644 guidebook/items-blocks-machines/item/beef_mushroom_stew.md create mode 100644 guidebook/items-blocks-machines/item/can.md create mode 100644 guidebook/items-blocks-machines/item/capacitor.md create mode 100644 guidebook/items-blocks-machines/item/chocolate.md create mode 100644 guidebook/items-blocks-machines/item/disk.md create mode 100644 guidebook/items-blocks-machines/item/filter.md create mode 100644 guidebook/items-blocks-machines/item/pill.md create mode 100644 guidebook/items-blocks-machines/item/upgrade_smithing_template.md create mode 100644 src/main/java/dev/anvilcraft/guideme/data/lang/ModInfoLang.java create mode 100644 src/main/java/dev/anvilcraft/guideme/data/lang/RecipeLang.java diff --git a/gradle/scripts/moddevgradle.gradle b/gradle/scripts/moddevgradle.gradle index a36782d..fe98a6b 100644 --- a/gradle/scripts/moddevgradle.gradle +++ b/gradle/scripts/moddevgradle.gradle @@ -13,7 +13,8 @@ neoForge { runs { client { client() - programArguments.addAll "--width", "1440", "--height", "841" + // 正版登录 不想用的可以false + setDevLogin(true) systemProperty 'neoforge.enabledGameTestNamespaces', project.mod_id } @@ -37,9 +38,10 @@ neoForge { if (isJbr) { jvmArgument "-XX:+AllowEnhancedClassRedefinition" } - systemProperty 'forge.logging.markers', 'REGISTRIES' logLevel = org.slf4j.event.Level.DEBUG - systemProperty "guideme.anvilcraft_guideme.guideme.sources", file("guidebook").getAbsolutePath() + systemProperty 'forge.logging.markers', 'REGISTRIES' + systemProperty 'terminal.jline', 'true' + systemProperty 'guideme.anvilcraft_guideme.guideme.sources', file('guidebook').getAbsolutePath() } } diff --git a/guidebook/items-blocks-machines/item/jewelcrafting_table.md b/guidebook/items-blocks-machines/block/ember_smithing_table.md similarity index 100% rename from guidebook/items-blocks-machines/item/jewelcrafting_table.md rename to guidebook/items-blocks-machines/block/ember_smithing_table.md diff --git a/guidebook/items-blocks-machines/block/jewelcrafting_table.md b/guidebook/items-blocks-machines/block/jewelcrafting_table.md new file mode 100644 index 0000000..e69de29 diff --git a/guidebook/items-blocks-machines/item/amethyst_tools.md b/guidebook/items-blocks-machines/item/amethyst_tools.md index 05d7b55..87539f9 100644 --- a/guidebook/items-blocks-machines/item/amethyst_tools.md +++ b/guidebook/items-blocks-machines/item/amethyst_tools.md @@ -36,7 +36,7 @@ item_ids: ### 合成 -- 紫水晶工具可以被合成 +紫水晶工具可以合成 diff --git a/guidebook/items-blocks-machines/item/amulet.md b/guidebook/items-blocks-machines/item/amulet.md new file mode 100644 index 0000000..fefa03f --- /dev/null +++ b/guidebook/items-blocks-machines/item/amulet.md @@ -0,0 +1,106 @@ +--- +navigation: + title: "护符" + icon: "anvilcraft:emerald_amulet" + position: 11 + parent: anvilcraft_guideme:item-block-machines.md +categories: + - tools +item_ids: + - anvilcraft:emerald_amulet + - anvilcraft:topaz_amulet + - anvilcraft:ruby_amulet + - anvilcraft:sapphire_amulet + - anvilcraft:anvil_amulet + - anvilcraft:comrade_amulet + - anvilcraft:feather_amulet + - anvilcraft:cat_amulet + - anvilcraft:dog_amulet + - anvilcraft:silence_amulet + - anvilcraft:abnormal_amulet + - anvilcraft:gem_amulet + - anvilcraft:nature_amulet +--- + +# 护符 + + + + + + + + + + + + + + + + + +## 护符 + +--- + +### 普通护符 + +- 可在珠宝加工台中仿制,必须先得到第一个才可仿制 + +#### 获取 + +如果存活于特定致命伤害,背包内有且盒内有不死图腾,则会消耗不死图腾抵挡伤害,同时有20%的概率获得相应护符。若失败,额外增加10% + +以下是各普通护符、致命伤害和效果的列表 + +| 护符 | 致命伤害来源 | 效果 | +|---------------------------------------------|----------------------------|----------------------------------| +| | 铁傀儡、灾厄村民 | 与村民交易自带类似村庄英雄的打折 | +| | 闪电、特斯拉塔 | 免疫所有雷电伤害 | +| | 火焰、熔岩、岩浆块等烫脚方块、激光 | 抗火药水的抗火效果 | +| | 水中缺氧窒息、守卫者、远古守卫者 | 潮涌核心的潮涌能量效果 | +| | 铁砧砸、巨型铁砧撼地、铁砧锤攻击、飞行头戴铁砧锤撞击 | 完全免疫铁砧造成的伤害 | +| | 其他玩家(无小队或同小队,不同队伍的玩家伤害不触发) | 可以被多名玩家右键签名,其他玩家携带并生效时,免疫签名玩家的伤害 | +| | 摔落伤害 | 生效时可以免疫摔落伤害 | +| | 苦力怕、幻翼 | 苦力怕和幻翼会远离 | +| | 骷髅、流浪者、凋零骷髅、沼骇 | 骷髅类生物会远离并且不会射击该玩家 | +| | 监守者 | 玩家不会发出能被幽匿感测体或监守者检测到的震动 | +| | 携带有异常状态的物品导致的凋零 | 玩家不再因携带有异常状态的物品获得异常效果 | + +#### 仿制 + + + + + + + + + + + + + + + +--- + +### 多合一护符 + +多合一护符是一种特殊的护符,由多个普通护符合成,有着合成所需护符的所有效果 + +#### 合成 + + + + + + +--- + +### 生效 + +- 主副手持有的护符生效(两手都有就生效两个) +- 可以容纳护符,主副手持有护符盒,盒中的护符全生效 +- 饰品栏模组的饰品栏中的护符全生效 diff --git a/guidebook/items-blocks-machines/item/amulet_box.md b/guidebook/items-blocks-machines/item/amulet_box.md index 0b4b6bb..78f55b0 100644 --- a/guidebook/items-blocks-machines/item/amulet_box.md +++ b/guidebook/items-blocks-machines/item/amulet_box.md @@ -21,8 +21,11 @@ item_ids: - 护符盒是一种类似收纳袋的物品,可以容纳不死图腾或护符 - 手持护符盒右击收纳物品栏中的不死图腾,潜行右击则会取出所有的不死图腾 - 副手手持含有不死图腾的护符盒等价于持有不死图腾 -- 如果存活于特定致命伤害,有20%的概率获得相应护符。若失败,额外增加10% +- 如果存活于特定致命伤害,有20%的概率获得相应[护符](amulet.md#获取)。若失败,额外增加10% +- 主副手持有护符盒,盒中的护符全生效 + --- + - 每个不死图腾占用护符盒的 1 个槽位 - 每个基础护符占用2*3即 6 个槽位 - 在物品栏中将光标指向护符盒可以查看其占用情况 diff --git a/guidebook/items-blocks-machines/item/anvil_hammer.md b/guidebook/items-blocks-machines/item/anvil_hammer.md index 044e104..07c67ba 100644 --- a/guidebook/items-blocks-machines/item/anvil_hammer.md +++ b/guidebook/items-blocks-machines/item/anvil_hammer.md @@ -24,13 +24,13 @@ item_ids: ## 铁砧锤 - - *铁砧锤*是本模组的扳手 - 1. 右键可以调整某些方块的方向,蹲下右键可以拆除某些方块 - 2. 左键方块对方块执行铁砧砸到方块的操作 - 3. 重锤,从高处落下攻击生物对生物追加如同铁砧下落增加的伤害 - 4. 护目镜,戴在头上可以查看电网范围和电网负载信息 - 5. 头槌,戴在头上时鞘翅飞行撞击生物造成伤害 - - *注意,左键敲击方块、左键攻击生物以及头槌撞击生物会消耗铁砧锤的耐久,其他操作不会* +- *铁砧锤*是本模组的扳手 + 1. 右键可以调整某些方块的方向,蹲下右键可以拆除某些方块 + 2. 左键方块对方块执行铁砧砸到方块的操作 + 3. 重锤,从高处落下攻击生物对生物追加如同铁砧下落增加的伤害 + 4. 护目镜,戴在头上可以查看电网范围和电网负载信息 + 5. 头槌,戴在头上时鞘翅飞行撞击生物造成伤害 +- *注意,左键敲击方块、左键攻击生物以及头槌撞击生物会消耗铁砧锤的耐久,其他操作不会* ## 合成 diff --git a/guidebook/items-blocks-machines/item/beef_mushroom_stew.md b/guidebook/items-blocks-machines/item/beef_mushroom_stew.md new file mode 100644 index 0000000..fb14448 --- /dev/null +++ b/guidebook/items-blocks-machines/item/beef_mushroom_stew.md @@ -0,0 +1,21 @@ +--- +navigation: + title: "牛肉炖蘑菇" + icon: "anvilcraft:beef_mushroom_stew" + position: 11 + parent: anvilcraft_guideme:item-block-machines.md +categories: + - misc ingredients blocks +item_ids: + - anvilcraft:beef_mushroom_stew +--- + +# 牛肉炖蘑菇 + + + +## 牛肉炖蘑菇 + +提供16饱食度和 + +> 天王盖地虎,牛肉炖蘑菇 \ No newline at end of file diff --git a/guidebook/items-blocks-machines/item/can.md b/guidebook/items-blocks-machines/item/can.md new file mode 100644 index 0000000..e30e790 --- /dev/null +++ b/guidebook/items-blocks-machines/item/can.md @@ -0,0 +1,46 @@ +--- +navigation: + title: "锡罐与罐头食物" + icon: "anvilcraft:canned_food" + position: 11 + parent: anvilcraft_guideme:item-block-machines.md +categories: + - tools +item_ids: + - anvilcraft:tin_can + - anvilcraft:canned_food +--- + +# 锡罐与罐装食物 + + + + + + +## 锡罐 + + + +> 能装食物的罐子 + +## 合成 + + + +--- + +## 罐头食物 + + + +> 畅启速食 + +- 锡罐和任意食物合成,得到罐装食物 +- 吃完的罐装食品不返还锡罐 +- 合成罐装食品时,可以使用多个同种食物一起合成,最多五个 + - 一个食物100% + - 两个食物180% + - 三个食物240% + - 四个食物280% + - 五个食物300% \ No newline at end of file diff --git a/guidebook/items-blocks-machines/item/capacitor.md b/guidebook/items-blocks-machines/item/capacitor.md new file mode 100644 index 0000000..1a96d14 --- /dev/null +++ b/guidebook/items-blocks-machines/item/capacitor.md @@ -0,0 +1,52 @@ +--- +navigation: + title: "电容器" + icon: "anvilcraft:capacitor" + position: 11 + parent: anvilcraft_guideme:item-block-machines.md +categories: + - tools +item_ids: + - anvilcraft:capacitor + - anvilcraft:capacitor_empty + - anvilcraft:supercapacitor + - anvilcraft:supercapacitor_empty +--- + +# 电容器 + + + + + + + + +## 电容器 + +> 能够存储电能或释放电能 + +## 合成 + + + + + + +--- + +## 存储电能 + + + + + + +--- + +## 释放电能 + + + + + \ No newline at end of file diff --git a/guidebook/items-blocks-machines/item/chocolate.md b/guidebook/items-blocks-machines/item/chocolate.md new file mode 100644 index 0000000..aff68b4 --- /dev/null +++ b/guidebook/items-blocks-machines/item/chocolate.md @@ -0,0 +1,43 @@ +--- +navigation: + title: "各类巧克力" + icon: "anvilcraft:chocolate" + position: 11 + parent: anvilcraft_guideme:item-block-machines.md +categories: + - misc ingredients blocks +item_ids: + - anvilcraft:chocolate + - anvilcraft:chocolate_black + - anvilcraft:chocolate_white +--- + +# 各类巧克力 + + + + + + + +## 巧克力 + +回复16饱和度(不是饱食度) + + + +--- + +## 黑巧克力 + +提供30秒急迫2效果 + + + +--- + +### 白巧克力 + +提供30秒跳跃提升2效果 + + diff --git a/guidebook/items-blocks-machines/item/crab_claw.md b/guidebook/items-blocks-machines/item/crab_claw.md index d2102a9..81bc69d 100644 --- a/guidebook/items-blocks-machines/item/crab_claw.md +++ b/guidebook/items-blocks-machines/item/crab_claw.md @@ -18,8 +18,7 @@ item_ids: ## 蟹钳 -- ~~拳头硬了.png~~ -- 主手或副手手持时增加3格触及距离 +主手或副手手持时增加3格触及距离 ## 获取 diff --git a/guidebook/items-blocks-machines/item/disk.md b/guidebook/items-blocks-machines/item/disk.md new file mode 100644 index 0000000..26e4eec --- /dev/null +++ b/guidebook/items-blocks-machines/item/disk.md @@ -0,0 +1,28 @@ +--- +navigation: + title: "磁盘" + icon: "anvilcraft:disk" + position: 11 + parent: anvilcraft_guideme:item-block-machines.md +categories: + - tools +item_ids: + - anvilcraft:disk +--- + +# 磁盘 + + + + + +## 磁盘 + +- 右键一个设备复制其配置 +- 如果已经复制配置,再右键相同类别的设备粘贴配置 +- shift右键清空配置 +- 配置不包括:方块方向 + +## 合成 + + diff --git a/guidebook/items-blocks-machines/item/dragon_rod.md b/guidebook/items-blocks-machines/item/dragon_rod.md index 707aed1..ab6b361 100644 --- a/guidebook/items-blocks-machines/item/dragon_rod.md +++ b/guidebook/items-blocks-machines/item/dragon_rod.md @@ -24,8 +24,8 @@ item_ids: ## 龙杖 -- **龙杖** 本质上是为了将“放下**方块吞噬器**→**铁砧锤**敲击→收回方块吞噬器”的流程简化至一个工具内 -- 所有龙杖的功能是相同的,只是耐久不同和属性不同 +**龙杖** 本质上是为了将 "放下**方块吞噬器**→**铁砧锤**敲击→收回方块吞噬器" 的流程简化至一个工具内 +所有龙杖的功能是相同的,只是耐久不同和属性不同 ## 合成 diff --git a/guidebook/items-blocks-machines/item/ember_metal_tools.md b/guidebook/items-blocks-machines/item/ember_metal_tools.md index f7d5c12..d8cc22e 100644 --- a/guidebook/items-blocks-machines/item/ember_metal_tools.md +++ b/guidebook/items-blocks-machines/item/ember_metal_tools.md @@ -32,15 +32,15 @@ item_ids: !重铸! - 默认数值 - 1. 耐久以及挖掘等级与下界合金工具相同 + 1. 耐久以及挖掘等级与下界合金工具相同 2. 所有余烬金属工具武器均拥有特殊属性: [重铸](../properties/properties.md#重铸) - 3. 基础挖掘速度 10 + 3. 基础挖掘速度 10 4. 造成伤害的基础值为:剑9,斧11,镐7,锹7.5,锄2 6. 不怕火焰和熔岩 ## 合成方式: -需要余烬锻造模板和余烬金属锭(块)以及被锻造的工具 +需要[余烬锻造模板](upgrade_smithing_template.md#余烬)和余烬金属锭(块)以及被锻造的工具 diff --git a/guidebook/items-blocks-machines/item/filter.md b/guidebook/items-blocks-machines/item/filter.md new file mode 100644 index 0000000..efc7d9e --- /dev/null +++ b/guidebook/items-blocks-machines/item/filter.md @@ -0,0 +1,28 @@ +--- +navigation: + title: "过滤器" + icon: "anvilcraft:filter" + position: 11 + parent: anvilcraft_guideme:item-block-machines.md +categories: + - tools +item_ids: + - anvilcraft:filter +--- + +# 过滤器 + + + + + +## 过滤器 + +手持过滤器右键打开gui,或在其他ui右键点击过滤器物品打开其gui +> gui内 右边18格为放置物品的地方,放置物品不消耗物品,只留标记 +> 左边两个位置分别放"切换是否匹配数据"的按钮和"切换黑白名单"的按钮 +- 可以放入有过滤格的机器当中,放置后,该格可以进所有符合该过滤器的物品 + +## 合成 + + diff --git a/guidebook/items-blocks-machines/item/frost_metal_tools.md b/guidebook/items-blocks-machines/item/frost_metal_tools.md index aa836b1..c4d7125 100644 --- a/guidebook/items-blocks-machines/item/frost_metal_tools.md +++ b/guidebook/items-blocks-machines/item/frost_metal_tools.md @@ -38,7 +38,7 @@ item_ids: ## 合成方式: -需要浮霜金属锻造模板和浮霜金属锭(块)以及被锻造的工具 +需要[浮霜金属锻造模板](upgrade_smithing_template.md#浮霜)和浮霜金属锭(块)以及被锻造的工具 diff --git a/guidebook/items-blocks-machines/item/ionocraft_backpack.md b/guidebook/items-blocks-machines/item/ionocraft_backpack.md index 2ee9ec0..42baa3b 100644 --- a/guidebook/items-blocks-machines/item/ionocraft_backpack.md +++ b/guidebook/items-blocks-machines/item/ionocraft_backpack.md @@ -23,8 +23,13 @@ item_ids: - 飞行行为不会消耗耐久 - 装备着时,拥有创造飞行能力 - 穿戴飘升机背包时不免疫摔落伤害 + +## 充电 + - 在电网中对电网增加64kw的负载,自身每秒补充10秒的飞行时间值 -- 在电网外,玩家身上有电容器时,飞行时间小于600s自动将一个电容器转化为空电容器,增加600s飞行时间 +- 电网外时 + - 能量小于等于56MJ时,尝试使用背包的[电容器](capacitor.md)充能,每个电容器补充4MJ(飞行时间+80秒) + - 能量小于等于1MJ时,尝试使用[超级电容器](capacitor.md)直接充满(飞行时间变为1200秒) ## 合成 diff --git a/guidebook/items-blocks-machines/item/jeweler.md b/guidebook/items-blocks-machines/item/jeweler.md index 7a8327e..444d06e 100644 --- a/guidebook/items-blocks-machines/item/jeweler.md +++ b/guidebook/items-blocks-machines/item/jeweler.md @@ -1,13 +1,11 @@ --- navigation: title: "珠宝匠" - icon: "anvilcraft:amulet_box" + icon: "minecraft:emerald" position: 11 parent: anvilcraft_guideme:item-block-machines.md categories: - tools -item_ids: - - anvilcraft:amulet_box --- # 珠宝匠 @@ -22,12 +20,22 @@ item_ids: ## 转职 -- 将珠宝加工台作为工作方块的村民将转职为珠宝匠[珠宝加工台](jewelcrafting_table.md) +- 将珠宝加工台作为工作方块的村民将转职为珠宝匠[珠宝加工台](../block/jewelcrafting_table.md) ## 交易列表 -| 等级 | 购买的物品 | 出售的物品 | -|----|----------------------------------------------|--------------------------------------------| -| 新手 | 4个 | 1个 | -| 新手 | 1个 | 1个 | -| 学徒 | 8个 | 1个 | +| 等级 | 购买的物品 | 出售的物品 | +|----|----------------------------------------------------------------------------------------------|----------------------------------------------------------------------| +| 新手 | 4个 | 1个 | +| 新手 | 1个 | 1个 | +| 学徒 | 8个 | 1个 | +| 学徒 | 4个 | 1个 | +| 老手 | 1个 | 8个 | +| 老手 | 1个 | 8个 | +| 老手 | 1个 | 8个 | +| 老手 | 1个 | 8个 | +| 老手 | 40个
4个 | 1个 | +| 专家 | 1个 | 2个 | +| 专家 | 1个 | 24个 | +| 大师 | 64个
4个 | 1个 | +| 大师 | 64个
4个 | 1个 | diff --git a/guidebook/items-blocks-machines/item/pill.md b/guidebook/items-blocks-machines/item/pill.md new file mode 100644 index 0000000..4dd8a99 --- /dev/null +++ b/guidebook/items-blocks-machines/item/pill.md @@ -0,0 +1,38 @@ +--- +navigation: + title: "药片与药盒" + icon: "anvilcraft:pill" + position: 11 + parent: anvilcraft_guideme:item-block-machines.md +categories: + - tools +item_ids: + - anvilcraft:pill + - anvilcraft:pill_box +--- + +# 药片与药盒 + + + + + + +## 药片 + +- 没有效果的药片和任意药水(无视其是否为喷溅以及滞留)在合成栏合成时,将药水转化为空瓶,将药水的效果赋予药片,得到对应药水效果的药片 +- 药片可以右键使用,使用时消耗一个 + + + +--- + +## 药盒 + +- 配置方式类似[护符盒](amulet_box.md),但是更简单没有大小格子之分 +- 鼠标放上去有高2宽4的悬浮gui + - 光标持有药片时可以往里放入,滚轮选择里面的位置,可以取出药片 +- 拿在手上时右键可以一次性吃掉里面每种不同的药片各一片,冷却2秒 +- 可以设置快捷键:在背包中使用,背包中有多个药盒时,用快捷键只使用更靠前的 + + \ No newline at end of file diff --git a/guidebook/items-blocks-machines/item/royal_steel_tools.md b/guidebook/items-blocks-machines/item/royal_steel_tools.md index a85c35f..60b6c5d 100644 --- a/guidebook/items-blocks-machines/item/royal_steel_tools.md +++ b/guidebook/items-blocks-machines/item/royal_steel_tools.md @@ -34,7 +34,7 @@ item_ids: ## 合成方式: -需要皇家钢锻造模板和皇家钢锭(块)以及被锻造的工具 +需要[皇家钢锻造模板](upgrade_smithing_template.md#皇家钢)和皇家钢锭(块)以及被锻造的工具 diff --git a/guidebook/items-blocks-machines/item/spectral_slingshot.md b/guidebook/items-blocks-machines/item/spectral_slingshot.md index 4288db7..dab3e69 100644 --- a/guidebook/items-blocks-machines/item/spectral_slingshot.md +++ b/guidebook/items-blocks-machines/item/spectral_slingshot.md @@ -20,19 +20,19 @@ item_ids: - ~~影分身?~~ - 装填:装填只可装填入一个物品,但射击不会消耗物品,射出幻影 - - 副手持物品,主手持幻灵弹弓来装填 + - 副手持物品,主手持幻灵弹弓来装填 - 待机:与原版弩类似,鼠标指上去可以看到说明中有弹药信息 -- 射击:点按右键射出一弹药,长按右键连续射击,每次射击之间冷却为2秒 +- 射击:点按右键射出弹药,长按右键连续射击,每次射击之间冷却为2秒 - 伤害:基础伤害为该物品的近战伤害的50%(原武器仅增伤附魔生效,无情时增伤附魔不生效,然后可以通过幻灵弹弓的力量附魔增伤) - 取出和替换弹药:另一只手为空时shift右键取出弹药,另一只手为与弹药不同的物品时shift右键替换弹药 - 附魔: - - 快速装填影响装填速度,与原版弩一致,同时降低冷却,每级降低0.25秒,最多降1秒 - - 多重射击时每次射击射出多个弹药 - - 穿透使得弹射物可以穿过实体 - - 无限使得装填装填时不消耗手中的物品,但取出或替换弹药时也不会从中获得物品 - - 力量增加弹射物伤害(与原版箭矢不同,每级只增加10%伤害) - - 火矢使弹射物燃烧 - - 冲击造成击退 + - 快速装填影响装填速度,与原版弩一致,同时降低冷却,每级降低0.25秒,最多降1秒 + - 多重射击时每次射击射出多个弹药 + - 穿透使得弹射物可以穿过实体 + - 无限使得装填装填时不消耗手中的物品,但取出或替换弹药时也不会从中获得物品 + - 力量增加弹射物伤害(与原版箭矢不同,每级只增加10%伤害) + - 火矢使弹射物燃烧 + - 冲击造成击退 ## 合成 diff --git a/guidebook/items-blocks-machines/item/transcendence_tools.md b/guidebook/items-blocks-machines/item/transcendence_tools.md index 728468d..69c0ca6 100644 --- a/guidebook/items-blocks-machines/item/transcendence_tools.md +++ b/guidebook/items-blocks-machines/item/transcendence_tools.md @@ -24,6 +24,8 @@ categories: ## 合成 +需要[超限金属锻造模板](upgrade_smithing_template.md#超限)和超限金属锭(块)以及被锻造的工具 + diff --git a/guidebook/items-blocks-machines/item/upgrade_smithing_template.md b/guidebook/items-blocks-machines/item/upgrade_smithing_template.md new file mode 100644 index 0000000..fd78065 --- /dev/null +++ b/guidebook/items-blocks-machines/item/upgrade_smithing_template.md @@ -0,0 +1,134 @@ +--- +navigation: + title: "锻造模板" + icon: "anvilcraft:royal_steel_upgrade_smithing_template" + position: 2 + parent: anvilcraft_guideme:item-block-machines.md +categories: + - tools +item_ids: + - anvilcraft:royal_steel_upgrade_smithing_template + - anvilcraft:frost_metal_upgrade_smithing_template + - anvilcraft:ember_metal_upgrade_smithing_template + - anvilcraft:transcendium_upgrade_smithing_template + - anvilcraft:two_to_one_smithing_template + - anvilcraft:four_to_one_smithing_template + - anvilcraft:eight_to_one_smithing_template +--- + +# 锻造模板 + +本篇将介绍各种锻造模板 + + + + + + + + + + + +--- + +## 皇家钢 + + + +用于给物品或方块升级至皇家钢等级 + +[皇家钢工具](royal_steel_tools.md) + +### 获取 + +- 村庄武器匠小屋箱子概率刷新 +- 与老手级[珠宝匠](jeweler.md)交易获取 + +--- + +## 浮霜 + + + +用于给物品或方块升级至浮霜等级 + +[浮霜金属工具](frost_metal_tools.md) + +### 合成 + + + +--- + +## 余烬 + + + +用于给物品或方块升级至余烬等级 + +[余烬金属工具](ember_metal_tools.md) + +### 合成 + + + +--- + +## 超限 + + + +用于给物品或方块升级至超限等级 + +[超限金属工具](transcendence_tools.md) + +### 获取 + +请看[八合一锻造模板](upgrade_smithing_template.md#八合一) + +--- + +### 多合一 + + + + + + + +用于在[余烬锻造台](../block/ember_smithing_table.md)合成装备 + +### 合成 + +使用对应数量的任意不同锻造模板在冲压平台砸而合成 +> 包括升级装备用的锻造模板和盔甲纹饰的锻造模板皆可,最好能兼容其他模组添加的锻造模板,多合一锻造模板也算一种锻造模板 + +#### 示例 + +- 下界合金锻造模板+皇家钢锻造模板→二合一锻造模板 +- 猪鼻锻造模板+肋骨锻造模板+余烬锻造模板+海岸锻造模板→四合一锻造模板 + +#### 八合一 + +将有附魔的8合一锻造模板物品实体用任意方式摧毁,根据附魔决定其新的产物(顿号意味着“或”): + +- 灵魂疾行:猪鼻盔甲纹饰 +- 火焰保护、火焰附加、火矢:肋骨盔甲纹饰 +- 爆炸保护:沙丘盔甲纹饰 +- 迅捷潜行:幽静盔甲纹饰 +- 保护:监守盔甲纹饰 +- 经验修补:恼鬼盔甲纹饰 +- 无限:哨兵盔甲纹饰 +- 致密、破甲:镶铆盔甲纹饰 +- 风暴:涡流盔甲纹饰 +- 弹射物保护:荒野盔甲纹饰 +- 时运:尖塔盔甲纹饰 +- 抢夺:眼眸盔甲纹饰 +- 海之眷顾、饵钓:海岸盔甲纹饰 +- 深海探索者、水下呼吸、水下速掘、穿刺、激流:潮汐盔甲纹饰 +- 其他附魔:向导盔甲纹饰、牧民盔甲纹饰、雇主盔甲纹饰、塑造盔甲纹饰 + +> 执行时,随机取一条附魔,按照列表生成新物品,最多选4次(消耗一个8合一模板,最多通过这种方式产生4个新模板),选择有可能重复 + +> 如果选择了4次且4次结果(指生成的新模板)都不同,则额外生成一个超限合金锻造模板 diff --git a/src/generated/resources/assets/anvilcraft_guideme/lang/en_ud.json b/src/generated/resources/assets/anvilcraft_guideme/lang/en_ud.json index 81b60fd..58fe2ed 100644 --- a/src/generated/resources/assets/anvilcraft_guideme/lang/en_ud.json +++ b/src/generated/resources/assets/anvilcraft_guideme/lang/en_ud.json @@ -1,4 +1,4 @@ { - "gui.ac_guideme.loaded": "¡pǝpɐoꞀ sı %s", - "gui.ac_guideme.unloaded": "¡pǝpɐoꞀ ʇ,usı %s" + "gui.ac_guideme.mod_info.loaded": "¡pǝpɐoꞀ sı %s", + "gui.ac_guideme.mod_info.unloaded": "¡pǝpɐoꞀ ʇ,usı %s" } \ No newline at end of file diff --git a/src/generated/resources/assets/anvilcraft_guideme/lang/en_us.json b/src/generated/resources/assets/anvilcraft_guideme/lang/en_us.json index b4b1970..170f5b5 100644 --- a/src/generated/resources/assets/anvilcraft_guideme/lang/en_us.json +++ b/src/generated/resources/assets/anvilcraft_guideme/lang/en_us.json @@ -1,4 +1,4 @@ { - "gui.ac_guideme.loaded": "%s is Loaded!", - "gui.ac_guideme.unloaded": "%s isn't Loaded!" + "gui.ac_guideme.mod_info.loaded": "%s is Loaded!", + "gui.ac_guideme.mod_info.unloaded": "%s isn't Loaded!" } \ No newline at end of file diff --git a/src/main/java/dev/anvilcraft/guideme/data/lang/LangHandler.java b/src/main/java/dev/anvilcraft/guideme/data/lang/LangHandler.java index c349d62..337805a 100644 --- a/src/main/java/dev/anvilcraft/guideme/data/lang/LangHandler.java +++ b/src/main/java/dev/anvilcraft/guideme/data/lang/LangHandler.java @@ -3,14 +3,8 @@ import com.tterrag.registrate.providers.RegistrateLangProvider; public class LangHandler { - - /** - * 语言文件初始化 - * - * @param p 提供器 - */ - public static void init(RegistrateLangProvider p) { - p.add("gui.ac_guideme.loaded", "%s is Loaded!"); - p.add("gui.ac_guideme.unloaded", "%s isn't Loaded!"); + public static void init(RegistrateLangProvider provider) { + ModInfoLang.init(provider); + RecipeLang.init(provider); } } diff --git a/src/main/java/dev/anvilcraft/guideme/data/lang/ModInfoLang.java b/src/main/java/dev/anvilcraft/guideme/data/lang/ModInfoLang.java new file mode 100644 index 0000000..0cce752 --- /dev/null +++ b/src/main/java/dev/anvilcraft/guideme/data/lang/ModInfoLang.java @@ -0,0 +1,10 @@ +package dev.anvilcraft.guideme.data.lang; + +import com.tterrag.registrate.providers.RegistrateLangProvider; + +public class ModInfoLang { + public static void init(RegistrateLangProvider p) { + p.add("gui.ac_guideme.mod_info.loaded", "%s is Loaded!"); + p.add("gui.ac_guideme.mod_info.unloaded", "%s isn't Loaded!"); + } +} diff --git a/src/main/java/dev/anvilcraft/guideme/data/lang/RecipeLang.java b/src/main/java/dev/anvilcraft/guideme/data/lang/RecipeLang.java new file mode 100644 index 0000000..d35695e --- /dev/null +++ b/src/main/java/dev/anvilcraft/guideme/data/lang/RecipeLang.java @@ -0,0 +1,9 @@ +package dev.anvilcraft.guideme.data.lang; + +import com.tterrag.registrate.providers.RegistrateLangProvider; + +public class RecipeLang { + public static void init(RegistrateLangProvider p) { + + } +} diff --git a/src/main/java/dev/anvilcraft/guideme/guide/RecipeTypeContributions.java b/src/main/java/dev/anvilcraft/guideme/guide/RecipeTypeContributions.java index 7070172..edbfe2b 100644 --- a/src/main/java/dev/anvilcraft/guideme/guide/RecipeTypeContributions.java +++ b/src/main/java/dev/anvilcraft/guideme/guide/RecipeTypeContributions.java @@ -23,7 +23,6 @@ import dev.anvilcraft.guideme.guide.recipe.LytSuperHeatingRecipe; import dev.anvilcraft.guideme.guide.recipe.LytTimeWarpRecipe; import dev.anvilcraft.guideme.guide.recipe.LytUnpackRecipe; -import dev.dubhe.anvilcraft.init.item.ModItems; import dev.dubhe.anvilcraft.init.reicpe.ModRecipeTypes; import dev.dubhe.anvilcraft.recipe.ChargerChargingRecipe; import dev.dubhe.anvilcraft.recipe.JewelCraftingRecipe; @@ -50,9 +49,15 @@ import dev.dubhe.anvilcraft.recipe.transform.MobTransformWithItemRecipe; import guideme.compiler.tags.RecipeTypeMappingSupplier; import guideme.document.block.recipes.LytStandardRecipeBox; +import net.minecraft.network.chat.Component; +import net.minecraft.network.chat.FormattedText; +import net.minecraft.network.chat.Style; import net.minecraft.world.item.Items; import net.minecraft.world.item.crafting.RecipeHolder; +import java.util.Optional; +import java.util.concurrent.atomic.AtomicReference; + public class RecipeTypeContributions implements RecipeTypeMappingSupplier { // TODO: BeaconConversion | MultiBlock | EndPortalConversion | Transcendium | MobTransform @@ -88,14 +93,7 @@ private static LytStandardRecipeBox blockCompress(RecipeHol .icon(Items.ANVIL) .customBody(new LytBlockCompressRecipe(holder.value())) .title( - holder - .value() - .getFirstResultBlock() - .state() - .getBlock() - .asItem() - .getDescription() - .getString() + appendComponent(Component.translatable("gui.anvilcraft.category.block_compress")) ) .build(holder); } @@ -105,14 +103,7 @@ private static LytStandardRecipeBox blockCrush(RecipeHolder blockSmear(RecipeHolder boiling(RecipeHolder bulging(RecipeHolder cooking(RecipeHolder holder) { @@ -162,13 +143,7 @@ private static LytStandardRecipeBox cooking(RecipeHolder itemCompress(RecipeHolde .icon(Items.ANVIL) .customBody(new LytItemCompressRecipe(holder.value())) .title( - holder - .value() - .getResultItems() - .getFirst() - .getItem() - .getDescription() - .getString() + appendComponent(Component.translatable("gui.anvilcraft.category.item_compress")) ) .build(holder); } @@ -194,13 +163,7 @@ private static LytStandardRecipeBox itemCrush(RecipeHolder itemInject(RecipeHolder massInject(RecipeHolder mesh(RecipeHolder ho .icon(Items.ANVIL) .customBody(new LytMeshRecipe(holder.value())) .title( - holder - .value() - .getResultItems() - .getFirst() - .getItem() - .getDescription() - .getString() + appendComponent(Component.translatable("gui.anvilcraft.category.mesh")) ) .build(holder); } @@ -253,13 +203,7 @@ private static LytStandardRecipeBox neutronIrradiation .icon(Items.ANVIL) .customBody(new LytNeutronIrradiationRecipe(holder.value())) .title( - holder - .value() - .getResultItems() - .getFirst() - .getItem() - .getDescription() - .getString() + appendComponent(Component.translatable("gui.anvilcraft.category.neutron_irradiation")) ) .build(holder); } @@ -268,6 +212,9 @@ private static LytStandardRecipeBox squeezing(RecipeHolder stamping(RecipeHolder holder) { @@ -276,13 +223,7 @@ private static LytStandardRecipeBox stamping(RecipeHolder superHeating(RecipeHolde .builder() .icon(Items.ANVIL) .customBody(new LytSuperHeatingRecipe(holder.value())) + .title( + appendComponent(Component.translatable("gui.anvilcraft.category.super_heating")) + ) .build(holder); } private static LytStandardRecipeBox timeWarp(RecipeHolder holder) { @@ -298,6 +242,9 @@ private static LytStandardRecipeBox timeWarp(RecipeHolder unpack(RecipeHolder holder) { @@ -306,13 +253,7 @@ private static LytStandardRecipeBox unpack(RecipeHolder collision(RecipeH .builder() .icon(Items.ANVIL) .customBody(new LytCollisionRecipe(holder.value())) + .title( + appendComponent(Component.translatable("gui.anvilcraft.category.anvil_collision")) + ) .build(holder); } private static LytStandardRecipeBox chargerCharging(RecipeHolder holder) { @@ -329,12 +273,7 @@ private static LytStandardRecipeBox chargerCharging(Recip .icon(Items.ANVIL) .customBody(new LytChargerChargingRecipe(holder.value())) .title( - holder - .value() - .getResult() - .getItem() - .getDescription() - .getString() + appendComponent(Component.translatable("gui.anvilcraft.category.charger_charging")) ) .build(holder); } @@ -344,12 +283,7 @@ private static LytStandardRecipeBox jewelCrafting(RecipeHol .icon(Items.ANVIL) .customBody(new LytJewelCraftingRecipe(holder.value())) .title( - holder - .value() - .getResult() - .getItem() - .getDescription() - .getString() + appendComponent(Component.translatable("gui.anvilcraft.category.jewel_crafting")) ) .build(holder); } @@ -359,13 +293,7 @@ private static LytStandardRecipeBox multiple(Re .icon(Items.ANVIL) .customBody(new LytBaseMultipleToOneSmithingRecipe(holder.value())) .title( - holder - .value() - .getResult() - .getResult() - .getItem() - .getDescription() - .getString() + appendComponent(Component.translatable("gui.anvilcraft.category.multiple_to_one_smithing")) ) .build(holder); } @@ -398,4 +326,16 @@ private static LytStandardRecipeBox mobTransformWith ) .build(holder); } + + private static String appendComponent(FormattedText formattedText) { + AtomicReference string = new AtomicReference<>(); + formattedText.visit( + (style, text) -> { + string.set(text); + return Optional.empty(); + }, + Style.EMPTY + ); + return string.get(); + } } \ No newline at end of file diff --git a/src/main/java/dev/anvilcraft/guideme/guide/compiler/tag/KeyMapTagCompiler.java b/src/main/java/dev/anvilcraft/guideme/guide/compiler/tag/KeyMapTagCompiler.java index a73309c..302b358 100644 --- a/src/main/java/dev/anvilcraft/guideme/guide/compiler/tag/KeyMapTagCompiler.java +++ b/src/main/java/dev/anvilcraft/guideme/guide/compiler/tag/KeyMapTagCompiler.java @@ -32,7 +32,7 @@ protected void compile(PageCompiler compiler, LytFlowParent parent, MdxJsxElemen String name = component1.getString() + " [" + component.getString() + "] "; LytFlowSpan span = new LytFlowSpan(); span.appendText(name); - span.setHoverStyle(TextStyle.builder().bold(true).color(new ColorUtil("97d9e1")).build()); + span.setHoverStyle(TextStyle.builder().underlined(true).color(new ColorUtil("97d9e1")).build()); span.setStyle(TextStyle.builder().color(new ColorUtil("d9afd9")).build()); parent.append(span); } diff --git a/src/main/java/dev/anvilcraft/guideme/guide/compiler/tag/ModInfoTagCompiler.java b/src/main/java/dev/anvilcraft/guideme/guide/compiler/tag/ModInfoTagCompiler.java index 0f5e2fd..a0b1ee1 100644 --- a/src/main/java/dev/anvilcraft/guideme/guide/compiler/tag/ModInfoTagCompiler.java +++ b/src/main/java/dev/anvilcraft/guideme/guide/compiler/tag/ModInfoTagCompiler.java @@ -42,19 +42,19 @@ protected void compile(PageCompiler compiler, LytFlowParent parent, MdxJsxElemen if (modName != null && modVersion != null) { nameAndVersion = modName + " " + modVersion; - link.appendText(Component.translatable("gui.ac_guideme.loaded", nameAndVersion).getString()); + link.appendComponent(Component.translatable("gui.ac_guideme.mod_info.loaded", nameAndVersion)); link.setStyle(TextStyle.builder().color(new ColorUtil("98fb98")).build()); - link.setHoverStyle(TextStyle.builder().bold(true).color(new ColorUtil("00ff00")).build()); + link.setHoverStyle(TextStyle.builder().underlined(true).color(new ColorUtil("00ff00")).build()); } else if (modName != null) { nameAndVersion = modName; - link.appendText(Component.translatable("gui.ac_guideme.loaded", nameAndVersion).getString()); + link.appendComponent(Component.translatable("gui.ac_guideme.mod_info.loaded", nameAndVersion)); link.setStyle(TextStyle.builder().color(new ColorUtil("98fb98")).build()); - link.setHoverStyle(TextStyle.builder().bold(true).color(new ColorUtil("00ff00")).build()); + link.setHoverStyle(TextStyle.builder().underlined(true).color(new ColorUtil("00ff00")).build()); } else { nameAndVersion = id; - link.appendText(Component.translatable("gui.ac_guideme.unloaded", nameAndVersion).getString()); + link.appendComponent(Component.translatable("gui.ac_guideme.mod_info.unloaded", nameAndVersion)); link.setStyle(TextStyle.builder().color(new ColorUtil("dc143c")).build()); - link.setHoverStyle(TextStyle.builder().bold(true).color(new ColorUtil("ff0000")).build()); + link.setHoverStyle(TextStyle.builder().underlined(true).color(new ColorUtil("ff0000")).build()); } if (url != null) { diff --git a/src/main/java/dev/anvilcraft/guideme/guide/recipe/LytItemCompressRecipe.java b/src/main/java/dev/anvilcraft/guideme/guide/recipe/LytItemCompressRecipe.java index 7fca8b3..018b4a9 100644 --- a/src/main/java/dev/anvilcraft/guideme/guide/recipe/LytItemCompressRecipe.java +++ b/src/main/java/dev/anvilcraft/guideme/guide/recipe/LytItemCompressRecipe.java @@ -40,7 +40,7 @@ public void render(RenderContext context) { protected LytRect computeBoxLayout(LayoutContext context, int x, int y, int availableWidth) { workBlocks.layout(context, x + 70, y + 15, availableWidth); inputItemSlot.layout(context, x, y, availableWidth); - outputItemSlot.layout(context, x + 87, y, availableWidth); + outputItemSlot.layout(context, x + 80, y, availableWidth); return new LytRect(x, y, 162, 64); } } diff --git a/src/main/java/dev/anvilcraft/guideme/guide/recipe/LytItemCrushRecipe.java b/src/main/java/dev/anvilcraft/guideme/guide/recipe/LytItemCrushRecipe.java index ea12c75..00df0c5 100644 --- a/src/main/java/dev/anvilcraft/guideme/guide/recipe/LytItemCrushRecipe.java +++ b/src/main/java/dev/anvilcraft/guideme/guide/recipe/LytItemCrushRecipe.java @@ -40,7 +40,7 @@ public void render(RenderContext context) { protected LytRect computeBoxLayout(LayoutContext context, int x, int y, int availableWidth) { workBlocks.layout(context, x + 70, y + 15, availableWidth); inputItemSlot.layout(context, x, y, availableWidth); - outputItemSlot.layout(context, x + 87, y, availableWidth); + outputItemSlot.layout(context, x + 80, y, availableWidth); return new LytRect(x, y, 162, 64); } } diff --git a/src/main/java/dev/anvilcraft/guideme/guide/recipe/LytStampingRecipe.java b/src/main/java/dev/anvilcraft/guideme/guide/recipe/LytStampingRecipe.java index de3840b..59d63b5 100644 --- a/src/main/java/dev/anvilcraft/guideme/guide/recipe/LytStampingRecipe.java +++ b/src/main/java/dev/anvilcraft/guideme/guide/recipe/LytStampingRecipe.java @@ -40,7 +40,7 @@ public void render(RenderContext context) { protected LytRect computeBoxLayout(LayoutContext context, int x, int y, int availableWidth) { workBlocks.layout(context, x + 70, y + 10, availableWidth); inputItemSlot.layout(context, x, y, availableWidth); - outputItemSlot.layout(context, x + 87, y, availableWidth); + outputItemSlot.layout(context, x + 80, y, availableWidth); return new LytRect(x, y, 162, 64); } } diff --git a/src/main/java/dev/anvilcraft/guideme/guide/slot/LytBlockSlot.java b/src/main/java/dev/anvilcraft/guideme/guide/slot/LytBlockSlot.java index 5d6d7e5..eeaed04 100644 --- a/src/main/java/dev/anvilcraft/guideme/guide/slot/LytBlockSlot.java +++ b/src/main/java/dev/anvilcraft/guideme/guide/slot/LytBlockSlot.java @@ -46,7 +46,9 @@ public LytBlockSlot(BlockState blockState) { for (Map.Entry, Comparable> entry : blockState.getValues().entrySet()) { Property property = entry.getKey(); Comparable value = entry.getValue(); - builder.with(property, value.toString()); + if (blockState.getBlock().defaultBlockState().getValue(property) != value) { + builder.with(property, value.toString()); + } } BlockStatePredicate predicate = builder.of(blockState.getBlock()).build(); @@ -58,7 +60,9 @@ public LytBlockSlot(List blockStatePredicates, BlockState b for (Map.Entry, Comparable> entry : blockState.getValues().entrySet()) { Property property = entry.getKey(); Comparable value = entry.getValue(); - builder.with(property, value.toString()); + if (blockState.getBlock().defaultBlockState().getValue(property) != value) { + builder.with(property, value.toString()); + } } BlockStatePredicate predicate = builder.of(blockState.getBlock()).build(); @@ -74,12 +78,17 @@ public LytBlockSlot(BlockState state1, BlockState state2) { Property property = entry.getKey(); Comparable value = entry.getValue(); builder1.with(property, value.toString()); + if (state1.getBlock().defaultBlockState().getValue(property) != value) { + builder1.with(property, value.toString()); + } } for (Map.Entry, Comparable> entry : state2.getValues().entrySet()) { Property property = entry.getKey(); Comparable value = entry.getValue(); - builder2.with(property, value.toString()); + if (state2.getBlock().defaultBlockState().getValue(property) != value) { + builder2.with(property, value.toString()); + } } BlockStatePredicate predicate1 = builder1.of(state1.getBlock()).build(); diff --git a/src/main/java/dev/anvilcraft/guideme/guide/slot/LytOutputItemSlot.java b/src/main/java/dev/anvilcraft/guideme/guide/slot/LytOutputItemSlot.java index 7811825..3fe9332 100644 --- a/src/main/java/dev/anvilcraft/guideme/guide/slot/LytOutputItemSlot.java +++ b/src/main/java/dev/anvilcraft/guideme/guide/slot/LytOutputItemSlot.java @@ -33,7 +33,7 @@ public LytOutputItemSlot(List resultItems) { protected LytRect computeLayout(LayoutContext context, int x, int y, int availableWidth) { int size = resultItems.size(); if (size <= 1) { - return new LytRect(x + 32, y + 16, SLOT_SIZE, SLOT_SIZE); + return new LytRect(x + 24, y + 16, SLOT_SIZE, SLOT_SIZE); } else if (size <= 4) { return new LytRect(x + 24, y + 12, SLOT_SIZE * 2, SLOT_SIZE * 2); } else if (size <= 6) { diff --git a/src/main/resources/assets/anvilcraft_guideme/lang/zh_cn.json b/src/main/resources/assets/anvilcraft_guideme/lang/zh_cn.json index d03aa3c..34afc7b 100644 --- a/src/main/resources/assets/anvilcraft_guideme/lang/zh_cn.json +++ b/src/main/resources/assets/anvilcraft_guideme/lang/zh_cn.json @@ -1,4 +1,4 @@ { - "gui.ac_guideme.loaded": "%s 已加载!", - "gui.ac_guideme.unloaded": "%s 未加载!" + "gui.ac_guideme.mod_info.loaded": "%s 已加载!", + "gui.ac_guideme.mod_info.unloaded": "%s 未加载!" } \ No newline at end of file From 9c387de4ff144f8f137c784810573b0af6237bb0 Mon Sep 17 00:00:00 2001 From: theabab2333 <2047477146@qq.com> Date: Mon, 29 Dec 2025 20:15:42 +0800 Subject: [PATCH 2/8] =?UTF-8?q?docs(guidebook):=20=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=E7=89=A9=E5=93=81=E6=96=87=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../item/beef_mushroom_stew.md | 6 +- .../items-blocks-machines/item/chocolate.md | 2 +- .../item/creamy_bread_roll.md | 21 +++++++ .../item/food_ingredients.md | 58 +++++++++++++++++++ .../items-blocks-machines/item/seeds_pack.md | 20 +++++++ .../items-blocks-machines/item/utusan.md | 23 ++++++++ .../guide/recipe/LytBoilingRecipe.java | 2 +- .../guide/recipe/LytBulgingRecipe.java | 2 +- .../guide/recipe/LytCookingRecipe.java | 2 +- 9 files changed, 130 insertions(+), 6 deletions(-) create mode 100644 guidebook/items-blocks-machines/item/creamy_bread_roll.md create mode 100644 guidebook/items-blocks-machines/item/food_ingredients.md create mode 100644 guidebook/items-blocks-machines/item/seeds_pack.md create mode 100644 guidebook/items-blocks-machines/item/utusan.md diff --git a/guidebook/items-blocks-machines/item/beef_mushroom_stew.md b/guidebook/items-blocks-machines/item/beef_mushroom_stew.md index fb14448..c6a6667 100644 --- a/guidebook/items-blocks-machines/item/beef_mushroom_stew.md +++ b/guidebook/items-blocks-machines/item/beef_mushroom_stew.md @@ -16,6 +16,8 @@ item_ids: ## 牛肉炖蘑菇 -提供16饱食度和 +提供16饱和度和10饥饿值 -> 天王盖地虎,牛肉炖蘑菇 \ No newline at end of file +> 天王盖地虎,牛肉炖蘑菇 + + \ No newline at end of file diff --git a/guidebook/items-blocks-machines/item/chocolate.md b/guidebook/items-blocks-machines/item/chocolate.md index aff68b4..eccd489 100644 --- a/guidebook/items-blocks-machines/item/chocolate.md +++ b/guidebook/items-blocks-machines/item/chocolate.md @@ -22,7 +22,7 @@ item_ids: ## 巧克力 -回复16饱和度(不是饱食度) +回复16饱和度 diff --git a/guidebook/items-blocks-machines/item/creamy_bread_roll.md b/guidebook/items-blocks-machines/item/creamy_bread_roll.md new file mode 100644 index 0000000..decde3c --- /dev/null +++ b/guidebook/items-blocks-machines/item/creamy_bread_roll.md @@ -0,0 +1,21 @@ +--- +navigation: + title: "奶油面包卷" + icon: "anvilcraft:creamy_bread_roll" + position: 11 + parent: anvilcraft_guideme:item-block-machines.md +categories: + - misc ingredients blocks +item_ids: + - anvilcraft:creamy_bread_roll +--- + +# 奶油面包卷 + + + +## 奶油面包卷 + +提供8饱和度和8饥饿值 + + \ No newline at end of file diff --git a/guidebook/items-blocks-machines/item/food_ingredients.md b/guidebook/items-blocks-machines/item/food_ingredients.md new file mode 100644 index 0000000..8847660 --- /dev/null +++ b/guidebook/items-blocks-machines/item/food_ingredients.md @@ -0,0 +1,58 @@ +--- +navigation: + title: "食材" + icon: "anvilcraft:flour" + position: 11 + parent: anvilcraft_guideme:item-block-machines.md +categories: + - misc ingredients blocks +item_ids: + - anvilcraft:cocoa_powder + - anvilcraft:cocoa_butter + - anvilcraft:cocoa_liquor + - anvilcraft:dough + - anvilcraft:flour + - anvilcraft:cream +--- + +# 食材 + + + + + + + + + + +## 可可系列 + +> 可用于合成[巧克力](chocolate.md) + +### 可可粉和可可脂 + + + +### 可可液块 + + + +--- + +## 面粉与面团 + +> 可用于合成面包等(经济实惠) + + + + + + +--- + +## 奶油 + +> 牛:这里也逃不过被榨的命运 + + \ No newline at end of file diff --git a/guidebook/items-blocks-machines/item/seeds_pack.md b/guidebook/items-blocks-machines/item/seeds_pack.md new file mode 100644 index 0000000..b57c1fd --- /dev/null +++ b/guidebook/items-blocks-machines/item/seeds_pack.md @@ -0,0 +1,20 @@ +--- +navigation: + title: "种子袋" + icon: "anvilcraft:seeds_pack" + position: 11 + parent: anvilcraft_guideme:item-block-machines.md +categories: + - tools +item_ids: + - anvilcraft:seeds_pack +--- + +# 种子袋 + + + +## 种子袋 + +- 正常情况下无法获取(本体没写获取方式) +- 右键使用能获取随机种子 diff --git a/guidebook/items-blocks-machines/item/utusan.md b/guidebook/items-blocks-machines/item/utusan.md new file mode 100644 index 0000000..d6b0c25 --- /dev/null +++ b/guidebook/items-blocks-machines/item/utusan.md @@ -0,0 +1,23 @@ +--- +navigation: + title: "五毒散" + icon: "anvilcraft:canned_food" + position: 11 + parent: anvilcraft_guideme:item-block-machines.md +categories: + - tools +item_ids: + - anvilcraft:utusan +--- + +# 五毒散 + + + +## 五毒散 + +> 这可是十年老中医,来这你就放心吧 + +食用后清除身上的所有负面效果,如果无负面效果则获得30秒中毒5 + + \ No newline at end of file diff --git a/src/main/java/dev/anvilcraft/guideme/guide/recipe/LytBoilingRecipe.java b/src/main/java/dev/anvilcraft/guideme/guide/recipe/LytBoilingRecipe.java index 4860187..a6152bf 100644 --- a/src/main/java/dev/anvilcraft/guideme/guide/recipe/LytBoilingRecipe.java +++ b/src/main/java/dev/anvilcraft/guideme/guide/recipe/LytBoilingRecipe.java @@ -44,7 +44,7 @@ public void render(RenderContext context) { protected LytRect computeBoxLayout(LayoutContext context, int x, int y, int availableWidth) { workBlocks.layout(context, x + 70, y, availableWidth); inputItemSlot.layout(context, x, y, availableWidth); - outputItemSlot.layout(context, x + 87, y, availableWidth); + outputItemSlot.layout(context, x + 80, y, availableWidth); return new LytRect(x, y, 162, 64); } } diff --git a/src/main/java/dev/anvilcraft/guideme/guide/recipe/LytBulgingRecipe.java b/src/main/java/dev/anvilcraft/guideme/guide/recipe/LytBulgingRecipe.java index 426d05f..a39dd36 100644 --- a/src/main/java/dev/anvilcraft/guideme/guide/recipe/LytBulgingRecipe.java +++ b/src/main/java/dev/anvilcraft/guideme/guide/recipe/LytBulgingRecipe.java @@ -50,7 +50,7 @@ public void render(RenderContext context) { @Override protected LytRect computeBoxLayout(LayoutContext context, int x, int y, int availableWidth) { inputItemSlot.layout(context, x, y, availableWidth); - outputItemSlot.layout(context, x + 87, y, availableWidth); + outputItemSlot.layout(context, x + 80, y, availableWidth); inputBlockSlot.layout(context, x + 70, y + 10, availableWidth); outputBlockSlot.layout(context, x + 100, y + 10, availableWidth); return new LytRect(x, y, 162, 64); diff --git a/src/main/java/dev/anvilcraft/guideme/guide/recipe/LytCookingRecipe.java b/src/main/java/dev/anvilcraft/guideme/guide/recipe/LytCookingRecipe.java index e1746b5..afa0c21 100644 --- a/src/main/java/dev/anvilcraft/guideme/guide/recipe/LytCookingRecipe.java +++ b/src/main/java/dev/anvilcraft/guideme/guide/recipe/LytCookingRecipe.java @@ -42,7 +42,7 @@ public void render(RenderContext context) { protected LytRect computeBoxLayout(LayoutContext context, int x, int y, int availableWidth) { workBlocks.layout(context, x + 70, y, availableWidth); inputItemSlot.layout(context, x, y, availableWidth); - outputItemSlot.layout(context, x + 87, y, availableWidth); + outputItemSlot.layout(context, x + 80, y, availableWidth); return new LytRect(x, y, 162, 64); } } From 10d0f943632e062c428e4bbbb4bc4d78e7a1ee3c Mon Sep 17 00:00:00 2001 From: theabab2333 <2047477146@qq.com> Date: Thu, 1 Jan 2026 23:36:42 +0800 Subject: [PATCH 3/8] =?UTF-8?q?docs(guidebook):=20=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=E6=8C=87=E5=8D=97=E4=B9=A6=E5=86=85=E5=AE=B9=E5=B9=B6=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E6=96=B0=E7=89=A9=E5=93=81=E4=BB=8B=E7=BB=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 移除进阶特性和基础玩法相关章节内容 - 新增诅咒金、余烬金属、浮霜金属等物品介绍页面 - 添加宝石和金属锭的合成方式与用途说明 - 更新锻造模板相关链接指向正确的金属锭页面 - 移除游戏流程相关指导内容 - 更新物品方块机器页面图标为指南书 - 添加方块状态槽位的getter注解支持 --- .../advanced_tool_properties.md | 30 ---- guidebook/advanced_features_index.md | 12 -- guidebook/basic/basic_block_processing.md | 106 ------------ guidebook/basic/basic_introduction.md | 18 -- guidebook/basic/basic_item_processing.md | 143 --------------- guidebook/basic/basic_minerals.md | 113 ------------ guidebook/basic/basic_more_device.md | 60 ------- guidebook/basic/basic_more_processing.md | 41 ----- guidebook/basic/basic_vanilla_improve.md | 34 ---- guidebook/basic_gameplay_index.md | 12 -- guidebook/item-block-machines.md | 2 +- .../items-blocks-machines/item/cruse_gold.md | 42 +++++ .../items-blocks-machines/item/ember_metal.md | 38 ++++ .../items-blocks-machines/item/frost_metal.md | 33 ++++ .../item/frost_metal_tools.md | 2 +- guidebook/items-blocks-machines/item/gems.md | 45 +++++ .../items-blocks-machines/item/royal_steel.md | 37 ++++ .../item/royal_steel_tools.md | 4 +- .../item/sponge_gemmule.md | 33 ++++ .../item/transcendence_tools.md | 2 +- .../item/transcendium.md | 38 ++++ guidebook/power_system_index.md | 11 -- guidebook/process/game_process_2.md | 69 -------- guidebook/process/game_process_3.md | 51 ------ guidebook/process_index.md | 11 -- .../smithing_advanced_tools.md | 85 --------- .../smithing_corrupted_beacon.md | 112 ------------ .../smithing_system/smithing_introduction.md | 12 -- .../smithing_jewelcrafting_table.md | 79 --------- .../smithing_tier_1_materials.md | 91 ---------- .../smithing_tier_2_materials.md | 163 ------------------ guidebook/smithing_system_index.md | 11 -- img.png | Bin 124572 -> 0 bytes .../guide/recipe/LytSuperHeatingRecipe.java | 6 +- .../guide/recipe/LytTimeWarpRecipe.java | 3 +- .../guideme/guide/recipe/LytUnpackRecipe.java | 2 +- .../guideme/guide/slot/LytBlockSlot.java | 1 + .../guideme/util/BlockStateUtil.java | 12 ++ 38 files changed, 291 insertions(+), 1273 deletions(-) delete mode 100644 guidebook/advanced_features/advanced_tool_properties.md delete mode 100644 guidebook/advanced_features_index.md delete mode 100644 guidebook/basic/basic_block_processing.md delete mode 100644 guidebook/basic/basic_introduction.md delete mode 100644 guidebook/basic/basic_item_processing.md delete mode 100644 guidebook/basic/basic_minerals.md delete mode 100644 guidebook/basic/basic_more_device.md delete mode 100644 guidebook/basic/basic_more_processing.md delete mode 100644 guidebook/basic/basic_vanilla_improve.md delete mode 100644 guidebook/basic_gameplay_index.md create mode 100644 guidebook/items-blocks-machines/item/cruse_gold.md create mode 100644 guidebook/items-blocks-machines/item/ember_metal.md create mode 100644 guidebook/items-blocks-machines/item/frost_metal.md create mode 100644 guidebook/items-blocks-machines/item/gems.md create mode 100644 guidebook/items-blocks-machines/item/royal_steel.md create mode 100644 guidebook/items-blocks-machines/item/sponge_gemmule.md create mode 100644 guidebook/items-blocks-machines/item/transcendium.md delete mode 100644 guidebook/power_system_index.md delete mode 100644 guidebook/process/game_process_2.md delete mode 100644 guidebook/process/game_process_3.md delete mode 100644 guidebook/process_index.md delete mode 100644 guidebook/smithing_system/smithing_advanced_tools.md delete mode 100644 guidebook/smithing_system/smithing_corrupted_beacon.md delete mode 100644 guidebook/smithing_system/smithing_introduction.md delete mode 100644 guidebook/smithing_system/smithing_jewelcrafting_table.md delete mode 100644 guidebook/smithing_system/smithing_tier_1_materials.md delete mode 100644 guidebook/smithing_system/smithing_tier_2_materials.md delete mode 100644 guidebook/smithing_system_index.md delete mode 100644 img.png diff --git a/guidebook/advanced_features/advanced_tool_properties.md b/guidebook/advanced_features/advanced_tool_properties.md deleted file mode 100644 index 31c9325..0000000 --- a/guidebook/advanced_features/advanced_tool_properties.md +++ /dev/null @@ -1,30 +0,0 @@ ---- -navigation: - title: "特殊工具属性" - icon: "anvilcraft:frost_metal_pickaxe" - position: 4001 - parent: anvilcraft_guideme:advanced_features_index.md ---- - -# 特殊工具属性 - -本页面展示了目前所有可用的特殊工具属性,以及它们的效果。 - - -## 无情 - -默认在[浮霜金属系列工具](../smithing_tier_2_materials.md#frost_metal_tools)上拥有。 -拥有此属性的工具除了*耐久*、*经验修补*、*激流*、*忠诚*之外的附魔将会全部失效,但是每级魔咒将会提供1点攻击伤害和1点挖掘速度。 - - -## 重铸 - -默认在[余烬金属系列工具](../smithing_tier_2_materials.md#ember_metal_tools)和[多相物质系列工具](../smithing_tier_2_materials.md#multiphase_matter_tools)上拥有。 -拥有此属性的工具在火中将会每gt恢复2点耐久,在灵魂火中将会每gt恢复5点耐久,在熔岩或熔岩炼药锅中将会每gt恢复10点耐久。 - - -## 多相 - -默认在[多相物质系列工具](../smithing_tier_2_materials.md#multiphase_matter_tools)上拥有。 -拥有此属性的工具将会拥有两个“相位”。每个相位会存储它们自己的名称和附魔,不会冲突,且可以通过按下 [] 切换(你的“切换相位”快捷键)。 - diff --git a/guidebook/advanced_features_index.md b/guidebook/advanced_features_index.md deleted file mode 100644 index 027b49d..0000000 --- a/guidebook/advanced_features_index.md +++ /dev/null @@ -1,12 +0,0 @@ ---- -navigation: - title: "进阶特性" - icon: "anvilcraft:ember_anvil" - position: 4 ---- - -# 进阶特性 - -更复杂,也更强大。 - - \ No newline at end of file diff --git a/guidebook/basic/basic_block_processing.md b/guidebook/basic/basic_block_processing.md deleted file mode 100644 index 701e909..0000000 --- a/guidebook/basic/basic_block_processing.md +++ /dev/null @@ -1,106 +0,0 @@ ---- -navigation: - title: "基本方块处理" - icon: "minecraft:stone" - position: 1001 - parent: anvilcraft_guideme:basic_gameplay_index.md ---- - -# 基本方块处理 - -让*铁砧*落在需要被加工的方块上就可以加工该方块。 -单个方块、多个方块、方块和炼药锅、方块和切石机都会触发不同的效果,本条目的后续页面将会依次介绍。 -在此之前,了解磁铁对铁砧加工的帮助会让你更方便地上手。 - -## 使用磁铁升降铁砧 - - - - - - -磁铁被红石信号激活而消磁,铁砧落下可以执行操作。 - -## 单方块处理:粉碎 - - - - - - -右侧列表给出了更多可以发生此种转化的例子,有些可连续发生转化。 - -*圆石*→*沙砾*→*沙子* -*磨制花岗岩*→*花岗岩*→*红沙* -*磨制安山岩*→*安山岩*→*火山灰* -*磨制闪长岩*→*闪长岩*→*石英砂* -*有裂纹变种的方块*→*对应的裂纹变种* -*下界岩*→*下界尘* -*末地石*→*末地尘* -*灵魂土*→*灵魂沙* -*深板岩*→*深板岩碎* -*黑石*→*黑沙* - -## 双方块处理:压合 - - - - - - -右侧列表给出了更多可以发生此种转化的例子。 - -*苔藓块*+*泥土*→*草方块* -*任意树叶*+*泥土*→*灰化土* -*任意蘑菇块*+*泥土*→*菌丝体* -*下界疣块*+*下界岩*→*绯红菌岩* -*诡异疣块*+*下界岩*→*诡异菌岩* -*石头*+*石头*→*深板岩* -*冰*+*冰*→*浮冰* -*浮冰*+*浮冰*→*蓝冰* -*玄武岩*+*玄武岩*→*黑石* - -## 双方块处理:涂抹 - - - - - - -与压合不同的是上方的方块不会消耗。右侧列表给出了更多可以发生此种转化的例子。 - -*苔藓块*+*圆石*→*苔石* -*苔藓块*+*石砖*→*苔石砖* -*蜜脾块*+*任意铜制方块*→*对应的涂蜡铜制方块* - -## 方块+炼药锅:压榨 - - - - - - -使炼药锅中出现对应的单层液体。 -右侧列表给出了更多可以发生此种转化的例子。 - -*湿海绵*→*海绵*+*水* -*苔藓块*→*覆地苔藓*+*水* -*岩浆块*→*下界岩*+*熔岩* -*雪块*→*冰*+*细雪* -*满蜂巢*→*空蜂巢*+*蜂蜜*(特殊地,当下方是三层*蜂蜜*时,继续砸*满蜂巢*会将所有*蜂蜜*压成一个*蜂蜜块*。上述*蜂巢*皆可换成*蜂箱*) - -## 方块+切石机:破坏 - - - - - - - -使方块变为掉落物。 - -下面详细说明。 -使用普通*铁砧*执行时,方块破坏遵循TNT破坏的掉落物表。 -即没有*时运*或*精准采集*效果。使用*皇家铁砧*执行则附带时运效果,*余烬铁砧*则为精准采集效果。 -如果方块无法被普通TNT爆炸破坏如*黑曜石*,仍然可以破坏,但是铁砧将固定损坏一个耐久等级。 -为了防止方块破坏后铁砧掉在切石机上变为掉落物,你需要控制电路的时序。 \ No newline at end of file diff --git a/guidebook/basic/basic_introduction.md b/guidebook/basic/basic_introduction.md deleted file mode 100644 index 8aa5d3b..0000000 --- a/guidebook/basic/basic_introduction.md +++ /dev/null @@ -1,18 +0,0 @@ ---- -navigation: - title: "基础介绍" - icon: "minecraft:anvil" - position: 1000 - parent: anvilcraft_guideme:basic_gameplay_index.md ---- - -# 基础介绍 - -铁砧工艺是一个以铁砧下落砸到方块、物品或生物触发效果的模组。 -铁砧下方放置不同方块会触发不同效果,你可以用这种方式自动化生产或再生一些物品。 -为了方便将铁砧上抬,本模组增加了*磁铁块*,你可以使用原版红石机械或手动操作代替,但较为繁琐。 - -铁砧的下落也可用于发电,甚至为其他模组的电器供能,本模组以此为基础增加了电力系统和对应的机器。 -铁砧在附魔和锻造方面有着很大提升空间,本模组以此为基础增加了提高附魔上限的锻造玩法。 -这两个部分将在专门的章节介绍。 - diff --git a/guidebook/basic/basic_item_processing.md b/guidebook/basic/basic_item_processing.md deleted file mode 100644 index ce01af1..0000000 --- a/guidebook/basic/basic_item_processing.md +++ /dev/null @@ -1,143 +0,0 @@ ---- -navigation: - title: "基本物品处理" - icon: "minecraft:iron_ingot" - position: 1002 - parent: anvilcraft_guideme:basic_gameplay_index.md -item_ids: - - anvilcraft:stamping_platform ---- - -# 基本物品处理 - -让*铁砧*落在特定方块上就可以加工该方块顶部或内部的物品,不同的特定方块有不同的处理,本条目的后续页面依次介绍。本模组增加了一种方块可以让直接被砸的物品不因碰撞箱挤压而乱飞:*冲压平台*。 - -铁压力板可以替换成任意模组的铁板。 - - - -## 物品冲压 - - - - - - - 重质测重压力板 - - - 铁锭 - - - - -下方是冲压平台时执行物品冲压操作,原料和产物都在平台中,具体描述见右侧。 - -可以将物品砸成对应的薄片,例如铁锭→铁压力板;金锭→金压力板;雪球→雪片;樱花树叶→粉色花瓣。 -还可以分离一些物品的不同组分,例如甘蔗→纸+糖;小麦→面粉+小麦种子;原木→木质纤维+树脂。 -还可以回收一些装备,锁链、金质、铁质和钻石工具武器盔甲可以分解出原料,远远多于熔炼得到的。 - -## 物品压缩 - - - - - - 铁块 - - - 铁锭 - - - - -下方是炼药锅时执行物品压缩操作,原料和产物都在锅中,具体描述见右侧。 - -如果物品有2x2或3x3的合成配方则会被执行,例如9铁粒→铁锭;9铁锭→铁块;4线→羊毛。如果一个物品既可以2x2合成又可以3x3合成,则执行3x3合成。 -除了原版的配方外,增加了3骨头→1骨块的配方也可以在此合成。 - -## 物品分解 - - - - - - 铁块 - - - 铁锭 - - - - -下方是铁活版门时执行物品分解操作,原料置于铁活版门上,产物出现在铁活版门下,具体描述见右侧。 - -如果物品有1→n的合成配方则会被执行,例如1铁锭→9铁粒。 -额外地,原版可以通过打破方块来分解的也可执行,数量按最大来:例如西瓜→9西瓜片;雪块→4雪球;荧石→4荧石粉,黏土→4黏土球。 -一些原版无法分解的建筑方块也可以通过此方法分解:例如石英块→4石英;紫水晶块→4紫水晶碎片;滴水石块→4滴水石锥;蜜脾块→4蜜脾;海晶石→4海晶碎片;海晶石砖→9海晶碎片。 - -## 物品过筛 - - - - - - - - - 沙砾 - - - 沙砾 燧石 铁粒 - - - - -下方是脚手架时执行物品过筛操作,原料置于脚手架上,产物出现在脚手架下,具体描述见右侧。 - -过筛额外产出约一半原料,可循环利用。转化表如下(存在概率): -砂砾→燧石+铁粒 -沙子→黏土+金粒 -红沙→荧石粉+铜粒 -火山灰→青金石+锌粒 -石英砂→石英+锡粒 -深板岩碎→石灰粉+铅粒 -下界尘→红石粉+钨粒 -黑沙→火药+银粒 -末地尘→紫颂花+钛粒 -灵魂沙→下界疣 -树叶→对应的树苗 - -## 物品膨发 - - - - - 3层水 - - - 2层水 - - - - -下方是装水炼药锅时执行物品膨发操作,原料和产物都在锅中,消耗一层水,转化表见右侧。 - -泥土→黏土 -绯红菌→下界疣块 -诡异菌→诡异疣块 -蜘蛛眼→发酵蜘蛛眼 -珊瑚→对应珊瑚块。 - -## 烹饪 - - - - - - -下方是炼药锅和营火时执行烹饪操作,原料和产物都在锅中,有的配方需要水且消耗一层水,具体描述见右侧。 - -自动兼容所有烟熏炉配方和营火配方,不需要水。 -有水时,可以发生如下转化:树脂→粘液球。 - diff --git a/guidebook/basic/basic_minerals.md b/guidebook/basic/basic_minerals.md deleted file mode 100644 index faed604..0000000 --- a/guidebook/basic/basic_minerals.md +++ /dev/null @@ -1,113 +0,0 @@ ---- -navigation: - title: "基本矿石" - icon: "anvilcraft:earth_core_shard_ore" - position: 1006 - parent: anvilcraft_guideme:basic_gameplay_index.md -item_ids: - - anvilcraft:void_matter_block ---- - -# 基本矿石 -#### 不同于大多数mod,正常情况下本模组的矿石不会自然生成,只能通过矿物涌泉得到。 - -## 物品过筛 - -### 为了在前期获得本模组的金属,你需要使用类似于“无中生有”的方式—— **物品过筛**。 - -##### **铅粒**、**锡粒**、**锌粒**和**银粒**都可通过过筛**火山灰**概率获得。 - - - - - - - - - -##### **钨粒** 通过筛选 **下界尘** 概率获得。 - - - -##### **钛粒** 通过筛选**末地尘** 概率获得。 - - ---- - -## 矿物涌泉 -在获得一定量的金属后,你可以通过 **时移** 将金属块转化为粗矿, -并用粗矿块配合 **矿脉涌泉** 再生矿物。 -这要求你现阶段有能力制造 **腐化信标** 和 **冲击桩** - -### 矿物涌泉产矿 - - - - - - -*这种结构下的 **矿物涌泉** 可以生成矿石* - -**矿物涌泉** 每秒检测四个面相邻方块,如果它们都是某一种粗矿块,则将 **深板岩** 转化为对应的深层矿。 -在主世界生成时,有1%概率生成 **地核碎片矿石**,有1%概率生成 **虚空石** 。 -在下界生成时,有20%概率生成 **地核碎片矿石** 。 -在末地生成时,有20%概率生成 **虚空石** 。 - -注意:宝石不能以这种方式再生,仅接受粗矿块。 -注意:矿物涌泉仅在y=-54及以下位置工作 - -**地核碎片矿石** 只能通过 **矿物涌泉产矿** 伴生 -受到 **时运** 与 **精准采集** 影响 -需要钻石镐及以上等级镐挖掘 -挖掘获得 **地核碎片** - - - -**地核碎片** 及其块状物、矿石防火,不受 **熔岩** 和 **火焰** 损害 -可参与[余烬金属锭]的制作 - - - -**虚空石** 只能通过 **矿物涌泉产矿** 伴生 -受到 **时运** 与 **精准采集** 影响 -需要钻石镐及以上等级镐挖掘 -挖掘获得 **虚空物质** -**虚空物质** 及其块状物、矿石防虚空,在 **虚空** 中会上升 - - - - - - - - -**虚空物质块** 防虚空 -可用于制作[虚空能收集器] -自身具有 **虚空衰变** 的特性 - - -## 虚空衰变 - -*虚空物质块*周围6个面有至少5个面接触到*虚空物质块*时可以发生*虚空衰变*:接收到*随机刻*时,自身随机转化为以下方块: -石头、深板岩、安山岩、花岗岩、闪长岩、下界岩、黑石、末地石、冰、粗铁块、氧化的铜块、铁矿石、深层铁矿石、铜矿石、深层铜矿石、金矿石、深层金矿石、虚空石、末地尘、[诅咒金块](../smithing_system/smithing_tier_1_materials.md#cursed_gold_block)、深层锡矿石、深层锌矿石、深层铅矿石、深层铀矿石 - -人工挖掘矿物并替换深板岩低效且劳累 -使用*激光采矿系统*可以自动采集。 - -## 激光采矿系统 - - - - - - -这种结构可以自动提取粗矿并存放至上方容器内,更多结构可以参考*5.5激光采矿机* - -*棱镜*和*矿石*的高度差不能超过128 -提取到的物品会从*棱镜*上方弹出,或存入*棱镜*上方相邻的*容器* -提取效率=*激光等级*/4(向下取整),*提取效率*与*提取时间*的关系如下: -效率=1:24s/次 -效率=2:6s/次 -效率=3:2s/次 -效率=4:1s/次 - diff --git a/guidebook/basic/basic_more_device.md b/guidebook/basic/basic_more_device.md deleted file mode 100644 index 3c32262..0000000 --- a/guidebook/basic/basic_more_device.md +++ /dev/null @@ -1,60 +0,0 @@ ---- -navigation: - title: "更多实用设备" - icon: "anvilcraft:block_placer" - position: 1005 - parent: anvilcraft_guideme:basic_gameplay_index.md -item_ids: - - anvilcraft:magnet - - anvilcraft:crab_trap - - anvilcraft:block_placer - - anvilcraft:block_devourer - - anvilcraft:chute ---- - -# 更多实用设备 - -本页面的设备可以帮助你在初期实现自动化。 - -**手持磁铁** 右键使用将附近物品吸引到脚下。 - - - -**蟹笼** 放置在水面,可以自动产出鱼获,四面紧邻的方块至少三个为水源或含水方块时正常工作。右键或铁砧砸之使其吐出产物。不同生物群系产出略有不同,但都会产出*蟹钳*。 - - - - - -主手或副手手持时增加3格触及距离,从*蟹笼*产出。 - -*方块放置器*有红石信号或被铁砧砸时放置方块,方块物品从其背后的容器方块、实体库存、掉落物中取。红石信号使其放置在面前,铁砧根据下落高度n使其间隔n格放置。可以被活塞推拉。 - - - -**方块吞噬器** 有红石信号或被铁砧砸时破坏前方方块,红石激活范围3x3,铁砧激活根据高度1和2分别为5x5和7x7,掉落物会尝试进入吞噬器后方的方块、实体内,无法进入则原地掉落。世界基质方块如石头、下界岩等只有极少概率掉落。 - - - -**溜槽** 是一种特殊的漏斗,有9格容量,一次性输送一组物品,可以将物品丢出至世界上。打开gui可以查看库存、改变输出方向和设置过滤。 - - - -## 溜槽自动连接 - - - - - - - - - - - - - - - -溜槽成链时,被指向的溜槽变为简化溜槽,不再从世界吸取物品,不能过滤。 - diff --git a/guidebook/basic/basic_more_processing.md b/guidebook/basic/basic_more_processing.md deleted file mode 100644 index ee48afc..0000000 --- a/guidebook/basic/basic_more_processing.md +++ /dev/null @@ -1,41 +0,0 @@ ---- -navigation: - title: "更多铁砧处理" - icon: "minecraft:spawner" - position: 1003 - parent: anvilcraft_guideme:basic_gameplay_index.md ---- - -# 更多铁砧处理 - -* 让*铁砧*落在生物脚下、刷怪笼上、红石块上会引起相应变化,本条目的后续页面依次介绍。 - -获得更多生物战利品: -生物被铁砧砸到而伤害时,会按照原战利品表掉落物品,生物必须一次性受到足够伤害:一次40%血量→1倍掉落物;一次60%血量→2倍掉落物;一次80%血量→3倍掉落物。 -这种方式只能获得生物的一般掉落物,不会产出需要玩家手动击杀而产生的掉落物如烈焰棒。 -有一些生物可以自行或借助外力恢复血量,你可以借此制造不杀死生物的掉落物农场。 - -## 刷怪笼:强制刷怪 - - - - - - - -被砸中的刷怪笼会尝试刷怪,详细说明见右侧。 - -铁砧下落高度越高刷怪概率越大。这种刷怪方式不需要周围有玩家,但需要满足刷怪笼刷怪的光照条件、周围怪物数量也会影响刷怪,将附近怪物快速运走或击杀能大大提高效率。 - -## 红石块:红石EMP - - - - - - -被砸中的红石块会产生红石EMP,详细说明见右侧。 - -铁砧砸到红石块,会让与红石块同层的距离为r内的红石火把熄灭1gt,紧贴红石块的铁活版门阻止这个方向的EMP。 -r的计算方法:距离与掉落高度成正比,1格掉落高度传播6格,极限距离24格。 - diff --git a/guidebook/basic/basic_vanilla_improve.md b/guidebook/basic/basic_vanilla_improve.md deleted file mode 100644 index ec35d4a..0000000 --- a/guidebook/basic/basic_vanilla_improve.md +++ /dev/null @@ -1,34 +0,0 @@ ---- -navigation: - title: "原版改进" - icon: "minecraft:dispenser" - position: 1004 - parent: anvilcraft_guideme:basic_gameplay_index.md ---- - -# 原版改进 - -为了让铁砧处理过程更丝滑,本模组补全了一些原版本应该就有的功能。 - -## 炼药锅补全 - - - - - - - -补全原版缺失的炼药锅层数。 - -## 发射器操作炼药锅 - - - - - - -发射器使用水瓶、空瓶、熔岩桶、细雪桶、水桶、空桶交互炼药锅。 - -发射器交互生物: -发射器可以用铁锭修铁傀儡,发射器可以用桶交互牛接奶。 - diff --git a/guidebook/basic_gameplay_index.md b/guidebook/basic_gameplay_index.md deleted file mode 100644 index 32ee88f..0000000 --- a/guidebook/basic_gameplay_index.md +++ /dev/null @@ -1,12 +0,0 @@ ---- -navigation: - title: "基础玩法" - icon: "minecraft:anvil" ---- - -# 基础玩法 - -铁砧工艺的基础玩法,主要包含了铁砧下落引起的各种变化,可以转化方块、加工物品、影响生物等。 -本模组添加了一些方块来方便早期的自动化,包括方块放置器、溜槽等,在*更多实用设备*条目可以查看。 - - \ No newline at end of file diff --git a/guidebook/item-block-machines.md b/guidebook/item-block-machines.md index 9c127e8..a1b7c21 100644 --- a/guidebook/item-block-machines.md +++ b/guidebook/item-block-machines.md @@ -1,7 +1,7 @@ --- navigation: title: "铁砧工艺本体-物品/方块/机器" - icon: "anvilcraft:magnet" + icon: "anvilcraft:guide_book" --- # 物品、方块和机器 diff --git a/guidebook/items-blocks-machines/item/cruse_gold.md b/guidebook/items-blocks-machines/item/cruse_gold.md new file mode 100644 index 0000000..cd5082e --- /dev/null +++ b/guidebook/items-blocks-machines/item/cruse_gold.md @@ -0,0 +1,42 @@ +--- +navigation: + title: "诅咒金" + icon: "anvilcraft:cursed_gold_ingot" + position: 11 + parent: anvilcraft_guideme:item-block-machines.md +categories: + - misc ingredients blocks +item_ids: + - anvilcraft:cursed_gold_ingot + - anvilcraft:cursed_gold_block + - anvilcraft:cursed_gold_nugget +--- + +# 诅咒金 + + + + + + + +## 诅咒金 + +> 这也是被知识诅咒的 + +- 玩家背包装有诅咒系列物品时(无论是粒还是锭还是块),按数量获得负面效果(未持有相关物品后10s消失) + - 1到8个,虚弱 + - 9到64个,虚弱+缓慢 + - 65个以及以上,虚弱+缓慢+饥饿 + +## 获取 + +在上使用金锭(块)[驱除诅咒附魔或附魔惩罚]() + +## 用途 + +1. 完全使用作为信标底座并用 + 激活信标时,信标有概率转化为 详情请看[腐化信标转换]() +2. [猪灵与诅咒金的互动]() [TODO](https://github.com/Anvil-Dev/AnvilCraft/issues/1344) + +**更多请安装JEI查看合成表** \ No newline at end of file diff --git a/guidebook/items-blocks-machines/item/ember_metal.md b/guidebook/items-blocks-machines/item/ember_metal.md new file mode 100644 index 0000000..dcb024b --- /dev/null +++ b/guidebook/items-blocks-machines/item/ember_metal.md @@ -0,0 +1,38 @@ +--- +navigation: + title: "余烬金属" + icon: "anvilcraft:ember_metal_ingot" + position: 11 + parent: anvilcraft_guideme:item-block-machines.md +categories: + - misc ingredients blocks +item_ids: + - anvilcraft:ember_metal_ingot + - anvilcraft:ember_metal_block + - anvilcraft:ember_metal_nugget +--- + +# 余烬金属 + + + + + + + +## 余烬金属 + +用于合成工具和机器 + +### 合成 + + + + + + + + +## 相关 + +[余烬金属工具](ember_metal_tools.md) \ No newline at end of file diff --git a/guidebook/items-blocks-machines/item/frost_metal.md b/guidebook/items-blocks-machines/item/frost_metal.md new file mode 100644 index 0000000..9f08a02 --- /dev/null +++ b/guidebook/items-blocks-machines/item/frost_metal.md @@ -0,0 +1,33 @@ +--- +navigation: + title: "浮霜金属" + icon: "anvilcraft:frost_metal_ingot" + position: 11 + parent: anvilcraft_guideme:item-block-machines.md +categories: + - misc ingredients blocks +item_ids: + - anvilcraft:frost_metal_ingot + - anvilcraft:frost_metal_block + - anvilcraft:frost_metal_nugget +--- + +# 浮霜金属 + + + + + + + +## 浮霜金属 + +用于合成工具和机器 + +### 合成 + + + +## 相关 + +[浮霜金属工具](frost_metal_tools.md) \ No newline at end of file diff --git a/guidebook/items-blocks-machines/item/frost_metal_tools.md b/guidebook/items-blocks-machines/item/frost_metal_tools.md index c4d7125..e68fd1a 100644 --- a/guidebook/items-blocks-machines/item/frost_metal_tools.md +++ b/guidebook/items-blocks-machines/item/frost_metal_tools.md @@ -38,7 +38,7 @@ item_ids: ## 合成方式: -需要[浮霜金属锻造模板](upgrade_smithing_template.md#浮霜)和浮霜金属锭(块)以及被锻造的工具 +需要[浮霜金属锻造模板](upgrade_smithing_template.md#浮霜)和[浮霜金属锭(块)](frost_metal.md)以及被锻造的工具 diff --git a/guidebook/items-blocks-machines/item/gems.md b/guidebook/items-blocks-machines/item/gems.md new file mode 100644 index 0000000..39e3891 --- /dev/null +++ b/guidebook/items-blocks-machines/item/gems.md @@ -0,0 +1,45 @@ +--- +navigation: + title: "宝石(块)" + icon: "anvilcraft:topaz" + position: 11 + parent: anvilcraft_guideme:item-block-machines.md +categories: + - misc ingredients blocks +item_ids: + - anvilcraft:topaz + - anvilcraft:sapphire + - anvilcraft:ruby + - anvilcraft:topaz_block + - anvilcraft:sapphire_block + - anvilcraft:ruby_block +--- + +# 各类宝石(块) + + + + + + + + + + +## 获取 + +1. [冲压晶洞](geode.md)有概率获取3种宝石 +2. 将宝石放在装有熔融宝石的炼药锅中进行[时移](),消耗1000mB熔融宝石产出对应宝石块 + + + + + + + + +## 熔融宝石 + +将任意宝石块放入炼药锅进行[高温熔炼](),即可获取装有熔融宝石的炼药锅 + + \ No newline at end of file diff --git a/guidebook/items-blocks-machines/item/royal_steel.md b/guidebook/items-blocks-machines/item/royal_steel.md new file mode 100644 index 0000000..e627f01 --- /dev/null +++ b/guidebook/items-blocks-machines/item/royal_steel.md @@ -0,0 +1,37 @@ +--- +navigation: + title: "皇家钢" + icon: "anvilcraft:royal_steel_ingot" + position: 11 + parent: anvilcraft_guideme:item-block-machines.md +categories: + - misc ingredients blocks +item_ids: + - anvilcraft:royal_steel_ingot + - anvilcraft:royal_steel_block + - anvilcraft:royal_steel_nugget +--- + +# 皇家钢 + + + + + + + +## 皇家钢 + + 是黄瓜钢大人 + +用于合成工具和机器 + + + + + + + +## 相关 + +[皇家钢工具](royal_steel_tools.md) \ No newline at end of file diff --git a/guidebook/items-blocks-machines/item/royal_steel_tools.md b/guidebook/items-blocks-machines/item/royal_steel_tools.md index 60b6c5d..6c56857 100644 --- a/guidebook/items-blocks-machines/item/royal_steel_tools.md +++ b/guidebook/items-blocks-machines/item/royal_steel_tools.md @@ -28,13 +28,13 @@ item_ids: ## 皇家钢工具 - ~~**我的天哪!是黄瓜钢大人!**~~ + ~~**我的天哪!是黄瓜钢大人!**~~ - 相比[紫水晶工具](../item/amethyst_tools.md),皇家钢工具本身不自带附魔,继承被锻造的工具的附魔 - **钻石品质** ## 合成方式: -需要[皇家钢锻造模板](upgrade_smithing_template.md#皇家钢)和皇家钢锭(块)以及被锻造的工具 +需要[皇家钢锻造模板](upgrade_smithing_template.md#皇家钢)和[皇家钢锭(块)](royal_steel.md)以及被锻造的工具 diff --git a/guidebook/items-blocks-machines/item/sponge_gemmule.md b/guidebook/items-blocks-machines/item/sponge_gemmule.md new file mode 100644 index 0000000..0c90600 --- /dev/null +++ b/guidebook/items-blocks-machines/item/sponge_gemmule.md @@ -0,0 +1,33 @@ +--- +navigation: + title: "海绵芽球" + icon: "anvilcraft:sponge_gemmule" + position: 11 + parent: anvilcraft_guideme:item-block-machines.md +categories: + - misc ingredients blocks +item_ids: + - anvilcraft:sponge_gemmule +--- + +# 海绵芽球 + + + +## 海绵芽球 + +### 合成 + + + +--- + +### 海绵增殖 + +> 由海绵芽球的合成可引出海绵增殖 + +1. 消耗一层炼药锅的水和1个海绵芽球可合成1个湿海绵 +2. 1个湿海绵可合成出4个海绵芽球 + + + \ No newline at end of file diff --git a/guidebook/items-blocks-machines/item/transcendence_tools.md b/guidebook/items-blocks-machines/item/transcendence_tools.md index 69c0ca6..ce969b6 100644 --- a/guidebook/items-blocks-machines/item/transcendence_tools.md +++ b/guidebook/items-blocks-machines/item/transcendence_tools.md @@ -24,7 +24,7 @@ categories: ## 合成 -需要[超限金属锻造模板](upgrade_smithing_template.md#超限)和超限金属锭(块)以及被锻造的工具 +需要[超限金属锻造模板](upgrade_smithing_template.md#超限)和[超限金属锭(块)](transcendium.md)以及被锻造的工具 diff --git a/guidebook/items-blocks-machines/item/transcendium.md b/guidebook/items-blocks-machines/item/transcendium.md new file mode 100644 index 0000000..ae894a6 --- /dev/null +++ b/guidebook/items-blocks-machines/item/transcendium.md @@ -0,0 +1,38 @@ +--- +navigation: + title: "超限合金" + icon: "anvilcraft:transcendium_ingot" + position: 11 + parent: anvilcraft_guideme:item-block-machines.md +categories: + - misc ingredients blocks +item_ids: + - anvilcraft:transcendium_ingot + - anvilcraft:transcendium_block + - anvilcraft:transcendium_nugget +--- + +# 超限合金 + + + + + + + +## 超限合金 + +用于合成工具和机器 + +### 合成 + +> 将充能中子锭用铁砧压入超温余烬金属块,根据充能中子锭上的附魔数量决定输出超限合金锭数量 + +- 0个附魔:方块消失,中子锭消失,得到4个超限合金锭 +- 1到10个附魔:方块消失,中子锭有 (100-(10x附魔数))/100 概率消失,(10x附魔数)/100 概率变为普通中子锭输出,得到4个超限合金锭+3*附魔数个超限合金粒 +- 11到14个附魔:方块消失,中子锭 100% 变为普通中子锭输出,得到得到 4个超限合金锭 和 3*附魔数个超限合金粒 +- 15个附魔:方块转化为超限合金块,中子锭100%变为普通中子锭输出 +- 16个以及以上附魔:方块转化为超限合金块,中子锭100%变为普通中子锭输出,额外产生1*附魔数个超限合金粒 + +## 相关 +[超限合金工具](transcendence_tools.md) \ No newline at end of file diff --git a/guidebook/power_system_index.md b/guidebook/power_system_index.md deleted file mode 100644 index fb9c3a7..0000000 --- a/guidebook/power_system_index.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -navigation: - title: "电力系统" - icon: "anvilcraft:magnetoelectric_core" ---- - -# 电力系统 - -更强的自动化。 - - \ No newline at end of file diff --git a/guidebook/process/game_process_2.md b/guidebook/process/game_process_2.md deleted file mode 100644 index 7d2aafa..0000000 --- a/guidebook/process/game_process_2.md +++ /dev/null @@ -1,69 +0,0 @@ ---- -navigation: - title: "流程2-获得磁铁" - icon: "anvilcraft:magnet_ingot" - position: 2 - parent: anvilcraft_guideme:process_index.md -item_ids: - - anvilcraft:ferrite_core_magnet_block - - anvilcraft:hollow_magnet_block - - anvilcraft:magnet_block ---- - -# 流程2-获得磁铁 - -*磁铁块*帮助你简单地将铁砧抬起再砸下。有三种磁铁块,功能基本相同,有些可以互相转化。第一批磁铁块的获取方式:*铁块*被雷击转化为空心磁铁块,雷击的影响范围可以通过配置文件更改,默认是水平3x3格,高2格 - -## 雷击转化磁铁块 - - - - - - -默认的雷击转化磁铁块范围,雷击后,图中铁块都将转化为空心磁铁块。 - -## 人工引雷 - - - - -如果你等不到雷雨天,使用*黄玉*右键避雷针会消耗黄玉制造一道闪电。 -黄玉可以从*晶洞*获得。 -如果你此时没有足够多的晶洞,可以多挖掘一些水晶母岩或与*珠宝匠*村民交易。 -如果雷雨天已经到来,可以跳过这一页。 - -## 砸碎晶洞 - - - - - - - - -将晶洞置于*冲压平台*上,铁砧落下会砸碎晶洞,有概率获得黄玉。 - - - - - - - -雷击得到的*空心磁铁块*可以分解为8个*磁铁锭*。 -磁铁锭可以与铁锭合成*铁芯磁铁块*,铁芯磁铁块置于世界中逐渐转变为*磁铁块*。 -磁铁块可以拆解为9个磁铁锭,这是磁铁再生的一种方法。 - - - - - -**人工**将铁锭**逐个**丢入空心磁铁块中央的洞,铁锭有概率转化为磁铁锭。 -这是磁铁再生的另一个方法。其他磁铁块也可再合成。 - - - - - - - diff --git a/guidebook/process/game_process_3.md b/guidebook/process/game_process_3.md deleted file mode 100644 index 8ce8e92..0000000 --- a/guidebook/process/game_process_3.md +++ /dev/null @@ -1,51 +0,0 @@ ---- -navigation: - title: "流程3-开始铁砧加工" - icon: "minecraft:anvil" - position: 3 - parent: anvilcraft_guideme:process_index.md ---- - -# 流程3-开始铁砧加工 - -让*铁砧*落在需要被加工的方块上就可以加工该方块; -铁砧落在*冲压平台*、*炼药锅*、*铁活版门*、*脚手架*等方块上时,会加工其中或其上的物品。 -使用*磁铁块*帮助你完成半自动:磁铁块自动吸起下方五格以内的铁砧,磁铁块被红石激活失去磁性使铁砧下落。 -如果没有磁铁块,你也可以手动拆除铁砧再将其放置或者设计红石机器。 - -## 使用磁铁升降铁砧 - - - - - - -磁铁被红石信号激活而消磁,铁砧落下可以执行操作。 - - -### *铁砧*造价太高? -本模组为原版*开裂的铁砧*和*损坏的铁砧*增加了合成表。 -别担心,一格高的高度不会使铁砧继续受到损害。 - - - - - - - -## 方便的铁砧工作站 - - - - - - -再也不用抬头点拉杆或按钮了,敲击音符盒就会让铁砧落下一次。 -左图中,冲压平台可以换成别的方块,下方还可以增加营火等方块。 -详细处理类别见铁砧处理相关章节。 - -## 相关章节 - -- [基本方块处理](../basic/basic_block_processing.md) -- [基本物品处理](../basic/basic_item_processing.md) - diff --git a/guidebook/process_index.md b/guidebook/process_index.md deleted file mode 100644 index b2f2b01..0000000 --- a/guidebook/process_index.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -navigation: - title: "游戏流程" - icon: "minecraft:compass" ---- - -# 游戏流程 - -一般的生存流程指南,仅供参考。如是整合包则需要参考整合包本身的任务或教程。模组流程不是固定的,本篇介绍的仅是最常规的流程。 - - \ No newline at end of file diff --git a/guidebook/smithing_system/smithing_advanced_tools.md b/guidebook/smithing_system/smithing_advanced_tools.md deleted file mode 100644 index a3f242e..0000000 --- a/guidebook/smithing_system/smithing_advanced_tools.md +++ /dev/null @@ -1,85 +0,0 @@ ---- -navigation: - title: "高级工具" - icon: "anvilcraft:jewelcrafting_table" - position: 3005 - parent: anvilcraft_guideme:smithing_system_index.md -item_ids: - - anvilcraft:dragon_rod - - anvilcraft:royal_dragon_rod - - anvilcraft:ember_dragon_rod - - anvilcraft:heavy_halberd_core - - anvilcraft:resonator_core ---- - -# 高级工具 - -本页面展示了目前所有可用的*高级工具*。 - - - -*龙杖*本质上是为了将你“放下*方块吞噬器*→*铁砧锤*敲击→收回方块吞噬器”的流程简化至一个工具内。 - - - - - - - -三种龙杖的功能是相同的,只是耐久不同。 -同样可以通过锻造升级。 - - - -**TODO:** Unsupported Patchouli page type **patchouli:smithing** - -``` -{"type":"patchouli:smithing","recipe":"anvilcraft:smithing/royal_dragon_rod","recipe2":"anvilcraft:smithing/ember_dragon_rod"} -``` - -龙杖的操作十分简单。左键破坏一定范围内的方块,右键切换范围大小。有3x3、5x5、7x7、9x9四个范围,当手持龙杖准星指向方块时会显示范围框。3x3范围不消耗耐久,往后依次消耗1、2、4点耐久。当龙杖耐久消耗殆尽时不会完全损坏,而是失去所有功能,类似于 -*鞘翅*。 - -龙杖遵循方块吞噬器的规则,当挖掘世界基底方块(*石头*、*下界岩*、*末地石*)时,只有5%的概率掉落。但是它无法连锁顶部的可下落方块。 -龙杖在挖掘一次后会有一段冷却时间,默认为1秒。这段冷却时长只受*急迫*效果和*挖掘疲劳*效果影响,每级急迫会减少4tick,每级挖掘疲劳会增加1秒。 - - - -*重戟*融合了剑、斧、重锤和三叉戟的特性,是一个强力的武器。 - -*重戟核心*是合成重戟的核心材料。 - - - -**TODO:** Unsupported Patchouli page type **anvilcraft:multiple_to_one_smithing** - -``` -{"type":"anvilcraft:multiple_to_one_smithing","recipe":"anvilcraft:four_to_one_smithing/frost_metal_heavy_halberd","recipe2":"anvilcraft:four_to_one_smithing/ember_metal_heavy_halberd"} -``` - -重戟可以作为合成它所需的四件武器中的任意一件使用。它能兼容剑、重锤和三叉戟的所有附魔。它的攻击伤害值与斧相同,攻击速度与剑相同,还具有它们的挖掘特性。从高处落下可以触发重锤的猛击。长按右键也可以像三叉戟一样投掷,但是投掷伤害根据速度计算,与箭类似。当它拥有忠诚魔咒时,掷入虚空会回到玩家处。 - -重戟同样不会完全损坏,类似于鞘翅,它会失去所有增益、功能等效果,攻击伤害变为0,附魔大部分失效,浮霜带来的[无情](../advanced_features/advanced_tool_properties.md#merciless) -也会失效。 - - - -*共振器*融合了斧、镐、锹、锄的特性,是一个强力的工具。 - -*共振器核心*是合成共振器的核心材料。 - - - -**TODO:** Unsupported Patchouli page type **anvilcraft:multiple_to_one_smithing** - -``` -{"type":"anvilcraft:multiple_to_one_smithing","recipe":"anvilcraft:four_to_one_smithing/frost_metal_resonator","recipe2":"anvilcraft:four_to_one_smithing/ember_metal_resonator"} -``` - -共振器有五个模式:自动,和四种工具对应的模式。不同的模式有不同的模型。在自动模式下可以快速挖掘任意可挖掘方块,但是没有右键功能。在每种工具对应的模式下只能快速挖掘该工具允许的方块,但是拥有它们对应的右键功能,如斧模式可以去皮、脱蜡、除锈等。 - -手持共振器按住[]可以打开一个轮盘选择界面,包含共振器的五个模式,将鼠标拖到对应的位置就可以选中该模式并切换。 - -共振器同样不会完全损坏,类似于鞘翅,它会失去所有增益、功能等效果,攻击伤害变为0,附魔大部分失效,浮霜带来的[无情](../advanced_features/advanced_tool_properties.md#merciless) -也会失效。 - diff --git a/guidebook/smithing_system/smithing_corrupted_beacon.md b/guidebook/smithing_system/smithing_corrupted_beacon.md deleted file mode 100644 index 52e0beb..0000000 --- a/guidebook/smithing_system/smithing_corrupted_beacon.md +++ /dev/null @@ -1,112 +0,0 @@ ---- -navigation: - title: "腐化信标" - icon: "anvilcraft:corrupted_beacon" - position: 3003 - parent: anvilcraft_guideme:smithing_system_index.md ---- - -# 腐化信标 - -释放了被封印在信标之中的凋灵之力。会赋予光柱内的生物*凋零*效果,部分生物会转化为另一种生物,还可以配合铁砧加工。 - -生物转化: -*猪*→*疣猪兽* -*牛*→*劫掠兽* -*守卫者*→*远古守卫者* -*猪灵*→*猪灵蛮兵* -*村民*→30%*掠夺者*、60%*卫道士*、10%*唤魔者* -*悦灵*→*恼鬼* -*蝙蝠*→*幻翼* -*马*→10%*僵尸马*、90%*骷髅马* -*蠹虫*→*末影螨* - - -## 时移 - - - - - - - -想要实现时移操作,腐化信标必须是激活状态。这意味着如果你想使用磁铁块控制顶上的铁砧,你必须使用*空心磁铁块*。 - -**TODO:** Unsupported Patchouli page type **anvilcraft:time_warp** - -``` -{"type":"anvilcraft:time_warp","recipe":"anvilcraft:time_warp/coal_from_logs","recipe2":"anvilcraft:time_warp/coal"} -``` - -**TODO:** Unsupported Patchouli page type **anvilcraft:time_warp** - -``` -{"type":"anvilcraft:time_warp","recipe":"anvilcraft:time_warp/raw_copper","recipe2":"anvilcraft:time_warp/raw_iron"} -``` - -**TODO:** Unsupported Patchouli page type **anvilcraft:time_warp** - -``` -{"type":"anvilcraft:time_warp","recipe":"anvilcraft:time_warp/raw_gold","recipe2":"anvilcraft:time_warp/raw_silver"} -``` - -**TODO:** Unsupported Patchouli page type **anvilcraft:time_warp** - -``` -{"type":"anvilcraft:time_warp","recipe":"anvilcraft:time_warp/raw_tungsten","recipe2":"anvilcraft:time_warp/raw_titanium"} -``` - -**TODO:** Unsupported Patchouli page type **anvilcraft:time_warp** - -``` -{"type":"anvilcraft:time_warp","recipe":"anvilcraft:time_warp/raw_zinc","recipe2":"anvilcraft:time_warp/raw_tin"} -``` - -**TODO:** Unsupported Patchouli page type **anvilcraft:time_warp** - -``` -{"type":"anvilcraft:time_warp","recipe":"anvilcraft:heat_produce_time_warp/raw_uranium_from_uranium_block","recipe2":"anvilcraft:heat_produce_time_warp/raw_uranium_from_plutonium_block"} -``` - -**TODO:** Unsupported Patchouli page type **anvilcraft:time_warp** - -``` -{"type":"anvilcraft:time_warp","recipe":"anvilcraft:time_warp/raw_lead","recipe2":"anvilcraft:time_warp/ancient_debris"} -``` - -**TODO:** Unsupported Patchouli page type **anvilcraft:time_warp** - -``` -{"type":"anvilcraft:time_warp","recipe":"anvilcraft:time_warp/wither_skeleton_skull","recipe2":"anvilcraft:time_warp/wither_rose"} -``` - -**TODO:** Unsupported Patchouli page type **anvilcraft:time_warp** - -``` -{"type":"anvilcraft:time_warp","recipe":"anvilcraft:time_warp/tuff","recipe2":"anvilcraft:time_warp/calcite"} -``` - -**TODO:** Unsupported Patchouli page type **anvilcraft:time_warp** - -``` -{"type":"anvilcraft:time_warp","recipe":"anvilcraft:time_warp/dirt","recipe2":"anvilcraft:time_warp/amber"} -``` - -**TODO:** Unsupported Patchouli page type **anvilcraft:time_warp** - -``` -{"type":"anvilcraft:time_warp","recipe":"anvilcraft:time_warp/soul_soil","recipe2":"anvilcraft:time_warp/crying_obsidian"} -``` - -**TODO:** Unsupported Patchouli page type **anvilcraft:time_warp** - -``` -{"type":"anvilcraft:time_warp","recipe":"anvilcraft:time_warp/sea_heart_shell","recipe2":"anvilcraft:time_warp/budding_amethyst"} -``` - -**TODO:** Unsupported Patchouli page type **anvilcraft:time_warp** - -``` -{"type":"anvilcraft:time_warp","recipe":"anvilcraft:time_warp/end_stone"} -``` - diff --git a/guidebook/smithing_system/smithing_introduction.md b/guidebook/smithing_system/smithing_introduction.md deleted file mode 100644 index e4deaaf..0000000 --- a/guidebook/smithing_system/smithing_introduction.md +++ /dev/null @@ -1,12 +0,0 @@ ---- -navigation: - title: "锻造系统介绍" - icon: "anvilcraft:royal_anvil" - position: 3000 - parent: anvilcraft_guideme:smithing_system_index.md ---- - -# 锻造系统介绍 - -原版附魔有着诸多限制,通过使用更强的材料升级你的铁砧等锻造方块,逐步解除这些限制。这个过程的副产物还将引起一些奇妙的变化。 - diff --git a/guidebook/smithing_system/smithing_jewelcrafting_table.md b/guidebook/smithing_system/smithing_jewelcrafting_table.md deleted file mode 100644 index d3189e4..0000000 --- a/guidebook/smithing_system/smithing_jewelcrafting_table.md +++ /dev/null @@ -1,79 +0,0 @@ ---- -navigation: - title: "珠宝加工台和珠宝商" - icon: "anvilcraft:jewelcrafting_table" - position: 3001 - parent: anvilcraft_guideme:smithing_system_index.md -item_ids: - - anvilcraft:jewelcrafting_table ---- - -# 珠宝加工台和珠宝商 - -*珠宝加工台*既可以作为村民的工作方块,也可以供玩家进行一些合成。 - - - - - - -## minecraft:villager (TODO) - - - - - -将珠宝加工台作为工作方块的村民将成为*珠宝匠*,可以与之交易一些铁砧工艺相关物品,包括重要的锻造模板。 - -## 仿制 - -玩家可以使用珠宝加工台进行*仿制*。只有部分物品可以仿制,放入需要仿制的物品和对应的材料就能仿制出一个附带消失诅咒的仿制品。 - -**TODO:** Unsupported Patchouli page type **anvilcraft:jewel_crafting** - -``` -{"type":"anvilcraft:jewel_crafting","recipe":"anvilcraft:jewel_crafting/elytra","recipe2":"anvilcraft:jewel_crafting/ominous_bottle"} -``` - -**TODO:** Unsupported Patchouli page type **anvilcraft:jewel_crafting** - -``` -{"type":"anvilcraft:jewel_crafting","recipe":"anvilcraft:jewel_crafting/heavy_core","recipe2":"anvilcraft:jewel_crafting/enchanted_golden_apple"} -``` - -**TODO:** Unsupported Patchouli page type **anvilcraft:jewel_crafting** - -``` -{"type":"anvilcraft:jewel_crafting","recipe":"anvilcraft:jewel_crafting/trial_key","recipe2":"anvilcraft:jewel_crafting/ominous_trial_key"} -``` - -**TODO:** Unsupported Patchouli page type **anvilcraft:jewel_crafting** - -``` -{"type":"anvilcraft:jewel_crafting","recipe":"anvilcraft:jewel_crafting/totem_of_undying","text":"还有下一页!"} -``` - -**TODO:** Unsupported Patchouli page type **anvilcraft:jewel_crafting** - -``` -{"type":"anvilcraft:jewel_crafting","title":"旗帜图案","recipe":"anvilcraft:jewel_crafting/minecraft_flower_banner_pattern_from_minecraft_flower_banner_pattern_for_banner_patterns","text":"所有旗帜图案都可以通过这个配方来仿制。"} -``` - -**TODO:** Unsupported Patchouli page type **anvilcraft:jewel_crafting** - -``` -{"type":"anvilcraft:jewel_crafting","title":"音乐唱片","recipe":"anvilcraft:jewel_crafting/minecraft_music_disc_creator_from_minecraft_music_disc_creator_for_music_discs","text":"所有音乐唱片都可以通过这个配方来仿制。"} -``` - -**TODO:** Unsupported Patchouli page type **anvilcraft:jewel_crafting** - -``` -{"type":"anvilcraft:jewel_crafting","title":"纹样陶片","recipe":"anvilcraft:jewel_crafting/minecraft_blade_pottery_sherd_from_minecraft_blade_pottery_sherd_for_pottery_sherds","text":"所有纹样陶片都可以通过这个配方来仿制。"} -``` - -**TODO:** Unsupported Patchouli page type **anvilcraft:jewel_crafting** - -``` -{"type":"anvilcraft:jewel_crafting","title":"盔甲纹饰锻造模板","recipe":"anvilcraft:jewel_crafting/minecraft_silence_armor_trim_smithing_template_from_minecraft_silence_armor_trim_smithing_template_for_trim_templates","text":"所有盔甲纹饰锻造模板都可以通过这个配方来仿制。"} -``` - diff --git a/guidebook/smithing_system/smithing_tier_1_materials.md b/guidebook/smithing_system/smithing_tier_1_materials.md deleted file mode 100644 index 910c0f7..0000000 --- a/guidebook/smithing_system/smithing_tier_1_materials.md +++ /dev/null @@ -1,91 +0,0 @@ ---- -navigation: - title: "一阶材料" - icon: "anvilcraft:royal_steel_ingot" - position: 3002 - parent: anvilcraft_guideme:smithing_system_index.md -item_ids: - - anvilcraft:royal_steel_block - - anvilcraft:royal_steel_nugget - - anvilcraft:cursed_gold_block - - anvilcraft:cursed_gold_nugget ---- - -# 一阶材料 - -本页面展示了所有可用的*一阶材料*。 - - - - -*皇家钢*同时具有金属和宝石的性质,拥有很高的耐久和很高的附魔亲和性。 - -**TODO:** Unsupported Patchouli page type **anvilcraft:super_heating** - -``` -{"type":"anvilcraft:super_heating","recipe":"anvilcraft:super_heating/royal_steel_ingot"} -``` - - - - - - - - - -在村庄铁匠铺可以找到锻造模板,与[珠宝匠](smithing_jewelcrafting_table.md)村民交易也可以得到锻造模板。 - -**TODO:** Unsupported Patchouli page type **patchouli:smithing** - -``` -{"type":"patchouli:smithing","recipe":"anvilcraft:smithing/royal_smithing_table","text":"这是第一个你应该用皇家钢升级的物品,因为有了它之后你锻造的过程就无需再消耗任何锻造模板。"} -``` - -**TODO:** Unsupported Patchouli page type **patchouli:smithing** - -``` -{"type":"patchouli:smithing","recipe":"anvilcraft:smithing/royal_anvil","text":"*皇家铁砧*无论如何使用都不会损坏,还能让你不用再担心过于昂贵。使用带特殊字符的*命名牌*还可以给物品名称修改样式。"} -``` - - -**TODO:** Unsupported Patchouli page type **patchouli:smithing** - -``` -{"type":"patchouli:smithing","anchor":"royal_grindstone","recipe":"anvilcraft:smithing/royal_grindstone","text":"在*皇家砂轮*上使用*金锭*可以为物品祛除$(fb0505)诅咒$(/fb0505)和附魔惩罚,正常附魔则会被保留。金锭会转化为[诅咒金锭](#cursed_gold_ingot)。"} -``` - -**TODO:** Unsupported Patchouli page type **patchouli:smithing** - -``` -{"type":"patchouli:smithing","recipe":"anvilcraft:smithing/royal_steel_pickaxe","recipe2":"anvilcraft:smithing/royal_steel_axe","text":"使用皇家钢锭升级你的工具,这是它们成长路上的第一步。"} -``` - -**TODO:** Unsupported Patchouli page type **patchouli:smithing** - -``` -{"type":"patchouli:smithing","recipe":"anvilcraft:smithing/royal_steel_shovel","recipe2":"anvilcraft:smithing/royal_steel_hoe","text":"使用皇家钢锭升级你的工具,这是它们成长路上的第一步。"} -``` - -**TODO:** Unsupported Patchouli page type **patchouli:smithing** - -``` -{"type":"patchouli:smithing","recipe":"anvilcraft:smithing/royal_steel_sword","recipe2":"anvilcraft:smithing/royal_anvil_hammer","text":"使用皇家钢锭升级你的武器,这是它们成长路上的第一步。"} -``` - - - - -散发着诅咒气息的物品,携带者将受到*debuff*;携带者使用*皇家铁砧*时会被雷劈。使用[皇家砂轮](#royal_grindstone)祛除物品的诅咒和附魔惩罚时,金锭会转化为诅咒金锭。 - - - - - - - - - - -完全使用*诅咒金块*作为信标底座,并使用*诅咒金锭*激活信标,则信标有概率转化为[腐化信标](smithing_corrupted_beacon.md)。底座层数越多,转化概率越大。使用诅咒金锭激活信标时天气将转为雷雨天。 - diff --git a/guidebook/smithing_system/smithing_tier_2_materials.md b/guidebook/smithing_system/smithing_tier_2_materials.md deleted file mode 100644 index dde8fa8..0000000 --- a/guidebook/smithing_system/smithing_tier_2_materials.md +++ /dev/null @@ -1,163 +0,0 @@ ---- -navigation: - title: "二阶材料" - icon: "anvilcraft:frost_metal_ingot" - position: 3004 - parent: anvilcraft_guideme:smithing_system_index.md -item_ids: - - anvilcraft:frost_metal_block - - anvilcraft:frost_metal_nugget - - anvilcraft:ember_metal_block - - anvilcraft:multiphase_matter_block - - tag:anvilcraft:multiple_to_one_smithing_templates ---- - -# 二阶材料 - -本页面展示了目前所有可用的*二阶材料*。 - - - - -*浮霜金属*是一种坚固且寒冷的金属。 - -**TODO:** Unsupported Patchouli page type **anvilcraft:time_warp** - -``` -{"type":"anvilcraft:time_warp","recipe":"anvilcraft:time_warp/frost_metal_ingot","text":"使用1*钛锭*、1*银锭*、1*铁锭*进行时移来制作。"} -``` - - - - - - - - -**TODO:** Unsupported Patchouli page type **anvilcraft:time_warp** - -``` -{"type":"anvilcraft:time_warp","recipe":"anvilcraft:time_warp/frost_metal_upgrade_smithing_template","text":"使用*皇家升级锻造模板*进行时移配方以获得。可用于将*皇家钢系列工具*升级为*浮霜金属系列工具*。"} -``` - - -**TODO:** Unsupported Patchouli page type **patchouli:smithing** - -``` -{"type":"patchouli:smithing","anchor":"frost_metal_tools","recipe":"anvilcraft:smithing/frost_metal_pickaxe","recipe2":"anvilcraft:smithing/frost_metal_axe","text":"使用*浮霜金属锭*升级你的工具,它们将自带[无情](./advanced_tool_properties.md#merciless)属性。"} -``` - -**TODO:** Unsupported Patchouli page type **patchouli:smithing** - -``` -{"type":"patchouli:smithing","recipe":"anvilcraft:smithing/frost_metal_shovel","recipe2":"anvilcraft:smithing/frost_metal_hoe","text":"使用*浮霜金属锭*升级你的工具,它们将自带[无情](./advanced_tool_properties.md#merciless)属性。"} -``` - -**TODO:** Unsupported Patchouli page type **patchouli:smithing** - -``` -{"type":"patchouli:smithing","recipe":"anvilcraft:smithing/frost_metal_sword","text":"使用*浮霜金属锭*升级你的工具,它们将自带[无情](./advanced_tool_properties.md#merciless)属性。"} -``` - - - - -*余烬金属*是一种炽热无比的金属。 -使用任意*高温的下界合金块*进行时移来制作。加入1-3个*地核碎片*可以增加对应量的产出。 - -**TODO:** Unsupported Patchouli page type **anvilcraft:time_warp** - -``` -{"type":"anvilcraft:time_warp","recipe":"anvilcraft:time_warp/ember_metal_ingot_0","recipe2":"anvilcraft:time_warp/ember_metal_ingot_1"} -``` - -**TODO:** Unsupported Patchouli page type **anvilcraft:time_warp** - -``` -{"type":"anvilcraft:time_warp","recipe":"anvilcraft:time_warp/ember_metal_ingot_2","recipe2":"anvilcraft:time_warp/ember_metal_ingot_3"} -``` - - - - - - - - - -在村庄铁匠铺可以找到锻造模板,与[珠宝匠](smithing_jewelcrafting_table.md)村民交易也可以得到锻造模板。 - -**TODO:** Unsupported Patchouli page type **patchouli:smithing** - -``` -{"type":"patchouli:smithing","recipe":"anvilcraft:smithing/ember_smithing_table","text":"这个锻造台用于锻造更加复杂的配方,有了它之后你就有能力在锻造上更进一步了。"} -``` - -**TODO:** Unsupported Patchouli page type **patchouli:smithing** - -``` -{"type":"patchouli:smithing","recipe":"anvilcraft:smithing/ember_anvil","text":"这个铁砧的功能与*皇家铁砧*几乎一致,但是它可以让你在生存模式下给物品强行添加一些不兼容的附魔。"} -``` - - -**TODO:** Unsupported Patchouli page type **patchouli:smithing** - -``` -{"type":"patchouli:smithing","anchor":"ember_grindstone","recipe":"anvilcraft:smithing/ember_grindstone","text":"在*余烬砂轮*上,你可以消耗经验提取出附魔物品的附魔。只需放入待提取的物品和书,并选择一个附魔,就可以消耗其显示的经验提取出选择的附魔了。它不会有过于昂贵,但是仍会向提取的物品增加附魔惩罚。"} -``` - - -**TODO:** Unsupported Patchouli page type **patchouli:smithing** - -``` -{"type":"patchouli:smithing","anchor":"ember_metal_tools","recipe":"anvilcraft:smithing/ember_metal_pickaxe","recipe2":"anvilcraft:smithing/ember_metal_axe","text":"使用*余烬金属锭*升级你的工具,它们将自带[重铸](./advanced_tool_properties.md#reforging)属性。"} -``` - -**TODO:** Unsupported Patchouli page type **patchouli:smithing** - -``` -{"type":"patchouli:smithing","recipe":"anvilcraft:smithing/ember_metal_shovel","recipe2":"anvilcraft:smithing/ember_metal_hoe","text":"使用*余烬金属锭*升级你的工具,它们将自带[重铸](./advanced_tool_properties.md#reforging)属性。"} -``` - -**TODO:** Unsupported Patchouli page type **patchouli:smithing** - -``` -{"type":"patchouli:smithing","recipe":"anvilcraft:smithing/ember_metal_sword","recipe2":"anvilcraft:smithing/ember_anvil_hammer","text":"使用*余烬金属锭*升级你的工具,它们将自带[重铸](./advanced_tool_properties.md#reforging)属性。"} -``` - - - - -*多相物质*是一种人造物质。 - -(此处为对撞配方,等待对撞适配)在对撞装置尾部放上[一块浮霜金属块](#frost_metal_block_and_nugget),并成功执行一次对撞获得。 - - - - - -## 多合一锻造模板 - - - -将多个互不相同的*锻造模板*进行物品冲压加工获得,由模板数量决定获得的是几合一锻造模板。 - -**TODO:** Unsupported Patchouli page type **anvilcraft:multiple_to_one_smithing** - -``` -{"type":"anvilcraft:multiple_to_one_smithing","recipe":"anvilcraft:two_to_one_smithing/multiphase_matter_pickaxe","recipe2":"anvilcraft:two_to_one_smithing/multiphase_matter_axe"} -``` - -**TODO:** Unsupported Patchouli page type **anvilcraft:multiple_to_one_smithing** - -``` -{"type":"anvilcraft:multiple_to_one_smithing","recipe":"anvilcraft:two_to_one_smithing/multiphase_matter_shovel","recipe2":"anvilcraft:two_to_one_smithing/multiphase_matter_hoe"} -``` - - -**TODO:** Unsupported Patchouli page type **anvilcraft:multiple_to_one_smithing** - -``` -{"type":"anvilcraft:multiple_to_one_smithing","anchor":"multiphase_matter_tools","recipe":"anvilcraft:two_to_one_smithing/multiphase_matter_sword","text":"使用*多相物质*升级你的工具,它们将自带[重铸](./advanced_tool_properties.md#reforging)和[多相](./advanced_tool_properties.md#multiphase)属性。"} -``` - diff --git a/guidebook/smithing_system_index.md b/guidebook/smithing_system_index.md deleted file mode 100644 index 1b92061..0000000 --- a/guidebook/smithing_system_index.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -navigation: - title: "锻造系统" - icon: "anvilcraft:royal_anvil" ---- - -# 锻造系统 - -更强的铁砧,更强的锻造和附魔 - - \ No newline at end of file diff --git a/img.png b/img.png deleted file mode 100644 index cb63cfbce109210ac3f08eebb8ac0c3afc18f94c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 124572 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%0D~hkRMAI+*eok6W3N4dq+45Cp_tiI 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 blockStatePredicates; @Setter diff --git a/src/main/java/dev/anvilcraft/guideme/util/BlockStateUtil.java b/src/main/java/dev/anvilcraft/guideme/util/BlockStateUtil.java index 5960a6d..7e1b07e 100644 --- a/src/main/java/dev/anvilcraft/guideme/util/BlockStateUtil.java +++ b/src/main/java/dev/anvilcraft/guideme/util/BlockStateUtil.java @@ -5,6 +5,7 @@ import dev.dubhe.anvilcraft.recipe.anvil.predicate.block.HasCauldron; import dev.dubhe.anvilcraft.recipe.component.HasCauldronSimple; import dev.dubhe.anvilcraft.util.CauldronUtil; +import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.Blocks; import net.minecraft.world.level.block.state.BlockState; @@ -34,4 +35,15 @@ public static BlockState getCauldron(HasCauldronSimple hasCauldron) { return CauldronUtil.fullState(HasCauldron.getDefaultCauldron(hasCauldron.transform())); } } + + public static BlockState getCauldron(HasCauldronSimple cauldronSimple, boolean isConsume) { + Block transformCauldron = cauldronSimple.getTransformCauldron(); + BlockState cauldronState; + if (isConsume) { + cauldronState = CauldronUtil.getStateFromContentAndLevel(transformCauldron, CauldronUtil.maxLevel(transformCauldron) - 1); + } else { + cauldronState = CauldronUtil.getStateFromContentAndLevel(transformCauldron, 1); + } + return cauldronState; + } } From 72461fd80f95687661366ad1a3166c84e5be5c09 Mon Sep 17 00:00:00 2001 From: theabab2333 <2047477146@qq.com> Date: Fri, 2 Jan 2026 02:36:27 +0800 Subject: [PATCH 4/8] =?UTF-8?q?docs(guidebook):=20=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E6=96=B0=E7=89=A9=E5=93=81=E6=96=87=E6=A1=A3=E5=B9=B6=E4=BC=98?= =?UTF-8?q?=E5=8C=96=E5=B8=83=E5=B1=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 添加琥珀物品文档,包含合成配方和用途说明 - 添加电路板物品文档,说明其作为机器合成材料的用途 - 添加一般金属粒物品文档,包含过筛合成表 - 添加硬化树脂物品文档,说明其合成和用途 - 添加海晶簇与海晶刃物品文档,包含合成方法 - 添加树脂物品文档,说明合成和作用 - 添加海心壳物品文档,包含海心壳碎片合成 - 添加木质纤维物品文档,说明用途和合成配方 - 优化输入输出物品槽布局计算 - 调整网格配方布局参数,改进显示效果 --- guidebook/items-blocks-machines/item/amber.md | 35 ++++++ .../item/circuit_board.md | 37 +++++++ .../item/common_nugget.md | 102 ++++++++++++++++++ .../item/hardend_resin.md | 28 +++++ .../items-blocks-machines/item/prismarine.md | 38 +++++++ guidebook/items-blocks-machines/item/resin.md | 35 ++++++ .../items-blocks-machines/item/sea_heart.md | 39 +++++++ .../items-blocks-machines/item/wood_fiber.md | 35 ++++++ .../guideme/guide/recipe/LytMeshRecipe.java | 4 +- .../guideme/guide/slot/LytInputItemSlot.java | 4 +- .../guideme/guide/slot/LytOutputItemSlot.java | 4 +- 11 files changed, 355 insertions(+), 6 deletions(-) create mode 100644 guidebook/items-blocks-machines/item/amber.md create mode 100644 guidebook/items-blocks-machines/item/circuit_board.md create mode 100644 guidebook/items-blocks-machines/item/common_nugget.md create mode 100644 guidebook/items-blocks-machines/item/hardend_resin.md create mode 100644 guidebook/items-blocks-machines/item/prismarine.md create mode 100644 guidebook/items-blocks-machines/item/resin.md create mode 100644 guidebook/items-blocks-machines/item/sea_heart.md create mode 100644 guidebook/items-blocks-machines/item/wood_fiber.md diff --git a/guidebook/items-blocks-machines/item/amber.md b/guidebook/items-blocks-machines/item/amber.md new file mode 100644 index 0000000..3d91eb4 --- /dev/null +++ b/guidebook/items-blocks-machines/item/amber.md @@ -0,0 +1,35 @@ +--- +navigation: + title: "琥珀" + icon: "anvilcraft:amber" + position: 11 + parent: anvilcraft_guideme:item-block-machines.md +categories: + - misc ingredients blocks +item_ids: + - anvilcraft:amber + - anvilcraft:amber_block +--- + +# 琥珀(块) + + + + + + +## 琥珀 + +> 暂时没什么用 + +### 合成 + + + + + + + + + + \ No newline at end of file diff --git a/guidebook/items-blocks-machines/item/circuit_board.md b/guidebook/items-blocks-machines/item/circuit_board.md new file mode 100644 index 0000000..3dfa17b --- /dev/null +++ b/guidebook/items-blocks-machines/item/circuit_board.md @@ -0,0 +1,37 @@ +--- +navigation: + title: "电路板" + icon: "anvilcraft:circuit_board" + position: 11 + parent: anvilcraft_guideme:item-block-machines.md +categories: + - misc ingredients blocks +item_ids: + - anvilcraft:circuit_board +--- + +# 电路板 + + + + + +## 电路板 + +### 合成 + + + + + +### 用途 + +> 是大多数机器的合成材料,具体请查看xEI(物品管理器),这里只列举几个 + + + + + + + + \ No newline at end of file diff --git a/guidebook/items-blocks-machines/item/common_nugget.md b/guidebook/items-blocks-machines/item/common_nugget.md new file mode 100644 index 0000000..4db8b97 --- /dev/null +++ b/guidebook/items-blocks-machines/item/common_nugget.md @@ -0,0 +1,102 @@ +--- +navigation: + title: "一般金属(粒)" + icon: "anvilcraft:tungsten_nugget" + position: 11 + parent: anvilcraft_guideme:item-block-machines.md +categories: + - misc ingredients blocks +item_ids: + - anvilcraft:tungsten_nugget + - anvilcraft:titanium_nugget + - anvilcraft:zinc_nugget + - anvilcraft:tin_nugget + - anvilcraft:lead_nugget + - anvilcraft:silver_nugget + - anvilcraft:copper_nugget + - minecraft:iron_nugget + - minecraft:gold_nugget + - anvilcraft:tungsten_ingot + - anvilcraft:titanium_ingot + - anvilcraft:zinc_ingot + - anvilcraft:tin_ingot + - anvilcraft:lead_ingot + - anvilcraft:silver_ingot + - minecraft:copper_ingot + - minecraft:iron_ingot + - minecraft:gold_ingot +--- + +# 一般金属(粒) + + + + + + + + + + + + + +--- + + + + + + + + + + + + + +## 一般金属(粒) + +> 一般金属可过筛物品得到对应的金属粒 + +### 金属粒过筛合成表 + + + + + + +--- + + + + + + +--- + + + + + + +--- + + + + + + +--- + + + + + + +--- + + + + + \ No newline at end of file diff --git a/guidebook/items-blocks-machines/item/hardend_resin.md b/guidebook/items-blocks-machines/item/hardend_resin.md new file mode 100644 index 0000000..3127f5d --- /dev/null +++ b/guidebook/items-blocks-machines/item/hardend_resin.md @@ -0,0 +1,28 @@ +--- +navigation: + title: "硬化树脂" + icon: "anvilcraft:hardend_resin" + position: 11 + parent: anvilcraft_guideme:item-block-machines.md +categories: + - misc ingredients blocks +item_ids: + - anvilcraft:hardend_resin +--- + +# 硬化树脂 + + + + + +## 硬化树脂 + +- 用于合成[电路板]()、[磁盘](disk.md)、[过滤器](filter.md)、[药盒](pill.md#药盒)等物品 +- 也可用于在[珠宝加工台]()仿制唱片 + +### 合成 + + + + \ No newline at end of file diff --git a/guidebook/items-blocks-machines/item/prismarine.md b/guidebook/items-blocks-machines/item/prismarine.md new file mode 100644 index 0000000..7751dea --- /dev/null +++ b/guidebook/items-blocks-machines/item/prismarine.md @@ -0,0 +1,38 @@ +--- +navigation: + title: "海晶簇与海晶刃" + icon: "anvilcraft:prismarine_cluster" + position: 11 + parent: anvilcraft_guideme:item-block-machines.md +categories: + - misc ingredients blocks +item_ids: + - anvilcraft:prismarine_blade + - anvilcraft:prismarine_cluster +--- + +# 海晶簇与海晶刃 + + + + + + +## 海晶簇 + +- 可用于生产 + + +### 合成 + +> 合成消耗1层细雪,由于渲染原因,没炫出来 + + + + + +## 海晶刃 + +> 由海晶簇冲压而来 + + \ No newline at end of file diff --git a/guidebook/items-blocks-machines/item/resin.md b/guidebook/items-blocks-machines/item/resin.md new file mode 100644 index 0000000..64170ed --- /dev/null +++ b/guidebook/items-blocks-machines/item/resin.md @@ -0,0 +1,35 @@ +--- +navigation: + title: "树脂" + icon: "anvilcraft:resin" + position: 11 + parent: anvilcraft_guideme:item-block-machines.md +categories: + - misc ingredients blocks +item_ids: + - anvilcraft:resin +--- + +# 树脂 + + + + + +## 树脂 + +### 合成 + + + +### 作用 + +可以用来合成[树脂块]()、[电容器](capacitor.md)、[硬化树脂]()、[琥珀]()、 + + + + + + + + \ No newline at end of file diff --git a/guidebook/items-blocks-machines/item/sea_heart.md b/guidebook/items-blocks-machines/item/sea_heart.md new file mode 100644 index 0000000..1e5efc4 --- /dev/null +++ b/guidebook/items-blocks-machines/item/sea_heart.md @@ -0,0 +1,39 @@ +--- +navigation: + title: "海心壳" + icon: "anvilcraft:sea_heart_shell" + position: 11 + parent: anvilcraft_guideme:item-block-machines.md +categories: + - misc ingredients blocks +item_ids: + - anvilcraft:sea_heart_shell + - anvilcraft:sea_heart_shell_shard +--- + +# 海心壳 + + + + + + +## 海心壳 + +> 可用于再生 + + + +### 合成 + + + +## 海心壳碎片 + +> 用来合成 或[海晶簇](prismarine.md) + +### 合成 + + + + \ No newline at end of file diff --git a/guidebook/items-blocks-machines/item/wood_fiber.md b/guidebook/items-blocks-machines/item/wood_fiber.md new file mode 100644 index 0000000..533b79e --- /dev/null +++ b/guidebook/items-blocks-machines/item/wood_fiber.md @@ -0,0 +1,35 @@ +--- +navigation: + title: "木质纤维" + icon: "anvilcraft:wood_fiber" + position: 11 + parent: anvilcraft_guideme:item-block-machines.md +categories: + - misc ingredients blocks +item_ids: + - anvilcraft:wood_fiber +--- + +# 木质纤维 + + + + + +## 硬化树脂 + +### 合成 + + + + + +### 用途 + +- 用于合成 +- 也可作为燃料 + + + + + \ No newline at end of file diff --git a/src/main/java/dev/anvilcraft/guideme/guide/recipe/LytMeshRecipe.java b/src/main/java/dev/anvilcraft/guideme/guide/recipe/LytMeshRecipe.java index 199d1f6..491f7e3 100644 --- a/src/main/java/dev/anvilcraft/guideme/guide/recipe/LytMeshRecipe.java +++ b/src/main/java/dev/anvilcraft/guideme/guide/recipe/LytMeshRecipe.java @@ -39,8 +39,8 @@ public void render(RenderContext context) { @Override protected LytRect computeBoxLayout(LayoutContext context, int x, int y, int availableWidth) { workBlocks.layout(context, x + 70, y + 10, availableWidth); - inputItemSlot.layout(context, x + 15, y, availableWidth); - outputItemSlot.layout(context, x + 87, y, availableWidth); + inputItemSlot.layout(context, x, y, availableWidth); + outputItemSlot.layout(context, x + 80, y, availableWidth); return new LytRect(x, y, 162, 64); } } diff --git a/src/main/java/dev/anvilcraft/guideme/guide/slot/LytInputItemSlot.java b/src/main/java/dev/anvilcraft/guideme/guide/slot/LytInputItemSlot.java index b89ed24..4eb46fd 100644 --- a/src/main/java/dev/anvilcraft/guideme/guide/slot/LytInputItemSlot.java +++ b/src/main/java/dev/anvilcraft/guideme/guide/slot/LytInputItemSlot.java @@ -38,9 +38,9 @@ protected LytRect computeLayout(LayoutContext context, int x, int y, int availab } else if (size <= 4) { return new LytRect(x + 24, y + 12, SLOT_SIZE * 2, SLOT_SIZE * 2); } else if (size <= 6) { - return new LytRect(x + 8, y + 8, SLOT_SIZE * 3, SLOT_SIZE * 2); + return new LytRect(x + 18, y + 8, SLOT_SIZE * 3, SLOT_SIZE * 2); } else { - return new LytRect(x + 8, y + 4, SLOT_SIZE * 3, SLOT_SIZE * 3); + return new LytRect(x + 18, y + 4, SLOT_SIZE * 3, SLOT_SIZE * 3); } } diff --git a/src/main/java/dev/anvilcraft/guideme/guide/slot/LytOutputItemSlot.java b/src/main/java/dev/anvilcraft/guideme/guide/slot/LytOutputItemSlot.java index 3fe9332..e2aac4a 100644 --- a/src/main/java/dev/anvilcraft/guideme/guide/slot/LytOutputItemSlot.java +++ b/src/main/java/dev/anvilcraft/guideme/guide/slot/LytOutputItemSlot.java @@ -37,9 +37,9 @@ protected LytRect computeLayout(LayoutContext context, int x, int y, int availab } else if (size <= 4) { return new LytRect(x + 24, y + 12, SLOT_SIZE * 2, SLOT_SIZE * 2); } else if (size <= 6) { - return new LytRect(x + 8, y + 8, SLOT_SIZE * 3, SLOT_SIZE * 2); + return new LytRect(x + 18, y + 8, SLOT_SIZE * 3, SLOT_SIZE * 2); } else { - return new LytRect(x + 8, y + 4, SLOT_SIZE * 3, SLOT_SIZE * 3); + return new LytRect(x + 18, y + 4, SLOT_SIZE * 3, SLOT_SIZE * 3); } } From c7ea9672d59630244cbc7d48f66f7f30b2e3f81d Mon Sep 17 00:00:00 2001 From: theabab2333 <2047477146@qq.com> Date: Fri, 2 Jan 2026 02:56:50 +0800 Subject: [PATCH 5/8] =?UTF-8?q?=E5=A6=82=E6=9E=9C=E5=B0=86=E6=9D=A5GuideME?= =?UTF-8?q?=E5=8D=87=E5=88=B021.5.6-beta=E5=8F=8A=E4=BB=A5=E4=B8=8A?= =?UTF-8?q?=EF=BC=8C=E7=A7=BB=E9=99=A4KeyMapTagCompiler?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../guideme/guide/compiler/tag/KeyMapTagCompiler.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/dev/anvilcraft/guideme/guide/compiler/tag/KeyMapTagCompiler.java b/src/main/java/dev/anvilcraft/guideme/guide/compiler/tag/KeyMapTagCompiler.java index 302b358..e85f5ae 100644 --- a/src/main/java/dev/anvilcraft/guideme/guide/compiler/tag/KeyMapTagCompiler.java +++ b/src/main/java/dev/anvilcraft/guideme/guide/compiler/tag/KeyMapTagCompiler.java @@ -13,10 +13,11 @@ import java.util.Set; +// TODO: 将来GuideME升到21.5.6-beta及以上,移除这个 public class KeyMapTagCompiler extends FlowTagCompiler { @Override public Set getTagNames() { - return Set.of("Key"); + return Set.of("Key", "KeyBind"); } @Override From 8a083986c447a21281f0582c500f6d04d0b59545 Mon Sep 17 00:00:00 2001 From: theabab2333 <2047477146@qq.com> Date: Fri, 2 Jan 2026 03:11:13 +0800 Subject: [PATCH 6/8] =?UTF-8?q?chore(deps):=20=E6=9B=B4=E6=96=B0workflows?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/ci.yml | 2 +- .github/workflows/pull_request.yml | 2 +- gradle/libs.versions.toml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ff1f4dc..515d480 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -71,4 +71,4 @@ jobs: uses: Anvil-Dev/dedicated-server-launch-test@1.21.1-neoforge with: mod: build/libs/${{ steps.properties.outputs.mod_id }}-neoforge-${{ steps.version.outputs.version }}.jar - extra-mods: anvilcraft:1.21.1-1.5.0+hotfix.1560 guideme:21.1.15 + extra-mods: anvilcraft:1.21.1-1.5.0+hotfix.1570 guideme:21.1.15 diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index be52db7..ad23bd8 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -62,4 +62,4 @@ jobs: uses: Anvil-Dev/dedicated-server-launch-test@1.21.1-neoforge with: mod: build/libs/${{ steps.properties.outputs.mod_id }}-neoforge-${{ steps.version.outputs.version }}.jar - extra-mods: anvilcraft:1.21.1-1.5.0+hotfix.1560 guideme:21.1.15 + extra-mods: anvilcraft:1.21.1-1.5.0+hotfix.1570 guideme:21.1.15 diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index f978d2e..2de8e17 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -3,7 +3,7 @@ minecraft = "1.21.1" neoForge = "21.1.152" registrate = "MC1.21-1.3.0+62" anvillib = "1.4.0+build.172" -anvilcraft = "1.5.0+hotfix.1563" +anvilcraft = "1.5.0+hotfix.1570" curios = "9.0.15+1.21.1" jei = "19.21.0.247" jade = "15.3.4+neoforge" From 10366eed8d636a62ceffcde76c79824faac29adf Mon Sep 17 00:00:00 2001 From: theabab2333 <2047477146@qq.com> Date: Fri, 2 Jan 2026 03:19:28 +0800 Subject: [PATCH 7/8] =?UTF-8?q?chore(=E6=9B=B4=E6=96=B0workflows):=20?= =?UTF-8?q?=E5=B0=9D=E8=AF=95=E4=BF=AE=E5=A4=8Dworkflows?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/ci.yml | 2 +- .github/workflows/pull_request.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 515d480..d7c38f7 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -71,4 +71,4 @@ jobs: uses: Anvil-Dev/dedicated-server-launch-test@1.21.1-neoforge with: mod: build/libs/${{ steps.properties.outputs.mod_id }}-neoforge-${{ steps.version.outputs.version }}.jar - extra-mods: anvilcraft:1.21.1-1.5.0+hotfix.1570 guideme:21.1.15 + extra-mods: anvilcraft:1.21.1-1.5.0+hotfix.1570 guideme:21.1.9 diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index ad23bd8..4f20396 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -62,4 +62,4 @@ jobs: uses: Anvil-Dev/dedicated-server-launch-test@1.21.1-neoforge with: mod: build/libs/${{ steps.properties.outputs.mod_id }}-neoforge-${{ steps.version.outputs.version }}.jar - extra-mods: anvilcraft:1.21.1-1.5.0+hotfix.1570 guideme:21.1.15 + extra-mods: anvilcraft:1.21.1-1.5.0+hotfix.1570 guideme:21.1.9 From e79d0e94cfb6e883862e91a8bb84a9d3d3b73277 Mon Sep 17 00:00:00 2001 From: theabab2333 <2047477146@qq.com> Date: Fri, 2 Jan 2026 05:42:58 +0800 Subject: [PATCH 8/8] =?UTF-8?q?fix(event):=20=E4=BF=AE=E5=A4=8D=E6=8C=87?= =?UTF-8?q?=E5=8D=97=E4=B9=A6=E4=BA=8B=E4=BB=B6=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../items-blocks-machines/block/corrupted_beacon.md | 0 guidebook/items-blocks-machines/block/resin_block.md | 0 .../items-blocks-machines/block/royal_grindstone.md | 0 guidebook/items-blocks-machines/item/amethyst_tools.md | 2 -- guidebook/items-blocks-machines/item/cruse_gold.md | 4 ++-- guidebook/items-blocks-machines/item/frost_metal.md | 9 ++++++++- guidebook/items-blocks-machines/item/gems.md | 2 +- guidebook/items-blocks-machines/item/geode.md | 4 ++-- guidebook/items-blocks-machines/item/hardend_resin.md | 4 ++-- guidebook/items-blocks-machines/item/jeweler.md | 2 +- guidebook/items-blocks-machines/item/resin.md | 2 +- guidebook/items-blocks-machines/item/totem_of_rage.md | 2 +- guidebook/items-blocks-machines/item/utusan.md | 2 +- guidebook/recipe.md | 0 guidebook/recipe/time_warp.md | 0 .../guideme/event/AddonGuideEventListener.java | 4 +++- 16 files changed, 22 insertions(+), 15 deletions(-) create mode 100644 guidebook/items-blocks-machines/block/corrupted_beacon.md create mode 100644 guidebook/items-blocks-machines/block/resin_block.md create mode 100644 guidebook/items-blocks-machines/block/royal_grindstone.md create mode 100644 guidebook/recipe.md create mode 100644 guidebook/recipe/time_warp.md diff --git a/guidebook/items-blocks-machines/block/corrupted_beacon.md b/guidebook/items-blocks-machines/block/corrupted_beacon.md new file mode 100644 index 0000000..e69de29 diff --git a/guidebook/items-blocks-machines/block/resin_block.md b/guidebook/items-blocks-machines/block/resin_block.md new file mode 100644 index 0000000..e69de29 diff --git a/guidebook/items-blocks-machines/block/royal_grindstone.md b/guidebook/items-blocks-machines/block/royal_grindstone.md new file mode 100644 index 0000000..e69de29 diff --git a/guidebook/items-blocks-machines/item/amethyst_tools.md b/guidebook/items-blocks-machines/item/amethyst_tools.md index 87539f9..73523dd 100644 --- a/guidebook/items-blocks-machines/item/amethyst_tools.md +++ b/guidebook/items-blocks-machines/item/amethyst_tools.md @@ -36,8 +36,6 @@ item_ids: ### 合成 -紫水晶工具可以合成 - diff --git a/guidebook/items-blocks-machines/item/cruse_gold.md b/guidebook/items-blocks-machines/item/cruse_gold.md index cd5082e..3877917 100644 --- a/guidebook/items-blocks-machines/item/cruse_gold.md +++ b/guidebook/items-blocks-machines/item/cruse_gold.md @@ -31,12 +31,12 @@ item_ids: ## 获取 -在上使用金锭(块)[驱除诅咒附魔或附魔惩罚]() +在上使用金锭(块)[驱除诅咒附魔或附魔惩罚](../block/royal_grindstone.md) ## 用途 1. 完全使用作为信标底座并用 - 激活信标时,信标有概率转化为 详情请看[腐化信标转换]() + 激活信标时,信标有概率转化为 详情请看[腐化信标转换](../block/corrupted_beacon.md) 2. [猪灵与诅咒金的互动]() [TODO](https://github.com/Anvil-Dev/AnvilCraft/issues/1344) **更多请安装JEI查看合成表** \ No newline at end of file diff --git a/guidebook/items-blocks-machines/item/frost_metal.md b/guidebook/items-blocks-machines/item/frost_metal.md index 9f08a02..80d57f6 100644 --- a/guidebook/items-blocks-machines/item/frost_metal.md +++ b/guidebook/items-blocks-machines/item/frost_metal.md @@ -26,7 +26,14 @@ item_ids: ### 合成 - +使用皇家钢锭在细雪锅中时移,使用铁/银/钛锭进行增产 + + + + + + + ## 相关 diff --git a/guidebook/items-blocks-machines/item/gems.md b/guidebook/items-blocks-machines/item/gems.md index 39e3891..61938f3 100644 --- a/guidebook/items-blocks-machines/item/gems.md +++ b/guidebook/items-blocks-machines/item/gems.md @@ -29,7 +29,7 @@ item_ids: ## 获取 1. [冲压晶洞](geode.md)有概率获取3种宝石 -2. 将宝石放在装有熔融宝石的炼药锅中进行[时移](),消耗1000mB熔融宝石产出对应宝石块 +2. 将宝石放在装有熔融宝石的炼药锅中进行[时移](../../recipe/time_warp.md),消耗1000mB熔融宝石产出对应宝石块 diff --git a/guidebook/items-blocks-machines/item/geode.md b/guidebook/items-blocks-machines/item/geode.md index 69b0cf1..de2c014 100644 --- a/guidebook/items-blocks-machines/item/geode.md +++ b/guidebook/items-blocks-machines/item/geode.md @@ -19,7 +19,7 @@ item_ids: ### 获取方式: 1. 挖掘紫水晶母岩(时运无法生效) -2. 与珠宝商交易 +2. 与[珠宝匠](jeweler.md)交易 3. 开局的奖励箱(需要在创建世界时开启奖励箱选项) ### 功能: @@ -29,7 +29,7 @@ item_ids: ### 参与合成: -- 在晶洞在物品冲压时,一定出4个紫水晶碎片,概率出黄玉、蓝宝石和红宝石 +- 在晶洞在物品冲压时,一定出4个紫水晶碎片,概率出[黄玉、蓝宝石和红宝石](gems.md) - 对晶洞进行时移,可以合成出紫水晶母岩 diff --git a/guidebook/items-blocks-machines/item/hardend_resin.md b/guidebook/items-blocks-machines/item/hardend_resin.md index 3127f5d..b942d8a 100644 --- a/guidebook/items-blocks-machines/item/hardend_resin.md +++ b/guidebook/items-blocks-machines/item/hardend_resin.md @@ -18,8 +18,8 @@ item_ids: ## 硬化树脂 -- 用于合成[电路板]()、[磁盘](disk.md)、[过滤器](filter.md)、[药盒](pill.md#药盒)等物品 -- 也可用于在[珠宝加工台]()仿制唱片 +- 用于合成[电路板](circuit_board.md)、[磁盘](disk.md)、[过滤器](filter.md)、[药盒](pill.md#药盒)等物品 +- 也可用于在[珠宝加工台](../block/jewelcrafting_table.md)仿制唱片 ### 合成 diff --git a/guidebook/items-blocks-machines/item/jeweler.md b/guidebook/items-blocks-machines/item/jeweler.md index 444d06e..ee8ec51 100644 --- a/guidebook/items-blocks-machines/item/jeweler.md +++ b/guidebook/items-blocks-machines/item/jeweler.md @@ -20,7 +20,7 @@ categories: ## 转职 -- 将珠宝加工台作为工作方块的村民将转职为珠宝匠[珠宝加工台](../block/jewelcrafting_table.md) +- 将[珠宝加工台](../block/jewelcrafting_table.md)作为工作方块的村民将转职为珠宝匠 ## 交易列表 diff --git a/guidebook/items-blocks-machines/item/resin.md b/guidebook/items-blocks-machines/item/resin.md index 64170ed..fdc93de 100644 --- a/guidebook/items-blocks-machines/item/resin.md +++ b/guidebook/items-blocks-machines/item/resin.md @@ -24,7 +24,7 @@ item_ids: ### 作用 -可以用来合成[树脂块]()、[电容器](capacitor.md)、[硬化树脂]()、[琥珀]()、 +可以用来合成[树脂块](../block/resin_block.md)、[电容器](capacitor.md)、[硬化树脂](hardend_resin.md)、[琥珀](amber.md)、 diff --git a/guidebook/items-blocks-machines/item/totem_of_rage.md b/guidebook/items-blocks-machines/item/totem_of_rage.md index ed8ac14..fb48113 100644 --- a/guidebook/items-blocks-machines/item/totem_of_rage.md +++ b/guidebook/items-blocks-machines/item/totem_of_rage.md @@ -27,4 +27,4 @@ item_ids: ## 合成 - + diff --git a/guidebook/items-blocks-machines/item/utusan.md b/guidebook/items-blocks-machines/item/utusan.md index d6b0c25..c67840c 100644 --- a/guidebook/items-blocks-machines/item/utusan.md +++ b/guidebook/items-blocks-machines/item/utusan.md @@ -1,7 +1,7 @@ --- navigation: title: "五毒散" - icon: "anvilcraft:canned_food" + icon: "anvilcraft:utusan" position: 11 parent: anvilcraft_guideme:item-block-machines.md categories: diff --git a/guidebook/recipe.md b/guidebook/recipe.md new file mode 100644 index 0000000..e69de29 diff --git a/guidebook/recipe/time_warp.md b/guidebook/recipe/time_warp.md new file mode 100644 index 0000000..e69de29 diff --git a/src/main/java/dev/anvilcraft/guideme/event/AddonGuideEventListener.java b/src/main/java/dev/anvilcraft/guideme/event/AddonGuideEventListener.java index a5a17a9..19460d2 100644 --- a/src/main/java/dev/anvilcraft/guideme/event/AddonGuideEventListener.java +++ b/src/main/java/dev/anvilcraft/guideme/event/AddonGuideEventListener.java @@ -4,6 +4,7 @@ import dev.dubhe.anvilcraft.api.event.CheckIntegrationLoadedEvent; import dev.dubhe.anvilcraft.api.event.GuideBookEvent; import guideme.GuidesCommon; +import net.neoforged.bus.api.EventPriority; import net.neoforged.bus.api.SubscribeEvent; import net.neoforged.fml.common.EventBusSubscriber; @@ -16,9 +17,10 @@ public static void onHasGuide(GuideBookEvent.HasGuideBookEvent event) { event.hasGuideBook(); } - @SubscribeEvent + @SubscribeEvent(priority = EventPriority.HIGHEST) public static void onOpenGuide(GuideBookEvent.OpenGuideBookEvent event) { GuidesCommon.openGuide(event.getPlayer(), GID); + event.setCanceled(true); } @SubscribeEvent