--[DOORS Floor 2 Ambient Universal Edition]-° --(by Raddy_edits)-° local safeHttpGet = (syn and syn.request and syn.request) or (http and http.request) or http_request or request local safeGetAsset = getcustomasset or getsynasset or function() return "" end local safeLoadstring = loadstring or function() return function() end end local safeWait = task and task.wait or wait local Workspace = game:GetService("Workspace") local Lighting = game:GetService("Lighting") local Players = game:GetService("Players") local TweenService = game:GetService("TweenService") local ReplicatedStorage = game:GetService("ReplicatedStorage") local player = Players.LocalPlayer local scannedRooms = {} local convertedParts = {} local stoneMaterial = Enum.Material.Basalt pcall(function() Lighting.Brightness = 0.5 Lighting.ClockTime = 0 Lighting.Ambient = Color3.fromRGB(10,10,10) Lighting.OutdoorAmbient = Color3.fromRGB(5,5,5) Lighting.FogColor = Color3.fromRGB(10,10,10) Lighting.FogStart = 0 Lighting.FogEnd = 60 end) local gui = Instance.new("ScreenGui") gui.Name = "DoorsStyleMessageGui" gui.ResetOnSpawn = false gui.Parent = player:WaitForChild("PlayerGui") local container = Instance.new("Frame", gui) container.Size = UDim2.new(0.6, 0, 0.08, 0) container.Position = UDim2.new(0.2, 0, 0.90, 0) container.BackgroundTransparency = 1 local label = Instance.new("TextLabel", container) label.Size = UDim2.new(1, 0, 1, 0) label.Position = UDim2.new(0, 0, 0, 0) label.BackgroundTransparency = 1 label.TextColor3 = Color3.new(1,1,1) label.TextStrokeTransparency = 0 label.TextStrokeColor3 = Color3.new(0,0,0) label.TextScaled = true label.Font = Enum.Font.GothamBlack label.Text = "" label.TextTransparency = 1 label.TextStrokeTransparency = 1 local messages = { "Script successfully loaded,", "By Raddy_edits.", "do u think this is fun?" } task.spawn(function() local gameData = ReplicatedStorage:WaitForChild("GameData", 10) local latestRoom = gameData and gameData:WaitForChild("LatestRoom", 10) if latestRoom then latestRoom.Changed:Wait() task.wait(0.5) for _, msg in ipairs(messages) do label.Text = msg label.TextTransparency = 1 label.TextStrokeTransparency = 1 TweenService:Create(label, TweenInfo.new(0.2), { TextTransparency = 0, TextStrokeTransparency = 0 }):Play() task.wait(2) local fadeOut = TweenService:Create(label, TweenInfo.new(0.8), { TextTransparency = 1, TextStrokeTransparency = 1 }) fadeOut:Play() fadeOut.Completed:Wait() end gui:Destroy() end end) task.spawn(function() repeat task.wait() until player:FindFirstChild("Backpack") and player.Character local backpack = player:WaitForChild("Backpack") if backpack:FindFirstChild("BlueEternalCandle") or player.Character:FindFirstChild("BlueEternalCandle") then return end local candleTool = Instance.new("Tool") candleTool.Name = "BlueEternalCandle" candleTool.RequiresHandle = true candleTool.CanBeDropped = false local handle = Instance.new("Part") handle.Name = "Handle" handle.Size = Vector3.new(0.3, 1, 0.3) handle.Color = Color3.fromRGB(50, 50, 50) handle.Material = Enum.Material.Wood handle.CanCollide = false handle.Anchored = false handle.Parent = candleTool local flame = Instance.new("ParticleEmitter") flame.Texture = "rbxassetid://296874871" flame.Lifetime = NumberRange.new(0.4, 0.8) flame.Rate = 40 flame.Speed = NumberRange.new(0.2, 0.5) flame.Size = NumberSequence.new({ NumberSequenceKeypoint.new(0, 0.4), NumberSequenceKeypoint.new(1, 0) }) flame.Color = ColorSequence.new(Color3.fromRGB(120,180,255)) flame.LightEmission = 1 flame.Parent = handle local light = Instance.new("PointLight") light.Color = Color3.fromRGB(120,180,255) light.Brightness = 1.8 light.Range = 33 light.Shadows = true light.Parent = handle candleTool.Parent = backpack local char = player.Character if char and char:FindFirstChildOfClass("Humanoid") then char:WaitForChild("Humanoid"):EquipTool(candleTool) end player.CharacterAdded:Connect(function(char) char:WaitForChild("Humanoid"):EquipTool(candleTool) end) end) local function isStructural(part) if not part:IsA("BasePart") then return false end local name = part.Name:lower() return name:find("wall") or name:find("floor") or name:find("ceiling") or name:find("roof") or name:find("part") or name:find("struct") or part.Size.Y > 4 end local function ConvertPart(part) if not convertedParts[part] and isStructural(part) then convertedParts[part] = true part.Material = stoneMaterial part.Color = Color3.fromRGB(110,110,110) for _, d in ipairs(part:GetChildren()) do if d:IsA("Decal") then d:Destroy() end end end end local function WatchRoom(room) for _, obj in ipairs(room:GetDescendants()) do ConvertPart(obj) end room.DescendantAdded:Connect(function(obj) task.wait(0.05) ConvertPart(obj) end) end task.spawn(function() while true do local currentRooms = Workspace:FindFirstChild("CurrentRooms") if currentRooms then for _, room in ipairs(currentRooms:GetChildren()) do if room:IsA("Model") and not scannedRooms[room] then scannedRooms[room] = true coroutine.wrap(WatchRoom)(room) end end end task.wait(1) end end)