Menu
CoddyTech

Drzwi na monety

Część sekcji Skryptowanie gier w Roblox ścieżki Lua w Coddy. Lekcja 16 z 24.

Instrukcja if potrafi więcej niż tylko sprawdzać, czy wartość to nil. Może porównywać liczby, a część else wykona się, gdy porównanie będzie fałszywe:

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

Operatory porównania to == (równe), ~= (różne), <, >, <= i >=. Zwróć uwagę na podwójne ==: pojedyncze = przypisuje wartość do zmiennej, a nie porównuje.

>= 3 oznacza „3 lub więcej”; > 3 oznacza „więcej niż 3”, więc dokładnie 3 nie spełni warunku.

challenge icon

Wyzwanie

Średni

Po prawej unoszą się trzy monety, a drewniane drzwi blokują przejście w ścianie. Świat liczy monety za Ciebie. Ten skrypt znajduje się w drzwiach, a jego funkcja Touched uruchamia się, gdy gracz stanie na niebieskiej platformie przed nimi.

  • Jeśli gracz ma 3 lub więcej Coins, otwórz drzwi: CanCollide false i Transparency 0.5.
  • W przeciwnym razie wypisz dokładnie You need 3 coins.

Naciśnij Graj, najpierw wypróbuj platformę, zbierz monety i spróbuj ponownie. Następnie naciśnij Sprawdź.

Spróbuj swoich sił

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 monety lub więcej: otwórz drzwi
		-- w przeciwnym razie: wyświetl "You need 3 coins"
	end
end)
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Skryptowanie gier w Roblox

Poćwicz samodzielnie: Kompilator Lua online