דלת המטבעות
חלק מהיחידה תכנות משחקים ב-Roblox במסלול ה-Lua של Coddy. שיעור 16 מתוך 24.
תנאי if יכול לעשות יותר מאשר לבדוק אם הערך הוא nil. הוא יכול להשוות מספרים, וחלק else רץ כשההשוואה שגויה:
local score = player.leaderstats.Score.Value
if score >= 10 then
print("You win!")
else
print("Keep going")
endאופרטורי ההשוואה הם == (שווה), ~= (לא שווה), <, >, <= ו->=. שימו לב ל-== הכפול: = יחיד מציב ערך במשתנה, הוא לא משווה.
>= 3 פירושו "3 או יותר"; > 3 פירושו "יותר מ-3", ולכן הערך 3 בדיוק לא יעבור.
אתגר
בינונישלושה מטבעות מרחפים מימין, ודלת עץ חוסמת את הקיר. העולם סופר את המטבעות בשבילך. הסקריפט הזה נמצא בתוך הדלת, והפונקציה Touched שלו פועלת כששחקן דורך על המשטח הכחול שלפניה.
- אם יש לשחקן
3מטבעות או יותר, פתח את הדלת:CanCollidefalseו-Transparency0.5. - אחרת, הדפס בדיוק
You need 3 coins.
לחץ על Play, נסה תחילה את המשטח, אסוף את המטבעות ונסה שוב. לאחר מכן לחץ על Check.
נסו בעצמכם
local Players = game:GetService("Players")
local door = script.Parent
local pad = workspace.DoorPad
pad.Touched:Connect(function(hit)
local player = Players:GetPlayerFromCharacter(hit.Parent)
if player then
local coins = player.leaderstats.Coins.Value
-- 3 מטבעות או יותר: פתח את הדלת
-- אחרת: הדפס "You need 3 coins"
end
end)
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה תכנות משחקים ב-Roblox
תרגלו בעצמכם: קומפיילר Lua אונליין