Untitled

 avatar
unknown
lua
2 years ago
1.8 kB
8
Indexable
-- Tworzymy zmienną, która będzie przechowywać wszystkie miejsca do wygenerowania zombiaków
-- Metoda GetChildren() pozwala na pobranie wszystkich elementów znajdujących się w folderze Miejsca
local miejsca = game.Workspace.Miejsca:GetChildren()

-- Pętla while, która wykonuje się co 0.2 sekundy
while true do
	-- Jeżeli jest aktywna gra
	if game.ReplicatedStorage.AktywnaGra.Value == true then
		-- Jeżeli są zombiaki do wygenerowania
		if game.ReplicatedStorage.ZombieDoWygenerowania.Value > 0 then
			-- Sklonuj zombiaka, utworzona zmienna pozwoli na zmianę jego parametrów
			local nowyZombie = game.ReplicatedStorage.Zombie:Clone()
			-- Odwołanie do podstawowej części postaci,
			-- która pozwala na zmianę pozycji modelu gracza
			local root = nowyZombie:FindFirstChild("HumanoidRootPart")
			-- Losujemy miejsce do wygenerowania zombiaka,
			-- zapis #miejsca pozwala na pobranie informacji na temat ilości elementów
			local losoweMiejsce = math.random(1, #miejsca)
			-- Losujemy wartość X oraz Z, aby zombiaki nie generowały się w jednym miejscu,
			-- tylko w losowych miejscach od wylosowanego miejsca do wygenerowania
			local losowyX = math.random(-10,10)
			local losowyZ = math.random(-10,10)
			-- Poprzez element HumanoidRootPart, możemy ustawić pozycję nowego zombiaka,
			-- Vector3.new() pozwala na stworzenie nowego wektora w przestrzeni 3D,
			root.Position = Vector3.new(
				miejsca[losoweMiejsce].Position.X + losowyX,
				6 ,
				miejsca[losoweMiejsce].Position.Z + losowyZ)
			-- Przypisanie nowego zombiaka do modelu Zombiaki
			nowyZombie.Parent = workspace.Zombiaki
			-- Zmniejszenie ilości zombiaków do wygenerowania o jeden
			game.ReplicatedStorage.ZombieDoWygenerowania.Value -= 1
		end
	end	
	-- petla czeka 0.2s
	wait(0.2)
end
Editor is loading...