═нлллл┬┬┬╛╙╙╙╛┬┬┬╛ллл╛люл╛люл╛люлллЛН┬┬лН╙╙юН┬╗юНл╛юлю╛ююю╛ююю╛ююнлллл┬┬┬╛╙╙╙╛┬┬┬╛ллл╛ллл╛люл╛люлллЛН┬┬лН╙╙юН┬╗юНл╛юлл╛ююю╛ююю╛юю╛ллл╛╙╙╙╛╙╛╙╛╙йл╛╙╙╙▄┬┬┬люлнллнл╛л╙╙юЛ╛╙юН╙╙юН╙╙юН┬┬лНюЛНллНН╛ллл╛╙╙╙╛╙╛╙╛╙йл╛╙╙╙▄┬┬┬люлнллнл╛л╙╙юЛ╛╙юН╙╙юН╙╙юН┬┬лНюЛНллНН >┬?лллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллл ю wwwwwpwpю wwwwwwwwppwpwwpю wwwwwwpwpppppppwpю wwwwwpwpwpppppwwю wwpwwwwwpwwpwppwpю wю ю ю ю ю ю ю ю ю ю ю ю ю ллллллллллллллллллллллллллллллллллллллллллллллллю ллллллллллллллллллллллллллллллллллллллллллллллллю ллллллллллллллллллллллллллллллллллллллллллллллллю ллллллллллллллллллллллллллллллллллллллллллллллллю ллллллллллллллллллллллллллллллллллллллллллллллллю ллллллллллллллллллллллллллллллллллллллллллллллллю ллллллллллллллллллллллллллллллллллллллллллллллллю ллллллллллллллллллллллллллллллллллллллллллллллллю ю ю ллллллллллллллллллллллллллллллллллллллллллллллллю ллллллллллллллллллллллллллллллллллллллллллллллллю ллллллллллллллллллллллллллллллллллллллллллллллллю ллллллллллллллллллллллллллллллллллллллллллллллллю ллллллллллллллллллллллллллллллллллллллллллллллллю ллллллллллллллллллллллллллллллллллллллллллллллллю ллллллллллллллллллллллллллллллллллллллллллллллллю ллллллллллллллллллллллллллллллллллллллллллллллллю ю ю ллллллллллллллллллллллллллллллллллллллллллллллллюНННННННЮ ллллллллллллллллллллллллллллллллллллллллллллллллюНННННН ллллллллллллллллллллллллллллллллллллллллллллллллюНННННННЮ ллллллллллллллллллллллллллллллллллллллллллллллллюННЮНННЮ ллллллллллллллллллллллллллллллллллллллллллллллллюНННННННННН ллллллллллллллллллллллллллллллллллллллллллллллллю ллллллллллллллллллллллллллллллллллллллллллллллллю ллллллллллллллллллллллллллллллллллллллллллллллллю ю ю ллллллллллллллллллллллллллллллллллллллллллллллллю ллллллллллллллллллллллллллллллллллллллллллллллллю ллллллллллллллллллллллллллллллллллллллллллллллллю ллллллллллллллллллллллллллллллллллллллллллллллллю ллллллллллллллллллллллллллллллллллллллллллллллллю ллллллллллллллллллллллллллллллллллллллллллллллллю ллллллллллллллллллллллллллллллллллллллллллллллллю ллллллллллллллллллллллллллллллллллллллллллллллллю ю ю ю ю ю ю ю ╙ ю ═╙╙ю ╙╙╙ ю ╙╙╙ ю ╙╙╙ ю ═╙╙ю ╙ ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ю ffffffffffffffffffffffffю ffffffffffffffffffffffffю ffffffffffffffffffffffffю ffffffffffffffffffffffffю ю ю ю ю ю ю ю ю ю ю юллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллZ-- title: Block Distroyer -- author: Alexander -- desc: Block Shooter -- script: lua -- cover: 0000000000000000000000000000000000000000000000000000000000000000 paddle = {x=48, y=120, w=48, h=4, speed=3} ball = {x=64, y=100, dx=1, dy=-1, size=3, speed=1.5} blocks = {} totalLevels = 5 currentLevel = 1 gameState = "menu" -- "menu", "play", "gameover" levels = { function() blocks = {} for i=0,7 do for j=0,3 do table.insert(blocks, {x=8 + i*14, y=20 + j*10, w=12, h=8, alive=true}) end end end, function() blocks = {} for i=0,7 do if i == 0 or i == 7 then for j=0,3 do table.insert(blocks, {x=8 + i*14, y=20 + j*10, w=12, h=8, alive=true}) end else table.insert(blocks, {x=8 + i*14, y=20, w=12, h=8, alive=true}) table.insert(blocks, {x=8 + i*14, y=50, w=12, h=8, alive=true}) end end end, function() blocks = {} for i=0,7 do if i == 3 or i == 4 then for j=1,2 do table.insert(blocks, {x=8 + i*14, y=20 + j*10, w=12, h=8, alive=true}) end else table.insert(blocks, {x=8 + i*14, y=20, w=12, h=8, alive=true}) table.insert(blocks, {x=8 + i*14, y=50, w=12, h=8, alive=true}) end end end, function() blocks = {} for i=0,7 do for j=0,3 do if (i+j) % 2 == 0 then table.insert(blocks, {x=8 + i*14, y=20 + j*10, w=12, h=8, alive=true}) end end end end, function() blocks = {} for i=0,7 do for j=0,3 do table.insert(blocks, {x=8 + i*14, y=20 + j*10, w=12, h=8, alive=true}) end end end } function reset_ball() ball.x = 64 ball.y = 100 ball.dx = 1 ball.dy = -1 end function load_level(level) if level < 1 then level = totalLevels end if level > totalLevels then level = 1 end currentLevel = level levels[level]() reset_ball() paddle.x = 40 end function TIC() cls(0) rectb(0, 0, 128, 136, 12) if gameState == "menu" then print("Bubble Pong!", 38, 20, 7) print("Press Z to Start", 30, 50, 7) if btnp(4) then gameState = "play" currentLevel = 1 load_level(currentLevel) end elseif gameState == "play" then if btn(2) and paddle.x > 0 then paddle.x = paddle.x - paddle.speed elseif btn(3) and paddle.x + paddle.w < 128 then paddle.x = paddle.x + paddle.speed end ball.x = ball.x + ball.dx * ball.speed ball.y = ball.y + ball.dy * ball.speed if ball.y < 15 then ball.y = 15 ball.dy = -ball.dy end if ball.x < 0 or ball.x + ball.size > 128 then ball.dx = -ball.dx end if ball.y < 0 then ball.dy = -ball.dy end if ball.y + ball.size >= paddle.y and ball.x + ball.size > paddle.x and ball.x < paddle.x + paddle.w then ball.dy = -math.abs(ball.dy) end for i,b in ipairs(blocks) do if b.alive and ball.x < b.x + b.w and ball.x + ball.size > b.x and ball.y < b.y + b.h and ball.y + ball.size > b.y then b.alive = false ball.dy = -ball.dy break end end local allDestroyed = true for i,b in ipairs(blocks) do if b.alive then allDestroyed = false break end end if allDestroyed then currentLevel = currentLevel + 1 if currentLevel > totalLevels then currentLevel = 1 end load_level(currentLevel) end if ball.y > 132 then gameState = "gameover" end rect(paddle.x, paddle.y, paddle.w, paddle.h, 6) circ(ball.x, ball.y, ball.size, 10) for i,b in ipairs(blocks) do if b.alive then rect(b.x, b.y, b.w, b.h, 12) end end print("Bubble Pong!", 38, 2, 7) -- Text LEVEL X simplu, fд┐rд┐ efect bold, ц╝n dreapta ц╝n afara chenarului local levelText = "LEVEL "..currentLevel local xLevel = 140 local yLevel = 40 print(levelText, xLevel, yLevel, 14) elseif gameState == "gameover" then print("Game Over!", 20, 50, 12) print("Press Z to Restart", 20, 60, 7) if btnp(4) then gameState = "menu" currentLevel = 1 end end end function BOOT() gameState = "menu" end