Advertisement
MaxiKaz

Generowanie Zombie

Apr 2nd, 2023 (edited)
514
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 2.06 KB | Gaming | 0 0
  1. -- Tworzymy zmienną, która będzie przechowywać wszystkie miejsca do wygenerowania zombiaków
  2. -- Metoda GetChildren() pozwala na pobranie wszystkich elementów znajdujących się w folderze Miejsca
  3. local miejsca = game.Workspace.Miejsca:GetChildren()
  4.  
  5. -- Pętla while, która wykonuje się co 0.2 sekundy
  6. while true do
  7.     -- Jeżeli jest aktywna gra
  8.     if game.ReplicatedStorage.AktywnaGra.Value == true then
  9.         -- Jeżeli są zombiaki do wygenerowania
  10.         if game.ReplicatedStorage.ZombieDoWygenerowania.Value > 0 then
  11.             -- Sklonuj zombiaka, utworzona zmienna pozwoli na zmianę jego parametrów
  12.             local nowyZombie = game.ReplicatedStorage.Zombie:Clone()
  13.             -- Odwołanie do podstawowej części postaci,
  14.             -- która pozwala na zmianę pozycji modelu gracza
  15.             local root = nowyZombie:FindFirstChild("HumanoidRootPart")
  16.             -- Losujemy miejsce do wygenerowania zombiaka,
  17.             -- zapis #miejsca pozwala na pobranie informacji na temat ilości elementów
  18.             local losoweMiejsce = math.random(1, #miejsca)
  19.             -- Losujemy wartość X oraz Z, aby zombiaki nie generowały się w jednym miejscu,
  20.             -- tylko w losowych miejscach od wylosowanego miejsca do wygenerowania
  21.             local losowyX = math.random(-10,10)
  22.             local losowyZ = math.random(-10,10)
  23.             -- Poprzez element HumanoidRootPart, możemy ustawić pozycję nowego zombiaka,
  24.             -- Vector3.new() pozwala na stworzenie nowego wektora w przestrzeni 3D,
  25.             -- w naszym zastosowaniu posłuży jako punkt w przestrzeni 3D,
  26.             -- dodanie losowych wartości do pozycji X oraz pozycji Y z wylosowanego miejsca
  27.             -- pozwoli na generowanie zombiaków w oddalonych od siebie miejscach,
  28.             -- wysokość jest stała
  29.             root.Position = Vector3.new(
  30.                 miejsca[losoweMiejsce].Position.X + losowyX,
  31.                 6 ,
  32.                 miejsca[losoweMiejsce].Position.Z + losowyZ)
  33.             -- Przypisanie nowego zombiaka do folderu Zombiaki
  34.             nowyZombie.Parent = workspace.Zombiaki
  35.             -- Zmniejszenie ilości zombiaków do wygenerowania o jeden
  36.             game.ReplicatedStorage.ZombieDoWygenerowania.Value -= 1
  37.         end
  38.     end
  39.     -- Czekaj 0.2 sekundy
  40.     wait(0.2)
  41.     endit(0.2)
  42. end
  43.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement