锤头 Hammer Head
PartTypes 枚举值 HammerHead(getID() = 21)对应的一个 ItemTGregPart 实例。全 mod 的 28 个工具部件是同一个类的 28 个实例,唯一区别是构造时传入的 PartTypes,贴图、配方、可用工具全部由此决定。
基本信息
| 属性 | 值 |
|---|---|
| 注册名 | TGregworks:tGregToolPartHammerHead |
| 类 | ItemTGregPart(Mantle CraftingItem + TiC IToolPart) |
PartTypes.getID() |
21 |
| 本地化名 | tgregworks.toolpart.hammer_head |
| 纹理 | tgregworks:items/parts/hammer_head |
| 最大堆叠 | 默认 64 |
| 耐久 | 0(setMaxDamage(0)) |
| subtype | setHasSubtypes(true),但 metadata 不是 0/1/2…,而是材料 ID |
| 创造栏 | tabTGregworks(TConstructCreativeTab,图标为黑铱大剑刃) |
制作
price = 16,getPatternItem() 返回 TinkerSmeltery.metalPattern(MetalPatterns),metadata = 21(枚举 ordinal(),即 new ItemStack(patternItem, 0, 21))。
| 配方 | 输入 | 产出 | 时长 | 耗电 | 默认开关 |
|---|---|---|---|---|---|
| GT 挤压机 | 8 × 锭 ingot<材料> + 本 pattern |
1 × 本部件 | max(80, 耐久×16) |
见下 | extruderRecipes=true |
| GT 挤压机(宝石回退) | 8 × 宝石 gem<材料> + 本 pattern |
1 × 本部件 | max(80, 耐久×16) |
见下 | gemToolPartRecipes=true |
| GT 挤压机(碎片路径) | 8 × 本材料碎片 + 本 pattern | 1 × 本部件 | 80 + 耐久×16 |
见下 | extruderRecipes 且 shardToToolPartRecipe |
| GT 流固机 | 4608 mB 熔融材料 + 本 pattern | 1 × 本部件 | max(80, 耐久×16) |
见下 | solidifierRecipes=false |
| GT 流体抽取机 | 1 × 本部件 | 4608 mB 熔融材料 | max(80, 耐久×16) |
见下 | fluidExtractorRecipes=false |
| GT 合金炉(回炉) | 本部件 + 碎片铸件 | 8 × 本材料碎片 | 80 + 耐久×16 |
见下 | reverseSmelting=true |
熔融量 = GT_Values.L / 2 × price = 288 × 16 = 4608 mB;锭/宝石数量 = price 为奇数时 price/2+1,否则向上取整 price/2 → 8。
耗电 = 材料 mToolQuality < 3 ? 30 : 120 × general.energyUsageMultiplier。
本部件自身也可以被压成铸件:castExtruderRecipes(默认开)下用 1 黄铜板/金板在 GT 挤压机里压出 本部件的铸件(通配 Short.MAX_VALUE metadata),再灌熔融黄铜/金得到铸件版;castSolidifierRecipes(默认关)走流固机。见 铸件配方。
用于哪些工具
| 工具 | 槽位 |
|---|---|
| 锤 Hammer | 头部件 |
合成验收由 工具配方表 与 TGregToolRecipe 完成;TiC 原版同种部件(PartTypes.getCounterpart(),如 TinkerTools.hammerHead)在本配方的 validHead/validHandle/validAccessory/validExtra 里被显式接受,两者可以混用在同一把工具上。
数值与 NBT
本部件自身没有耐久,耐久完全来自材料(TConstructRegistry.addToolMaterial 的mDurability × global.durability × materials.durability.<材料>),见 材料注册。
| 字段 | 位置 | 含义 |
|---|---|---|
material |
NBT Compound(String) | GT Materials.mName,决定物品名、颜色与全部数值 |
| 材料 ID | ItemStack.getItemDamage() |
等于 TGregworks.registry.matIDs.get(材料) |
getColorFromItemStack 用 Materials.mRGBa 染色;onUpdate 会在放入背包时把 damage 同步成当前 matIDs(旧存档的 metadata 0 因此会在提示里出现 (Deprecated) 直至被刷新)。详见 部件材料 NBT。