
KeylessUniversal

-- // I recommend use delta because i just tested on delta
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local backpack = player:WaitForChild("Backpack")
local tool = Instance.new("Tool")
tool.Name = "Boomboox"
tool.RequiresHandle = true
tool.CanBeDropped = false
tool.ToolTip = "Use IDs of Pekora/Korone on Roblox!"
local handle = Instance.new("Part")
handle.Name = "Handle"
handle.Size = Vector3.new(3.200000047683716, 1.600000023841858, 1.2000000476837158)
handle.Transparency = 0
handle.Color = Color3.fromRGB(255, 0, 0)
handle.Anchored = false
handle.CanCollide = false
handle.CanTouch = false
handle.CanQuery = false
handle.Massless = true
handle.Parent = tool
local mesh = Instance.new("SpecialMesh")
mesh.Name = "Mesh"
mesh.MeshType = Enum.MeshType.FileMesh
mesh.MeshId = "http://www.roblox.com/asset/?id=212302951"
mesh.TextureId = "http://www.roblox.com/asset/?id=212303049"
mesh.Scale = Vector3.new(4, 4, 4)
mesh.Offset = Vector3.new(0, 0, 0)
mesh.Parent = handle
tool.Grip = CFrame.new(
1, -1.25, 0,
0, 0, -1,
0, 1, 0,
1, 0, 0
)
local soundInstance = nil
local cachedSongs = {}
local pastaMusicas = "PekoraMusics"
if not isfolder(pastaMusicas) then
makefolder(pastaMusicas)
end
local function carregarMusicaPekora(id)
local idStr = tostring(id)
local nomeArquivo = pastaMusicas .. "/pekora_" .. idStr .. ".bin"
if cachedSongs[idStr] then
return cachedSongs[idStr]
end
if not isfile(nomeArquivo) then
local url = "http://www.pekora.zip/asset/?id=" .. idStr
local audioData = game:HttpGet(url)
writefile(nomeArquivo, audioData)
end
local assetId = getcustomasset(nomeArquivo)
cachedSongs[idStr] = assetId
return assetId
end
local function tocarMusicaLocal(id)
if soundInstance then
soundInstance:Stop()
soundInstance:Destroy()
soundInstance = nil
end
if not id or id == 0 or id == "" then
return
end
local assetId = carregarMusicaPekora(id)
local handle = tool:FindFirstChild("Handle")
if not handle then
warn("Handle não encontrada!")
return
end
soundInstance = Instance.new("Sound")
soundInstance.SoundId = assetId
soundInstance.Volume = 1
soundInstance.Looped = true
soundInstance.Parent = handle
soundInstance:Play()
end
local v_u_3 = nil
local v_u_5 = player
local v_u_6 = player:GetMouse()
function chooseSong()
if not v_u_5.PlayerGui:FindFirstChild("ChooseSongGui") then
local v_u_11 = Instance.new("ScreenGui")
v_u_11.Name = "ChooseSongGui"
local v12 = Instance.new("Frame")
v12.Style = "RobloxRound"
v12.Size = UDim2.new(0.25, 0, 0.25, 0)
v12.Position = UDim2.new((1 - v12.Size.X.Scale) / 2, 0, (1 - v12.Size.Y.Scale) / 2, 0)
v12.Parent = v_u_11
v12.Draggable = true
local v13 = Instance.new("TextLabel")
v13.BackgroundTransparency = 1
v13.TextStrokeTransparency = 0
v13.TextColor3 = Color3.new(1, 1, 1)
v13.Size = UDim2.new(1, 0, 0.6, 0)
v13.TextScaled = true
v13.Text = "Lay down the beat!\nPut in the ID number for a song you love that's been uploaded to KORONE.\nLeave it blank to stop playing music."
v13.Parent = v12
local v_u_14 = Instance.new("TextBox")
v_u_14.BackgroundColor3 = Color3.new(0, 0, 0)
v_u_14.BackgroundTransparency = 0.5
v_u_14.BorderColor3 = Color3.new(1, 1, 1)
v_u_14.TextColor3 = Color3.new(1, 1, 1)
v_u_14.TextStrokeTransparency = 1
v_u_14.TextScaled = true
v_u_14.Text = "730747"
v_u_14.Size = UDim2.new(1, 0, 0.2, 0)
v_u_14.Position = UDim2.new(0, 0, 0.6, 0)
v_u_14.Parent = v12
local v15 = Instance.new("TextButton")
v15.Style = "RobloxButton"
v15.Size = UDim2.new(0.75, 0, 0.2, 0)
v15.Position = UDim2.new(0.125, 0, 0.8, 0)
v15.TextColor3 = Color3.new(1, 1, 1)
v15.TextStrokeTransparency = 0
v15.Text = "Play!"
v15.TextScaled = true
v15.Parent = v12
v15.MouseButton1Click:connect(function()
local v17 = v_u_14.Text
local id = tonumber(v17)
if id and id > 0 then
tocarMusicaLocal(id)
else
tocarMusicaLocal(nil)
end
v_u_11:Destroy()
end)
v_u_11.Parent = v_u_5.PlayerGui
v_u_3 = v_u_11
end
end
function onAction()
chooseSong()
end
function onEquipped(p7)
onUnequipped()
p7.Button1Down:connect(onAction)
end
function onUnequipped()
if v_u_3 then
v_u_3:Destroy()
v_u_3 = nil
end
if soundInstance then
soundInstance:Stop()
soundInstance:Destroy()
soundInstance = nil
end
end
tool.Equipped:connect(onEquipped)
tool.Unequipped:connect(onUnequipped)
tool.Equipped:Connect(function()
tool.Grip = CFrame.new(
1, -1.25, 0,
0, 0, -1,
0, 1, 0,
1, 0, 0
)
end)
tool.Parent = backpack
print("Made by hqmp5")No comments yet for this script.



