Heater Shield
基本信息
| 属性 |
值 |
| 注册名 |
tinkersdefense:Heater Shield |
| 最大堆叠 |
1(Tinkers HarvestTool 默认) |
| 附魔适用 |
是(Tinkers 工具行为) |
| 父类 |
tconstruct.library.tools.HarvestTool |
| 实现接口 |
mods.battlegear2.api.IShield、ISheathed、IArrowCatcher、IArrowDisplay |
| 渲染器 |
FlexibleToolRenderer(Tinkers 自渲染) |
| 工具部件 |
largePlate / toughRod / largePlate / toughBinding(4 部件) |
| 默认纹理文件夹 |
textures/items/heatershield/ |
功能
Tinkers’ Construct 的 4 部件盾牌工具,可通过工具制造台(Tool Station)用大型板 + 加固棒 + 大型板 + 加固绑定四种部件组装而成。注册到 tconstruct.library.client.ToolGuiElement,在工具台 UI 第 5 槽(tierTwo)显示,图标位置 [9,8,9,9]/[2,3,2,3],纹理来自 tinkersdefense:textures/gui/icons.png。
盾牌通过 BattleGear2 的 IShield 系列接口与 BattleGear2 兼容:
- 格挡:
canBlock() 检查 source.isUnblockable();getBashTimer() = 10 tick;getBlockAngle() = 60°;getDamageReduction() = 1.0;getDamageDecayRate() = 0(无额外衰减,比 Round Shield 更慢)。
- 衰减/恢复率 =
10f / (MiningSpeed / 1.5f)(比 Round Shield 慢 1.5×)。
- 格挡动画: 播放
battlegear2:shield 音效。
- 拾箭:
IArrowCatcher.catchArrow 增加 NBT 字段 arrows(short,cap = Short.MAX_VALUE),同时减少玩家箭支;IArrowDisplay.getArrowCount/setArrowCount 读写同一 NBT 字段。
- 背挂:
ISheathed.sheatheOnBack = true。
- 挖掘: 同 RoundShield:
getHarvestType = pickaxe,getDigSpeed 在已损坏时 0.1,否则对 web/cloth/coral/cake 与 rock/iron/ice/glass/piston/anvil/circuits 材料 15.0,其余 1.5。
- 格挡使用:
onItemRightClick → player.setItemInUse(stack, 72000);getMaxItemUseDuration = 72000;getItemUseAction = BLOCK。
- 左键攻击实体:
onLeftClickEntity 调用 AbilityHelper.onLeftClickEntity(stack, player, target, this) 并返回 true。
注意:源码 en_US.lang 中 item.heatershield.name=Round Shield、item.roundshield.name=Heater Shield,二者互换(疑似原 bug)。
使用方式
| 使用方式 |
触发条件 |
使用效果 |
条件/限制 |
| 右键方块/空气 |
玩家不在 sneak |
进入举盾状态(持盾 72000 tick) |
玩家不在 sneak |
| 左键实体 |
持盾左键 |
AbilityHelper.onLeftClickEntity |
需 BattleGear2 |
| Tool Station 装配 |
放入部件 + 1× 模板 |
构造 HeaterShield |
四部件齐全 |
| BattleGear2 背槽 |
BattleGear2 持盾 |
渲染到背槽 |
需 BattleGear2 |
| 拾箭 |
玩家受到箭矢攻击 |
NBT arrows += 1,玩家 -1 箭 |
cap Short.MAX_VALUE |
数值
| 属性 |
值 |
| 部件数(getPartAmount) |
4 |
| 头部件 |
largePlate |
| 手柄部件 |
toughRod |
| 附加部件 |
largePlate |
| 第四部件 |
toughBinding |
| 耐久类型(accessory) |
2 |
| 修复成本 |
4.0F |
| 耐久修正 |
2.5× |
| 击破速度修正 |
0.4× |
| 伤害修正 |
1.4× |
| bashTimer |
10 tick |
| blockAngle |
60° |
| damageDecayRate |
0 |
| damageReduction |
1.0 |
| 衰减率 |
10f / (MiningSpeed / 1.5f) |
| 恢复率 |
10f / (MiningSpeed / 1.5f) |
| 挖掘速度(已损坏) |
0.1 |
| 挖掘速度(常规) |
1.5 |
| 挖掘速度(特殊方块) |
15.0 |
| 挖掘等级 |
pickaxe |
| maxItemUseDuration |
72000 tick |
| itemUseAction |
BLOCK |
| 箭头 NBT 字段 |
arrows(short) |
| 箭头 cap |
Short.MAX_VALUE |
耐久与消耗
| 项目 |
值 |
| 最大耐久 |
取决于材料(沿用 Tinkers 工具模型) |
| 每次使用消耗 |
Tinkers 工具默认(挖掘/攻击) |
| 使用后是否消失 |
否 |
| 格挡附加衰减 |
每格挡消耗 getDamageDecayRate() = 0(无额外衰减) |
合成配方
| 工具部件 |
数量 |
来源 |
| 大型板 (largePlate) |
2 |
Tinkers PatternCast + 任意金属 |
| 加固棒 (toughRod) |
1 |
同上 |
| 加固绑定 (toughBinding) |
1 |
同上 |
Tool Station 中组装;ClientProxy 注册 FlexibleToolRenderer 渲染。
相关条目