Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --[[
- Made by Fenrier.
- ]]
- if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
- local Player = owner
- local Mouse,mouse,UserInputService,ContextActionService
- do
- script.Parent = RhiBel00351
- local CAS = {Actions={}}
- local Event = Instance.new("RemoteEvent")
- Event.Name = "UserInput_Event"
- Event.Parent = Player.Character
- local fakeEvent = function()
- local t = {_fakeEvent=true}
- t.Connect = function(self,f)self.Function=f end
- t.connect = t.Connect
- return t
- end
- local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
- local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
- function CAS:BindAction(name,fun,touch,...)
- CAS.Actions[name] = {Name=name,Function=fun,Keys={...}}
- end
- function CAS:UnbindAction(name)
- CAS.Actions[name] = nil
- end
- local function te(self,ev,...)
- local t = m[ev]
- if t and t._fakeEvent and t.Function then
- t.Function(...)
- end
- end
- m.TrigEvent = te
- UIS.TrigEvent = te
- Event.OnServerEvent:Connect(function(plr,io)
- if plr~=Player then return end
- if io.isMouse then
- m.Target = io.Target
- m.Hit = io.Hit
- elseif io.UserInputType == Enum.UserInputType.MouseButton1 then
- if io.UserInputState == Enum.UserInputState.Begin then
- m:TrigEvent("Button1Down")
- else
- m:TrigEvent("Button1Up")
- end
- else
- for n,t in pairs(CAS.Actions) do
- for _,k in pairs(t.Keys) do
- if k==io.KeyCode then
- t.Function(t.Name,io.UserInputState,io)
- end
- end
- end
- if io.UserInputState == Enum.UserInputState.Begin then
- m:TrigEvent("KeyDown",io.KeyCode.Name:lower())
- UIS:TrigEvent("InputBegan",io,false)
- else
- m:TrigEvent("KeyUp",io.KeyCode.Name:lower())
- UIS:TrigEvent("InputEnded",io,false)
- end
- end
- end)
- NLS([==[
- local Player = game:GetService("Players").LocalPlayer
- local Char = Player.Character
- local Event = Char:WaitForChild("UserInput_Event")
- local UIS = game:GetService("UserInputService")
- local input = function(io,a)
- if a then return end
- local io = {KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState}
- Event:FireServer(io)
- end
- UIS.InputBegan:Connect(input)
- UIS.InputEnded:Connect(input)
- local Changed = false
- local Mouse = Player:GetMouse()
- local h,t = Mouse.Hit,Mouse.Target
- while wait(1/30) do
- if h~=Mouse.Hit or t~=Mouse.Target then
- Event:FireServer({isMouse=true,Target=Mouse.Target,Hit=Mouse.Hit})
- h,t=Mouse.Hit,Mouse.Target
- end
- end
- ]==],Player.Character)
- Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
- end
- wait(0.2)
- local mode = Instance.new('BoolValue')
- mode.Name = "GhostMode"
- mode.Parent = Player.Character
- if not game.Workspace:FindFirstChild("NoTarget") then
- notarget = Instance.new("Model")
- notarget.Name = "NoTarget"
- notarget.Parent = game.Workspace
- end
- if workspace:FindFirstChild("damageFunc") then workspace.damageFunc:Destroy() end
- if workspace:FindFirstChild("damguiFunc") then workspace.damguiFunc:Destroy() end
- local damageFunc=Instance.new("BindableFunction",workspace)
- damageFunc.Name="damageFunc"
- local damguiFunc=Instance.new("BindableEvent",workspace)
- damguiFunc.Name="damguiFunc"
- function damageFunc.OnInvoke(me,hum,dam)
- if hum.Health<=0 then
- return
- end
- local oldhealth=hum.Health
- hum:TakeDamage(dam)
- local name=me.Name.."Damage"
- local newval
- if hum.Parent:findFirstChild(name)==nil then
- newval=Instance.new("NumberValue",hum.Parent)
- newval.Name=name
- newval.Value=dam
- elseif hum.Parent:findFirstChild(name)~=nil then
- hum.Parent[name].Value=hum.Parent[name].Value+dam
- end
- local char=nil
- local highestval=0
- for _,c in pairs(hum.Parent:children()) do
- if string.sub(c.Name,-6)=="Damage" then
- if c.Value>highestval then
- name=string.sub(c.Name,1,string.len(c.Name)-6)
- if game.Players:findFirstChild(name)~=nil then
- char=game.Players[name]
- end
- highestval=c.Value
- end
- end
- end
- --class=string.sub(c.CurrentClass.Value,6)
- if hum.Health<=0 and string.find(hum.Parent.Name,"Kactus Man")==nil and oldhealth~=0 and hum.Parent:FindFirstChild("KillIgnore")==nil then
- if char~=nil then
- if char:findFirstChild("Kills")~=nil then
- local v=Instance.new("BoolValue",hum.Parent)
- v.Name="KillIgnore"
- v.Value=true
- game:GetService("Debris"):AddItem(v,2)
- char.Kills.Value=char.Kills.Value+1
- end
- end
- end
- end
- ----gui
- damgui.Event:connect(function(Char,Dealt,Type)
- --print(Dealt)
- --print(Type)
- local m=Instance.new("Model")
- m.Name="Effect"
- local c=Instance.new("Part")
- c.Transparency=1
- c.Name="Head"
- c.TopSurface=0
- c.BottomSurface=0
- c.formFactor="Plate"
- c.Size=Vector3.new(1,.4,1)
- local b=Instance.new("BillboardGui",c)
- b.Size=UDim2.new(5,0,5,0)
- b.AlwaysOnTop=true
- if type(Dealt)=="number" then
- Dealt=math.floor(Dealt)
- end
- local DebuffIcon
- if Dealt == "-Movement" or Dealt == "+Movement" then
- DebuffIcon = Instance.new("ImageLabel")
- DebuffIcon.Name = "DebuffIcon"
- DebuffIcon.Size = UDim2.new(0.5, 0, 0.5, 0)
- DebuffIcon.Position = UDim2.new(0.25, 0, 0.25, 0)
- DebuffIcon.ImageColor3 = Color3.fromRGB(170, 170, 170)
- DebuffIcon.ImageTransparency = 0.6
- DebuffIcon.BackgroundTransparency = 1
- DebuffIcon.Image = "rbxassetid://628793172"
- DebuffIcon.Parent = b
- elseif Dealt == "-Defense" or Dealt == "+Defense" then
- DebuffIcon = Instance.new("ImageLabel")
- DebuffIcon.Name = "DebuffIcon"
- DebuffIcon.Size = UDim2.new(0.5, 0, 0.5, 0)
- DebuffIcon.Position = UDim2.new(0.25, 0, 0.25, 0)
- DebuffIcon.ImageColor3 = Color3.fromRGB(170, 170, 170)
- DebuffIcon.ImageTransparency = 0.6
- DebuffIcon.BackgroundTransparency = 1
- DebuffIcon.Image = "rbxassetid://628793046"
- DebuffIcon.Parent = b
- elseif Dealt == "-Damage" or Dealt == "+Damage" then
- DebuffIcon = Instance.new("ImageLabel")
- DebuffIcon.Name = "DebuffIcon"
- DebuffIcon.Size = UDim2.new(0.5, 0, 0.5, 0)
- DebuffIcon.Position = UDim2.new(0.25, 0, 0.25, 0)
- DebuffIcon.ImageColor3 = Color3.fromRGB(170, 170, 170)
- DebuffIcon.ImageTransparency = 0.6
- DebuffIcon.BackgroundTransparency = 1
- DebuffIcon.Image = "rbxassetid://628793110"
- DebuffIcon.Parent = b
- end
- local damgui=gui("TextLabel",b,tostring(Dealt),1,Color3.new(0,0,0),UDim2.new(0,0,0,0),UDim2.new(1,0,1,0))
- if Type=="Damage" then
- damgui.Font="SourceSans"
- if Dealt=="Block" then
- damgui.TextColor3=BrickColor.new("Bright blue").Color
- elseif Dealt<30 then
- damgui.TextColor3=BrickColor.new("White").Color
- elseif Dealt>=30 and Dealt<200 then
- damgui.TextColor3=BrickColor.new("Bright yellow").Color
- else
- damgui.TextColor3=BrickColor.new("Really red").Color
- damgui.Font="SourceSansBold"
- end
- elseif Type == "Burn" then
- damgui.TextColor3 = BrickColor.new("Bright orange").Color
- elseif Type=="Debuff" then
- damgui.TextColor3=BrickColor.new("White").Color
- elseif Type=="Interrupt" then
- damgui.TextColor3=BrickColor.new("New Yeller").Color
- elseif Type=="Heal" then
- damgui.TextColor3=BrickColor.new("Bright green").Color
- elseif Type=="ShieldBlock" then
- damgui.TextColor3=BrickColor.new("Bright blue").Color
- end
- --damgui.FontSize="Size48"
- damgui.TextScaled=true
- local ms=Instance.new("CylinderMesh")
- ms.Scale=Vector3.new(.8,.8,.8)
- ms.Parent=c
- c.Reflectance=0
- Instance.new("BodyGyro").Parent=c
- c.Parent=m
- if Char and Char:findFirstChild("Head")~=nil then
- c.CFrame=cf(Char["Head"].CFrame.p+Vector3.new(math.random(-100,100)/100,3,math.random(-100,100)/100))
- elseif Char and Char.Parent:findFirstChild("Head")~=nil then
- c.CFrame=cf(Char.Parent["Head"].CFrame.p+Vector3.new(math.random(-100,100)/100,3,math.random(-100,100)/100))
- end
- local f=Instance.new("BodyPosition")
- f.P=2000
- f.D=100
- f.maxForce=Vector3.new(545000,545000,545000)
- if Type=="Damage" or Type=="Heal" or Type == "Burn" then
- f.position=c.Position+Vector3.new(0,3,0)
- elseif Type=="Debuff" or Type=="Interrupt" or Type=="ShieldBlock" then
- f.position=c.Position+Vector3.new(0,5,0)
- end
- f.Parent=c
- game:GetService("Debris"):AddItem(m,5)
- coroutine.resume(coroutine.create(function(bp,txt,md)
- local e=1
- repeat
- wait()
- if e<10 then
- e=e+1
- elseif e<15 then
- bp.position=bp.position+vt(0,-.2,0)
- e=e+1
- elseif e<50 then
- e=e+1
- elseif e<100 then
- bp.position=bp.position+vt(0,.2,0)
- txt.TextStrokeTransparency=txt.TextStrokeTransparency+.1
- txt.TextTransparency=txt.TextTransparency+.1
- if DebuffIcon then
- DebuffIcon.ImageTransparency = DebuffIcon.ImageTransparency + .1
- end
- e=e+1
- else
- md.Parent=nil
- end
- until md.Parent==nil
- end),f,damgui,m)
- c.CanCollide=false
- m.Parent=workspace.CurrentCamera
- c.CanCollide=false
- end)
- NLS([===[
- local player = game.Players.LocalPlayer
- local Character = player.Character
- Character:WaitForChild("GhostMode")
- local ghostmode = Character.GhostMode
- local spectreFolder = Instance.new("Folder")
- spectreFolder.Name = "SpectreEffects"
- spectreFolder.Parent = game.Players.LocalPlayer.PlayerGui
- while wait() do
- if ghostmode.Value then
- for _,p in pairs(game.Players:GetPlayers()) do
- if p ~= game.Players.LocalPlayer and not spectreFolder:FindFirstChild(p.Name.. "Spectre") then
- local pF = Instance.new("Folder")
- pF.Name = p.Name.. "Spectre"
- pF.Parent = spectreFolder
- local parts = {
- ["Left Arm"] = true,
- ["Right Arm"] = true,
- ["Left Leg"] = true,
- ["Right Leg"] = true,
- ["Head"] = true,
- ["Torso"] = true,
- }
- for _,v in pairs(p.Character:GetChildren()) do
- if v:isA("BasePart") and parts[v.Name] then
- for i = 0, 5 do
- local surf = Instance.new("SurfaceGui")
- surf.AlwaysOnTop = true
- surf.Face = i
- local frame = Instance.new("Frame")
- frame.BackgroundTransparency = 0.7
- frame.BorderSizePixel = 0
- frame.BackgroundColor3 = Color3.fromRGB(170, 170, 255)
- frame.Size = UDim2.new(1, 0, 1, 0)
- frame.Parent = surf
- surf.Parent = pF
- surf.Adornee = v
- end
- end
- end
- end
- end
- else
- spectreFolder:ClearAllChildren()
- end
- end
- ]===], owner.PlayerGui);
- wait(0.2)
- Player.Character:WaitForChild("GhostMode")
- Character=Player.Character
- PlayerGui=Player.PlayerGui
- Backpack=Player.Backpack
- Torso=Character.Torso
- Head=Character.Head
- Humanoid=Character.Humanoid
- LeftArm=Character["Left Arm"]
- LeftLeg=Character["Left Leg"]
- RightArm=Character["Right Arm"]
- RightLeg=Character["Right Leg"]
- LS=Torso["Left Shoulder"]
- LH=Torso["Left Hip"]
- RS=Torso["Right Shoulder"]
- RH=Torso["Right Hip"]
- Neck=Torso.Neck
- it=Instance.new
- vt=Vector3.new
- cf=CFrame.new
- euler=CFrame.fromEulerAnglesXYZ
- angles=CFrame.Angles
- necko=cf(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
- necko2=cf(0, -0.5, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
- LHC0=cf(-1,-1,0,-0,-0,-1,0,1,0,1,0,0)
- LHC1=cf(-0.5,1,0,-0,-0,-1,0,1,0,1,0,0)
- RHC0=cf(1,-1,0,0,0,1,0,1,0,-1,-0,-0)
- RHC1=cf(0.5,1,0,0,0,1,0,1,0,-1,-0,-0)
- RootPart=Character.HumanoidRootPart
- RootJoint=RootPart.RootJoint
- RootCF=euler(-1.57,0,3.14)
- attack = false
- attackdebounce = false
- MMouse=mouse
- coroutine.resume(coroutine.create(function()
- MMouse.TargetFilter = workspace:WaitForChild("NoTarget")
- end))
- combo=0
- if Character:findFirstChild("Shirt Graphic") then
- tshirt=Character:findFirstChild("Shirt Graphic"):Clone()
- else
- tshirt=nil
- end
- local canGhost = true
- local tshirt2=Torso:findFirstChild("roblox"):Clone()
- local oHeadCol=Character["Body Colors"].HeadColor
- local oTorsoCol=Character["Body Colors"].TorsoColor
- local oLeftArmCol=Character["Body Colors"].LeftArmColor
- local oRightArmCol=Character["Body Colors"].RightArmColor
- local oLeftLegCol=Character["Body Colors"].LeftLegColor
- local oRightLegCol=Character["Body Colors"].RightLegColor
- local idle=0
- local Anim="Idle"
- local Effects={}
- local Weapon={}
- local Welds={}
- local ghostmode=false
- local clone=nil
- local nr=NumberRange.new
- local ns=NumberSequence.new
- local cs=ColorSequence.new
- nsk=NumberSequenceKeypoint.new
- local testpart=it("Part")
- local cRootJoint,cNeck,cRW,cLW,cRH,cLH=nil,nil,nil,nil,nil,nil
- local bodycolors=Character:findFirstChild("Body Colors")
- local shirt=Character:findFirstChild("Shirt")
- local pants=Character:findFirstChild("Pants")
- local face=Head:findFirstChild("face")
- local drainmana=false
- local marked=nil
- local bladetype="None"
- local oldCFrames={}
- local ominField=nil
- local ominup=false
- local orblimit=0
- local dtatkfour=false
- local doing4=false
- local decreaseatk=0
- local decreasedef=0
- local decreasemvmt=0
- local move1="(Z)\
- Ghastly Grip"
- local move2="(X)\
- Ominous Matter"
- local move3="(C)\
- Spirit Orbs"
- local move4="(V)\
- Phantom's Mark"
- local cooldowns={}
- local cooldown1=0 table.insert(cooldowns,cooldown1)
- local cooldown2=0 table.insert(cooldowns,cooldown2)
- local cooldown3=0 table.insert(cooldowns,cooldown3)
- local cooldown4=0 table.insert(cooldowns,cooldown4)
- local cooldownsadd={}
- local cooldownadd1=.33 table.insert(cooldownsadd,cooldownadd1)
- local cooldownadd2=.2 table.insert(cooldownsadd,cooldownadd2)
- local cooldownadd3=.5 table.insert(cooldownsadd,cooldownadd3)
- local cooldownadd4=.12 table.insert(cooldownsadd,cooldownadd4)
- local cooldownmax=100
- local damageFunc=workspace.damageFunc
- holdc=false
- orb=0
- orbcharge=0
- maxorbs=4
- --blocknum=100
- local manualguardend=false
- --player
- player=nil
- --save shoulders
- RSH, LSH=nil, nil
- --welds
- RW, LW=Instance.new("Motor"), Instance.new("Motor")
- RW.Name="Right Shoulder" LW.Name="Left Shoulder"
- LH=Torso["Left Hip"]
- RH=Torso["Right Hip"]
- TorsoColor=Torso.BrickColor
- TorsoRed=TorsoColor.Color.r
- TorsoGreen=TorsoColor.Color.g
- TorsoBlue=TorsoColor.Color.b
- NewCol=BrickColor.new("Eggplant").Color
- NewCol2=BrickColor.new("Medium blue").Color
- NewCol3=BrickColor.new("Steel blue").Color
- if Player:findFirstChild("Color1")~=nil then
- NewCol=Player.Color1.Value
- end
- --print(BrickColor.new(NewCol))
- local mdec=Instance.new("NumberValue",Decrease)
- mdec.Name="DecreaseDef"
- mdec.Value=.4
- local mdec2=Instance.new("NumberValue",Decrease)
- mdec2.Name="DecreaseMvmt"
- mdec2.Value=.1
- local mdec3=Instance.new("NumberValue")
- mdec3.Name="DecreaseMvmt"
- mdec3.Value=.1
- if workspace.NoTarget:findFirstChild("Effects"..Player.Name,true) ~= nil then
- workspace.NoTarget:findFirstChild("Effects"..Player.Name,true).Parent = nil
- end
- local effects=it("Model",workspace.NoTarget)
- effects.Name="Effects"..Player.Name
- --local Animate=Humanoid.Animator
- local animate=Character:findFirstChild("Animate")
- --[[local animation=Instance.new("Animation")
- animation.AnimationId="http://www.roblox.com/Asset?ID=180435571"
- local animTrack=Humanoid:LoadAnimation(animation)]]
- local canjump=true
- function removeControl()
- canjump=false
- end
- function resumeControl()
- canjump=true
- end
- Player.Character.Humanoid.Changed:connect(function()
- if canjump==false then
- if Player.Character:FindFirstChild("Humanoid") then
- Player.Character.Humanoid.Jump=false
- end
- end
- end)
- ArtificialHB = Instance.new("BindableEvent", script)
- ArtificialHB.Name = "Heartbeat"
- script:WaitForChild("Heartbeat")
- frame = 1 / 30
- tf = 0
- allowframeloss = true
- tossremainder = false
- lastframe = tick()
- script.Heartbeat:Fire()
- game:GetService("RunService").Heartbeat:connect(function(s, p)
- tf = tf + s
- if tf >= frame then
- if allowframeloss then
- script.Heartbeat:Fire()
- lastframe = tick()
- else
- for i = 1, math.floor(tf / frame) do
- script.Heartbeat:Fire()
- end
- lastframe = tick()
- end
- if tossremainder then
- tf = 0
- else
- tf = tf - frame * math.floor(tf / frame)
- end
- end
- end)
- function swait(num)
- if num == 0 or num == nil then
- ArtificialHB.Event:wait()
- else
- for i = 0, num do
- ArtificialHB.Event:wait()
- end
- end
- end
- if Character:findFirstChild("Ghostwalker",true) ~= nil then
- Character:findFirstChild("Ghostwalker",true).Parent = nil
- end
- if Character:findFirstChild("Ghost Claws",true) ~= nil then
- Character:findFirstChild("Ghost Claws",true).Parent = nil
- end
- if Player.PlayerGui:findFirstChild("WeaponGUI",true) ~= nil then
- Player.PlayerGui:findFirstChild("WeaponGUI",true).Parent = nil
- end
- if Character:findFirstChild("Alignment",true) ~= nil then
- Character:findFirstChild("Alignment",true).Parent = nil
- end
- if Character:findFirstChild("Stats",true) ~= nil then
- Character:findFirstChild("Stats",true).Parent = nil
- end
- local Stats=Instance.new("BoolValue")
- Stats.Name="Stats"
- Stats.Parent=Character
- local Atk=Instance.new("NumberValue")
- Atk.Name="Damage"
- Atk.Parent=Stats
- Atk.Value=1
- local Def=Instance.new("NumberValue")
- Def.Name="Defense"
- Def.Parent=Stats
- Def.Value=1
- local Mvmt=Instance.new("NumberValue")
- Mvmt.Name="Movement"
- Mvmt.Parent=Stats
- Mvmt.Value=1
- local Block=Instance.new("BoolValue")
- Block.Name="Block"
- Block.Parent=Stats
- Block.Value=false
- local Stun=Instance.new("NumberValue")
- Stun.Name="Stun"
- Stun.Parent=Stats
- Stun.Value=0
- local StunT=Instance.new("NumberValue")
- StunT.Name="StunThreshold"
- StunT.Parent=Stats
- StunT.Value=100
- local Rooted=Instance.new("BoolValue")
- Rooted.Name="Rooted"
- Rooted.Parent=Stats
- Rooted.Value=false
- local Decrease=Instance.new("BoolValue")
- Decrease.Name="Decrease"
- Decrease.Parent=Stats
- Decrease.Value=false
- local Stunned=Instance.new("BoolValue")
- Stunned.Name="Stunned"
- Stunned.Parent=Stats
- Stunned.Value=false
- local Stagger=Instance.new("BoolValue")
- Stagger.Name="Stagger"
- Stagger.Parent=Stats
- Stagger.Value=false
- local StaggerHit=Instance.new("BoolValue")
- StaggerHit.Name="StaggerHit"
- StaggerHit.Parent=Stats
- StaggerHit.Value=false
- local RecentEnemy=Instance.new("ObjectValue")
- RecentEnemy.Name="RecentEnemy"
- RecentEnemy.Parent=Stats
- RecentEnemy.Value=nil
- local PhantomEnemy=Instance.new("ObjectValue")
- PhantomEnemy.Name="PhantomEnemy"
- PhantomEnemy.Parent=Stats
- PhantomEnemy.Value=nil
- local PhantomPos=nil
- TimeLocked=Instance.new("BoolValue")
- TimeLocked.Name="TimeLocked"
- TimeLocked.Parent=Stats
- TimeLocked.Value=false
- tlock = false
- TimeLocking=Instance.new("BoolValue")
- TimeLocking.Name="TimeLocking"
- TimeLocking.Parent=Stats
- TimeLocking.Value=false
- LockTime=Instance.new("NumberValue")
- LockTime.Name="Timer"
- LockTime.Parent=TimeLocked
- LockTime.Value=0
- Unstable=Instance.new("BoolValue")
- Unstable.Name="Unstable"
- Unstable.Parent=Stats
- Unstable.Value=false
- UnstableTime=Instance.new("NumberValue")
- UnstableTime.Name="Timer"
- UnstableTime.Parent=Unstable
- UnstableTime.Value=0
- Suppressed=Instance.new("BoolValue")
- Suppressed.Name="Suppressed"
- Suppressed.Parent=Stats
- Suppressed.Value=false
- NoTarget=Instance.new("BoolValue")
- NoTarget.Name="NoTarget"
- NoTarget.Value=true
- SuppressedTime=Instance.new("NumberValue")
- SuppressedTime.Name="Timer"
- SuppressedTime.Parent=Suppressed
- SuppressedTime.Value=0
- KnockbackResistance=Instance.new("NumberValue")
- KnockbackResistance.Name="KnockbackResistance"
- KnockbackResistance.Parent=Stats
- KnockbackResistance.Value=0
- decreasekbr=0
- UltVal=Instance.new("BoolValue")
- UltVal.Name="Ulting"
- UltVal.Parent=Stats
- UltVal.Value=false
- local mana=Instance.new("NumberValue")
- mana.Name="Mana"
- mana.Parent=Stats
- mana.Value=0
- local Alignment=Instance.new("Color3Value")
- Alignment.Name="Alignment"
- Alignment.Parent=Character
- Alignment.Value=Player.TeamColor.Color
- local passive1=Instance.new("NumberValue",nil)
- passive1.Name="DecreaseDef"
- passive1.Value=.5
- local passive2=Instance.new("NumberValue",nil)
- passive2.Name="DecreaseMvmt"
- passive2.Value=-.3
- local spdebounce=Instance.new("BoolValue")
- spdebounce.Name="DebounceHit"
- spdebounce.Value=true
- function NoOutline(Part)
- Part.TopSurface,Part.BottomSurface,Part.LeftSurface,Part.RightSurface,Part.FrontSurface,Part.BackSurface = 10,10,10,10,10,10
- end
- function part(formfactor,parent,reflectance,transparency,brickcolor,name,size)
- local fp=it("Part")
- fp.formFactor=formfactor
- fp.Reflectance=reflectance
- fp.Transparency=transparency
- fp.CanCollide=false
- fp.Locked=true
- fp.CustomPhysicalProperties=PhysicalProperties.new(0,0,0,0,0)
- fp.BrickColor=brickcolor
- fp.Name=name
- fp.Size=size
- fp.Position=Torso.Position
- NoOutline(fp)
- fp.Material="SmoothPlastic"
- if parent ~= workspace then
- fp.Parent=parent
- else
- fp.Parent=workspace.NoTarget
- end
- fp:BreakJoints()
- return fp
- end
- function mesh(Mesh,part,meshtype,meshid,offset,scale)
- local mesh=it(Mesh)
- mesh.Parent=part
- if Mesh=="SpecialMesh" then
- mesh.MeshType=meshtype
- if meshid~="nil" then
- mesh.MeshId="http://www.roblox.com/asset/?id="..meshid
- end
- end
- mesh.Offset=offset
- mesh.Scale=scale
- return mesh
- end
- function weld(parent,part0,part1,c0)
- local weld=it("Motor")
- weld.Parent=parent
- weld.Part0=part0
- weld.Part1=part1
- weld.C0=c0
- return weld
- end
- function gui(GuiType,parent,text,backtrans,backcol,pos,size,zindex)
- local gui=it(GuiType)
- gui.Parent=parent
- gui.Text=text
- gui.BackgroundTransparency=backtrans
- gui.BackgroundColor3=backcol
- gui.SizeConstraint="RelativeXY"
- gui.TextXAlignment="Center"
- gui.TextYAlignment="Center"
- gui.Position=pos
- gui.Size=size
- gui.Font="SourceSans"
- gui.FontSize="Size14"
- gui.TextWrapped=false
- gui.TextStrokeTransparency=0
- gui.TextColor=BrickColor.new("White")
- if zindex then
- gui.ZIndex=zindex
- end
- return gui
- end
- function imggui(GuiType,parent,backtrans,backcol,pos,size,img,imgcol,imgtrans,zindex)
- local gui=it(GuiType)
- gui.Parent=parent
- gui.BackgroundTransparency=backtrans
- gui.BackgroundColor3=backcol
- gui.SizeConstraint="RelativeXY"
- gui.Position=pos
- gui.Size=size
- gui.Image=img
- gui.ImageColor3=imgcol
- gui.ImageTransparency=imgtrans
- gui.ZIndex=zindex
- return gui
- end
- local Color1=Torso.BrickColor
- function CreateImageBar(Type, Colour, Parent)
- local Img = game.ReplicatedStorage:FindFirstChild("BarImage"..Type):Clone()
- Img.ImageColor3 = Colour
- Img.Parent = Parent
- end
- local fengui=it("GuiMain")
- fengui.Parent=Player.PlayerGui
- fengui.Name="WeaponGUI"
- local fenframe=it("Frame")
- fenframe.Parent=fengui
- fenframe.BackgroundColor3=Color3.new(255,255,255)
- fenframe.BackgroundTransparency=1
- fenframe.BorderColor3=Color3.new(17,17,17)
- fenframe.Size=UDim2.new(0.1,0,0.1,0)
- fenframe.Position=UDim2.new(0.95,0,0.7,0)
- local fenframe2=it("Frame")
- fenframe2.Parent=fengui
- fenframe2.BackgroundColor3=Color3.new(255,255,255)
- fenframe2.BackgroundTransparency=1
- fenframe2.BorderColor3=Color3.new(17,17,17)
- fenframe2.Size=UDim2.new(0.2,0,0.1,0)
- fenframe2.Position=UDim2.new(0.4,0,0.85,0)
- local fenframe3=it("Frame")
- fenframe3.Parent=fengui
- fenframe3.BackgroundColor3=Color3.new(255,255,255)
- fenframe3.BackgroundTransparency=1
- fenframe3.BorderColor3=Color3.new(17,17,17)
- fenframe3.Size=UDim2.new(0.2,0,0.2,0)
- fenframe3.Position=UDim2.new(0.8,0,0.8,0)
- fenframe3.Name="MoveFrame"
- local fenframe4=it("Frame")
- fenframe4.Parent=fengui
- fenframe4.BackgroundColor3=Color3.new(255,255,255)
- fenframe4.BackgroundTransparency=1
- fenframe4.BorderColor3=Color3.new(17,17,17)
- fenframe4.Size=UDim2.new(0.1,0,0.1,0)
- fenframe4.Position=UDim2.new(0,0,0.7,0)
- local pressedf=false
- local fenframe5=it("Frame")
- fenframe5.Parent=fengui
- fenframe5.BackgroundColor3=Color3.new(0,0,0)
- fenframe5.BackgroundTransparency=1
- fenframe5.BorderColor3=Color3.new(0,0,0)
- fenframe5.Size=UDim2.new(1,0,1,0)
- fenframe5.Position=UDim2.new(0,0,0,0)
- fenframe5.ZIndex=2
- local tellbar=gui("TextLabel",fenframe5,"Press 'F' to equip your weapon.",1,Color3.new(0,0,0),UDim2.new(.25,0,.25,0),UDim2.new(.5,0,.5,0))
- tellbar.Font="Arial"
- tellbar.TextScaled=true
- tellbar.TextTransparency=1
- tellbar.TextStrokeTransparency=1
- tellbar.ZIndex=2
- local fnumb=0
- --gui(GuiType,parent,text,backtrans,backcol,pos,size)
- local fenbarmana1=gui("TextLabel",fenframe,"",0,Color3.new(0,0,0),UDim2.new(0,0,0,0),UDim2.new(.4,0,-4,0))
- --CreateImageBar("2", Color3.new(0,0,0), fenbarmana1)
- local fenbarmana2=gui("TextLabel",fenframe,"",0,BrickColor.new(NewCol).Color,UDim2.new(0,0,0,0),UDim2.new(.4,0,0,0))
- --CreateImageBar("1", BrickColor.new(NewCol).Color, fenbarmana2)
- local fenbarmana4=gui("TextLabel",fenframe,"Mana("..mana.Value..")",1,Color3.new(0,0,0),UDim2.new(0,0,.2,0),UDim2.new(.4,0,.2,0))
- --[[local fenbarblock1=gui("TextLabel",fenframe,"",0,Color3.new(0,0,0),UDim2.new(-.6,0,0,0),UDim2.new(.4,0,-4,0))
- local fenbarblock2=gui("TextLabel",fenframe,"",0,BrickColor.new("Medium stone grey").Color,UDim2.new(-.6,0,0,0),UDim2.new(.4,0,-2,0))
- local fenbarblock3=gui("TextLabel",fenframe,"Armor("..armor..")",1,Color3.new(0,0,0),UDim2.new(-.6,0,.2,0),UDim2.new(.4,0,.2,0))]]
- local fenbardamage=gui("TextLabel",fenframe2,"Damage",1,Color3.new(155/255,0,0),UDim2.new(-.23,0,0,0),UDim2.new(.2,0,1,0),2)
- local fenbardef=gui("TextLabel",fenframe2,"Defense",1,Color3.new(0,0,155/255),UDim2.new(-.46,0,0,0),UDim2.new(.2,0,1,0),2)
- local fenbarmove=gui("TextLabel",fenframe2,"Walkspeed",1,Color3.new(0,155/255,0),UDim2.new(1.03,0,0,0),UDim2.new(.2,0,1,0),2)
- local fenimgdmg=imggui("ImageLabel",fenframe2,1,Color3.new(),UDim2.new(-.23,0,.1,0),UDim2.new(.2,0,.8,0),"rbxassetid://628793110",Color3.new(170/255,0,0),.35,1)
- local fenimgdef=imggui("ImageLabel",fenframe2,1,Color3.new(),UDim2.new(-.46,0,.1,0),UDim2.new(.2,0,.8,0),"rbxassetid://628793046",Color3.new(0,0,170/255),.35,1)
- local fenimgmove=imggui("ImageLabel",fenframe2,1,Color3.new(),UDim2.new(1.03,0,.1,0),UDim2.new(.2,0,.8,0),"rbxassetid://628793172",Color3.new(0,170/255,0),.35,1)
- local fenbarhp1=gui("TextLabel",fenframe2,"",0,Color3.new(0,0,0),UDim2.new(-.46,0,1,0),UDim2.new(1.92,0,.4,0))
- --CreateImageBar("2", Color3.new(0,0,0), fenbarhp1)
- local fenbarhp2=gui("TextLabel",fenbarhp1,"",0,Color3.new(1,0,0),UDim2.new(0,0,0,0),UDim2.new(0,0,1,0))
- --CreateImageBar("1", Color3.new(1,0,0), fenbarhp2)
- local fenbarhp3=gui("TextLabel",fenbarhp1,"(100)",1,Color3.new(0,0,0),UDim2.new(0,0,0,0),UDim2.new(1,0,1,0))
- local fenbarstun1=gui("TextLabel",fenframe4,"",0,Color3.new(0,0,0),UDim2.new(.2,0,0,0),UDim2.new(.4,0,-4,0))
- --CreateImageBar("2", Color3.new(0,0,0), fenbarstun1)
- local fenbarstun2=gui("TextLabel",fenframe4,"",0,Color3.new(0.960784,0.803922,0.188235),UDim2.new(.2,0,0,0),UDim2.new(.4,0,0,0))
- --CreateImageBar("1", Color3.new(0.960784,0.803922,0.188235), fenbarstun2)
- local fenbarstun3=gui("TextLabel",fenframe4,"Stun("..Stun.Value..")",1,Color3.new(0.960784,0.803922,0.188235),UDim2.new(.2,0,.2,0),UDim2.new(.4,0,.2,0))
- local fenbarmove1=gui("TextButton",fenframe3,move1,.55,Color3.new(.5,.5,.5),UDim2.new(0.1,0,0.1,0),UDim2.new(.4,0,.4,0))
- fenbarmove1.ZIndex=2
- local fenbarmove1b=gui("TextLabel",fenbarmove1,"",.55,BrickColor.new(NewCol2).Color,UDim2.new(0,0,0,0),UDim2.new(0,0,1,0))
- local fenbarmove2=gui("TextButton",fenframe3,move2,.55,Color3.new(.5,.5,.5),UDim2.new(0.6,0,0.1,0),UDim2.new(.4,0,.4,0))
- fenbarmove2.ZIndex=2
- local fenbarmove2b=gui("TextLabel",fenbarmove2,"",.55,BrickColor.new(NewCol2).Color,UDim2.new(0,0,0,0),UDim2.new(0,0,1,0))
- local fenbarmove3=gui("TextButton",fenframe3,move3,.55,Color3.new(.5,.5,.5),UDim2.new(0.1,0,0.6,0),UDim2.new(.4,0,.4,0))
- fenbarmove3.ZIndex=2
- local fenbarmove3b=gui("TextLabel",fenbarmove3,"",.55,BrickColor.new(NewCol2).Color,UDim2.new(0,0,0,0),UDim2.new(0,0,1,0))
- local fenbarmove4=gui("TextButton",fenframe3,move4,.55,Color3.new(.5,.5,.5),UDim2.new(0.6,0,0.6,0),UDim2.new(.4,0,.4,0))
- fenbarmove4.ZIndex=2
- local fenbarmove4b=gui("TextLabel",fenbarmove4,"",.55,BrickColor.new(NewCol2).Color,UDim2.new(0,0,0,0),UDim2.new(0,0,1,0))
- local fenbarorb1=gui("TextButton",fenframe2,"Orbs",1,BrickColor.new(NewCol2).Color,UDim2.new(1.26,0,0,0),UDim2.new(.2,0,1,0),2)
- local fenimgorb1=imggui("ImageLabel",fenframe2,1,Color3.new(),UDim2.new(1.26,0,.1,0),UDim2.new(.2,0,.8,0),"rbxassetid://633090865",BrickColor.new(NewCol2).Color,.35,1)
- Character.Archivable=true
- local spectral=Character:Clone()
- spectral.Name=""
- for _,c in pairs(spectral:children()) do
- if c.className=="Model" or c.className=="Script" or c.className=="BodyColors" or c:IsA("Accoutrement") or c.Name=="Stats" then
- c.Parent=nil
- end
- if c.className=="Part" then
- NoOutline(c)
- c.CanCollide=false
- c.Transparency=.8
- if c.Name=="HumanoidRootPart" then c.Transparency=1 end
- c.BrickColor=BrickColor.new(NewCol)
- for _,d in pairs(c:children()) do
- if d.className=="Weld" or d.className=="Motor" or d.className=="Motor6D" or d.className=="Decal" then
- d.Parent=nil
- end
- end
- end
- if c.className=="Humanoid" then
- c.Parent=nil
- end
- end
- spectral.Parent=Character
- if spectral:findFirstChild("HumanoidRootPart")~=nil then
- spectral.HumanoidRootPart.Anchored=true
- end
- sHead=spectral.Head
- sTorso=spectral.Torso
- sRootPart=spectral.HumanoidRootPart
- sLeftArm=spectral["Left Arm"]
- sRightArm=spectral["Right Arm"]
- sLeftLeg=spectral["Left Leg"]
- sRightLeg=spectral["Right Leg"]
- sRW,sLW,sRH,sLH,sRootJoint,sNeck=it("Motor",sTorso),it("Motor",sTorso),it("Motor",sTorso),it("Motor",sTorso),it("Motor",sTorso),it("Motor",sTorso)
- sRootJoint.Part0=sRootPart sRootJoint.Part1=sTorso
- sRootJoint.C1=cf(0, 0, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
- sNeck.Part0=sTorso sNeck.Part1=sHead
- sNeck.C1=necko2
- sRW.Part0=sTorso sRW.Part1=sRightArm
- sRW.C1=cf(0,0.5,0)*euler(0,0,0)
- sLW.Part0=sTorso sLW.Part1=sLeftArm
- sLW.C1=cf(0,0.5,0)*euler(0,0,0)
- sRH.Part0=sTorso sRH.Part1=sRightLeg
- sLH.Part0=sTorso sLH.Part1=sLeftLeg
- --[[sHumanoid=it("Humanoid",spectral)
- sHumanoid.Name="Nah"
- sHumanoid.MaxHealth=0]]
- Character.Archivable=false
- local modelzorz=Instance.new("Model")
- modelzorz.Parent=Character
- modelzorz.Name="Ghostwalker"
- local modelzorz2=Instance.new("Model")
- modelzorz2.Parent=Character
- modelzorz2.Name="Ghost Claws"
- local handle=part(3,modelzorz,0,0,TorsoColor,"Handle",vt(0.2,0.2,0.2))
- local prt1=part(3,modelzorz,0,0,TorsoColor,"Part01",vt(0.2,0.2,0.2)) prt1.Material="Fabric"
- local prt3=part(3,modelzorz,.4,0,BrickColor.new(NewCol2),"Part03",vt(0.2,0.2,0.2))
- local prt4=part(3,modelzorz,.4,0,BrickColor.new(NewCol2),"Part04",vt(0.2,0.2,0.2))
- local prt9=part(3,modelzorz,.5,0,BrickColor.new(NewCol2),"Part09",vt(0.2,0.2,0.2))
- local prt12=part(3,modelzorz,.2,0,BrickColor.new(NewCol2),"Part12",vt(0.2,0.2,0.2))
- local prt13=part(3,modelzorz,.3,0,BrickColor.new(NewCol3),"Part13",vt(0.2,0.2,0.2))
- local prt16=part(3,modelzorz,.2,0,BrickColor.new(NewCol2),"Part16",vt(0.2,0.2,0.2))
- local prt17=part(3,modelzorz,.2,0,BrickColor.new(NewCol2),"Part17",vt(0.2,0.2,0.2))
- local prt18=part(3,modelzorz,.2,0,BrickColor.new(NewCol2),"Part18",vt(0.2,0.2,0.2))
- local prt19=part(3,modelzorz,.2,0,BrickColor.new(NewCol2),"Part19",vt(0.2,0.2,0.2))
- local prt20=part(3,modelzorz,.2,0,BrickColor.new(NewCol2),"Part20",vt(0.2,0.2,0.2))
- local prt21=part(3,modelzorz,.2,0,BrickColor.new(NewCol2),"Part21",vt(0.2,0.2,0.2))
- local prt22=part(3,modelzorz,.2,0,BrickColor.new(NewCol2),"Part22",vt(0.2,0.2,0.2))
- local prt23=part(3,modelzorz,.2,0,BrickColor.new(NewCol2),"Part23",vt(0.2,0.2,0.2))
- local prt24=part(3,modelzorz,.2,.4,BrickColor.new(NewCol),"Part24",vt(0.2,0.2,0.2)) prt24.Material="Neon"
- local prt25=part(3,modelzorz,.2,.4,BrickColor.new(NewCol),"Part25",vt(0.2,0.2,0.2)) prt25.Material="Neon"
- local prt26=part(3,modelzorz,.2,.4,BrickColor.new(NewCol),"Part26",vt(0.2,0.2,0.2)) prt26.Material="Neon"
- hmsh=mesh("BlockMesh",handle,"","",vt(0,0,0),vt(1,1,1))
- msh1=mesh("CylinderMesh",prt1,"","",vt(0,0,0),vt(1.8,8,1.8))
- msh3=mesh("SpecialMesh",prt3,"FileMesh","9756362",vt(0,0,0),vt(.5,.6,.5))
- msh4=mesh("BlockMesh",prt4,"","",vt(0,0,0),vt(4.8,1.033,1.83))
- msh9=mesh("BlockMesh",prt9,"","",vt(0,0,0),vt(1.82,2.5,1.33))
- msh12=mesh("BlockMesh",prt12,"","",vt(0,0,0),vt(4.355,15.85,.5))
- msh13=mesh("BlockMesh",prt13,"","",vt(0,0,0),vt(.2,15.075,.52))
- msh16=mesh("BlockMesh",prt16,"","",vt(0,0,0),vt(2.285,1,.5))
- msh17=mesh("BlockMesh",prt17,"","",vt(0,0,0),vt(1,1,.5))
- msh18=mesh("BlockMesh",prt18,"","",vt(0,0,0),vt(1.4,1,.5))
- msh19=mesh("BlockMesh",prt19,"","",vt(0,0,0),vt(1,4.99,.5))
- msh20=mesh("BlockMesh",prt20,"","",vt(0,0,0),vt(1,2.98,.5))
- msh21=mesh("BlockMesh",prt21,"","",vt(0,0,0),vt(1,4.915,.5))
- msh22=mesh("SpecialMesh",prt22,"Wedge","nil",vt(0,0,0),vt(.5,1.89,1.61))
- msh23=mesh("SpecialMesh",prt23,"Wedge","nil",vt(0,0,0),vt(.5,1.835,1))
- msh24=mesh("BlockMesh",prt24,"","",vt(0,0,0),vt(4.335,9.77,.49))
- msh25=mesh("SpecialMesh",prt25,"Wedge","nil",vt(0,0,0),vt(.49,4.335,2.16))
- msh26=mesh("SpecialMesh",prt26,"Wedge","nil",vt(0,0,0),vt(.49,4.335,2.16))
- local hwld=weld(handle,handle,Torso,euler(0,0,-2.5)*cf(-1.4,-2.3,-.5))
- local wld1=weld(prt1,prt1,handle,euler(0,0,0)*cf(0,0,0))
- local wld3=weld(prt1,prt3,prt1,euler(0,0,0)*cf(0,.9,0))
- local wld4=weld(prt1,prt4,prt1,euler(0,0,0)*cf(0,-.9,0))
- local wld9=weld(prt1,prt9,prt4,euler(0,0,0)*cf(0,-.345,0))
- local wld12=weld(prt1,prt12,prt4,euler(0,0,0)*cf(0,-1.659,0))
- local wld13=weld(prt1,prt13,prt4,euler(0,0,0)*cf(0,-1.931,0))
- local wld16=weld(prt1,prt16,prt4,euler(0,0,0)*cf(.205,-3.189,0))
- local wld17=weld(prt1,prt17,prt4,euler(0,0,0)*cf(.333,-3.338,0))
- local wld18=weld(prt1,prt18,prt4,euler(0,0,.515)*cf(.1649,-3.284,0))
- local wld19=weld(prt1,prt19,prt4,euler(0,0,0)*cf(-.338,-3.627,0))
- local wld20=weld(prt1,prt20,prt4,euler(0,0,0)*cf(-.203,-3.268,0))
- local wld21=weld(prt1,prt21,prt4,euler(0,0,.4347)*cf(-.135,-3.519,0))
- local wld22=weld(prt1,prt22,prt4,euler(1.105,-1.57,0)*cf(.016,-3.746,0))
- local wld23=weld(prt1,prt23,prt4,euler(0,1.57,0)*cf(-.337,-4.307,0))
- local wld24=weld(prt1,prt24,prt4,euler(0,0,0)*cf(0,-4.136,0))
- local wld25=weld(prt1,prt25,prt4,euler(0,1.57,0)*cf(-.216,-5.546,0))
- local wld26=weld(prt1,prt26,prt4,euler(0,-1.57,0)*cf(.216,-5.546,0))
- for i=.6,-.65,-.3 do
- local prt2=part(3,modelzorz,0,0,BrickColor.new("Black"),"Part02",vt(0.2,0.2,0.2)) prt2.Material="Fabric"
- msh2=mesh("CylinderMesh",prt2,"","",vt(0,0,0),vt(2,.5,2))
- local wld2=weld(prt1,prt2,prt1,euler(math.random(-10,10)/100,0,math.random(-10,10)/100)*cf(0,i,0))
- end
- local dd=1
- for i=1,2 do
- if i==2 then
- dd=-1
- end
- local prt5=part(3,modelzorz,.4,0,BrickColor.new(NewCol2),"Part05",vt(0.2,0.2,0.2))
- msh5=mesh("BlockMesh",prt5,"","",vt(0,0,0),vt(2.45,1,1.84))
- local wld5=weld(prt1,prt5,prt4,euler(0,0,.765*dd)*cf(-.6*dd,.142,0))
- local prt6=part(3,modelzorz,.4,0,BrickColor.new(NewCol2),"Part06",vt(0.2,0.2,0.2))
- msh6=mesh("BlockMesh",prt6,"","",vt(0,0,0),vt(1.01,1.01,1.82))
- local wld6=weld(prt1,prt6,prt4,euler(0,0,.134*dd)*cf(-.81*dd,.298,0))
- local prt7=part(3,modelzorz,.4,0,BrickColor.new(NewCol2),"Part07",vt(0.2,0.2,0.2))
- msh7=mesh("BlockMesh",prt7,"","",vt(0,0,0),vt(1,1,1.85))
- local wld7=weld(prt1,prt7,prt4,euler(0,0,-.56*dd)*cf(-.923*dd,.273,0))
- local prt8=part(3,modelzorz,.4,0,BrickColor.new(NewCol2),"Part08",vt(0.2,0.2,0.2))
- msh8=mesh("SpecialMesh",prt8,"Wedge","nil",vt(0,0,0),vt(1.85,1,1))
- if i==1 then
- local wld8=weld(prt1,prt8,prt4,euler(-1.01,-1.57,1.57)*cf(-1.092,.167,0))
- else
- local wld8=weld(prt1,prt8,prt4,euler(-1.01,-1.57,1.57)*euler(3.14,0,3.14)*cf(1.092,.167,0))
- end
- end
- for i=1,2 do
- dul=1
- if i==2 then
- dul=-1
- end
- local prt10=part(3,modelzorz,.5,0,BrickColor.new(NewCol2),"Part10",vt(0.2,0.2,0.2))
- msh10=mesh("SpecialMesh",prt10,"Wedge","nil",vt(0,0,0),vt(1.33,2.5,1))
- local wld10=weld(prt1,prt10,prt4,euler(0,1.57*dul,0)*cf(-.284*dul,-.345,0))
- local prt11=part(3,modelzorz,.5,0,BrickColor.new(NewCol3),"Part11",vt(0.2,0.2,0.2))
- msh11=mesh("SpecialMesh",prt11,"Wedge","nil",vt(0,0,0),vt(1.345,1.265,1))
- local wld11=weld(prt1,prt11,prt4,euler(.507,1.57*dul,0)*cf(-.176*dul,-.303,0))
- local prt14=part(3,modelzorz,.2,0,BrickColor.new(NewCol3),"Part14",vt(0.2,0.2,0.2))
- msh14=mesh("SpecialMesh",prt14,"Wedge","nil",vt(0,0,0),vt(.51,4.63,1))
- local wld14=weld(prt1,prt14,prt4,euler(0,1.57*dul,0)*cf(-.19*dul,-1.01,0))
- local prt15=part(3,modelzorz,.2,0,BrickColor.new(NewCol3),"Part15",vt(0.2,0.2,0.2))
- msh15=mesh("SpecialMesh",prt15,"Wedge","nil",vt(0,0,0),vt(.51,9.26,1.25))
- local wld15=weld(prt1,prt15,prt4,euler(0,1.57*dul,0)*cf(-.305*dul,-1.0007,0))
- for d=1,2 do
- tehprt=LeftArm
- bab=1
- if d==2 then
- tehprt=RightArm
- bab=-1
- end
- local prt27=part(3,modelzorz2,0,.2,BrickColor.new(NewCol),"Part27",vt(0.2,0.2,0.2)) prt27.Material="Neon"
- msh27=mesh("BlockMesh",prt27,"","",vt(0,0,0),vt(1.24,3.03,1))
- local wld27=weld(prt1,prt27,tehprt,euler(0,0,.063*bab)*cf(.436*bab,.785,.278*dul))
- local prt28=part(3,modelzorz2,0,.2,BrickColor.new(NewCol),"Part28",vt(0.2,0.2,0.2)) prt28.Material="Neon"
- msh28=mesh("BlockMesh",prt28,"","",vt(0,0,0),vt(1.24,2.795,1))
- local wld28=weld(prt1,prt28,tehprt,euler(0,0,.319*bab)*cf(.533*bab,1.311,.278*dul))
- local prt29=part(3,modelzorz2,0,.2,BrickColor.new(NewCol),"Part29",vt()) prt29.Material="Neon"
- msh29=mesh("BlockMesh",prt29,"","",vt(0,0,0),vt(1.24,3.275,1))
- local wld29=weld(prt1,prt29,tehprt,euler(0,0,.0621*bab)*cf(.636*bab,1.876,.278*dul))
- local prt30=part(3,modelzorz2,0,.2,BrickColor.new(NewCol),"Part30",vt()) prt30.Material="Neon"
- msh30=mesh("SpecialMesh",prt30,"Wedge","nil",vt(0,0,0),vt(1.25,2.12,1))
- local wld30=weld(prt1,prt30,tehprt,euler(3.14,1.57*bab,.0621*bab)*cf(.669*bab,2.413,.278*dul))
- end
- end
- for _,c in pairs(modelzorz:children()) do
- table.insert(Weapon,c)
- end
- for _,c in pairs(prt1:children()) do
- if c.className=="Motor" then
- table.insert(Welds,c)
- end
- end
- local hitbox=part(3,modelzorz,0,1,BrickColor.new("Black"),"Hitbox",vt(0.2,0.2,0.2))
- hitbox.Anchored=false
- --local hbwld=weld(hitbox,hitbox,RootPart,euler(0,0,0)*cf(0,0,0))
- local hitboxCF=cf(0,0,0)
- hboxpos=Instance.new("BodyPosition",nil)
- hboxpos.P=2000
- hboxpos.D=100
- hboxpos.maxForce=Vector3.new(545000,545000,545000)
- --[[function hitboxweld()
- hbwld.Parent=modelzorz
- hbwld.Part0=hitbox
- hbwld.Part1=RightArm
- end]]
- if (script.Parent.className~="HopperBin") then
- Tool=Instance.new("HopperBin")
- Tool.Parent=Backpack
- Tool.Name="Ghostwalker"
- script.Parent=Tool
- end
- Bin=script.Parent
- if Bin.Name=="Spectre" then
- Bin.Name="Ghostwalker"
- end
- local bodvel=Instance.new("BodyVelocity")
- local bg=Instance.new("BodyGyro")
- so = function(id,par,vol,pit)
- local sou = Instance.new("Sound",par or workspace)
- sou.Volume=vol
- sou.Pitch=pit or 1
- sou.SoundId="http://www.roblox.com/asset/?id="..id
- coroutine.resume(coroutine.create(function(Sound)
- swait()
- Sound:play()
- end),sou)
- game:GetService("Debris"):AddItem(sou,6)
- end
- function clerp(a,b,t)
- local qa = {QuaternionFromCFrame(a)}
- local qb = {QuaternionFromCFrame(b)}
- local ax, ay, az = a.x, a.y, a.z
- local bx, by, bz = b.x, b.y, b.z
- local _t = 1-t
- return QuaternionToCFrame(_t*ax + t*bx, _t*ay + t*by, _t*az + t*bz,QuaternionSlerp(qa, qb, t))
- end
- function QuaternionFromCFrame(cf)
- local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
- local trace = m00 + m11 + m22
- if trace > 0 then
- local s = math.sqrt(1 + trace)
- local recip = 0.5/s
- return (m21-m12)*recip, (m02-m20)*recip, (m10-m01)*recip, s*0.5
- else
- local i = 0
- if m11 > m00 then
- i = 1
- end
- if m22 > (i == 0 and m00 or m11) then
- i = 2
- end
- if i == 0 then
- local s = math.sqrt(m00-m11-m22+1)
- local recip = 0.5/s
- return 0.5*s, (m10+m01)*recip, (m20+m02)*recip, (m21-m12)*recip
- elseif i == 1 then
- local s = math.sqrt(m11-m22-m00+1)
- local recip = 0.5/s
- return (m01+m10)*recip, 0.5*s, (m21+m12)*recip, (m02-m20)*recip
- elseif i == 2 then
- local s = math.sqrt(m22-m00-m11+1)
- local recip = 0.5/s return (m02+m20)*recip, (m12+m21)*recip, 0.5*s, (m10-m01)*recip
- end
- end
- end
- function QuaternionToCFrame(px, py, pz, x, y, z, w)
- local xs, ys, zs = x + x, y + y, z + z
- local wx, wy, wz = w*xs, w*ys, w*zs
- local xx = x*xs
- local xy = x*ys
- local xz = x*zs
- local yy = y*ys
- local yz = y*zs
- local zz = z*zs
- return CFrame.new(px, py, pz,1-(yy+zz), xy - wz, xz + wy,xy + wz, 1-(xx+zz), yz - wx, xz - wy, yz + wx, 1-(xx+yy))
- end
- function QuaternionSlerp(a, b, t)
- local cosTheta = a[1]*b[1] + a[2]*b[2] + a[3]*b[3] + a[4]*b[4]
- local startInterp, finishInterp;
- if cosTheta >= 0.0001 then
- if (1 - cosTheta) > 0.0001 then
- local theta = math.acos(cosTheta)
- local invSinTheta = 1/math.sin(theta)
- startInterp = math.sin((1-t)*theta)*invSinTheta
- finishInterp = math.sin(t*theta)*invSinTheta
- else
- startInterp = 1-t
- finishInterp = t
- end
- else
- if (1+cosTheta) > 0.0001 then
- local theta = math.acos(-cosTheta)
- local invSinTheta = 1/math.sin(theta)
- startInterp = math.sin((t-1)*theta)*invSinTheta
- finishInterp = math.sin(t*theta)*invSinTheta
- else
- startInterp = t-1
- finishInterp = t
- end
- end
- return a[1]*startInterp + b[1]*finishInterp, a[2]*startInterp + b[2]*finishInterp, a[3]*startInterp + b[3]*finishInterp, a[4]*startInterp + b[4]*finishInterp
- end
- function hideanim()
- equipped=false
- bladetype="None"
- for i=0,1,0.1 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- if i<=.2 then
- hwld.C0=clerp(hwld.C0,euler(.3,0,-.8)*cf(0,1.3,0),.3)
- wld1.C0=clerp(wld1.C0,euler(0,3.14,0)*cf(0,0,0),.3)
- RW.C0=clerp(RW.C0,cf(1.5,1,-.1)*euler(2.7,0,.6)*euler(0,0,0),.3)
- else
- hwld.C0=clerp(hwld.C0,euler(.3,0,-.8)*cf(0,1.3,0),.3)
- wld1.C0=clerp(wld1.C0,euler(0,3.14,0)*cf(0,0,0),.3)
- RW.C0=clerp(RW.C0,cf(1.5,0.6,0)*euler(-2.7,0,-.2),.2)
- end
- Neck.C0=clerp(Neck.C0,necko*euler(.1,0,0)*euler(0,0,-.5),.3)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*euler(0,0,0),.3)
- RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.4)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(.2,0,-.6),.3)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.4)
- RH.C0=clerp(RH.C0,cf(1,-1,0)*euler(0,1.57,0)*euler(0,0,0),.3)
- LH.C0=clerp(LH.C0,cf(-1,-1,0)*euler(0,-1.57,0)*euler(0,0,0),.3)
- end
- hwld.Part1=Torso
- hwld.C0=euler(0,0,-2.5)*cf(-1.4,-2.3,-.5)
- wld1.C0=euler(0,0,0)*cf(0,0,0)
- mdec2.Parent=nil
- mdec.Parent=Decrease
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(1.5,0,0),.2)
- for i=0,1,0.1 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,0)*euler(0,0,0),.3)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*euler(0,0,0),.3)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(0,0,0),.3)
- RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.4)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(0,0,0),.3)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.4)
- RH.C0=clerp(RH.C0,cf(1,-1,0)*euler(0,1.57,0)*euler(0,0,0),.3)
- LH.C0=clerp(LH.C0,cf(-1,-1,0)*euler(0,-1.57,0)*euler(0,0,0),.3)
- end
- spectral.Parent=nil
- end
- mdec.Parent=Decrease
- function equipanim()
- equipped=true
- spectral.Parent=Character
- mdec.Parent=nil
- mdec2.Parent=Decrease
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(1.5,0,-.2),.4)
- for i=0,1,0.2 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- Neck.C0=clerp(Neck.C0,necko*euler(-.2,0,0)*euler(0,0,-.4),.4)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.2)*euler(0,0,-.4),.4)
- RW.C0=clerp(RW.C0,cf(1.5,0.6,0)*euler(-2.7,0,-.2),.4)
- RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.4)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(.5,0,-.2),.4)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.4)
- RH.C0=clerp(RH.C0,cf(1.1,-.9,0)*euler(0,1.57,0)*euler(-.2,.1,0),.4)
- LH.C0=clerp(LH.C0,cf(-1,-.9,0)*euler(0,-1.57,0)*euler(0,.4,.2),.4)
- end
- hwld.Part1=RightArm
- hwld.C0=euler(.3,0,-.8)*cf(0,1.3,0)
- wld1.C0=euler(0,3.14,0)*cf(0,0,0)
- for i=0,1,0.05 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- Neck.C0=clerp(Neck.C0,necko*euler(.1,0,0)*euler(0,0,.5),.4)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.2)*euler(0,0,-.6),.4)
- if i<=.2 then
- RH.C0=clerp(RH.C0,cf(1.1,-.9,0)*euler(0,1.57,0)*euler(-.2,0,0),.4)
- hwld.C0=clerp(hwld.C0,euler(.2,0,-.3)*cf(0,1.3,.2),.3)
- RW.C0=clerp(RW.C0,cf(1.5,1,-.1)*euler(2.7,0,.6)*euler(0,0,0),.4)
- else
- bladetype="Stable"
- RH.C0=clerp(RH.C0,cf(1.1,-.9,0)*euler(0,1.57,0)*euler(-.1,.3,0),.4)
- wld1.C0=clerp(wld1.C0,euler(0,-1.57,0)*cf(0,0,0),.3)
- hwld.C0=clerp(hwld.C0,euler(2.5,0,0)*cf(0,1,0),.3)
- RW.C0=clerp(RW.C0,cf(1.5,0.4,0)*euler(.2,0,.6)*euler(0,-1.1,0),.4)
- end
- RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.4)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(.2,0,-.6),.4)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.4)
- LH.C0=clerp(LH.C0,cf(-1,-.9,0)*euler(0,-1.57,0)*euler(0,.6,.2),.4)
- end
- bladetype="Mana"
- end
- tlock = false
- TimeLock=function()
- so(535381634,RootPart,.5,math.random(145,155)/100 - TimeLocked.Timer.Value*.15)
- local b,f,f2
- if RootPart:FindFirstChild("TimeLockGui") then
- b = RootPart.TimeLockGui
- f = b.ImageLabel
- f2 = b.ImageLabel2
- f2.ImageTransparency=0.25
- f2.Size=UDim2.new(1,0,1,0)
- f2.Position=UDim2.new(0,0,0,0)
- else
- b = Instance.new("BillboardGui")
- b.Name="TimeLockGui"
- b.Size=UDim2.new(4,0,4,0)
- b.SizeOffset=Vector2.new(0,1.2)
- b.Parent=RootPart
- f = Instance.new("ImageLabel")
- f.BackgroundTransparency=1
- f.Size=UDim2.new(1,0,1,0)
- f.ImageColor3=Color3.new(0,1,1)
- f.Image="rbxassetid://535799774"
- f.Parent=b
- f.ImageTransparency=1
- f2 = Instance.new("ImageLabel")
- f2.Name="ImageLabel2"
- f2.BackgroundTransparency=1
- f2.Size=UDim2.new(1,0,1,0)
- f2.ImageColor3=Color3.new(0,1,1)
- f2.Image="rbxassetid://535799774"
- f2.Parent=b
- f2.ImageTransparency=.25
- end
- local partif2z=it("ParticleEmitter")
- partif2z.Color=cs(Color3.new(0,1,1),Color3.new(0.4,1,1))
- partif2z.LightEmission=.5
- partif2z.Texture="rbxasset://textures/particles/sparkles_main.dds"
- sizeseq=ns({nsk(0,8),nsk(1,10)})
- transseq=ns({nsk(0,.98),nsk(1,1)})
- partif2z.Transparency=transseq
- partif2z.Size=sizeseq
- partif2z.ZOffset=0
- partif2z.LockedToPart=true
- partif2z.EmissionDirection="Front"
- partif2z.Lifetime=nr(0.9,1.2)
- partif2z.Rate=30
- partif2z.Rotation=nr(-180,180)
- partif2z.RotSpeed=nr(-80,80)
- partif2z.Speed=nr(3,6)
- partif2z.VelocitySpread=330
- partif2z.Parent=RootPart
- partif2z.Enabled=true
- coroutine.resume(coroutine.create(function(p,c,d)
- swait()
- c:Emit(10)
- repeat
- d.Size=d.Size+UDim2.new(.1,0,.1,0)
- d.Position=d.Position-UDim2.new(0.05,0,.05,0)
- d.ImageTransparency=d.ImageTransparency + wait()*6
- p.ImageTransparency=p.ImageTransparency - wait()*7.5
- if p.ImageTransparency<0 then
- p.ImageTransparency=0
- end
- until p.ImageTransparency==0 or TimeLocked.Value==false
- end),f,partif2z,f2)
- repeat
- RootPart.Anchored = true
- swait()
- until TimeLocked.Value == false
- coroutine.resume(coroutine.create(function(p,c,d)
- d.Size=d.Size+UDim2.new(.1,0,.1,0)
- d.Position=d.Position-UDim2.new(0.05,0,.05,0)
- d.ImageTransparency=d.ImageTransparency + wait()*6
- game:GetService("Debris"):AddItem(c,5)
- c.Enabled=false
- repeat
- p.ImageTransparency=p.ImageTransparency + wait()*9
- if p.ImageTransparency>1 then
- p.ImageTransparency=1
- end
- until p.ImageTransparency==1 or TimeLocked.Value==true
- if TimeLocked.Value==false then
- p.Parent:Destroy()
- end
- end),f,partif2z,f2)
- RootPart.Anchored = false
- tlock = false
- end
- unst = false
- UnstableAnim=function()
- attack=true
- unst = true
- local rndc=1
- local rnda=math.random(-1,0)
- workspace.damguiFunc:Fire(Character,"Off balance!","Interrupt")
- removeControl()
- repeat
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false
- end
- --hwld.C0=clerp(wld1.C0,euler(2,.2,3.14)*cf(0,1,.2),.3)
- Neck.C0=clerp(Neck.C0,necko*euler(.3*rndc,0,0),.3)
- RootJoint.C0=clerp(RootJoint.C0,cf(0,-.3 - math.cos(time()*14)*.04,0.4 - math.cos(time()*14)*.02)*euler(math.rad(90+(25*rndc)),math.rad(180),math.rad(0)),.2)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(1.4 - math.cos(time()*14)*.5 - rndc*.2,math.cos(time()*14)*.2,math.sin(time()*14)*.2),.3)
- RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(1.4 + math.cos(time()*14)*.5 + rndc*.2,math.cos(time()*14)*.2,math.sin(time()*14)*.2),.3)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
- RH.C0=clerp(RH.C0,cf(1,-.8 + math.cos(time()*14)*.3,0 - math.sin(time()*14)*.3)*euler(0,1.57,0)*euler(0,-.1,-math.rad(9*rndc) - math.cos(time()*14)*1),.3)
- LH.C0=clerp(LH.C0,cf(-1,-.8 - math.cos(time()*14)*.3,0 + math.sin(time()*14)*.3)*euler(0,-1.57,0)*euler(0,.1,math.rad(9*rndc) - math.cos(time()*14)*1),.3)
- until Stun.Value>=StunT.Value or Stunned.Value==true or UnstableTime.Value <= 0 or Unstable.Value==false or Stagger.Value==true or Suppressed.Value==true
- unst = false
- attack=false
- resumeControl()
- end
- suppress=false
- SuppressedAnim=function()
- workspace.damguiFunc:Fire(Character,"Suppressed!","Interrupt")
- removeControl()
- repeat
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false
- end
- if Suppressed:FindFirstChild("AnimOverride") == nil then
- --wld1.C0=clerp(wld1.C0,euler(2.4,.2,3.14)*cf(0,1,.2),.3)
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,0),.3)
- RootJoint.C0=clerp(RootJoint.C0,cf(0,0,0)*euler(math.rad(90),math.rad(180),math.rad(0)),.2)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(0,0,0),.3)
- RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(0,0,0),.3)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
- RH.C0=clerp(RH.C0,cf(1,-1,0)*euler(0,1.57,0)*euler(0,0,0),.3)
- LH.C0=clerp(LH.C0,cf(-1,-1,0)*euler(0,-1.57,0)*euler(0,0,0),.3)
- else
- --wld1.C0=clerp(wld1.C0,euler(2.4,.2,3.14)*cf(0,1,.2),.3)
- Neck.C0=clerp(Neck.C0,Suppressed.AnimOverride.Neck.Value,.3)
- RootJoint.C0=clerp(RootJoint.C0,Suppressed.AnimOverride.RootJoint.Value,.2)
- RW.C0=clerp(RW.C0,Suppressed.AnimOverride.RightShoulderC0.Value,.3)
- RW.C1=clerp(LW.C1,Suppressed.AnimOverride.RightShoulderC1.Value,.3)
- LW.C0=clerp(LW.C0,Suppressed.AnimOverride.LeftShoulderC0.Value,.3)
- LW.C1=clerp(LW.C1,Suppressed.AnimOverride.LeftShoulderC1.Value,.3)
- RH.C0=clerp(RH.C0,Suppressed.AnimOverride.RightHip.Value,.3)
- LH.C0=clerp(LH.C0,Suppressed.AnimOverride.LeftHip.Value,.3)
- end
- until SuppressedTime.Value <= 0 or Suppressed.Value==false
- suppress = false
- resumeControl()
- end
- function StaggerAnim()
- attack=true
- removeControl()
- workspace.damguiFunc:Fire(Character,"Staggered!","Interrupt")
- for i=1,math.random(2,4) do
- ClangEffect(BrickColor.new("New Yeller"),cf(hitbox.Position)*euler(math.random(-50,50)/100,math.random(-50,50),math.random(-50,50)/100),0,.1,.2,math.random(150,300)/1000)
- end
- for i=0,1,0.35 do
- swait()
- if Rooted.Value==false then Torso.Velocity=RootPart.CFrame.lookVector*-40 end
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false
- end
- --wld1.C0=clerp(wld1.C0,euler(1.57,0,3.14)*cf(0,1,.2),.3)
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,.5)*euler(.1,0,0),.3)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(-.2,0,-.4),.3)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(-.2,0,.7)*euler(0,-.7,0),.3)
- RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(-.2,0,-.4)*euler(0,.4,0),.3)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
- RH.C0=clerp(RH.C0,cf(1,-.8,0)*euler(0,1.57,0)*euler(-.5,0,.6),.3)
- LH.C0=clerp(LH.C0,cf(-1,-1,0)*euler(0,-1.57,0)*euler(0,.2,.2),.3)
- if Stun.Value>=StunT.Value or Stunned.Value == true or Suppressed.Value==true then
- break
- end
- end
- for i=0,1,0.2 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false
- end
- if Rooted.Value==false then Torso.Velocity=RootPart.CFrame.lookVector*-40 end
- --wld1.C0=clerp(wld1.C0,euler(1.57,0,3.14)*cf(0,1,.2),.3)
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,.5)*euler(.1,0,0),.4)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.2)*euler(-.5,0,-.4),.4)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(-.2,0,.7)*euler(0,-.7,0),.4)
- RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.4)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(-.2,0,-.4)*euler(0,.4,0),.4)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.4)
- RH.C0=clerp(RH.C0,cf(1,-.8,0)*euler(0,1.57,0)*euler(-.5,0,.6),.4)
- LH.C0=clerp(LH.C0,cf(-1,-1,0)*euler(0,-1.57,0)*euler(0,.2,.5),.4)
- if Stun.Value>=StunT.Value or Stunned.Value == true or Suppressed.Value==true then
- break
- end
- end
- for i=0,1,0.1 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false
- end
- --wld1.C0=clerp(wld1.C0,euler(1.57,0,3.14)*cf(0,1,.2),.3)
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,.4)*euler(.5,0,0),.3)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-1.8)*euler(-.2,0,-.4),.3)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(-.3,0,.4)*euler(0,-.4,0),.3)
- RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(-.3,0,-.2)*euler(0,.4,0),.3)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
- RH.C0=clerp(RH.C0,cf(1,-.8,0)*euler(0,1.57,0)*euler(-.5,0,1.2),.3)
- LH.C0=clerp(LH.C0,cf(-1,0,-1)*euler(0,-1.57,0)*euler(0,.2,.2),.3)
- if Stun.Value>=StunT.Value or Stunned.Value == true or Suppressed.Value==true then
- break
- end
- end
- for i=1,50 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false
- end
- if Stun.Value>=StunT.Value or Stunned.Value == true or Suppressed.Value==true then
- break
- end
- end
- resumeControl()
- combo=0
- attack=false
- end
- function StunAnim()
- attack=true
- removeControl()
- Stunned.Value=true
- workspace.damguiFunc:Fire(Character,"Stunned!","Interrupt")
- local dec=Instance.new("NumberValue",Decrease)
- dec.Name="DecreaseMvmt"
- dec.Value=10
- for i=0,1,0.3 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false
- end
- if Suppressed.Value == true then
- break
- end
- --wld1.C0=clerp(wld1.C0,euler(1.57,0,3.14)*cf(0,1,.2),.3)
- Neck.C0=clerp(Neck.C0,necko*euler(-.2,0,-.5),.2)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(.2,0,-3),.2)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(-.2,0,1.3),.2)
- RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.2)
- LW.C0=clerp(LW.C0,cf(-1.2,0.5,-.4)*euler(1,0,.4)*euler(0,-.1,0),.2)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.2)
- RH.C0=clerp(RH.C0,cf(1,-.6,0)*euler(0,1.57,0)*euler(-.5,0,.3),.25)
- LH.C0=clerp(LH.C0,cf(-1,-.8,0)*euler(0,-1.57,0)*euler(-.2,0,0),.25)
- end
- for i=0,1,0.3 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false
- end
- if Suppressed.Value == true then
- break
- end
- --wld1.C0=clerp(wld1.C0,euler(1.57,0,3.14)*cf(0,1,.2),.3)
- Neck.C0=clerp(Neck.C0,necko*euler(-.3,0,-.5),.2)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.5)*euler(.8,0,-3),.2)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(-.8,0,1.3),.2)
- RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.2)
- LW.C0=clerp(LW.C0,cf(-1.2,0.5,-.4)*euler(1.2,0,.8)*euler(0,-.1,0),.2)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.2)
- RH.C0=clerp(RH.C0,cf(1,-.6,0)*euler(0,1.57,0)*euler(-.5,0,.6),.25)
- LH.C0=clerp(LH.C0,cf(-1,-.8,0)*euler(0,-1.57,0)*euler(.1,0,.7),.25)
- end
- for i=0,1,0.3 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false
- end
- if Suppressed.Value == true then
- break
- end
- --wld1.C0=clerp(wld1.C0,euler(1.57,0,3.14)*cf(0,1,.2),.3)
- Neck.C0=clerp(Neck.C0,necko*euler(-.3,0,-1),.2)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-2)*euler(1.57,0,-3),.2)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(-.8,0,1.3),.2)
- RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.2)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(1.2,0,-.8)*euler(0,-.1,0),.2)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.2)
- RH.C0=clerp(RH.C0,cf(1,-.6,0)*euler(0,1.57,0)*euler(-.2,0,.6),.25)
- LH.C0=clerp(LH.C0,cf(-1,-.8,0)*euler(0,-1.57,0)*euler(-.1,0,.3),.25)
- end
- local gairost=Instance.new("BodyGyro")
- gairost.Parent=RootPart
- gairost.maxTorque=Vector3.new(2000,0,2000)
- gairost.P=2000
- gairost.cframe=cf(0,0,0)
- for i=0,1,0.1 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false
- end
- if Suppressed.Value == true then
- break
- end
- if hitfloor~=nil then
- Torso.Velocity=vt(0,0,0)
- end
- --wld1.C0=clerp(wld1.C0,euler(1.57,0,3.14)*cf(0,1,.2),.3)
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,-1.57),.3)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-2.5)*euler(1.57,0,-3.14),.3)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(-1.57,0,1.5)*euler(.2,0,0),.3)
- RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(1.5,0,-1.57)*euler(0,0,0),.3)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
- RH.C0=clerp(RH.C0,cf(1,-1,0)*euler(0,1.57,0)*euler(-.3,.5,0),.3)
- LH.C0=clerp(LH.C0,cf(-1,-1,0)*euler(0,-1.57,0)*euler(-.1,.2,0),.3)
- end
- for i=1,70 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false
- end
- if Suppressed.Value == true then
- break
- end
- gairost.cframe=RootPart.CFrame
- if hitfloor~=nil then
- Torso.Velocity=vt(0,0,0)
- end
- end
- for i=0,1,0.2 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false
- end
- if Suppressed.Value == true then
- break
- end
- Stun.Value=0
- gairost.cframe=RootPart.CFrame
- --wld1.C0=clerp(wld1.C0,euler(1.57,0,3.14)*cf(0,1,.2),.3)
- Neck.C0=clerp(Neck.C0,necko*euler(.2,0,0),.3)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-2)*euler(1,0,-4),.3)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(-1.57,0,1)*euler(.2,-1,0),.3)
- RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(1.2,0,.2)*euler(0,0,0),.3)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
- RH.C0=clerp(RH.C0,cf(1,-1,0)*euler(0,1.57,0)*euler(-.3,.5,.4),.3)
- LH.C0=clerp(LH.C0,cf(-1,-1,-1)*euler(0,-1.57,0)*euler(-.1,.2,1),.3)
- end
- resumeControl()
- gairost.Parent=nil
- dec.Parent=nil
- combo=0
- Stunned.Value=false
- attack=false
- Stun.Value=0
- end
- --[[ idle
- hwld.C0=clerp(hwld.C0,euler(1.57,0,0)*cf(0,1,0),.3)
- wld1.C0=clerp(wld1.C0,euler(0,-1.57,0)*cf(0,-.3,0),.3)
- Neck.C0=clerp(Neck.C0,necko*euler(.1,0,0)*euler(0,0,.5),.3)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.2)*euler(0,0,-.5),.3)
- RW.C0=clerp(RW.C0,cf(1,0.5,-.3)*euler(1,0,-.1)*euler(0,.4,0),.3)
- LW.C0=clerp(LW.C0,cf(-.4,0.5,-.5)*euler(1.4,0,.6)*euler(0,.2,0),.3)
- RH.C0=clerp(RH.C0,cf(1,-.9,0)*euler(0,1.57,0)*euler(0,0,0)*euler(-.2,0,-.2),.3)
- LH.C0=clerp(LH.C0,cf(-1.1,-.8,.1)*euler(0,-1.57,0)*euler(0,.5,0)*euler(0,0,.1),.3)
- idle ghost
- Neck.C0=clerp(Neck.C0,necko*euler(.2,0,0)*euler(0,0,0),.3)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.5)*euler(.2,0,0),.3)
- RW.C0=clerp(RW.C0,cf(1.4,0.5,.2)*euler(1.4,0,.2)*euler(0,1,0),.3)
- LW.C0=clerp(LW.C0,cf(-1.4,0.5,.2)*euler(1.4,0,-.2)*euler(0,-1,0),.3)
- RH.C0=clerp(RH.C0,cf(1,-.4,-.6)*euler(0,1.57,0)*euler(0,0,0)*euler(-.1,0,.25),.3)
- LH.C0=clerp(LH.C0,cf(-1,-.8,-.4)*euler(0,-1.57,0)*euler(0,0,0)*euler(0,0,.5),.3)
- ]]
- function attackone()
- attack=true
- if ghostmode==false then
- for i=0,1,0.15 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- hwld.C0=clerp(hwld.C0,euler(1.57,0,0)*cf(0,1,0),.3)
- wld1.C0=clerp(wld1.C0,euler(0,-1.57,0)*cf(0,0,0),.3)
- Neck.C0=clerp(Neck.C0,necko*euler(.1,0,0)*euler(0,0,-.6),.3)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.2)*euler(0,0,.8),.3)
- RW.C0=clerp(RW.C0,cf(.5,0.5,-.3)*euler(1.6,0,-1)*euler(0,1.4,0),.3)
- LW.C0=clerp(LW.C0,cf(-1.3,0.3,-.1)*euler(1.6,0,.6)*euler(0,1.4,0),.3)
- RH.C0=clerp(RH.C0,cf(1.1,-.9,0)*euler(0,1.57,0)*euler(0,-.6,0)*euler(0,0,-.1),.3)
- LH.C0=clerp(LH.C0,cf(-1.1,-.8,0)*euler(0,-1.57,0)*euler(0,-.2,0)*euler(0,0,.2),.3)
- if Stagger.Value==true or Stun.Value>=StunT.Value or StaggerHit.Value==true then
- break
- end
- end
- so("203691447",prt12,1,1.2)
- hitbox.Parent=modelzorz
- hitbox.Anchored=true
- hitbox.Size=vt(1,1,1)
- hitbox.CFrame=prt12.CFrame*cf(0,1,0)
- for i=0,1,0.1 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- hitbox.CFrame=prt12.CFrame*cf(0,1.5,0)
- MagniDamage(hitbox,3,0,7,10,"Normal",RootPart,.5,1,6,nil,true)
- hwld.C0=clerp(hwld.C0,euler(2.3,0,0)*cf(0,.8,0),.45)
- wld1.C0=clerp(wld1.C0,euler(0,-1.57,0)*cf(0,-.3,0),.45)
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,0)*euler(0,0,1),.45)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.2)*euler(0,0,-1),.45)
- RW.C0=clerp(RW.C0,cf(1,0.5,.3)*euler(1.1,0,.8)*euler(0,1,0),.45)
- LW.C0=clerp(LW.C0,cf(.6,0.5,-.5)*euler(1.2,0,1)*euler(0,1.4,0),.45)
- RH.C0=clerp(RH.C0,cf(.9,-.9,-.2)*euler(0,1.57,0)*euler(0,1,0)*euler(0,0,-.2),.45)
- LH.C0=clerp(LH.C0,cf(-1,-.8,0)*euler(0,-1.57,0)*euler(0,.6,0)*euler(0,0,.1),.45)
- if Stagger.Value==true or Stun.Value>=StunT.Value or StaggerHit.Value==true then
- break
- end
- end
- hitbox.Parent=nil
- else
- for i=0,1,0.2 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- Neck.C0=clerp(Neck.C0,necko*euler(.4,0,0)*euler(0,0,0),.5)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,1)*euler(-.2,0,0),.5)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(3.5,0,.2)*euler(0,1.4,0),.5)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(3.5,0,-.2)*euler(0,-1.4,0),.5)
- RH.C0=clerp(RH.C0,cf(.9,-.6,-.2)*euler(0,1.57,0)*euler(0,0,0)*euler(-.3,0,-.2),.5)
- LH.C0=clerp(LH.C0,cf(-.9,-.6,-.2)*euler(0,-1.57,0)*euler(0,0,0)*euler(-.3,0,.2),.5)
- end
- so("28144425",LeftArm,.6,1.2)
- so("92597369",LeftArm,.6,1.2)
- so("28144425",RightArm,.6,1.2)
- so("92597369",RightArm,.6,1.2)
- ref=part(3,workspace,0,1,BrickColor.new("Black"),"Reference",vt(0.2,0.2,0.2))
- ref.Anchored=true
- game:GetService("Debris"):AddItem(ref,1)
- for i=0,1,0.2 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- ref.CFrame=LeftArm.CFrame*cf(0,-1.5,0)
- MagniDamage(ref,4,0,7,0,"Normal",RootPart,.3,1,4,nil,true)
- ref.CFrame=RightArm.CFrame*cf(0,-1.5,0)
- MagniDamage(ref,4,5,7,0,"Normal",RootPart,.3,1,4,nil,true)
- Neck.C0=clerp(Neck.C0,necko*euler(.2,0,0)*euler(0,0,0),.5)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.8)*euler(.1,0,0),.5)
- RW.C0=clerp(RW.C0,cf(1,0.5,-.3)*euler(.4,0,-.6)*euler(0,1.4,0),.5)
- LW.C0=clerp(LW.C0,cf(-1,0.5,-.3)*euler(.4,0,.6)*euler(0,-1.4,0),.5)
- RH.C0=clerp(RH.C0,cf(1,-.2,-.4)*euler(0,1.57,0)*euler(0,0,0)*euler(-.1,0,-.1),.5)
- LH.C0=clerp(LH.C0,cf(-1,-.2,-.4)*euler(0,-1.57,0)*euler(0,0,0)*euler(-.1,0,.1),.5)
- end
- ref.Parent=nil
- end
- attack=false
- end
- --[[spawn(function()
- game:GetService("RunService").RenderStepped:connect(function()
- swait()
- hwld.C0=clerp(hwld.C0,euler(1.57,0,0)*cf(0,1,0),.3)
- wld1.C0=clerp(wld1.C0,euler(0,-1.57,0)*cf(0,0,0),.3)
- Neck.C0=clerp(Neck.C0,necko*euler(.1,0,0)*euler(0,0,.6),.3)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.2)*euler(0,0,-.4),.3)
- RW.C0=clerp(RW.C0,cf(1.7,0.5,-.3)*euler(0,0,1)*euler(-1.4,0,0),.3)
- LW.C0=clerp(LW.C0,cf(-1.3,0.3,-.1)*euler(1,0,.6)*euler(0,0,0),.3)
- RH.C0=clerp(RH.C0,cf(1.1,-.9,0)*euler(0,1.57,0)*euler(0,-.6,0)*euler(0,0,-.1),.3)
- LH.C0=clerp(LH.C0,cf(-1.1,-.8,0)*euler(0,-1.57,0)*euler(0,-.2,0)*euler(0,0,.2),.3)
- end)
- end)]]
- function attacktwo()
- attack=true
- if ghostmode==false then
- for i=0,1,0.15 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- hwld.C0=clerp(hwld.C0,euler(1.57,0,0)*cf(0,1,0),.3)
- wld1.C0=clerp(wld1.C0,euler(0,-1.57,0)*cf(0,0,0),.3)
- Neck.C0=clerp(Neck.C0,necko*euler(.1,0,0)*euler(0,0,.2),.3)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.2)*euler(0,0,-.4),.3)
- RW.C0=clerp(RW.C0,cf(1.7,0.5,-.3)*euler(0,0,1)*euler(-1.4,0,0),.3)
- LW.C0=clerp(LW.C0,cf(-1.3,0.3,-.1)*euler(1,0,.6)*euler(0,0,0),.3)
- RH.C0=clerp(RH.C0,cf(1.1,-.9,0)*euler(0,1.57,0)*euler(0,-.6,0)*euler(0,0,-.1),.3)
- LH.C0=clerp(LH.C0,cf(-1.1,-.8,0)*euler(0,-1.57,0)*euler(0,-.2,0)*euler(0,0,.2),.3)
- if Stagger.Value==true or Stun.Value>=StunT.Value or StaggerHit.Value==true then
- break
- end
- end
- so("203691447",prt12,1,1.2)
- hitbox.Parent=modelzorz
- hitbox.Anchored=true
- hitbox.Size=vt(1,1,1)
- hitbox.CFrame=prt12.CFrame*cf(0,1,0)
- for i=0,1,0.1 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- hitbox.CFrame=prt12.CFrame*cf(0,1.5,0)
- MagniDamage(hitbox,3,0,7,10,"Normal",RootPart,.5,1,6,nil,true)
- hwld.C0=clerp(hwld.C0,euler(1.57,0,0)*cf(0,1,0),.3)
- wld1.C0=clerp(wld1.C0,euler(0,-1.57,0)*cf(0,0,0),.3)
- Neck.C0=clerp(Neck.C0,necko*euler(.1,0,0)*euler(0,0,-1),.3)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.2)*euler(0,0,1.1),.3)
- RW.C0=clerp(RW.C0,cf(1.7,0.5,-.3)*euler(0,0,1)*euler(1.4,0,0),.3)
- LW.C0=clerp(LW.C0,cf(-1.3,0.3,-.1)*euler(1,0,.6)*euler(0,0,0),.3)
- RH.C0=clerp(RH.C0,cf(1.1,-.9,0)*euler(0,1.57,0)*euler(0,-.6,0)*euler(0,0,-.1),.3)
- LH.C0=clerp(LH.C0,cf(-1.1,-.8,0)*euler(0,-1.57,0)*euler(0,-.2,0)*euler(0,0,.2),.3)
- --[[hwld.C0=clerp(hwld.C0,euler(2.3,0,0)*cf(0,.8,0),.45)
- wld1.C0=clerp(wld1.C0,euler(0,-1.57,0)*cf(0,-.3,0),.45)
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,0)*euler(0,0,1),.45)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.2)*euler(0,0,-1),.45)
- RW.C0=clerp(RW.C0,cf(1,0.5,.3)*euler(1.1,0,.8)*euler(0,1,0),.45)
- LW.C0=clerp(LW.C0,cf(.6,0.5,-.5)*euler(1.2,0,1)*euler(0,1.4,0),.45)
- RH.C0=clerp(RH.C0,cf(.9,-.9,-.2)*euler(0,1.57,0)*euler(0,1,0)*euler(0,0,-.2),.45)
- LH.C0=clerp(LH.C0,cf(-1,-.8,0)*euler(0,-1.57,0)*euler(0,.6,0)*euler(0,0,.1),.45)]]
- if Stagger.Value==true or Stun.Value>=StunT.Value or StaggerHit.Value==true then
- break
- end
- end
- hitbox.Parent=nil
- else
- for i=0,1,0.2 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- Neck.C0=clerp(Neck.C0,necko*euler(.2,0,0)*euler(0,0,-.5),.5)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,.5)*euler(.2,0,0)*euler(0,0,.5),.5)
- RW.C0=clerp(RW.C0,cf(1.4,0.4,.2)*euler(1,0,.2)*euler(0,.6,0),.5)
- LW.C0=clerp(LW.C0,cf(-1.4,0.5,.2)*euler(2,0,-.6)*euler(0,-.8,0),.5)
- RH.C0=clerp(RH.C0,cf(1,-.2,-.4)*euler(0,1.57,0)*euler(0,-.5,0)*euler(-.1,0,.1),.5)
- LH.C0=clerp(LH.C0,cf(-1,-.8,-.2)*euler(0,-1.57,0)*euler(0,0,0)*euler(-.2,0,.5),.5)
- end
- ref=part(3,workspace,0,1,BrickColor.new("Black"),"Reference",vt(0.2,0.2,0.2))
- ref.Anchored=true
- game:GetService("Debris"):AddItem(ref,1)
- so("28144425",LeftArm,.6,1.4)
- so("92597369",LeftArm,.6,1.4)
- for i=0,1,0.2 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- ref.CFrame=LeftArm.CFrame*cf(0,-1.5,0)
- MagniDamage(ref,4,0,6,0,"Normal",RootPart,.3,1,4,nil,true)
- Neck.C0=clerp(Neck.C0,necko*euler(.1,0,0)*euler(0,0,.2),.5)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(-.6,-1,-.4)*euler(.4,0,0)*euler(0,0,-.6),.5)
- RW.C0=clerp(RW.C0,cf(1.4,0.3,.2)*euler(1.2,0,.3)*euler(0,.6,0),.5)
- LW.C0=clerp(LW.C0,cf(-.8,0.5,-.4)*euler(1,0,1)*euler(0,-1,0),.5)
- RH.C0=clerp(RH.C0,cf(1,-.6,-.6)*euler(0,1.57,0)*euler(0,.2,0)*euler(0,0,.3),.5)
- LH.C0=clerp(LH.C0,cf(-1,-1,-.2)*euler(0,-1.57,0)*euler(0,0,0)*euler(-.2,0,.6),.5)
- end
- for i=0,1,0.2 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- Neck.C0=clerp(Neck.C0,necko*euler(.2,0,0)*euler(0,0,.5),.5)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,.5)*euler(.2,0,0)*euler(0,0,-.5),.5)
- RW.C0=clerp(RW.C0,cf(1.4,0.5,.2)*euler(2,0,.6)*euler(0,.8,0),.5)
- LW.C0=clerp(LW.C0,cf(-1.4,0.4,.2)*euler(1,0,-.2)*euler(0,-.6,0),.5)
- RH.C0=clerp(RH.C0,cf(1,-.8,-.2)*euler(0,1.57,0)*euler(0,0,0)*euler(-.2,0,-.5),.5)
- LH.C0=clerp(LH.C0,cf(-1,-.2,-.4)*euler(0,-1.57,0)*euler(0,.5,0)*euler(-.1,0,.1),.5)
- end
- so("28144425",RightArm,.6,1.4)
- so("92597369",RightArm,.6,1.4)
- for i=0,1,0.2 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- ref.CFrame=RightArm.CFrame*cf(0,-1.5,0)
- MagniDamage(ref,4,0,8,0,"Normal",RootPart,.3,1,8,nil,true)
- Neck.C0=clerp(Neck.C0,necko*euler(.1,0,0)*euler(0,0,-.2),.5)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(.6,-1,-.4)*euler(.4,0,0)*euler(0,0,.6),.5)
- RW.C0=clerp(RW.C0,cf(.8,0.5,-.4)*euler(1,0,-1)*euler(0,1,0),.5)
- LW.C0=clerp(LW.C0,cf(-1.4,0.3,.2)*euler(1.2,0,-.3)*euler(0,-.6,0),.5)
- RH.C0=clerp(RH.C0,cf(1,-1,-.2)*euler(0,1.57,0)*euler(0,0,0)*euler(-.2,0,-.6),.5)
- LH.C0=clerp(LH.C0,cf(-1,-.6,-.6)*euler(0,-1.57,0)*euler(0,.2,0)*euler(0,0,.3),.5)
- end
- ref.Parent=nil
- end
- attack=false
- end
- function attackthree()
- attack=true
- if ghostmode==false then
- for i=0,1,0.15 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- hwld.C0=clerp(hwld.C0,euler(1.57,0,0)*cf(0,1,0),.3)
- wld1.C0=clerp(wld1.C0,euler(0,-1.57+.8,0)*cf(0,.2,0),.3)
- Neck.C0=clerp(Neck.C0,necko*euler(-.4,0,0),.3)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,0),.3)
- RW.C0=clerp(RW.C0,cf(1,1,-.5)*euler(2.8,0,-.8)*euler(0,0,0),.3)
- LW.C0=clerp(LW.C0,cf(-1,1,-.5)*euler(2.8,0,.8),.3)
- RH.C0=clerp(RH.C0,cf(1,-1,0)*euler(0,1.57,0)*euler(0,0,0),.3)
- LH.C0=clerp(LH.C0,cf(-1,-1,0)*euler(0,-1.57,0)*euler(0,0,0),.3)
- if Stagger.Value==true or Stun.Value>=StunT.Value or StaggerHit.Value==true then
- break
- end
- end
- so("203691492",prt12,1,1.2)
- hitbox.Parent=modelzorz
- hitbox.Anchored=true
- hitbox.Size=vt(1,1,1)
- hitbox.CFrame=prt12.CFrame*cf(0,1,0)
- for i=0,1,0.1 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- hitbox.CFrame=prt12.CFrame*cf(0,1.5,0)
- MagniDamage(hitbox,3,0,7,math.random(5,10),"Normal",RootPart,.5,1,6,nil,true)
- hwld.C0=clerp(hwld.C0,euler(1.57,0,0)*cf(0,1,0),.45)
- wld1.C0=clerp(wld1.C0,euler(0,-1.57+.8,0)*euler(.5,0,.5)*cf(0,.2,0),.45)
- Neck.C0=clerp(Neck.C0,necko*euler(.4,0,0),.45)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(0,0,0),.45)
- RW.C0=clerp(RW.C0,cf(1,0.1,-.5)*euler(.2,0,-.8)*euler(0,0,0),.45)
- LW.C0=clerp(LW.C0,cf(-1,0.1,-.5)*euler(.2,0,.8),.45)
- RH.C0=clerp(RH.C0,cf(1,-1,0)*euler(0,1.57,0)*euler(0,0,0),.45)
- LH.C0=clerp(LH.C0,cf(-1,-1,0)*euler(0,-1.57,0)*euler(0,0,0),.45)
- if Stagger.Value==true or Stun.Value>=StunT.Value or StaggerHit.Value==true then
- break
- end
- end
- hitbox.Parent=nil
- else
- for i=0,1,0.2 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- Neck.C0=clerp(Neck.C0,necko*euler(.2,0,0)*euler(0,0,0),.5)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.6)*euler(.25,0,0),.5)
- RW.C0=clerp(RW.C0,cf(1.4,0.5,.2)*euler(.8,0,.2)*euler(0,-1.5,0),.5)
- LW.C0=clerp(LW.C0,cf(-1.4,0.5,.2)*euler(.8,0,-.2)*euler(0,1.5,0),.5)
- RH.C0=clerp(RH.C0,cf(1,-.3,-.6)*euler(0,1.57,0)*euler(0,0,0)*euler(-.1,0,.3),.5)
- LH.C0=clerp(LH.C0,cf(-1,-.8,-.4)*euler(0,-1.57,0)*euler(0,0,0)*euler(0,0,.6),.5)
- end
- so("28144425",LeftArm,.6,1.4)
- so("92597369",LeftArm,.6,1.4)
- so("28144425",RightArm,.6,1.1)
- so("92597369",RightArm,.6,1.1)
- ref=part(3,workspace,0,1,BrickColor.new("Black"),"Reference",vt(0.2,0.2,0.2))
- ref.Anchored=true
- game:GetService("Debris"):AddItem(ref,1)
- for i=0,1,0.07 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- if i>.3 then
- Neck.C0=clerp(Neck.C0,necko*euler(.3,0,0)*euler(0,0,0),.5)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,2.6)*euler(-.2,0,0),.3)
- RW.C0=clerp(RW.C0,cf(1.4,0.6,-.1)*euler(3.2,0,-.1)*euler(0,1.5,0),.5)
- LW.C0=clerp(LW.C0,cf(-1.4,0.6,-.1)*euler(3.2,0,.1)*euler(0,-1.5,0),.5)
- RH.C0=clerp(RH.C0,cf(1,-.8,-.3)*euler(0,1.57,0)*euler(0,0,0)*euler(-.1,0,-.3),.5)
- LH.C0=clerp(LH.C0,cf(-1,-.8,-.3)*euler(0,-1.57,0)*euler(0,0,0)*euler(-.1,0,.3),.5)
- else
- ref.CFrame=LeftArm.CFrame*cf(0,-1.5,0)
- MagniDamage(ref,4,0,8,0,"Normal",RootPart,.3,1,4,nil,true)
- ref.CFrame=RightArm.CFrame*cf(0,-1.5,0)
- MagniDamage(ref,4,0,8,0,"Normal",RootPart,.3,1,4,nil,true)
- Neck.C0=clerp(Neck.C0,necko*euler(.1,0,0)*euler(0,0,0),.5)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,2.6)*euler(-.1,0,0),.3)
- RW.C0=clerp(RW.C0,cf(1.4,0.6,-.1)*euler(2.6,0,-.1)*euler(0,-1.5,0),.5)
- LW.C0=clerp(LW.C0,cf(-1.4,0.6,-.1)*euler(2.6,0,.1)*euler(0,1.5,0),.5)
- RH.C0=clerp(RH.C0,cf(1,-.6,-.5)*euler(0,1.57,0)*euler(0,0,0)*euler(-.1,0,-.4),.5)
- LH.C0=clerp(LH.C0,cf(-1,-.6,-.5)*euler(0,-1.57,0)*euler(0,0,0)*euler(-.1,0,.4),.5)
- end
- end
- so("28144425",LeftArm,.6,1.2)
- so("92597369",LeftArm,.6,1.2)
- so("28144425",RightArm,.6,1.1)
- so("92597369",RightArm,.6,1.1)
- for i=0,1,0.15 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- ref.CFrame=LeftArm.CFrame*cf(0,-1.5,0)
- MagniDamage(ref,4,0,7,0,"Normal",RootPart,.3,1,5,nil,true)
- ref.CFrame=RightArm.CFrame*cf(0,-1.5,0)
- MagniDamage(ref,4,0,7,0,"Normal",RootPart,.3,1,5,nil,true)
- Neck.C0=clerp(Neck.C0,necko*euler(.4,0,0)*euler(0,0,0),.5)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,-1,-.8)*euler(.2,0,0),.6)
- RW.C0=clerp(RW.C0,cf(1.4,0.4,-.1)*euler(.8,0,-.1)*euler(0,1.5,0),.5)
- LW.C0=clerp(LW.C0,cf(-1.4,0.4,-.1)*euler(.8,0,.1)*euler(0,-1.5,0),.5)
- RH.C0=clerp(RH.C0,cf(1,-.3,-.6)*euler(0,1.57,0)*euler(0,0,0)*euler(-.05,0,.1),.5)
- LH.C0=clerp(LH.C0,cf(-1,-.3,-.6)*euler(0,-1.57,0)*euler(0,0,0)*euler(-.05,0,-.1),.5)
- end
- ref.Parent=nil
- end
- attack=false
- end
- --[[function attackthree()
- attack=true
- if ghostmode==false then
- for i=0,1,0.15 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- hwld.C0=clerp(hwld.C0,euler(1.2,0,0)*cf(0,1,0),.3)
- wld1.C0=clerp(wld1.C0,euler(0,-1.57,0)*cf(0,.3,0),.3)
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,.6)*euler(.2,0,0),.3)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.2)*euler(0,0,-1),.3)
- RW.C0=clerp(RW.C0,cf(1,0.5,-.3)*euler(.8,0,-.3)*euler(0,-2,0),.3)
- LW.C0=clerp(LW.C0,cf(-.4,0.5,-.5)*euler(.8,0,.4)*euler(0,-2,0),.3)
- RH.C0=clerp(RH.C0,cf(1,-.9,-.2)*euler(0,1.57,0)*euler(0,0,0)*euler(-.2,0,-.1),.3)
- LH.C0=clerp(LH.C0,cf(-1,-.8,.1)*euler(0,-1.57,0)*euler(0,1,0)*euler(-.2,0,.1),.3)
- if Stagger.Value==true or Stun.Value>=StunT.Value or StaggerHit.Value==true then
- break
- end
- end
- so("203691467",prt12,.8,1.4)
- hitbox.Parent=modelzorz
- hitbox.Anchored=true
- hitbox.Size=vt(1,1,1)
- hitbox.CFrame=prt12.CFrame*cf(0,1,0)
- for i=0,1,0.1 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- hitbox.CFrame=prt12.CFrame*cf(0,1.5,0)
- MagniDamage(hitbox,3,0,8,10,"Normal",RootPart,.5,1,5,nil,true)
- hwld.C0=clerp(hwld.C0,euler(2.5,0,0)*cf(0,.8,0),.45)
- wld1.C0=clerp(wld1.C0,euler(0,-1.57,0)*cf(0,.3,0),.45)
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,-.6)*euler(0,0,0),.45)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.2)*euler(0,0,.6),.45)
- RW.C0=clerp(RW.C0,cf(.4,0.5,-.4)*euler(2.3,0,-.6)*euler(0,-1.8,0),.45)
- LW.C0=clerp(LW.C0,cf(-1,0.5,-.3)*euler(2.2,0,.4)*euler(0,-2,0),.45)
- RH.C0=clerp(RH.C0,cf(1,-.8,-.1)*euler(0,1.57,0)*euler(0,-.6,0)*euler(-.1,0,-.1),.45)
- LH.C0=clerp(LH.C0,cf(-1,-.9,.1)*euler(0,-1.57,0)*euler(0,-.2,0)*euler(0,0,-.1),.45)
- if Stagger.Value==true or Stun.Value>=StunT.Value or StaggerHit.Value==true then
- break
- end
- end
- hitbox.Parent=nil
- else
- for i=0,1,0.2 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- Neck.C0=clerp(Neck.C0,necko*euler(.2,0,0)*euler(0,0,0),.5)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.6)*euler(.25,0,0),.5)
- RW.C0=clerp(RW.C0,cf(1.4,0.5,.2)*euler(.8,0,.2)*euler(0,-1.5,0),.5)
- LW.C0=clerp(LW.C0,cf(-1.4,0.5,.2)*euler(.8,0,-.2)*euler(0,1.5,0),.5)
- RH.C0=clerp(RH.C0,cf(1,-.3,-.6)*euler(0,1.57,0)*euler(0,0,0)*euler(-.1,0,.3),.5)
- LH.C0=clerp(LH.C0,cf(-1,-.8,-.4)*euler(0,-1.57,0)*euler(0,0,0)*euler(0,0,.6),.5)
- end
- so("28144425",LeftArm,.6,1.4)
- so("92597369",LeftArm,.6,1.4)
- so("28144425",RightArm,.6,1.1)
- so("92597369",RightArm,.6,1.1)
- ref=part(3,workspace,0,1,BrickColor.new("Black"),"Reference",vt())
- ref.Anchored=true
- game:GetService("Debris"):AddItem(ref,1)
- for i=0,1,0.07 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- if i>.3 then
- Neck.C0=clerp(Neck.C0,necko*euler(.3,0,0)*euler(0,0,0),.5)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,2.6)*euler(-.2,0,0),.3)
- RW.C0=clerp(RW.C0,cf(1.4,0.6,-.1)*euler(3.2,0,-.1)*euler(0,1.5,0),.5)
- LW.C0=clerp(LW.C0,cf(-1.4,0.6,-.1)*euler(3.2,0,.1)*euler(0,-1.5,0),.5)
- RH.C0=clerp(RH.C0,cf(1,-.8,-.3)*euler(0,1.57,0)*euler(0,0,0)*euler(-.1,0,-.3),.5)
- LH.C0=clerp(LH.C0,cf(-1,-.8,-.3)*euler(0,-1.57,0)*euler(0,0,0)*euler(-.1,0,.3),.5)
- else
- ref.CFrame=LeftArm.CFrame*cf(0,-1.5,0)
- MagniDamage(ref,4,0,8,0,"Normal",RootPart,.3,1,4,nil,true)
- ref.CFrame=RightArm.CFrame*cf(0,-1.5,0)
- MagniDamage(ref,4,0,8,0,"Normal",RootPart,.3,1,4,nil,true)
- Neck.C0=clerp(Neck.C0,necko*euler(.1,0,0)*euler(0,0,0),.5)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,2.6)*euler(-.1,0,0),.3)
- RW.C0=clerp(RW.C0,cf(1.4,0.6,-.1)*euler(2.6,0,-.1)*euler(0,-1.5,0),.5)
- LW.C0=clerp(LW.C0,cf(-1.4,0.6,-.1)*euler(2.6,0,.1)*euler(0,1.5,0),.5)
- RH.C0=clerp(RH.C0,cf(1,-.6,-.5)*euler(0,1.57,0)*euler(0,0,0)*euler(-.1,0,-.4),.5)
- LH.C0=clerp(LH.C0,cf(-1,-.6,-.5)*euler(0,-1.57,0)*euler(0,0,0)*euler(-.1,0,.4),.5)
- end
- end
- so("28144425",LeftArm,.6,1.2)
- so("92597369",LeftArm,.6,1.2)
- so("28144425",RightArm,.6,1.1)
- so("92597369",RightArm,.6,1.1)
- for i=0,1,0.15 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- ref.CFrame=LeftArm.CFrame*cf(0,-1.5,0)
- MagniDamage(ref,4,0,7,0,"Normal",RootPart,.3,1,5,nil,true)
- ref.CFrame=RightArm.CFrame*cf(0,-1.5,0)
- MagniDamage(ref,4,0,7,0,"Normal",RootPart,.3,1,5,nil,true)
- Neck.C0=clerp(Neck.C0,necko*euler(.4,0,0)*euler(0,0,0),.5)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,-1,-.8)*euler(.2,0,0),.6)
- RW.C0=clerp(RW.C0,cf(1.4,0.4,-.1)*euler(.8,0,-.1)*euler(0,1.5,0),.5)
- LW.C0=clerp(LW.C0,cf(-1.4,0.4,-.1)*euler(.8,0,.1)*euler(0,-1.5,0),.5)
- RH.C0=clerp(RH.C0,cf(1,-.3,-.6)*euler(0,1.57,0)*euler(0,0,0)*euler(-.05,0,.1),.5)
- LH.C0=clerp(LH.C0,cf(-1,-.3,-.6)*euler(0,-1.57,0)*euler(0,0,0)*euler(-.05,0,-.1),.5)
- end
- ref.Parent=nil
- end
- attack=false
- end]]
- function attackfour()
- attack=true
- if ghostmode==false then
- for i=0,1,0.15 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- hwld.C0=clerp(hwld.C0,euler(1.2,0,0)*cf(0,1,0),.3)
- wld1.C0=clerp(wld1.C0,euler(0,-1.57,0)*cf(0,.3,0),.3)
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,.6)*euler(.2,0,0),.3)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.2)*euler(0,0,-1),.3)
- RW.C0=clerp(RW.C0,cf(1,0.5,-.3)*euler(.8,0,-.3)*euler(0,-2,0),.3)
- LW.C0=clerp(LW.C0,cf(-.4,0.5,-.5)*euler(.8,0,.4)*euler(0,-2,0),.3)
- RH.C0=clerp(RH.C0,cf(1,-.9,-.2)*euler(0,1.57,0)*euler(0,0,0)*euler(-.2,0,-.1),.3)
- LH.C0=clerp(LH.C0,cf(-1,-.8,.1)*euler(0,-1.57,0)*euler(0,1,0)*euler(-.2,0,.1),.3)
- if Stagger.Value==true or Stun.Value>=StunT.Value or StaggerHit.Value==true then
- break
- end
- end
- so("203691467",prt12,.8,1.4)
- hitbox.Parent=modelzorz
- hitbox.Anchored=true
- hitbox.Size=vt(1,1,1)
- hitbox.CFrame=prt12.CFrame*cf(0,1,0)
- for i=0,1,0.1 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- hitbox.CFrame=prt12.CFrame*cf(0,1.5,0)
- MagniDamage(hitbox,3,0,8,10,"Normal",RootPart,.5,1,5,nil,true)
- hwld.C0=clerp(hwld.C0,euler(2.5,0,0)*cf(0,.8,0),.45)
- wld1.C0=clerp(wld1.C0,euler(0,-1.57,0)*cf(0,.3,0),.45)
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,-.6)*euler(0,0,0),.45)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.2)*euler(0,0,.6),.45)
- RW.C0=clerp(RW.C0,cf(.4,0.5,-.4)*euler(2.3,0,-.6)*euler(0,-1.8,0),.45)
- LW.C0=clerp(LW.C0,cf(-1,0.5,-.3)*euler(2.2,0,.4)*euler(0,-2,0),.45)
- RH.C0=clerp(RH.C0,cf(1,-.8,-.1)*euler(0,1.57,0)*euler(0,-.6,0)*euler(-.1,0,-.1),.45)
- LH.C0=clerp(LH.C0,cf(-1,-.9,.1)*euler(0,-1.57,0)*euler(0,-.2,0)*euler(0,0,-.1),.45)
- if Stagger.Value==true or Stun.Value>=StunT.Value or StaggerHit.Value==true then
- break
- end
- end
- hitbox.Parent=nil
- else
- for i=0,1,0.2 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- Neck.C0=clerp(Neck.C0,necko*euler(.2,0,0)*euler(0,0,-.5),.5)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.5)*euler(.2,0,0)*euler(0,0,.8),.5)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,.2)*euler(2,0,1.4)*euler(0,.8,0),.5)
- LW.C0=clerp(LW.C0,cf(-1.2,0.5,-.3)*euler(1.4,0,.4)*euler(0,-3,0),.5)
- RH.C0=clerp(RH.C0,cf(1.2,-.4,-.4)*euler(0,1.57,0)*euler(0,-.8,0)*euler(-.1,0,.25),.5)
- LH.C0=clerp(LH.C0,cf(-1,-.8,-.6)*euler(0,-1.57,0)*euler(0,-.8,0)*euler(0,0,.5),.5)
- end
- so("28144425",LeftArm,.6,1.2)
- so("92597369",LeftArm,.6,1.2)
- so("28144425",RightArm,.6,1)
- so("92597369",RightArm,.6,1)
- ref=part(3,workspace,0,1,BrickColor.new("Black"),"Reference",vt(0.2,0.2,0.2))
- ref.Anchored=true
- game:GetService("Debris"):AddItem(ref,1)
- cul=0
- for i=0,1,0.1 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- cul=cul+.8
- if i>.5 then
- Neck.C0=clerp(Neck.C0,necko*euler(.2,0,0)*euler(0,0,-.5),.5)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.5)*euler(0,0,0)*euler(0,0,0),.5)
- RootJoint.C1=clerp(RootJoint.C1,cf(0,0,0,-1,-0,-0,0,0,1,0,1,0),.5)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,.0)*euler(1.57,0,1.57)*euler(-.2,0,-.8),.5)
- LW.C0=clerp(LW.C0,cf(-1,0.4,-.4)*euler(1.57,0,-1.57)*euler(0,-3.14,0)*euler(.4,0,.4),.5)
- RH.C0=clerp(RH.C0,cf(1.1,-.6,-.4)*euler(0,1.57,0)*euler(0,0,0)*euler(-.1,0,-.2),.5)
- LH.C0=clerp(LH.C0,cf(-1.1,-.6,-.4)*euler(0,-1.57,0)*euler(0,0,0)*euler(-.1,0,.2),.5)
- else
- ref.CFrame=LeftArm.CFrame*cf(0,-1.5,0)
- MagniDamage(ref,4,0,7,0,"Normal",RootPart,.3,1,5,nil,true)
- ref.CFrame=RightArm.CFrame*cf(0,-1.5,0)
- MagniDamage(ref,4,0,7,0,"Normal",RootPart,.3,1,5,nil,true)
- Neck.C0=clerp(Neck.C0,necko*euler(.2,0,0)*euler(0,0,-.5),.5)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.5)*euler(0,0,0)*euler(0,0,0),.5)
- RootJoint.C1=cf(0,0,0,-1,-0,-0,0,0,1,0,1,0)*euler(0,0,-cul)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,.0)*euler(1.57,0,1.57)*euler(0,0,0),.5)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(1.57,0,-1.57)*euler(0,-3.14,0),.5)
- RH.C0=clerp(RH.C0,cf(1.1,-.6,-.4)*euler(0,1.57,0)*euler(0,0,0)*euler(-.1,0,-.2),.5)
- LH.C0=clerp(LH.C0,cf(-1.1,-.6,-.4)*euler(0,-1.57,0)*euler(0,0,0)*euler(-.1,0,.2),.5)
- end
- end
- ref.Parent=nil
- RootJoint.C1=cf(0,0,0,-1,-0,-0,0,0,1,0,1,0)
- end
- attack=false
- end
- --[[function attackfour()
- attack=true
- if ghostmode==false then
- dtatkfour=true
- local decde=Instance.new("NumberValue",Decrease)
- decde.Name="DecreaseDef"
- decde.Value=-.4
- Spectre()
- if clone~=nil then
- if clone:findFirstChild("Humanoid")~=nil then
- workspace.CurrentCamera.CameraSubject=clone.Humanoid
- end
- end
- Torso.Velocity=RootPart.CFrame.lookVector*100
- for i=0,1,0.12 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- Neck.C0=clerp(Neck.C0,necko*euler(.4,0,0)*euler(0,0,0),.5)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,1)*euler(-.2,0,0),.5)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(3.5,0,.2)*euler(0,1.4,0),.5)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(3.5,0,-.2)*euler(0,-1.4,0),.5)
- RH.C0=clerp(RH.C0,cf(.9,-.6,-.2)*euler(0,1.57,0)*euler(0,0,0)*euler(-.3,0,-.2),.5)
- LH.C0=clerp(LH.C0,cf(-.9,-.6,-.2)*euler(0,-1.57,0)*euler(0,0,0)*euler(-.3,0,.2),.5)
- end
- so("28144425",LeftArm,.6,1.2)
- so("92597369",LeftArm,.6,1.2)
- so("28144425",RightArm,.6,1.2)
- so("92597369",RightArm,.6,1.2)
- ref=part(3,workspace,0,1,BrickColor.new("Black"),"Reference",vt())
- ref.Anchored=true
- game:GetService("Debris"):AddItem(ref,1)
- for i=0,1,0.1 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- ref.CFrame=LeftArm.CFrame*cf(0,-1.5,0)
- MagniDamage(ref,4,0,8,0,"Normal",RootPart,.5,1,8,nil,true)
- ref.CFrame=RightArm.CFrame*cf(0,-1.5,0)
- MagniDamage(ref,4,0,8,0,"Normal",RootPart,.5,1,8,nil,true)
- Neck.C0=clerp(Neck.C0,necko*euler(.2,0,0)*euler(0,0,0),.4)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.8)*euler(.1,0,0),.4)
- RW.C0=clerp(RW.C0,cf(1,0.5,-.3)*euler(.4,0,-.6)*euler(0,1.4,0),.4)
- LW.C0=clerp(LW.C0,cf(-1,0.5,-.3)*euler(.4,0,.6)*euler(0,-1.4,0),.4)
- RH.C0=clerp(RH.C0,cf(1,-.2,-.4)*euler(0,1.57,0)*euler(0,0,0)*euler(-.1,0,-.1),.4)
- LH.C0=clerp(LH.C0,cf(-1,-.2,-.4)*euler(0,-1.57,0)*euler(0,0,0)*euler(-.1,0,.1),.4)
- end
- ref.Parent=nil
- Spectre()
- dtatkfour=false
- decde.Parent=nil
- workspace.CurrentCamera.CameraSubject=Humanoid
- else
- for i=0,1,0.2 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- Neck.C0=clerp(Neck.C0,necko*euler(.2,0,0)*euler(0,0,-.5),.5)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.5)*euler(.2,0,0)*euler(0,0,.8),.5)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,.2)*euler(2,0,1.4)*euler(0,.8,0),.5)
- LW.C0=clerp(LW.C0,cf(-1.2,0.5,-.3)*euler(1.4,0,.4)*euler(0,-3,0),.5)
- RH.C0=clerp(RH.C0,cf(1.2,-.4,-.4)*euler(0,1.57,0)*euler(0,-.8,0)*euler(-.1,0,.25),.5)
- LH.C0=clerp(LH.C0,cf(-1,-.8,-.6)*euler(0,-1.57,0)*euler(0,-.8,0)*euler(0,0,.5),.5)
- end
- so("28144425",LeftArm,.6,1.2)
- so("92597369",LeftArm,.6,1.2)
- so("28144425",RightArm,.6,1)
- so("92597369",RightArm,.6,1)
- ref=part(3,workspace,0,1,BrickColor.new("Black"),"Reference",vt())
- ref.Anchored=true
- game:GetService("Debris"):AddItem(ref,1)
- cul=0
- for i=0,1,0.1 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- cul=cul+.8
- if i>.5 then
- Neck.C0=clerp(Neck.C0,necko*euler(.2,0,0)*euler(0,0,-.5),.5)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.5)*euler(0,0,0)*euler(0,0,0),.5)
- RootJoint.C1=clerp(RootJoint.C1,cf(0,0,0,-1,-0,-0,0,0,1,0,1,0),.5)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,.0)*euler(1.57,0,1.57)*euler(-.2,0,-.8),.5)
- LW.C0=clerp(LW.C0,cf(-1,0.4,-.4)*euler(1.57,0,-1.57)*euler(0,-3.14,0)*euler(.4,0,.4),.5)
- RH.C0=clerp(RH.C0,cf(1.1,-.6,-.4)*euler(0,1.57,0)*euler(0,0,0)*euler(-.1,0,-.2),.5)
- LH.C0=clerp(LH.C0,cf(-1.1,-.6,-.4)*euler(0,-1.57,0)*euler(0,0,0)*euler(-.1,0,.2),.5)
- else
- ref.CFrame=LeftArm.CFrame*cf(0,-1.5,0)
- MagniDamage(ref,4,0,7,0,"Normal",RootPart,.3,1,5,nil,true)
- ref.CFrame=RightArm.CFrame*cf(0,-1.5,0)
- MagniDamage(ref,4,0,7,0,"Normal",RootPart,.3,1,5,nil,true)
- Neck.C0=clerp(Neck.C0,necko*euler(.2,0,0)*euler(0,0,-.5),.5)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.5)*euler(0,0,0)*euler(0,0,0),.5)
- RootJoint.C1=cf(0,0,0,-1,-0,-0,0,0,1,0,1,0)*euler(0,0,-cul)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,.0)*euler(1.57,0,1.57)*euler(0,0,0),.5)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(1.57,0,-1.57)*euler(0,-3.14,0),.5)
- RH.C0=clerp(RH.C0,cf(1.1,-.6,-.4)*euler(0,1.57,0)*euler(0,0,0)*euler(-.1,0,-.2),.5)
- LH.C0=clerp(LH.C0,cf(-1.1,-.6,-.4)*euler(0,-1.57,0)*euler(0,0,0)*euler(-.1,0,.2),.5)
- end
- end
- ref.Parent=nil
- RootJoint.C1=cf(0,0,0,-1,-0,-0,0,0,1,0,1,0)
- end
- attack=false
- end]]
- function Spectre()
- if Stunned.Value==true or Stagger.Value==true or Unstable.Value==true or Suppressed.Value==true then return end
- if ghostmode==false then
- so("315746833",RootPart,.6,.8)
- passive1.Parent=Decrease
- passive2.Parent=Decrease
- ghostmode=true
- bladetype="None"
- Character.Archivable=true
- clone=Character:Clone()
- clone.Parent=workspace
- d=it("BoolValue",clone)
- d.Name="Clean"
- if clone:findFirstChild("Health")~=nil then clone.Health.Parent=nil end
- if clone:findFirstChild("Ghostwalker")~=nil then clone.Ghostwalker.Parent=nil end
- if clone:findFirstChild("Ghost Claws")~=nil then clone["Ghost Claws"].Parent=nil end
- if clone:findFirstChild("Effects")~=nil then clone["Effects"].Parent=nil end
- if clone:findFirstChild("")~=nil then clone[""].Parent=nil end
- if clone:findFirstChild("Torso")~=nil then
- for _,c in pairs(clone:children()) do
- if c.Name=="DebounceHit" then
- c:Destroy()
- end
- for _,v in pairs(c:children()) do
- if v.className=="BodyGyro" or v.className=="BodyPosition" or v.className=="BodyVelocity" or v.className=="BodyAngularVelocity" then
- v.Parent=nil
- end
- end
- end
- cNeck=clone.Torso:findFirstChild("Neck")
- cRW=clone.Torso:findFirstChild("Right Shoulder")
- cLW=clone.Torso:findFirstChild("Left Shoulder")
- cRH=clone.Torso:findFirstChild("Right Hip")
- cLH=clone.Torso:findFirstChild("Left Hip")
- end
- if clone:findFirstChild("HumanoidRootPart")~=nil then
- cRootJoint=clone.HumanoidRootPart:findFirstChild("RootJoint")
- end
- cRightArm=clone:findFirstChild("Right Arm")
- if cRightArm~=nil then
- hwld.Part1=cRightArm
- hwld.C0=euler(1.57,0,0)*cf(0,1,0)
- wld1.C0=euler(0,-1.57,0)*cf(0,0,0)
- end
- if clone:findFirstChild("HumanoidRootPart")~=nil then
- RootPart.CFrame=clone.HumanoidRootPart.CFrame*cf(0,0,-2)
- if ominField~=nil and dtatkfour==false then
- DecreaseStat(clone,"Damage",-.05,200)
- RootPart.CFrame=cf(ominField)*cf(0,4,0)
- newpos=vt(RootPart.Position.X,clone.HumanoidRootPart.Position.Y,RootPart.Position.Z)
- RootPart.CFrame=cf(newpos,clone.HumanoidRootPart.Position)*euler(0,3.14,0)
- end
- end
- Character.Archivable=false
- Humanoid.JumpPower=70
- --spdebounce.Parent=Character
- Humanoid.Name="Spirit"
- NoTarget.Parent=Stats
- oHeadCol=Character["Body Colors"].HeadColor
- oTorsoCol=Character["Body Colors"].TorsoColor
- oLeftArmCol=Character["Body Colors"].LeftArmColor
- oRightArmCol=Character["Body Colors"].RightArmColor
- oLeftLegCol=Character["Body Colors"].LeftLegColor
- oRightLegCol=Character["Body Colors"].RightLegColor
- if face~=nil then face.Parent=nil end
- if Character:FindFirstChild("Shirt Graphic") then Character:FindFirstChild("Shirt Graphic").Parent=nil end
- if Torso:FindFirstChild("roblox") then Torso:FindFirstChild("roblox").Parent=nil end
- --if bodycolors~=nil then bodycolors.Parent=nil end
- --if Character:findFirstChild("Body Colors")~=nil then Character:findFirstChild("Body Colors").Parent=nil end
- if shirt~=nil then shirt.Parent=nil end
- if pants~=nil then pants.Parent=nil end
- Character["Body Colors"].HeadColor=BrickColor.new(NewCol)
- Character["Body Colors"].TorsoColor=BrickColor.new(NewCol)
- Character["Body Colors"].LeftArmColor=BrickColor.new(NewCol)
- Character["Body Colors"].RightArmColor=BrickColor.new(NewCol)
- Character["Body Colors"].LeftLegColor=BrickColor.new(NewCol)
- Character["Body Colors"].RightLegColor=BrickColor.new(NewCol)
- for _,c in pairs(Character:children()) do
- if c.className=="Part" and c.Name~="HumanoidRootPart" then c.BrickColor=BrickColor.new(NewCol) c.Transparency=.4 end
- if c:IsA("Accoutrement") then if c:findFirstChild("Handle")~=nil then c.Handle.Transparency=1 end end
- end
- else
- Humanoid.JumpPower=50
- --spdebounce.Parent=nil
- Humanoid.Name="Humanoid"
- for _,v in pairs(clone:children()) do
- if v:IsA("BasePart") then
- v.CanCollide=false
- end
- end
- NoTarget.Parent=nil
- passive1.Parent=nil
- passive2.Parent=nil
- ghostmode=false
- bladetype="Mana"
- oldpos=nil
- if clone~=nil then
- if clone:findFirstChild("HumanoidRootPart")~=nil then oldpos=clone.HumanoidRootPart.CFrame end
- cRootJoint,cNeck,cRW,cLW,cRH,cLH=nil,nil,nil,nil,nil,nil
- hwld.Parent=handle
- hwld.Part1=RightArm
- hwld.C0=euler(1.57,0,0)*cf(0,1,0)
- wld1.C0=euler(0,-1.57,0)*cf(0,0,0)
- clone.Parent=nil
- clone=nil
- end
- if oldpos~=nil then RootPart.CFrame=oldpos end
- if face~=nil then face.Parent=Head end
- if shirt~=nil then shirt.Parent=Character end
- if pants~=nil then pants.Parent=Character end
- if tshirt then
- tshirt.Parent=Character
- end
- tshirt2.Parent=Torso
- Character["Body Colors"].HeadColor=oHeadCol
- Character["Body Colors"].TorsoColor=oTorsoCol
- Character["Body Colors"].LeftArmColor=oLeftArmCol
- Character["Body Colors"].RightArmColor=oRightArmCol
- Character["Body Colors"].LeftLegColor=oLeftLegCol
- Character["Body Colors"].RightLegColor=oRightLegCol
- for _,c in pairs(Character:children()) do
- if c.className=="Part" and c.Name~="HumanoidRootPart" then c.Transparency=0 end
- if c:IsA("Accoutrement") then if c:findFirstChild("Handle")~=nil then c.Handle.Transparency=0 end end
- end
- Humanoid:ChangeState("GettingUp")
- Neck.C0=necko*euler(.3,0,0)*euler(0,0,0)
- RootJoint.C0=RootCF*cf(0,0,-1.4)*euler(0,0,0)
- RW.C0=cf(1,0.8,-.5)*euler(2,0,-.8)*euler(0,3.14,0)
- LW.C0=cf(-1,0.8,-.5)*euler(2,0,.8)*euler(0,3.14,0)
- RH.C0=cf(1,-.8,-.8)*euler(0,1.57,0)*euler(0,0,0)*euler(0,0,-1.4)
- LH.C0=cf(-1,.2,-.8)*euler(0,-1.57,0)*euler(0,0,0)*euler(0,0,.2)
- RH.C1=RHC1*cf(0,0,0)*euler(0,0,0)
- LH.C1=LHC1*cf(0,0,0)*euler(0,0,0)
- end
- end
- function do1()
- if attack==true then return end
- if Stunned.Value==true or Stagger.Value==true or Unstable.Value==true or Suppressed.Value==true then return end
- if cooldowns[1]>=cooldownmax and mana.Value>=30 and ghostmode==false then
- --if true then
- attack=true
- for i=0,1,0.1 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- hwld.C0=clerp(hwld.C0,euler(1.57,0,0)*cf(0,1,0),.4)
- wld1.C0=clerp(wld1.C0,euler(0,-1.57,0)*cf(0,0,0),.4)
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,1)*euler(.1,0,0),.4)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.2)*euler(0,0,-1),.4)
- RW.C0=clerp(RW.C0,cf(1.4,0.5,-.1)*euler(.2,0,.4)*euler(0,1,0),.4)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(1.57,0,-1)*euler(0,0,0),.4)
- RH.C0=clerp(RH.C0,cf(1,-.9,-.2)*euler(0,1.57,0)*euler(0,0,0)*euler(-.2,0,-.1),.4)
- LH.C0=clerp(LH.C0,cf(-1,-.8,.1)*euler(0,-1.57,0)*euler(0,1,0)*euler(-.2,0,.1),.4)
- if Stagger.Value==true or Stun.Value>=StunT.Value or Stun.Value==true or Unstable.Value==true or Suppressed.Value==true then
- break
- end --P1
- end
- RecentEnemy.Value=nil
- cooldowns[1]=0
- local dec=Instance.new("NumberValue",Decrease)
- mana.Value=mana.Value-30
- RecentEnemy.Value=nil
- dec.Name="DecreaseMvmt"
- dec.Value=10
- local num=50
- local ceef=LeftArm.Position
- local look=MMouse.Hit.p
- local MouseLook=cf((ceef+look)/2,look)
- local hit=nil
- local Parts={}
- local deb=0
- local thing=0
- --so("33359415",LeftArm,1,2)
- repeat
- if Stagger.Value==true or Stun.Value>=StunT.Value or Stun.Value==true or Unstable.Value==true or Suppressed.Value==true then
- break
- end --P1
- hit,pos=rayCast(ceef,MouseLook.lookVector,4,Character)
- if hit~=nil or RecentEnemy.Value~=nil then
- num=1
- end
- local ref=part(3,workspace,0,1,BrickColor.new(NewCol),"Effect",vt(0.2,0.2,0.2))
- local mag=(ceef-pos).magnitude
- ceef=ceef+(MouseLook.lookVector*4.1)
- local rmsh=mesh("BlockMesh",ref,"","",vt(0,0,0),vt(1,mag*5,1))
- ref.Anchored=true
- ref.CFrame=CFrame.new((ceef+pos)/2,pos)*angles(1.57,0,0)
- MagniDamage(ref,3,0,8,0,"Normal",RootPart,.2,1,0,nil,nil,true)
- --[[local ref2=part(3,ref,0,0,BrickColor.new("Really red"),"Effect",vt())
- local rmsh2=mesh("SpecialMesh",ref2,"FileMesh","http://www.roblox.com/asset/?id=3270017",vt(0,0,0),vt(.6,mag*1.5,.6))
- ref2.Anchored=true
- ref2.CFrame=ref.CFrame*euler(0,math.random(-50,50),0)]]
- table.insert(Parts,ref)
- so("315743298",ref,.5,2)
- da=0
- for i=1,#Parts do
- da=da+1
- thing=thing+1
- if thing%99==0 then
- MagicCircle2(BrickColor.new(NewCol),Parts[i].CFrame*cf(math.random(-100,100)/100,0,math.random(-100,100)/100),1,8,1,-.04,8,-.04,.1,-.2)
- end
- end
- for i=1,1 do
- MagicCircle2(BrickColor.new(NewCol),Parts[da].CFrame*cf(math.random(-200,200)/100,0,math.random(-200,200)/100),1,8,1,-.04,8,-.04,.15,-.2)
- MagicCircle2(BrickColor.new(NewCol),Parts[da].CFrame*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50)),2,5,2,-.1,1,-.1,0.13,.8)
- end
- game:GetService("Debris"):AddItem(ref,5)
- num=num-1
- deb=deb+1
- if deb>=2 then
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- deb=0
- end
- until num<=0
- if Stagger.Value==true or Stun.Value>=StunT.Value or StaggerHit.Value==true then
- else
- if hit~=nil then
- --Damagefunc(hit,6,8,0,"Normal",RootPart,.2,1,0,nil,nil,true)
- end
- end
- local grabpos=Instance.new("BodyPosition")
- if RecentEnemy.Value~=nil then
- last=0
- for i=1,#Parts do
- last=last+1
- end
- grabpos.position=Parts[last].Position
- if RecentEnemy.Value:findFirstChild("Torso")~=nil then
- grabpos.Parent=RecentEnemy.Value
- hit=RecentEnemy.Value.Torso
- end
- local stats = RecentEnemy.Value:FindFirstChild("Stats")
- if stats then
- if stats:FindFirstChild("Ulting") then
- if stats.Ulting.Value==false then
- stats.Suppressed.Value=true
- workspace.suppFunc:FireServer(stats,true,3)
- end
- end
- end
- local damd=1
- for i=#Parts,1,-1 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- if Stagger.Value==true or Stun.Value>=StunT.Value or Stun.Value==true or Unstable.Value==true or Suppressed.Value==true then
- break
- end --P1
- if hit~=nil then
- damd=damd*.95
- Damagefunc(hit,4*damd,5*damd,0,"Normal",RootPart,.1,1,0,nil,nil,true)
- end
- last=0
- for i=1,#Parts do
- last=last+1
- thing=thing+1
- if thing%90==0 then
- ref=part(3,workspace,0,1,BrickColor.new("Black"),"Reference",vt(0.2,0.2,0.2))
- ref.Anchored=true
- ref.CFrame=Parts[i].CFrame
- game:GetService("Debris"):AddItem(ref,1)
- so("315743331",ref,.2,2)
- so("315743298",ref,.1,1.5)
- MagicCircle2(BrickColor.new(NewCol),Parts[i].CFrame*cf(math.random(-100,100)/100,0,math.random(-100,100)/100),1,8,1,-.04,8,-.04,.15,-.1)
- end
- end
- for i=1,1 do
- MagicCircle2(BrickColor.new(NewCol),Parts[last].CFrame*cf(math.random(-200,200)/100,0,math.random(-200,200)/100),1,8,1,-.04,8,-.04,.25,-.2)
- MagicCircle(BrickColor.new(NewCol),Parts[last].CFrame,1,1,1,1,1,1,.15,1,effects)
- end
- grabpos.position=Parts[i].Position
- if RecentEnemy.Value:findFirstChild("HumanoidRootPart")~=nil then
- RecentEnemy.Value.HumanoidRootPart.CFrame=cf(Parts[i].Position)
- end
- local stats = RecentEnemy.Value:FindFirstChild("Stats")
- if stats then
- if stats:FindFirstChild("Ulting") then
- if stats.Ulting.Value==false then
- stats.Suppressed.Value=false
- end
- end
- end
- Parts[i].Parent=nil
- table.remove(Parts,i)
- end
- else
- cooldowns[1]=40
- for i=1,#Parts do
- Parts[1].Parent=nil
- table.remove(Parts,1)
- end
- end
- grabpos.Parent=nil
- dec.Parent=nil
- attack=false
- end
- end
- function do2()
- if attack==true then return end
- if Stunned.Value==true or Stagger.Value==true or Unstable.Value==true or Suppressed.Value==true then return end
- if cooldowns[2]>=cooldownmax and mana.Value>=35 and ghostmode==false then
- --if true then
- attack=true
- cooldowns[2]=0
- mana.Value=mana.Value-35
- local MouseLook=cf((RootPart.Position+MMouse.Hit.p)/2,MMouse.Hit.p)
- local hit,pos = rayCast(RootPart.Position,MouseLook.lookVector,200,Character)
- ref=part(3,workspace,0,1,BrickColor.new("Black"),"Reference",vt(0.2,0.2,0.2))
- ref.Anchored=true
- ref.CFrame=cf(pos)*cf(0,3,0)
- game:GetService("Debris"):AddItem(ref,10)
- hitfloor,posfloor=rayCast(ref.Position,(CFrame.new(ref.Position,ref.Position - Vector3.new(0,1,0))).lookVector,100,Character)
- ominField=posfloor
- ref.CFrame=cf(ominField)
- so("315743331",ref,1,.8)
- ominup=true
- for i=0,1,0.1 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- MagicBlock(BrickColor.new(NewCol),LeftArm.CFrame*cf(0,-1,0),1,1,1,1,1,1,.1,1,effects)
- hwld.C0=clerp(hwld.C0,euler(1.57,0,0)*cf(0,1,0),.3)
- wld1.C0=clerp(wld1.C0,euler(0,-1.57,0)*cf(0,0,0),.3)
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,1)*euler(.1,0,0),.3)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.2)*euler(0,0,-1),.3)
- RW.C0=clerp(RW.C0,cf(1.4,0.5,-.1)*euler(.2,0,.4)*euler(0,1,0),.3)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(2,0,-.6)*euler(0,1.4,0),.3)
- RH.C0=clerp(RH.C0,cf(1,-.9,-.2)*euler(0,1.57,0)*euler(0,0,0)*euler(-.2,0,-.1),.3)
- LH.C0=clerp(LH.C0,cf(-1,-.8,.1)*euler(0,-1.57,0)*euler(0,1,0)*euler(-.2,0,.1),.3)
- if Stagger.Value==true or Stun.Value>=StunT.Value or Stun.Value==true or Unstable.Value==true or Suppressed.Value==true then
- break
- end --P1
- end
- for i=0,1,0.1 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- MagicCircle(BrickColor.new(NewCol),LeftArm.CFrame*cf(0,-1,0),1,1,1,2,2,2,.1,1,effects)
- hwld.C0=clerp(hwld.C0,euler(.8,0,0)*cf(0,1,0),.3)
- wld1.C0=clerp(wld1.C0,euler(0,-1.57,0)*cf(0,0,0),.3)
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,1.2)*euler(.1,0,0),.3)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-1)*euler(.2,0,0)*euler(0,0,-1),.3)
- RW.C0=clerp(RW.C0,cf(1.4,0.5,-.1)*euler(.2,0,.4)*euler(0,1,0)*euler(-.5,0,0),.3)
- LW.C0=clerp(LW.C0,cf(-1.5,0.4,0)*euler(2,0,-1)*euler(0,1.4,0)*euler(0,0,-1.2),.3)
- RH.C0=clerp(RH.C0,cf(.8,-.3,-.6)*euler(0,1.57,0)*euler(0,0,0)*euler(-.2,0,-.3),.3)
- LH.C0=clerp(LH.C0,cf(-1,.2,.1)*euler(0,-1.57,0)*euler(0,1,0)*euler(-.2,0,-.1),.3)
- if Stagger.Value==true or Stun.Value>=StunT.Value or Stun.Value==true or Unstable.Value==true or Suppressed.Value==true then
- break
- end --P1
- end
- if Stagger.Value==true or Stun.Value>=StunT.Value or StaggerHit.Value==true then
- else
- ref2=part(3,workspace,0,1,BrickColor.new("Black"),"Reference",vt(0.2,0.2,0.2))
- ref2.Anchored=true
- ref2.CFrame=ref.CFrame
- game:GetService("Debris"):AddItem(ref2,1)
- so("315743355",ref2,1,.4)
- so("228343343",ref2,1,.8)
- ref.CFrame=cf(ominField)
- MagicCircle3(BrickColor.new(NewCol),cf(ref.Position),150,40,150,-4,10,-4,.04,1,effects)
- MagniDamage(ref,15,0,12,40,"Knockdown2",ref,0,1,8,nil,nil,true,"Defense",.1,200)
- ominup=false
- swait(10)
- end
- ref.Parent=nil
- attack=false
- end
- end
- function do3()
- if holdc==true then
- holdc=false
- end
- if attack==true then return end
- if Stunned.Value==true or Stagger.Value==true or Unstable.Value==true or Suppressed.Value==true then return end
- if cooldowns[3]>=20 and mana.Value>=5 and ghostmode==false then
- --if true then
- holdc=true
- attack=true
- orbcharge=0
- bladetype="Stable"
- --while holdz==true do
- mdec3.Parent=Decrease
- for i=0,1,0.1 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- hwld.C0=clerp(hwld.C0,euler(2,-.2,0)*cf(0,1,0),.3)
- wld1.C0=clerp(wld1.C0,euler(0,-1.57,0)*cf(0,.3,0),.3)
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,-.6)*euler(-.4,0,0),.3)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.2)*euler(0,0,.8),.3)
- RW.C0=clerp(RW.C0,cf(1,0.5,-.3)*euler(2,0,.4)*euler(0,0,0),.3)
- LW.C0=clerp(LW.C0,cf(.2,0.5,-.5)*euler(1.7,0,1)*euler(0,0,0),.3)
- RH.C0=clerp(RH.C0,cf(1.1,-.9,0)*euler(0,1.57,0)*euler(0,-.6,0)*euler(0,0,-.1),.3)
- LH.C0=clerp(LH.C0,cf(-1.1,-.8,0)*euler(0,-1.57,0)*euler(0,-.2,0)*euler(0,0,.2),.3)
- if Stagger.Value==true or Stun.Value>=StunT.Value or Stun.Value==true or Unstable.Value==true or Suppressed.Value==true then
- break
- end --P1
- end
- while holdc==true and orb<maxorbs do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- orbcharge=orbcharge+1
- eul=euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))
- MagicCircle(BrickColor.new(NewCol2),prt24.CFrame*cf(0,1,0)*eul,1,1,1,-.01,5,-.01,.09,1,effects)
- --MagicCircle(BrickColor.new(NewCol2),prt24.CFrame*cf(0,1,0)*eul*euler(1.57,0,0),1,1,1,-.01,10,-.01,.09,1,effects)
- --MagicCircle(BrickColor.new(NewCol2),prt24.CFrame*cf(0,1,0)*eul*euler(0,0,1.57),1,1,1,-.01,10,-.01,.09,1,effects)
- if orbcharge>=15 then
- mana.Value=mana.Value-5
- orb=orb+1
- holdc=false
- MagicCircle(BrickColor.new(NewCol2),prt24.CFrame*cf(0,1,0),15,15,15,-1,-1,-1,.09,1,effects)
- mdec3.Parent=nil
- break
- elseif Stagger.Value==true or Stun.Value>=StunT.Value or Unstable.Value==true or Stun.Value==true or Suppressed.Value==true then
- mdec3.Parent=nil
- break
- end
- end
- if orbcharge<15 and orb>0 and orblimit<maxorbs and mana.Value>=5 then
- cooldowns[3]=cooldowns[3]-20
- mana.Value=mana.Value-5
- eul=euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))
- MagicCircle(BrickColor.new(NewCol2),prt24.CFrame*cf(0,1,0)*eul,1,1,1,-.01,10,-.01,.09,1,effects)
- MagicCircle(BrickColor.new(NewCol2),prt24.CFrame*cf(0,1,0)*eul*euler(1.57,0,0),1,1,1,-.01,10,-.01,.09,1,effects)
- MagicCircle(BrickColor.new(NewCol2),prt24.CFrame*cf(0,1,0)*eul*euler(0,0,1.57),1,1,1,-.01,10,-.01,.09,1,effects)
- orb1=part(3,effects,0,1,BrickColor.new("Black"),"Orb",vt(0.2,0.2,0.2))
- owld1=weld(orb1,orb1,RootPart,euler(0,0,0))
- orb2=part(3,orb1,0,.6,BrickColor.new(NewCol),"Orb",vt(0.2,0.2,0.2)) orb2.Material="Neon"
- omsh=mesh("SpecialMesh",orb2,"Sphere","nil",vt(0,0,0),vt(5,5,5))
- owld2=weld(orb2,orb2,orb1,cf(0,0,0))
- val=it("BoolValue",orb1)
- val.Value=false
- orblimit=orblimit+1
- orb=orb-1
- table.insert(Effects,{orb1,"Orb",orb2,owld1,owld2,400,0,cf(0,math.random(400,1200)/100,0),0,euler(math.random(-50,50),math.random(-50,50),math.random(-50,50)),0,math.random(2,5)/100,math.random(10,15)/100,math.random(2,5)/100,val})
- so("183763498",orb1,.4,1)
- end
- bladetype="Mana"
- attack=false
- mdec3.Parent=nil
- end
- end
- function do4()
- if attack==true then return end
- if Stunned.Value==true or Stagger.Value==true or Unstable.Value==true or Suppressed.Value==true then return end
- if cooldowns[4]>=cooldownmax and mana.Value>=40 and ghostmode==false then
- --if true then
- attack=true
- cooldowns[4]=0
- mana.Value=mana.Value-40
- doing4=true
- local decenem=Instance.new("NumberValue",nil)
- decenem.Name="DecreaseMvmt"
- decenem.Value=10
- game:GetService("Debris"):AddItem(decenem,1)
- if PhantomEnemy.Value~=nil then
- if PhantomEnemy.Value:findFirstChild("Stats")~=nil then
- if PhantomEnemy.Value.Stats:findFirstChild("Decrease")~=nil then
- decenem.Parent=PhantomEnemy.Value.Stats.Decrease
- end
- end
- end
- UltVal.Value=true
- for i=0,1,0.1 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- if Stun.Value>=StunT.Value or Stun.Value==true or Suppressed.Value==true then
- break
- end
- if Unstable.Value==true then
- Unstable.Value=false
- Unstable.Timer.Value=0
- end
- if Stagger.Value==true then
- Stagger.Value=false
- end --P2
- PhantomPos=RootPart.CFrame
- if PhantomEnemy.Value~=nil then
- if PhantomEnemy.Value:findFirstChild("HumanoidRootPart")~=nil then
- PhantomPos=PhantomEnemy.Value.HumanoidRootPart.CFrame
- end
- end
- hwld.C0=clerp(hwld.C0,euler(2.4,0,0)*cf(0,1,0),.3)
- wld1.C0=clerp(wld1.C0,euler(0,-1.57,0)*cf(0,-.3,0),.3)
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,1)*euler(.2,0,0),.3)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-1)*euler(.2,0,0)*euler(0,0,-1),.3)
- RW.C0=clerp(RW.C0,cf(.8,0.5,-.3)*euler(.1,0,.4)*euler(0,1.2,0)*euler(1.2,0,0),.3)
- LW.C0=clerp(LW.C0,cf(-1.2,0.4,-.2)*euler(.8,0,.6)*euler(0,1,0),.3)
- RH.C0=clerp(RH.C0,cf(.8,-.3,-.6)*euler(0,1.57,0)*euler(0,0,0)*euler(-.2,0,-.3),.3)
- LH.C0=clerp(LH.C0,cf(-1,.2,.1)*euler(0,-1.57,0)*euler(0,1,0)*euler(-.2,0,-.1),.3)
- end
- mov=0
- Portal1={}
- Portal2={}
- for i=0,1,0.1 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- mov=mov-.5709
- for i=1,#Portal1 do
- MagicCircle(BrickColor.new(NewCol2),RootPart.CFrame*Portal1[i][2],1,1,1,2,2,2,.2,1,effects)
- end
- for i=1,#Portal2 do
- MagicCircle(BrickColor.new(NewCol2),sRootPart.CFrame*Portal2[i][2],1,1,1,2,2,2,.2,1,effects)
- end
- hwld.C0=clerp(hwld.C0,euler(2.4,0,0)*cf(0,1,0),.3)
- wld1.C0=clerp(wld1.C0,euler(0,-1.57,0)*cf(0,-.3,0),.3)
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,-.4)*euler(.2,0,0),.3)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-1)*euler(0,0,mov)*euler(0,0,.4)*euler(0,0,0),.3)
- RW.C0=clerp(RW.C0,cf(1.3,0.5,-.3)*euler(.1,0,.4)*euler(0,-1.2,0)*euler(.4,0,0),.3)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(.4,0,-.6)*euler(0,0,0),.3)
- RH.C0=clerp(RH.C0,cf(.8,-.3,-.6)*euler(0,1.57,0)*euler(0,0,0)*euler(-.2,0,-.3),.3)
- LH.C0=clerp(LH.C0,cf(-.8,-.3,-.6)*euler(0,-1.57,0)*euler(0,0,0)*euler(-.2,0,.3),.3)
- CF=RootPart.CFrame*euler(0,mov,0)*cf(0,0,-8)
- MagicCircle(BrickColor.new(NewCol2),CF,1,1,1,5,5,5,.1,1,effects)
- table.insert(Portal1,{CF,euler(0,mov,0)*cf(0,0,-8)})
- ref=part(3,workspace,0,1,BrickColor.new("Black"),"Reference",vt(0.2,0.2,0.2))
- ref.Anchored=true
- ref.CFrame=CF
- game:GetService("Debris"):AddItem(ref,1)
- so("183763493",ref,.2,.8)
- PhantomPos=RootPart.CFrame
- if PhantomEnemy.Value~=nil then
- if PhantomEnemy.Value:findFirstChild("HumanoidRootPart")~=nil then
- PhantomPos=PhantomEnemy.Value.HumanoidRootPart.CFrame
- CF2=sRootPart.CFrame*euler(0,mov,0)*cf(0,0,-8)
- MagicCircle(BrickColor.new(NewCol2),CF2,1,1,1,5,5,5,.1,1,effects)
- table.insert(Portal2,{CF2,euler(0,mov,0)*cf(0,0,-8)})
- ref=part(3,workspace,0,1,BrickColor.new("Black"),"Reference",vt(0.2,0.2,0.2))
- ref.Anchored=true
- ref.CFrame=CF2
- game:GetService("Debris"):AddItem(ref,1)
- so("183763493",ref,.2,.8)
- end
- end
- end
- bladetype="Stable"
- mov=0
- for i=0,1,0.1 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- if Stun.Value>=StunT.Value or Stun.Value==true or Suppressed.Value==true then
- break
- end
- if Unstable.Value==true then
- Unstable.Value=false
- Unstable.Timer.Value=0
- end
- if Stagger.Value==true then
- Stagger.Value=false
- end --P2
- for i=1,#Portal1 do
- MagicCircle(BrickColor.new(NewCol2),RootPart.CFrame*Portal1[i][2],1,1,1,2,2,2,.2,1,effects)
- end
- for i=1,#Portal2 do
- MagicCircle(BrickColor.new(NewCol2),sRootPart.CFrame*Portal2[i][2],1,1,1,2,2,2,.2,1,effects)
- end
- hwld.C0=clerp(hwld.C0,euler(2.4,0,0)*cf(0,.8,0),.3)
- wld1.C0=clerp(wld1.C0,euler(0,-1.57,0)*cf(0,.3,0),.3)
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,0)*euler(.1,0,0),.3)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.4)*euler(0,0,0)*euler(0,0,0),.3)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(.4,0,1.57)*euler(0,0,0)*euler(-.6,0,0),.3)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(.4,0,-1)*euler(0,0,0),.3)
- RH.C0=clerp(RH.C0,cf(1,-.6,-.4)*euler(0,1.57,0)*euler(0,0,0)*euler(-.1,0,-.1),.3)
- LH.C0=clerp(LH.C0,cf(-1,-.6,-.4)*euler(0,-1.57,0)*euler(0,0,0)*euler(-.1,0,.1),.3)
- end
- for i=0,1,0.1 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- if Stun.Value>=StunT.Value or Stun.Value==true or Suppressed.Value==true then
- break
- end
- if Unstable.Value==true then
- Unstable.Value=false
- Unstable.Timer.Value=0
- end
- if Stagger.Value==true then
- Stagger.Value=false
- end --P2
- for i=1,#Portal1 do
- MagicCircle(BrickColor.new(NewCol2),RootPart.CFrame*Portal1[i][2],1,1,1,2,2,2,.2,1,effects)
- end
- for i=1,#Portal2 do
- MagicCircle(BrickColor.new(NewCol2),sRootPart.CFrame*Portal2[i][2],1,1,1,2,2,2,.2,1,effects)
- end
- hwld.C0=clerp(hwld.C0,euler(1.7,0,0)*cf(0,1,0),.3)
- wld1.C0=clerp(wld1.C0,euler(0,-1.57,0)*cf(0,.3,0),.3)
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,0)*euler(-.4,0,0),.3)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.2)*euler(0,0,0)*euler(0,0,0),.3)
- RW.C0=clerp(RW.C0,cf(1.5,0.6,0)*euler(2.8,0,.2)*euler(0,1,0)*euler(0,0,0),.3)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(-.4,0,-1)*euler(0,0,0),.3)
- RH.C0=clerp(RH.C0,cf(1,-.8,-.2)*euler(0,1.57,0)*euler(0,0,0)*euler(-.1,0,.1),.3)
- LH.C0=clerp(LH.C0,cf(-1,-.8,-.2)*euler(0,-1.57,0)*euler(0,0,0)*euler(-.1,0,-.1),.3)
- end
- MagicCircle(BrickColor.new(NewCol2),RootPart.CFrame,80,6,80,3,-.3,3,.08,1,effects)
- so("315743350",RootPart,1,.8)
- ref=part(3,workspace,0,1,BrickColor.new("Black"),"Reference",vt(0.2,0.2,0.2))
- ref.Anchored=true
- ref.CFrame=RootPart.CFrame
- game:GetService("Debris"):AddItem(ref,1)
- so("315743350",ref,1,.8)
- local whichportal=false
- if doing4==true then
- whichportal=true
- MagicCircle(BrickColor.new(NewCol2),sRootPart.CFrame,80,6,80,3,-.3,3,.08,1,effects)
- ref=part(3,workspace,0,1,BrickColor.new("Black"),"Reference",vt(0.2,0.2,0.2))
- ref.Anchored=true
- game:GetService("Debris"):AddItem(ref,1)
- for i=1,#Portal1 do
- ref.CFrame=RootPart.CFrame*Portal1[i][2]
- MagniDamage(ref,5,0,7.5,0,"Normal",RootPart,.1,1,4,nil,nil,true)
- MagicCircle(BrickColor.new(NewCol2),RootPart.CFrame*Portal1[i][2]*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50)),1,1,1,1,10,1,.1,1,effects)
- end
- ref.Parent=nil
- for i=1,#Portal1 do
- table.remove(Portal1,1)
- end
- end
- local dec=Instance.new("NumberValue",Decrease)
- dec.Name="DecreaseMvmt"
- dec.Value=0
- bladetype="None"
- if Rooted.Value==false then
- RootPart.CFrame=sRootPart.CFrame*cf(math.random(-200,200)/100,0,math.random(-200,200)/100)
- end
- doing4=false
- for i=0,1,0.05 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- if Stun.Value>=StunT.Value or Stun.Value==true or Suppressed.Value==true then
- break
- end
- if Unstable.Value==true then
- Unstable.Value=false
- Unstable.Timer.Value=0
- end
- if Stagger.Value==true then
- Stagger.Value=false
- end --P2
- for i=1,#Portal1 do
- if Portal1[i][2]~=nil then
- Portal1[i][2]=Portal1[i][2]*cf(0,0,1)*euler(0,.2,0)
- end
- MagicCircle(BrickColor.new(NewCol2),RootPart.CFrame*Portal1[i][2],1,1,1,2,2,2,.2,1,effects)
- end
- for i=1,#Portal2 do
- if Portal2[i][2]~=nil then
- Portal2[i][2]=Portal2[i][2]*cf(0,0,1)*euler(0,.2,0)
- end
- MagicCircle(BrickColor.new(NewCol2),sRootPart.CFrame*Portal2[i][2],1,1,1,2,2,2,.2,1,effects)
- end
- if i<=.5 then
- hwld.C0=clerp(hwld.C0,euler(1.7,0,0)*cf(0,1,0),.3)
- wld1.C0=clerp(wld1.C0,euler(0,-1.57,0)*euler(20*i,0,0)*cf(0,0,0),.3)
- else
- hwld.C0=clerp(hwld.C0,euler(-1.57,0,0)*cf(0,1,0),.3)
- wld1.C0=clerp(wld1.C0,euler(0,-1.57,0)*cf(0,0,0),.3)
- end
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,-.4)*euler(-.3,0,0),.2)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.2)*euler(0,0,.4)*euler(0,0,0),.2)
- RW.C0=clerp(RW.C0,cf(1.5,0.6,0)*euler(3.3,0,.4)*euler(0,.4,0)*euler(0,0,0),.2)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(-.2,0,-.6)*euler(0,0,0),.2)
- RH.C0=clerp(RH.C0,cf(1.2,-.8,-.2)*euler(0,1.57,0)*euler(0,-.4,0)*euler(-.1,0,.1),.2)
- LH.C0=clerp(LH.C0,cf(-1,-.8,-.2)*euler(0,-1.57,0)*euler(0,0,0)*euler(-.1,0,.1),.2)
- end
- bladetype="Stable"
- for i=0,1,0.3 do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- if Stun.Value>=StunT.Value or Stun.Value==true or Suppressed.Value==true then
- break
- end
- if Unstable.Value==true then
- Unstable.Value=false
- Unstable.Timer.Value=0
- end
- if Stagger.Value==true then
- Stagger.Value=false
- end --P2
- for i=1,#Portal1 do
- if Portal1[i][2]~=nil then
- if whichportal==true then
- --Portal1[i][2]=Portal1[i][2]*cf(0,0,-1.4)*euler(0,-.6,0)
- Portal1[i][2]=Portal1[i][2]*cf(0,0,2)*euler(0,.8,0)
- else
- Portal1[i][2]=Portal1[i][2]*cf(0,0,2)*euler(0,.4,0)
- end
- end
- MagicCircle(BrickColor.new(NewCol2),RootPart.CFrame*Portal1[i][2],1,1,1,2,2,2,.2,1,effects)
- end
- for i=1,#Portal2 do
- if Portal2[i][2]~=nil then
- if whichportal==true then
- --Portal2[i][2]=Portal2[i][2]*cf(0,0,-1.4)*euler(0,-.6,0)
- Portal2[i][2]=Portal2[i][2]*cf(0,0,2)*euler(0,.8,0)
- else
- Portal2[i][2]=Portal2[i][2]*cf(0,0,2)*euler(0,.4,0)
- end
- end
- MagicCircle(BrickColor.new(NewCol2),sRootPart.CFrame*Portal2[i][2],1,1,1,2,2,2,.2,1,effects)
- end
- hwld.C0=clerp(hwld.C0,euler(-1.6,0,0)*cf(0,1,0),.4)
- wld1.C0=clerp(wld1.C0,euler(0,-1.57,0)*cf(0,0,0),.4)
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,-.4)*euler(.1,0,0),.4)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.6)*euler(0,0,.4)*euler(0,0,0),.4)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(1.57,0,.4)*euler(0,0,0)*euler(0,0,0),.4)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(-.6,0,-.2)*euler(0,0,0),.4)
- RH.C0=clerp(RH.C0,cf(1.2,-.6,-.3)*euler(0,1.57,0)*euler(0,-.4,0)*euler(-.1,0,0),.4)
- LH.C0=clerp(LH.C0,cf(-1,-.6,-.4)*euler(0,-1.57,0)*euler(0,0,0)*euler(-.1,0,.2),.4)
- end
- numbr=0
- if whichportal==true then
- numbr=#Portal2
- else
- numbr=#Portal1
- end
- ref=part(3,workspace,0,1,BrickColor.new("Black"),"Reference",vt(0.2,0.2,0.2))
- ref.Anchored=true
- game:GetService("Debris"):AddItem(ref,1)
- for i=1,numbr do
- swait()
- if TimeLocked.Value == true then
- repeat
- game:GetService("RunService").Heartbeat:wait()
- until TimeLocked.Value == false or Suppressed.Value == true
- end
- if Stun.Value>=StunT.Value or Stun.Value==true or Suppressed.Value==true then
- break
- end
- if Unstable.Value==true then
- Unstable.Value=false
- Unstable.Timer.Value=0
- end
- if Stagger.Value==true then
- Stagger.Value=false
- end --P2
- if whichportal==true then
- for i=1,3 do
- MagicCircle(BrickColor.new(NewCol2),RootPart.CFrame*Portal2[1][2]*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50)),.2,1,.2,.6,20,.6,.1,1,effects)
- end
- ref2=part(3,workspace,0,1,BrickColor.new("Black"),"Reference",vt(0.2,0.2,0.2))
- ref2.Anchored=true
- ref2.CFrame=ref.CFrame
- game:GetService("Debris"):AddItem(ref2,1)
- so("315748999",ref2,.6,.6)
- so("315748949",ref2,.6,.8)
- ref.CFrame=RootPart.CFrame*Portal2[1][2]
- MagniDamage(ref,10,0,6.5,0,"Normal",RootPart,.05,1,4,nil,nil,true,"Defense",.03,300)
- MagicCircle(BrickColor.new(NewCol2),RootPart.CFrame*Portal2[1][2]*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50)),1,1,1,8,8,8,.1,1,effects)
- table.remove(Portal2,1)
- else
- for i=1,2 do
- MagicCircle(BrickColor.new(NewCol2),RootPart.CFrame*Portal1[1][2]*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50)),.2,1,.2,.6,20,.6,.1,1,effects)
- end
- ref2=part(3,workspace,0,1,BrickColor.new("Black"),"Reference",vt(0.2,0.2,0.2))
- ref2.Anchored=true
- ref2.CFrame=ref.CFrame
- game:GetService("Debris"):AddItem(ref2,1)
- so("315748999",ref2,.6,.6)
- so("315748949",ref2,.6,.8)
- ref.CFrame=RootPart.CFrame*Portal1[1][2]
- MagniDamage(ref,8,0,6.5,0,"Normal",RootPart,.01,1,3,nil,nil,true,"Defense",.05,300)
- MagicCircle(BrickColor.new(NewCol2),RootPart.CFrame*Portal1[1][2]*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50)),1,1,1,8,8,8,.1,1,effects)
- table.remove(Portal1,1)
- end
- for i=1,#Portal1 do
- --[[if Portal1[i][2]~=nil then
- Portal1[i][2]=Portal1[i][2]*euler(0,0,0)*cf(0,0,-1)
- end]]
- MagicCircle(BrickColor.new(NewCol2),RootPart.CFrame*Portal1[i][2],1,1,1,2,2,2,.2,1,effects)
- end
- for i=1,#Portal2 do
- --[[if Portal2[i][2]~=nil then
- Portal2[i][2]=Portal2[i][2]*euler(0,0,0)*cf(0,0,-1)
- end]]
- MagicCircle(BrickColor.new(NewCol2),sRootPart.CFrame*Portal2[i][2],1,1,1,2,2,2,.2,1,effects)
- end
- hwld.C0=clerp(hwld.C0,euler(-1.6,0,0)*cf(0,1,0),.4)
- wld1.C0=clerp(wld1.C0,euler(0,-1.57,0)*cf(0,0,0),.4)
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,-.4)*euler(.1,0,0),.4)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.6)*euler(0,0,.4)*euler(0,0,0),.4)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(1.57,0,.4)*euler(0,0,0)*euler(0,0,0),.4)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(-.6,0,-.2)*euler(0,0,0),.4)
- RH.C0=clerp(RH.C0,cf(1.2,-.6,-.3)*euler(0,1.57,0)*euler(0,-.4,0)*euler(-.1,0,0),.4)
- LH.C0=clerp(LH.C0,cf(-1,-.6,-.4)*euler(0,-1.57,0)*euler(0,0,0)*euler(-.1,0,.2),.4)
- end
- decenem.Parent=nil
- ref.Parent=nil
- bladetype="Mana"
- dec.Parent=nil
- attack=false
- UltVal.Value=false
- end
- end
- function DecreaseStat(Model,Stat,Amount,Duration)
- if Model:findFirstChild("Stats")~=nil then
- if Model.Stats[Stat]~=nil then
- Model.Stats[Stat].Value=Model.Stats[Stat].Value-Amount
- d=Instance.new("NumberValue",Model.Stats.Decrease)
- dur=Instance.new("NumberValue",d)
- dur.Name="Duration"
- dur.Value=Duration
- game:GetService("Debris"):AddItem(d,20)
- if Stat=="Damage" then
- d.Name="DecreaseAtk"
- elseif Stat=="Defense" then
- d.Name="DecreaseDef"
- elseif Stat=="Movement" then
- d.Name="DecreaseMvmt"
- end
- if Model:findFirstChild("Torso")~=nil then
- display=""
- if Stat=="Damage" then
- if Amount>0 then
- display="-Damage"
- else
- display="+Damage"
- end
- elseif Stat=="Defense" then
- if Amount>0 then
- display="-Defense"
- else
- display="+Defense"
- end
- elseif Stat=="Movement" then
- if Amount>0 then
- display="-Movement"
- else
- display="+Movement"
- end
- end
- workspace.damguiFunc:Fire(Model,display,"Debuff")
- end
- d.Value=Amount
- end
- end
- end
- function GetDist(Part1,Part2,magni)
- local targ=Part1.Position-Part2.Position
- local mag=targ.magnitude
- if mag<=magni then
- return true
- else
- return false
- end
- end
- function MagniDamage(Part,magni,minim,maxim,knockback,Type,Property,Delay,KnockbackType,incstun,stagger,staghit,ranged,DecreaseState,DecreaseAmount,Duration,hitted)
- for _,c in pairs(workspace:children()) do
- local hum=c:findFirstChild("Humanoid")
- if c:findFirstChild("Spirit")~=nil then
- hum=c.Spirit
- end
- if hum~=nil then
- local head=nil
- for _,d in pairs(c:children()) do
- --if d.Name=="Torso" or d.Name=="Head" or d.Name=="HumanoidRootPart" or d.Name=="HitPart" then
- if d.className=="Model" and ranged~=true then
- head=d:findFirstChild("Hitbox")
- if d.Parent==Character then break end
- if head~=nil then
- local targ=head.Position-Part.Position
- local mag=targ.magnitude
- if mag<=magni and c.Name~=Player.Name then
- ref=part(3,workspace,0,1,BrickColor.new("Black"),"Reference",vt(0.2,0.2,0.2))
- ref.Anchored=true
- ref.CFrame=cf(head.Position)
- game:GetService("Debris"):AddItem(ref,1)
- hitnum=math.random(1,5)
- if hitnum==1 then so("199148971",ref,1,1)
- elseif hitnum==2 then so("199149025",ref,1,1)
- elseif hitnum==3 then so("199149072",ref,1,1)
- elseif hitnum==4 then so("199149109",ref,1,1)
- elseif hitnum==5 then so("199149119",ref,1,1)
- end
- --
- end
- end
- end
- if d.className=="Part" then
- head=d
- if head~=nil then
- local targ=head.Position-Part.Position
- local mag=targ.magnitude
- if mag<=magni and c.Name~=Player.Name then
- if stun==nil then
- stun=math.random(5,10)
- end
- local Rang=nil
- if Ranged==false then
- Rang=true
- end
- local stag=nil
- if shbash==true then
- stag=true
- end
- Damagefunc(head,minim,maxim,knockback,Type,Property,Delay,KnockbackType,incstun,stagger,staghit,ranged,DecreaseState,DecreaseAmount,Duration,nil,hitted)
- --Damagefunc(hit,minim,maxim,knockback,Type,Property,Delay,KnockbackType,incstun,stagger,staghit,DecreaseState,DecreaseAmount,Duration)
- end
- end
- end
- end
- end
- end
- end
- function MagniBuff(Part,magni,Dec,DecAm,Dur)
- if Player.Neutral==true then
- DecreaseStat(Character,Dec,DecAm,Dur)
- end
- for _,c in pairs(workspace:children()) do
- local hum=c:findFirstChild("Humanoid")
- if hum~=nil then
- local head=c:findFirstChild("Torso")
- if head~=nil then
- local targ=head.Position-Part.Position
- local mag=targ.magnitude
- cando=true
- if mag<=magni then
- if Player.Neutral==false then
- if game.Players:GetPlayerFromCharacter(head.Parent)~=nil then
- if game.Players:GetPlayerFromCharacter(head.Parent).TeamColor==Player.TeamColor then cando=true else cando=false end
- else cando=false
- end
- if head.Parent:findFirstChild("Alignment")~=nil then
- if head.Parent.Alignment.Value==Player.TeamColor.Color then cando=true end
- end
- else cando=false
- end
- if cando==true then
- DecreaseStat(head.Parent,Dec,DecAm,Dur)
- end
- end
- end
- end
- end
- end
- function rayCast(Pos, Dir, Max, Ignore) -- Origin Position , Direction, MaxDistance , IgnoreDescendants
- local ignore={Ignore,workspace.NoTarget,workspace.CurrentCamera}
- for _,v in pairs(workspace:children()) do
- if v:IsA("BasePart") or v.className=="UnionOperation" then
- if v.Name=="Effect" or v.Name=="Reference" or v.CanCollide==false then
- table.insert(ignore,v)
- end
- elseif v.className=="Model" then
- if v:FindFirstChild("Humanoid") then
- for _,c in pairs(v:children()) do
- if c.className=="Model" or c:IsA("Accoutrement") then
- table.insert(ignore,c)
- end
- end
- end
- end
- end
- return game:service("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(Pos, Dir.unit * (Max or 999.999)), ignore)
- end
- local Point=Torso.CFrame*cf(0,Torso.Size.Y,0)
- LastPoint=Point
- function effect(Color,Ref,LP,P1,returnn)
- if LP==nil or P1==nil then return end
- local effectsmsh=Instance.new("CylinderMesh")
- effectsmsh.Scale=Vector3.new(0.2,1,0.2)
- effectsmsh.Name="Mesh"
- local effectsg=Instance.new("Part")
- NoOutline(effectsg)
- effectsg.formFactor=3
- effectsg.CanCollide=false
- effectsg.Name="Eff"
- effectsg.Locked=true
- effectsg.Anchored=true
- effectsg.Size=Vector3.new(0.5,1,0.5)
- effectsg.Parent=workspace
- effectsmsh.Parent=effectsg
- effectsg.BrickColor=BrickColor.new(Color)
- effectsg.Reflectance=Ref
- local point1=P1
- local mg=(LP.p - point1.p).magnitude
- effectsg.Size=Vector3.new(0.5,mg,0.5)
- effectsg.CFrame=cf((LP.p+point1.p)/2,point1.p) * CFrame.Angles(math.rad(90),0,0)
- effectsmsh.Scale=Vector3.new(0.2,1,0.2)
- game:GetService("Debris"):AddItem(effectsg,2)
- if returnn then return effectsg end
- if not returnn then
- table.insert(Effects,{effectsg,"Cylinder",0.2,0.01,0,0.01,effectsmsh})
- end
- end
- local function CFrameFromTopBack(at, top, back)
- local right = top:Cross(back)
- return CFrame.new(at.x, at.y, at.z,
- right.x, top.x, back.x,
- right.y, top.y, back.y,
- right.z, top.z, back.z)
- end
- function Triangle(a, b, c)
- local edg1 = (c-a):Dot((b-a).unit)
- local edg2 = (a-b):Dot((c-b).unit)
- local edg3 = (b-c):Dot((a-c).unit)
- if edg1 <= (b-a).magnitude and edg1 >= 0 then
- a, b, c = a, b, c
- elseif edg2 <= (c-b).magnitude and edg2 >= 0 then
- a, b, c = b, c, a
- elseif edg3 <= (a-c).magnitude and edg3 >= 0 then
- a, b, c = c, a, b
- else
- assert(false, "unreachable")
- end
- local len1 = (c-a):Dot((b-a).unit)
- local len2 = (b-a).magnitude - len1
- local width = (a + (b-a).unit*len1 - c).magnitude
- local maincf = CFrameFromTopBack(a, (b-a):Cross(c-b).unit, -(b-a).unit)
- local list = {}
- if len1 > 0.01 then
- local w1 = Instance.new('WedgePart', m)
- game:GetService("Debris"):AddItem(w1,5)
- w1.Material = "SmoothPlastic"
- w1.FormFactor = 'Custom'
- w1.BrickColor = BrickColor.new("Medium blue")
- w1.Transparency = 0
- w1.Reflectance = 0
- w1.Material = "SmoothPlastic"
- w1.CanCollide = false
- NoOutline(w1)
- local sz = Vector3.new(0.2, width, len1)
- w1.Size = sz
- local sp = Instance.new("SpecialMesh",w1)
- sp.MeshType = "Wedge"
- sp.Scale = Vector3.new(0,1,1) * sz/w1.Size
- w1:BreakJoints()
- w1.Anchored = true
- w1.Parent = workspace
- w1.Transparency = 0.7
- table.insert(Effects,{w1,"Disappear",.05})
- w1.CFrame = maincf*CFrame.Angles(math.pi,0,math.pi/2)*CFrame.new(0,width/2,len1/2)
- table.insert(list,w1)
- end
- if len2 > 0.01 then
- local w2 = Instance.new('WedgePart', m)
- game:GetService("Debris"):AddItem(w2,5)
- w2.Material = "SmoothPlastic"
- w2.FormFactor = 'Custom'
- w2.BrickColor = BrickColor.new("Medium blue")
- w2.Transparency = 0
- w2.Reflectance = 0
- w2.Material = "SmoothPlastic"
- w2.CanCollide = false
- NoOutline(w2)
- local sz = Vector3.new(0.2, width, len2)
- w2.Size = sz
- local sp = Instance.new("SpecialMesh",w2)
- sp.MeshType = "Wedge"
- sp.Scale = Vector3.new(0,1,1) * sz/w2.Size
- w2:BreakJoints()
- w2.Anchored = true
- w2.Parent = workspace
- w2.Transparency = 0.7
- table.insert(Effects,{w2,"Disappear",.05})
- w2.CFrame = maincf*CFrame.Angles(math.pi,math.pi,-math.pi/2)*CFrame.new(0,width/2,-len1 - len2/2)
- table.insert(list,w2)
- end
- return unpack(list)
- end
- function MagicBlock(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay,Type,parent,prt2)
- local prt=part(3,parent,0,0,brickcolor,"Effect",vt(0.2,0.2,0.2))
- local wld=nil
- prt.CFrame=cframe
- prt.Anchored=true
- --[[if Type~=3 then
- prt.Anchored=true
- else
- prt.Anchored=false
- wld=weld(prt,prt,prt2,cframe)
- end]]
- msh=mesh("BlockMesh",prt,"","",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,10)
- if Type==1 or Type==nil then
- table.insert(Effects,{prt,"Block1",delay,x3,y3,z3,msh})
- elseif Type==2 then
- table.insert(Effects,{prt,"Block2",delay,x3,y3,z3,msh})
- end
- end
- function MagicCircle(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay,Type,parent,prt2)
- local prt=part(3,parent,0,0,brickcolor,"Effect",vt(0.2,0.2,0.2))
- local wld=nil
- prt.CFrame=cframe
- prt.Anchored=true
- --[[if Type~=3 then
- prt.Anchored=true
- else
- prt.Anchored=false
- wld=weld(prt,prt,prt2,cframe)
- end]]
- local msh=mesh("SpecialMesh",prt,"Sphere","nil",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,10)
- table.insert(Effects,{prt,"Cylinder",delay,x3,y3,z3,msh})
- end
- function MagicCircle2(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay,push)
- local prt=part(3,effects,0,0,brickcolor,"Effect",vt(0.2,0.2,0.2))
- prt.Material="Neon"
- prt.Anchored=true
- prt.CFrame=cframe
- local msh=mesh("SpecialMesh",prt,"Sphere","nil",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,10)
- table.insert(Effects,{prt,"Blood",delay,x3,y3,z3,msh,push})
- end
- function MagicCircle3(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay,Type,parent,prt2)
- local prt=part(3,parent,0,0,brickcolor,"Effect",vt(0.2,0.2,0.2))
- local wld=nil
- prt.CFrame=cframe
- prt.Anchored=true
- local msh=mesh("SpecialMesh",prt,"Sphere","nil",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,10)
- table.insert(Effects,{prt,"Cylinder2",delay,x3,y3,z3,msh})
- end
- function MagicRing(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay)
- local prt=part(3,workspace,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.CFrame=cframe*cf(x2,y2,z2)
- local msh=mesh("SpecialMesh",prt,"FileMesh","3270017",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,10)
- table.insert(Effects,{prt,"Cylinder",delay,x3,y3,z3,msh})
- end
- function MagicCylinder(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay)
- local prt=part(3,workspace,0,0,brickcolor,"Effect",vt(0.2,0.2,0.2))
- prt.Anchored=true
- prt.CFrame=cframe
- local msh=mesh("CylinderMesh",prt,"","",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,10)
- table.insert(Effects,{prt,"Cylinder",delay,x3,y3,z3,msh})
- end
- function MagicFire(brickcolor,cframe,x1,y1,z1,x2,y2,z2,delay,rise)
- local prt=part(3,effects,0,0,brickcolor,"Effect",vt(0.2,0.2,0.2))
- prt.Anchored=true
- prt.CFrame=cframe
- msh=mesh("BlockMesh",prt,"","",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,10)
- table.insert(Effects,{prt,"Fire",delay,x2,y2,z2,msh,rise})
- end
- function MagicBlockC(brickcolor,cframe,cf2,x1,y1,z1,x3,y3,z3,delay,move,rise,inside)
- local prt=part(3,effects,0,.5,brickcolor,"Effect",vt(0.2,0.2,0.2))
- prt.Anchored=true
- prt.CFrame=cframe
- msh=mesh("BlockMesh",prt,"","",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,10)
- table.insert(Effects,{prt,"Block3",delay,x3,y3,z3,msh,cframe,cf2,euler(0,math.random(-50,50),0),math.random(1,2),move,rise,inside})
- end
- function ClangEffect(brickcolor,cframe,duration,decrease,size,power)
- local prt=part(3,workspace,0,1,brickcolor,"Effect",vt(0.2,0.2,0.2))
- prt.Anchored=true
- prt.CFrame=cframe
- local msh=mesh("BlockMesh",prt,"","",vt(0,0,0),vt(5,5,5))
- game:GetService("Debris"):AddItem(prt,10)
- table.insert(Effects,{prt,"CylinderClang",duration,decrease,size,power,prt.CFrame,nil})
- end
- function MagicWave(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay)
- local prt=part(3,workspace,0,0,brickcolor,"Effect",vt(0.2,0.2,0.2))
- prt.Anchored=true
- prt.CFrame=cframe
- local msh=mesh("SpecialMesh",prt,"FileMesh","20329976",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,10)
- table.insert(Effects,{prt,"Cylinder",delay,x3,y3,z3,msh})
- end
- function MagicSpecial(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay)
- local prt=part(3,workspace,0,0,brickcolor,"Effect",vt(0.2,0.2,0.2))
- prt.Anchored=true
- prt.CFrame=cframe
- local msh=mesh("SpecialMesh",prt,"FileMesh","24388358",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,10)
- table.insert(Effects,{prt,"Cylinder",delay,x3,y3,z3,msh})
- end
- function BreakEffect(brickcolor,cframe,x1,y1,z1)
- local prt=part(3,workspace,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.CFrame=cframe*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))
- local msh=mesh("SpecialMesh",prt,"Sphere","nil",vt(0,0,0),vt(x1,y1,z1))
- local num=math.random(10,50)/1000
- game:GetService("Debris"):AddItem(prt,10)
- table.insert(Effects,{prt,"Shatter",num,prt.CFrame,math.random()-math.random(),0,math.random(50,100)/100})
- end
- Damagefunc=function(hit,minim,maxim,knockback,Type,Property,Delay,KnockbackType,incstun,stagger,staghit,ranged,DecreaseState,DecreaseAmount,Duration,Sound,hittedd)
- if hit.Parent==nil then
- return
- end
- if hit.Name=="Hitbox" and hit.Parent~=modelzorz and ranged~=true then
- ref=part(3,workspace,0,1,BrickColor.new("Black"),"Reference",vt(0.2,0.2,0.2))
- ref.Anchored=true
- ref.CFrame=cf(hit.Position)
- game:GetService("Debris"):AddItem(ref,1)
- hitnum=math.random(1,5)
- if hitnum==1 then so("199148971",ref,1,1)
- elseif hitnum==2 then so("199149025",ref,1,1)
- elseif hitnum==3 then so("199149072",ref,1,1)
- elseif hitnum==4 then so("199149109",ref,1,1)
- elseif hitnum==5 then so("199149119",ref,1,1)
- end
- --
- end
- h=hit.Parent:FindFirstChild("Humanoid")
- if hit.Parent:findFirstChild("Spirit")~=nil then
- h=hit.Parent.Spirit
- end
- if h~=nil and hit.Parent.Name~=Character.Name and hit.Parent:FindFirstChild("Torso")~=nil then
- if hit.Parent:findFirstChild("DebounceHit")~=nil then if hit.Parent.DebounceHit.Value==true then return end end
- --[[if Player.Neutral==false and game.Players:GetPlayerFromCharacter(hit.Parent)~=nil then
- if game.Players:GetPlayerFromCharacter(hit.Parent).TeamColor==Player.TeamColor then return end
- end]]
- if Player.Neutral==false then
- if hit.Parent:findFirstChild("Alignment")~=nil then
- if hit.Parent.Alignment.Value==Player.TeamColor.Color then return end
- end
- if game.Players:GetPlayerFromCharacter(hit.Parent)~=nil then
- if game.Players:GetPlayerFromCharacter(hit.Parent).TeamColor==Player.TeamColor then return end
- end
- end
- if Sound=="Impact" then
- so("200632875",hit,1,1)
- end
- hitted=true
- if Sound=="Shatter" then
- so("199146069",hit,1,1)
- end
- c=Instance.new("ObjectValue")
- c.Name="creator"
- c.Value=game:service("Players").LocalPlayer
- c.Parent=h
- if hittedd==nil then
- RecentEnemy.Value=hit.Parent
- end
- if ghostmode==true then
- PhantomEnemy.Value=hit.Parent
- end
- game:GetService("Debris"):AddItem(c,.5)
- Damage=(maxim*10 + math.floor(math.random(-maxim,maxim)/2))*Atk.Value
- if hittedd~=nil then
- hittedd.Value=true
- ref=part(3,workspace,0,1,BrickColor.new("Black"),"Reference",vt(0.2,0.2,0.2))
- ref.Anchored=true
- ref.CFrame=hit.CFrame
- mana.Value=mana.Value+2
- game:GetService("Debris"):AddItem(ref,1)
- so("315748970",ref,.8,1)
- end
- blocked=false
- enblock=nil
- Stats=hit.Parent:findFirstChild("Stats")
- if Stats~=nil then
- if cataclysm==true then
- dec=Stats:findFirstChild("Decrease")
- if dec~=nil then
- for _,c in pairs(dec:children()) do
- if c.className=="NumberValue" then
- if c.Value<0 and c:findFirstChild("Duration")~=nil then
- c.Parent=nil
- end
- end
- end
- end
- end
- invis=Stats:findFirstChild("Invisibility")
- isinvis=Stats:findFirstChild("IsInvisible")
- if (ranged==false or ranged==nil) and invis~=nil and isinvis.Value==true then
- invis.Value=0
- end
- enblock=Stats:findFirstChild("Block")
- if enblock~=nil then
- if enblock.Value==true then
- blocked=true
- end
- end
- if Stats:findFirstChild("Defense")~=nil then
- local ignoredef=false
- if ghostmode==true then
- local col=nil
- if game.Players:GetPlayerFromCharacter(hit.Parent) then
- col=game.Players:GetPlayerFromCharacter(hit.Parent).TeamColor
- end
- if col then
- for _,c in pairs(game.Teams:children()) do
- if c.TeamColor==col and c.Name=="Juggernaut" then
- ignoredef=false
- else
- ignoredef=true
- end
- end
- end
- end
- if Stats:findFirstChild("Boss")~=nil then
- if Stats.Boss.Value==true then
- ignoredef=false
- end
- end
- if ignoredef==false then
- Damage=Damage/(Stats.Defense.Value)
- else
- local newdef=(Stats.Defense.Value)
- if Stats.Defense.Value>1 then
- newdef=((Stats.Defense.Value-1)/2)+1
- end
- Damage=Damage/newdef
- end
- if Damage<=30 and (ranged==false or ranged==nil) and blocked~=true then
- hitnum=math.random(1,5)
- if hitnum==1 then so("199149321",hit,1,1)
- elseif hitnum==2 then so("199149338",hit,1,1)
- elseif hitnum==3 then so("199149367",hit,1,1)
- elseif hitnum==4 then so("199149409",hit,1,1)
- elseif hitnum==5 then so("199149452",hit,1,1)
- end
- elseif ranged==false or ranged==nil and blocked~=true then
- hitnum=math.random(1,6)
- if hitnum==1 then so("199149137",hit,1,1)
- elseif hitnum==2 then so("199149186",hit,1,1)
- elseif hitnum==3 then so("199149221",hit,1,1)
- elseif hitnum==4 then so("199149235",hit,1,1)
- elseif hitnum==5 then so("199149269",hit,1,1)
- elseif hitnum==6 then so("199149297",hit,1,1)
- end
- end
- if Damage<=30 and staghit==true then
- --
- end
- end
- workspace.stunFunc:FireServer(hit.Parent,incstun,blocked)
- if Stats:findFirstChild("Stagger")~=nil then
- if stagger==true then
- Stats.Stagger.Value=true
- end
- end
- end
- if blocked==true then
- workspace.damguiFunc:Fire(hit.Parent,"Block","Damage")
- if ranged~=true then
- enblock.Value=false
- Stagger.Value=true
- hitnum=math.random(1,2)
- if hitnum==1 then so("199148933",hit,1,1)
- elseif hitnum==2 then so("199148947",hit,1,1)
- end
- end
- else
- coroutine.resume(coroutine.create(function(Hum,Dam)
- CurrentHealth=Hum.Health
- damageFunc:Invoke(h,Damage/10)
- end),h,Damage)
- if ghostmode==true then
- if hit.Parent:FindFirstChild("Humanoid") then
- tehpart=hit.Parent.Torso
- elseif hit.Parent.Name=="Neflhelm" then
- tehpart=hit
- end
- if hit.Parent~=marked then
- if marked then
- if marked:FindFirstChild("Torso") then
- PlayerGui:FindFirstChild("Mark Gui"):Destroy()
- end
- end
- markgui=it("BillboardGui")
- markgui.Parent=PlayerGui
- markgui.Adornee=tehpart
- markgui.Name="Mark Gui"
- markgui.Size=UDim2.new(7,0,7,0)
- markgui.StudsOffset=vt(0,5,0)
- markgui.AlwaysOnTop=true
- markspk=it("ImageLabel")
- markspk.Parent=markgui
- markspk.Name="Phantom Mark"
- markspk.BackgroundTransparency=1
- markspk.Image="rbxassetid://465578157"
- markspk.ImageColor3=Color3.new(255/255,255/255,255/255)
- markspk.Size=UDim2.new(1,0,1,0)
- marked=hit.Parent
- end
- end
- if hittedd~=nil then
- hittedd.Value=true
- if h~=nil and ghostmode==true then
- h.Jump=true
- end
- end
- if ghostmode==false and (ranged==false or ranged==nil) then
- mana.Value=math.floor(mana.Value+(Damage/20))
- end
- workspace.damguiFunc:Fire(hit.Parent,Damage,"Damage")
- if DecreaseState~=nil then
- if DecreaseState=="Shatter" then
- DecreaseStat(hit.Parent,"Movement",DecreaseAmount,Duration)
- DecreaseStat(hit.Parent,"Damage",DecreaseAmount,Duration)
- else
- DecreaseStat(hit.Parent,DecreaseState,DecreaseAmount,Duration)
- end
- end
- if Type=="Knockdown" then
- hum=hit.Parent.Humanoid
- hum.PlatformStand=true
- coroutine.resume(coroutine.create(function(HHumanoid)
- swait(1)
- HHumanoid.PlatformStand=false
- end),hum)
- local angle=(hit.Position-(Property.Position+Vector3.new(0,0,0))).unit
- workspace.kbFunc:FireServer(hit,angle*knockback)
- elseif Type=="Shatter" then
- for i=1,10 do
- BreakEffect(BrickColor.new("Cyan"),hit.CFrame,math.random(20,80)/100,math.random(2,10),math.random(20,80)/100)
- end
- elseif Type=="Knockdown2" then
- hum=h
- local angle=(hit.Position-(Property.Position+Vector3.new(0,0,0))).unit
- workspace.kbFunc:FireServer(hit,angle*knockback)
- elseif Type=="Normal" then
- local vp
- if KnockbackType==1 then
- vp=Property.CFrame.lookVector*knockback
- elseif KnockbackType==2 then
- vp=Property.CFrame.lookVector*knockback
- end
- workspace.kbFunc:FireServer(hit,vp)
- end
- end
- debounce=Instance.new("BoolValue")
- debounce.Name="DebounceHit"
- debounce.Parent=hit.Parent
- debounce.Value=true
- game:GetService("Debris"):AddItem(debounce,Delay)
- if painbring==true and painboom>=10 then
- painboom=0
- MagicBlock(BrickColor.new("Medium stone grey"),cf(prt6.Position)*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50)),1,1,1,5,5,5,.05,1,workspace)
- MagicBlock(BrickColor.new("Medium stone grey"),cf(prt6.Position)*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50)),1,1,1,3,3,3,.05,1,workspace)
- MagniDamage(prt6,10,0,5,8,"Knockdown2",RootPart,0,1,9,nil,nil,true)
- end
- c=Instance.new("ObjectValue")
- c.Name="creator"
- c.Value=Player
- c.Parent=h
- game:GetService("Debris"):AddItem(c,.5)
- CRIT=false
- end
- end
- showDamage=function(Char,Dealt,Type)
- m=Instance.new("Model")
- m.Name="Effect"
- c=Instance.new("Part")
- c.Transparency=1
- c.Name="Head"
- c.TopSurface=0
- c.BottomSurface=0
- c.formFactor="Plate"
- c.Size=Vector3.new(1,.4,1)
- b=Instance.new("BillboardGui",c)
- b.Size=UDim2.new(5,0,5,0)
- b.AlwaysOnTop=true
- if type(Dealt)=="number" then
- Dealt=math.floor(Dealt)
- end
- damgui=gui("TextLabel",b,tostring(Dealt),1,Color3.new(0,0,0),UDim2.new(0,0,0,0),UDim2.new(1,0,1,0))
- if Type=="Damage" then
- damgui.Font="SourceSans"
- if Dealt=="Block" then
- damgui.TextColor3=BrickColor.new("Bright blue").Color
- elseif Dealt<30 then
- damgui.TextColor3=BrickColor.new("White").Color
- elseif Dealt>=30 and Dealt<200 then
- damgui.TextColor3=BrickColor.new("Bright yellow").Color
- else
- damgui.TextColor3=BrickColor.new("Really red").Color
- damgui.Font="SourceSansBold"
- end
- elseif Type=="Debuff" then
- damgui.TextColor3=BrickColor.new("White").Color
- elseif Type=="Interrupt" then
- damgui.TextColor3=BrickColor.new("New Yeller").Color
- elseif Type=="Heal" then
- damgui.TextColor3=BrickColor.new("Bright green").Color
- end
- --damgui.FontSize="Size48"
- damgui.TextScaled=true
- ms=Instance.new("CylinderMesh")
- ms.Scale=Vector3.new(.8,.8,.8)
- ms.Parent=c
- c.Reflectance=0
- Instance.new("BodyGyro").Parent=c
- c.Parent=m
- if Char:findFirstChild("Head")~=nil then
- c.CFrame=cf(Char["Head"].CFrame.p+Vector3.new(math.random(-100,100)/100,3,math.random(-100,100)/100))
- elseif Char.Parent:findFirstChild("Head")~=nil then
- c.CFrame=cf(Char.Parent["Head"].CFrame.p+Vector3.new(math.random(-100,100)/100,3,math.random(-100,100)/100))
- end
- f=Instance.new("BodyPosition")
- f.P=2000
- f.D=100
- f.maxForce=Vector3.new(545000,545000,545000)
- if Type=="Damage" or Type=="Heal" then
- f.position=c.Position+Vector3.new(0,3,0)
- elseif Type=="Debuff" or Type=="Interrupt" then
- f.position=c.Position+Vector3.new(0,5,0)
- end
- f.Parent=c
- game:GetService("Debris"):AddItem(m,5)
- table.insert(Effects,{m,"showDamage",damgui,f,10,1,15,50,100})
- c.CanCollide=false
- m.Parent=workspace
- c.CanCollide=false
- end
- combo=0
- function ob1d(mouse)
- if attack==true or equipped==false or Stunned.Value==true or Stagger.Value==true or Unstable.Value==true or Suppressed.Value==true then return end
- hold=true
- if combo==0 then
- combo=1
- attackone()
- elseif combo==1 then
- combo=2
- attacktwo()
- elseif combo==2 then
- combo=3
- attackthree()
- elseif combo==3 then
- combo=0
- attackfour()
- end
- coroutine.resume(coroutine.create(function()
- for i=1,50 do
- if attack==false then
- swait()
- end
- end
- if attack==false then
- combo=0
- end
- end))
- end
- function ob1u(mouse)
- hold = false
- end
- buttonhold = false
- eul=0
- equipped=false
- function key(key)
- if attack==true then return end
- if key=="f" and ghostmode==false then
- pressedf=true
- fnumb=0
- attack=true
- if equipped==false then
- --equipped=true
- RSH=ch.Torso["Right Shoulder"]
- LSH=ch.Torso["Left Shoulder"]
- --
- RSH.Parent=nil
- LSH.Parent=nil
- --
- RW.Name="Right Shoulder"
- RW.Part0=ch.Torso
- RW.C0=cf(1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.3, 0, -0.5)
- RW.C1=cf(0, 0.5, 0)
- RW.Part1=ch["Right Arm"]
- RW.Parent=ch.Torso
- --
- LW.Name="Left Shoulder"
- LW.Part0=ch.Torso
- LW.C0=cf(-1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.7, 0, 0.8)
- LW.C1=cf(0, 0.5, 0)
- LW.Part1=ch["Left Arm"]
- LW.Parent=ch.Torso
- --
- animate.Disabled=true
- local anime=Humanoid:LoadAnimation(animate.idle.Animation1)
- anime:Play()
- equipanim()
- else
- equipped=false
- hideanim()
- LH.C1=LHC1
- RH.C1=RHC1
- animate.Disabled=false
- swait(0)
- RW.Parent=nil
- LW.Parent=nil
- RSH.Parent=player.Character.Torso
- LSH.Parent=player.Character.Torso
- end
- attack=false
- end
- if equipped==false then return end
- cane=true
- maxmana=30
- if ominField~=nil then
- maxmana=15
- end
- if ghostmode==false and mana.Value<=maxmana then
- cane=false
- end
- if key=="e" and cane==true and canGhost then
- canGhost = false
- delay(0.5, function()
- canGhost = true
- end)
- if ghostmode==true then
- attack=true
- local dec=Instance.new("NumberValue")
- if clone:findFirstChild("Stats")~=nil then
- if clone.Stats:findFirstChild("Decrease")~=nil then
- dec.Parent=clone.Stats.Decrease
- dec.Name="DecreaseMvmt"
- dec.Value=10
- end
- end
- for i=0,1,0.1 do
- swait()
- Neck.C0=clerp(Neck.C0,necko*euler(-.1,0,0),.3)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-1.5)*euler(.4,0,0),.3)
- RW.C0=clerp(RW.C0,cf(1.4,0.5,0)*euler(.6,0,.1),.3)
- RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
- LW.C0=clerp(LW.C0,cf(-1.4,0.5,0)*euler(.6,0,-.1),.3)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
- RH.C0=clerp(RH.C0,cf(1,-.6,-.4)*euler(0,1.57,-.8)*euler(-.2,0,0),.3)
- LH.C0=clerp(LH.C0,cf(-1,.4,-.5)*euler(0,-1.57,-.2),.3)
- end
- dec.Parent=nil
- attack=false
- end
- Spectre()
- if ghostmode==true then
- drainmana=true
- else
- drainmana=false
- end
- if ghostmode==true and ominField==nil then
- Torso.Velocity=RootPart.CFrame.lookVector*60
- end
- end
- if key=="z" then
- do1()
- end
- if key=="x" then
- do2()
- end
- if key=="c" then
- do3()
- end
- if key=="v" then
- do4()
- end
- end
- function key2(key)
- if key=="c" then
- if holdc==true then
- holdc=false
- end
- end
- end
- function ds(mouse)
- end
- mouse.KeyDown:Connect(function(k)
- key(k)
- end)
- mouse.Button1Down:Connect(function()
- ob1d()
- end)
- mouse.Button1Up:Connect(function()
- ob1u()
- end)
- mouse.KeyUp:Connect(function(k)
- key2(k)
- end)
- player=Player
- ch=Character
- --print("Spectre loaded.")
- local mananum=0
- local blocknum2=0
- local donum=0
- local stunnum=0
- local staggeranim=false
- local stunanim=false
- local Point=nil
- local LastPoint=nil
- local floornum=0
- local idleheal=0
- --cooldowns[4]
- local walk=0
- local walkforw=true
- local copymove=0
- local sRJCF=it("Weld",spectral)
- local sLWCF=it("Weld",spectral)
- local sRWCF=it("Weld",spectral)
- local sRHCF=it("Weld",spectral)
- local sLHCF=it("Weld",spectral)
- local ominef=0
- local drainmana2=0
- local spectreef=0
- kscri=workspace:WaitForChild("GameScript"):WaitForChild("timerHandler"):clone()
- kscri.Parent=Stats
- kscri.Disabled=false
- while true do
- swait()
- if Unstable.Value==true and unst == false then
- if Stun.Value<StunT.Value and Stagger.Value==false and Stunned.Value==false then
- coroutine.resume(coroutine.create(function()
- unst=true
- while attack==true do
- swait()
- end
- UnstableAnim()
- unst=false
- end))
- else
- Unstable.Value=false
- UnstableTime.Value=0
- end
- end
- if Stagger.Value==true and staggeranim==false then
- if Stunned.Value == false and Stun.Value<StunT.Value and Suppressed.Value==false then
- coroutine.resume(coroutine.create(function()
- staggeranim=true
- while attack==true do
- swait()
- end
- StaggerAnim()
- StaggerHit.Value=false
- Stagger.Value=false
- staggeranim=false
- end))
- else
- Stagger.Value=false
- end
- end
- if Stun.Value>=StunT.Value and stunanim==false then
- if Suppressed.Value==false then
- coroutine.resume(coroutine.create(function()
- stunanim=true
- while attack==true do
- swait()
- end
- StunAnim()
- Stagger.Value=false
- Stun.Value=0
- stunanim=false
- end))
- else
- Stunned.Value=false
- Stun.Value=StunT-1
- end
- end
- if TimeLocked.Value == true then
- if Suppressed.Value == false then
- if tlock == false then
- tlock = true
- coroutine.resume(coroutine.create(TimeLock))
- end
- else
- TimeLocked.Value=false
- TimeLocked.Timer.Value=0
- end
- end
- if Suppressed.Value==true then
- if suppress == false then
- coroutine.resume(coroutine.create(function()
- suppress=true
- while attack==true do
- swait()
- end
- SuppressedAnim()
- suppress=false
- end))
- end
- end
- if Mvmt.Value<0 or Stagger.Value==true or Stun.Value>=StunT.Value or StaggerHit.Value==true or Rooted.Value==true or TimeLocked.Value==true or Suppressed.Value==true or Unstable.Value==true then
- Humanoid.WalkSpeed=0
- else
- Humanoid.WalkSpeed=16*Mvmt.Value
- end
- script.GhostMode.Value = ghostmode
- if Humanoid.Health>0 then
- effects.Parent=workspace.NoTarget
- else
- if imded==nil then
- imded="shoutoutstosimpleflips"
- game:GetService("Debris"):AddItem(effects,4.5)
- end
- end
- drainmana2=drainmana2+1
- if drainmana==true then
- drainmax=4
- if ominField~=nil then
- drainmax=4
- end
- if drainmana2%drainmax==0 then
- mana.Value=mana.Value-1
- if mana.Value<=0 and ghostmode==true and attack==false then
- drainmana=false
- Spectre()
- DecreaseStat(Character,"Movement",.2,100)
- end
- end
- end
- if Humanoid.Health<=0 then
- spectral.Parent=nil
- if clone~=nil then game:GetService("Debris"):AddItem(clone,5) end
- spectral.Parent=nil
- attack=true
- resumeControl()
- modelzorz.Parent=workspace
- game:GetService("Debris"):AddItem(modelzorz,30)
- for i=1,#Weapon do
- Weapon[i].Parent=modelzorz
- Weapon[i].CanCollide=true
- end
- for i=1,#Welds do
- if Welds[i].Part0.Parent==Character or Welds[i].Part1.Parent==Character then
- Welds[i].Parent=nil
- else
- Welds[i].Parent=prt1
- end
- end
- end
- ominef=ominef+1
- if ominField~=nil then
- hitfloor,posfloor=rayCast(ominField+vt(0,1,0),(CFrame.new(ominField+vt(0,1,0),ominField - Vector3.new(0,1,0))).lookVector,100,effects)
- ominField=posfloor
- if ominup==false then
- MagicBlockC(BrickColor.new(NewCol),cf(ominField),cf(math.random(1500,2000)/100,0,0),10,10,10,-.8,-.8,-.8,.1,math.random(2,20)/100,math.random(60,140)/100,-math.random(100,200)/100)
- else
- MagicBlockC(BrickColor.new(NewCol),cf(ominField),cf(math.random(1500,2000)/100,0,0),20,20,20,-3,-3,-3,.15,math.random(4,25)/100,math.random(300,400)/100,-2)
- end
- if ominef%3==0 then
- MagicCircle(BrickColor.new(NewCol),cf(ominField)*euler(0,math.random(-50,50),0),100,20,80,10,-1,5,.1,1,effects)
- end
- if ominef%50==0 then
- ref=part(3,workspace,0,1,BrickColor.new("Black"),"Reference",vt(0.2,0.2,0.2))
- ref.Anchored=true
- ref.CFrame=cf(ominField)
- game:GetService("Debris"):AddItem(ref,1)
- MagniBuff(ref,20,"Damage",-.05,100)
- ref.Parent=nil
- end
- if cooldowns[2]>=99 then
- ominField=nil
- end
- end
- if bladetype=="None" then
- for _,c in pairs(modelzorz:children()) do
- if c.className=="Part" and (c.Name=="Part24" or c.Name=="Part25" or c.Name=="Part26") then
- if c.Transparency<1 then
- c.Transparency=c.Transparency+.05
- end
- end
- end
- elseif bladetype=="Stable" then
- for _,c in pairs(modelzorz:children()) do
- if c.className=="Part" and (c.Name=="Part24" or c.Name=="Part25" or c.Name=="Part26") then
- if c.Transparency>.4 then
- c.Transparency=c.Transparency-.05
- end
- end
- end
- elseif bladetype=="Mana" then
- for _,c in pairs(modelzorz:children()) do
- if c.className=="Part" and (c.Name=="Part24" or c.Name=="Part25" or c.Name=="Part26") then
- val=(20/mana.Value)
- if val<=.4 then
- val=.4
- end
- if c.Transparency>val then
- c.Transparency=c.Transparency-.02
- elseif c.Transparency<val then
- c.Transparency=c.Transparency+.02
- end
- end
- end
- end
- if ghostmode==false then
- for _,c in pairs(modelzorz2:children()) do
- if c.className=="Part" then
- if c.Transparency<1 then
- c.Transparency=c.Transparency+.1
- end
- end
- end
- else
- if clone~=nil then
- if clone:findFirstChild("Humanoid")~=nil then
- if Humanoid.Health<=clone.Humanoid.Health then
- clone.Humanoid.Health=Humanoid.Health
- end
- Humanoid.Health=clone.Humanoid.Health
- end
- end
- hwld.C0=clerp(hwld.C0,euler(1.57,0,0)*cf(0,1,0),.3)
- wld1.C0=clerp(wld1.C0,euler(0,-1.57+.8,0)*euler(-.2,0,.2)*cf(0,0,0),.3)
- if cNeck~=nil then cNeck.C0=clerp(cNeck.C0,necko*euler(.3,0,0)*euler(0,0,0),.3) end
- if cRootJoint~=nil then cRootJoint.C0=clerp(cRootJoint.C0,RootCF*cf(0,0,-1.4)*euler(0,0,0),.3) end
- if cRW~=nil then cRW.C0=clerp(cRW.C0,cf(1,0.8,-.5)*euler(2,0,-.8)*euler(0,3.14,0),.3) end
- if cLW~=nil then cLW.C0=clerp(cLW.C0,cf(-1,0.8,-.5)*euler(2,0,.8)*euler(0,3.14,0),.3) end
- if cRH~=nil then cRH.C0=clerp(cRH.C0,cf(1,-.8,-.8)*euler(0,1.57,0)*euler(0,0,0)*euler(0,0,-1.4),.3) cRH.C1=clerp(cRH.C1,RHC1*cf(0,0,0)*euler(0,0,0),.3) end
- if cLH~=nil then cLH.C0=clerp(cLH.C0,cf(-1,.2,-.8)*euler(0,-1.57,0)*euler(0,0,0)*euler(0,0,.2),.3) cLH.C1=clerp(cLH.C1,LHC1*cf(0,0,0)*euler(0,0,0),.3) end
- for _,c in pairs(modelzorz2:children()) do
- if c.className=="Part" then
- if c.Transparency>.2 then
- c.Transparency=c.Transparency-.05
- end
- end
- end
- end
- if equipped==false then
- for _,c in pairs(spectral:children()) do
- if c.className=="Part" then
- if c.Transparency<1 then
- c.Transparency=c.Transparency+.05
- end
- end
- end
- end
- if ghostmode==true then
- copymove=0
- spectreef=spectreef+1
- if clone:findFirstChild("HumanoidRootPart")~=nil then
- if spectreef%3==0 then
- MagicBlockC(BrickColor.new(NewCol),cf(clone.HumanoidRootPart.Position)*cf(0,-2,0),cf(math.random(200,700)/100,0,0),3,3,3,-.2,-.2,-.2,.05,.02,math.random(30,90)/100,-math.random(20,50)/100)
- MagicBlockC(BrickColor.new(NewCol),cf(RootPart.Position)*cf(0,-3,0),cf(math.random(50,100)/100,0,0),2,2,2,-.05,-.05,-.05,.05,.2,math.random(50,120)/100,math.random(40,70)/100)
- end
- end
- for i=1,#oldCFrames do
- table.remove(oldCFrames,1)
- end
- end
- copymove=copymove+1
- if copymove>=10 then
- sRootPart.CFrame=oldCFrames[1][1]
- sNeck.C0=oldCFrames[1][2]
- sRootJoint.C0=oldCFrames[1][3]
- sLW.C0=oldCFrames[1][4]
- sRW.C0=oldCFrames[1][5]
- sLH.C0=oldCFrames[1][6]
- sRH.C0=oldCFrames[1][7]
- sLH.C1=oldCFrames[1][8]
- sRH.C1=oldCFrames[1][9]
- table.remove(oldCFrames,1)
- end
- if PhantomEnemy.Value==nil then
- doing4=false
- end
- if doing4==true then
- if PhantomEnemy.Value~=nil then
- if PhantomEnemy.Value:findFirstChild("HumanoidRootPart")~=nil then
- table.insert(oldCFrames,{PhantomPos,Neck.C0,sRJCF.C0,sLWCF.C0,sRWCF.C0,sLHCF.C0,sRHCF.C0,sLHCF.C1,sRHCF.C1})
- else
- table.insert(oldCFrames,{RootPart.CFrame,Neck.C0,sRJCF.C0,sLWCF.C0,sRWCF.C0,sLHCF.C0,sRHCF.C0,sLHCF.C1,sRHCF.C1})
- end
- end
- else
- table.insert(oldCFrames,{RootPart.CFrame,Neck.C0,sRJCF.C0,sLWCF.C0,sRWCF.C0,sLHCF.C0,sRHCF.C0,sLHCF.C1,sRHCF.C1})
- end
- if fnumb<21 then
- fnumb=fnumb+1
- if pressedf==false then
- fenframe5.BackgroundTransparency=fenframe5.BackgroundTransparency-.025
- tellbar.TextTransparency=tellbar.TextTransparency-.05
- tellbar.TextStrokeTransparency=tellbar.TextStrokeTransparency-.05
- else
- if fnumb==20 then
- fenframe5.Parent=nil
- --print("daigui")
- end
- fenframe5.BackgroundTransparency=fenframe5.BackgroundTransparency+.025
- tellbar.TextTransparency=tellbar.TextTransparency+.05
- tellbar.TextStrokeTransparency=tellbar.TextStrokeTransparency+.05
- end
- end
- if ghostmode==true then
- Stagger.Value=false
- StaggerHit.Value=false
- if Stun.Value>=StunT.Value then
- Stun.Value=99
- end
- end
- local stunnum2=20
- if TimeLocked.Value==false then
- if stunnum>=stunnum2 then
- if Stun.Value>0 then
- Stun.Value=Stun.Value-1
- end
- stunnum=0
- end
- end
- stunnum=stunnum+1
- if donum>=.5 then
- handidle=true
- elseif donum<=0 then
- handidle=false
- end
- if handidle==false then
- donum=donum+0.006
- else
- donum=donum-0.006
- end
- local torvel=(RootPart.Velocity*Vector3.new(1,0,1)).magnitude
- local velderp=RootPart.Velocity.y
- hitfloor,posfloor=rayCast(RootPart.Position,(CFrame.new(RootPart.Position,RootPart.Position - Vector3.new(0,1,0))).lookVector,4,Character)
- if equipped==true then
- if attack==false then
- idle=idle+1
- else
- idle=0
- end
- if TimeLocked.Value==false and Unstable.Value==false and Stagger.Value==false and Stunned.Value==false and Suppressed.Value==false then
- if Anim=="Walk" then
- if walkforw==true then
- RH.C1=clerp(RH.C1,RHC1*cf(.2,-.2,0)*euler(0,0,1),(Mvmt.Value*10)/50)
- LH.C1=clerp(LH.C1,LHC1*cf(.1,.2,0)*euler(0,0,1),(Mvmt.Value*10)/50)
- sRWCF.C0=clerp(sRWCF.C0,cf(1.5,0.5,0)*euler(1,0,0),(Mvmt.Value*10)/50)
- sLWCF.C0=clerp(sLWCF.C0,cf(-1.5,0.5,0)*euler(-1,0,0),(Mvmt.Value*10)/50)
- else
- sRWCF.C0=clerp(sRWCF.C0,cf(1.5,0.5,0)*euler(-1,0,0),(Mvmt.Value*10)/50)
- sLWCF.C0=clerp(sLWCF.C0,cf(-1.5,0.5,0)*euler(1,0,0),(Mvmt.Value*10)/50)
- RH.C1=clerp(RH.C1,RHC1*cf(-.1,.2,0)*euler(0,0,-1),(Mvmt.Value*10)/50)
- LH.C1=clerp(LH.C1,LHC1*cf(-.2,-.2,0)*euler(0,0,-1),(Mvmt.Value*10)/50)
- end
- else
- RH.C1=clerp(RH.C1,RHC1,.2)
- LH.C1=clerp(LH.C1,LHC1,.2)
- end
- if ghostmode==true then
- if equipped==true then
- for _,c in pairs(spectral:children()) do
- if c.className=="Part" and c.Name~="HumanoidRootPart" then
- if c.Transparency<1 then
- c.Transparency=c.Transparency+.05
- end
- end
- end
- end
- elseif Anim=="Idle" or attack==true then
- if equipped==true then
- for _,c in pairs(spectral:children()) do
- if c.className=="Part" and c.Name~="HumanoidRootPart" then
- nums=.9
- if doing4==true then
- nums=.5
- end
- if c.Transparency<nums then
- c.Transparency=c.Transparency+.02
- elseif c.Transparency>nums then
- c.Transparency=c.Transparency-.02
- end
- end
- end
- end
- else
- if equipped==true then
- for _,c in pairs(spectral:children()) do
- if c.className=="Part" and c.Name~="HumanoidRootPart" then
- if c.Transparency<.8 then
- c.Transparency=c.Transparency+.05
- elseif c.Transparency>.8 then
- c.Transparency=c.Transparency-.05
- end
- end
- end
- end
- end
- if RootPart.Velocity.y > 1 and hitfloor==nil then
- Anim="Jump"
- sRJCF.C0=clerp(sRJCF.C0,RootJoint.C0,.3)
- sRWCF.C0=clerp(sRWCF.C0,cf(1.5,0.5,0)*euler(0,0,1),.3)
- sLWCF.C0=clerp(sLWCF.C0,cf(-1.5,0.5,0)*euler(0,0,-1),.3)
- sRHCF.C0=clerp(sRHCF.C0,RH.C0,.3)
- sLHCF.C0=clerp(sLHCF.C0,LH.C0,.3)
- sRHCF.C1=clerp(sRHCF.C1,RH.C1,.3)
- sLHCF.C1=clerp(sLHCF.C1,LH.C1,.3)
- if attack==false then
- if ghostmode==false then
- Neck.C0=clerp(Neck.C0,necko*euler(-0.2,0,0),.2)
- Neck.C1=clerp(Neck.C1,necko2*euler(0,0,0),.2)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(-.2,0,0),.3)
- RW.C0=clerp(RW.C0,cf(1.4,0.5,.1)*euler(.3,0,.1)*euler(0,.8,0),.3)
- RW.C1=clerp(RW.C1,cf(0,0.5,0)*euler(0,0,0),.2)
- LW.C0=clerp(LW.C0,cf(-.4,0.4,-.5)*euler(.6,0,.8)*euler(0,-1.8,0),.3)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.2)
- RH.C0=clerp(RH.C0,cf(1,-1,-.3)*euler(-0.5,1.57,0)*euler(-.2,0,0),.2)
- LH.C0=clerp(LH.C0,cf(-1,-1,-.3)*euler(-0.5,-1.57,0)*euler(-.2,0,0),.2)
- else
- Neck.C0=clerp(Neck.C0,necko*euler(-0.2,0,0),.2)
- Neck.C1=clerp(Neck.C1,necko2*euler(0,0,0),.2)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(-.2,0,0),.3)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(-.6,0,.1)*euler(0,0,0),.3)
- RW.C1=clerp(RW.C1,cf(0,0.5,0)*euler(0,0,0),.2)
- LW.C0=clerp(LW.C0,cf(-1.5,0.4,0)*euler(-.6,0,-.1)*euler(0,0,0),.3)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.2)
- RH.C0=clerp(RH.C0,cf(1,-1,-.3)*euler(-0.5,1.57,0)*euler(-.2,0,0),.2)
- LH.C0=clerp(LH.C0,cf(-1,-1,-.3)*euler(-0.5,-1.57,0)*euler(-.2,0,0),.2)
- end
- end
- elseif RootPart.Velocity.y < -1 and hitfloor==nil then
- Anim="Fall"
- sRJCF.C0=clerp(sRJCF.C0,RootJoint.C0,.3)
- sRWCF.C0=clerp(sRWCF.C0,cf(1.5,0.5,0)*euler(0,0,1),.3)
- sLWCF.C0=clerp(sLWCF.C0,cf(-1.5,0.5,0)*euler(0,0,-1),.3)
- sRHCF.C0=clerp(sRHCF.C0,RH.C0,.3)
- sLHCF.C0=clerp(sLHCF.C0,LH.C0,.3)
- sRHCF.C1=clerp(sRHCF.C1,RH.C1,.3)
- sLHCF.C1=clerp(sLHCF.C1,LH.C1,.3)
- if attack==false then
- if ghostmode==false then
- Neck.C0=clerp(Neck.C0,necko*euler(0.4,0,0),.2)
- Neck.C1=clerp(Neck.C1,necko2*euler(0,0,0),.2)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(.2,0,0),.3)
- RW.C0=clerp(RW.C0,cf(1.4,0.5,.1)*euler(.3,0,.1)*euler(0,.8,0),.3)
- RW.C1=clerp(RW.C1,cf(0,0.5,0)*euler(0,0,0),.2)
- LW.C0=clerp(LW.C0,cf(-.4,0.4,-.5)*euler(.6,0,.8)*euler(0,-1.8,0),.3)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.2)
- RH.C0=clerp(RH.C0,cf(1,-1,0)*euler(0.4,1.57,0),.2)
- LH.C0=clerp(LH.C0,cf(-1,-1,0)*euler(-0.2,-1.57,0),.2)
- else
- Neck.C0=clerp(Neck.C0,necko*euler(0.4,0,0),.2)
- Neck.C1=clerp(Neck.C1,necko2*euler(0,0,0),.2)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*euler(.2,0,0),.3)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(.2,0,1)*euler(0,0,0),.3)
- RW.C1=clerp(RW.C1,cf(0,0.5,0)*euler(0,0,0),.2)
- LW.C0=clerp(LW.C0,cf(-1.5,0.4,0)*euler(.2,0,-1)*euler(0,0,0),.3)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.2)
- RH.C0=clerp(RH.C0,cf(1,-1,0)*euler(0.4,1.57,0),.2)
- LH.C0=clerp(LH.C0,cf(-1,-1,0)*euler(-0.2,-1.57,0),.2)
- end
- end
- elseif torvel<1 and hitfloor~=nil then
- Anim="Idle"
- sRJCF.C0=clerp(sRJCF.C0,RootJoint.C0,.2)
- sRWCF.C0=clerp(sRWCF.C0,RW.C0,.2)
- sLWCF.C0=clerp(sLWCF.C0,LW.C0,.2)
- sRHCF.C0=clerp(sRHCF.C0,RH.C0,.3)
- sLHCF.C0=clerp(sLHCF.C0,LH.C0,.3)
- sRHCF.C1=clerp(sRHCF.C1,RH.C1,.3)
- sLHCF.C1=clerp(sLHCF.C1,LH.C1,.3)
- if attack==false then
- if ghostmode==false then
- hwld.C0=clerp(hwld.C0,euler(1.57,0,0)*cf(0,1,0),.3)
- wld1.C0=clerp(wld1.C0,euler(0,-1.57,0)*cf(0,-.3,0),.3)
- Neck.C0=clerp(Neck.C0,necko*euler(.1,0,0)*euler(0,0,.5),.2)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.2)*euler(0,0,-.5),.2)
- RW.C0=clerp(RW.C0,cf(1,0.5,-.3)*euler(1+(donum/4),0,-.1-(donum/4))*euler(0,.4,0),.2)
- RW.C1=clerp(RW.C1,cf(0,0.5,0)*euler(0,0,0),.2)
- LW.C0=clerp(LW.C0,cf(-.4,0.5,-.5)*euler(1.4+(donum/4),0,.6-(donum/4))*euler(0,.2,0),.2)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.2)
- RH.C0=clerp(RH.C0,cf(1,-.9,0)*euler(0,1.57,0)*euler(0,0,0)*euler(-.2,0,-.2),.2)
- LH.C0=clerp(LH.C0,cf(-1.1,-.8,.1)*euler(0,-1.57,0)*euler(0,.5,0)*euler(0,0,.1),.2)
- else --gost on
- Neck.C0=clerp(Neck.C0,necko*euler(.2,0,0)*euler(0,0,0),.2)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.5)*euler(.2,0,0),.2)
- RW.C0=clerp(RW.C0,cf(1.4,0.5,.2)*euler(1.4+(donum/4),0,.2+(donum/4))*euler(0,1,0),.2)
- RW.C1=clerp(RW.C1,cf(0,0.5,0)*euler(0,0,0),.2)
- LW.C0=clerp(LW.C0,cf(-1.4,0.5,.2)*euler(1.4+(donum/4),0,-.2-(donum/4))*euler(0,-1,0),.2)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.2)
- RH.C0=clerp(RH.C0,cf(1,-.4,-.6)*euler(0,1.57,0)*euler(0,0,0)*euler(-.1,0,.25),.2)
- LH.C0=clerp(LH.C0,cf(-1,-.8,-.4)*euler(0,-1.57,0)*euler(0,0,0)*euler(0,0,.5),.2)
- end
- end
- elseif torvel>2 and torvel<30 and hitfloor~=nil then
- Anim="Walk"
- walk=walk+1
- if walk>=15-(5*Mvmt.Value) then
- walk=0
- if walkforw==true then
- walkforw=false
- elseif walkforw==false then
- walkforw=true
- end
- end
- --sRJCF.C0=clerp(sRJCF.C0,RootCF,.3)
- testpart.Anchored=true
- testpart.CFrame=cf(RootPart.Position-RootPart.Velocity) *cf(0,0,0)
- newpos=vt(RootPart.Position.X+math.random(-500,500)/100,sRootPart.Position.Y,RootPart.Position.Z+math.random(-500,500)/100)
- MoveCF=cf(testpart.Position,newpos)
- local mpos = testpart.CFrame*euler(0,0,0)
- local cff = CFrame.new(mpos.p,newpos) * CFrame.Angles(math.pi/2,0,0)
- local x,y,z = sRootPart.CFrame:toObjectSpace(cff):toEulerAnglesXYZ()
- sRJCF.C0=clerp(sRJCF.C0,CFrame.Angles(x,y,z)*euler(0,3.14,0)*euler(0,0,0),.3)
- sRHCF.C0=clerp(sRHCF.C0,cf(1,-1,0)*euler(0,1.57,0),.3)
- sLHCF.C0=clerp(sLHCF.C0,cf(-1,-1,0)*euler(0,-1.57,0),.3)
- sRHCF.C1=clerp(sRHCF.C1,RH.C1,.3)
- sLHCF.C1=clerp(sLHCF.C1,LH.C1,.3)
- if attack==false then
- if ghostmode==false then
- hwld.C0=clerp(hwld.C0,euler(1.57,0,0)*cf(0,1,0),.3)
- wld1.C0=clerp(wld1.C0,euler(0,-1.57,0)*cf(0,0,0),.3)
- end
- if ghostmode==false then
- Neck.C0=clerp(Neck.C0,necko*euler(.2,0,0)*euler(0,0,.3),.3)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.2)*euler(0,0,-.3),.3)
- RW.C0=clerp(RW.C0,cf(1.4,0.5,.1)*euler(.3,0,.1)*euler(0,.8,0),.3)
- RW.C1=clerp(RW.C1,cf(0,0.5,0)*euler(0,0,0),.2)
- LW.C0=clerp(LW.C0,cf(-.4,0.4,-.5)*euler(.6,0,.8)*euler(0,-1.8,0),.3)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.2)
- RH.C0=clerp(RH.C0,cf(1,-.9,0)*euler(0,1.57,0)*euler(0,.3,0)*euler(0,0,-.1),.3)
- LH.C0=clerp(LH.C0,cf(-1.1,-.8,.1)*euler(0,-1.57,0)*euler(0,.3,0)*euler(0,0,.1),.3)
- else
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,0)*euler(0,0,0),.3)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.5)*euler(.3,0,0),.3)
- RW.C0=clerp(RW.C0,cf(1.4,0.5,0)*euler(-.4,0,.8)*euler(0,0,0),.3)
- RW.C1=clerp(RW.C1,cf(0,0.5,0)*euler(0,0,0),.2)
- LW.C0=clerp(LW.C0,cf(-1.4,0.5,0)*euler(-.4,0,-.8)*euler(0,0,0),.3)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.2)
- RH.C0=clerp(RH.C0,cf(1,-.6,-.4)*euler(0,1.57,0)*euler(0,0,0)*euler(-.1,0,.25),.3)
- LH.C0=clerp(LH.C0,cf(-1,-.6,-.4)*euler(0,-1.57,0)*euler(0,0,0)*euler(-.1,0,.3),.3)
- end
- end
- elseif torvel>=30 and hitfloor~=nil then
- Anim="Run"
- if equipped==true then
- for _,c in pairs(spectral:children()) do
- if c.className=="Part" and c.Name~="HumanoidRootPart" then
- if c.Transparency<.8 then
- c.Transparency=c.Transparency+.05
- elseif c.Transparency>.8 then
- c.Transparency=c.Transparency-.05
- end
- end
- end
- end
- sRJCF.C0=clerp(sRJCF.C0,RootCF,.3)
- sRWCF.C0=clerp(sRWCF.C0,RW.C0,.2)
- sLWCF.C0=clerp(sLWCF.C0,LW.C0,.2)
- sRHCF.C0=clerp(sRHCF.C0,cf(1,-1,0)*euler(0,1.57,0),.3)
- sLHCF.C0=clerp(sLHCF.C0,cf(-1,-1,0)*euler(0,-1.57,0),.3)
- sRHCF.C1=clerp(sRHCF.C1,RH.C1,.3)
- sLHCF.C1=clerp(sLHCF.C1,LH.C1,.3)
- if attack==false then
- if ghostmode==false then
- --[[Neck.C0=clerp(Neck.C0,necko*euler(0,0,0),.4)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.5)*euler(.3,0,0),.4)
- RW.C0=clerp(RW.C0,cf(1,0.5,-.5)*euler(1.87,0,-.8)*euler(0,0,0),.4)
- RW.C1=clerp(RW.C1,cf(0,0.5,0)*euler(0,0,0),.4)
- LW.C0=clerp(LW.C0,cf(-1,0.5,-.5)*euler(1.97,0,.8)*euler(0,0,0),.4)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.4)
- RH.C0=clerp(RH.C0,cf(1,-.7,0)*euler(0,1.57,0)*euler(-.2,0,.2),.4)
- LH.C0=clerp(LH.C0,cf(-1,-.7,0)*euler(0,-1.57,0)*euler(-.2,0,-.2),.4)]]
- hwld.C0=clerp(hwld.C0,euler(1.57,0,0)*cf(0,1,0),.4)
- wld1.C0=clerp(wld1.C0,euler(0,-1.57+.8,0)*euler(-.2,0,.2)*cf(0,0,0),.4)
- Neck.C0=clerp(Neck.C0,necko*euler(.3,0,0)*euler(0,0,0),.4)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-1.4)*euler(0,0,0),.4)
- RW.C0=clerp(RW.C0,cf(1,0.8,-.5)*euler(2,0,-.8)*euler(0,3.14,0),.4)
- LW.C0=clerp(LW.C0,cf(-1,0.8,-.5)*euler(2,0,.8)*euler(0,3.14,0),.4)
- RH.C0=clerp(RH.C0,cf(1,-.8,-.8)*euler(0,1.57,0)*euler(0,0,0)*euler(0,0,-1.4),.4)
- LH.C0=clerp(LH.C0,cf(-1,.2,-.8)*euler(0,-1.57,0)*euler(0,0,0)*euler(0,0,.2),.4)
- else
- Neck.C0=clerp(Neck.C0,necko*euler(0,0,0)*euler(0,0,0),.3)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-.5)*euler(.3,0,0),.3)
- RW.C0=clerp(RW.C0,cf(1.4,0.5,0)*euler(-.4,0,.8)*euler(0,0,0),.3)
- RW.C1=clerp(RW.C1,cf(0,0.5,0)*euler(0,0,0),.2)
- LW.C0=clerp(LW.C0,cf(-1.4,0.5,0)*euler(-.4,0,-.8)*euler(0,0,0),.3)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.2)
- RH.C0=clerp(RH.C0,cf(1,-.6,-.4)*euler(0,1.57,0)*euler(0,0,0)*euler(-.1,0,.25),.3)
- LH.C0=clerp(LH.C0,cf(-1,-.6,-.4)*euler(0,-1.57,0)*euler(0,0,0)*euler(-.1,0,.3),.3)
- end
- end
- end
- end
- end
- if #Effects>0 then
- --table.insert(Effects,{prt,"Block1",delay})
- for e=1,#Effects do
- if Effects[e]~=nil then
- --for j=1,#Effects[e] do
- local Thing=Effects[e]
- if Thing~=nil then
- local Part=Thing[1]
- local Mode=Thing[2]
- local Delay=Thing[3]
- local IncX=Thing[4]
- local IncY=Thing[5]
- local IncZ=Thing[6]
- if Thing[2]=="CylinderClang" then
- if Thing[3]<=1 then
- Thing[1].CFrame=Thing[1].CFrame*CFrame.new(0,2.5*Thing[5],0)*CFrame.fromEulerAnglesXYZ(Thing[6],0,0)
- Thing[7]=Thing[1].CFrame
- effect("New Yeller",0,Thing[8],Thing[7])
- Thing[8]=Thing[7]
- Thing[3]=Thing[3]+Thing[4]
- else
- Part.Parent=nil
- table.remove(Effects,e)
- end
- --[[Mesh=Thing[7]
- Mesh.Scale=Mesh.Scale+vt(Thing[4],Thing[5],Thing[6])
- Thing[1].Transparency=Thing[1].Transparency+Thing[3]]
- end
- if Thing[2]=="showDamage" then
- if Thing[6]<Thing[5] then
- Thing[6]=Thing[6]+1
- elseif Thing[6]<Thing[7] then
- Thing[4].position=Thing[4].position+vt(0,-.2,0)
- Thing[6]=Thing[6]+1
- elseif Thing[6]<Thing[8] then
- Thing[6]=Thing[6]+1
- elseif Thing[6]<Thing[9] then
- Thing[6]=Thing[6]+1
- Thing[4].position=Thing[4].position+vt(0,.2,0)
- Thing[3].TextStrokeTransparency=Thing[3].TextStrokeTransparency+.1
- Thing[3].TextTransparency=Thing[3].TextTransparency+.1
- else
- Thing[1].Parent=nil
- table.remove(Effects,e)
- end
- end
- --table.insert(Effects,{orb1,"Orb",orb2,owld1,owld2,400,0,cf(0,5,0),0,euler(0,0,0),0,math.random(2,5)/100,math.random(4,8)/100,math.random(2,5)/100})
- if Thing[2]=="Orb" then
- Thing[6]=Thing[6]-1
- Thing[7]=Thing[7]+Thing[12]
- Thing[9]=Thing[9]+Thing[13]
- Thing[11]=Thing[11]+Thing[14]
- Thing[4].C0=Thing[10]*euler(0,0,0)
- Thing[5].C0=Thing[8]*euler(Thing[9],Thing[7],Thing[11])*euler(0,0,0)
- --Thing[15] --hitted
- Thing[4].Parent=Thing[1]
- Thing[4].Part0=Thing[1]
- if ghostmode==true then
- if clone~=nil then
- if clone:findFirstChild("HumanoidRootPart")~=nil then
- Thing[4].Part1=clone.HumanoidRootPart
- end
- end
- else
- Thing[4].Part1=RootPart
- end
- if Thing[6]%2==0 then
- if ghostmode==true then
- MagniDamage(Thing[3],3,0,7,50,"Knockdown2",RootPart,0,1,5,nil,nil,true,nil,nil,nil,Thing[15])
- else
- MagniDamage(Thing[3],3,0,7,15,"Knockdown2",RootPart,0,1,5,nil,nil,true,nil,nil,nil,Thing[15])
- end
- end
- if Thing[15].Value==true then
- Thing[6]=0
- MagicCircle(BrickColor.new(NewCol),cf(Thing[3].Position),3,3,3,5,5,5,.1,1,effects)
- end
- if Thing[6]<=0 then
- Thing[1].Parent=nil
- orblimit=orblimit-1
- table.remove(Effects,e)
- end
- end
- if Thing[2]~="DecreaseStat" and Thing[2]~="showDamage" and Thing[2]~="Orb" then
- if Thing[1].Transparency<=1 then
- if Thing[2]=="Block1" then
- Thing[1].CFrame=Thing[1].CFrame*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))
- Mesh=Thing[7]
- Mesh.Scale=Mesh.Scale+vt(Thing[4],Thing[5],Thing[6])
- Thing[1].Transparency=Thing[1].Transparency+Thing[3]
- elseif Thing[2]=="Ice" then
- --prt,"Ice",delay,msh,1,.2
- if Thing[6]<=Thing[5] then
- Thing[6]=Thing[6]+.3
- Thing[1].CFrame=Thing[1].CFrame*cf(0,1,0)
- else
- Thing[1].Transparency=Thing[1].Transparency+Thing[3]
- end
- elseif Thing[2]=="Block2" then
- Thing[1].CFrame=Thing[1].CFrame
- Mesh=Thing[7]
- Mesh.Scale=Mesh.Scale+vt(Thing[4],Thing[5],Thing[6])
- Thing[1].Transparency=Thing[1].Transparency+Thing[3]
- elseif Thing[2]=="Block3" then
- Thing[9]=Thing[9]*cf(Thing[14],0,0)
- Thing[1].CFrame=Thing[8]*Thing[10]*Thing[9]
- if Thing[11]==1 then
- Thing[10]=Thing[10]*cf(0,Thing[13],0)*euler(0,Thing[12],0)
- else
- Thing[10]=Thing[10]*cf(0,Thing[13],0)*euler(0,-Thing[12],0)
- end
- Thing[1].CFrame=Thing[1].CFrame*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))
- Mesh=Thing[7]
- Mesh.Scale=Mesh.Scale+vt(Thing[4],Thing[5],Thing[6])
- Thing[1].Transparency=Thing[1].Transparency+Thing[3]
- elseif Thing[2]=="Fire" then
- Thing[1].CFrame=cf(Thing[1].Position)+vt(0,Thing[8],0)
- Thing[1].CFrame=Thing[1].CFrame*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))
- Thing[7].Scale=Thing[7].Scale+vt(Thing[4],Thing[5],Thing[6])
- Thing[1].Transparency=Thing[1].Transparency+Thing[3]
- elseif Thing[2]=="Cylinder" then
- Mesh=Thing[7]
- Mesh.Scale=Mesh.Scale+vt(Thing[4],Thing[5],Thing[6])
- Thing[1].Transparency=Thing[1].Transparency+Thing[3]
- elseif Thing[2]=="Cylinder2" then
- Mesh=Thing[7]
- if Thing[1].Transparency<=.5 then
- Mesh.Scale=Mesh.Scale+vt(Thing[4]*2,Thing[5]*2,Thing[6]*2)
- else
- Mesh.Scale=Mesh.Scale+vt(Thing[4],Thing[5],Thing[6])
- end
- Thing[1].Transparency=Thing[1].Transparency+Thing[3]
- elseif Thing[2]=="Blood" then
- Mesh=Thing[7]
- Thing[1].CFrame=Thing[1].CFrame*cf(0,Thing[8],0)
- Mesh.Scale=Mesh.Scale+vt(Thing[4],Thing[5],Thing[6])
- Thing[1].Transparency=Thing[1].Transparency+Thing[3]
- elseif Thing[2]=="Elec" then
- Mesh=Thing[7]
- Mesh.Scale=Mesh.Scale+vt(Thing[7],Thing[8],Thing[9])
- Thing[1].Transparency=Thing[1].Transparency+Thing[3]
- elseif Thing[2]=="Disappear" then
- Thing[1].Transparency=Thing[1].Transparency+Thing[3]
- end
- else
- Part.Parent=nil
- table.remove(Effects,e)
- end
- end
- end
- --end
- end
- end
- end
- fenbarmana2:TweenSize(UDim2.new(.4,0,-4*mana.Value/100,0),nil,1,0.4,true)
- fenbarmana4.Text="Mana("..mana.Value..")"
- fenbarhp2.BackgroundColor3=Color3.new(Humanoid.Health/Humanoid.MaxHealth,0,0)
- fenbarhp2:TweenSize(UDim2.new(Humanoid.Health/Humanoid.MaxHealth,0,1,0),nil,1,0.4,true)
- fenbarhp3.Text="("..(math.floor(Humanoid.Health*10)).." / "..(math.floor(Humanoid.MaxHealth*10))..")"
- --fenbarblock2:TweenSize(UDim2.new(.4,0,-4*armor/100,0),nil,1,0.4,true)
- --fenbarblock3.Text="Armor("..math.floor(armor)..")"
- fenbarmove1b:TweenSize(UDim2.new(1*cooldowns[1]/cooldownmax,0,1,0),nil,1,0.4,true)
- fenbarmove2b:TweenSize(UDim2.new(1*cooldowns[2]/cooldownmax,0,1,0),nil,1,0.4,true)
- fenbarmove2.Text=move2
- fenbarmove3b:TweenSize(UDim2.new(1*cooldowns[3]/cooldownmax,0,1,0),nil,1,0.4,true)
- fenbarmove4b:TweenSize(UDim2.new(1*cooldowns[4]/cooldownmax,0,1,0),nil,1,0.4,true)
- if ghostmode==true then
- if clone~=nil then
- if clone:findFirstChild("Stats")~=nil then
- if clone.Stats:findFirstChild("Decrease")~=nil then
- for _,c in pairs(clone.Stats.Decrease:children()) do
- if c:findFirstChild("Duration")~=nil then
- c.Duration.Value=c.Duration.Value-1
- if c.Duration.Value<=0 then
- c.Parent=nil
- end
- end
- if c.Name=="DecreaseAtk" then
- decreaseatk=decreaseatk+c.Value
- elseif c.Name=="DecreaseDef" then
- decreasedef=decreasedef+c.Value
- elseif c.Name=="DecreaseMvmt" then
- decreasemvmt=decreasemvmt+c.Value
- end
- end
- end
- end
- end
- else
- for _,c in pairs(Decrease:children()) do
- if c:findFirstChild("Duration")~=nil then
- c.Duration.Value=c.Duration.Value-1
- if c.Duration.Value<=0 then
- c.Parent=nil
- end
- end
- if c.Name=="DecreaseAtk" then
- decreaseatk=decreaseatk+c.Value
- elseif c.Name=="DecreaseDef" then
- decreasedef=decreasedef+c.Value
- elseif c.Name=="DecreaseMvmt" then
- decreasemvmt=decreasemvmt+c.Value
- end
- end
- end
- Atk.Value=1-decreaseatk
- if Atk.Value<=0 then
- Atk.Value=0
- end
- Def.Value=1-decreasedef
- if Def.Value<=0 then
- Def.Value=0.01
- end
- Mvmt.Value=1-decreasemvmt
- if Mvmt.Value<=0 then
- Mvmt.Value=0
- end
- decreaseatk=0
- decreasedef=0
- decreasemvmt=0
- AtkVal=Atk.Value*100
- AtkVal=math.floor(AtkVal)
- AtkVal=AtkVal/100
- fenbardamage.Text="Damage\
- ("..(AtkVal*100).."%)"
- DefVal=Def.Value*100
- DefVal=math.floor(DefVal)
- DefVal=DefVal/100
- fenbardef.Text="Defense\
- ("..(DefVal*100).."%)"
- MvmtVal=Mvmt.Value*100
- MvmtVal=math.floor(MvmtVal)
- MvmtVal=MvmtVal/100
- if Rooted.Value == true or Suppressed.Value == true or Unstable.Value == true or TimeLocked.Value==true then MvmtVal=0 end
- fenbarmove.Text="Walkspeed\
- ("..(MvmtVal*100).."%)"
- fenbarorb1.Text="Orbs\
- "..orblimit.."/"..maxorbs.." ("..orb..")"
- if Stun.Value>=StunT.Value then
- fenbarstun2:TweenSize(UDim2.new(.4,0,-4,0),nil,1,0.4,true)
- else
- fenbarstun2:TweenSize(UDim2.new(.4,0,-4*Stun.Value/StunT.Value,0),nil,1,0.4,true)
- end
- fenbarstun3.Text="Stun("..Stun.Value..")"
- if mana.Value>=50 and cooldowns[4]==100 then
- if marked then
- if marked:FindFirstChild("Torso") then
- PlayerGui["Mark Gui"]["Phantom Mark"].Image="rbxassetid://465578226"
- end
- end
- else
- if marked then
- if marked:FindFirstChild("Torso") then
- PlayerGui["Mark Gui"]["Phantom Mark"].Image="rbxassetid://465578157"
- end
- end
- end
- if TimeLocked.Value==false then
- if mana.Value>=100 then
- mana.Value=100
- else
- if mananum<12 then
- mananum=mananum+1
- elseif mananum>=12 then
- mananum=0
- if drainmana==false then
- mana.Value=mana.Value+1
- end
- end
- end
- --[[if cooldown1>=cooldownmax then
- cooldown1=cooldownmax
- else
- cooldown1=cooldown1+cooldownadd1
- end]]
- for i=1,#cooldowns do
- if cooldowns[i]>=cooldownmax then
- cooldowns[i]=cooldownmax
- else
- cooldowns[i]=cooldowns[i]+cooldownsadd[i]
- end
- end
- end
- end
Add Comment
Please, Sign In to add comment