v1.5.2
TinkersSearch-1.5.2
🆕 新增 / Added
-
合金卡片完整信息显示:合金配方卡片高度自适应,完整显示配方链、原料详情、缺失原料、可执行次数等所有信息,彻底移除省略号截断
-
流体卡片悬停提示:鼠标悬停在流体卡片上时,显示完整名称和注册名(流体名称过长被截断时尤其有用)
-
冶炼炉温度实时刷新:打开面板时强制刷新温度,解决更换燃料后温度显示不更新的问题
-
多策略温度读取:支持多种方式读取冶炼炉温度(FuelModule、燃料槽、FluidType),提高兼容性
-
Full alloy card information display: alloy recipe cards now auto-adjust height to display all information including recipe chain, ingredient details, missing materials, execution count, completely removing ellipsis truncation
-
Fluid card hover tooltip: hovering over fluid cards shows full display name and registry name (useful when fluid names are truncated)
-
Real-time smeltery temperature refresh: temperature is forcefully refreshed when panel opens, fixing temperature not updating after fuel changes
-
Multi-strategy temperature reading: supports multiple methods to read smeltery temperature (FuelModule, fuel tank, FluidType), improving compatibility
🐛 修复 / Fixed
-
修复整合包中合金查询完全不生效的问题:采用多策略配方读取(Forge API → RecipeType → 反射 → KubeJS → CraftTweaker),适配各类整合包环境
-
修复更换燃料后温度不更新的问题:清除 FuelModule 内部缓存(heat、fuel、lastFuel、currentFuel),从燃料槽实时读取
-
修复 OpenGL GL_INVALID_ENUM 错误:创建 ScissorHelper 统一管理 Scissor 操作,静默处理 OpenGL 异常
-
修复 Tab 按钮与面板动画不同步的问题:Tab 按钮使用面板的动画偏移量计算位置,轨迹完全一致
-
修复面板第二次打开无法显示流体和收藏的问题:关闭时保留冶炼炉实体引用,打开时重新从屏幕获取
-
修复合金卡片滚动失效问题:动态计算卡片高度,滚动偏移量正确更新
-
Fixed alloy query not working in modpacks: multi-strategy recipe reading (Forge API → RecipeType → Reflection → KubeJS → CraftTweaker), adapting to various modpack environments
-
Fixed temperature not updating after fuel changes: clear FuelModule internal cache (heat, fuel, lastFuel, currentFuel), read from fuel tank in real-time
-
Fixed OpenGL GL_INVALID_ENUM error: created ScissorHelper to manage Scissor operations, silently handling OpenGL exceptions
-
Fixed Tab button animation out of sync with panel: Tab button position uses panel's animation offset, trajectories fully synchronized
-
Fixed panel showing no fluids or favorites on second open: keep smeltery entity reference when closed, reacquire from screen when opened
-
Fixed alloy card scrolling not working: dynamically calculate card height, scroll offset updates correctly
⚡ 优化 / Improved
-
面板代码重构:将 1400+ 行的 FloatingSearchPanel 拆分为 5 个职责类(DataManager、Renderer、LayoutCalculator、AnimationManager、TemperatureReader),提高可维护性
-
温度读取冷却机制:1 秒内不重复读取温度,减少不必要的开销
-
合金卡片美观性提升:增加分割线、状态图标(✔/✘)、颜色区分(可行绿色/不可行橙色),原料状态彩色显示
-
配方读取兼容性增强:支持 KubeJS 和 CraftTweaker 动态添加的配方
-
日志优化:减少非必要日志输出,调试日志默认关闭
-
Panel code refactoring: split 1400+ line FloatingSearchPanel into 5 responsibility classes (DataManager, Renderer, LayoutCalculator, AnimationManager, TemperatureReader), improving maintainability
-
Temperature reading cooldown: prevent repeated temperature reads within 1 second, reducing overhead
-
Alloy card visual improvements: added separators, status icons (✔/✘), color differentiation (green feasible/orange infeasible), colored ingredient status display
-
Recipe reading compatibility enhancement: supports recipes dynamically added by KubeJS and CraftTweaker
-
Log optimization: reduced unnecessary log output, debug logs disabled by default
🔧 技术改进 / Technical Improvements
-
新增
ScissorHelper工具类:统一管理 OpenGL Scissor Test,解决 GL_INVALID_ENUM 错误 -
新增
SmelteryTemperatureReader类:独立管理温度读取逻辑 -
新增
FluidNameHelper工具类:统一流体名称处理(移除前缀、截断等) -
合金配方读取器重构:支持 5 种读取策略,自动降级
-
版本信息统一:版本号由 mods.toml 管理,代码中通过 ModList 动态获取
-
Added
ScissorHelperutility class: unified management of OpenGL Scissor Test, resolving GL_INVALID_ENUM errors -
Added
SmelteryTemperatureReaderclass: independent temperature reading logic -
Added
FluidNameHelperutility class: unified fluid name handling (prefix removal, truncation, etc.) -
Alloy recipe reader refactoring: supports 5 reading strategies with automatic fallback
-
Version info unification: version number managed by mods.toml, dynamically retrieved via ModList in code