Skip to content
Conditional Statements and Loops
Roblox

Conditional Statements and Loops

Master Roblox Lua: Use if/else statements for decisions and for/while loops for repetition. Build dynamic, interactive games.

By ···10 min read·Multi-source verified
1 reading this guide  

Master Roblox Lua: Use if/else statements for decisions and for/while loops for repetition. Build dynamic, interactive games.

7.3. Conditional Statements and Loops

Conditional statements and loops are the backbone of dynamic gameplay in Roblox scripting. They allow your game to make decisions, repeat actions, and respond intelligently to player input and game events. Mastering these concepts is crucial for creating interactive and engaging experiences that go beyond static environments.

Conditional statements enable your scripts to execute different blocks of code based on whether certain conditions are true or false. Loops, on the other hand, allow you to repeat a set of instructions multiple times, saving you from writing redundant code and enabling complex sequences of actions.

Conditional Statements (If, Else If, Else):

Conditional statements allow your script to branch its execution path. The most common is the if statement.

The if statement:

The basic structure is:


if condition then
 -- code to execute if the condition is true
end

Example:


local playerHealth = 100

if playerHealth <= 50 then
 print("Player is low on health!")
end

The if...else statement:

This allows you to execute one block of code if the condition is true, and another if it's false.


if condition then
 -- code if true
else
 -- code if false
end

Example:


local hasKey = false

if hasKey then
 print("The door is unlocked.")
else
 print("The door is locked. You need a key.")
end

The if...else if...else statement:

This allows for multiple conditions to be checked in sequence.


if condition1 then
 -- code if condition1 is true
elseif condition2 then
 -- code if condition2 is true
else
 -- code if neither condition is true
end

Example:


local score = 75

if score >= 90 then
 print("Grade: A")
elseif score >= 80 then
 print("Grade: B")
elseif score >= 70 then
 print("Grade: C")
else
 print("Grade: D or F")
end

Loops:

Loops are used to execute a block of code repeatedly.

The for loop (numeric):

This loop iterates a specific number of times.


for variable = start, end, step do
 -- code to repeat
end

Example:


-- Count from 1 to 5
for i = 1, 5 do
 print("Count: " .. i)
end

-- Count down from 10 by 2
for num = 10, 0, -2 do
 print("Countdown: " .. num)
end

The while loop:

This loop continues to execute as long as a specified condition remains true.


while condition do
 -- code to repeat
end

Example:


local coinsCollected = 0
local maxCoins = 10

while coinsCollected < maxCoins do
 coinsCollected = coinsCollected + 1
 print("Collected coin " .. coinsCollected)
 -- In a real game, you'd have logic here to actually collect coins
end
print("All coins collected!")

Important Note on while loops: Ensure your while loop has a condition that will eventually become false, or it will run indefinitely, causing your game to freeze. Use break to exit a loop prematurely if needed.

By integrating these conditional statements and loops into your scripts, you can create games that are responsive, dynamic, and truly interactive.

100% Human-Written. AI Fact-Checked. Community Verified. Learn how AntMag verifies content