Строитель башен
Часть раздела Скриптинг игр в Roblox путешествия по Lua на Coddy. Урок 7 из 24.
Функция — это именованный фрагмент кода, который можно запускать, когда он вам нужен. Передаваемые значения называются параметрами:
local function greet(name)
print("Welcome, " .. name)
end
greet("Ava")
greet("Leo").. объединяет две строки, поэтому "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 стоит на земле (Y 0), когда её центр находится на высоте h / 2.
Задание
ЛегкоЗаверши makeTower(x, height) и вызови её три раза.
- Задай башне Size: ширина —
4, высота —height, глубина —4. - Задай Position так, чтобы башня стояла на земле в точке
x:Vector3.new(x, height / 2, 0). - Вызови функцию для трёх башен:
(-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
2Циклы и функции
Ряд столбовСтроитель лестницСтроитель башенФабрика монетМигающий светИсчезающий мост5Ваша первая игра
Ваш первый оббиПотренируйтесь самостоятельно: Онлайн-компилятор Lua