
HUD 控制
为HUD元素添加更精细的控制选项,包括可自定义的自动规则和用于快速显示或隐藏部分界面的快捷键。
查看大图UI 元素的默认“自动”选项有点无用,因为它只在你完全静止不动时隐藏 HUD 界面。这个模组让你可以在没有 UI 的情况下安静地探索,同时还能隐藏额外的 UI 元素。在不需要 UI 时,让自己沉浸其中,而不会显示 UI。
使用此模组,UI 元素的可见性可以绑定到特定条件自动显示或隐藏,例如处于战斗中、武器已拔出、玩家剩余生命值等。还可以绑定任何键盘或控制器按键来切换可见性,或仅在按键被按下时显示 UI 元素。
默认快捷键为 F1 切换控制指南,按住 F2 显示小地图和玩家/棋子生命值,F3 切换对话,F4 切换其他大部分较不重要的用户界面。
配置
所有行为都可以通过 REFramework 的游戏内脚本生成界面进行配置,游戏内还提供了一些额外的帮助文本。
可配置的 UI 元素:
- 小地图
- 控制引导
- 对话字幕
- 浮动字幕
- 玩家 HUD(生命值,耐力,状态)
- 随从 HUD(生命值,状态)
- 敌人生命值
- 首领生命值
- 地点名称
- 物品/金币获得提示
- 3D 文字提示(拾取物品和 NPC 互动)
- 保存指示器
- 可选:可隐藏所有界面元素
可用的额外显示条件:
- 战斗中 / 非战斗中
- 城镇内 / 城镇外
- 武器拔出 / 未拔出
- 玩家生命值低于 / 高于百分比
- 玩家耐力低于 / 高于百分比
- 随从生命值百分比(用于随从生命值条)
- 敌人生命值百分比(用于敌人生命值条)
- 发言者是否会说精灵语,随从随机闲聊,随从对话(用于对话字幕)
- 重要物品互动(黄金宝虫或探索者代币)
所有这些条件都可以通过 REFramework 脚本生成的用户界面,通过规则系统任意组合。
所有设置都存储在 GAMEDIR/reframework/data/hud_control_settings.json 中,因此如果出于某种原因您想手动编辑或备份配置,它就在那里。如果它不存在,它将在您在游戏中更改任何设置时创建。如果您想恢复到默认配置,只需删除该文件。
安装
使用 Fluffy 模组管理器启用,或手动将 lua 文件粘贴到 GAME_DIR/reframework/autorun 目录中。
游戏内界面设置必须设为显示 = 是或自动,否则我无法让它显示出来,因为模组只是增加了一个额外的“不显示”检查。
兼容性
我的显示开关是通过代码动态实现的,因此其他模组的重新着色或重新定位完全不会影响它。应该与任何不改变 GUI 对象结构的模组兼容。我认为目前发布的模组中还没有这样的,但欢迎指正。
如果不行,你可以尝试重新安装其中一个模组以防万一。
显示条件评估
- 如果按住键被按下,显示
- 如果全局开关被隐藏,则隐藏
- 检查其他条件规则(生命值/耐力百分比、是否在战斗中、是否在城镇内/外……)并组合它们以决定是否显示
- 切换按钮行为可设置为覆盖条件规则或不覆盖
模组 API
一个全局的 hud_controls lua 对象被暴露出来,它提供了一些可用于调整行为的方法。它具有完整的类型注释,因此您可以使用它来了解有哪些可用选项。如果有任何不清楚的地方,请提问。
从高层次来看,API 允许您执行以下操作:
- 获取或修改任何现有设置
- 定义我的模组不一定知道的额外图形用户界面,包括任何自定义模组用户界面
- 定义自定义显示规则
- 为现有图形用户界面添加额外选项(类似于小地图的罗盘模式);该模组提供了一个用于渲染设置的回调,实际逻辑必须在调用方一侧实现。
自定义基于 imgui 的 UI 基本用法示例:
local hud_controls = require('dd2_hud_controls')
local hud_settings = hud_controls.define_ui('my_mod_name', {
标签 = '编辑器显示标签'
})
...
local shouldShow = hud_controls.calculate_alpha(hud_settings) > 0
if shouldShow then
imgui.text('你好世界!')
end
显示 1-12 条,共 12 条
以上为资源接口提供的文件记录。安装时请在客户端确认文件、游戏版本及依赖。


还没有人评论,去客户端里说两句吧。
评论在新手盒子客户端中发表,这里同步展示。