數組是《鋼鐵雄心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> }
一旦將元素添加到數組中,就會創建一個數組。
array 是數組的名稱,也是指令和觸發器調用它的依據。
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> }
array 是將被移除數據的數組名稱。
value 是想要移除的數據內容。
index 指移除操作所選擇的開始位置。
如果value和index都未定義,那麼array只有最後一個元素會被移除。
這部分的簡便寫法是: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> }
重置特定數組array的規模(size)。
如果擴大現有數組的規模,多出來的新元素將被置為value;如果縮小現有數組的規模,則自index=size開始的元素將被丟棄。
這部分的簡便寫法是: resize_array = { <name> = <size> }
while循環指令(while_loop_effect)
File:Ambox outdated info.png | 這部分內容可能已不適合當前版本,最後更新於1.10。 |
while_loop_effect = { break = <string> limit = { <triggers> } <effects> }
對指定數組進行有條件的循環操作。只要limit為真,就重複執行指令組(用花括號括起的指令集合)。
break接受一個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
。
在此循環中可以寫入指令執行某些操作,並隱性地以當前數組為參數
for each作用域循環指令(for_each_scope_loop)
File:Ambox outdated info.png | 這部分內容可能已不適合當前版本,最後更新於1.10。 |
for_each_scope_loop = { array = <name> break = <string> <effects> }
對指定數組中的每個元素調用指令組,並且在每次調用時將當前作用域更改為當前元素。
break後應分配一個非零臨時變量以結束迭代,缺省值為break
。
在此循環中可以寫入指令執行某些操作,並隱性地以當前數組為參數
隨機作用域指令(random_scope_in_array)
File:Ambox outdated info.png | 這部分內容可能已不適合當前版本,最後更新於1.10。 |
random_scope_in_array = { array = <name> break = <string> limit = { <triggers> } <effects> }
對特定的數組中的每一變量進行循環操作,並在每次迭代時將當前作用域改為隨機作用域(當前數組內的一個隨機的、不同於當前作用域的變量)。
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> }
檢測指定數組array是否含有指定元素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 }
。
例子
File:Ambox outdated info.png | 這部分內容可能已不適合當前版本,最後更新於1.10。 |
文件 | 效果 • 條件 • 定義 • 修正 • 修正列表 • 作用域 • 本地化 • on action • 數據結構 (標記, 臨時標記, 國家別名, 變量, 數組) |
腳本 | 成就修改 • AI修改 • AI focuses • 自治領修改 • 權力平衡修改 • 劇本/標籤 (遊戲規則)• 建築修改 • 人物修改 • 修飾性TAG修改 • 國家創建 • 軍隊修改 • 決議製作 • 裝備修改 • 事件修改 • Idea修改 • 意識形態修改 • 軍工商修改 • 國策製作 • 資源修改 • Scripted GUI • 科技製作 • 單位修改 |
地圖 | 地圖 • 省份 • 補給區域 • 戰略區域 |
圖形圖像 | 界面 • 圖形資產 • 實體模型 • 後期特效 • 離子效果 • 字體 |
裝飾性 | 肖像 • 命名列表 • 音樂 • 音效 |
其他 | 控制台指令 • 故障排除 • 模組結構 • 成就代碼分析 • Mod相關 • Nudger修改 |