【天龙八部】金钱显示转换脚本函数

功能介绍:

这个函数的作用是根据传入的金额(money)将其分解为金币、银币和铜币的形式,并按照特定格式返回一个字符串。

 

具体功能:

将输入的 money 参数分解成铜币、银币和金币:

 

铜币 (Bronze) 是 money 除以 100 的余数。

银币 (Silver) 是 money 除以 10,000 后的结果,再减去铜币部分,最终除以 100。

金币 (Gold) 是 money 减去铜币和银币部分后,再除以 10,000。

根据分解出的金币、银币和铜币的不同组合,生成一个特定格式的字符串:

 

如果金币、银币和铜币都大于零,会将其按格式 金币#-02银币#-03铜币#-04 输出。

如果只有金币和银币,或者只有金币和铜币等情况,格式会相应调整,去除没有值的部分。

结果字符串返回的格式使用了特殊的标记(如 #-02、#-03、#-04),是用于显示标记不同面额货币的界面样式。

 

显示效果:

 

function MoneyDisplayChange( sceneId, selfId, money )

    Moneydisplay = ""

    Bronze = mod(money,100)

    Silver = (mod(money,10000) - Bronze)/100

    Gold = (money - Bronze - Silver * 100)/10000

    if Gold ~= 0 and Silver ~= 0 and Bronze ~= 0 then

        Moneydisplay = ""..Gold.."#-02"..Silver.."#-03"..Bronze.."#-04"

    elseif Gold ~= 0 and Silver ~= 0 and Bronze == 0 then

        Moneydisplay = ""..Gold.."#-02"..Silver.."#-03"

    elseif Gold ~= 0 and Silver == 0 and Bronze ~= 0 then

        Moneydisplay = ""..Gold.."#-02"..Bronze.."#-04"

    elseif Gold ~= 0 and Silver == 0 and Bronze == 0 then

        Moneydisplay = ""..Gold.."#-02"

    elseif Gold == 0 and Silver ~= 0 and Bronze ~= 0 then

        Moneydisplay = ""..Silver.."#-03"..Bronze.."#-04"

    elseif Gold == 0 and Silver ~= 0 and Bronze == 0 then

        Moneydisplay = ""..Silver.."#-03"

    elseif Gold == 0 and Silver == 0 and Bronze ~= 0 then

        Moneydisplay = ""..Bronze.."#-04"

    elseif Gold == 0 and Silver == 0 and Bronze == 0 then

        Moneydisplay = "0#-04"

    end

    return Moneydisplay

end