Thaumcraft Aspect Hook
基本信息
| 属性 | 值 |
|---|---|
| 挂钩方法 | WGContent.postInitThaumcraft()(WGContent.java:559-821) |
| 触发时机 | postInit(WitchingGadgets.java:161) |
ThaumcraftApi.registerObjectTag 调用数 |
55 |
addOreAspects 调用数 |
53 |
| 自建研究分类 | WITCHGADG(WGResearch.java:47-51) |
功能
模组通过 ThaumcraftApi.registerObjectTag 为自己的物品与第三方矿石补充 Thaumcraft 要素值,使它们能参与炼金坩埚蒸馏、注液与扫描。挂钩分 4 组。
1. 模组自身方块与物品的要素
| 目标 | 要素组合 | 源码 |
|---|---|---|
BlockWoodenDevice meta 1 |
TREE 4 + CLOTH 2 + MECHANISM 2 + AIR 2 |
WGContent.java:561-563 |
BlockWoodenDevice meta 3 |
TREE 2 + CRYSTAL 2 + CRAFT 2 |
WGContent.java:564-565 |
BlockStoneDevice meta 0 |
MECHANISM 1 + EARTH 2 |
WGContent.java:567-568 |
BlockRoseVine meta 32767(全变体) |
PLANT 6 + ENTROPY 4 + MAGIC 4 + LIFE 2 |
WGContent.java:570-572 |
ItemMaterial meta 0 |
CLOTH 1 |
WGContent.java:574-575 |
ItemMaterial meta 1 |
CLOTH 1 + GREED 1 |
WGContent.java:576-577 |
ItemMaterial meta 2 |
CLOTH 1 + METAL 1 + MAGIC 1 |
WGContent.java:578-579 |
ItemMaterial meta 3 |
CLOTH 3 + VOID 3 |
WGContent.java:581-582 |
ItemMaterial meta 4 |
CLOTH 3 + GREED 3 |
WGContent.java:583-584 |
ItemMaterial meta 5 |
CLOTH 3 + MAGIC 2 + TAINT 1 |
WGContent.java:585-586 |
ItemMaterial meta 6 |
CLOTH 2 + BEAST 3 |
WGContent.java:588-589 |
ItemMaterial meta 9 |
CRYSTAL 5 + SENSES 3 + EXCHANGE 2 + POISON 1 |
WGContent.java:591-593 |
ItemMaterial meta 10 |
AIR 2 + WATER 2 + ORDER 2 + SENSES 2 + MIND 2 |
WGContent.java:594-596 |
ItemMaterial meta 12 |
CRYSTAL 4 + VOID 4 |
WGContent.java:598-599 |
ItemMagicFood meta 0 |
FIRE 1 + HUNGER 1 |
WGContent.java:601-602 |
ItemMagicFood meta 2 |
MIND 3 + HUNGER 2 + FLESH 2 |
WGContent.java:603-604 |
2. Biomes o’ Plenty 宝石(5 项)
WGContent.java:607-611:
| 物品字典名 | 要素 |
|---|---|
gemAmber |
TRAP 2 + CRYSTAL 2 |
gemPeridot |
CRYSTAL 2 + GREED 2 |
gemTopaz |
CRYSTAL 2 + GREED 2 |
gemTanzanite |
CRYSTAL 2 + GREED 2 |
gemMalachite |
CRYSTAL 2 + GREED 2 |
3. Botania(8 项矿石 + 48 项染色变体)
矿石(WGContent.java:614-641):
| 物品字典名 | 要素 |
|---|---|
Manasteel |
MAGIC 1 |
Terrasteel |
EARTH 1 + MAGIC 1 |
ElvenElementium |
AURA 1 + MAGIC 2 |
livingstone |
EARTH 4 + LIFE 2 |
livingwood |
TREE 4 + LIFE 2 |
dreamwood |
MAGIC 1 + TREE 4 + AURA 2 |
manaPearl |
MAGIC 6 + ELDRITCH 4 + TRAVEL 4 |
manaDiamond |
MAGIC 4 + CRYSTAL 4 + GREED 4 |
eternalLifeEssence |
被注册两次:先 MAGIC 4 + AURA 4(WGContent.java:628-629),后 MAGIC 8 + AURA 8 + LIFE 8(WGContent.java:630-632) |
elvenPixieDust |
MAGIC 6 + AURA 4 + ELDRITCH 4 |
elvenDragonstone |
MAGIC 6 + AURA 4 + CRYSTAL 6 |
shardPrismarine |
MAGIC 2 + WATER 4 + CRYSTAL 2 |
⚠️ eternalLifeEssence 的重复注册是源码中的实际写法(WGContent.java:628-632),两次调用相邻,后一次的值生效。
染色变体在 for 循环中批量注册,16 种颜色各 3 类(WGContent.java:642-651):
| 前缀 | 要素 |
|---|---|
mysticFlower<色> |
SENSES 2 + PLANT 2 |
petal<色> |
SENSES 1 + PLANT 1 |
manaPetal<色> |
MAGIC 1 + SENSES 1 + PLANT 1 |
16 种颜色(WGContent.java:642-643):White、Orange、Magenta、LightBlue、Yellow、Lime、Pink、Gray、LightGray、Cyan、Purple、Blue、Brown、Green、Red、Black。
4. Botania 符文(16 项)
每种符文都是 EARTH 2 + METAL 2 的基底,再叠加各自的要素(WGContent.java:652-710):
| 符文 | 叠加要素 |
|---|---|
runeWaterB |
WATER 6 |
runeFireB |
FIRE 6 |
runeEarthB |
EARTH 8 |
runeAirB |
AIR 6 |
runeSpringB |
WATER 3 + FIRE 3 + PLANT 3 |
runeSummerB |
EARTH 3 + AIR 3 + ENTROPY 3 |
runeAutumnB |
FIRE 3 + AIR 3 + PLANT 3 |
runeWinterB |
WATER 3 + EARTH 3 + COLD 3 |
runeManaB |
METAL 8(共 METAL 10)+ MAGIC 6 |
runeLustB |
CRYSTAL 4 + AIR 6 + EARTH 3 + 自定义要素 luxuria 4 |
runeGluttonyB |
CRYSTAL 4 + FIRE 3 + EARTH 3 + WATER 3 + 自定义要素 gula 4 |
runeGreedB |
CRYSTAL 4 + WATER 6 + FIRE 3 + GREED 4 |
runeSlothB |
CRYSTAL 4 + AIR 6 + FIRE 3 + 自定义要素 desidia 4 |
runeWrathB |
CRYSTAL 4 + EARTH 6 + WATER 3 + 自定义要素 ira 4 |
runeEnvyB |
CRYSTAL 4 + WATER 6 + EARTH 3 + 自定义要素 invidia 4 |
runePrideB |
CRYSTAL 4 + EARTH 3 + AIR 3 + FIRE 3 + 自定义要素 superbia 4 |
七宗罪符文(Luxuria、Gula、Desidia、Ira、Invidia、Superbia)使用 Aspect.getAspect("...") 获取自定义要素(WGContent.java:686 等),这些要素是 Botania 注册的,不是 Thaumcraft 原生要素。
5. TConstruct 与 Metallurgy 矿石(经 addOreAspects)
TConstruct(WGContent.java:713-721):Aluminum、Aluminium、AluminumBrass、AluminiumBrass、Alumite、Cobalt、Ardite、Manyullyn、PigIron。
Metallurgy(WGContent.java:724-762):Hepatizon、DamascusSteel、Angmallen、Manganese,以及 Zinc、Brass、Electrum、Platinum、Ignatius、ShadowIron、Lemurite、ShadowSteel、Midasium、Vyroxeres、Ceruclase、Alduorite、Inolashite、Kalendrite、Amordrine、Vulcanite、Sanguinite、Prometheum、DeepIron、Infuscolium、BlackSteel、Oureclase、AstralSilver、Carmot、Mithril、Rubracium、Quicksilver、Haderoth、Orichalcum。
addOreAspects 的第三个布尔参数表示是否为"特殊"矿种 —— 如 ElvenElementium、Cobalt、Ardite、Manyullyn、ShadowSteel、Inolashite、Amordrine、BlackSteel、Quicksilver、Haderoth 传 true。
数值
| 数值名 | 值 |
|---|---|
registerObjectTag 调用总数 |
55(含循环内与 eternalLifeEssence 的重复注册) |
addOreAspects 调用总数 |
53 |
| 自有方块/物品的要素注册数 | 16(15 条自有物品 + 1 条全变体玫瑰藤) |
| Botania 染色变体注册数 | 48(16 色 × 3 前缀) |
| Botania 符文数 | 16 |
| 自建研究分类数 | 1(WITCHGADG) |
交互
| 触发 | 行为 |
|---|---|
| 炼金坩埚蒸馏 | 上述要素值决定蒸馏产物与产出量 |
| 注液 | 要素值参与注液配方的要素校验 |
| 扫描 | 注册了要素标签的物品可被扫描出正确要素 |
| 研究分类 | 模组自建 WITCHGADG 分类,图标 witchinggadgets:textures/gui/research/WGIcon.png,背景 WGResearchBack.png(WGResearch.java:42-51) |
相关条目
- Mod Compat - 元素挂钩涉及的第三方模组
- Material - 12 个 meta 中有 10 个在此注册了要素
- Rose Vines - 唯一注册全变体要素的方块