動画の冒頭に登場する段々と消えていく階段は、テーブル(配列)を活用しています。パーツ名に数字を使うと、テーブルと同じ操作ができますので覚えておくといいでしょう。
登場する英単語
英単語 | 読み方 | 解説 |
---|---|---|
ipairs | アイペアーズ | forでテーブルを扱う場合に使用できる |
チェックポイント
- テーブルは初期化ができる
- 要素の値は、数字、文字、オブジェクト、関数までも使用できる
- 「bridge.First」は、parts[1]でアクセスできる
- 「bridge.Second」は、parts[2]。「bridge.Third」は、parts[3]
- 要素番号は1から始まる(parts[1~])
local bridge = script.Parent
local parts = {
bridge.First,
bridge.Second,
bridge.Third
}
- テーブルを扱う場合に限り、for文で「ipairs」というものが使用できる
- forの終了値を指定する場所に「変数名 in iparts(テーブル名)」という形で記述する
- 1回目のループでiに1が入り、partには、partsの最初の要素が入る(つまりparts[1])
for i, part in ipairs(parts) do
- bridgeの下にFirstというパーツがある場合、通常は「bridge.First」だが、下記のようにテーブルのキーを指定するようにも記述できる
bridge["First"].Touched:Connect(onTouch)
- パーツ名を数字にすると、テーブルのようにアクセスできる
local bridge = script.Parent
local function start()
for i=1,19 do
local part = bridge[i]
end
end
- パーツ名を数字や全角にした場合、このように記述するとエラーになる
bridge.1.Touched:Connect(onTouch)
bridge.最初のパーツ.Touched:Connect(onTouch)
- 上記のような場合は、このようにテーブルと同じ方法で記述する
bridge[1].Touched:Connect(onTouch)
bridge["最初のパーツ"].Touched:Connect(onTouch)
4 thoughts on “第23回 ~テーブルの活用~”
コメントを残す
コメントを投稿するにはログインしてください。
テーブルのデータを中括弧の外に入れるのと中に入れるのでは何が違うのですか?
中括弧の外? 中括弧の中?
申し訳ございませんが意味が分かりません。それぞれの例を示していただけないでしょうか?
それぞれの例です(上が中括弧の外、下が中にデータを入れているものです)
local goal = {}
goal[“Size”] = part2.Size
goal[“Color”] = part2.Color
goal[“CFrame”] = part2.CFrame
local parts = {
bridge.First,
bridge.Second,
bridge.Third
}
local goal = {}
goal[“Size”] = part2.Size
goal[“Color”] = part2.Color
goal[“CFrame”] = part2.CFrame
は、以下のように記述しても同じです。
local goal = {
Size = part2.Size,
Color = part2.Color,
CFrame = part2.CFrame
}
———————————–
local parts = {
bridge.First,
bridge.Second,
bridge.Third
}
は、以下のように記述することもできます。
local parts = {}
partts[1] = bridge.First
partts[2] = bridge.Second
partts[3] = bridge.Third
配列の中に直接値を記述することを「初期化」といいますが、動作に違いはありません。