Trong lập trình, biến là những từ giữ chỗ cho các loại thông tin khác nhau trong trò chơi của bạn, chẳng hạn như tên người chơi, điểm số của một đội, hoặc từ cho một trò chơi câu chuyện. Trong chương này, hãy cùng khám phá cách mở tập lệnh chính cho lối chơi cốt lõi và thêm mã để hỏi người chơi câu hỏi và sử dụng câu trả lời của họ cho câu chuyện của bạn.
Mở tập lệnh
Các nhà phát triển Roblox viết mã của họ bên trong tập lệnh mà cho Studio biết cách và khi nào để thêm hành vi tùy chỉnh vào trò chơi, chẳng hạn như kích hoạt các loại sự kiện khác nhau, lưu thông tin người chơi, hoặc sinh ra kẻ thù. Các tập lệnh Roblox sử dụng ngôn ngữ lập trình Luau, mà bạn có thể tìm hiểu thêm sau trong loạt bài Cơ bản về lập trình.
Mẫu Trò Chơi Câu Chuyện sử dụng một tập lệnh duy nhất có tên là StoryManager để điều khiển lối chơi cốt lõi của trò chơi. Tập lệnh này đã chứa một số mã cần thiết để hiển thị toàn bộ câu chuyện cho người chơi, nhưng bạn sẽ thêm nhiều mã hơn để hiển thị câu chuyện tương tác của bạn.
Để mở tập lệnh StoryManager:
Trong cửa sổ Explorer, nhấp vào mũi tên bên cạnh StarterGui để xem tất cả những gì nó chứa. GameGui hiển thị.
Nhấp vào mũi tên bên cạnh GameGui để xem tất cả những gì nó chứa. Tập lệnh StoryManager hiển thị ở đầu cùng với một vài thứ khác không quan trọng cho bài học này.

Nhấp đúp vào tập lệnh StoryManager. Mã của tập lệnh hiển thị.
-- BIẾN TOÀN CỤC
local storyMaker = require(script:WaitForChild("StoryMaker"))
-- Mã điều khiển trò chơi
local playing = true
while playing do
storyMaker:Reset()
-- Mã câu chuyện giữa các dấu gạch ngang
-- =============================================
-- =============================================
-- Thêm biến câu chuyện giữa dấu ngoặc dưới đây
storyMaker:Write()
-- Chơi lại?
playing = storyMaker:PlayAgain()
endLưu ý cách một phần lớn của mã sử dụng ký hiệu --, được gọi là chú thích. Các lập trình viên sử dụng chú thích để để lại ghi chú, và chúng không thay đổi cách mà tập lệnh chạy. Trong bài học này, bạn sẽ tạo mã của mình giữa các chú thích dấu gạch ngang để bạn có thể tập trung vào việc tạo câu chuyện tương tác của mình ở một chỗ.
Hỏi người chơi câu hỏi
Như một thực tiễn tốt nhất, các lập trình viên tạo ra các biến với tên mô tả loại thông tin mà chúng lưu trữ. Ví dụ, nếu bạn đang làm việc trên một trò chơi mà người chơi được chia thành các đội:
- Biến team lưu trữ thông tin về đội của người chơi.
- Biến teamColor lưu trữ thông tin về màu đội của người chơi.
- Biến teamScore lưu trữ thông tin cho điểm số đội của người chơi.
Các biến có thể lưu trữ đủ loại thông tin, chẳng hạn như số nhỏ, câu trả lời đúng hoặc sai, và chuỗi. Các biến kiểu chuỗi đặc biệt vì chúng có thể lưu trữ toàn bộ câu, bao gồm cả các câu hỏi mà bạn muốn hỏi người chơi của mình.
Sử dụng các từ giữ chỗ của bạn từ chương trước, bạn có thể tạo ra các biến kiểu chuỗi với cùng tên giữ chỗ mô tả loại từ mà bạn sẽ hỏi người chơi khi họ chơi trò chơi câu chuyện của bạn.
Để tạo biến cho các câu hỏi của người chơi:
Nhấp dưới các chú thích dấu gạch ngang và tạo một biến cục bộ cho từ đầu tiên mà bạn muốn người chơi thay thế bằng câu trả lời của họ. Ví dụ:
-- =============================================local name1-- =============================================Đặt biến bằng cách sử dụng ký hiệu = cho phương thức storyMaker:GetInput() được cung cấp, hiển thị các câu hỏi của bạn trong cuốn sách khổng lồ. Bạn phải gõ phương thức này chính xác như nó là với cách viết hoa cụ thể của nó để mã hoạt động. Ví dụ:
-- =============================================local name1 = storyMaker:GetInput()-- =============================================Tạo một chuỗi trong dấu ngoặc với câu hỏi mà bạn muốn hỏi người chơi của mình. Nhớ rằng, chuỗi luôn nằm trong dấu ngoặc kép!
-- =============================================local name1 = storyMaker:GetInput("Tên yêu thích của bạn là gì?")-- =============================================
Sử dụng câu trả lời của họ
Bây giờ bạn đã có một câu hỏi mà người chơi có thể trả lời, đã đến lúc mã hóa câu chuyện của bạn và thêm hành vi thay thế từ giữ chỗ của bạn bằng câu trả lời của họ.
Để tạo biến cho câu chuyện của bạn và sử dụng câu trả lời của người chơi:
Dưới câu hỏi của bạn, tạo một biến mới có tên là story. Nhớ rằng, các biến là chữ thường!
-- =============================================local name1 = storyMaker:GetInput("Tên yêu thích của bạn là gì?")local story-- =============================================Đặt biến kiểu chuỗi của bạn thành câu đầu tiên của câu chuyện trước từ giữ chỗ đầu tiên của bạn, để lại một khoảng trống sau từ cuối cùng và trước dấu ngoặc kép. Nếu từ giữ chỗ của bạn tình cờ nằm giữa một câu, bạn có thể thêm phần còn lại của câu trong một chương sau của hướng dẫn.
-- =============================================local name1 = storyMaker:GetInput("Tên yêu thích của bạn là gì?")local story = ("Trong một cái cây trên một ngọn đồi sống một phù thủy vĩ đại ")-- =============================================Kết hợp chuỗi đầu tiên của câu chuyện với câu trả lời của người chơi bằng cách sử dụng ... Kết hợp các thứ lại với nhau được gọi là nối chuỗi.
- Trên cùng một dòng với biến story, thêm hai dấu chấm.
- Thêm một khoảng trống, sau đó gõ tên của biến lưu trữ câu trả lời đầu tiên của người chơi.
-- =============================================local name1 = storyMaker:GetInput("Tên yêu thích của bạn là gì?")local story = ("Trong một cái cây trên một ngọn đồi sống một phù thủy vĩ đại " .. name1)-- =============================================Hiển thị phần đầu tiên của câu chuyện này cho người chơi bằng cách gọi biến câu chuyện từ phương thức storyMaker:Write() được cung cấp, viết câu chuyện của bạn trong cuốn sách khổng lồ.
-- =============================================local name1 = storyMaker:GetInput("Tên yêu thích của bạn là gì?")local story = ("Trong một cái cây trên một ngọn đồi sống một phù thủy vĩ đại " .. name1)-- =============================================-- =============================================storyMaker:Write(story)
Bây giờ là thời điểm tốt để dừng lại một chút, thử nghiệm trò chơi trong chương tiếp theo, và đảm bảo rằng câu chuyện đang hoạt động!