塔づくり
CoddyのLuaジャーニー「Robloxゲームのスクリプティング」セクションの一部。レッスン 7/24。
関数は、必要なときにいつでも実行できる、名前の付いたコードのまとまりです。渡す値はパラメーターと呼ばれます。
local function greet(name)
print("Welcome, " .. name)
end
greet("Ava")
greet("Leo")..は2つの文字列を連結するので、"Welcome, " .. "Ava"はWelcome, Avaになります。このコードはWelcome, AvaとWelcome, Leoを出力します。関数を定義しただけでは、その関数が保存されるだけです。greet("Ava")のように呼び出すたびに、渡した値がnameに設定されて、そのコードが実行されます。
関数は、カンマで区切った複数のパラメーターを受け取り、Sizeなどの中で使うことができます。
local function makeWall(width, height)
local wall = Instance.new("Part")
wall.Size = Vector3.new(width, height, 1)
wall.Anchored = true
wall.Parent = workspace
end
makeWall(10, 6)makeWall(10, 6)は、その順番でwidthを10に、heightを6に設定します。
パーツはPositionを中心に上下へ均等に伸びるので、高さがhのパーツの中心がh / 2にあると、地面(Y 0)に接します。
チャレンジ
簡単makeTower(x, height)を完成させ、3回使います。
- 塔のSizeを、幅
4、高さheight、奥行き4に設定します。 - 地面に立つようにPositionを設定します。
xの位置は次のとおりです:Vector3.new(x, height / 2, 0)。 - 次の3つの塔で呼び出します:
(-10, 6)、(0, 12)、(10, 18)。
自分で試してみよう
local function makeTower(x, height)
local tower = Instance.new("Part")
tower.Name = "Tower"
tower.Anchored = true
-- サイズ: 幅 4、高さ height、奥行き 4
-- 位置: x にあり、地面に立つ(中心は height / 2 の高さ)
tower.Parent = workspace
end
makeTower(-10, 6)
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
Robloxゲームのスクリプティングのすべてのレッスン
自分で練習してみよう: Luaオンラインコンパイラ