TagTerraFirmaCraft
9 个 TFC 气候 / 日历 tag
基本信息
| 属性 | 值 |
|---|---|
| 路径 | com.github.lunatrius.ingameinfo.integration.terrafirmacraft.tag.TagTerraFirmaCraft |
| 行数 | 257(5 个集成 tag 类里最长,也是全 mod 第 6 大文件) |
| 父类 | TagIntegration |
| 分类 | 由子类给出 |
| 注册 tag 数 | 9 |
9 个 tag
气候(4)
| tag 名 | 取值 |
|---|---|
tfcrainfall |
降雨量 |
tfctemperature |
温度 |
tfcaveragetemperature |
平均温度 |
tfctemperatureheatsources |
温度热源列表 |
⚠️ tfctemperature 与 tfcaveragetemperature 命名顺序反直觉:
tfctemperature 是当前温度,tfcaveragetemperature 才是平均 ——
「当前」的名字反而更短。
季节(1)
| tag 名 | 取值 |
|---|---|
tfcseason |
当前季节 |
⚠️ TFC 的季节是 4 个(Spring/Summer/Fall/Winter),
本类只给名字,不给数字 ID ——
对比 TagWorld 的 difficulty / difficultyid
成对提供「名字 + ID」的模式,这里没有配对的 tfcseasonid。
日期(4)
| tag 名 | 取值 |
|---|---|
tfcdate |
完整日期 |
tfcday |
日 |
tfcmonth |
月 |
tfcyear |
年 |
⚠️ TFC 的日历是 8 天 / 8 月 的(每「月」8 天,共 64 天一轮),
不是原版的 10 天 / 12 月。所以 tfcday 范围 1–8、tfcmonth 1–8,
与 TagTime 的 day(原版 /24000)语义完全不同。
所以 tfcday 与 day 不能混用或对比。
257 行的构成
9 个 tag 占了 257 行 → 平均 28 行/tag, 远高于内置 tag 类(如 TagTime 8 个 / 120 行 = 15 行/tag)。
原因是 TFC 的温度/降雨需要季节修正与热源累加 ——
tfctemperatureheatsources 要枚举周围方块的热源,
属于本 mod 中单 tag 计算最重的一个。
前置条件(双重)
| 条件 | 说明 |
|---|---|
① Loader.isModLoaded("terrafirmacraft") |
Plugin.canLoad 的判定 |
| ② TFC coremod 已加载 | 需 VM 参数 -Dfml.coreMods.load=com.bioxx.tfc.TFCASMLoadingPlugin(见 TerraFirmaCraft) |
条件 ②不满足时 TFC 装不上,条件 ① 也不会为真。
依赖
compileOnly('curse.maven:tfcraft-302973:2627990')。
TFC 不在 Wiki 收录范围,故不建分类。
注册时机
由 TerraFirmaCraft 的 load() 调本类的 register(),
经 PluginLoader.postInit(:60-69)。
⚠️ 同样晚于 ClientProxy 的
core.reloadConfig(),首次启动时这 9 个 tag 都会是 <ERROR>。
相关
- TerraFirmaCraft - 注册方
- TagIntegration - 父类
- TagTime - 原版时间(日历规则不同,不可混用)