Chức năng là các bộ lệnh có thể được sử dụng nhiều lần trong một kịch bản.Có các chức năng được tạo sẵn (cũng được gọi là phương thức) như print() và task.wait() được xây dựng vào hầu hết các ngôn ngữ lập trình.Lập trình viên cũng có thể tạo các chức năng tùy chỉnh riêng cho mã họ muốn sử dụng nhiều hơn một lần, nhưng không cảm thấy như viết lặp đi lặp lại.Trong Luau, điều này được thực hiện bằng cách gõ: local function nameOfTheFunction()
Chức năng có thể được xem như một công thức.Cả hai là danh sách các lời chỉ dẫn cụ thể.Ví dụ, bạn có thể sử dụng một chức năng để dạy cho một robot cách làm spagetti.Trước tiên, tạo một local function danh sách các bước để chuẩn bị bữa ăn.Sau đó, bất cứ khi nào bạn muốn ăn tối, chỉ cần nói, "Robot, chạy makeSpaghetti ()".
Các bước để chuẩn bị bữa tối có thể trông như thế này:
- Luộc nước
- Thêm bột pasta
- Nấu trong 15 phút
- Thêm nước sốt
- Phục vụ trên một chiếc bát
Trong khi phiên bản mã có thể trông giống như thế này:
local function makeDinner()
-- Danh sách các hướng dẫn
end
-- Bảo cho mã chạy
makeDinner()
Tạo một hàm
Để thực hành, chức năng đầu tiên của bạn sẽ in thức ăn yêu thích của bạn vào cửa sổ Thành phẩm.Đầu tiên thiết lập kịch bản bạn sẽ sử dụng, nếu bạn không nhớ cách, đây là một lời nhắc nhở:
- Tạo một kịch bản mới trong ServerScriptService .
- Đổi tên kịch bản FunctionsPractice.
- Xóa "Hello World" .
- Thêm bình luận ở trên cùng. Ví dụ: -- Prints your favorite food
Tiếp theo, bạn tạo và đặt tên chức năng.Tất cả các chức năng nên có tên giúp bạn nhớ được mục đích của chúng.Tên các chức năng được viết thành hoa, với chữ cái đầu tiên thấp hơn và các từ tiếp theo được viết hoa.
Ví dụ: addPoints() , restartGame() , rainFlamingLlamas()
- Nhập local function printFood() , sau đó nhấn Enter trên bàn phím của bạn. Nó nên tự điền vào chức năng để trông giống:
local function printFood()
end
Thêm mã vào các hàm
Tất cả các mã cho chức năng của bạn phải được gõ giữa các dòng local function printFood() và end.Bất kỳ mã nào không nằm giữa hai điểm đó sẽ không chạy khi chức năng thực hiện.
local function printFood()
-- Mã ở đây sẽ chạy khi chức năng được gọi
end
-- Code here will not run
Thông tin ở bên trong chức năng, hoặc có thể được sử dụng bởi chức năng, nằm trong phạm vi .
- Giữa local function printFood() và end, sử dụng print() để nói về thức ăn yêu thích của bạn.
local function printFood()
print("Curry!")
end
Bảo cho chức năng chạy
Có thêm một việc chúng ta cần phải làm trước khi chức năng hoạt động, và đó là bảo nó chạy, cũng được gọi là gọi một chức năngCác chức năng sẽ không chạy cho đến khi chúng được gọi.Để gọi một chức năng, hãy nhập tên của chức năng bao gồm () ở cuối.
Dưới end, nhập printFood().
local function printFood()print("Curry!")endprintFood()Kiểm tra mã. Món ăn yêu thích của bạn nên xuất hiện trong cửa sổ Thành phẩm.
Mẹo xử lý sự cố
Nếu mã của bạn không chạy, hãy kiểm tra các lỗi như sau:
- Kiểm tra xem print("Your Food Here") có nằm giữa local function printFood() và end không.
- Làm cho thức ăn của bạn là một chuỗi, với dấu ngoặc kép trên "each side".
- Kiểm tra xem chức năng được gọi sau khi nó được tạo. printFood() nên thấp hơn end .