Menu
CoddyTech

Porta de moedas

Parte da seção Scripts para jogos no Roblox do Journey de Lua da Coddy. Lição 16 de 24.

Um if pode fazer mais do que verificar se é nil. Ele pode comparar números, e uma parte else é executada quando a comparação é falsa:

local score = player.leaderstats.Score.Value
if score >= 10 then
	print("You win!")
else
	print("Keep going")
end

Os operadores de comparação são == (igual), ~= (diferente), <, >, <= e >=. Observe o == duplo: um único = atribui um valor a uma variável, não faz uma comparação.

>= 3 significa "3 ou mais"; > 3 significa "mais que 3", então exatamente 3 não passaria.

challenge icon

Desafio

Médio

Três moedas flutuam à direita, e uma porta de madeira bloqueia a parede. O mundo conta as moedas para você. Este script fica na porta, e sua função Touched é executada quando um jogador pisa no bloco azul à sua frente.

  • Se o jogador tiver 3 ou mais Coins, abra a porta: CanCollide false e Transparency 0.5.
  • Caso contrário, imprima exatamente You need 3 coins.

Pressione Jogar, experimente primeiro o bloco, colete as moedas e tente novamente. Depois, Verificar.

Experimente você mesmo

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 moedas ou mais: abra a porta
		-- caso contrário: imprima "You need 3 coins"
	end
end)
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Scripts para jogos no Roblox

Pratique por conta própria: Compilador de Lua online