血凝布甲(Ichorcloth Armor)
基本信息
| 属性 | 值 |
|---|---|
| 物品数量 | 8(基础系 4 + 觉醒系 4) |
| 注册位置 | 基础系 TTRegistry.java:99(单次 loadMetaItem,展开为 4 件);觉醒系 TTRegistry.java:95-98(4 次 loadSimpleItem) |
| 护甲材质 | EnumHelper.addArmorMaterial("ICHOR", 0, new int[] { 3, 8, 6, 3 }, 20),ItemIchorclothArmor.java:57 |
| 基础系类 | thaumic.tinkerer.common.item.kami.armor.ItemIchorclothArmor |
| 觉醒系基类 | ItemIchorclothArmorAdv(abstract,继承 ItemIchorclothArmor,实现 IHazardProtector) |
| 注册门槛 | 8 件全部为 ConfigHandler.enableKami |
数值
| 数值 | 值 | 来源 |
|---|---|---|
| 材质名 | ICHOR |
ItemIchorclothArmor.java:57 |
| 耐久 | 0 | ItemIchorclothArmor.java:57 |
| 减伤(靴/腿/胸/盔) | 3 / 8 / 6 / 3 | ItemIchorclothArmor.java:57 |
| 附魔加成 | 20 | ItemIchorclothArmor.java:57 |
ItemIchorclothArmor 同时实现 4 个 Thaumcraft 接口:IVisDiscountGear、ISpecialArmor、IWarpingGear、IRunicArmor(ItemIchorclothArmor.java:54-55)。
物品清单
基础系(4 件,单类多形态)
ItemIchorclothArmor 通过 armorType 字段(0–3)区分部位,以 loadMetaItem 注册:本体 + 3 个 meta 实例 = 4 件(ItemIchorclothArmor.java:124-126 的 getMetaItems() 与 TTRegistry.loadMetaItem())。
| 物品 | 注册名 | armorType |
减伤 | 源码 |
|---|---|---|---|---|
| 血凝布盔 | ichorclothHelm |
0 | 3 | ItemIchorclothArmor.java:137-138 |
| 血凝布胸 | ichorclothChest |
1 | 8 | ItemIchorclothArmor.java:135-136 |
| 血凝布腿 | ichorclothLegs |
2 | 6 | ItemIchorclothArmor.java:133-134 |
| 血凝布靴 | ichorclothBoots |
3 | 3 | ItemIchorclothArmor.java:131-132 |
getItemName() 的 default 分支返回字符串 "INVAlID ARMOR TYPE"(ItemIchorclothArmor.java:140,原文即含此拼写)。
觉醒系(4 件)
| 物品 | 注册名 | Java 类 | 额外接口 | 特殊能力 | 源码 |
|---|---|---|---|---|---|
| 觉醒血凝布盔 | ichorclothHelmGem |
ItemGemHelm |
IGoggles, IRevealer |
揭示类能力 | TTRegistry.java:97 |
| 觉醒血凝布胸 | ichorclothChestGem |
ItemGemChest |
— | 创造飞行,受 ConfigHandler.enableFlight 控制(ItemGemChest.java:66) |
TTRegistry.java:96 |
| 觉醒血凝布腿 | ichorclothLegsGem |
ItemGemLegs |
— | 放置光源,受 ConfigHandler.shouldKamiLegsDoLightFeature 控制(ItemGemLegs.java:88) |
TTRegistry.java:98 |
| 觉醒血凝布靴 | ichorclothBootsGem |
ItemGemBoots |
IBoots(Thaumic Boots) |
脚下泥土转草方块,受 ConfigHandler.shouldKamiBootsDoGrass 控制(ItemGemBoots.java:81) |
TTRegistry.java:95 |
觉醒系通过物品 NBT 的 itemDamage 位在两种形态间切换(ItemIchorclothArmorAdv.onItemRightClick():潜行右键 setItemDamage(~dmg & 1) 并播放 random.orb 音效)。
跨模组接口绑定
4 个觉醒系护甲的共同基类 ItemIchorclothArmorAdv 带有可选接口注解:
@Optional.InterfaceList({ @Optional.Interface(iface = "gregtech.api.hazards.IHazardProtector", modid = "gregtech_nh") })
public abstract class ItemIchorclothArmorAdv extends ItemIchorclothArmor implements IHazardProtector {
(ItemIchorclothArmorAdv.java:35-36)
IHazardProtector 来自 gregtech.api.hazards(ItemIchorclothArmorAdv.java:28 的 import),即 GT5-Unofficial(modid gregtech_nh)。GT5 未加载时该接口被剥离,类退化为不实现任何危险防护接口的普通护甲。这是本模组对 GregTech 危险值系统的唯一接口集成。
觉醒血凝布靴另有一条独立绑定:@Interface(iface = "thaumicboots.api.IBoots", modid = "thaumicboots")(ItemGemBoots.java:53),即 Thaumic Boots 的靴子接口。
两者的完整清单见 软依赖与兼容层。
交互
- 双重 KAMI 门槛:8 件护甲的
getResearchItem()首行都是if (!ConfigHandler.enableKami) return null;(基础系ItemIchorclothArmor.java:156;觉醒系ItemGemHelm.java:90、ItemGemChest.java:95、ItemGemLegs.java:101、ItemGemBoots.java:97),与shouldRegister()(ItemIchorclothArmor.java:145-147)构成两层独立判断。 - 无飞行/光照/草方块时静默:觉醒胸甲/腿甲/靴甲的附加能力分别受三个不同配置项控制,默认分别为
true(飞行)、false(光源)、true(草方块),见 配置:KAMI 与暗影束。
研究
| 物品 | 研究键 | 父研究 |
|---|---|---|
血凝布盔(armorType == 0) |
KEY_ICHORCLOTH_ARMOR = ICHORCLOTH_ARMOR |
— |
血凝布胸 / 腿 / 靴(armorType != 0) |
无(getResearchItem() 返回 null) |
— |
| 觉醒血凝布盔 | KEY_ICHORCLOTH_HELM_GEM |
ICHORCLOTH_ARMOR |
| 觉醒血凝布胸 | KEY_ICHORCLOTH_CHEST_GEM |
ICHORCLOTH_ARMOR |
| 觉醒血凝布腿 | KEY_ICHORCLOTH_LEGS_GEM |
ICHORCLOTH_ARMOR |
| 觉醒血凝布靴 | KEY_ICHORCLOTH_BOOTS_GEM |
ICHORCLOTH_ARMOR |
基础系只有头盔持有研究条目:getResearchItem() 写作 return armorType != 0 ? null : (IRegisterableResearch) new KamiResearchItem(LibResearch.KEY_ICHORCLOTH_ARMOR, …)(ItemIchorclothArmor.java:157-162)—— 即 armorType 为 1/2/3(胸/腿/靴)时返回 null,只有 armorType == 0 的头盔走 ICHORCLOTH_ARMOR 研究。LibResearch 中的 KEY_ICHORCLOTH_HELM / _CHEST / _LEGS / _BOOTS 四个键在本仓库内均无构造点。
相关条目
- 血凝工具 - 同系列的 8 件工具
- KAMI 材料 - 血凝布与血凝材料
- 配置:KAMI 与暗影束 - 3 个护甲能力开关