Dream Mod 3.0Dream Mod 3.0
首页
快速开始
资源库
首页
快速开始
资源库
  • 进度

    • 更新日志
  • 指南

    • 快速上手
    • App.lua
    • Server.lua
    • 地图
    • 角色
    • 道具
    • 技能
    • 状态
    • 窗口
    • 成长
    • DmTcpClient
    • WebSocketClient
    • SqliteDB
    • 皮肤
    • 自定义组件
  • Api

    • 引擎
    • 地图
    • 角色
    • 道具
    • 技能
    • 状态
    • 窗口
    • 自定义组件
    • 音乐
    • 缓动
    • 全局
  • 控件

    • 标签
    • 按钮
    • 图片框
    • 动画框
    • 模型框
    • 文本框
    • 进度条
    • 技能格子
    • 快捷格子
    • 包裹格子
    • 道具格子
    • 角色框
    • 选择框
    • 选择夹
    • 容器
    • 地图框
    • 滑块条
    • 滚动条
    • 组合框
    • 输入框
    • 列表框
  • 组件

    • 文本
    • 艺术字
    • 精灵
    • 矩形
    • 圆形
    • 动画
    • 模型
  • 其他

    • 丰富文本
    • 模板变量
    • 资源格式
    • 游戏盒子
    • 资源列表
  • 自定义功能

    • 战斗血液效果
    • 地图天气
  • 丰富文本

    介绍

    丰富文本是一种标记文本格式,使用它可以快捷的完成一些高级文本效果,例如:图文混排,超链接,气泡提示等。

    颜色

    快速颜色标签
    说明:格式为#标记,改变标记后的文字颜色,直到下一个#颜色标签出现。
    标记 颜色效果
    #W 白色
    #R 红色
    #Y 黄色
    #B 蓝色
    #G 绿色
    #H 灰色
    #L 浅蓝

    示例图片

    引擎.信息框("#L不要杀我!#G我是帮你测试#R接口的#W!")
    
    

    #c

    #c
    说明:自定义颜色标签。可以填写十六进制,也可以使用RGBA设置。

    示例图片

    引擎.信息框("这是#c(0xF4C150FF)铁匠#W打造的一把#c(200,0,0,200)终极武器!")
    
    

    #p

    #p
    说明:图片显示标签。 图片标识支持图集写法:图集名|帧标识

    示例图片

    #p(图片标识)

    引擎.信息框("这件#p(图标_炼狱)#W是铁匠打造的一把#c(200,200,0,255)终极武器!")
    
    

    示例图片

    #p(图片标识,偏移x,偏移y)

    引擎.信息框("这件#p(图标_炼狱,-4,8)#W是铁匠打造的一把#c(200,200,0,255)终极武器!")
    
    

    示例图片

    #p(图片标识,偏移x,偏移y,区域宽度,区域高度)

    在一个指定区域内让图片居中并且自适应缩放显示。
    引擎.信息框("这件#p(道具底图,0,8)#p(图标_炼狱,-48,8,46,46)#W是铁匠打造的一把#c(200,200,0,255)终极武器!")
    
    

    #a

    #a
    说明:动画标签。

    示例图片

    #a(动画标识,动作标识,缩放[可选],宽度[可选],高度[可选],偏移x[可选],偏移y[可选],锚点x[可选],锚点y[可选])

    动画默认没有宽高不占用区域,可以手动指定宽度,高度占位。
    引擎.信息框("这件#p(默认皮肤|格子底图,0,8)#p(图集_道具|00009,-42,8,42,42)#a(格子动画包,稀有,1.2,24,0,-22,29)是铁匠打造的一把#c(200,200,0,255)终极武器!")
    
    

    #f

    #f
    说明:改变字体。

    示例图片

    引擎.信息框("这把#G#f(宋体14粗)炼狱#f(宋体12)#W是#f(宋体14粗)铁匠#f(宋体12)#W打造的一把#c(200,200,0,255)终极武器!")
    
    

    #md #rt

    #md #rt
    说明:居中对齐 右对齐。

    示例图片

    #md 居中对齐  #rt 右对齐

    #md(指定宽度)居中对齐  #rt(指定宽度)右对齐 <=0 表示气泡右边距

    如果不指定宽度,行宽度以所在段落文字中最长一行为标准。
    引擎.信息框(
    
    [[
    
    1234567891234567891234567895678912345678
    
    #G#rt我是右对齐的一行
    
    #R#md我是居中的一行
    
    #W123456789123456789123456789
    
    #Y#f(宋体14粗)#md完美的疾风炼狱
    
    #md#p(道具底图,-21,0)#p(图标_炼狱,-48,0,46,46)
    
    #f(宋体12)#W#md攻击:5-30
    
    #W#md重量:8
    
    #G#md攻击速度:+3
    
    #W#md价格:3000金币
    
    ]]
    
    )
    
    

    #bg

    #bg
    说明:自定义背景色。

    示例图片

    引擎.信息框(
    
    [[
    
    这是#bg(0,0,0,200)#c(0xF4C150FF)铁匠#bg(0)#W打造的一把#bg(0x0000FFFF)#c(0,240,0,240)终极武器#bg(0)!
    
    
    
    #md#bg(0,0,240,240)#W我是居中的一行
    
    ]]
    
    )
    
    

    #z

    #z
    说明:插入占位符。

    示例图片

    #z(宽度,高度,模式[可选],背景色[可选],边框宽[可选],边框色[可选])

    插入占位符,可以为负数,可产生分段对齐效果。

    模式:0 影响全局段落 1 只影响当前位置 2 不影响任何 默认为0

    使用背景色和边框色时,颜色值只能为十进制或十六进制
    例:#z(158,100,1,0xDDDDDD66,-1,0xDDDD00FF)

    绘制模式时,宽度设置-1表示自适应气泡宽度

    引擎.信息框(
    
    [[
    
    #z(32,32,2,0x00000066,-1,0xDDDD00FF)#z(4,4)#z(24,24,2,0x00ee0066)#z(34,16,0)这是一个#c(0xF4C150FF)丰富文本框
    
    #z(0,0)
    
    #z(200,1,2,0xeeeeeeff)
    
    #z(0,0)
    
    #W这是一些极品装备:
    
    #z(0,16,1)
    
    #G#f(宋体14粗)炼狱#f(宋体12)
    
    #p(道具底图)#z(-48,0,1)#p(图标_炼狱,0,0,46,46)#z(48,-42)
    
    #W攻击:#c(200,200,0,200)10-20
    
    #W防御:#c(200,200,0,200)10-20
    
    #z(0,16,1)
    
    #z(0,0)
    
    #L#f(宋体14粗)铜锤#f(宋体12)#z(10,12)
    
    #W攻击:#c(200,200,0,200)10-20
    
    #W防御:#c(200,200,0,200)10-20
    
    ]]
    
    )
    
    
    
    

    #br

    #br
    说明:设置自动换行的宽度。

    示例图片

    引擎.信息框("#br(260)《海燕》是高尔基1901年3月写的一篇带有象征意义的短篇小说《春天的旋律》的末尾一章。#br(160)由于19世纪欧洲爆发的工业危机很快就蔓延到了俄国,在1900年到1903年的危机年代里,俄国倒闭了3000多家大小企业,被开除的工人达10万多人,#br(60)再加上沙皇统治日趋黑暗,人民群众无法忍受,反抗情绪日益高涨,革命斗争蓬勃兴起。#br(260)俄国工人运动开始从经济罢工转到政治罢工,转到游行示威,提出关于民主自由的政治要求,提出“打倒沙皇专制”的政治口号,动摇着沙皇统治的根基。")
    
    
    
    

    #@链接

    #@
    说明:超链接效果,可以触发 热点 和 按下 事件。

    示例图片

    #@触发标识@链接样式@

    链接样式支持文本,支持图片(鼠标焦点自带高亮效果)。

    触发标识如果中间有逗号分隔,回调事件中的参数会是一个被分割后的数组。
    例:#@小贩,购买,180@购买八十只美羊羊@ 回调事件中会接收到 {"小贩","购买","180"}

    触发标识如果中间有|分隔,可以设置链接样式。|类型,默认色,点燃色,按下色
    类型:0:下划线 1:突出背景 2:边框包围
    例:#@屠龙刀|2,0xFFFFFFFF,0x00FF0066,0x000000FF@屠龙刀@

    引擎.信息框(
    
    [[#W你好~吃了吗?#L不要杀我!#G我是帮你测试#R接口的#W
    
    #md#Y#@回去@回上个地图@  #Y#@包裹空位检测@取包裹空位@
    
    #z(0,16,1)#md#Y#@清空@一键清空包裹物品@  #Y#@小贩,购买,180@购买八十只美羊羊@]]
    
    )
    
    

    提示

    超链接事件会统一回调到App.lua的系统事件中的 超链接

    #item

    #item
    说明:道具显示标签。

    示例图片

    #item(道具名称,道具数量[可选])

    填写的是道具组件的名称,显示的气泡内容是道具组件中的气泡提示

    背景框是App.lua中的道具格子底图

    Heimei-EG-lua ver-2 起,静态写法和原行为保持不变。需要按一份运行时道具信息渲染图标、数量和气泡时,请调用 引擎.富文本道具 生成标签后拼入富文本。Lua 的 table 不能直接写入字符串,所以不要写成 #item(钢手镯,1,nil,nil,道具信息)。
    local 道具信息 = {
        数量 = 1,
        图标 = '自定义钢手镯图标',
        显示名 = '极品钢手镯',
        攻击 = 12,
    }
    
    文本框.内容 = '获得道具:' .. 引擎.富文本道具('钢手镯', 1, nil, nil, 道具信息)
    

    第五个参数存在且为 table 时,引擎按该信息创建一份仅供富文本显示的道具快照;热点气泡复用 App.lua 的道具气泡提示事件。没有传 table 且没有指定有效第六参数时,返回的仍是普通静态#item标签。

    Heimei-EG-lua ver-3 起,动态道具快照中的格子效果也会参与渲染,层级与道具格保持为“道具格子底图 → 格子效果 → 道具图标 → 数量”。格子效果支持道具模块约定的静态资源、动画,动作,缩放,速度资源和组件配置 table。动态标签不是实体格子,因此拿起显示只保留为配置数据,不产生拿起/拖放行为。

    Heimei-EG-lua ver-4 修复 ver-3 在实机绘制格子效果时出现的global 'SystemDat'为空错误。列表框和普通富文本中的调用方式不变,仍传入引擎.富文本道具的返回值。

    Heimei-EG-lua ver-5 起,可以传第六个参数格子大小:

    引擎.富文本道具(道具.名称, 道具.数量, nil, nil, 道具, 34)
    

    34表示按 34×34 的虚拟格子测量、排版和判断热点。Heimei-EG-lua ver-7 起,效果绘制直接沿用原生道具格规则:34×34 素材保持原尺寸,小于格子的图标不放大,只有超出 34×34 的静态素材才等比缩小;效果偏移和动画配置缩放不再按系统底图尺寸二次换算。列表框原有的单元格留白、行高和滚动裁剪仍生效,建议行高至少为格子大小加 4。

    格子大小接受不小于 1 的有限数值,小数向下取整;不传、0、负数、字符串等无效值保留自动尺寸。传有效尺寸但不传道具信息时,用模板创建显示快照。常规无旋转、正缩放的静态精灵和帧动画会在虚拟格子边缘裁剪;旋转、翻转或非批绘制的复杂组件本版沿用原生行为,不承诺完整格子裁剪。

    不论是否传第六参数,富文本道具均独立持有动画节点和播放状态;不再复用背包、装备栏或其他表项的公共动画节点。裁剪适配器只属于富文本容器,不修改共享资源帧或缓存节点的原生方法。本版不调整动画混合显示规则;隔离字节码测试通过,实际游戏画面等待用户测试。

    有效第六参数的底图由虚拟格子代理统一绘制;未传尺寸时保持各原生绘制入口原有的底图策略(列表框旧路径不额外补画底图)。

    Heimei-EG-lua ver-6 修复 ver-5 在设置格子大小后,首帧效果绘制可能出现 stack index 3, expected string, received table 并退出的问题。内部裁剪的纹理矩形改为 Lua 整数像素,按完整纹素向内取整并同步屏幕位置;不足一个完整纹素的片段不绘制。第六参数、虚拟格子范围、动画独立性和热点逻辑不变,调用代码无需修改。已用用户提供的 App.exe 在独立离线副本完成前后版本对照;完整前端仍需复测。

    Heimei-EG-lua ver-7 修正虚拟格子曾错误引用系统底图实际尺寸的问题。道具的格子效果本身已包含品质底图、主图标和其他效果时,不再额外绘制一次道具.图标;因此 18×16 的六角戒指保持 18×16,34×34 品质底图保持 34×34,36×29 的素材只按宽度超限等比缩小。最终绘制、热点和气泡仍统一受第六参数的虚拟格子矩形约束,调用方式不变。

    在列表框单元格中同样直接拼入助手的返回值:

    local 道具 = 引擎.窗口.包裹窗口.角色包裹1.取出物品(1, 6)
    列表框.加入项目({
        '其他富文本',
        引擎.富文本道具(道具.名称, 1, nil, nil, 道具),
        1,
        '删除',
    })
    
    引擎.信息框("这是铁匠给你的奖励#z(0,8,1) #item(八荒刀)#item(金币100,50)#item(金创药小,4)#z(0,-8,1) 收下吧!")
    
    

    提示

    下面是一些常用示例

    #z(0,0)#z(4,4)#z(110,20,2,0x00000066,-1,0xDDDDDD66)#z(116,0)#z(110,20,2,0x00000066,-1,0xDDDDDD66)\n#z(8,-24)#W生命\n#z(0,-28)\n#G#rt(100)111\n#z(0,0)#z(120,-28)#W法力\n#z(0,-28)\n#G#rt(100)112
    
    #z(0,0)#z(4,4)#z(110,20,2,0x00000066,-1,0xDDDDDD66)#z(116,0)#z(110,20,2,0x00000066,-1,0xDDDDDD66)\n#z(8,-24)#W伤害\n#z(0,-28)\n#G#rt(100)22222\n#z(0,0)#z(120,-28)#W护甲\n#z(0,-28)\n#G#rt(100)112555454
    
    #z(0,0)#z(4,4)#z(110,20,2,0x00000066,-1,0xDDDDDD66)#z(116,0)#z(110,20,2,0x00000066,-1,0xDDDDDD66)\n#z(8,-24)#W命中\n#z(0,-28)\n#G#rt(100)33\n#z(0,0)#z(120,-28)#W躲避\n#z(0,-28)\n#G#rt(100)1125
    

    更新记录

    日期版本简易记录
    2026-09-10Heimei-EG-lua ver-2新增由引擎.富文本道具生成的运行时道具标签;保留原#item语法和静态行为。
    2026-09-10Heimei-EG-lua ver-3修复动态#item悬停二次解析为空,并按道具格层级渲染快照中的格子效果。
    2026-09-10Heimei-EG-lua ver-4修复动态#item格子效果代理的帧数据捕获错误;调用、层级和热点气泡规则不变。
    2026-09-10Heimei-EG-lua ver-5新增第六参数格子大小,统一测量/绘制/热点和常规帧裁剪;隔离富文本道具动画节点,修复跨容器位置串扰。混合显示未调整,实机待测。
    2026-09-10Heimei-EG-lua ver-6修复固定格子效果裁剪向原生批绘制传入 float 纹理矩形导致的退出;改为整数像素裁剪,六参数调用保持不变。
    2026-09-10Heimei-EG-lua ver-7改为原生道具格的素材缩放规则,移除按系统底图比例缩放及格子效果后的重复主图标绘制;虚拟格子继续约束排版、裁剪、热点和气泡。