Untitled

Run Settings
LanguageLua
Language Version
Run Command
local client = nil local clientls = [==[ local plr = game:GetService("Players").LocalPlayer local character = plr.Character or plr.CharacterAdded:Wait() plr.CharacterAdded:Connect(function(c) character = c end) local rem = script:WaitForChild("RemoteEvent") local camshaker = (function()local l={} l.__index=l local c=debug.profilebegin local d=debug.profileend local b="CameraShakerUpdate" local _=Vector3.new local a=CFrame.new local e=CFrame.Angles local i=math.rad local j=_() local k=(function()local e={} e.__index=e local b=Vector3.new local _=math.noise e.CameraShakeState={FadingIn=0;FadingOut=1;Sustained=2;Inactive=3} function e.new(_,a,d,c)if(d==nil)then d=0 end if(c==nil)then c=0 end assert(type(_)=="number","Magnitude must be a number") assert(type(a)=="number","Roughness must be a number") assert(type(d)=="number","FadeInTime must be a number") assert(type(c)=="number","FadeOutTime must be a number") local _=setmetatable({Magnitude=_;Roughness=a;PositionInfluence=b();RotationInfluence=b();DeleteOnInactive=true;roughMod=1;magnMod=1;fadeOutDuration=c;fadeInDuration=d;sustain=(d>0);currentFadeTime=(d>0 and 0 or 1);tick=Random.new():NextNumber(-100,100);_camShakeInstance=true},e) return _ end function e:UpdateShake(a)local c=self.tick local d=self.currentFadeTime local _=b(_(c,0)*0.5,_(0,c)*0.5,_(c,c)*0.5) if(self.fadeInDuration>0 and self.sustain)then if(d<1)then d=d+(a/self.fadeInDuration)elseif(self.fadeOutDuration>0)then self.sustain=false end end if(not self.sustain)then d=d-(a/self.fadeOutDuration)end if(self.sustain)then self.tick=c+(a*self.Roughness*self.roughMod)else self.tick=c+(a*self.Roughness*self.roughMod*d)end self.currentFadeTime=d return _*self.Magnitude*self.magnMod*d end function e:StartFadeOut(_)if(_==0)then self.currentFadeTime=0 end self.fadeOutDuration=_ self.fadeInDuration=0 self.sustain=false end function e:StartFadeIn(_)if(_==0)then self.currentFadeTime=1 end self.fadeInDuration=_ or self.fadeInDuration self.fadeOutDuration=0 self.sustain=true end function e:GetScaleRoughness()return self.roughMod end function e:SetScaleRoughness(_)self.roughMod=_ end function e:GetScaleMagnitude()return self.magnMod end function e:SetScaleMagnitude(_)self.magnMod=_ end function e:GetNormalizedFadeTime()return self.currentFadeTime end function e:IsShaking()return(self.currentFadeTime>0 or self.sustain)end function e:IsFadingOut()return((not self.sustain)and self.currentFadeTime>0)end function e:IsFadingIn()return(self.currentFadeTime<1 and self.sustain and self.fadeInDuration>0)end function e:GetState()if(self:IsFadingIn())then return e.CameraShakeState.FadingIn elseif(self:IsFadingOut())then return e.CameraShakeState.FadingOut elseif(self:IsShaking())then return e.CameraShakeState.Sustained else return e.CameraShakeState.Inactive end end return e end)() local h=k.CameraShakeState local f=_(0.15,0.15,0.15) local g=_(1,1,1) l.CameraShakeInstance=k l.Presets=(function()local a={Bump=function()local _=k.new(2.5,4,0.1,0.75) _.PositionInfluence=Vector3.new(0.15,0.15,0.15) _.RotationInfluence=Vector3.new(1,1,1) return _ end;Explosion=function()local _=k.new(5,10,0,1.5) _.PositionInfluence=Vector3.new(0.25,0.25,0.25) _.RotationInfluence=Vector3.new(4,1,1) return _ end;Earthquake=function()local _=k.new(0.6,3.5,2,10) _.PositionInfluence=Vector3.new(0.25,0.25,0.25) _.RotationInfluence=Vector3.new(1,1,4) return _ end;BadTrip=function()local _=k.new(10,0.15,5,10) _.PositionInfluence=Vector3.new(0,0,0.15) _.RotationInfluence=Vector3.new(2,1,4) return _ end;HandheldCamera=function()local _=k.new(1,0.25,5,10) _.PositionInfluence=Vector3.new(0,0,0) _.RotationInfluence=Vector3.new(1,0.5,0.5) return _ end;Vibration=function()local _=k.new(0.4,20,2,2) _.PositionInfluence=Vector3.new(0,0.15,0) _.RotationInfluence=Vector3.new(1.25,0,4) return _ end;RoughDriving=function()local _=k.new(1,2,1,1) _.PositionInfluence=Vector3.new(0,0,0) _.RotationInfluence=Vector3.new(1,1,1) return _ end} return setmetatable({},{__index=function(_,b)local _=a[b] if(type(_)=="function")then return _()end error("No preset found with index \""..b.."\"")end})end)() function l.new(a,_)assert(type(a)=="number","RenderPriority must be a number (e.g.: Enum.RenderPriority.Camera.Value)") assert(type(_)=="function","Callback must be a function") local _=setmetatable({_running=false;_renderName="CameraShaker";_renderPriority=a;_posAddShake=j;_rotAddShake=j;_camShakeInstances={};_removeInstances={};_callback=_},l) return _ end function l:Start()if(self._running)then return end self._running=true local a=self._callback game:GetService("RunService"):BindToRenderStep(self._renderName,self._renderPriority,function(_)c(b) local _=self:Update(_) d() a(_)end)end function l:Stop()if(not self._running)then return end game:GetService("RunService"):UnbindFromRenderStep(self._renderName) self._running=false end function l:StopSustained(a)for _,_ in pairs(self._camShakeInstances)do if(_.fadeOutDuration==0)then _:StartFadeOut(a or _.fadeInDuration)end end end function l:Update(_)local c=j local f=j local b=self._camShakeInstances for a=1,#b do local d=b[a] local b=d:GetState() if(b==h.Inactive and d.DeleteOnInactive)then self._removeInstances[#self._removeInstances+1]=a elseif(b~=h.Inactive)then local _=d:UpdateShake(_) c=c+(_*d.PositionInfluence) f=f+(_*d.RotationInfluence)end end for a=#self._removeInstances,1,-1 do local _=self._removeInstances[a] table.remove(b,_) self._removeInstances[a]=nil end return a(c)*e(0,i(f.Y),0)*e(i(f.X),0,i(f.Z))end function l:Shake(_)assert(type(_)=="table"and _._camShakeInstance,"ShakeInstance must be of type CameraShakeInstance") self._camShakeInstances[#self._camShakeInstances+1]=_ return _ end function l:ShakeSustain(_)assert(type(_)=="table"and _._camShakeInstance,"ShakeInstance must be of type CameraShakeInstance") self._camShakeInstances[#self._camShakeInstances+1]=_ _:StartFadeIn(_.fadeInDuration) return _ end function l:ShakeOnce(c,_,a,b,e,d)local _=k.new(c,_,a,b) _.PositionInfluence=(typeof(e)=="Vector3"and e or f) _.RotationInfluence=(typeof(d)=="Vector3"and d or g) self._camShakeInstances[#self._camShakeInstances+1]=_ return _ end function l:StartShake(_,a,c,d,b)local _=k.new(_,a,c) _.PositionInfluence=(typeof(d)=="Vector3"and d or f) _.RotationInfluence=(typeof(b)=="Vector3"and b or g) _:StartFadeIn(c) self._camShakeInstances[#self._camShakeInstances+1]=_ return _ end return l end)() local shaker = camshaker.new(Enum.RenderPriority.Camera.Value+1, function(cf) workspace.CurrentCamera.CFrame = workspace.CurrentCamera.CFrame * cf end) shaker:Start() rem.OnClientEvent:Connect(function(type, data) if(type == "ShakeCamera")then shaker:Shake(camshaker.Presets[data]) end end) game:GetService("RunService").RenderStepped:Connect(function() if(not character:FindFirstChild("HumanoidRootPart") or not character:FindFirstChild("Head"))then return end character:FindFirstChildOfClass("Humanoid").CameraOffset = character:FindFirstChildOfClass("Humanoid").CameraOffset:Lerp((character:FindFirstChild("HumanoidRootPart").CFrame*CFrame.new(0,1.5,0)):PointToObjectSpace(character:FindFirstChild("Head").Position),.125) end) ]==]; local realsc = script local script = require(13233384945):Get("Sukuna") script.Parent = nil local assets = script:WaitForChild("Assets") local trueanimations = {} local fpose = script.Animations.firearrow:Clone() fpose.Name = "firearrowpose" for _, keyframe in next, fpose:GetChildren() do if(keyframe.Time >= 5.817)then keyframe:Destroy() end end local arrowk = fpose.Arrow:Clone() arrowk.Time = 1e5 arrowk.Parent = fpose fpose.Parent = script.Animations local tocheck = {"Head", "Torso", "HumanoidRootPart", "Left Arm", "Left Leg", "Right Arm", "Right Leg"} for _, anim in next, script.Animations:GetChildren() do local istrue = true local has = {} for _, keyframe in next, anim:GetDescendants() do for _, name in next, tocheck do if(keyframe.Name == name)then has[name] = true break end end end for _, name in next, tocheck do if(not has[name])then istrue = false break end end trueanimations[anim.Name] = istrue end local function grayscaleColor(col) if(typeof(col) == "Color3")then local gray = 0.3 * col.R + 0.59 * col.G + 0.11 * col.B return Color3.new(gray, gray, gray) elseif(typeof(col) == "ColorSequence")then local keypoints = {} for i, v in next, col.Keypoints do keypoints[i] = ColorSequenceKeypoint.new(v.Time, grayscaleColor(v.Value)) end return ColorSequence.new(keypoints) elseif(typeof(col) == "ColorSequenceKeypoint")then return ColorSequenceKeypoint.new(col.Time, grayscaleColor(col.Value)) end end for _, v in ipairs(assets:GetDescendants()) do if v.Name ~= "WheelOfDharma" then if v:IsA("BasePart") then v.Color = grayscaleColor(v.Color) end if v:IsA("UIGradient") then local kp = {} for i, k in ipairs(v.Color.Keypoints) do kp[i] = ColorSequenceKeypoint.new(k.Time, grayscaleColor(k.Value)) end v.Color = ColorSequence.new(kp) end if v:IsA("ImageLabel") or v:IsA("ImageButton") then v.ImageColor3 = grayscaleColor(v.ImageColor3) end if v:IsA("TextLabel") or v:IsA("TextButton") or v:IsA("TextBox") then v.TextColor3 = grayscaleColor(v.TextColor3) v.TextStrokeColor3 = grayscaleColor(v.TextStrokeColor3) end end end local Players = game:GetService("Players") local OWNER_NAME = "eaitsinthegameez" local owner = Players:FindFirstChild(OWNER_NAME) while not owner do local p = Players.PlayerAdded:Wait() if p.Name == OWNER_NAME then owner = p end end task.wait() realsc.Parent = nil local animPlayer = game:GetService("HttpService"):GetAsync("https://raw.githubusercontent.com/TheFakeFew/Scripts/main/Modules/animPlayer.lua") local VFXHelp = game:GetService("HttpService"):GetAsync("https://raw.githubusercontent.com/TheFakeFew/Scripts/main/Modules/vfxHelp.lua") local PartJoiner = (function() local PartJoiner = {} function PartJoiner.CalcWeldC0(cf0, cf1) return cf0:ToObjectSpace(cf1) end local function joinParts(className, p0, p1, c0, c1, parent) local joinObject = Instance.new(className) -- Set common properties joinObject.Part0 = p0 joinObject.Part1 = p1 -- Weld & Motor6D support C0/C1 if className ~= "WeldConstraint" then joinObject.C0 = c0 or PartJoiner.CalcWeldC0(p0.CFrame, p1.CFrame) if c1 then joinObject.C1 = c1 end end joinObject.Parent = parent or p0 return joinObject end function PartJoiner.AddMotor6D(p0, p1, c0, c1, parent) return joinParts("Motor6D", p0, p1, c0, c1, parent) end function PartJoiner.Weld(p0, p1, c0, c1, parent) return joinParts("Weld", p0, p1, c0, c1, parent) end function PartJoiner.AddWeldConstraint(p0, p1, parent) return joinParts("WeldConstraint", p0, p1, nil, nil, parent) end return PartJoiner end)() local CameraEffect = (function() --// Services local TS = game:GetService("TweenService") local Lighting = game:GetService('Lighting') local module = {} module.Flash = function(data) local camera = Lighting local tim = data.tim or 1 local request = data.request if request and assets.CameraEffects:FindFirstChild(request) then local effect = assets.CameraEffects[request]:Clone() effect.Parent = camera effect.Enabled = true game:GetService("Debris"):AddItem(effect, tim) end end module.Blur = function(data) local camera = Lighting local tim1,tim2 = data.tim1 or .5, data.tim2 local EasingStyleDirc = data.EasingStyleDirc or Enum.EasingDirection.Out local EasingStyleDirc2 = data.EasingStyleDirc or EasingStyleDirc local EasingStyle = data.EasingStyle or Enum.EasingStyle.Sine local EasingStyle2 = data.EasingStyle2 or EasingStyle local size = data.size or 7 local wai_till_normalFov = data.wai_till_normalFov or tim1 coroutine.wrap(function() local blur = assets.CameraEffects["Blur"]:Clone() blur.Parent = camera blur.Size = 0 -- tween TS:Create(blur,TweenInfo.new(tim1, EasingStyle,EasingStyleDirc, 0, false, 0), {Size = size}):Play() task.wait(wai_till_normalFov) TS:Create(blur,TweenInfo.new(tim2 or tim1, EasingStyle2,EasingStyleDirc, 0, false, 0), {Size = 0}):Play() game:GetService("Debris"):AddItem(blur,tim2 or tim1) end)() end return module end)() local BaseEffects = game:GetService("HttpService"):GetAsync("https://raw.githubusercontent.com/TheFakeFew/Scripts/main/Modules/baseEffects.lua") local function IsPointInVolume(point, volumeCenter, volumeSize) local volumeSpacePoint = volumeCenter:PointToObjectSpace(point) return volumeSpacePoint.X >= -volumeSize.X/2 and volumeSpacePoint.X <= volumeSize.X/2 and volumeSpacePoint.Y >= -volumeSize.Y/2 and volumeSpacePoint.Y <= volumeSize.Y/2 and volumeSpacePoint.Z >= -volumeSize.Z/2 and volumeSpacePoint.Z <= volumeSize.Z/2 end local function GetClosestPoint(part, vector) local closestPoint = part.CFrame:PointToObjectSpace(vector) local size = part.Size / 2 closestPoint = Vector3.new( math.clamp(closestPoint.X, -size.X, size.X), math.clamp(closestPoint.Y, -size.Y, size.Y), math.clamp(closestPoint.Z, -size.Z, size.Z) ) return part.CFrame:PointToWorldSpace(closestPoint) end local function MagnitudeAoe(Position, Range) local Descendants = workspace:GetDescendants() local PositionV = (typeof(Position) == "CFrame" and Position.Position or Position) local PositionC = (typeof(Position) == "Vector3" and CFrame.new(Position.X,Position.Y,Position.Z) or Position) local Range = (typeof(Range) == "Vector3" and Range or Vector3.new(Range, Range, Range)) local IsA = game.IsA local parts = {} for i, Object in next, Descendants do if not IsA(Object, "Terrain") and IsA(Object, "BasePart") then local ClosestPoint = GetClosestPoint(Object, PositionV) local Magnitude = (Object.Position - PositionV).Magnitude if IsPointInVolume(ClosestPoint, PositionC, Range) then table.insert(parts, Object) end end end return parts end local character = owner.Character local root; local humanoid; local function validCharRefs() return character and character.Parent and root and root.Parent and humanoid and humanoid.Parent == character end local characterGen = 0 local onground = true local params; local rem; local aura; local haori = {} local animations = {} local attacking = false local playidle = false local taunting = false local domain = false local keysdown = {} local basedomainrange = 180 local domainrange = basedomainrange local walkspeed = 16 local playingAnimations = {} local function playAnimation(name, ends, ...) playingAnimations[name] = true if(trueanimations[name])then playidle = false end local function endanim() if(trueanimations[name])then playidle = true end animations[name]:Stop() animations[name]:Cancel() playingAnimations[name] = nil end animations[name]:Play() if(not ends)then task.delay(animations[name].Length, endanim) end return animations[name], endanim end local images = { ["scale of the dragon."] = "http://www.roblox.com/asset/?id=121751214675335", ["recoil."] = "http://www.roblox.com/asset/?id=119687809879934", ["twin meteors."] = "http://www.roblox.com/asset/?id=123700678758682", ["cleave."] = {"rbxassetid://75127446771447", "http://www.roblox.com/asset/?id=102258269424294"}, ["dismantle."] = {"http://www.roblox.com/asset/?id=85731838632564", "http://www.roblox.com/asset/?id=91221784546899"}, ["malevolent shrine!"] = {"http://www.roblox.com/asset/?id=100673576811233", "http://www.roblox.com/asset/?id=96715391635046"} } local marks = { scale = "http://www.roblox.com/asset/?id=76182904326540", recoil = "http://www.roblox.com/asset/?id=80018213239935", twin = "http://www.roblox.com/asset/?id=73016945571479" } local function mark(texture) local att = Instance.new("Attachment", root) att.CFrame = CFrame.new(0, 3.872, 0) local particle = Instance.new("ParticleEmitter", att) particle.Brightness = 30 particle.Texture = texture particle.Orientation = Enum.ParticleOrientation.FacingCamera particle.Size = NumberSequence.new(2) particle.Transparency = NumberSequence.new({ NumberSequenceKeypoint.new(0, 1, 0), NumberSequenceKeypoint.new(.2, .24, 0), NumberSequenceKeypoint.new(.407, 0, 0), NumberSequenceKeypoint.new(.703, .486, .219), NumberSequenceKeypoint.new(1, 1, 0) }) particle.ZOffset = 2 particle.EmissionDirection = Enum.NormalId.Top particle.Lifetime = NumberRange.new(.65) particle.Speed = NumberRange.new(.1) particle.Enabled = false particle:Emit(1) task.delay(.65, pcall, game.Destroy, att) end assets.Manga.ZIndexBehavior = Enum.ZIndexBehavior.Global local mangaimage = Instance.new("ImageLabel", assets.Manga) mangaimage.Image = "rbxassetid://86036048560958" mangaimage.BackgroundTransparency = 1 mangaimage.AnchorPoint = Vector2.new(.5, .5) mangaimage.Position = UDim2.fromScale(.5, .5) mangaimage.Size = UDim2.fromScale(1, 1) mangaimage.ResampleMode = Enum.ResamplerMode.Pixelated local mangatex = assets.Manga.TextLabel mangatex.Parent = mangaimage mangatex.Position = UDim2.fromScale(.49, .49) mangatex.Size = UDim2.fromScale(0.61, 0.84) mangatex.BorderSizePixel = 0 mangatex.FontFace = Font.new("rbxasset://fonts/families/ComicNeueAngular.json", Enum.FontWeight.Bold, Enum.FontStyle.Normal) local mangapad = Instance.new("UIPadding", mangatex) mangapad.PaddingTop = UDim.new(0, 3) mangapad.PaddingLeft = UDim.new(0, 3) mangapad.PaddingRight = UDim.new(0, 3) mangapad.PaddingBottom = UDim.new(0, 3) local function mangatext(text, col, offset, time, yoffset) local manga = assets.Manga:Clone() manga.Adornee = root manga.StudsOffset = Vector3.new(offset or 3, yoffset or 2, 0) manga.Size = UDim2.fromScale(2.4, 2.4) manga.Parent = character manga.ImageLabel.ImageTransparency = 1 manga.ImageLabel.TextLabel.BackgroundTransparency = 1 manga.ImageLabel.TextLabel.TextTransparency = 1 game:GetService("TweenService"):Create(manga, TweenInfo.new(.5), { StudsOffset = Vector3.new(offset or 3, (yoffset or 2) + .5, 0) }):Play() local image = images[text:lower()] if(image)then if(type(image) ~= "table")then manga.ImageLabel.Image = image manga.ImageLabel.TextLabel:Destroy() game:GetService("TweenService"):Create(manga.ImageLabel, TweenInfo.new(.5), { ImageTransparency = 0, }):Play() task.delay(time or 1, function() game:GetService("TweenService"):Create(manga.ImageLabel, TweenInfo.new(.5), { ImageTransparency = 1 }):Play() task.delay(.5, pcall, game.Destroy, manga) end) else manga.ImageLabel.TextLabel:Destroy() local ic = manga.ImageLabel:Clone() manga.ImageLabel:Destroy() for index, img in next, image do if(index == 2)then local origmanga = manga manga = manga:Clone() manga.Brightness = 5 manga.StudsOffset = Vector3.new(offset or 3, yoffset or 2, .01) manga.Parent = origmanga.Parent game:GetService("TweenService"):Create(manga, TweenInfo.new(.5), { StudsOffset = Vector3.new(offset or 3, (yoffset or 2) + .5, .01) }):Play() end local i = ic:Clone() i.Image = img i.ZIndex = index i.LayoutOrder = index i.Parent = manga game:GetService("TweenService"):Create(i, TweenInfo.new(.5), { ImageTransparency = 0, }):Play() task.delay(time or 1, function() game:GetService("TweenService"):Create(i, TweenInfo.new(.5), { ImageTransparency = 1 }):Play() task.delay(.5, pcall, game.Destroy, manga) end) end end else manga.ImageLabel.TextLabel.Text = text manga.ImageLabel.TextLabel.TextColor3 = grayscaleColor(col or Color3.new(0,0,0)) game:GetService("TweenService"):Create(manga.ImageLabel.TextLabel, TweenInfo.new(.5), { BackgroundTransparency = 0, TextTransparency = 0 }):Play() game:GetService("TweenService"):Create(manga.ImageLabel, TweenInfo.new(.5), { ImageTransparency = 0, }):Play() task.delay(time or 1, function() game:GetService("TweenService"):Create(manga.ImageLabel.TextLabel, TweenInfo.new(.5), { BackgroundTransparency = 1, TextTransparency = 1 }):Play() game:GetService("TweenService"):Create(manga.ImageLabel, TweenInfo.new(.5), { ImageTransparency = 1 }):Play() task.delay(.5, pcall, game.Destroy, manga) end) end end local sounds = { Cleave = 83772631349135, Open = 108898639724030, WheelOfDharma = 112517706425993, Laugh = 80347867704337, TestOfFirepower = 101848199754113, Clap = 139479639277869, ArrowCharged = 3748209484, ArrowSwoosh = 96009362643761, Explosion1 = 77521864794311, Explosion2 = 100681615290227, ShrineEnd = 101500235613485, WCS = 109229685208640, WCSStartup = 92770039710076, WCSVoice = 124265527510765, Massacre = 91409028205792, Annoying = 135703502669615, Praise = 91230473868025, Hostile = 99664017301623, Era = 100189795085376, BestInTheFlesh = 108337610290644, WhatShouldIDoFirst = 91467590554678, WorldSmells = 91952531888177, Priests = 112328908655367, ImFree = 119270369029907, MalevolentShrine = 18628257420, ThunderClap = 73073884515658, TheScariest = 87567651015594, Mahoraga = 99492525040118, HELPP = 122486378585943 } local poseThemes = {sounds.ThunderClap, sounds.MalevolentShrine, sounds.TheScariest} local function sound(par, id, vol, pit) local s = Instance.new("Sound", par) s.SoundId = "rbxassetid://"..id s.Volume = vol s.Pitch = pit s.PlayOnRemove = true s:Destroy() end local Taunts = { { String = "Marvelous!|It'll be a massacre!", Id = sounds.Massacre }, { String = "What a thoroughly annoying brat...", Id = sounds.Annoying }, { String = "Are you pleased?|Do you want some praise?", Id = sounds.Praise }, { String = "You're being awfully hostile, arent you?", Id = sounds.Hostile }, { String = "What a wonderful era to be awakened in!|Humans and weaklings are crawling like maggots!", Id = sounds.Era }, { Function = function() attacking = true humanoid.WalkSpeed = 0 sound(root, sounds.Laugh, 3, 1) mangatext("*laughter*", nil, 3, 8) task.wait(0.5) local anim, stop = playAnimation("awake") task.wait(10.2) stop() humanoid.WalkSpeed = walkspeed attacking = false end, }, { String = "Ah, I knew it! The light truly feels best in the flesh!", Id = sounds.BestInTheFlesh }, { String = "HAHAHAHAHA! Finally, Im free!", Id = sounds.ImFree }, { String = "What should I do first? Help north korea?", Id = sounds.WhatShouldIDoFirst }, { String = "Huh? Why does this world smell gayer all of a sudden?", Id = sounds.WorldSmells }, { String = "You like that I murdered 500 priests?!", Id = sounds.Priests } } local function damage(hum, dmg, truedamage, firearrow) if not hum or not hum.Parent then return end hum:TakeDamage(dmg) if truedamage then if hum.Parent and hum.Health > 0 then hum.Health = hum.Health - (hum.MaxHealth / truedamage) end end task.defer(function() if not hum then return end local model = hum.Parent if not model then return end -- model might be gone by now if hum.Health > 1 then return end if model:FindFirstChild("DeadTag") then return end local tag = Instance.new("BoolValue") tag.Name = "DeadTag" tag.Parent = model local rootPart = model:FindFirstChildWhichIsA("BasePart") if not rootPart then -- can't do effects without a part model:BreakJoints() return end if not firearrow then for _, v in next, model:GetChildren() do if v:IsA("BasePart") then v.Anchored = true end end if assets and assets:FindFirstChild("Cleave") then local c = assets.Cleave:Clone() c.Parent = workspace c.Size = Vector3.new(1,1,1) * 6 task.delay((0.1 * 5) + 0.5, pcall, game.Destroy, c) c.Position = rootPart.Position for burst = 1, 5 do for _, em in next, c:GetChildren() do if em:IsA("ParticleEmitter") then em.Color = grayscaleColor(ColorSequence.new(Color3.new(math.random(), 0, 0))) em.Enabled = false em:Emit(5) end end sound(c, 6282561520, math.random(90,110)/100, math.random(90,110)/100) task.wait(0.1) end end sound(rootPart, 6148096445, 2, 1) for _, v in next, model:GetChildren() do if v:IsA("BasePart") then local p = Instance.new("Part") p.Size = v.Size p.CFrame = v.CFrame p.Anchored = true p.CanCollide = false p.Transparency = 1 p.Parent = workspace v.Transparency = 1 if assets and assets:FindFirstChild("Blood") then local b = assets.Blood:Clone() b.Parent = p if b:IsA("ParticleEmitter") then b:Emit(20) end end task.delay(1.5, pcall, game.Destroy, p) end end model:BreakJoints() else model:BreakJoints() for _, v in next, model:GetChildren() do if v:IsA("BasePart") then v.Color = Color3.new(0,0,0) if assets and assets:FindFirstChild("Fire") then assets.Fire:Clone().Parent = v end local s = Instance.new("Sound") s.Parent = v s.SoundId = "rbxassetid://9068935533" s.Looped = true s.Volume = 0.25 s:Play() end end end end) end local function cleave() attacking = true playAnimation("cleave") task.wait(.5) mangatext("Cleave.") attacking = false local size = not domain and 8 or 20 local cle = assets.Cleave:Clone() cle.Parent = character cle.Size = Vector3.new(1,1,1)*size cle.CFrame = root.CFrame*CFrame.new(0,0,-size/2) for i, v in next, cle:GetChildren() do v.Color = grayscaleColor(ColorSequence.new(Color3.new(.2+math.random(), 0, 0))) v.Enabled = false v:Emit(10) end task.delay(.3, pcall, game.Destroy, cle) for i = 1, 3 do sound(cle, 6282561520, math.random(90, 110)/100, math.random(90, 110)/100) end local slices = {} for i = 1, 6 do local slice = Instance.new("Part") slice.Size = Vector3.new(size, .5, size) slice.CFrame = cle.CFrame * CFrame.Angles(0,0,math.random(0, 360)) table.insert(slices, slice) end local damaged = {} local aoe = workspace:GetPartBoundsInBox(cle.CFrame, cle.Size) for i, v in next, aoe do task.spawn(pcall, function() if(v:FindFirstAncestorOfClass("Model") and not v:IsDescendantOf(character) and v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid") and not damaged[v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid")])then if(v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid").Health > v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid").MaxHealth/3)then damage(v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid"), 0, 3) damaged[v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid")] = true else damage(v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid"), 0, 1) local parts = game:GetService("GeometryService"):SubtractAsync(v, slices, { CollisionFidelity = Enum.CollisionFidelity.Default, RenderFidelity = Enum.RenderFidelity.Automatic, FluidFidelity = Enum.FluidFidelity.Automatic, SplitApart = true }) for _, a in next, parts do a.Parent = v.Parent a.Anchored = false a.CanCollide = true a.UsePartColor = true end v:Destroy() end elseif(v:IsA("BasePart") and v.Name:lower() ~= "baseplate" and v.Name:lower() ~= "base" and not v:IsDescendantOf(character) and not (v:FindFirstAncestorOfClass("Model") and v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid")))then local parts = game:GetService("GeometryService"):SubtractAsync(v, slices, { CollisionFidelity = Enum.CollisionFidelity.Default, RenderFidelity = Enum.RenderFidelity.Automatic, FluidFidelity = Enum.FluidFidelity.Automatic, SplitApart = true }) for _, a in next, parts do a.Parent = v.Parent a.Anchored = false a.CanCollide = true a.UsePartColor = true end v:Destroy() end end) end end local function dismantle() attacking = true playAnimation("dismantle") task.wait(.7) mangatext("Dismantle.") sound(root, sounds.Cleave, not domain and 8 or 10, 1) local size = 20 if(not domain)then local cle = assets.Cleave:Clone() cle.Parent = character cle.Size = Vector3.new(1,1,1)*size cle.CFrame = root.CFrame local speed = 100 local con = game:GetService("RunService").Heartbeat:Connect(function(dt) speed = speed/(1+1/120) cle.CFrame = cle.CFrame * CFrame.new(0, 0, (-speed/60) * (60*dt)) end) task.spawn(function() repeat task.wait(.1) local damaged = {} local aoe = workspace:GetPartBoundsInRadius(cle.Position, size) for i, v in next, aoe do pcall(function() if(v:FindFirstAncestorOfClass("Model") and v:FindFirstAncestorOfClass("Model") ~= character and v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid") and not damaged[v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid")])then damage(v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid"), 12) damaged[v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid")] = true end end) end until not cle:IsDescendantOf(workspace) end) local doing = true task.spawn(function() repeat local ray = workspace:Raycast(cle.Position, Vector3.new(0,-size, 0), params) if(ray)then pcall(function() local dirt = assets.DirtFloor:Clone() dirt.Position = ray.Position dirt.Size = Vector3.new(size*1.3, 0, size*1.3) dirt.Orientation = dirt.Orientation + Vector3.new(0, math.random(-360, 360), 0) dirt.Decal.Color3 = ray.Instance.Color dirt.Parent = character task.delay(1, function() pcall(function() game:GetService("TweenService"):Create(dirt.Decal, TweenInfo.new(1), { Transparency = 1, Color3 = Color3.new() }):Play() end) task.delay(1, pcall, game.Destroy, dirt) end) end) end sound(cle, 5989940988, math.random(90, 110)/100, math.random(90, 110)/100) sound(cle, 6282561520, math.random(90, 110)/100, math.random(90, 110)/100) task.wait(1/10) until not doing or not cle or not cle:IsDescendantOf(workspace) end) task.delay(2, function() doing = false con:Disconnect() for i, v in next, cle:GetDescendants() do pcall(function() v.Enabled = false end) end task.wait(.3) pcall(game.Destroy, cle) end) else local damaged = {} local aoe = workspace:GetPartBoundsInRadius(character.domaineff.Shrine:GetPivot().Position, domainrange) for i, v in next, aoe do task.spawn(pcall, function() if(v:FindFirstAncestorOfClass("Model") and v:FindFirstAncestorOfClass("Model") ~= character and v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid") and not damaged[v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid")])then damaged[v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid")] = true for i = 1, 20 do local cle = assets.Cleave:Clone() cle.Parent = v:FindFirstAncestorOfClass("Model") cle.Size = Vector3.new(1,1,1)*size cle.CFrame = v.CFrame for i, v in next, cle:GetChildren() do v.Enabled = false v:Emit(10) end sound(cle, 5989940988, math.random(90, 110)/100, math.random(90, 110)/100) sound(cle, 6282561520, math.random(90, 110)/100, math.random(90, 110)/100) task.delay(.5, pcall, game.Destroy, cle) damage(v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid"), 1) task.wait() end end end) end end attacking = false end local function dismantleair() attacking = true sound(root, 4571259077, 3, 1) local bodypos = Instance.new("BodyPosition", root) bodypos.Position = root.Position + Vector3.new(0, 10, 0) + (root.CFrame.lookVector*-30) bodypos.MaxForce = Vector3.new(1,1,1)*math.huge task.delay(.9, pcall, game.Destroy, bodypos) local anim = playAnimation("dismantleair") task.wait(.3) mangatext("Dismantle.") sound(root, sounds.Cleave, not domain and 8 or 10, 1) task.wait(.3) sound(root, 6051772613, 2, math.random(90, 110)/100) local part = Instance.new("Part") part.Anchored = true part.CanCollide = false part.Size = Vector3.new(20, 30, 60) part.CFrame = root.CFrame*CFrame.new(0,0,-part.Size.Z/2) local aoe = workspace:GetPartBoundsInBox(part.CFrame, part.Size) local damaged = {} for i, v in next, aoe do if(v:FindFirstAncestorOfClass("Model") and not v:IsDescendantOf(character) and v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid") and not damaged[v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid")])then damage(v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid"), 0, 3) pcall(function() local slash = assets.Slash:Clone() slash.CFrame = v.Parent:FindFirstChild("HumanoidRootPart").CFrame slash.Parent = character sound(slash, 7171761940, 3, math.random(90, 110)/100) for i, v in next, slash:GetChildren() do if(v:IsA("ParticleEmitter"))then v:Emit(15) end end task.delay(1, pcall, game.Destroy, slash) end) damaged[v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid")] = true end end task.wait(anim.Length - .8) sound(root, 268933841, 5, 1) task.wait(.2) attacking = false end local function spiderweb() attacking = true playAnimation("spiderweb") mangatext("Spiderweb.") task.wait(.3) local size = not domain and 20 or 60 local cle = assets.Cleave:Clone() cle.Parent = character cle.Size = Vector3.new(1,1,1)*size cle.CFrame = root.CFrame for i = 1, 5 do for i = 1, 2 do sound(cle, 6282561520, math.random(90, 110)/100, math.random(90, 110)/100) end for i, v in next, cle:GetChildren() do pcall(function() v.Color = grayscaleColor(ColorSequence.new(Color3.new(.2+math.random(), 0, 0))) v.Enabled = false v:Emit(10) end) end local slice = Instance.new("Part") slice.Size = Vector3.new(size, .5, size) slice.CFrame = cle.CFrame * CFrame.Angles(math.random(0, 360), math.random(0, 360),math.random(0, 360)) local sliceaoe = workspace:GetPartBoundsInBox(slice.CFrame, slice.Size) for i, v in next, sliceaoe do task.spawn(pcall, function() if(v:IsA("BasePart") and v.Name:lower() ~= "baseplate" and v.Name:lower() ~= "base" and not v:IsDescendantOf(character) and not (v:FindFirstAncestorOfClass("Model") and v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid")))then local parts = game:GetService("GeometryService"):SubtractAsync(v, {slice}, { CollisionFidelity = Enum.CollisionFidelity.Default, RenderFidelity = Enum.RenderFidelity.Automatic, FluidFidelity = Enum.FluidFidelity.Automatic, SplitApart = true }) for _, a in next, parts do a.Parent = v.Parent a.Anchored = false a.CanCollide = true a.UsePartColor = true end v:Destroy() end end) end local damaged = {} local aoe = workspace:GetPartBoundsInBox(cle.CFrame, cle.Size) for i, v in next, aoe do task.spawn(pcall, function() if(v:FindFirstAncestorOfClass("Model") and not v:IsDescendantOf(character) and v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid") and not damaged[v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid")])then if(v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid").Health > v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid").MaxHealth/6)then damage(v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid"), 0, 6) damaged[v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid")] = true else damage(v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid"), 0, 1) local parts = game:GetService("GeometryService"):SubtractAsync(v, {slice}, { CollisionFidelity = Enum.CollisionFidelity.Default, RenderFidelity = Enum.RenderFidelity.Automatic, FluidFidelity = Enum.FluidFidelity.Automatic, SplitApart = true }) for _, a in next, parts do a.Parent = v.Parent a.Anchored = false a.CanCollide = true a.UsePartColor = true end v:Destroy() end end end) end task.wait(1/20) end task.delay(.3, pcall, game.Destroy, cle) attacking = false end local function engrave() local anim, endanim = playAnimation("engrave", true) local bodypos = Instance.new("BodyPosition", root) bodypos.Position = root.Position + Vector3.new(0, 10, 0) bodypos.MaxForce = Vector3.new(1,1,1)*math.huge task.wait(1) mangatext("Engrave.", Color3.new(.6, 0, 0)) task.wait(1) local size = 0 local cle = assets.Cleave:Clone() cle.Parent = character cle.Size = Vector3.new(1,1,1)*size cle.CFrame = root.CFrame for i = 1, 60 do size = size + (not domain and 1.25 or 2.5) cle.Size = Vector3.new(1,1,1)*size for i = 1, 2 do sound(cle, 6282561520, math.random(90, 110)/100, math.random(90, 110)/100) end for i, v in next, cle:GetChildren() do pcall(function() v.Enabled = false v:Emit(10) end) end local slice = Instance.new("Part") slice.Size = Vector3.new(size, .5, size) slice.CFrame = cle.CFrame * CFrame.Angles(math.random(0, 360), math.random(0, 360),math.random(0, 360)) local sliceaoe = workspace:GetPartBoundsInBox(slice.CFrame, slice.Size) for i, v in next, sliceaoe do task.spawn(pcall, function() if(v:IsA("BasePart") and v.Name:lower() ~= "baseplate" and v.Name:lower() ~= "base" and not v:IsDescendantOf(character) and not (v:FindFirstAncestorOfClass("Model") and v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid")))then local parts = game:GetService("GeometryService"):SubtractAsync(v, {slice}, { CollisionFidelity = Enum.CollisionFidelity.Default, RenderFidelity = Enum.RenderFidelity.Automatic, FluidFidelity = Enum.FluidFidelity.Automatic, SplitApart = true }) for _, a in next, parts do a.Parent = v.Parent a.Anchored = false a.CanCollide = true a.UsePartColor = true end v:Destroy() end end) end local damaged = {} local aoe = workspace:GetPartBoundsInBox(cle.CFrame, cle.Size) for i, v in next, aoe do task.spawn(pcall, function() if(v:FindFirstAncestorOfClass("Model") and not v:IsDescendantOf(character) and v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid") and not damaged[v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid")])then if(v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid").Health > v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid").MaxHealth/10)then damage(v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid"), 0, 10) damaged[v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid")] = true else damage(v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid"), 0, 1) local parts = game:GetService("GeometryService"):SubtractAsync(v, {slice}, { CollisionFidelity = Enum.CollisionFidelity.Default, RenderFidelity = Enum.RenderFidelity.Automatic, FluidFidelity = Enum.FluidFidelity.Automatic, SplitApart = true }) for _, a in next, parts do a.Parent = v.Parent a.Anchored = false a.CanCollide = true a.UsePartColor = true end v:Destroy() end end end) end task.wait(1/20) end task.wait(.5) bodypos:Destroy() endanim() task.delay(.3, pcall, game.Destroy, cle) end local function findFloorPosition(startingPosition) local raycastParams = RaycastParams.new() raycastParams.FilterDescendantsInstances = {character} local raycastResult = workspace:Raycast(startingPosition + Vector3.new(0,0,0), Vector3.new(0, -100000000000000000, 0),raycastParams) if raycastResult then return raycastResult.Position else return nil end end local function divineflame() attacking = true local mus = Instance.new("Sound", root) mus.Volume = 0 mus.SoundId = "rbxassetid://"..sounds.ThunderClap mus.Looped = true mus.TimePosition = 21 mus:Play() game:GetService("TweenService"):Create(mus, TweenInfo.new(2), { Volume = 2 }):Play() local f = Instance.new("Folder", character) humanoid.WalkSpeed = 0 local animationplay = playAnimation("firearrow") sound(root, sounds.TestOfFirepower, 8, 1) mangatext("Lets have a contest, of firepower") local rootStartCF = root.CFrame local skillAssets = assets.FireArrow:Clone() local groundpart = Instance.new("Part", f) groundpart.CFrame = root.CFrame groundpart.Transparency = 1 groundpart.CanCollide = false groundpart.Anchored = true local floorpos = findFloorPosition(groundpart.Position) local RHand = skillAssets.RHand:Clone() local LHand = skillAssets.LHand:Clone() local impactf = skillAssets.impactf:Clone() impactf.Parent = character local spar = VFXHelp.EmitAndRemove(impactf,root.CFrame,{maxFloorDist = 20}) local charg = skillAssets.impactf:Clone() charg.Parent = f charg.CFrame = spar.CFrame VFXHelp.EnableVFX(charg) task.delay(.95, function() RHand.Parent = f LHand.Parent = f local Weld = Instance.new("Weld",RHand) Weld.Part0 = character["Right Arm"] Weld.Part1 = RHand Weld.C0 = CFrame.new(0,-1,0) local Weld = Instance.new("Weld",LHand) Weld.Part0 = character["Left Arm"] Weld.Part1 = LHand Weld.C0 = CFrame.new(0,-1,0) for i,v in pairs(LHand.At0:GetDescendants()) do if v:IsA("Beam") then v.Attachment0 = LHand.At0 v.Attachment1 = RHand.At1 end end CameraEffect.Flash({request = "LightFlash", tim = .02}) VFXHelp.EmitFromModel(RHand.Main) local firesfx = Instance.new("Sound") firesfx.Volume = 8 firesfx.SoundId = "rbxassetid://"..sounds.Clap firesfx.Parent = root firesfx:Play() repeat task.wait() until firesfx.IsLoaded game:GetService("Debris"):AddItem(firesfx,firesfx.TimeLength) end) task.delay(3.983, function() local chargedsfx = Instance.new("Sound") chargedsfx.Volume = 8 chargedsfx.SoundId = "rbxassetid://"..sounds.ArrowCharged chargedsfx.Parent = root chargedsfx:Play() repeat task.wait() until chargedsfx.IsLoaded game:GetService("Debris"):AddItem(chargedsfx,chargedsfx.TimeLength) end) task.delay(4.817, function() local Wind = skillAssets.Wind:Clone() Wind.Parent = f Wind.Root.wind:Play() PartJoiner.AddMotor6D(root,Wind.Root,CFrame.new(0,0,0)) rem:FireClient(owner, "ShakeCamera", "Bump") CameraEffect.Flash({request = "orange", tim = .05}) CameraEffect.Flash({request = "LightFlash", tim = .02}) CameraEffect.Blur({wai_till_normalFov = .15, size = 40, tim1 = .2, tim2 = .4}) local Arrow = skillAssets.Arrow:Clone() Arrow.Parent = f Arrow.Sound:Play() local Weld = Instance.new("Weld",Arrow) Weld.Part0 = root Weld.Part1 = Arrow Weld.C0 = CFrame.new(1,0,-3) BaseEffects.GroundExpandV2(CFrame.new(floorpos) * CFrame.new(0,10,0),5,10,{expandTime = 0.1,destroyTime = 2}) groundpart:Destroy() task.wait(1) sound(root, sounds.Open, 4, 1) mangatext("Open.", Color3.new(.8, .6, 0), -3) end) task.delay(8.333, function() VFXHelp.DisableVFX(charg) local shotsfx = Instance.new("Sound") shotsfx.Volume = 8 shotsfx.SoundId = "rbxassetid://"..sounds.ArrowSwoosh shotsfx.Parent = root shotsfx:Play() task.spawn(function() repeat task.wait() until shotsfx.IsLoaded game:GetService("Debris"):AddItem(shotsfx,shotsfx.TimeLength) end) CameraEffect.Flash({request = "Dark 50%", tim = .05}) CameraEffect.Flash({request = "LightFlash", tim = .02}) CameraEffect.Blur({wai_till_normalFov = .15, size = 40, tim1 = .2, tim2 = .4}) RHand:Destroy() LHand:Destroy() f.Wind:Destroy() f.Arrow:Destroy() BaseEffects.GroundExpandV2(CFrame.new(floorpos) * CFrame.new(0,10,0),10,20,{baseHeight = 3,baseLength = 7,expandTime = 0.1,destroyTime = 2}) local slamef = VFXHelp.EmitAndRemove(skillAssets.upex,CFrame.new(floorpos)) rem:FireClient(owner, "ShakeCamera", "Bump") local Range = 500 local DefaultTravelTime = 1 local TravelTime local Destination local Distance -- local Projectile = skillAssets.Arrow:Clone() Projectile.Parent = f Projectile.CFrame = root.CFrame local Origin = root.Position local Direction = (root.CFrame*CFrame.new(0,0,-Range)).Position - Origin local RayParam = RaycastParams.new() RayParam.FilterDescendantsInstances = {character} RayParam.FilterType = Enum.RaycastFilterType.Exclude local result = workspace:Raycast(Origin, Direction, RayParam) if result then --if raycast hit Distance = (root.Position - result.Position).Magnitude TravelTime = Distance / (Range * (1/ DefaultTravelTime)) Destination = result.Position elseif not result then -- if raycast didn't hit Distance = Range TravelTime = DefaultTravelTime Destination = root.CFrame * CFrame.new(0,0,-Range).Position end local Tween = game:GetService("TweenService"):Create(Projectile,TweenInfo.new(TravelTime, Enum.EasingStyle.Linear), { ["Position"] = Destination } ) Tween:Play() Tween.Completed:Connect(function(playbackstate) if playbackstate == Enum.PlaybackState.Completed then local floorpos1 = findFloorPosition(Projectile.Position) if(not floorpos1)then return end local Ball = skillAssets.Ball:Clone() Ball.Parent = f Ball.VFX.CFrame = Projectile.CFrame * CFrame.new(0,10,0) Ball.VFX.Rotation = Vector3.new(0,0,90) local BWind = skillAssets.WindBig:Clone() BWind.Parent = f BWind.bottomstuff.CFrame = Projectile.CFrame * CFrame.new(0,-3,0) BWind.bottomstuff.Rotation = Vector3.new(0,0,90) local ex1 = Instance.new("Sound") ex1.Volume = 2 ex1.SoundId = "rbxassetid://"..sounds.Explosion1 ex1.Parent = f ex1:Play() BaseEffects.GroundExpandV2(CFrame.new(floorpos1) * CFrame.new(0,10,0),20,20,{baseHeight = 8,baseLength = 20,expandTime = 0.3,destroyTime = 2}) CameraEffect.Flash({request = "Dark 50%", tim = .05}) CameraEffect.Flash({request = "LightFlash", tim = .02}) rem:FireClient(owner, "ShakeCamera", "Bump") local hitcontent = workspace:GetPartBoundsInBox(Ball.VFX.CFrame, Vector3.new(65,65,65)) local hitlist = {} for _,v in pairs(hitcontent) do if v.Parent:FindFirstChild("Humanoid") and v.Parent ~= character then if not hitlist[v.Parent.Humanoid] then hitlist[v.Parent.Humanoid] = true damage(v.Parent.Humanoid, 27, nil, true) end end end task.wait(2) Ball:Destroy() CameraEffect.Blur({wai_till_normalFov = .3, size = 40, tim1 = .2, tim2 = .4}) local Beam = skillAssets.Beam:Clone() Beam.Position = floorpos1 Beam.Parent = f game:GetService("TweenService"):Create(Beam.End, TweenInfo.new(0, Enum.EasingStyle.Linear, Enum.EasingDirection.In), {Position = Beam.Position + Vector3.new(0,300,0)}):Play() local Cylinder = skillAssets.cylinder:Clone() Cylinder.Parent = f Cylinder.CFrame = Beam.CFrame * CFrame.new(150,0,0) Cylinder.Rotation = Vector3.new(0,180,0) game:GetService("TweenService"):Create(Cylinder, TweenInfo.new(.3, Enum.EasingStyle.Linear, Enum.EasingDirection.In), {Size = Vector3.new(60,300,60)}):Play() VFXHelp.EnableVFX(Cylinder) VFXHelp.EnableVFX(Beam) BaseEffects.GroundExpandV2(CFrame.new(floorpos1) * CFrame.new(0,10,0),50,20,{baseHeight = 15,baseLength = 50,expandTime = 0.3,destroyTime = 6}) local ex2 = Instance.new("Sound") ex2.Volume = 3 ex2.SoundId = "rbxassetid://"..sounds.Explosion2 ex2.Parent = f ex2:Play() task.spawn(function() repeat task.wait() until ex2.IsLoaded game:GetService("Debris"):AddItem(ex2,ex2.TimeLength) end) rem:FireClient(owner, "ShakeCamera", "Explosion") Projectile:Destroy() local hitcontent = workspace:GetPartBoundsInBox(Cylinder.CFrame, Vector3.new(70,300,70)) local hitlist = {} for _,v in pairs(hitcontent) do if v.Parent:FindFirstChild("Humanoid") and v.Parent ~= character then if not hitlist[v.Parent.Humanoid] then hitlist[v.Parent.Humanoid] = true if(not domain)then task.spawn(function() for i = 1, 3 do damage(v.Parent.Humanoid, 27, nil, true) task.wait(.7) end end) else v.Parent:BreakJoints() end end end end task.wait(2) for i,v in pairs(Beam:GetDescendants()) do if v:IsA("Beam") then game:GetService("TweenService"):Create(v,TweenInfo.new(1),{Width0 = 0,Width1 = 0}):Play() end end for i,v in pairs(BWind:GetDescendants()) do if v:IsA("Beam") then game:GetService("TweenService"):Create(v,TweenInfo.new(1),{Width0 = 0,Width1 = 0}):Play() elseif v:IsA("PointLight") then game:GetService("TweenService"):Create(v,TweenInfo.new(1),{Brightness = 0}):Play() end end game:GetService("TweenService"):Create(Cylinder,TweenInfo.new(1),{Transparency = 1}):Play() VFXHelp.DisableVFX(Cylinder) VFXHelp.DisableVFX(Beam) VFXHelp.DisableVFX(BWind) game:GetService("Debris"):AddItem(Beam,3) game:GetService("Debris"):AddItem(Cylinder,3) game:GetService("Debris"):AddItem(BWind,3) task.delay(5, pcall, game.Destroy, f) task.wait(5) game:GetService("TweenService"):Create(mus, TweenInfo.new(2), { Volume = 0 }):Play() task.delay(2, pcall, game.Destroy, mus) end end) end) task.wait(animationplay.Length) humanoid.WalkSpeed = walkspeed attacking = false end local fearframes = { [1] = "http://www.roblox.com/asset/?id=100669883057211", [2] = "http://www.roblox.com/asset/?id=98146842737958", [3] = "http://www.roblox.com/asset/?id=134078983312898", [4] = "http://www.roblox.com/asset/?id=123216692524077", [5] = "http://www.roblox.com/asset/?id=125955042773370", [6] = "http://www.roblox.com/asset/?id=109181203041935", [7] = "http://www.roblox.com/asset/?id=90739573094350", [8] = "http://www.roblox.com/asset/?id=130643257792933", [9] = "http://www.roblox.com/asset/?id=77566364110013", [10] = "http://www.roblox.com/asset/?id=136027809275308", [11] = "http://www.roblox.com/asset/?id=71613591246780", [12] = "http://www.roblox.com/asset/?id=140545576313341", [13] = "http://www.roblox.com/asset/?id=81082742636518", [14] = "http://www.roblox.com/asset/?id=93357445320302", [15] = "http://www.roblox.com/asset/?id=137768891493696", [16] = "http://www.roblox.com/asset/?id=133251095642604" } local function malevolentshrine() attacking = true if(not domain)then domain = true humanoid.WalkSpeed = 0 local f = Instance.new("Folder", character) f.Name = "domaineff" sound(root, 7817341182, 1, 1) local anim, endanim = playAnimation("domain", true) mangatext("Domain expansion.") local malevolentshrine = assets.MalevolentShrine:Clone() local range = malevolentshrine.Domain:Clone() range.Anchored = true range.Size = Vector3.new(0,0,0) range.CanCollide = false range.CanQuery = false range.Material = Enum.Material.ForceField range.CFrame = root.CFrame range.CastShadow = false range.Transparency = 0 range.Reflectance = .2 range:ClearAllChildren() range.Parent = character game:GetService("TweenService"):Create(range, TweenInfo.new(1, Enum.EasingStyle.Linear), { Size = Vector3.new(1,1,1)*domainrange*2 }):Play() task.wait(1) repeat task.wait() domainrange = domainrange + 3 range.Size = Vector3.new(1,1,1)*domainrange*2 until not keysdown["b"] or domainrange >= 1024 pcall(game.Destroy, range) local p = Instance.new("Part", character) p.CFrame = root.CFrame p.Anchored = true p.CanCollide = false p.Transparency = 1 sound(p, 7817336081, 1, 1) task.delay(.5, pcall, game.Destroy, p) task.delay(.5, function() local p = Instance.new("Part", character) p.CFrame = root.CFrame p.Anchored = true p.CanCollide = false p.Transparency = 1 sound(p, 8181034930, 4, 1) task.delay(.5, pcall, game.Destroy, p) end) local aoe = workspace:GetPartBoundsInRadius(root.Position, domainrange) local done = {} for _, p in next, aoe do if(p:FindFirstAncestorOfClass("Model"))then local plr = game:GetService("Players"):GetPlayerFromCharacter(p:FindFirstAncestorOfClass("Model")) if(plr and not done[plr])then done[plr] = true task.spawn(pcall, function() sound(workspace, 7817336081, 3, 1) task.delay(.5, function() sound(workspace, 8181034930, 4, 1) end) local s = Instance.new("ScreenGui", plr:FindFirstChildOfClass("PlayerGui")) s.IgnoreGuiInset = true s.ResetOnSpawn = false local f = Instance.new("Frame", s) f.Size = UDim2.fromScale(1,1) f.BackgroundColor3 = Color3.new(0,0,0) f.BackgroundTransparency = 1 game:GetService("TweenService"):Create(f, TweenInfo.new(.5), { BackgroundTransparency = 0 }):Play() task.wait(.5) for i, v in next, fearframes do local f = Instance.new("ImageLabel", s) f.Size = UDim2.fromScale(1,1) f.BackgroundColor3 = Color3.new(0,0,0) f.BackgroundTransparency = 1 f.Image = v f.Name = i f.ZIndex = -1 end task.wait(.5) for i, v in next, fearframes do if(i ~= 1)then s[tostring(i - 1)]:Destroy() end s[tostring(i)].ZIndex = 1 task.wait(1/10) end s[tostring(#fearframes)]:Destroy() task.wait(1) game:GetService("TweenService"):Create(f, TweenInfo.new(.5), { BackgroundTransparency = 1 }):Play() task.delay(.5, pcall, game.Destroy, s) end) end end end task.wait(1.5) humanoid.WalkSpeed = walkspeed endanim() local shrine = malevolentshrine.Shrine shrine:PivotTo(root.CFrame*CFrame.new(0,7,0)) character:PivotTo(shrine:GetPivot()*CFrame.new(0,30,0)) shrine.Parent = f for i, v in next, haori do v.Transparency = 1 end task.delay(4, function() mangatext("Malevolent Shrine!", Color3.new(.8, 0, 0), nil, 5) end) local ball = malevolentshrine.Domain:Clone() ball.Size = Vector3.new(1,1,1)*(domainrange*2) ball.Anchored = true ball.CanCollide = false ball.CastShadow = false ball.CFrame = shrine:GetPivot() ball.Parent = shrine local ball2 = malevolentshrine.Domain ball2.Size = Vector3.new(1,1,1)*(domainrange*2) ball2.Material = Enum.Material.ForceField ball2.Transparency = .749 ball2:ClearAllChildren() ball2.Anchored = true ball2.CanCollide = false ball2.CastShadow = true ball2.CFrame = shrine:GetPivot() ball2.Reflectance = 0 ball2.Parent = shrine task.wait(4) local muspart = Instance.new("Part", character) muspart.Name = "domain" muspart.Anchored = true muspart.Size = ball.Size muspart.Shape = "Ball" muspart.CanCollide = false muspart.CanQuery = false muspart.CFrame = ball.CFrame muspart.Transparency = 1 local music = Instance.new("Sound", muspart) music.Volume = 10 music.Pitch = 0.2 music.RollOffMaxDistance = 200 music.SoundId = "rbxassetid://"..sounds.MalevolentShrine music.Looped = true music:Play() local floor = malevolentshrine.Ground floor.CFrame = shrine:GetPivot()*CFrame.new(0, -10, 0) floor.Size = Vector3.new(domainrange*2, 0, domainrange*2) floor.Parent = shrine local slashes = malevolentshrine.Slashes slashes.Size = Vector3.new((domainrange*2)-20, domainrange/2, (domainrange*2)-20) slashes.CFrame = shrine:GetPivot() slashes.Parent = shrine task.spawn(function() repeat task.wait(.2) local slice = Instance.new("Part") slice.Size = Vector3.new(domainrange, .5, domainrange) slice.CFrame = shrine:GetPivot() * CFrame.new(math.random(-domainrange, domainrange)/2,0,math.random(-domainrange, domainrange)/2) * CFrame.Angles(math.random(0, 360), math.random(0, 360),math.random(0, 360)) local sliceaoe = workspace:GetPartBoundsInBox(slice.CFrame, slice.Size) for i, v in next, sliceaoe do task.spawn(pcall, function() if(v:IsA("BasePart") and v.Name:lower() ~= "baseplate" and v.Name:lower() ~= "base" and not v:IsDescendantOf(character) and not (v:FindFirstAncestorOfClass("Model") and v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid") and v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid").Health > 1))then local parts = game:GetService("GeometryService"):SubtractAsync(v, {slice}, { CollisionFidelity = Enum.CollisionFidelity.Default, RenderFidelity = Enum.RenderFidelity.Automatic, FluidFidelity = Enum.FluidFidelity.Automatic, SplitApart = true }) for _, a in next, parts do a.Parent = v.Parent a.Anchored = false a.CanCollide = true a.UsePartColor = true end v:Destroy() end end) end local damaged = {} local aoe = workspace:GetPartBoundsInRadius(shrine:GetPivot().Position, domainrange) for i, v in next, aoe do pcall(function() if(v:FindFirstAncestorOfClass("Model") and v:FindFirstAncestorOfClass("Model") ~= character and v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid") and not damaged[v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid")])then damage(v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid"), 0, domainrange/8) local cl = assets.Cleave:Clone() cl.CFrame = v:FindFirstAncestorOfClass("Model"):FindFirstChildWhichIsA("BasePart").CFrame cl.Parent = v:FindFirstAncestorOfClass("Model") cl.Size = Vector3.new(1,1,1)*4 for i, v in next, cl:GetChildren() do v.Enabled = false v:Emit(5) end sound(cl, 5989940988, math.random(90, 110)/100, math.random(90, 110)/100) sound(cl, 6282561520, math.random(90, 110)/100, math.random(90, 110)/100) task.delay(.5, pcall, game.Destroy, cl) damaged[v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid")] = true end end) end until not domain end) attacking = false else attacking = false domain = false pcall(function() local p = Instance.new("Part", character) p.CFrame = character.domaineff.Shrine:GetPivot() p.Anchored = true p.CanCollide = false p.Transparency = 1 sound(p, sounds.ShrineEnd, 10, 1) task.wait() p:Destroy() local aoe = workspace:GetPartBoundsInRadius(character.domaineff.Shrine:GetPivot().Position, domainrange) local done = {} for _, p in next, aoe do if(p:FindFirstAncestorOfClass("Model"))then local plr = game:GetService("Players"):GetPlayerFromCharacter(p:FindFirstAncestorOfClass("Model")) if(plr and not done[plr])then done[plr] = true task.spawn(pcall, function() sound(workspace, sounds.ShrineEnd, 2, 1) local s = Instance.new("ScreenGui", plr:FindFirstChildOfClass("PlayerGui")) s.IgnoreGuiInset = true s.ResetOnSpawn = false local f = Instance.new("Frame", s) f.Size = UDim2.fromScale(2, 2) f.BackgroundColor3 = Color3.new(0,0,0) f.BackgroundTransparency = 1 game:GetService("TweenService"):Create(f, TweenInfo.new(.5), { BackgroundTransparency = 0 }):Play() task.wait(1) game:GetService("TweenService"):Create(f, TweenInfo.new(.5), { BackgroundTransparency = 1 }):Play() task.delay(.5, pcall, game.Destroy, s) end) end end end local origrange = domainrange domainrange = basedomainrange local pos = character.domaineff.Shrine:GetPivot().Position task.wait(.5) character.domaineff:Destroy() for i = 1, math.random(domainrange/10, domainrange/2) do local a = Instance.new("WedgePart", character) a.Position = pos+Vector3.new(math.random(-origrange,origrange),math.random(-origrange,origrange),math.random(-origrange,origrange)) a.Orientation = Vector3.new(math.random(-360,360),math.random(-360,360),math.random(-360,360)) a.Anchored = false a.CanCollide = false a.Material = Enum.Material.Glass a.Size = Vector3.new(math.random(1, origrange/30),math.random(1, origrange/3),math.random(1,origrange/3)) a.Color = Color3.new(1,1,1) a.Transparency = 0.6 a.Color = Color3.new(1,0,0) a.AssemblyAngularVelocity = a.Orientation/8 assets.MalevolentShrine.Domain.Highlight:Clone().Parent = a game:GetService('Debris'):AddItem(a,5) end end) for i, v in next, haori do v.Transparency = 0 end game:GetService("TweenService"):Create(character.domain.Sound, TweenInfo.new(1), { Volume = 0 }):Play() task.delay(1, pcall, game.Destroy, character.domain) end end local function growback(affectedlimb) affectedlimb.Transparency = 1 for i, v in next, affectedlimb:GetDescendants() do if(v:IsA("BasePart"))then v.Transparency = 1 end end pcall(function() character.Torso[affectedlimb.Name.." sizzle"].Sound:Stop() end) pcall(function() character.Torso[affectedlimb.Name.." sizzle"].Steam.Enabled = false end) pcall(function() character.Torso[affectedlimb.Name.." sizzle"].Blood.Enabled = false end) local muscle = Instance.new("Part", affectedlimb) muscle.Size = Vector3.new(0,0,0) muscle.Color = grayscaleColor(Color3.new(.5, 0, 0)) muscle.CanCollide = false muscle.Material = Enum.Material.Slate sound(muscle, 6148096445, 1, math.random(90, 110)/100) local w = Instance.new("Weld", muscle) w.C0 = CFrame.new(0, -2, 0) w.Part0 = muscle w.Part1 = affectedlimb game:GetService("TweenService"):Create(muscle, TweenInfo.new(.3, Enum.EasingStyle.Quint), { Size = affectedlimb.Size - Vector3.new(1,1,1)*.2 }):Play() game:GetService("TweenService"):Create(w, TweenInfo.new(.3, Enum.EasingStyle.Quint), { C0 = CFrame.new(0, -.1, 0) }):Play() task.wait(.3) local skin = Instance.new("Part", affectedlimb) skin.Size = Vector3.new(0,0,0) skin.CanCollide = false skin.Color = affectedlimb.Color local w = Instance.new("Weld", skin) w.C0 = CFrame.new(0, -2, 0) w.Part0 = skin w.Part1 = affectedlimb game:GetService("TweenService"):Create(skin, TweenInfo.new(.3, Enum.EasingStyle.Quint), { Size = affectedlimb.Size }):Play() game:GetService("TweenService"):Create(w, TweenInfo.new(.3, Enum.EasingStyle.Quint), { C0 = CFrame.new(0, 0, 0) }):Play() task.wait(.3) muscle:Destroy() skin:Destroy() affectedlimb.Transparency = 0 for i, v in next, affectedlimb:GetDescendants() do if(v:IsA("BasePart"))then v.Transparency = 0 end end end local oldhp = 500 local limbbackups = {} local limbwelds = {} local shouldbethere = { "Right Arm", "Left Arm", "Right Leg", "Left Leg" } local limbbackups = { ["Right Arm"] = assets.Character["Right Arm"]:Clone(), ["Left Arm"] = assets.Character["Left Arm"]:Clone(), ["Right Leg"] = assets.Character["Right Leg"]:Clone(), ["Left Leg"] = assets.Character["Left Leg"]:Clone(), } local limbwelds = { ["Right Arm"] = assets.Character["Torso"]["Right Shoulder"]:Clone(), ["Left Arm"] = assets.Character["Torso"]["Left Shoulder"]:Clone(), ["Right Leg"] = assets.Character["Torso"]["Right Hip"]:Clone(), ["Left Leg"] = assets.Character["Torso"]["Left Hip"]:Clone(), } local function rct(limb) local lostlimb = nil for i, v in next, shouldbethere do if(not character:FindFirstChild(v))then lostlimb = v break end end if(not lostlimb)then for i, v in next, character:GetDescendants() do if(v.Name == "RCT")then v.Enabled = true end end repeat task.wait() oldhp = oldhp + 1 until not keysdown["e"] for i, v in next, character:GetDescendants() do if(v.Name == "RCT")then v.Enabled = false end end return end attacking = true local lastc0 = {} for i, v in next, character:GetDescendants() do if(v:IsA("Motor6D"))then lastc0[v] = v.C0 end end for i, v in next, animations do pcall(function() v:CancelInstant() v:Stop() end) end local cloned = limbbackups[lostlimb]:Clone() cloned.Parent = character local weld = limbwelds[lostlimb]:Clone() pcall(game.Destroy, character["Torso"]:FindFirstChild(weld.Name)) weld.Part0 = character["Torso"] weld.Part1 = cloned weld.Parent = character["Torso"] table.clear(haori) for i, v in next, character:GetDescendants() do if(v:IsA("BasePart") and v.Name == "Haori")then table.insert(haori, v) end end table.clear(playingAnimations) local animgroup = animPlayer.CreateModuleGroup() table.clear(animations) for i, v in next, script.Animations:GetChildren() do if v.Name:find("rct ") then animations[v.Name] = animPlayer.new(character, v) else end for i, v in next, lastc0 do pcall(function() i.C0 = v end) end if(animations["rct "..lostlimb])then local anim = animations["rct "..lostlimb] anim:Play() task.delay(.8, function() anim:Cancel() end) end growback(cloned) task.wait(.2) attacking = false end local function worldcuttingslash() attacking = true humanoid.WalkSpeed = 0 playAnimation("worldcuttingslash") sound(root, sounds.WCSStartup, 2, 1) sound(root, sounds.WCSVoice, 3, 1) for i, v in next, aura.Mark:GetChildren() do v.Enabled = true end local h = Instance.new("Highlight", character) h.FillColor = Color3.new(1,1,1) h.OutlineColor = Color3.new(1,1,1) h.FillTransparency = 1 h.OutlineTransparency = 1 task.wait(.3) mangatext("Scale of the dragon.", nil, nil, .6) mark(marks.scale) game:GetService("TweenService"):Create(h, TweenInfo.new(.25,Enum.EasingStyle.Quint, Enum.EasingDirection.In, 0, true), { FillTransparency = .5, OutlineTransparency = 0 }):Play() task.wait(.5) mark(marks.recoil) mangatext("Recoil.", nil, -3, .6, 0) game:GetService("TweenService"):Create(h, TweenInfo.new(.25,Enum.EasingStyle.Quint, Enum.EasingDirection.In, 0, true), { FillTransparency = .5, OutlineTransparency = 0 }):Play() task.wait(.5) mark(marks.twin) for i, v in next, aura.Mark:GetChildren() do v.Enabled = false end mangatext("Twin meteors.", nil, nil, .6, -2) game:GetService("TweenService"):Create(h, TweenInfo.new(.25,Enum.EasingStyle.Quint, Enum.EasingDirection.In, 0, true), { FillTransparency = .5, OutlineTransparency = 0 }):Play() task.wait(.8) mangatext("Dismantle.", nil, -3) game:GetService("TweenService"):Create(h, TweenInfo.new(.6,Enum.EasingStyle.Quint, Enum.EasingDirection.In, 0, true), { FillTransparency = .5, OutlineTransparency = 0 }):Play() task.delay(.6, pcall, game.Destroy, h) task.wait(.6) sound(root, sounds.WCS, 3, 1) humanoid.WalkSpeed = walkspeed attacking = false local size = 1024 local splitter = Instance.new("Part") splitter.Size = Vector3.new(size, .5, size) splitter.CFrame = root.CFrame*CFrame.new(0,0,-size/2)*CFrame.Angles(0,0,math.rad(math.random(-45, 45))) splitter.Anchored = true splitter.CanCollide = false local splitter2 = Instance.new("Part") splitter2.Size = Vector3.new(size, .5, size) splitter2.CFrame = root.CFrame*CFrame.new(0,0,-size/2)*CFrame.Angles(0,0,math.rad(math.random(-45, 45))) splitter2.Anchored = true splitter2.CanCollide = false local aoe = MagnitudeAoe(splitter.CFrame, splitter.Size) local aoe2 = MagnitudeAoe(splitter2.CFrame, splitter2.Size) local aoe3 = workspace:GetPartBoundsInBox(splitter.CFrame, splitter.Size) local aoe4 = workspace:GetPartBoundsInBox(splitter2.CFrame, splitter2.Size) for i, v in next, aoe2 do if(not table.find(aoe, v))then table.insert(aoe, v) end end for i, v in next, aoe4 do if(not table.find(aoe3, v))then table.insert(aoe3, v) end end for i, v in next, aoe3 do if(not table.find(aoe, v))then table.insert(aoe, v) end end local eff = splitter:Clone() local h = Instance.new("Highlight", eff) h.OutlineTransparency = 1 h.FillTransparency = 0 h.FillColor = Color3.new(1,1,1) eff.Material = Enum.Material.Glass eff.Size = Vector3.new(0,0,0) eff.CFrame = CFrame.new(root.CFrame.Position)*splitter.CFrame.Rotation eff.Parent = workspace eff.Transparency = 5 eff.Reflectance = 1 game:GetService("TweenService"):Create(eff, TweenInfo.new(.5, Enum.EasingStyle.Quint), { CFrame = splitter.CFrame, Size = splitter.Size+Vector3.new(0,.5,0) }):Play() game:GetService("TweenService"):Create(eff, TweenInfo.new(2, Enum.EasingStyle.Quint), { Transparency = 1 }):Play() game:GetService("TweenService"):Create(h, TweenInfo.new(.5, Enum.EasingStyle.Quint), { FillTransparency = 1 }):Play() task.delay(1.2, pcall, game.Destroy, eff) local eff = splitter2:Clone() local h = Instance.new("Highlight", eff) h.OutlineTransparency = 1 h.FillTransparency = 0 h.FillColor = Color3.new(1,1,1) eff.Material = Enum.Material.Glass eff.Size = Vector3.new(0,0,0) eff.CFrame = CFrame.new(root.CFrame.Position)*splitter2.CFrame.Rotation eff.Parent = workspace eff.Transparency = 5 eff.Reflectance = 1 game:GetService("TweenService"):Create(eff, TweenInfo.new(.8, Enum.EasingStyle.Quint), { CFrame = splitter2.CFrame, Size = splitter2.Size+Vector3.new(0,.5,0) }):Play() game:GetService("TweenService"):Create(eff, TweenInfo.new(2, Enum.EasingStyle.Quint), { Transparency = 1 }):Play() game:GetService("TweenService"):Create(h, TweenInfo.new(.8, Enum.EasingStyle.Quint), { FillTransparency = 1 }):Play() task.delay(1.2, pcall, game.Destroy, eff) for i, v in next, aoe do if(v.Name:lower() ~= "baseplate" and v.Name:lower() ~= "base" and not v:IsDescendantOf(character))then task.spawn(pcall, function() local parts = game:GetService("GeometryService"):SubtractAsync(v, {splitter, splitter2}, { CollisionFidelity = Enum.CollisionFidelity.Default, RenderFidelity = Enum.RenderFidelity.Automatic, FluidFidelity = Enum.FluidFidelity.Automatic, SplitApart = true }) for _, a in next, parts do a.Parent = v.Parent a.Anchored = false a.CanCollide = true a.UsePartColor = true end v:Destroy() end) end end task.wait(1) splitter:Destroy() end local function flashstep() attacking = true sound(root, 1753619491, 2, math.random(80, 120)/100) local function fade(b) b.Anchored = true b.CanCollide = false b.Transparency = 0 b.Material = Enum.Material.Neon b.Color = Color3.new(1,1,1) game:GetService("TweenService"):Create(b, TweenInfo.new(.5), { Transparency = 1, Color = Color3.new() }):Play() task.delay(.5, pcall, game.Destroy, b) end for i, v in next, {"Left Arm", "Head", "Right Arm", "Right Leg", "Left Leg", "Torso"} do if(character:FindFirstChild(v))then local v = character:FindFirstChild(v):Clone() v.Name = "" for _, j in next, v:GetDescendants() do if(j:IsA("JointInstance"))then pcall(game.Destroy, j) elseif(j:IsA("FaceInstance"))then pcall(game.Destroy, j) elseif(j:IsA("BasePart"))then j.Name = "" fade(j) end end v.Parent = workspace fade(v) end end local flash = assets.Flashstep:Clone() flash.CFrame = root.CFrame flash.Parent = character task.spawn(function() for i = 1, 5 do flash.FlashStep:Emit(30) task.wait(.06) end end) task.delay(.3, pcall, game.Destroy, flash) local transparencies = {} for _, limb in next, character:GetChildren() do if(limb:IsA("BasePart"))then transparencies[limb] = limb.Transparency limb.Transparency = 1 for _, child in next, limb:GetDescendants() do if(child:IsA("BasePart"))then transparencies[child] = child.Transparency child.Transparency = 1 end end end end root.Position = root.Position + (humanoid.MoveDirection*50) task.wait(.25) for limb, transparency in next, transparencies do limb.Transparency = transparency end local flash = assets.Flashstep:Clone() flash.CFrame = root.CFrame flash.Parent = character task.spawn(function() for i = 1, 5 do flash.FlashStep:Emit(30) task.wait(.06) end end) task.delay(.3, pcall, game.Destroy, flash) for i, v in next, {"Left Arm", "Head", "Right Arm", "Right Leg", "Left Leg", "Torso"} do if(character:FindFirstChild(v))then local v = character:FindFirstChild(v):Clone() v.Name = "" v.Anchored = true v.CanCollide = false for _, j in next, v:GetDescendants() do if(j:IsA("JointInstance"))then pcall(game.Destroy, j) elseif(j:IsA("FaceInstance"))then pcall(game.Destroy, j) elseif(j:IsA("BasePart"))then j.Name = "" fade(j) end end v.Parent = workspace fade(v) end end attacking = false end local mahoragaevent = nil local halted = false local mahoraga = nil local mahoraganpc = game:GetService("HttpService"):GetAsync("https://raw.githubusercontent.com/TheFakeFew/Scripts/refs/heads/main/MahoragaNPC.lua") local function MAHORAGAHELPP() if(keysdown["r"])then if(mahoragaevent and mahoragaevent:IsDescendantOf(workspace))then halted = not halted mahoragaevent:Fire({Action = halted and "Halt" or "Resume"}) mangatext(halted and "Halt." or "Resume.") if(halted)then playAnimation("halt") else playAnimation("resume") end return end end if(mahoraga and mahoraga:IsDescendantOf(workspace))then if(mahoraga:FindFirstChildWhichIsA("BasePart", true))then local pos = mahoraga:FindFirstChildWhichIsA("BasePart", true).Position local unsummon = assets.Mahoraga.Effects.Unsummon.Smoke:Clone() unsummon.Parent = workspace unsummon.Position = pos for i, v in next, unsummon:GetDescendants() do if(v:IsA("ParticleEmitter"))then v:Emit(10) end end task.delay(1, pcall, game.Destroy, unsummon) end mahoraga:Destroy() mahoragaevent = nil halted = false return end mahoragaevent = nil halted = false attacking = true local anim = playAnimation("mahoraga") humanoid.AutoRotate = false humanoid.WalkSpeed = 0 local rnd = math.random(1, 10) if(math.random(1, 5) ~= 1)then local s = Instance.new("Sound", root) s.SoundId = "rbxassetid://"..sounds.Mahoraga s.PlaybackRegionsEnabled = true s.Volume = 3 s.RollOffMaxDistance = 300 s.PlaybackRegionsEnabled = true s.PlaybackRegion = NumberRange.new(4.833, 19.7) s.Name = "Summon" s:Play() else local s = Instance.new("Sound", root) s.SoundId = "rbxassetid://"..sounds.HELPP s.PlaybackRegionsEnabled = true s.Volume = 4 s.RollOffMaxDistance = 300 s.PlaybackRegionsEnabled = true s.PlaybackRegion = NumberRange.new(0, 13.702) s.Name = "Summon" task.delay(.8, function() s:Play() end) end local high = Instance.new("Highlight") high.FillColor = Color3.new(1,1,1) high.FillTransparency = .99 high.OutlineTransparency = .99 high.OutlineColor = Color3.new(1,1,1) high.DepthMode = Enum.HighlightDepthMode.Occluded local aoe = workspace:GetPartBoundsInRadius(root.Position, 50) local done = {} for i, v in next, aoe do if(v:FindFirstAncestorOfClass("Model") and v:FindFirstAncestorOfClass("Model"):FindFirstChildOfClass("Humanoid") and not done[v:FindFirstAncestorOfClass("Model")])then local highlight = high:Clone() highlight.Adornee = v:FindFirstAncestorOfClass("Model") highlight.Parent = v:FindFirstAncestorOfClass("Model") done[v:FindFirstAncestorOfClass("Model")] = true task.delay(anim.Length+2, pcall, game.Destroy, highlight) end end local mahomodel = Instance.new("Model", workspace) Instance.new("Humanoid", mahomodel) local highlight = high:Clone() highlight.Adornee = mahomodel highlight.Parent = mahomodel local maho = script:FindFirstChild("MahoragaNPC") and script:FindFirstChild("MahoragaNPC"):Clone() or NS(mahoraganpc, mahomodel) maho.Parent = mahomodel maho.Disabled = false maho:SetAttribute("owner", owner.Name) mahoraga = maho local mahoassets = assets.Mahoraga:Clone() mahoassets.Name = "MahoragaAssets" mahoassets.Parent = game:GetService("ServerStorage") task.spawn(function() mahoragaevent = maho:WaitForChild("Mahoraga"):WaitForChild("MahoragaEvent", 60) end) task.spawn(function() repeat task.wait(.5) for i, v in next, maho:GetDescendants() do if(v:IsA("BasePart") and not v.Anchored)then pcall(function() v:SetNetworkOwner(nil) end) end end until not maho or not maho:IsDescendantOf(workspace) end) local domain = assets.MalevolentShrine.Domain:Clone() domain.Highlight.FillTransparency = 1 domain.Highlight.FillColor = Color3.new() domain.Highlight.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop domain.Size = Vector3.new(1,1,1)*100 domain.CFrame = root.CFrame domain.Material = Enum.Material.Neon domain.Color = Color3.new() domain.Transparency = 0 domain.CanQuery = false domain.Parent = workspace game:GetService("TweenService"):Create(domain.Highlight, TweenInfo.new(3), { FillTransparency = 0 }):Play() game:GetService("TweenService"):Create(domain, TweenInfo.new(3), { Transparency = 0 }):Play() task.wait(anim.Length) maho.Parent = workspace task.delay(2, function() mahomodel:Destroy() end) game:GetService("TweenService"):Create(domain.Highlight, TweenInfo.new(2), { FillTransparency = 1 }):Play() game:GetService("TweenService"):Create(domain, TweenInfo.new(3), { Transparency = 1 }):Play() task.delay(3, pcall, game.Destroy, domain) attacking = false humanoid.AutoRotate = true humanoid.WalkSpeed = walkspeed end local posing = false local moves = { ["n"] = { func = function() if(taunting)then return end local taunt = Taunts[Random.new():NextInteger(1, #Taunts)] if(math.random(2) == 1)then taunt = Taunts[Random.new():NextInteger(#Taunts - 4, #Taunts)] end taunting = true if(taunt.Function)then taunt.Function() else local s = Instance.new("Sound", root) s.SoundId = "rbxassetid://"..taunt.Id s.Volume = 3 s:Play() repeat task.wait() until s.IsLoaded game:GetService("Debris"):AddItem(s, s.TimeLength) local am = #taunt.String:split("|") for i, v in next, taunt.String:split("|") do mangatext(v, nil, i%2 == 0 and -3 or 3, s.TimeLength/am) task.wait(s.TimeLength/am) end end taunting = false end, bypassattack = true }, ["z"] = { func = cleave }, ["x"] = { func = dismantle, arial = dismantleair }, ["c"] = { func = spiderweb, arial = engrave }, ["v"] = { func = divineflame }, ["b"] = { func = malevolentshrine }, ["f"] = { func = worldcuttingslash }, ["g"] = { func = MAHORAGAHELPP }, ["q"] = { func = flashstep }, ["e"] = { func = rct, }, ["p"] = { func = function() if(not posing)then attacking = true posing = true task.spawn(function() local f = Instance.new("Folder", character) f.Name = "posefolder" local m = Instance.new("Sound", root) m.Name = "pose" m.Looped = true local randomID = poseThemes[math.random(1, #poseThemes)] if randomID == 18628257420 then m.PlaybackSpeed = 0.2 end m.SoundId = "rbxassetid://"..randomID m.Volume = 3 m:Play() humanoid.WalkSpeed = 0 playAnimation("firearrowpose", true) local rootStartCF = root.CFrame local skillAssets = assets.FireArrow:Clone() local groundpart = Instance.new("Part", f) groundpart.CFrame = root.CFrame groundpart.Transparency = 1 groundpart.CanCollide = false groundpart.Anchored = true local floorpos = findFloorPosition(groundpart.Position) local RHand = skillAssets.RHand:Clone() local LHand = skillAssets.LHand:Clone() local impactf = skillAssets.impactf:Clone() impactf.Parent = character local spar = VFXHelp.EmitAndRemove(impactf,root.CFrame,{maxFloorDist = 20}) local charg = skillAssets.impactf:Clone() charg.Parent = f charg.CFrame = spar.CFrame VFXHelp.EnableVFX(charg) task.delay(.95, function() RHand.Parent = f LHand.Parent = f local Weld = Instance.new("Weld",RHand) Weld.Part0 = character["Right Arm"] Weld.Part1 = RHand Weld.C0 = CFrame.new(0,-1,0) local Weld = Instance.new("Weld",LHand) Weld.Part0 = character["Left Arm"] Weld.Part1 = LHand Weld.C0 = CFrame.new(0,-1,0) for i,v in pairs(LHand.At0:GetDescendants()) do if v:IsA("Beam") then v.Attachment0 = LHand.At0 v.Attachment1 = RHand.At1 end end CameraEffect.Flash({request = "LightFlash", tim = .02}) VFXHelp.EmitFromModel(RHand.Main) local firesfx = Instance.new("Sound") firesfx.Volume = 8 firesfx.SoundId = "rbxassetid://"..sounds.Clap firesfx.Parent = root firesfx:Play() repeat task.wait() until firesfx.IsLoaded game:GetService("Debris"):AddItem(firesfx,firesfx.TimeLength) end) task.delay(3.983, function() local chargedsfx = Instance.new("Sound") chargedsfx.Volume = 8 chargedsfx.SoundId = "rbxassetid://"..sounds.ArrowCharged chargedsfx.Parent = root chargedsfx:Play() repeat task.wait() until chargedsfx.IsLoaded game:GetService("Debris"):AddItem(chargedsfx,chargedsfx.TimeLength) end) task.delay(4.817, function() local Wind = skillAssets.Wind:Clone() Wind.Parent = f Wind.Root.wind:Play() PartJoiner.AddMotor6D(root,Wind.Root,CFrame.new(0,0,0)) rem:FireClient(owner, "ShakeCamera", "Bump") CameraEffect.Flash({request = "orange", tim = .05}) CameraEffect.Flash({request = "LightFlash", tim = .02}) CameraEffect.Blur({wai_till_normalFov = .15, size = 40, tim1 = .2, tim2 = .4}) local Arrow = skillAssets.Arrow:Clone() Arrow.Parent = f Arrow.Sound:Play() local Weld = Instance.new("Weld",Arrow) Weld.Part0 = root Weld.Part1 = Arrow Weld.C0 = CFrame.new(1,0,-3) BaseEffects.GroundExpandV2(CFrame.new(floorpos) * CFrame.new(0,10,0),5,10,{expandTime = 0.1,destroyTime = 2}) groundpart:Destroy() humanoid.AutoRotate = true task.wait(1) sound(root, sounds.Open, 4, 1) mangatext("Open.", Color3.new(.8, .6, 0), -3) end) end) else attacking = false playidle = true posing = false humanoid.WalkSpeed = walkspeed character.posefolder:Destroy() root.pose:Destroy() animations["firearrowpose"]:Stop() animations["firearrowpose"]:Cancel() playingAnimations["firearrowpose"] = nil end end, bypassattack = true }, ["leftcontrol"] = { func = function() walkspeed = walkspeed == 16 and 32 or 16 humanoid.WalkSpeed = walkspeed end, } } local onKeyDown = function(key) keysdown[key] = true local attack = moves[key] if(not attack)then return end if(attack.bypassattack)then if(attack.arial and not onground)then return attack.arial() else return attack.func() end end if(attacking)then return end if(attack.arial and not onground)then return attack.arial() else return attack.func() end end local onKeyUp = function(key) keysdown[key] = false end local adapt = 1 local debounce = false local DharmaWeld = nil local timesincelastattack = tick() local lastadapttick = tick() local adaptConnection; local keydown; local keyup; local dead = true local lastpivot = character:GetPivot() local lostlimbs = {} local healthscript; local function createcharacter() characterGen = characterGen + 1 local myGen = characterGen table.clear(playingAnimations) attacking = false posing = false domain = false taunting = false playidle = true if(not dead)then assets.Character:PivotTo(lastpivot) else table.clear(lostlimbs) character = owner.Character or owner.CharacterAdded:Wait() assets.Character:PivotTo(character:GetPivot()) end local wasdead = dead dead = false for i, v in next, animations do pcall(function() v:CancelInstant() v:Stop() end) end pcall(game.Destroy, character) pcall(game.Destroy, client) pcall(game.Destroy, healthscript) pcall(game.Destroy, rem) pcall(function() keydown:Disconnect() keyup:Disconnect() end) character = assets.Character:Clone() character.Name = game:GetService("HttpService"):GenerateGUID(false) owner.Character = character root = character.HumanoidRootPart humanoid = character:FindFirstChildOfClass("Humanoid") humanoid.MaxHealth = 500 humanoid.Health = 500 humanoid.RequiresNeck = false humanoid.BreakJointsOnDeath = false humanoid.DisplayName = owner.DisplayName humanoid.WalkSpeed = walkspeed params = RaycastParams.new() params.FilterDescendantsInstances = {character} aura = root.Aura table.clear(haori) for i, v in next, character:GetDescendants() do if(v:IsA("BasePart") and v.Name == "Haori")then table.insert(haori, v) end end DharmaWeld = character.Head.WheelOfDharma.Weld character.Parent = workspace local animgroup = animPlayer.CreateModuleGroup() table.clear(animations) for i, v in next, script.Animations:GetChildren() do if v.Name:find("rct ") then animations[v.Name] = animPlayer.new(character, v) else end task.spawn(function() healthscript = NS([[ -- Gradually regenerates the Humanoid's Health over time. local REGEN_RATE = 1/100 local REGEN_STEP = 1 local Character = script.Parent local Humanoid = Character:WaitForChild("Humanoid") task.spawn(function() while Humanoid.Parent do if Humanoid.Health < Humanoid.MaxHealth then local dh = REGEN_STEP * REGEN_RATE * Humanoid.MaxHealth Humanoid.Health = math.min(Humanoid.Health + dh, Humanoid.MaxHealth) end task.wait(REGEN_STEP) end end) ]], character) healthscript.Name = "Health" end) local pg = owner:WaitForChild("PlayerGui") client = NLS(clientls, pg) client.Name = "SukunaClient" rem = Instance.new("RemoteEvent") rem.Name = "RemoteEvent" rem.Parent = client adaptConnection = humanoid.HealthChanged:Connect(function(newhp) local genAtConnect = myGen task.defer(function() if genAtConnect ~= characterGen then return end if not validCharRefs() then return end local hplossraw = (oldhp - newhp) local hploss = hplossraw/adapt if(hploss <= 0)then oldhp = humanoid.Health return end timesincelastattack = tick() if((oldhp - hploss) <= 0)then pcall(game.Destroy, client) adaptConnection:Disconnect() dead = true character:BreakJoints() pcall(function() local pou = assets.Poukuna:Clone() pou:PivotTo(character:GetPivot()*CFrame.new(0,-1.5,0)*CFrame.Angles(0, math.rad(180), 0)) for i, v in next, character:GetDescendants() do if(v:IsA("BasePart"))then v.Transparency = 1 end end pou.Parent = character sound(root, 7205082060, 1, 1) end) task.spawn(function() owner.CharacterAdded:Wait() task.defer(createcharacter) end) return end if(hploss < 1 or adapt > (hplossraw/5))then hploss = 0 else adapt = adapt + 1 end if(not debounce and hploss ~= 0)then sound(root, sounds.WheelOfDharma, 1, 1) game:GetService("TweenService"):Create(DharmaWeld, TweenInfo.new(.3), { C0 = DharmaWeld.C0 * CFrame.Angles(0, math.rad(45), 0) }):Play() sound(root, 95870665075757, 1, 1) debounce = true task.delay(.6, function() debounce = false end) end if(hploss >= 45)then if(math.random(1, 5) == 1)then local limb = shouldbethere[math.random(#shouldbethere)] pcall(game.Destroy, character:FindFirstChild(limb)) end end humanoid.Health = oldhp - hploss oldhp = humanoid.Health end) end) oldhp = humanoid.Health for i, v in next, lostlimbs do if(v)then pcall(game.Destroy, character:FindFirstChild(i)) end end if(math.random(1, 2) == 1 and not wasdead)then local limb = shouldbethere[math.random(#shouldbethere)] pcall(game.Destroy, character:FindFirstChild(limb)) end end createcharacter() local defers = table.create(78, task.defer) game:GetService("RunService").PostSimulation:Connect(function() if(dead) then return end if not validCharRefs() then createcharacter() return end task.spawn(unpack(defers), function() if (not character or not character:IsDescendantOf(workspace) or not character:FindFirstChild("Torso") or not character:FindFirstChild("Head") or not character:FindFirstChild("HumanoidRootPart") or not character:FindFirstChildOfClass("Humanoid") or not character.Torso:FindFirstChild("Neck") or not character.HumanoidRootPart:FindFirstChild("RootJoint") or character:GetPivot().Position.Magnitude >= 1e5) then createcharacter() end onground = not not workspace:Raycast(root.Position, Vector3.yAxis * -3.5, params) if onground then lastpivot = CFrame.new(character:GetPivot().Position) * CFrame.Angles(0, math.rad(root.Orientation.Y), 0) end if tick() - timesincelastattack >= 30 then if tick() - lastadapttick >= 1 and adapt > 1 then adapt = adapt - 1 lastadapttick = tick() end end if oldhp ~= oldhp then oldhp = 500 end humanoid.MaxHealth = 500 humanoid.Health = oldhp humanoid.RequiresNeck = false humanoid.BreakJointsOnDeath = false humanoid.DisplayName = owner.DisplayName if playidle then local velocity = math.abs(Vector2.new(root.Velocity.X, root.Velocity.Z).Magnitude) if velocity >= 5 and velocity < 20 then if not animations["walk"].IsPlaying then animations["walk"]:Play() end else animations["walk"]:Stop() end if velocity >= 20 then if not animations["run"].IsPlaying then animations["run"]:Play() end else animations["run"]:Stop() end if velocity < 5 then if not animations["idle"].IsPlaying then animations["idle"]:Play() end else animations["idle"]:Stop() end else animations["idle"]:Stop() animations["walk"]:Stop() animations["run"]:Stop() end for i, v in next, shouldbethere do if not character:FindFirstChild(v) then pcall(function() character.Torso[v .. " sizzle"].Steam.Enabled = true character.Torso[v .. " sizzle"].Blood.Enabled = true character.Torso[v .. " sizzle"].Sound:Resume() end) lostlimbs[v] = true else lostlimbs[v] = false end end end) end) end end
Editor Settings
Theme
Key bindings
Full width
Lines