护甲套装
基本信息
| 属性 | 值 |
|---|---|
| 套装数量 | 4 套(Manasteel / Terrasteel / Elementium / Manaweave) |
| 每套文件数 | 各 5 个(1 个 *Armor.java 基类 + Helm / Chest / Legs / Boots) |
| 共同基类 | vazkii.botania.common.item.ItemArmor |
| Manasteel 基类 | ItemManasteelArmor(extends ItemArmor implements ISpecialArmor, IManaUsingItem, IPhantomInkable, thaumcraft.api.IRunicArmor),ItemManasteelArmor.java:47-48 |
| 物品总数 | 16 件护甲(4 套 × 4 部位) |
功能
四套护甲共享同一条继承链,ItemManasteelArmor 是实际的功能基类,其余三套从它派生:
| 套装 | 基类声明 | 额外接口 |
|---|---|---|
| Manasteel | ItemManasteelArmor extends ItemArmor implements ISpecialArmor, IManaUsingItem, IPhantomInkable, thaumcraft.api.IRunicArmor |
—(基类本体) |
| Terrasteel | ItemTerrasteelArmor extends ItemManasteelArmor |
无 |
| Elementium | ItemElementiumArmor extends ItemManasteelArmor implements IPixieSpawner(abstract) |
IPixieSpawner |
| Manaweave | ItemManaweaveArmor extends ItemManasteelArmor implements ICraftAchievement |
ICraftAchievement |
基类实现的能力:
- 符文护甲:
thaumcraft.api.IRunicArmor—— 护甲可附符文以改变效果。该接口来自 Thaumcraft 而非 Botania,类上用@Optional.Interface(modid = "Thaumcraft", iface = "thaumcraft.api.IRunicArmor")标注(ItemManasteelArmor.java:47),ItemBauble.java:38-39用同样方式标注。因此符文功能依赖软依赖 Thaumcraft 是否加载。 - 魔力消耗:
IManaUsingItem—— 护甲效果消耗法力 - 幻墨:
IPhantomInkable—— 可用幻墨变为隐形 - 妖精召唤:
IPixieSpawner—— Elementium 专属
ItemManasteelArmor.getProperties(...) 计算护甲的额外减伤:
return new ArmorProperties(0, damageReduceAmount / 25D, armor.getMaxDamage() + 1 - armor.getItemDamage());
即额外减伤为 damageReduceAmount / 25(转为 double),耐久余量为 getMaxDamage() + 1 - 当前损伤(ItemManasteelArmor.java:89)。getArmorDisplay(...) 直接返回 damageReduceAmount(:94)。damageReduceAmount 是 ItemArmor 的继承字段,其每部位的具体数值本次未在 Botania 源码中定义(来自 MinecraftForge 的 ItemArmor),标记为「无法核实」。
数值
| 显示名 | 注册键 | 部件 |
|---|---|---|
| Manasteel Helmet / Chestplate / Leggings / Boots | manasteelHelm / manasteelChest / manasteelLegs / manasteelBoots |
头盔 / 胸甲 / 护腿 / 靴 |
| Terrasteel Helmet / Chestplate / Leggings / Boots | terrasteelHelm / terrasteelChest / terrasteelLegs / terrasteelBoots |
同上 |
| Elementium Helmet / Chestplate / Leggings / Boots | elementiumHelm / elementiumChest / elementiumLegs / elementiumBoots |
同上 |
| Manaweave Cowl / Robe Top / Robe Bottom / Boots | manaweaveHelm / manaweaveChest / manaweaveLegs / manaweaveBoots |
兜帽 / 上衣 / 下装 / 靴 |
显示名来源:en_US.lang 的 item.botania:{manasteel,terrasteel,elementium,manaweave}*.name。注意 Manaweave 的四件显示名与材质命名不同(Cowl / Robe Top / Robe Bottom),是法袍风格。
揭示头盔
三套套装各有一个"揭示"变体:
| 显示名 | 注册键 |
|---|---|
| Manasteel Helmet of Revealing | manasteelHelmReveal |
| Terrasteel Helmet of Revealing | terrasteelHelmReveal |
| Elementium Helmet of Revealing | elementiumHelmReveal |
套装锭与布料
| 显示名 | 注册键 |
|---|---|
| Manasteel Ingot / Nugget | manasteel / manasteelNugget |
| Terrasteel Ingot / Nugget | terrasteel / terrasteelNugget |
| Elementium Ingot / Nugget | elementium / elementiumNugget |
| Manaweave Cloth | manaweaveCloth |
交互
| 触发 | 行为 |
|---|---|
| 穿戴 | 触发 getProperties(...),按当前耐久线性降低额外减伤(耐久越低减伤越低) |
| 幻墨 | hasPhantomInk(stack) 为真时贴图改为 LibResources.MODEL_INVISIBLE_ARMOR(ItemManasteelArmor.java:116) |
| 附符文 | thaumcraft.api.IRunicArmor 接口(来自 Thaumcraft),符文效果由符文祭坛体系提供 |
| 制作 Manaweave | 实现 ICraftAchievement,制作时触发成就 |
| 自定义模型 | 受配置 armorModels.enable 控制(默认 true,ConfigHandler.java:201) |
| 护甲模型 | getArmorModel(...) 在有自定义模型时返回 Botania 模型,否则回退 super(ItemManasteelArmor.java:125-135) |
合成配方
无法核实 —— 本次核查未读取 ModCraftingRecipes / ModManaAlchemyRecipes 中各护甲的配方行,不做推断。Terrasteel 需在符文祭坛中制作(参考 符文祭坛配方 的符文体系),但具体配方未逐条核实。
相关条目
- 符文祭坛配方 - 符文系统,护甲可附符文
- 魔杖 - 13 把范围型交互魔杖,其中数把由泰拉钢制作
- 配置文件 -
armorModels.enable - Lexica Botania - 护甲说明位于"工具"分类