跳转到内容
主菜单
主菜单
移至侧栏
隐藏
导航
首页
最近更改
随机页面
帮助
RustedWarfare Wiki
搜索
搜索
创建账号
登录
个人工具
创建账号
登录
查看“变量”的源代码
页面
讨论
大陆简体
阅读
查看源代码
查看历史
工具
工具
移至侧栏
隐藏
操作
阅读
查看源代码
查看历史
常规
链入页面
相关更改
特殊页面
页面信息
链接
RustedWiki QQ群
←
变量
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
{{InfoBox |image=builder.png |border= rgb(250,10,10) |type= |info='''该模板需要改进,请勿模仿此页面创立新页面'''}} '''变量'''是铁锈中一种数据存储方式,于[[1.14]]被加入。 不同于[[自定义内存|内存]],变量的值是固定的,在ini中定义后无法修改。 == 定义 == 在非注释节,使用<code>@global 名称:值</code>可以定义'''全局变量''',不过请注意它在复制时会出现bug,除一些特定节,因此请按照规范将它放在core节上。<br><code>@define 名称:值</code>定义'''局部变量'''。 {{折叠|变量定义例子|<pre> [core] @global a:100 @global b:qwerty [action_x] @global c:10.0 </pre>}} == 类型 == 铁锈中,变量包含'''全局变量'''和'''局部变量'''两种,其作用域不同。全局变量在整个ini中都能进行引用,而局部变量只能在定义该变量的节引用。同一个单位中不同的节可以定义名称相同的局部变量,而互不影响。当全局变量和局部变量重名时,局部变量优先级更高,能够在该局部变量所处的节覆盖全局变量。'''变量本身并不存在“数据结构类型”,本质上变量只是一个替换工具,在加载时引用的变量被替换为定义的值。''' {{折叠|局部变量和全局变量例子|<pre> [core] @global a:10 @global b:20 [action_a] @define a:15 #此时 ${a} 为 15 [action_b] #此时 ${a} 为 10 #此时 ${b} 为20 </pre>}} == 引用 == 通过<code>${变量名}</code>可以引用变量。任何代码的值中都可以进行变量引用,但是必须保证该代码值的类型在引用后不会错误。<code>%{}</code>中也可以嵌套变量引用。 通过${core.price},可以引用core节的price键,若节为section则只向自己,并不是所有的键都可以引用,如:@开头的无法引用。 <br>引用支持多个值进行替换,不过值必须满足匹配式[aA-zZ_][aA0-zZ9_.]*,且不能为运算函数。 <br>请注意${\s*(.*)\s*}是它的有效范围,不要在外圈填充空格。{{折叠|变量引用例子|<pre> [core] price:6 [action_a] pos:1 @define str1:测 @define str2:试 #${core.price}==6 #${section.pos}==1 text:${str1}${str2} #此时text的值为“测试” #${str1 str2}==“测 试” </pre>}} ==数学运算== ${}支持使用double进行以下数学运算,不过它存在运算优先级问题,建议运算式加上()。 #+-*/^ #sqrt() #int() *rad/弧度 #sin() #cos() *例子 #${1+(2*2)}==5 #${sprt(4)}==2 #a=1,b=2 ${a+b}==3 请注意如果你不想进行数学运算,那么替换式不要包含“+-*/^()”其中的任何一个。 [[分类:模组制作]] [[分类:急需改进的页面]]
本页使用的模板:
模板:InfoBox
(
查看源代码
)
模板:折叠
(
查看源代码
)
返回
变量
。
开关有限宽度模式