Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- ceat_ceat
- 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
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement