数组是《钢铁雄心IV》中用以存储变量的方式,变量既可以是
数组在
指令(Effects)
File:Ambox outdated info.png | 这部分内容可能已不适合当前版本,最后更新于1.10。 |
添加到数组(add_to_array)
File:Ambox outdated info.png | 这部分内容可能已不适合当前版本,最后更新于1.10。 |
add_to_array = { array = <name> value = <value> index = <index> }
每当有一个变量出现,就会创造一个对应的数组对其进行储存。
<name>是数组的名称,也是指令和触发器调用它的依据。
<value>是指数组的数据内容,它既可以是数字形式的(如1 或 var:my_num),也可以是作用域形式的(如GER 或 var:my_scope)。当然这些都是选填内容,如果不填则会将当前作用域填入此处。
<index>指数据内容应当被插入数组的哪个位置。
这部分的简便写法是:add_to_array = { <name> = <value> }
从数组中移除(remove_from_array)
File:Ambox outdated info.png | 这部分内容可能已不适合当前版本,最后更新于1.10。 |
remove_from_array = { array = <name> value = <value> index = <index> }
<name>是想要进行数据内容移除操作的数组名称
<value>是想要移除的数据内容
<index>指移除操作所选择的位置
如果value和index值都未定义或未分配内容,那么最后一个数据内容会被清除
这部分的简便写法是:remove_from_array = { <name> = <value> }
清空数组(clear_array)
File:Ambox outdated info.png | 这部分内容可能已不适合当前版本,最后更新于1.10。 |
clear_array = <name>
清除指定数组中所有数据内容
重置数组规模(resize_array)
File:Ambox outdated info.png | 这部分内容可能已不适合当前版本,最后更新于1.10。 |
resize_array = { array = <name> value = <value> size = <int> }
重置特定数组规模
如果扩大已经声明过数据内容类型的数组规模,那么多出的位置将以空变量填满,如果没有声明过则缺省值为0。
size属性指定了数组的新大小,如果缩小数组,则删除元素,如果扩大数组,则增加指定值的新元素。
这部分的简便写法是: resize_array = { <name> = <size> }
while循环指令(while_loop_effect)
File:Ambox outdated info.png | 这部分内容可能已不适合当前版本,最后更新于1.10。 |
while_loop_effect = { break = <string> limit = { <triggers> } <effects> }
进行循环操作,只要{ <triggers> }为真时,就执行指令
break后应填入一个能够打破循环、结束迭代的非零量,这个量将被声明为break
。
在此循环中可以写入指令执行某些操作,所用的数据信息应均在array内。
for each循环指令(for_each_loop)
File:Ambox outdated info.png | 这部分内容可能已不适合当前版本,最后更新于1.10。 |
for_each_loop = { array = <name> value = <string> index = <string> break = <string> <effects> }
对特定的数组中的变量进行循环操作。
value后应分配一个临时变量,用以存储打破循环时的数据内容,缺省值为v
。
index后应分配一个临时变量,用以存储打破循环时的位置,缺省值为i
。
break后应分配一个非零临时变量用以打破循环,结束迭代,缺省值为break
。
在此循环中可以写入指令执行某些操作,所用的数据信息应均在array内。
for each作用域循环指令(for_each_scope_loop)
File:Ambox outdated info.png | 这部分内容可能已不适合当前版本,最后更新于1.10。 |
for_each_scope_loop = { array = <name> break = <string> <effects> }
对特定的数组中的变量进行循环操作,并在每次迭代时将变量改为当前作用域。
break后应分配一个非零临时变量用以打破循环,结束迭代,缺省值为break
。
在此循环中可以写入指令执行某些操作,所用的数据信息应均在array内。
随机作用域指令(random_scope_in_array)
File:Ambox outdated info.png | 这部分内容可能已不适合当前版本,最后更新于1.10。 |
random_scope_in_array = { array = <name> break = <string> limit = { <triggers> } <effects> }
对特定的数组中的变量进行循环操作,并在每次迭代时将变量改为同数组内所列的非当前作用域(意即应在array内选择一个与当前作用域不同的变量写入)。
break后应分配一个非零临时变量用以打破循环,结束迭代,缺省值为break
。
在此循环中可以写入指令执行某些操作,所用的数据内容应均在array内。
添加到临时数组(add_to_temp_array)
File:Ambox outdated info.png | 这部分内容可能已不适合当前版本,最后更新于1.10。 |
与add_to_array
代码相同,但存储对象为临时数组,此数组在脚本结束后就会消失。
从数组中移除(remove_from_temp_array)
File:Ambox outdated info.png | 这部分内容可能已不适合当前版本,最后更新于1.10。 |
与remove_from_array
代码相同,但存储对象为临时数组,此数组在脚本结束后就会消失。
清空临时数组(clear_temp_array)
File:Ambox outdated info.png | 这部分内容可能已不适合当前版本,最后更新于1.10。 |
与clear_array
代码相同,但存储对象为临时数组,此数组在脚本结束后就会消失。
重置临时数组规模(resize_temp_array)
File:Ambox outdated info.png | 这部分内容可能已不适合当前版本,最后更新于1.10。 |
与resize_array
代码相同,但存储对象为临时数组,此数组在脚本结束后就会消失。
触发器(Triggers)
File:Ambox outdated info.png | 这部分内容可能已不适合当前版本,最后更新于1.10。 |
数组内匹配(is_in_array)
File:Ambox outdated info.png | 这部分内容可能已不适合当前版本,最后更新于1.10。 |
is_in_array = { array = <name> value = <value> }
检测指定数据内容是否在指定数组内
或逻辑触发(any_of)
File:Ambox outdated info.png | 这部分内容可能已不适合当前版本,最后更新于1.10。 |
any_of = { array = <name> value = <string> index = <string> <triggers> }
对指定数组进行循环操作,将<triggers>与当前变量进行比较,如果任一返回值为真则触发器输出为真,否则为假。
与逻辑触发(all_of)
File:Ambox outdated info.png | 这部分内容可能已不适合当前版本,最后更新于1.10。 |
all_of = { array = <name> value = <string> index = <string> <triggers> }
对指定数组进行循环操作,将<triggers>与当前变量进行比较,如果任一返回值为假则触发器输出为假,否则为真。
作用域或逻辑触发(any_of_scopes)
File:Ambox outdated info.png | 这部分内容可能已不适合当前版本,最后更新于1.10。 |
any_of_scopes = { array = <name> <triggers> }
对指定数组进行循环操作,将<triggers>与当前作用域进行比较,如果任一返回值为真则触发器输出为真,否则为假。
作用域与逻辑触发(all_of_scopes)
File:Ambox outdated info.png | 这部分内容可能已不适合当前版本,最后更新于1.10。 |
all_of_scopes = { array = <name> <triggers> }
对指定数组进行循环操作,将<triggers>与当前作用域进行比较,如果任一返回值为假则触发器输出为假,否则为真。
附加信息
File:Ambox outdated info.png | 这部分内容可能已不适合当前版本,最后更新于1.10。 |
你可以将某数组内变量的数目输出出来,只需要这么写:set_variable = { var_name = array_name^num }
。
Examples
File:Ambox outdated info.png | 这部分内容可能已不适合当前版本,最后更新于1.10。 |
文件 | 效果 • 条件 • 定义 • 修正 • 修正列表 • 作用域 • 本地化 • on action • 数据结构 (标记, 临时标记, 国家别名, 变量, 数组) |
脚本 | 成就修改 • AI修改 • AI focuses • 自治领修改 • 权力平衡修改 • 剧本/标签 (游戏规则)• 建筑修改 • 人物修改 • 修饰性TAG修改 • 国家创建 • 军队修改 • 决议制作 • 装备修改 • 事件修改 • Idea修改 • 意识形态修改 • 军工商修改 • 国策制作 • 资源修改 • Scripted GUI • 科技制作 • 单位修改 |
地图 | 地图 • 省份 • 补给区域 • 战略区域 |
图形图像 | 界面 • 图形资产 • 实体模型 • 后期特效 • 离子效果 • 字体 |
装饰性 | 肖像 • 命名列表 • 音乐 • 音效 |
其他 | 控制台指令 • 故障排除 • 模组结构 • 成就代码分析 • Mod相关 • Nudger修改 |