LUI
MainWidgetCfg.ini
用于配置主界面自定义按钮、子按钮挂载位置、图片资源和坐标规则。
对应配置段
[button]
说明
MainWidgetCfg.ini 用来控制主界面自定义按钮的显示方式,包括主开关按钮、各功能按钮的图片与文字、挂载位置、显示等级以及按钮尺寸。
这一类配置集中写在同一个 [button] 段内,通过不带编号的主按钮字段和带编号的 字段名N 组合来描述整套按钮系统。
结构说明
这一文件主要分成三层:
| 层级 | 写法 | 说明 |
|---|---|---|
| 主开关按钮 | 不带编号,如 wmlib、x、NormalImg | 控制主界面上“显示/隐藏功能”的总按钮 |
| 按钮数量 | count | 控制下面一共有多少个功能按钮条目(最多 80 个) |
| 功能按钮 | 带编号,如 Visible0、Visible1、Visible12 | 每个编号代表一个具体按钮 |
重点规则
功能按钮按“同编号字段组”解析:
Visible12、wmlib12、tips12、x12、Parent12、NormalImg12这一组字段,共同描述编号12的按钮。count应覆盖实际使用到的最大按钮编号。比如文件里写到了Visible25,那么count至少要能覆盖到这一组。- 某些字段只在部分按钮上出现,例如
ParentN、WidthN、HeightN,未写时通常表示采用默认行为。
主开关按钮
字段说明
| 字段 | 说明 |
|---|---|
| LoginShowChildButton | 登录后是否显示子按钮。通常 1 为显示。 |
| wmlib | 主开关按钮使用的素材库名,例如 lui。 |
| caption | 主开关按钮标题文本。留空时通常只显示图片。 |
| tips | 鼠标悬停提示。 |
| x | 主开关按钮横向坐标。 |
| y | 主开关按钮纵向坐标。 |
| NormalImg | 普通状态图片。 |
| LightImg | 高亮状态图片。填 0 时,通常自动使用普通图做高亮。 |
| PushedImg | 按下状态图片。 |
| count | 功能按钮总数(最多 80 个)。用于告诉客户端后面最多读取多少组编号按钮。 |
功能按钮通用字段
字段说明
表中的 N 表示按钮编号,不是固定字母字段。例如 Visible0 表示 0 号按钮是否显示,tips11 表示 11 号按钮的提示文本,Width15 表示 15 号按钮的宽度。
| 字段 | 说明 |
|---|---|
| VisibleN | 该编号按钮是否显示。通常 1 为显示,0 为隐藏。 |
| wmlibN | 该按钮使用的素材库名。可填图片库名,也可配合数字图片编号使用。 |
| captionN | 按钮标题。留空时通常只显示图片。 |
| NormalColorN | 普通状态文字颜色。只在按钮带文字时有意义。 |
| HoverColorN | 鼠标移入时的文字颜色。 |
| PressColorN | 按下时的文字颜色。 |
| tipsN | 鼠标悬停提示。 |
| xN | 该按钮相对挂载点的横向坐标。 |
| yN | 该按钮相对挂载点的纵向坐标。 |
| ParentN | 按钮挂载到哪个界面区域或哪个子面板。 |
| NormalImgN | 普通状态图片。可填文件名,也可填图片编号。 |
| LightImgN | 高亮状态图片。填 0 时通常沿用普通图。 |
| PushedImgN | 按下状态图片。 |
| OpenLevelN | 按钮开放等级。 |
| WidthN | 按钮宽度。为 0 时通常随图片原始尺寸。 |
| HeightN | 按钮高度。为 0 时通常随图片原始尺寸。 |
Parent 挂载规则
ParentN 常见含义如下:
| 写法 | 说明 |
|---|---|
0 | 当前查看的角色名 |
1 | 挂到人物背包显示区域 |
2 | 挂到人物装备面板区域 |
2-1 | 装备面板 |
2-2 | 时装面板 |
2-3 | 状态面板 |
2-4 | 属性面板 |
2-5 | 称号面板 |
2-6 | 技能面板 |
2-7 | 其他面板 |
3 | 挂到商城显示区域 |
4 到 8 | 配套说明中用于怪物血条显示装备属性的相关区域 |
9 | 固定到聊天栏上方位置 |
如果某个按钮没有写 ParentN,通常表示直接按主界面默认位置显示,而不是附着到某个扩展面板。
坐标规则
x、y 以及 xN、yN 默认表示相对挂载点的偏移。配套说明还给出了通过命令动态改位置时的坐标规则:
命令格式
MAIN_FUNC_BTN_POS 按钮序号 X Y
坐标锚点规则
| 条件 | 对齐原点 | 真实偏移计算 |
|---|---|---|
X < 5000 且 Y < 5000 | 左上 | 直接使用 X、Y |
X 在 5000~15000 | 中线 | X - 10000 |
X 在 15000~20000 | 右上 | X - 20000 |
Y 在 15000~20000 | 左下 | Y - 20000 |
X、Y 都在 15000~20000 | 右下 | X - 20000、Y - 20000 |
这套规则主要用于运行时调整按钮位置。直接手改 ini 时,通常还是以当前挂载点为基准,逐步微调数值更稳妥。
图片与展示规则
图片资源说明
| 场景 | 写法 |
|---|---|
| 自定义图片文件 | wmlibN=lui,NormalImgN=BlueM2.cn_按钮.png |
| 使用现成图片库编号 | wmlibN=ui3,NormalImgN=550 |
| 高亮图沿用普通图 | LightImgN=0 |
扩展展示说明
配套说明还提到,按钮标题可通过脚本命令动态改成“文字 + 图片 + 装备展示”组合,命令格式如下:
MAIN_FUNC_BTN_CAPTION 按钮序号 标题|图库|起始图片|数量|延时|X|Y|looks|物品ID|包观/内观
其中最后一列 包观/内观 常见写法为:
| 值 | 说明 |
|---|---|
0 | 包观,常用于首饰等物品 |
1 | 内观,常用于武器、衣服、头盔、斗笠 |
如果要在按钮上直接展示装备和属性,配套说明要求除标题外,图库、起始图片、数量、延时、X、Y 这些位置都先填 0,再通过 looks 和 物品ID 读取展示内容。
注意事项
count要和实际按钮编号范围匹配,过小会导致后面的按钮根本不读取。LightImgN=0表示高亮状态直接复用普通图。WidthN、HeightN都为0时,按钮大小通常随图片本身尺寸;只有要做点击区域修正时再手动指定宽高。ParentN决定的是挂载区域,xN、yN决定的是该区域内的偏移;这两个维度不要混着调。- 同一批按钮如果图片尺寸不一致,建议先统一素材尺寸,再微调坐标,否则后面会越来越难维护。
- 如果动态调整主界面按钮,可参考 设置主界面按钮 。
使用示例
主开关按钮
[button]
LoginShowChildButton=1
wmlib=lui
caption=
tips=点击显示/隐藏功能
x=50
y=325
NormalImg=BlueM2.cn_隐藏按钮.png
LightImg=0
PushedImg=BlueM2.cn_隐藏按钮.png
count=30
普通功能按钮
Visible11=1
wmlib11=lui
caption11=
NormalColor11=$19FFF9
HoverColor11=$19FFF9
PressColor11=$19FFF9
tips11=积分商铺
x11=620
y11=30
Parent11=3
NormalImg11=BlueM2.cn_积分商铺.png
LightImg11=0
PushedImg11=BlueM2.cn_积分商铺.png
OpenLevel11=1
挂到装备面板的子按钮
Visible15=1
wmlib15=ui3
caption15=
tips15=天佑
x15=168
y15=93
Parent15=2-1
NormalImg15=550
LightImg15=551
PushedImg15=550
OpenLevel15=1
Width15=0
Height15=0
聊天栏上方按钮
Visible16=1
wmlib16=lui
caption16=
tips16=金币交易行
x16=240
y16=0
Parent16=9
NormalImg16=BlueM2.cn_金币交易行.bmp
LightImg16=0
PushedImg16=BlueM2.cn_金币交易行.bmp
OpenLevel16=1
Width16=0
Height16=0
