FramingLib

FramingLib

一个轻量级的客户端配置库,用于创建交互式、可拖动的HUD布局界面。

Framing Lib

![License](https://img.shields.io/badge/License-MIT License-green?style=for-the-badge) Environment ![Ko-Fi](https://img.shields.io/badge/BUY ME A COFFEE-limegreen?style=for-the-badge&logo=kofi&logoColor=white&logoSize=auto)

一个轻量级的客户端配置界面库,用于创建可交互、可拖拽的 HUD 布局界面!

📖 这个模组是什么?

这是一个用于创建可拖拽 HUD 布局界面的客户端配置界面库。

它允许开发者创建带有交互式、可拖拽元素的配置界面,让玩家更容易地调整他们的 HUD/GUI 元素位置。 这不是一个完整的配置 API,它仅仅用于创建配置界面。

基本上,这个库是供其他依赖它的模组来工作的。

以下是一些展示其功能的视觉效果:

功能展示

演示界面

一个更实际的示例,移动聊天框:

移动聊天框示例

✅ 功能特性

  • 多加载器支持: 完全兼容 Fabric、Quilt、Forge 和 NeoForge
  • 对玩家直观易用: 只需用鼠标拖拽即可重新定位 HUD/GUI 元素
  • 开发者友好 API: 采用简单的构建器模式,便于任何 HUD/GUI 模组集成
  • 动态对齐: 自动将 HUD/GUI 元素锚定到屏幕的九个位置,并支持可选的吸附对齐
  • 智能重算: 当 GUI 缩放比例或窗口大小改变时,自动重新计算 HUD/GUI 位置
  • 轻量高效: 仅在必要时缓存和重新计算位置,以节省帧数
  • 仅客户端: 只需安装在客户端,无需服务端安装或产生服务端负担
  • 高度可定制: 支持自定义颜色、图标,甚至可以使用您自己的自定义渲染函数

⚠️ 为了保持灵活性,本库不会自动将布局数据保存或加载到磁盘。开发者需要负责将布局对象序列化(为 JSON/YAML/INI/您喜欢的任意配置格式),并在游戏初始化时反序列化它。

📖 使用方法

📖 对于玩家

⚠️️ 这是一个库模组,本身不会做任何事情。

将 jar 文件放入您的 mods 文件夹即可!

对于 Fabric 和 Quilt 版本,您可能还需要将 ModMenu 放入您的 mods 文件夹。

📖 对于开发者

开发者文档可以访问 此处 查看

🚀 支持的版本

Minecraft Fabric Quilt Forge NeoForge
26.2 ⏳ ⏳ ⏳ ⏳
26.1.2 ⏳ ⏳ ⏳ ⏳
26.1.1 ⏳ ⏳ ⏳ ⏳
26.1 ⏳ ⏳ ⏳ ⏳
1.21.11 ⏳ ⏳ ⏳ ⏳
1.21.10 ⏳ ⏳ ⏳ ⏳
1.21.9 ⏳ ⏳ ⏳ ⏳
1.21.8 ⏳ ⏳ ⏳ ⏳
1.21.7 ⏳ ⏳ ⏳ ⏳
1.21.6 ⏳ ⏳ ⏳ ⏳
1.21.5 ⏳ ⏳ ⏳ ⏳
1.21.4 ⏳ ⏳ ⏳ ⏳
1.21.3 ⏳ ⏳ ⏳ ⏳
1.21.2 ⏳ ⏳ ⏳ ⏳
1.21.1 ⏳ ⏳ ⏳ ⏳
1.21 ⏳ ⏳ ⏳ ⏳
1.20.6 ⏳ ⏳ ⏳ ⏳
1.20.5 ⏳ ⏳ ⏳ ⏳
1.20.4 ⏳ ⏳ ⏳ ⏳
1.20.3 ❌ ❌ ❌ ❌
1.20.2 ⏳ ⏳ ⏳ ⏳
1.20.1 ⏳ ⏳ ⏳ ⏳
1.20 ⏳ ⏳ ⏳ ❌
1.19.4 ⏳ ⏳ ⏳ ❌
1.19.3 ⏳ ⏳ ⏳ ❌
1.19.2 ⏳ ⏳ ⏳ ❌
1.19.1 ⏳ ⏳ ⏳ ❌
1.19 ⏳ ⏳ ⏳ ❌
1.18.2 ⏳ ⏳ ⏳ ❌
1.18.1 ⏳ ⏳ ⏳ ❌
1.18 ⏳ ⏳ ⏳ ❌
1.17.1 ⏳ ⏳ ⏳ ❌
1.17 ⏳ ⏳ ⏳ ❌
1.16.5 ✅(1.0.2) ✅(1.0.2) ✅(1.0.2) ❌

✅ - 已支持 ⏳ - 计划中 ⏳ - 不支持

注意事项:

  • 括号中写的是最新的模组版本