🎯 GOAL:

Add platforming challenges and trap mechanics that make escaping harder. Also, give the level a more dramatic, Half-Life-inspired look.

🔧 What You’re Making Today:

  1. Create at least 3 different trap types, each with a unique look:

    • Lava Panel – glowing red with fire particles

    • Electric Pad – blue with spark effect

    • Toxic Slime – green, slightly transparent

  2. Use different materials and shapes for each hazard

  3. Place hazards in a platforming layout with jumps, gaps, or timing

🧠New Keywords & Concepts

🔹 .Anchored

What it means:
Stops a part from moving or falling with gravity.

Say it out loud:

“Lock this in place.”

🔹 .BrickColor

What it means:
Changes the color of a part.

Say it out loud:

“Make this red like lava or green like slime.”

🔹 ParticleEmitter

What it means:
Creates visual effects like fire, smoke, or sparks.

Say it out loud:

“Make this trap look dangerous!”

🔹 Damage Script

What it does:
Hurts the player if they touch certain parts.

🛠️ MINI PROJECTS

🔥 1. Lava Damage Trap

Setup:

  • Add a red Part called "LavaTrap"

  • Add a ParticleEmitter and set to fire preset

  • Insert Script:

function onTouch(hit)

    local character = hit.Parent

    if character and character:FindFirstChild("Humanoid") then

        character.Humanoid:TakeDamage(50)

        print("Ouch! Lava burns!")

    end

end

script.Parent.Touched:Connect(onTouch)

🧠 Try changing the particle effects, damage amount, and shape.

⚡ 2. Electric Pad with Sparks

Setup:

  • Blue rectangle part with electric spark particles

  • Script that flashes color on touch:

local trap = script.Parent

function onTouch(hit)

    local humanoid = hit.Parent:FindFirstChild("Humanoid")

    if humanoid then

        trap.BrickColor = BrickColor.new("White")

        wait(0.2)

        trap.BrickColor = BrickColor.new("Electric blue")

        humanoid:TakeDamage(30)

    end

end

trap.Touched:Connect(onTouch)

🧪 3. Slime Slow Zone

Setup:

  • Green Part named "SlimeZone"

  • Add Script:

function onTouch(hit)

    local humanoid = hit.Parent:FindFirstChild("Humanoid")

    if humanoid then

        humanoid.WalkSpeed = 8

        wait(2)

        humanoid.WalkSpeed = 16

    end

end

script.Parent.Touched:Connect(onTouch)

🧠 Try to use WalkSpeed to modify movement speed!

🧠 Quiz Questions

You can only earn dad points if you can answer all of these:

  1. What does .Anchored do to a part?

  2. How do you change the color of a part with code?

  3. What is a ParticleEmitter used for?

  4. What does WalkSpeed control?

  5. How would you make your level look more dangerous?

🏅 Dad Point Earned If:

  • Three different trap types added and working

  • Each trap has a unique look (color + material + particle)

  • Level has some platforming elements or spacing

  • Your child answers all 5 quiz questions correctly