FindItConfig
基本信息
| 属性 | 值 |
|---|---|
| 类名 | com.gtnh.findit.FindItConfig |
| 注册方式 | GTNHLib @Config(modid = "findit")(com.gtnewhorizon.gtnhlib.config.Config) |
| 配置文件位置 | config/findit.cfg(GTNHLib 默认 modid 命名) |
| 注册时点 | FindIt.preInit 阶段通过 ConfigurationManager.registerConfig(FindItConfig.class) |
| 重启必需 | 否(GTNHLib @Config 在运行时重新装载,无 @RequiresMcRestart 标注) |
功能
集中管理 FindIt 的 11 个运行时开关与数值。配置在每次 preInit 通过 ConfigurationManager.registerConfig(FindItConfig.class) 注册后立即生效(FindItConfig.SEARCH_RADIUS 等静态字段在 FindItemRequest 构造时即被读取快照)。
主要影响范围:
| 字段 | 读取方 |
|---|---|
SEARCH_RADIUS |
方块搜索服务 BlockFindService.handleRequest、ItemFindService.handleRequest(WorldUtils.getTileEntitiesAround)以及客户端 ClientItemFindService.handleResponse(AxisAlignedBB.expand(...)) |
SEARCH_COOLDOWN |
搜索冷却服务 SearchCooldownService.checkSearchCooldown |
MAX_RESPONSE_SIZE |
服务端 BlockFindService/ItemFindService.handleRequest 命中列表上限;客户端 ClientItemFindService.handleResponse 地面 EntityItem 上限 |
ENABLE_ROTATE_VIEW |
客户端 ClientBlockFindService.handleResponse(启用时调用 ClientFinderHelperUtils.lookAtTarget(player, response) 旋转视角到最近命中) |
USE_PARTICLE_HIGHLIGHTER |
客户端 ClientBlockFindService.handleResponse(false 走 BlockHighlighter 线框,true 走 ParticlePosition 粒子) |
SEARCH_ITEMS_ON_GROUND |
客户端 ClientItemFindService.handleResponse(控制是否额外搜索并高亮 EntityItem) |
SEARCH_IN_GT_PIPES |
服务端 FindItemRequest.isTileSatisfies(BaseMetaPipeEntity 是否进入 provider 链) |
SEARCH_IN_ENDERIO_CONDUITS |
服务端 FindItemRequest.isTileSatisfies(TileConduitBundle 是否进入 provider 链) |
ITEM_HIGHLIGHTING_DURATION |
客户端 ClientItemFindService.handleResponse(设置 expirationTime = currentTimeMillis + value*1000L) |
BLOCK_HIGHLIGHTING_DURATION |
客户端 ClientBlockFindService.handleResponse(设置 BlockHighlighter.expireHighlight = currentTimeMillis + value*1000L) |
ITEM_HIGHLIGHTING_COLOR |
客户端 ClientItemFindService.getItemHighlightingColor(解析失败回退到 0xFFFF8726) |
ITEM_HIGHLIGHTING_EMPTY_ITEMSTACKS |
FindItemRequest 构造快照;服务端 FindItemRequest.isStackSatisfies 与 isFluidSatisfies 用此判定是否忽略 stackSize==0/amount==0(用于兼容"桶/抽屉类 slot 真实 stackSize 经常为 0"的情况) |
数值
| 字段 | 类型 | 默认 | 范围/格式 | 备注 |
|---|---|---|---|---|
SEARCH_RADIUS |
int | 16 |
>= 1 |
立方体边长 = 2*RADIUS+1 |
SEARCH_COOLDOWN |
int | 10 |
>= 0(tick) |
设为 0 等于禁用冷却 |
MAX_RESPONSE_SIZE |
int | 20 |
>= 0 |
设为 0 等于永不返回任何命中 |
ENABLE_ROTATE_VIEW |
boolean | false |
- | 方块命中后自动旋转视角 |
USE_PARTICLE_HIGHLIGHTER |
boolean | false |
- | 方块命中高亮模式:粒子 vs 线框 |
SEARCH_ITEMS_ON_GROUND |
boolean | true |
- | 是否搜索附近地面散落 EntityItem |
SEARCH_IN_GT_PIPES |
boolean | false |
- | 是否把 GT 管道内部物品/流体纳入搜索 |
SEARCH_IN_ENDERIO_CONDUITS |
boolean | false |
- | 是否把 EnderIO 导管内部物品/流体纳入搜索 |
ITEM_HIGHLIGHTING_DURATION |
int | 10 |
>= 1(秒) |
GUI 槽位与地面 EntityItem 的高亮有效期 |
BLOCK_HIGHLIGHTING_DURATION |
int | 8 |
>= 1(秒) |
方块红色线框/粒子的高亮有效期 |
ITEM_HIGHLIGHTING_COLOR |
String | "FFFF8726" |
ARGB 16 进制字符串(不带 0x 前缀) |
例如 "FFFF0000" 表示不透明纯红 |
ITEM_HIGHLIGHTING_EMPTY_ITEMSTACKS |
boolean | true |
- | 是否忽略 stackSize==0 的 slot/EntityItem |
限制
ITEM_HIGHLIGHTING_COLOR必须是不带0x前缀的 8 位 ARGB 字符串。解析失败时静默回退到0xFFFF8726(橙红色),不会报错。SEARCH_RADIUS=0会被@RangeInt(min=1)拒绝。MAX_RESPONSE_SIZE与SEARCH_ITEMS_ON_GROUND都不关闭冷却管线——冷却只由SEARCH_COOLDOWN控制。- 没有运行时 GUI 配置入口:仅能编辑
config/findit.cfg或调用 GTNHLib CLI。
第三方 mod 集成
仅 GTNHLib @Config 注解(无运行时 API)。
相关条目
- Mod 入口 -
FindIt.preInit注册本配置 - 方块搜索服务 - 主要消费
SEARCH_RADIUS、SEARCH_COOLDOWN、MAX_RESPONSE_SIZE、ENABLE_ROTATE_VIEW、USE_PARTICLE_HIGHLIGHTER、BLOCK_HIGHLIGHTING_DURATION - 物品搜索服务 - 主要消费
SEARCH_RADIUS、SEARCH_COOLDOWN、MAX_RESPONSE_SIZE、SEARCH_ITEMS_ON_GROUND、SEARCH_IN_GT_PIPES、SEARCH_IN_ENDERIO_CONDUITS、ITEM_HIGHLIGHTING_DURATION、ITEM_HIGHLIGHTING_COLOR、ITEM_HIGHLIGHTING_EMPTY_ITEMSTACKS - 搜索冷却服务 - 主要消费
SEARCH_COOLDOWN