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