Trying to make a procedural dungeon generation, but now, how do I make for the new rooms spawn right in front of the waypoint instead of inside of it?
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local AssetsFolder = ReplicatedStorage:WaitForChild("AssetsFolder")
local Rooms = AssetsFolder:GetChildren()
local StartPos = Vector3.new(0, 0, 0)
local MaxRooms = 100
print(Rooms)
local function Generate(StartPos, MaxRooms)
local LastRoomGenerated
--Spawn First Room
local StarterRoom = AssetsFolder.StarterRoom:Clone() :: Model
StarterRoom.Parent = workspace
table.remove(Rooms, table.find(Rooms, StarterRoom))
local AmountOfRoomsGenerated = 1
LastRoomGenerated = StarterRoom
--Generation
while AmountOfRoomsGenerated < MaxRooms do
wait(0.125)
for _, waypoint in LastRoomGenerated:GetChildren() do
if waypoint.Name == "Waypoints" then
local RandomRoom = Rooms[math.random(1, #Rooms)]:Clone() :: Model
RandomRoom.Parent = workspace.Generation
RandomRoom:PivotTo(waypoint.CFrame)
AmountOfRoomsGenerated += 1
LastRoomGenerated = RandomRoom
end
end
end
print("done")
end
Generate(StartPos, MaxRooms)