参考 › 函数参考 › Functions

Functions.presentation.playerize

公共

调用方式

Functions.presentation.playerize(unit, player, nonplayer)

将其记录为名为 Functions.presentation.playerize 的依赖项(接受自动补全即可完成),然后按该名称调用。

作用

仅当单位标识为字面上的 player 时才选择所提供的玩家值;其他所有单位都会选择非玩家值。选中的 false 和 nil 值会被保留。

参数

名称类型作用
unitstring | nil要与字面 player 标识进行比较的单位标识。
playerany单位为 player 时返回的值。
nonplayerany对其他所有单位返回的值。

返回值

1any所选的值,包括 false 或 nil。

版本

内置辅助函数在每个版本上都会注册。不同的是它们读取的游戏 API;某个 API 缺失时,辅助函数会改用后备方案,或返回 nil 并附上原因。

它不直接读取任何游戏 API。

插件如何调用它

  • 可攻击 (print)
    return string.format(Functions.presentation.playerize(value.unit, L["%s {{!are|are not}} attackable"], L["%s {{!is|is not}} attackable"]), Functions.presentation.nullable(addon.units[value.unit], L["<unit>"]))
  • 存在增益效果 (print)
    return AuraLiteral.phrase(Functions.presentation.playerize(value.unit, L["{unit} {{!have|do not have}} {aura}"], L["{unit} {{!has|does not have}} {aura}"]), {
  • 增益效果剩余时间 (print)
    return AuraSummary.phrase(Functions.presentation.playerize(value.unit, L["{unit} {{!have|do not have}} {aura} where {remaining} {comparison} {duration}"], L["{unit} {{!has|does not have}} {aura} where {remaining} {comparison} {duration}"]), {
  • 施法中 (print)
    return string.format(Functions.presentation.playerize(value.unit, L["%s {{!are|are not}} currently casting"], L["%s {{!is|is not}} currently casting"]),
  • 施放特定法术 (print)
    return LiteralSummary.phrase(Functions.presentation.playerize(value.unit, L["{unit} {{!are|are not}} currently casting {spell}"], L["{unit} {{!is|is not}} currently casting {spell}"]), {
  • 引导中 (print)
    return string.format(Functions.presentation.playerize(value.unit, L["%s {{!are|are not}} currently channeling"], L["%s {{!is|is not}} currently channeling"]),
  • 引导特定法术 (print)
    return LiteralSummary.phrase(Functions.presentation.playerize(value.unit, L["{unit} {{!are|are not}} currently channeling {spell}"], L["{unit} {{!is|is not}} currently channeling {spell}"]), {
  • 战斗中 (print)
    return string.format(Functions.presentation.playerize(value.unit, L["%s {{!are|are not}} in combat"], L["%s {{!is|is not}} in combat"]),

以及另外 13 处: 战斗动作历史 (print), 战斗动作历史时间 (print), 存在减益效果 (print), 减益效果剩余时间 (print), 存在某类减益效果 (print), 距离 (print), 敌对 (print), 免疫 (print), 是同一单位 (print), 等级 (print), 团队标记 (print), PvP 状态 (print), 拥有可偷取的增益效果 (print)

源码

Functions/presentation.lua,第 56 行。在游戏中为只读;“复制”会生成一份可编辑的副本。

Functions.presentation.playerize(unit, player, nonplayer)
    if (unit == "player") then
        return player
    else
        return nonplayer
    end

返回函数参考