Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- Reaper Toll FPS Counter – Dark Gothic Theme
- -- Place this LocalScript in StarterPlayerScripts or StarterGui.
- --== SERVICES =================================================================
- local Players = game:GetService("Players")
- local RunService = game:GetService("RunService")
- local TweenService = game:GetService("TweenService")
- --== PLAYER & GUI SETUP ========================================================
- local player = Players.LocalPlayer
- local playerGui = player:WaitForChild("PlayerGui")
- local screenGui = Instance.new("ScreenGui")
- screenGui.Name = "ReaperFPSGui"
- screenGui.ResetOnSpawn = false
- screenGui.IgnoreGuiInset = true
- screenGui.Parent = playerGui
- --== SKULL EMOJI (REAPER SYMBOL) ==============================================
- local skull = Instance.new("TextLabel")
- skull.Name = "ReaperSkull"
- skull.Size = UDim2.new(0, 30, 0, 30)
- skull.AnchorPoint = Vector2.new(0, 1)
- skull.Position = UDim2.new(0.5, -200, 1, -10)
- skull.BackgroundTransparency = 1
- skull.Text = "💀"
- skull.TextScaled = true
- skull.Font = Enum.Font.SourceSansBold
- skull.TextColor3 = Color3.fromRGB(150, 0, 0)
- skull.Parent = screenGui
- -- Glowing effect for skull
- local skullGlow = Instance.new("UIStroke")
- skullGlow.Color = Color3.fromRGB(100, 0, 0)
- skullGlow.Thickness = 2
- skullGlow.Transparency = 0.3
- skullGlow.Parent = skull
- --== REAPER FPS DISPLAY ======================================================
- local fpsLabel = Instance.new("TextLabel")
- fpsLabel.Name = "ReaperFPSLabel"
- fpsLabel.AnchorPoint = Vector2.new(0, 1)
- fpsLabel.Position = UDim2.new(0.5, -160, 1, -10)
- fpsLabel.Size = UDim2.new(0, 90, 0, 30)
- fpsLabel.BackgroundColor3 = Color3.fromRGB(20, 20, 20)
- fpsLabel.BorderSizePixel = 0
- fpsLabel.Text = "SOULS: --"
- fpsLabel.TextColor3 = Color3.fromRGB(150, 0, 0)
- fpsLabel.Font = Enum.Font.SourceSansBold
- fpsLabel.TextScaled = true
- fpsLabel.Parent = screenGui
- local fpsCorner = Instance.new("UICorner", fpsLabel)
- fpsCorner.CornerRadius = UDim.new(0, 8)
- -- Dark border for FPS label
- local fpsStroke = Instance.new("UIStroke")
- fpsStroke.Color = Color3.fromRGB(80, 0, 0)
- fpsStroke.Thickness = 2
- fpsStroke.Parent = fpsLabel
- --== REAPER MESSAGE BOX =====================================================
- local messageBox = Instance.new("TextLabel")
- messageBox.Name = "ReaperMessage"
- messageBox.AnchorPoint = Vector2.new(0, 1)
- messageBox.Position = UDim2.new(0.5, -60, 1, -10)
- messageBox.Size = UDim2.new(0, 320, 0, 30)
- messageBox.BackgroundColor3 = Color3.fromRGB(25, 25, 25)
- messageBox.BorderSizePixel = 0
- messageBox.Text = "The Reaper awaits..."
- messageBox.TextColor3 = Color3.fromRGB(150, 0, 0)
- messageBox.Font = Enum.Font.SourceSansBold
- messageBox.TextScaled = true
- messageBox.Parent = screenGui
- local messageCorner = Instance.new("UICorner", messageBox)
- messageCorner.CornerRadius = UDim.new(0, 8)
- -- Dark border for message box
- local messageStroke = Instance.new("UIStroke")
- messageStroke.Color = Color3.fromRGB(80, 0, 0)
- messageStroke.Thickness = 2
- messageStroke.Parent = messageBox
- --== REAPER FPS LOGIC ========================================================
- local frameCount = 0
- local lastTime = tick()
- local rotation = 0
- local pulseDirection = 1
- -- Pulsing animation info
- local pulseInfo = TweenInfo.new(1, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut, -1, true)
- RunService.RenderStepped:Connect(function()
- frameCount += 1
- if tick() - lastTime >= 1 then
- local fps = frameCount
- fpsLabel.Text = ("SOULS: %d"):format(fps)
- if fps >= 60 then
- -- High FPS - Reaper is pleased
- fpsLabel.TextColor3 = Color3.fromRGB(0, 150, 0)
- fpsStroke.Color = Color3.fromRGB(0, 100, 0)
- skull.Text = "😈"
- skull.TextColor3 = Color3.fromRGB(0, 150, 0)
- skullGlow.Color = Color3.fromRGB(0, 100, 0)
- messageBox.Text = "The Reaper is satisfied with your souls..."
- messageBox.TextColor3 = Color3.fromRGB(0, 150, 0)
- messageStroke.Color = Color3.fromRGB(0, 100, 0)
- elseif fps >= 30 then
- -- Medium FPS - Reaper is growing impatient
- fpsLabel.TextColor3 = Color3.fromRGB(200, 100, 0)
- fpsStroke.Color = Color3.fromRGB(150, 80, 0)
- skull.Text = "👹"
- skull.TextColor3 = Color3.fromRGB(200, 100, 0)
- skullGlow.Color = Color3.fromRGB(150, 80, 0)
- messageBox.Text = "The Reaper grows restless... souls are slipping away"
- messageBox.TextColor3 = Color3.fromRGB(200, 100, 0)
- messageStroke.Color = Color3.fromRGB(150, 80, 0)
- else
- -- Low FPS - Reaper's wrath
- fpsLabel.TextColor3 = Color3.fromRGB(200, 0, 0)
- fpsStroke.Color = Color3.fromRGB(150, 0, 0)
- skull.Text = "💀"
- skull.TextColor3 = Color3.fromRGB(200, 0, 0)
- skullGlow.Color = Color3.fromRGB(150, 0, 0)
- messageBox.Text = "The Reaper's toll demands sacrifice! Your souls are forfeit!"
- messageBox.TextColor3 = Color3.fromRGB(200, 0, 0)
- messageStroke.Color = Color3.fromRGB(150, 0, 0)
- end
- frameCount = 0
- lastTime = tick()
- end
- -- Ominous skull rotation (slower, more menacing)
- rotation += 1.5
- skull.Rotation = rotation % 360
- -- Pulse effect for low FPS warning
- if frameCount > 0 and (frameCount / (tick() - lastTime)) < 30 then
- local pulse = math.sin(tick() * 3) * 0.3 + 0.7
- skull.Size = UDim2.new(0, 30 * pulse, 0, 30 * pulse)
- else
- skull.Size = UDim2.new(0, 30, 0, 30)
- end
- end)
- -- Flickering effect for the entire GUI when FPS is very low
- spawn(function()
- while true do
- wait(0.1)
- if frameCount > 0 and (frameCount / (tick() - lastTime)) < 20 then
- screenGui.Enabled = false
- wait(0.05)
- screenGui.Enabled = true
- end
- end
- end)
- print("[ReaperFPS] The Reaper's toll has been implemented ⚰️💀")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement