BetterAchievements
[!INFO] Git Commit:
5efb3e9| Updated: 2026-09-29
BetterAchievements(modid: BetterAchievements,resource id: betterachievements)是 Minecraft 1.7.10 Forge 客户端模组,由 way2muchnoise 开发。它完整重写了原版成就界面 GuiAchievements,提供多 AchievementPage 标签页切换、鼠标滚轮缩放、拖拽平移、自定义箭头颜色、自定义页签图标、IMC 跨 mod 集成等能力,并向第三方 mod 暴露 8 个 AchievementPage/Achievement 级别 API 接口以便深度定制。
模组无方块/物品/实体/维度/群系/结构/附魔/药水/热键注册 —— 它是纯客户端 GUI 与配置改写器。
GUI
- GuiBetterAchievements - 重写后的成就主界面(标签页 + 缩放 + 拖拽 + 箭头颜色 + Tooltip)
- GuiAchievementsOld - 原版成就界面的访问入口
- ModGuiConfig - 模组配置 GUI(Mods 列表里点击 Config 触发)
- ModGuiFactory - GuiFactory 实现,把 ModGuiConfig 注册到 Minecraft 的模组配置入口
游戏设定
- ConfigHandler - 配置加载/保存/响应 OnConfigChangedEvent
- Configuration - 全部配置项(箭头颜色、彩虹模式、滚动按钮、游戏内改图标、用户图标覆盖)
API
- IMCHelper - 跨 mod 通信(IMC)发送 AchievementPage 自定义图标
- ICustomBackground - AchievementPage 自定义背景绘制接口
- ICustomIcon - AchievementPage 自定义页签图标接口
- ICustomPosition - AchievementPage 打开时初始居中位置接口
- ICustomScale - AchievementPage 自定义缩放范围接口
- ICustomArrows - AchievementPage 三态箭头颜色(可解锁/不可解锁/已解锁)接口
- ICustomBackgroundColour - Achievement 自定义图标背景颜色接口
- ICustomIconRenderer - Achievement 自定义图标渲染接口
- ICustomTooltip - Achievement 自定义 Tooltip 接口
- ColourHelper - 颜色工具(RGB 转换、混合、Tone、彩虹)
处理器
- GuiOpenHandler - 拦截 GuiOpenEvent,将原版 GuiAchievements 替换为 GuiBetterAchievements
- SaveHandler - WorldEvent.Load/Unload 钩子(用户图标持久化)
- MessageHandler - 模组 SimpleNetworkWrapper 初始化
- AchievementUnlockMessage - 创造模式下右键成就解锁的网络包
注册器
- AchievementRegistry - AchievementPage / Achievement / 图标运行时集合管理(mcPage + statIdMap + iconMap + userSetIcons)
代理
- ClientProxy - 客户端代理(注册 2 个 Forge 监听器 + ConfigHandler)
- CommonProxy - 服务端代理(空实现)
Demo 示例
- DemoAchievement - src/demo 中的示例 Achievement 子类,实现 ICustomBackgroundColour
- DemoPage - src/demo 中的示例 AchievementPage 子类,实现 ICustomIcon
注:本模组本身不注册任何 Achievement / AchievementPage / Multiblock。Demo 仅是 API 使用范例。