isa tool

Run Settings
LanguageLua
Language Version
Run Command
-- ceat_ceat -- original https://pastebin.com/0kCycv8u owner = owner NLS = NLS or require(13482937602)() warn("isa tool by ceat_ceat") local owner = owner or game:GetService("Players"):GetPlayerFromCharacter(script.Parent) if not owner then return end -------------------------------------------------------------------------------- local runservice = game:GetService("RunService") local tweenservice = game:GetService("TweenService") local debris = game:GetService("Debris") -------------------------------------------------------------------------------- local BG_FPS = 30 local SHEET_WIDTH = 3 local SHEET_HEIGHT = 4 local BG_SHEETS = { 11354963244, 11354964204, 11354965754, 11354966418, 11354967097, 11354967782, 11354968803, 11354969665, 11354970429, 11354971277, 11354972023, 11354972637, 11354973735, 11354975010, 11354975782, 11354976600, 11354977328, 11354978770, 11354979309, 11354980140, 11354981363, 11354982342, 11354983170, 11354985311, 11354986234, 11354987285, 11354988914, 11354989983, 11354991326, 11354992376, 11354993312, 11354994545, 11355005450, 11355006370, 11355007318, 11355007984, 11355009803, 11355014437, 11355021092, 11355021905, 11355023541, 11355024677, 11355028659, 11355030164, 11355031147, 11355031710, 11355032338, 11355034771, 11355035752 } local DESCEND_TIME = 0.75 local DESCEND_FRAMES = { 11095004996, 11095004781, 11095004558, 11095004330, 11095004170, 11095003957, 11095003744, 11095003559, 11095003386, 11095003204, 11095002940, 11095002722, 11095002486, 11095002272, 11095002048, 11095001746, 11095001539, 11095001367, 11095001197, 11095001057, 11095000849, 11095000641, 11095000456, 11095000299, 11095000182, 11094999975, 11094999754, 11094999571, 11094999346, 11094999188, 11094999033, 11094998825, 11094998601, 11094998382, 11094998179, 11094997963, 11094997792, 11094997571 } local KO_FPS = 30 local KO_FRAMES = { 10862920972, 10862921809, 10862922668, 10862923555, 10862924793, 10862941831, 10862942751, 10862943639, 10862944641, 10862945542, 10862964867, 10862965882, 10862969327, 10862972756, 10862973801, 10862981387, 10862982208, 10862983200, 10862984100, 10862985248, 10863009434, 10863011066, 10863012152, 10863013221, 10863014920, 10863020966, 10863022697, 10863024820 } -- { soundid, pitch } local MUSIC = { { 13608974888, 1 }, { 13609022752, 1 }, { 13609152933, 0.5 } } -- { imageid, soundid, music, attacklabelcolor } local LAYERS = { { 11536844696, 8765310014, MUSIC[1], Color3.new(1, 1, 1) }, { 11536844555, 8765310560, MUSIC[1], Color3.new(0, 1, 0) }, { 11536844386, 8765311234, MUSIC[1], Color3.new(0.2, 0.4, 1) }, { 11536844211, 8765312042, MUSIC[1], Color3.new(1, 0, 1) }, { 11536844060, 8765312392, MUSIC[2], Color3.new(1, 1, 0) }, { 11536843409, 8765313042, MUSIC[2], Color3.new(1, 0, 0) }, { 11536843284, 8765313651, MUSIC[2], "RAINBOW" }, { 11536843179, 8765314189, MUSIC[3], "RAINBOW" } } local ATTACK_LABEL_FONT = Font.new("rbxasset://fonts/families/RomanAntique.json") local ATTACK_LABEL_BG_COLORS = { Color3.new(1, 0, 0), Color3.new(0, 1, 1), Color3.fromRGB(85, 85, 127), Color3.fromRGB(255, 150, 0), Color3.new(0, 0, 1), Color3.new(1, 0, 1) } local ATTACK_LABEL_RAINBOW_CYCLE_TIME = 16 local ATTACK_PRESETS = { Modern = { "Instant Death Injury", "Direct Death", "State Manipulation", "State Reversal", "Soul Elimination", "ExplodBreak", "Character Disassembly", "Character Elimination", "Direct Elimination", "Combined Elimination", "Full Elimination", "Amplified Character Elimination", "Amplified Direct Elimination", "Amplified Combined Elimination", "Amplified Full Elimination", "Amplified Full Elimination + System Removal", "inf Applifed Throw", "Fake Dgeradation", "Mesh Degradation", "Enforced Mesh Degradation", "Full Mesh Degradation", "Mesh ID Degradation", "Direct Void Throw", "Combined Void Throw", "Fake Degradation Tampering", "Mesh Degradation Tampering", "Forced Mesh Degradation Tampering", "Full Mesh Degradation Tampering", "Forced Full Mesh Degradation Tampering", "Mesh ID Degradation Tampering", "Forced Mesh ID Degradation Tampering", "Void Tampering Throw", "Combined Void Tampering Throw", "Forced Void Tampering Throw", "Forced Combined Void Tampering Throw", "Amplified Fake Degradation Tampering", "Amplified Mesh Degradation Tampering", "Amplified Forced Mesh Degradation Tampering", "Amplified Enforced Mesh Degradation", "Amplified Full Mesh Degradation Tampering", "Amplified Forced Full Mesh Degradation Tampering", "Amplified Mesh ID Degradation Tampering", "Amplified Forced Mesh ID Degradation Tampering", "Amplified Void Tampering Throw", "Amplified Combined Void Tampering Throw", "Amplified Forced Void Tampering Throw", "Amplified Forced Combined Void Tampering Throw", "HYPERDeath", "HYPER F-Degradation", "HYPERDegradation", "HYPER E-Degradation", "Full HYPERDegradation", "ID HYPERDegradation", "HYPERVoid", "Combined HYPERVoid", "Esoteric Elimination", "Amplified Esoteric Elimination", "PPE Obliteration", "PERM Erasure", "摧ける", "Infinite Soulabyss" }, Old = { "Instant Damage", "Fake Void Throw", "Two-Fold Forced Mesh Degradation Tampering", "砕けろ" } } -------------------------------------------------------------------------------- local sheetframes = SHEET_WIDTH * SHEET_HEIGHT local totalframes = #BG_SHEETS * sheetframes local starttime = os.clock() local tool = Instance.new("Tool") tool.Name = "ISA" local handle = Instance.new("Part", tool) handle.Size = Vector3.new(16/2, 9/2, 1) handle.Massless = true handle.Name = "Handle" local music = Instance.new("Sound", handle) music.Looped = true music.Volume = 1 music.SoundId = "rbxassetid://" .. MUSIC[1][1] music.Pitch = MUSIC[1][2] local surfacegui = Instance.new("SurfaceGui", handle) surfacegui.ClipsDescendants = true local bgcontainer = Instance.new("Frame", surfacegui) bgcontainer.BackgroundTransparency = 1 bgcontainer.Size = UDim2.new(1, 0, 1, 0) bgcontainer.ZIndex = 1 local descendcontainer = Instance.new("Frame", surfacegui) descendcontainer.BackgroundTransparency = 1 descendcontainer.Size = UDim2.new(1, 0, 1, 0) descendcontainer.Visible = false descendcontainer.ZIndex = 2 local kocontainer = Instance.new("Frame", surfacegui) kocontainer.BackgroundTransparency = 1 kocontainer.Size = UDim2.new(1, 0, 1, 0) kocontainer.Visible = false kocontainer.ZIndex = 3 local attacklabelbackground = Instance.new("ImageLabel", surfacegui) attacklabelbackground.BackgroundTransparency = 1 attacklabelbackground.Position = UDim2.new(0, 0, 0.15, 0) attacklabelbackground.Size = UDim2.new(1, 0, 0.15, 0) attacklabelbackground.Image = "rbxassetid://11096220259" attacklabelbackground.Visible = false attacklabelbackground.ZIndex = 2 local attacklabel = Instance.new("TextLabel", attacklabelbackground) attacklabel.AnchorPoint = Vector2.new(0.5, 0.5) attacklabel.BackgroundTransparency = 1 attacklabel.Position = UDim2.new(0.5, 0, 0.45, 0) attacklabel.Size = UDim2.new(0.9, 0, 0.9, 0) attacklabel.FontFace = ATTACK_LABEL_FONT attacklabel.TextColor3 = Color3.new(1, 1, 1) attacklabel.TextScaled = true attacklabel.ZIndex = 2 local flash = Instance.new("Frame", surfacegui) flash.Size = UDim2.new(1, 0, 1, 0) flash.Visible = false flash.ZIndex = 3 local bgsheets = {} local descendframes = {} for i, frameid in next, BG_SHEETS do local image = Instance.new("ImageLabel", bgcontainer) image.Image = "rbxassetid://" .. frameid image.Size = UDim2.new(SHEET_WIDTH, 0, SHEET_HEIGHT, 0) image.Visible = false bgsheets[i] = image end for i, frameid in next, DESCEND_FRAMES do local image = Instance.new("ImageLabel", descendcontainer) image.Image = "rbxassetid://" .. frameid image.Size = UDim2.new(1, 0, 1, 0) image.Visible = false descendframes[i] = image end for i, frameid in next, KO_FRAMES do local image = Instance.new("ImageLabel", kocontainer) image.BackgroundTransparency = 1 image.Image = "rbxassetid://" .. frameid image.Size = UDim2.new(1, 0, 1, 0) image.Visible = false image.Name = i end local loadercontainer = Instance.new("Model", tool) local loadplease = Instance.new("Part", loadercontainer) loadplease.Anchored = true loadplease.CanCollide = false loadplease.CanTouch = false loadplease.CanQuery = false loadplease.CFrame = CFrame.new(0, 20, 0) loadplease.Size = Vector3.zero loadplease.Transparency = 1 local loaderscreengui = surfacegui:Clone() loaderscreengui.Parent = loadplease for _, frame in loaderscreengui:GetDescendants() do frame.Visible = true end ------------------------------------------------------------------------------- local isdescending = false local touched local currentlayer = 0 local currentsong = MUSIC[1] local lastlaughtime = workspace.DistributedGameTime local function ko() local laugh = Instance.new("Sound", handle) laugh.SoundId = "rbxassetid://8765309507" laugh.Volume = 3 laugh:Play() debris:AddItem(laugh, 2.1) local attacksound = Instance.new("Sound", handle) attacksound.SoundId = "rbxassetid://9060378036" attacksound.Volume = 4 attacksound:Play() debris:AddItem(attacksound, 2) local container = kocontainer:Clone() local frames = {} for i in next, container:GetChildren() do frames[i] = container:FindFirstChild(tostring(i)) end container.Parent = surfacegui container.Visible = true task.spawn(function() flash.BackgroundColor3 = Color3.new(1, 0, 0) for i = 1, 2 do flash.Visible = true task.wait(0.075) flash.Visible = false task.wait(0.075) end end) for i, frame in next, frames do if i ~= 1 then frames[i - 1].Visible = false end frame.Visible = true task.wait(1/KO_FPS) end task.wait(1) container:Destroy() end local function ontouched(hit) if not hit:IsDescendantOf(tool.Parent) and not hit:IsDescendantOf(tool.Parent) and math.max(hit.Size.X, hit.Size.Y, hit.Size.Z) < 100 then pcall(game.Destroy, hit) if workspace.DistributedGameTime - lastlaughtime > 0.2 then lastlaughtime = workspace.DistributedGameTime ko() end end end tool.Equipped:Connect(function(mouse) local chr = tool.Parent touched = handle.Touched:Connect(ontouched) local genesis = Instance.new("Sound", handle) genesis.SoundId = "rbxassetid://8765309012" genesis.TimePosition = 1 genesis.Volume = 3 genesis:Play() debris:AddItem(genesis, 2.5) music.Playing = true end) tool.Unequipped:Connect(function() if touched then touched:Disconnect() end local death = Instance.new("Sound", handle) death.SoundId = "rbxassetid://8765308354" death.Volume = 3 death:Play() debris:AddItem(death, 2) music.Playing = false end) tool.Activated:Connect(function() if isdescending then return end isdescending = true descendcontainer.Visible = true local descendsound = Instance.new("Sound", handle) descendsound.SoundId = "rbxassetid://9060399229" descendsound.Volume = 4 descendsound:Play() debris:AddItem(descendsound, 2) local descendtime = os.clock() repeat task.wait() local frame = math.ceil((os.clock() - descendtime)/DESCEND_TIME*#descendframes) for i, image in next, descendframes do image.Visible = frame == i end until os.clock() - descendtime >= DESCEND_TIME descendcontainer.Visible = false isdescending = false currentlayer = currentlayer + 1 if currentlayer > #LAYERS then currentlayer = 1 end local layer = LAYERS[currentlayer] local layerimage = Instance.new("ImageLabel") layerimage.AnchorPoint = Vector2.new(0.5, 0.5) layerimage.BackgroundTransparency = 1 layerimage.Position = UDim2.new(0.5, 0, 0.5, 0) layerimage.Size = UDim2.new(0, 150, 0, 150) layerimage.Image = "rbxassetid://" .. layer[1] layerimage.ScaleType = Enum.ScaleType.Fit layerimage.ZIndex = 5 layerimage.Parent = surfacegui tool.TextureId = "rbxassetid://" .. layer[1] tweenservice:Create(layerimage, TweenInfo.new(1), { ImageTransparency = 1 }):Play() debris:AddItem(layerimage, 1) local voiceline = Instance.new("Sound", handle) voiceline.SoundId = "rbxassetid://" .. layer[2] voiceline.Volume = 4 voiceline:Play() debris:AddItem(voiceline, 5) local attacksound = Instance.new("Sound", handle) attacksound.SoundId = "rbxassetid://9060378036" attacksound.Volume = 4 attacksound:Play() debris:AddItem(attacksound, 2) local newlabelcolor = layer[4] if newlabelcolor == "RAINBOW" then attacklabel.TextColor3 = Color3.fromHSV((workspace.DistributedGameTime/ATTACK_LABEL_RAINBOW_CYCLE_TIME)%1, 0.8, 1) else attacklabel.TextColor3 = newlabelcolor end if layer[3] ~= currentsong then currentsong = layer[3] music.SoundId = "rbxassetid://" .. currentsong[1] music.Pitch = currentsong[2] music.TimePosition = 0 end flash.BackgroundColor3 = Color3.new(1, 1, 1) for i = 1, 2 do flash.Visible = true task.wait(0.075) flash.Visible = false task.wait(0.075) end end) ------------------------------------------------------------------------------- -- attack label input ------------------------------------------------------------------------------- function newattacklabel(labelclass) local bg = Instance.new("ImageLabel") bg.BackgroundTransparency = 1 bg.Size = UDim2.new(0, 100, 0, 30) bg.Image = "rbxassetid://11096220259" local button = Instance.new(labelclass, bg) button.AnchorPoint = Vector2.new(0.5, 0.5) button.BackgroundTransparency = 1 button.Position = UDim2.new(0.5, 0, 0.45, 0) button.Size = UDim2.new(1, 0, 0.9, 0) button.FontFace = ATTACK_LABEL_FONT button.TextColor3 = Color3.new(1, 1, 1) button.TextSize = 20 button.Name = "Label" return bg end local screengui = Instance.new("ScreenGui") local remoteevent = Instance.new("RemoteEvent", screengui) remoteevent.Name = "SETATTACKNAME" local inputcontainer = Instance.new("Frame", screengui) inputcontainer.AnchorPoint = Vector2.new(1, 1) inputcontainer.BackgroundTransparency = 1 inputcontainer.Position = UDim2.new(1, 0, 1, 0) inputcontainer.Size = UDim2.new(0, 100, 0, 100) local inputuilist = Instance.new("UIListLayout", inputcontainer) inputuilist.Padding = UDim.new(0, 5) inputuilist.FillDirection = Enum.FillDirection.Horizontal inputuilist.HorizontalAlignment = Enum.HorizontalAlignment.Right inputuilist.SortOrder = Enum.SortOrder.LayoutOrder inputuilist.VerticalAlignment = Enum.VerticalAlignment.Bottom function createselector(name, layoutorder, list) local bg = newattacklabel("TextButton") bg.LayoutOrder = layoutorder bg.Label.Text = name bg.Label.Name = "Opener" local frame = Instance.new("ScrollingFrame", bg) frame.AnchorPoint = Vector2.new(0, 1) frame.BackgroundTransparency = 1 frame.BorderSizePixel = 0 frame.Position = UDim2.new(0, 0, 0, -2) frame.Size = UDim2.new(1, 0, 10, 0) frame.ScrollBarThickness = 0 frame.AutomaticCanvasSize = Enum.AutomaticSize.Y frame.Visible = false local uilistlayout = Instance.new("UIListLayout", frame) uilistlayout.SortOrder = Enum.SortOrder.Name uilistlayout.Padding = UDim.new(0, 2) for _, attackname in next, list do local attackbg = newattacklabel("TextButton") attackbg.Name = attackname attackbg.Label.Text = attackname attackbg.Label.TextScaled = true attackbg.Label.Name = "Preset" local padding = Instance.new("UIPadding", attackbg.Preset) padding.PaddingLeft = UDim.new(0, 10) padding.PaddingRight = UDim.new(0, 10) attackbg.Parent = frame end return bg end local inputbox = newattacklabel("TextBox") inputbox.AutomaticSize = Enum.AutomaticSize.X inputbox.Size = UDim2.new(0, 200, 0, 30) inputbox.Label.AnchorPoint = Vector2.new(0, 0.5) inputbox.Label.AutomaticSize = Enum.AutomaticSize.X inputbox.Label.ClearTextOnFocus = false inputbox.Label.Position = UDim2.new(0, 0, 0.45, 0) inputbox.Label.PlaceholderColor3 = Color3.fromRGB(178, 178, 178) inputbox.Label.PlaceholderText = "Input Attack Name" inputbox.Label.Text = "" local inputpadding = Instance.new("UIPadding", inputbox.Label) inputpadding.PaddingLeft = UDim.new(0, 20) inputpadding.PaddingRight = UDim.new(0, 20) inputbox.Label.Name = "TextBox" inputbox.Name = "InputBox" inputbox.LayoutOrder = 3 inputbox.Parent = inputcontainer createselector("Presets", 2, ATTACK_PRESETS.Modern).Parent = inputcontainer createselector("Old Presets", 1, ATTACK_PRESETS.Old).Parent = inputcontainer remoteevent.OnServerEvent:Connect(function(_, text) if typeof(text) ~= "string" then return end if text == "" then attacklabelbackground.Visible = false if workspace.DistributedGameTime - lastlaughtime > 0.2 then lastlaughtime = workspace.DistributedGameTime ko() end return end attacklabelbackground.Visible = true attacklabel.Text = text local attackflash = flash:Clone() attackflash.BackgroundColor3 = Color3.new(1, 1, 1) attackflash.Visible = true attackflash.Parent = surfacegui tweenservice:Create(attackflash, TweenInfo.new(0.5), { BackgroundTransparency = 1 }):Play() debris:AddItem(attackflash, 0.5) local attacksound = Instance.new("Sound", handle) attacksound.SoundId = "rbxassetid://9060378036" attacksound.Volume = 4 attacksound:Play() debris:AddItem(attacksound, 2) end) task.spawn(NLS, [[ local screengui = script.Parent local remoteevent = screengui:WaitForChild("SETATTACKNAME") local container = screengui:WaitForChild("Frame") for _, inst in next, container:GetDescendants() do if inst.Name == "Opener" then local frame = inst.Parent.ScrollingFrame inst.MouseButton1Click:Connect(function() frame.Visible = not frame.Visible end) elseif inst.Name == "Preset" then local text = inst.Text inst.MouseButton1Click:Connect(function() remoteevent:FireServer(text) end) end end local inputbox = container:WaitForChild("InputBox"):WaitForChild("TextBox") inputbox.FocusLost:Connect(function() remoteevent:FireServer(inputbox.Text) end) ]], screengui) screengui.Parent = owner:FindFirstChildOfClass("PlayerGui") ------------------------------------------------------------------------------- tool.Parent = owner:FindFirstChildOfClass("Backpack") or Instance.new("Backpack", owner) ------------------------------------------------------------------------------- ------------------------------------------------------------------------------- local waittime = 1/BG_FPS local sheetidx = 1 local tileidx = 0 local attackbgcoloridx = 0 local nextattacklabeltweentime = 0 local prevsheet while tool:IsDescendantOf(game) do if prevsheet then prevsheet.Visible = false end if sheetidx > #bgsheets then sheetidx = 1 end local sheet = bgsheets[sheetidx] sheet.Visible = true prevsheet = sheet for y = 0, 3 do for x = 0, 2 do tileidx = tileidx + 1 sheet.Position = UDim2.new(-x, 0, -y, 0) sheet.ImageColor3 = Color3.fromHSV(tileidx / totalframes % 1, 0.75, 1) if LAYERS[currentlayer] and LAYERS[currentlayer][4] == "RAINBOW" then attacklabel.TextColor3 = Color3.fromHSV((workspace.DistributedGameTime/ATTACK_LABEL_RAINBOW_CYCLE_TIME)%1, 0.8, 1) end if workspace.DistributedGameTime > nextattacklabeltweentime then attackbgcoloridx = attackbgcoloridx + 1 if attackbgcoloridx > #ATTACK_LABEL_BG_COLORS then attackbgcoloridx = 1 end local duration = math.random(2, 4) tweenservice:Create(attacklabelbackground, TweenInfo.new(duration), { ImageColor3 = ATTACK_LABEL_BG_COLORS[attackbgcoloridx] }):Play() nextattacklabeltweentime = workspace.DistributedGameTime + duration * 1.25 end loadplease.CFrame = handle.CFrame * CFrame.new(0, 0, -0.6) task.wait(waittime) end end sheetidx = sheetidx + 1 end
Editor Settings
Theme
Key bindings
Full width
Lines