找回密码
 注册
X系列官方授权正版
搜索
查看: 1275|回复: 0

[原创] [X3R][类库]positional format

[复制链接]
发表于 2013-8-28 13:48:02 | 显示全部楼层 |阅读模式
本帖最后由 gqqnb 于 2013-9-3 18:57 编辑

这个类库提供一个函数positional format。它跟C#/.net里的string.Format差不多,可以格式化带有{n}标记的字符串。positional format比原生函数sprintf更强大,在制作支持全球化和本地化的脚本时很有帮助。

用原生的sprintf要这么写代码:
  1. $message1 = sprintf: fmt='%s 攻击 %s', $attacker, [playership], null, null, null
复制代码
第一个%s被$attack替换,第二个%s被[playership]替换。

用positional format则是这样的:
  1. $message2=  null-> call script 'positional format' :fmt='{0} 攻击 {1}', obj0=$attacker, obj1=[playership], obj2=null, obj3=null, obj4=null
复制代码
{0}被$attack替换,{1}被[playership]替换。

实际上,positional format要求的参数如下

•0: pageid , Number , 'pageid'
•1: textid , Number , 'textid'
•2: obj0 , Value , '{0}'
•3: obj1 , Value , '{1}'
•4: obj2 , Value , '{2}'
•5: obj3 , Value , '{3}'
•6: obj4 , Value , '{4}'

它像<RetVar> = sprintf: pageid = <Var/Number> textid = <Var/Number>, <Value>, <Value>, <Value>,<Value>, <Value>一样从外部读取语言文件。

下载
版本:0 测试版
发布日期:2013年8月22日
作者:gqqnbig
兼容性:兼容X3重聚,其他未测试(欢迎大家测试与反馈)

下载:本地,Box.com, Dropbox

技术支持6个月,至2014年2月1日结束。

安装与卸载
需要先安装X-Universe Plugin Manager Lite,然后双击positioal format-V0-28.8.2013.spk即可安装。

要卸载或暂时禁用此脚本,在X-Universe Plugin Manager Lite按Uninstall(卸载)或Disable(禁用)。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

Archiver|手机版|小黑屋|DeepTimes.NET 太空游戏站