Quick actions

cmd+k|ctrl+k

Navigation

Languages

catgirl jumpscare

Snippet info

Language

Lua

Visibility

public

Author

lazarovalkyrie

Created

2024-08-10T01:13:34.891491Z

Updated

2024-08-10T01:17:19.651438Z

local plr = owner
local chr = plr.Character
local root = chr.HumanoidRootPart
booming = false

local Gui = Instance.new("ScreenGui")
Gui.Name = "Img"

local Img = Instance.new("ImageLabel")
Img.Size = UDim2.new(0.5, 0, 0.5, 0)
Img.Position = UDim2.new(0.25, 0, 0.25, 0)
Img.BorderSizePixel = 0
Img.BackgroundColor3 = Color3.new(1, 1, 1)
Img.BackgroundTransparency = 1
Img.ImageTransparency = 1
Img.Parent = Gui

local images = {
	18817519330,
	18817097052,
	18821129301,
	18816131500,
	18817329733,
	18821356473
}

local sounds = {
	3347392167,
	8323804973,
	5896249846,
	5683417249,
	6315490668,
	8594342648,
	8306643917,
	6332053702,
	7655021478,
	5039052146,
	5433158470
}

for i,v in pairs(sounds) do
	game:GetService("ContentProvider"):Preload('rbxassetid://' .. v)
end
for i,v in pairs(images) do
	game:GetService("ContentProvider"):Preload('rbxassetid://' .. v)
end

local boom = Instance.new("Sound")
boom.SoundId = "rbxassetid://6823153536"
boom.Volume = 1
boom.PlayOnRemove = true

function makeboom(person)
	if person then else return end
	
	local g = Gui:Clone()
	g.Parent = person:FindFirstChildOfClass("PlayerGui")
	local c = g.ImageLabel
	c.Image = 'rbxassetid://' .. images[math.random(#images)]

	local tweenTime = Random.new():NextNumber(0.25, 0.5)
	local randomSize = Random.new():NextNumber(0.7, 1.2)
	local randomPosX = Random.new():NextNumber(-0.125, 0.125)
	local randomPosY = Random.new():NextNumber(-0.125, 0.125)

	game:GetService"TweenService":Create(
		c,
		TweenInfo.new(tweenTime, Enum.EasingStyle.Bounce, Enum.EasingDirection.Out),
		{Size = UDim2.new(randomSize, 0, randomSize, 0), Position = UDim2.new(randomPosX, 0, randomPosY, 0), ImageTransparency = 0}
	):Play()

	task.spawn(function()
		task.wait(0.5)

		game:GetService"TweenService":Create(
			c,
			TweenInfo.new(tweenTime, Enum.EasingStyle.Sine, Enum.EasingDirection.Out),
			{ImageTransparency = 1}
		):Play()

		task.wait(0.25)
	end)

	local explosion = boom:Clone()
	explosion.Parent = person.PlayerGui
	explosion:Play()
	explosion:Destroy()
	
	local explosion = boom:Clone()
	explosion.SoundId = 'rbxassetid://' .. sounds[math.random(#sounds)]
	explosion.Parent = person.PlayerGui
	explosion:Play()
	explosion:Destroy()

	task.wait(Random.new():NextNumber(0.01, 0.1))
end

local remote = Instance.new('RemoteEvent')
remote.Name = 'KeybindConnection'
remote.Parent = plr:FindFirstChildOfClass("PlayerGui")

NLS([[
local chr = game:GetService("Players").LocalPlayer
repeat wait() until script.Parent
local remote = script.Parent
local UIS = game:GetService('UserInputService')
UIS.InputBegan:Connect(function(key,g)
    if not g then
        remote:FireServer(key.KeyCode,'keydown')
    end
end)
UIS.InputEnded:Connect(function(key,g)
    remote:FireServer(key.KeyCode,'keyup')
end)
]],remote)

remote.OnServerEvent:Connect(function(lplr,key,input)
	if lplr == plr then else return end
	if key == Enum.KeyCode.Q then
		if input == "keydown" then
			boomed = true
		else
			boomed = false
		end
	elseif key == Enum.KeyCode.E then
		if input == "keydown" then
			for i,v in pairs(game:GetService("Players"):GetPlayers()) do
				makeboom(v)
			end
		end
	end
end)

game:GetService("RunService").Heartbeat:Connect(function()
	if boomed == true then
		for i,v in pairs(game:GetService("Players"):GetPlayers()) do
			makeboom(v)
		end
	end
end)
INFO