Skip to content

显示板模块管理接口 DisplayBoard ​

具体函数名及描述如下:

序号函数名函数描述
1SetText(...)设置显示板文本
2GetText(...)获取显示板文本
3SetImage(...)设置显示板图片
4GetImage(...)获取显示板图片
5SetNumberAttr(...)设置显示板数值属性
6GetNumberAttr(...)获取显示板数值属性
7SetColor(...)设置显示板颜色
8GetColor(...)获取显示板颜色
9SmoothChangeAttr(...)平滑修改显示板属性
10GenTxtBoardCfg(...)生成文字显示板配置
11GenImgBoardCfg(...)生成图片显示板配置
12GenProgressBoardCfg(...)生成进度条显示板配置
13GenCustomUIBoardCfg(...)生成自定义UI显示板配置
14SetVisible(...)设置显示板可见性
15CreateByPos(...)创建显示板
16ReplaceByCfg(...)替换显示板配置
17IsVisible(...)获取显示板可见性
18GetType(...)获取显示板类型
19GetInterface(...)获取显示板界面

SetText ​

  • 参数及类型:
    • playerid:number 玩家ID(0表示全局设置,非0表示指定玩家)
    • objId:number 显示板对象ID
    • text:string 文本内容
  • 返回值及类型:
  • 该方法的其他说明: 为全局或指定玩家设置显示板的文本内容
  • 具体使用案例如下:
lua
    local result = DisplayBoard:SetText(playerId, info.objId, "显示板设置的新文本")

GetText ​

  • 参数及类型:
    • playerid:number 玩家ID(必须为非0的有效玩家)
    • objId:number 显示板对象ID
  • 返回值及类型:
    • txt:string 文本内容;获取失败时返回nil
  • 该方法的其他说明: 获取指定玩家看到的显示板文本内容
  • 具体使用案例如下:
lua
local txt = DisplayBoard:GetText(playerid, objId)

SetImage ​

  • 参数及类型:
  • 返回值及类型:
  • 该方法的其他说明: 为全局或指定玩家设置显示板的图片资源
  • 具体使用案例如下:
lua
    local barProgressResult = DisplayBoard:SetImage(playerId, displayboardid, DisplayBoardImgAttr.ProgressImg, "0_10103")

    local barBackgroundResult = DisplayBoard:SetImage(playerId, displayboardid, DisplayBoardImgAttr.ProgressBackground, "0_10104")

GetImage ​

  • 参数及类型:
  • 返回值及类型:
    • bool:boolean 是否发起查询成功;查询结果通过DataSycMgr回传,失败时回传nil
  • 该方法的其他说明: 获取指定玩家看到的显示板图片资源,并通过reportid异步回传
  • 具体使用案例如下:
lua
local bool = DisplayBoard:GetImage(playerid, objId, property)

SetNumberAttr ​

  • 参数及类型:
  • 返回值及类型:
  • 该方法的其他说明: 为全局或指定玩家设置显示板的数值属性
  • 具体使用案例如下:
lua
    local widthResult = DisplayBoard:SetNumberAttr(playerId, info.objId, DisplayBoardNumAttr.Width, 12)

    local heightResult = DisplayBoard:SetNumberAttr(playerId, info.objId, DisplayBoardNumAttr.Height, 8)

    local allAlphaResult = DisplayBoard:SetNumberAttr(playerId, info.objId, DisplayBoardNumAttr.AllAlpha, 80)

    local backgroundAlphaResult = DisplayBoard:SetNumberAttr(playerId, info.objId, DisplayBoardNumAttr.BackgroundAlpha, 60)

    local lightResult = DisplayBoard:SetNumberAttr(playerId, info.objId, DisplayBoardNumAttr.Light, 1)

    local distanceResult = DisplayBoard:SetNumberAttr(playerId, info.objId, DisplayBoardNumAttr.VisibleLen, 64)

GetNumberAttr ​

  • 参数及类型:
  • 返回值及类型:
    • bool:boolean 是否发起查询成功;查询结果通过DataSycMgr回传,失败时回传nil
  • 该方法的其他说明: 获取指定玩家看到的显示板数值属性,并通过reportid异步回传
  • 具体使用案例如下:
lua
local bool = DisplayBoard:GetNumberAttr(playerid, objId, property)

SetColor ​

  • 参数及类型:
    • playerid:number 玩家ID(0表示全局设置,非0表示指定玩家)
    • objId:number 显示板对象ID
    • property:number 颜色属性(DisplayBoardColorAttr)DisplayBoardColorAttr
    • color:any颜色值(数值、十六进制字符串或RGB表)
  • 返回值及类型:
  • 该方法的其他说明: 为全局或指定玩家设置显示板的颜色属性
  • 具体使用案例如下:
lua
    local backgroundResult = DisplayBoard:SetColor(playerId, info.objId, DisplayBoardColorAttr.Background, 0x102030)

    local allResult = DisplayBoard:SetColor(playerId, info.objId, DisplayBoardColorAttr.All, 0x405060)

    local textResult = DisplayBoard:SetColor(playerId, info.objId, DisplayBoardColorAttr.Text, 0xFF0000)

GetColor ​

  • 参数及类型:
  • 返回值及类型:
    • bool:boolean 是否发起查询成功;查询结果通过DataSycMgr回传,失败时回传nil
  • 该方法的其他说明: 获取指定玩家看到的显示板颜色属性,并通过reportid异步回传
  • 具体使用案例如下:
lua
local bool = DisplayBoard:GetColor(playerid, objId, property)

SmoothChangeAttr ​

  • 参数及类型:
    • playerid:number 玩家ID(0表示全局设置,非0表示指定玩家)
    • objid:number 显示板对象ID
    • property:number 数值属性(DisplayBoardNumAttr)DisplayBoardNumAttr
    • time:number 过渡时长
    • ptype:number 变化类型(1增加、2减少、其他为设置目标值)
    • value:number 目标值或变化量
  • 返回值及类型:
    • bool:boolean 是否开始平滑修改成功
  • 该方法的其他说明: 为全局或指定玩家平滑修改显示板数值属性
  • 具体使用案例如下:
lua
    local progressResult = DisplayBoard:SmoothChangeAttr(

        playerId, info.objId, DisplayBoardNumAttr.ProgressCurVal, 2, 3, 66)

    local allAlphaResult = DisplayBoard:SmoothChangeAttr(

        playerId, info.objId, DisplayBoardNumAttr.AllAlpha, 2, 3, 80)

    local backgroundAlphaResult = DisplayBoard:SmoothChangeAttr(

        playerId, info.objId, DisplayBoardNumAttr.BackgroundAlpha, 2, 3, 60)

    local lightResult = DisplayBoard:SmoothChangeAttr(

        playerId, info.objId, DisplayBoardNumAttr.Light, 2, 3, 2)

GenTxtBoardCfg ​

  • 参数及类型:
    • txt:string 文本内容
    • autoSize:number 是否自动缩放文字(DisplayBoardAutoSize)DisplayBoardAutoSize
    • fontSize:number 字体大小
    • color:any文字颜色(数值、十六进制字符串或RGB表)
    • richText:boolean 是否启用富文本
  • 返回值及类型:
    • cfg:table 可传入CreateByPos或ReplaceByCfg的显示板配置
  • 该方法的其他说明: 生成文字显示板配置
  • 具体使用案例如下:
lua
    local cfg = DisplayBoard:GenTxtBoardCfg("DisplayBoardAutoTestText", false, 24, 0xE6F2FF, true)

GenImgBoardCfg ​

  • 参数及类型:
  • 返回值及类型:
    • cfg:table 可传入CreateByPos或ReplaceByCfg的显示板配置
  • 该方法的其他说明: 生成图片显示板配置
  • 具体使用案例如下:
lua
    local cfg = DisplayBoard:GenImgBoardCfg("0_10103", 1)

GenProgressBoardCfg ​

  • 参数及类型:
  • 返回值及类型:
    • cfg:table 可传入CreateByPos或ReplaceByCfg的显示板配置
  • 该方法的其他说明: 生成进度条显示板配置
  • 具体使用案例如下:
lua
    local barCfg = DisplayBoard:GenProgressBoardCfg(10, 100, 50, 0x00FF00, 0x202020, 0, 1)

    local ringCfg = DisplayBoard:GenProgressBoardCfg(0, 100, 50, 0x00FF00, 0x202020, 1, 2)

GenCustomUIBoardCfg ​

  • 参数及类型:
    • CustomUi:string 自定义UI工程ID
  • 返回值及类型:
    • cfg:table 可传入CreateByPos或ReplaceByCfg的显示板配置
  • 该方法的其他说明: 生成自定义UI显示板配置
  • 具体使用案例如下:
lua
    local cfg = DisplayBoard:GenCustomUIBoardCfg("DisplayBoardAutoTestUI")

SetVisible ​

  • 参数及类型:
    • playerid:number 玩家ID(0表示全局设置,非0表示指定玩家)
    • objid:number 显示板对象ID
    • visible:boolean 是否显示
  • 返回值及类型:
  • 该方法的其他说明: 为全局或指定玩家设置显示板是否可见
  • 具体使用案例如下:
lua
    local result = DisplayBoard:SetVisible(playerId, info.objId, false)

CreateByPos ​

  • 参数及类型:
    • pos:table:创建位置{x:number,y:number,z:number}
    • cfg:table 显示板配置
    • offset:table:显示板相对偏移(米){x:number,y:number,z:number}
    • rot:table:显示板相对旋转(度){x:number,y:number,z:number}
    • absoluteScale:table:显示板绝对世界缩放{x:number,y:number,z:number}
  • 返回值及类型:
    • objId:number 创建的显示板对象ID;创建或应用配置失败时返回nil
  • 该方法的其他说明: 在指定位置创建显示板
  • 具体使用案例如下:
lua
    --cfg 是GenXXX相关的接口的返回值 比如 local cfg = DisplayBoard:GenTxtBoardCfg()

    local objId = DisplayBoard:CreateByPos(

        {x = x + 2, y = y + 1, z = z + 2}, cfg,

        {x = 0, y = 0, z = 0}, {x = 1, y = 1, z = 1})

ReplaceByCfg ​

  • 参数及类型:
    • playerid:number 玩家ID(0表示全局设置,非0表示指定玩家)
    • objId:number 显示板对象ID
    • cfg:table 显示板配置
  • 返回值及类型:
  • 该方法的其他说明: 为全局或指定玩家替换显示板的内容与属性
  • 具体使用案例如下:
lua
    local result = DisplayBoard:ReplaceByCfg(

        playerId, targetobjid, DisplayBoard:GenTxtBoardCfg("DisplayBoardReplacedText", false, 24, 0xFFFFFF, false))

IsVisible ​

  • 参数及类型:
    • playerid:number 玩家ID(必须为非0的有效玩家)
    • objid:number 显示板对象ID
  • 返回值及类型:
    • bool:boolean 是否发起查询成功;查询结果通过DataSycMgr回传,失败时回传nil
  • 该方法的其他说明: 获取指定玩家看到的显示板当前可见状态
  • 具体使用案例如下:
lua
local bool = DisplayBoard:IsVisible(playerid, objid)

GetType ​

  • 参数及类型:
    • playerid:number 玩家ID(必须为非0的有效玩家)
    • objid:number 显示板对象ID
  • 返回值及类型:
    • bool:boolean 是否发起查询成功;查询结果通过DataSycMgr回传,失败时回传nil
  • 该方法的其他说明: 获取指定玩家看到的显示板内容类型
  • 具体使用案例如下:
lua
local bool = DisplayBoard:GetType(playerid, objid)

GetInterface ​

  • 参数及类型:
    • playerid:number 玩家ID(必须为非0的有效玩家)
    • objid:number 显示板对象ID
  • 返回值及类型:
    • bool:boolean 是否发起查询成功;查询结果通过DataSycMgr回传,失败时回传nil
  • 该方法的其他说明: 获取指定玩家看到的显示板界面
  • 具体使用案例如下:
lua
local bool = DisplayBoard:GetInterface(playerid, objid)