チューナーでパネルに配置できるControlの一つにSelection Listがあり
これは1つ選択できるリストを作り、選択した行の文字列を取得しつつ設定したLuaを実行する
既存パネルのWorldBuilder.ltpにある資源設置用のSelection Listでは
大雑把に
のような流れなので
リストに並んでるのが日本語だと、資源データに日本語はないので資源設置は動作しない
この時
Selection Listが複数列の場合、行をクリックして取得されるのは最初の列なので
最初の列を英語、次の列を日本語といった表示にすれば
英語でデータを取得しつつ、日本語でリストを見分けられる
Selection Listでは「;」で区切ることで列を作る
リスト自体のNameをResourcesからResources;jpにすると
Resourcesの列の右に新しくjpの列が加わる
リストの内容を列で分けるのも「;」で区切る
function() listItems = {}; local i = 0; for resource in GameInfo.Resources() do listItems [i + 1] = string.gsub( resource.ResourceType, "RESOURCE_", "" ); i = i + 1; end return listItems; end
listItems [i + 1] = string.gsub( resource.ResourceType, "RESOURCE_", "" ) .. ";" .. Locale.Lookup(resource.Name);
7行目のResourceTypeをそのまま表示しようとしてる箇所の後ろに
; と日本語変換した資源名を追加する
Locale.Lookup()はLOC_で始まるタグを現在設定中の言語表記に変える関数