Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- This script has been converted to FE by iPxter
- if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
- local Player,Mouse,mouse,UserInputService,ContextActionService = owner
- do
- print("FE Compatibility code by Mokiros")
- script.Parent = Player.Character
- --RemoteEvent for communicating
- local Event = Instance.new("RemoteEvent")
- Event.Name = "UserInput_Event"
- --Fake event to make stuff like Mouse.KeyDown work
- local function fakeEvent()
- local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
- t.connect = t.Connect
- return t
- end
- --Creating fake input objects with fake variables
- local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
- local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
- local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
- CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
- end}
- --Merged 2 functions into one by checking amount of arguments
- CAS.UnbindAction = CAS.BindAction
- --This function will trigger the events that have been :Connect()'ed
- 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
- else
- local b = io.UserInputState == Enum.UserInputState.Begin
- if io.UserInputType == Enum.UserInputType.MouseButton1 then
- return m:TrigEvent(b and "Button1Down" or "Button1Up")
- end
- for _,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
- m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
- UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
- end
- end)
- Event.Parent = NLS([==[
- local Player = game:GetService("Players").LocalPlayer
- local Event = script:WaitForChild("UserInput_Event")
- local UIS = game:GetService("UserInputService")
- local input = function(io,a)
- if a then return end
- --Since InputObject is a client-side instance, we create and pass table instead
- Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
- end
- UIS.InputBegan:Connect(input)
- UIS.InputEnded:Connect(input)
- local Mouse = Player:GetMouse()
- local h,t
- --Give the server mouse data 30 times every second, but only if the values changed
- --If player is not moving their mouse, client won't fire events
- while wait(1/30) do
- if h~=Mouse.Hit or t~=Mouse.Target then
- h,t=Mouse.Hit,Mouse.Target
- Event:FireServer({isMouse=true,Target=t,Hit=h})
- end
- end]==],Player.Character)
- Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
- end
- wait(0.2)
- Player = owner
- PlayerGui = Player.PlayerGui
- Cam = workspace.CurrentCamera
- Backpack = Player.Backpack
- Character = Player.Character
- Humanoid = Character.Humanoid
- RootPart = Character["HumanoidRootPart"]
- Torso = Character["Torso"]
- Head = Character["Head"]
- RightArm = Character["Right Arm"]
- LeftArm = Character["Left Arm"]
- RightLeg = Character["Right Leg"]
- LeftLeg = Character["Left Leg"]
- RootJoint = RootPart["RootJoint"]
- Neck = Torso["Neck"]
- RightShoulder = Torso["Right Shoulder"]
- LeftShoulder = Torso["Left Shoulder"]
- RightHip = Torso["Right Hip"]
- LeftHip = Torso["Left Hip"]
- local sick = Instance.new("Sound",Character)
- sick.SoundId = "rbxassetid://149029787"
- sick.Looped = true
- sick.Pitch = 1
- sick.Volume = 5
- sick:Play()
- IT = Instance.new
- CF = CFrame.new
- VT = Vector3.new
- RAD = math.rad
- C3 = Color3.new
- UD2 = UDim2.new
- BRICKC = BrickColor.new
- ANGLES = CFrame.Angles
- EULER = CFrame.fromEulerAnglesXYZ
- COS = math.cos
- ACOS = math.acos
- SIN = math.sin
- ASIN = math.asin
- ABS = math.abs
- MRANDOM = math.random
- FLOOR = math.floor
- function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
- local NEWMESH = IT(MESH)
- if MESH == "SpecialMesh" then
- NEWMESH.MeshType = MESHTYPE
- if MESHID ~= "nil" and MESHID ~= "" then
- NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
- end
- if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
- NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
- end
- end
- NEWMESH.Offset = OFFSET or VT(0, 0, 0)
- NEWMESH.Scale = SCALE
- NEWMESH.Parent = PARENT
- return NEWMESH
- end
- local function weldBetween(a, b)
- local weldd = Instance.new("ManualWeld")
- weldd.Part0 = a
- weldd.Part1 = b
- weldd.C0 = CFrame.new()
- weldd.C1 = b.CFrame:inverse() * a.CFrame
- weldd.Parent = a
- return weldd
- end
- function createaccessory(attachmentpart,mesh,texture,scale,offset,color)
- local acs = Instance.new("Part")
- acs.CanCollide = false
- acs.Anchored = false
- acs.Size = Vector3.new(0,0,0)
- acs.CFrame = attachmentpart.CFrame
- acs.Parent = Character
- acs.BrickColor = color
- local meshs = Instance.new("SpecialMesh")
- meshs.MeshId = mesh
- meshs.TextureId = texture
- meshs.Parent = acs
- meshs.Scale = scale
- meshs.Offset = offset
- weldBetween(attachmentpart,acs)
- end
- function CreateSpikeball(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
- local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
- local mesh = IT("SpecialMesh",wave)
- mesh.MeshType = "FileMesh"
- mesh.MeshId = "http://www.roblox.com/asset/?id=9982590"
- mesh.Scale = SIZE
- mesh.Offset = VT(0,0,-SIZE.X/8)
- wave.CFrame = CFRAME
- coroutine.resume(coroutine.create(function(PART)
- for i = 1, WAIT do
- Swait()
- mesh.Scale = mesh.Scale + GROW
- mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
- if DOESROT == true then
- wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
- end
- wave.Transparency = wave.Transparency + (0.5/WAIT)
- if wave.Transparency > 0.99 then
- wave:remove()
- end
- end
- end))
- end
- function CreateSwirl(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
- local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
- local mesh = IT("SpecialMesh",wave)
- mesh.MeshType = "FileMesh"
- mesh.MeshId = "http://www.roblox.com/asset/?id=1051557"
- mesh.Scale = SIZE
- wave.CFrame = CFRAME
- coroutine.resume(coroutine.create(function(PART)
- for i = 1, WAIT do
- Swait()
- mesh.Scale = mesh.Scale + GROW
- mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
- if DOESROT == true then
- wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
- end
- wave.Transparency = wave.Transparency + (0.5/WAIT)
- if wave.Transparency > 0.99 then
- wave:remove()
- end
- end
- end))
- end
- function MagicBlock(SIZE,WAIT,CFRAME,COLOR,GROW)
- local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(SIZE,SIZE,SIZE), true)
- local mesh = IT("BlockMesh",wave)
- wave.CFrame = CFRAME
- coroutine.resume(coroutine.create(function(PART)
- for i = 1, WAIT do
- Swait()
- mesh.Scale = mesh.Scale + GROW
- wave.CFrame = CFRAME * ANGLES(RAD(math.random(-360,360)),RAD(math.random(-360,360)),RAD(math.random(-360,360)))
- wave.Transparency = wave.Transparency + (1/WAIT)
- if wave.Transparency > 0.99 then
- wave:remove()
- end
- end
- end))
- end
- function Sink(position,radius)
- for i,v in ipairs(workspace:GetChildren()) do
- if v:FindFirstChild("Hit2By"..Player.Name) == nil then
- local body = v:GetChildren()
- for part = 1, #body do
- if(v:FindFirstChild("Hit2By"..Player.Name) == nil and (body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
- if(body[part].Position - position).Magnitude < radius then
- if v.ClassName == "Model" then
- if v:FindFirstChild("Humanoid") then
- local defence = Instance.new("BoolValue",v)
- defence.Name = ("Hit2By"..Player.Name)
- if v.Humanoid.Health ~= 0 then
- local TORS = v:FindFirstChild("HumanoidRootPart") or v:FindFirstChild("Torso") or v:FindFirstChild("UpperTorso")
- if TORS ~= nil then
- local HITFLOOR2, HITPOS2 = Raycast(TORS.Position, (CF(TORS.Position, TORS.Position + VT(0, -1, 0))).lookVector, 5 * TORS.Size.Y/2, v)
- coroutine.resume(coroutine.create(function()
- if HITFLOOR2 ~= nil then
- TORS.Anchored = true
- table.insert(Effects2,{v})
- repeat
- Swait()
- TORS.CFrame = TORS.CFrame * CF(0,-1,0)
- until TORS.Position.Y<position.Y-4
- v:remove()
- end
- end))
- end
- end
- end
- end
- --body[part].Velocity = CFrame.new(position,body[part].Position).lookVector*5*maxstrength
- end
- end
- end
- end
- end
- end
- function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
- local NEWPART = IT("Part")
- NEWPART.formFactor = FORMFACTOR
- NEWPART.Reflectance = REFLECTANCE
- NEWPART.Transparency = TRANSPARENCY
- NEWPART.CanCollide = false
- NEWPART.Locked = true
- NEWPART.Anchored = true
- if ANCHOR == false then
- NEWPART.Anchored = false
- end
- NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
- NEWPART.Name = NAME
- NEWPART.Size = SIZE
- NEWPART.Position = Torso.Position
- NEWPART.Material = MATERIAL
- NEWPART:BreakJoints()
- NEWPART.Parent = PARENT
- return NEWPART
- end
- Class_Name = "Void Face"
- Weapon_Name = "Add-ons"
- Player_Size = 1 --Size of the player.
- Animation_Speed = 3
- Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
- local Speed = 16
- local Effects2 = {}
- local function weldBetween(a, b)
- local weldd = Instance.new("ManualWeld")
- weldd.Part0 = a
- weldd.Part1 = b
- weldd.C0 = CFrame.new()
- weldd.C1 = b.CFrame:inverse() * a.CFrame
- weldd.Parent = a
- return weldd
- end
- function createaccessory(attachmentpart,mesh,texture,scale,offset,color)
- local acs = Instance.new("Part")
- acs.CanCollide = false
- acs.Anchored = false
- acs.Size = Vector3.new(0,0,0)
- acs.CFrame = attachmentpart.CFrame
- acs.Parent = Character
- acs.BrickColor = color
- local meshs = Instance.new("SpecialMesh")
- meshs.MeshId = mesh
- meshs.TextureId = texture
- meshs.Parent = acs
- meshs.Scale = scale
- meshs.Offset = offset
- weldBetween(attachmentpart,acs)
- end
- function createbodypart(TYPE,COLOR,PART,OFFSET,SIZE)
- if TYPE == "Gem" then
- local acs = CreatePart(3, Character, "Plastic", 0, 0, COLOR, "Part", VT(0,0,0))
- acs.Anchored = false
- acs.CanCollide = false
- acs.CFrame = PART.CFrame
- local acs2 = CreateMesh("SpecialMesh", acs, "FileMesh", "9756362", "", SIZE, OFFSET)
- weldBetween(PART,acs)
- elseif TYPE == "Skull" then
- local acs = CreatePart(3, Character, "Plastic", 0, 0, COLOR, "Part", VT(0,0,0))
- acs.Anchored = false
- acs.CanCollide = false
- acs.CFrame = PART.CFrame
- local acs2 = CreateMesh("SpecialMesh", acs, "FileMesh", "4770583", "", SIZE, OFFSET)
- weldBetween(PART,acs)
- elseif TYPE == "Eye" then
- local acs = CreatePart(3, Character, "Neon", 0, 0, COLOR, "Part", VT(0,0,0))
- acs.Anchored = false
- acs.CanCollide = false
- acs.CFrame = PART.CFrame
- local acs2 = CreateMesh("SpecialMesh", acs, "Sphere", "", "", SIZE, OFFSET)
- weldBetween(PART,acs)
- end
- end
- local A = IT("Attachment",RightArm)
- A.Position = VT(1,1.3,0)
- A.Orientation = VT(-0.098, -89.999, 0.227)
- local B = IT("Attachment",LeftArm)
- B.Position = VT(-1.3,-0.6,0)
- B.Orientation = VT(-88.911, -68.808, 158.782)
- local ChainLink = IT("Beam",Torso)
- ChainLink.Texture = "rbxassetid://191067942"
- ChainLink.Color = ColorSequence.new(C3(1,0,0))
- ChainLink.TextureSpeed = 1
- ChainLink.FaceCamera = true
- ChainLink.Width0 = 1
- ChainLink.Width1 = 1
- ChainLink.TextureLength = 3
- ChainLink.Attachment0 = A
- ChainLink.Attachment1 = B
- ChainLink.CurveSize0 = 1
- ChainLink.CurveSize1 = 1
- ChainLink.FaceCamera = true
- ChainLink.Transparency = NumberSequence.new(0)
- local ChainLink = IT("Beam",Torso)
- ChainLink.Texture = "rbxassetid://191067942"
- ChainLink.Color = ColorSequence.new(C3(1,0,0))
- ChainLink.TextureSpeed = 1
- ChainLink.FaceCamera = true
- ChainLink.Width0 = 1
- ChainLink.Width1 = 1
- ChainLink.TextureLength = 3
- ChainLink.Attachment0 = B
- ChainLink.Attachment1 = A
- ChainLink.CurveSize0 = 1
- ChainLink.CurveSize1 = 1
- ChainLink.FaceCamera = true
- ChainLink.Transparency = NumberSequence.new(0)
- local A = IT("Attachment",RightArm)
- A.Position = VT(1.3,-0.85,0)
- A.Orientation = VT(-0.098, -89.999, 0.227)
- local B = IT("Attachment",LeftArm)
- B.Position = VT(-1,2,0)
- B.Orientation = VT(-88.911, -68.808, 158.782)
- local ChainLink = IT("Beam",Torso)
- ChainLink.Texture = "rbxassetid://191067942"
- ChainLink.Color = ColorSequence.new(C3(1,0,0))
- ChainLink.TextureSpeed = 1
- ChainLink.FaceCamera = true
- ChainLink.Width0 = 1
- ChainLink.Width1 = 1
- ChainLink.TextureLength = 3
- ChainLink.Attachment0 = A
- ChainLink.Attachment1 = B
- ChainLink.CurveSize0 = 1
- ChainLink.CurveSize1 = 1
- ChainLink.FaceCamera = true
- ChainLink.Transparency = NumberSequence.new(0)
- local ChainLink = IT("Beam",Torso)
- ChainLink.Texture = "rbxassetid://191067942"
- ChainLink.Color = ColorSequence.new(C3(1,0,0))
- ChainLink.TextureSpeed = 1
- ChainLink.FaceCamera = true
- ChainLink.Width0 = 1
- ChainLink.Width1 = 1
- ChainLink.TextureLength = 3
- ChainLink.Attachment0 = B
- ChainLink.Attachment1 = A
- ChainLink.CurveSize0 = 1
- ChainLink.CurveSize1 = 1
- ChainLink.FaceCamera = true
- ChainLink.Transparency = NumberSequence.new(0)
- local A = IT("Attachment",RightBarrel)
- A.Position = VT(0,-2.5,0)
- local B = IT("Attachment",RightBarrel)
- B.Position = VT(0,2.5,0)
- local Trail = IT("Trail",RightBarrel)
- Trail.Attachment0 = A
- Trail.Attachment1 = B
- Trail.Lifetime = 0.2
- Trail.Color = ColorSequence.new(BRICKC"Really red".Color)
- Trail.Transparency = NumberSequence.new(0, 1)
- Trail.Enabled = false
- local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
- local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
- local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
- local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
- local CHANGEDEFENSE = 0
- local CHANGEDAMAGE = 0
- local CHANGEMOVEMENT = 0
- local ANIM = "Idle"
- local ATTACK = false
- local EQUIPPED = false
- local HOLD = false
- local COMBO = 1
- local Rooted = false
- local SINE = 0
- local KEYHOLD = false
- local CHANGE = 2 / Animation_Speed
- local WALKINGANIM = false
- local WALK = 0
- local VALUE1 = false
- local VALUE2 = false
- local ROBLOXIDLEANIMATION = IT("Animation")
- ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
- ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
- --ROBLOXIDLEANIMATION.Parent = Humanoid
- local WEAPONGUI = IT("ScreenGui", PlayerGui)
- WEAPONGUI.Name = "Weapon GUI"
- local Weapon = IT("Model")
- Weapon.Name = Weapon_Name
- local Effects = IT("Folder", Weapon)
- Effects.Name = "Effects"
- local ANIMATOR = Humanoid.Animator
- local ANIMATE = Character.Animate
- local HITPLAYERSOUNDS = {--[["199149137", "199149186", "199149221", "199149235", "199149269", "199149297"--]]"263032172", "263032182", "263032200", "263032221", "263032252", "263033191"}
- local HITARMORSOUNDS = {"199149321", "199149338", "199149367", "199149409", "199149452"}
- local HITWEAPONSOUNDS = {"199148971", "199149025", "199149072", "199149109", "199149119"}
- local HITBLOCKSOUNDS = {"199148933", "199148947"}
- local TAUNTS = {"368794227","368794903","368794985"}
- local UNANCHOR = true
- ArtificialHB = Instance.new("BindableEvent", script)
- ArtificialHB.Name = "ArtificialHB"
- script:WaitForChild("ArtificialHB")
- frame = Frame_Speed
- tf = 0
- allowframeloss = false
- tossremainder = false
- lastframe = tick()
- script.ArtificialHB:Fire()
- game:GetService("RunService").Heartbeat:connect(function(s, p)
- tf = tf + s
- if tf >= frame then
- if allowframeloss then
- script.ArtificialHB:Fire()
- lastframe = tick()
- else
- for i = 1, math.floor(tf / frame) do
- script.ArtificialHB:Fire()
- end
- lastframe = tick()
- end
- if tossremainder then
- tf = 0
- else
- tf = tf - frame * math.floor(tf / frame)
- end
- end
- end)
- function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
- return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
- end
- function PositiveAngle(NUMBER)
- if NUMBER >= 0 then
- NUMBER = 0
- end
- return NUMBER
- end
- function NegativeAngle(NUMBER)
- if NUMBER <= 0 then
- NUMBER = 0
- end
- return NUMBER
- end
- function Swait(NUMBER)
- if NUMBER == 0 or NUMBER == nil then
- ArtificialHB.Event:wait()
- else
- for i = 1, NUMBER do
- ArtificialHB.Event:wait()
- end
- end
- 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 = ACOS(cosTheta)
- local invSinTheta = 1 / SIN(theta)
- startInterp = SIN((1 - t) * theta) * invSinTheta
- finishInterp = SIN(t * theta) * invSinTheta
- else
- startInterp = 1 - t
- finishInterp = t
- end
- else
- if (1 + cosTheta) > 0.0001 then
- local theta = ACOS(-cosTheta)
- local invSinTheta = 1 / SIN(theta)
- startInterp = SIN((t - 1) * theta) * invSinTheta
- finishInterp = 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 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 CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
- local frame = IT("Frame")
- frame.BackgroundTransparency = TRANSPARENCY
- frame.BorderSizePixel = BORDERSIZEPIXEL
- frame.Position = POSITION
- frame.Size = SIZE
- frame.BackgroundColor3 = COLOR
- frame.BorderColor3 = BORDERCOLOR
- frame.Name = NAME
- frame.Parent = PARENT
- return frame
- end
- function AddChildrenToTable(FROM, PARENT, DIST, TABLE)
- for _, c in pairs(PARENT:GetChildren()) do
- if c.ClassName == "Model" then
- if c ~= Character and c:FindFirstChildOfClass("Humanoid") and (c:FindFirstChild("Torso") or c:FindFirstChild("UpperTorso")) then
- local HUMANOID = c:FindFirstChildOfClass("Humanoid")
- local TORSO = c:FindFirstChild("Torso") or c:FindFirstChild("UpperTorso")
- if DIST > (TORSO.Position - FROM).Magnitude then
- table.insert(TABLE, c)
- end
- AddChildrenToTable(FROM, c, DIST, TABLE)
- elseif c.ClassName == "Folder" then
- AddChildrenToTable(FROM, c, DIST, TABLE)
- end
- end
- end
- end
- function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
- local label = IT("TextLabel")
- label.BackgroundTransparency = 1
- label.Size = UD2(1, 0, 1, 0)
- label.Position = UD2(0, 0, 0, 0)
- label.TextColor3 = TEXTCOLOR
- label.TextStrokeTransparency = STROKETRANSPARENCY
- label.TextTransparency = TRANSPARENCY
- label.FontSize = TEXTFONTSIZE
- label.Font = TEXTFONT
- label.BorderSizePixel = BORDERSIZEPIXEL
- label.TextScaled = false
- label.Text = TEXT
- label.Name = NAME
- label.Parent = PARENT
- return label
- end
- function NoOutlines(PART)
- PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
- end
- function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
- local NEWWELD = IT(TYPE)
- NEWWELD.Part0 = PART0
- NEWWELD.Part1 = PART1
- NEWWELD.C0 = C0
- NEWWELD.C1 = C1
- NEWWELD.Parent = PARENT
- return NEWWELD
- end
- local sound = IT("Sound",nil)
- function CreateSound(ID, PARENT, VOLUME, PITCH)
- local NEWSOUND = nil
- coroutine.resume(coroutine.create(function()
- NEWSOUND = sound:Clone()
- NEWSOUND.Parent = PARENT
- NEWSOUND.Volume = VOLUME
- NEWSOUND.Pitch = PITCH
- NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
- Swait()
- NEWSOUND:play()
- game:GetService("Debris"):AddItem(NEWSOUND, 10)
- end))
- return NEWSOUND
- end
- function CFrameFromTopBack(at, top, back)
- local right = top:Cross(back)
- return CF(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 CreateWave(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
- local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
- local mesh = IT("SpecialMesh",wave)
- mesh.MeshType = "FileMesh"
- mesh.MeshId = "http://www.roblox.com/asset/?id=20329976"
- mesh.Scale = SIZE
- mesh.Offset = VT(0,0,-SIZE.X/8)
- wave.CFrame = CFRAME
- coroutine.resume(coroutine.create(function(PART)
- for i = 1, WAIT do
- Swait()
- mesh.Scale = mesh.Scale + GROW
- mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
- if DOESROT == true then
- wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
- end
- wave.Transparency = wave.Transparency + (0.5/WAIT)
- if wave.Transparency > 0.99 then
- wave:remove()
- end
- end
- end))
- end
- function CreateCrown(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
- local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
- local mesh = IT("SpecialMesh",wave)
- mesh.MeshType = "FileMesh"
- mesh.MeshId = "http://www.roblox.com/asset/?id=1078075"
- mesh.Scale = SIZE
- mesh.Offset = VT(0,0,-SIZE.X/8)
- wave.CFrame = CFRAME
- coroutine.resume(coroutine.create(function(PART)
- for i = 1, WAIT do
- Swait()
- mesh.Scale = mesh.Scale + GROW
- mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
- if DOESROT == true then
- wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
- end
- wave.Transparency = wave.Transparency + (0.5/WAIT)
- if wave.Transparency > 0.99 then
- wave:remove()
- end
- end
- end))
- end
- function CreateIceCrown(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
- local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
- local mesh = IT("SpecialMesh",wave)
- mesh.MeshType = "FileMesh"
- mesh.MeshId = "http://www.roblox.com/asset/?id=1323306"
- mesh.Scale = SIZE
- mesh.Offset = VT(0,0,-SIZE.X/8)
- wave.CFrame = CFRAME
- coroutine.resume(coroutine.create(function(PART)
- for i = 1, WAIT do
- Swait()
- mesh.Scale = mesh.Scale + GROW
- mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
- if DOESROT == true then
- wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
- end
- wave.Transparency = wave.Transparency + (0.5/WAIT)
- if wave.Transparency > 0.99 then
- wave:remove()
- end
- end
- end))
- end
- function CreateSpikeball(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
- local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
- local mesh = IT("SpecialMesh",wave)
- mesh.MeshType = "FileMesh"
- mesh.MeshId = "http://www.roblox.com/asset/?id=9982590"
- mesh.Scale = SIZE
- mesh.Offset = VT(0,0,-SIZE.X/8)
- wave.CFrame = CFRAME
- coroutine.resume(coroutine.create(function(PART)
- for i = 1, WAIT do
- Swait()
- mesh.Scale = mesh.Scale + GROW
- mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
- if DOESROT == true then
- wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
- end
- wave.Transparency = wave.Transparency + (0.5/WAIT)
- if wave.Transparency > 0.99 then
- wave:remove()
- end
- end
- end))
- end
- function CreateSwirl(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
- local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
- local mesh = IT("SpecialMesh",wave)
- mesh.MeshType = "FileMesh"
- mesh.MeshId = "http://www.roblox.com/asset/?id=1051557"
- mesh.Scale = SIZE
- wave.CFrame = CFRAME
- coroutine.resume(coroutine.create(function(PART)
- for i = 1, WAIT do
- Swait()
- mesh.Scale = mesh.Scale + GROW
- mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
- if DOESROT == true then
- wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
- end
- wave.Transparency = wave.Transparency + (0.5/WAIT)
- if wave.Transparency > 0.99 then
- wave:remove()
- end
- end
- end))
- end
- function ApplyAoE(POSITION, RANGE)
- local PARTS = {}
- for index, CHILD in pairs(workspace:GetDescendants()) do
- if CHILD.ClassName == "Model" and CHILD ~= Character then
- local HUM = CHILD:FindFirstChildOfClass("Humanoid")
- if HUM then
- local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
- if TORSO and HUM.Health > 0 and RANGE >= (TORSO.Position - POSITION).Magnitude then
- CHILD:BreakJoints()
- for index, PART in pairs(CHILD:GetChildren()) do
- if PART:IsA("BasePart") and PART.Name ~= "HumanoidRootPart" then
- local P = DParticles:Clone()
- P.Parent = PART
- P.Enabled = true
- P.Color = ColorSequence.new(PART.Color, C3(61, 21, 133))
- PART.Anchored = true
- table.insert(PARTS, {PART, P})
- end
- end
- end
- end
- elseif CHILD:IsA("BasePart") and CHILD.Parent.Parent ~= Character and CHILD.Parent:FindFirstChildOfClass("Humanoid") == nil and CHILD:FindFirstChild("ewdfrfgrwefd") == nil and CHILD.Size.Magnitude < RANGE * 2 and CHILD.Size.Magnitude < 200 and RANGE > (CHILD.Position - POSITION).Magnitude then
- local FOLDER = IT("Folder", CHILD)
- FOLDER.Name = "ewdfrfgrwefd"
- local P = DParticles:Clone()
- P.Parent = CHILD
- P.Enabled = true
- CHILD:BreakJoints()
- CHILD.CanCollide = false
- CHILD.Anchored = true
- P.Rate = math.ceil(CHILD.Size.Magnitude / 2)
- P.Color = ColorSequence.new(CHILD.Color, C3(61, 21, 133))
- table.insert(PARTS, {CHILD, P})
- end
- end
- coroutine.resume(coroutine.create(function()
- if #PARTS > 0 then
- for i = 1, 85 do
- Swait()
- for E = 1, #PARTS do
- local F = PARTS[E]
- local A = F[1]
- local B = F[2]
- A.Transparency = A.Transparency + 0.011764705882352941
- B.Rate = math.ceil(B.Rate * 1.2)
- for index, E in pairs(A:GetChildren()) do
- if E:IsA("Decal") or E:IsA("Texture") then
- E.Transparency = E.Transparency + 0.011764705882352941
- elseif E:IsA("JointInstance") then
- E:remove()
- elseif E:IsA("Light") or E:IsA("ParticleEmitter") and E ~= B and E.Name ~= "ArchangelDeathParticles" or E:IsA("Fire") or E:IsA("Sparkles") or E:IsA("Smoke") then
- E.Enabled = false
- end
- end
- end
- end
- for E = 1, #PARTS do
- local F = PARTS[E]
- local A = F[1]
- local B = F[2]
- B.Enabled = false
- Debris:AddItem(A, 3)
- end
- end
- end))
- end
- function CreateTornado(SIZE,DOESROT,ROT,WAIT,CFRAME,COLOR,GROW)
- local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
- local mesh = IT("SpecialMesh",wave)
- mesh.MeshType = "FileMesh"
- mesh.MeshId = "http://www.roblox.com/asset/?id=102638417"
- mesh.Scale = SIZE
- wave.CFrame = CFRAME
- coroutine.resume(coroutine.create(function(PART)
- for i = 1, WAIT do
- Swait()
- mesh.Scale = mesh.Scale + GROW
- if DOESROT == true then
- wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
- end
- wave.Transparency = wave.Transparency + (0.5/WAIT)
- if wave.Transparency > 0.99 then
- wave:remove()
- end
- end
- end))
- end
- function WACKYEFFECT(Table)
- local TYPE = Table.EffectType or "Sphere"
- local SIZE = Table.Size or VT(1, 1, 1)
- local ENDSIZE = Table.Size2 or VT(0, 0, 0)
- local TRANSPARENCY = Table.Transparency or 0
- local ENDTRANSPARENCY = Table.Transparency2 or 1
- local CFRAME = Table.CFrame or Torso.CFrame
- local MOVEDIRECTION = Table.MoveToPos or nil
- local ROTATION1 = Table.RotationX or 0
- local ROTATION2 = Table.RotationY or 0
- local ROTATION3 = Table.RotationZ or 0
- local MATERIAL = Table.Material or "Neon"
- local COLOR = Table.Color or C3(61, 21, 133)
- local cR=255
- local cG=0
- local cB=0
- local flg5=1 local omgidk=1
- local add=7.5
- game:GetService("RunService"):BindToRenderStep("Ghost",1,function()
- if omgidk>10000 then omgidk=0 end
- omgidk=omgidk+1
- if cR>=255 then flg5=1 end
- if cG>=255 then flg5=2 end
- if cB>=255 then flg5=3 end
- if flg5==1 then cR=cR-add cG=cG+add end
- if flg5==2 then cG=cG-add cB=cB+add end
- if flg5==3 then cB=cB-add cR=cR+add end
- color=Color3.fromRGB(cR,cG,cB)
- Table.Color = color
- end)
- local TIME = Table.Time or 45
- local SOUNDID = Table.SoundID or nil
- local SOUNDPITCH = Table.SoundPitch or nil
- local SOUNDVOLUME = Table.SoundVolume or nil
- coroutine.resume(coroutine.create(function()
- local PLAYSSOUND = false
- local SOUND
- local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1, 1, 1), true)
- if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
- PLAYSSOUND = true
- SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
- end
- EFFECT.Color = COLOR
- local MSH
- if TYPE == "Sphere" then
- MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0, 0, 0))
- elseif TYPE == "Block" then
- MSH = IT("BlockMesh", EFFECT)
- MSH.Scale = VT(SIZE.X, SIZE.X, SIZE.X)
- elseif TYPE == "Wave" then
- MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0, 0, -SIZE.X / 8))
- elseif TYPE == "Ring" then
- MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X, SIZE.X, 0.1), VT(0, 0, 0))
- elseif TYPE == "Slash" then
- MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X / 10, 0, SIZE.X / 10), VT(0, 0, 0))
- elseif TYPE == "Round Slash" then
- MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X / 10, 0, SIZE.X / 10), VT(0, 0, 0))
- elseif TYPE == "Swirl" then
- MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0, 0, 0))
- elseif TYPE == "Skull" then
- MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0, 0, 0))
- elseif TYPE == "Crystal" then
- MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0, 0, 0))
- end
- if MSH ~= nil then
- local MOVESPEED
- if MOVEDIRECTION ~= nil then
- MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude / TIME
- end
- local GROWTH = SIZE - ENDSIZE
- local TRANS = TRANSPARENCY - ENDTRANSPARENCY
- if TYPE == "Block" then
- EFFECT.CFrame = CFRAME * ANGLES(RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)))
- else
- EFFECT.CFrame = CFRAME
- end
- for LOOP = 1, TIME + 1 do
- Swait()
- MSH.Scale = MSH.Scale - GROWTH / TIME
- if TYPE == "Wave" then
- MSH.Offset = VT(0, 0, -MSH.Scale.X / 8)
- end
- EFFECT.Transparency = EFFECT.Transparency - TRANS / TIME
- if TYPE == "Block" then
- EFFECT.CFrame = CFRAME * ANGLES(RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)))
- else
- EFFECT.CFrame = EFFECT.CFrame * ANGLES(RAD(ROTATION1), RAD(ROTATION2), RAD(ROTATION3))
- end
- if MOVEDIRECTION ~= nil then
- local ORI = EFFECT.Orientation
- EFFECT.CFrame = CF(EFFECT.Position, MOVEDIRECTION) * CF(0, 0, -MOVESPEED)
- EFFECT.Orientation = ORI
- end
- end
- if PLAYSSOUND == false then
- EFFECT:remove()
- else
- repeat
- Swait()
- until SOUND.Playing == false
- EFFECT:remove()
- end
- elseif PLAYSSOUND == false then
- EFFECT:remove()
- else
- repeat
- Swait()
- until SOUND.Playing == false
- EFFECT:remove()
- end
- end))
- end
- local ATTACKEDTAUNTS = {
- "907332040",
- "907332525",
- "907330011"
- }
- local ATTACKTAUNTS = {
- "907329893",
- "907329532",
- "907333294",
- "907332856"
- }
- local ULTTAUNTS = {
- "907332997",
- "907332670",
- "907330103"
- }
- function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
- local NEWPART = IT("Part")
- NEWPART.formFactor = FORMFACTOR
- NEWPART.Reflectance = REFLECTANCE
- NEWPART.Transparency = TRANSPARENCY
- NEWPART.CanCollide = false
- NEWPART.Locked = true
- NEWPART.Anchored = true
- if ANCHOR == false then
- NEWPART.Anchored = false
- end
- NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
- NEWPART.Name = NAME
- NEWPART.Size = SIZE
- NEWPART.Position = Torso.Position
- NEWPART.Material = MATERIAL
- NEWPART:BreakJoints()
- NEWPART.Parent = PARENT
- return NEWPART
- end
- local weldBetween = function(a, b)
- local weldd = Instance.new("ManualWeld")
- weldd.Part0 = a
- weldd.Part1 = b
- weldd.C0 = CFrame.new()
- weldd.C1 = b.CFrame:inverse() * a.CFrame
- weldd.Parent = a
- return weldd
- 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 m00 < m11 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 >= 1.0E-4 then
- if 1 - cosTheta > 1.0E-4 then
- local theta = ACOS(cosTheta)
- local invSinTheta = 1 / SIN(theta)
- startInterp = SIN((1 - t) * theta) * invSinTheta
- finishInterp = SIN(t * theta) * invSinTheta
- else
- startInterp = 1 - t
- finishInterp = t
- end
- elseif 1 + cosTheta > 1.0E-4 then
- local theta = ACOS(-cosTheta)
- local invSinTheta = 1 / SIN(theta)
- startInterp = SIN((t - 1) * theta) * invSinTheta
- finishInterp = SIN(t * theta) * invSinTheta
- else
- startInterp = t - 1
- finishInterp = t
- 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 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 CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
- local NEWWELD = IT(TYPE)
- NEWWELD.Part0 = PART0
- NEWWELD.Part1 = PART1
- NEWWELD.C0 = C0
- NEWWELD.C1 = C1
- NEWWELD.Parent = PARENT
- return NEWWELD
- end
- local S = IT("Sound")
- function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
- local NEWSOUND
- coroutine.resume(coroutine.create(function()
- NEWSOUND = S:Clone()
- NEWSOUND.Parent = PARENT
- NEWSOUND.EmitterSize = VOLUME * 3
- NEWSOUND.Volume = VOLUME
- NEWSOUND.Pitch = PITCH
- NEWSOUND.SoundId = "http://www.roblox.com/asset/?id=" .. ID
- NEWSOUND:play()
- if DOESLOOP == true then
- NEWSOUND.Looped = true
- else
- repeat
- wait(1)
- until NEWSOUND.Playing == false
- NEWSOUND:remove()
- end
- end))
- return NEWSOUND
- end
- function CFrameFromTopBack(at, top, back)
- local right = top:Cross(back)
- return CF(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
- local BodyColors = Instance.new("BodyColors", Character)
- BodyColors.HeadColor = BrickColor.new("Really red")
- BodyColors.LeftArmColor = BrickColor.new("Really red")
- BodyColors.LeftLegColor = BrickColor.new("Really red")
- BodyColors.RightArmColor = BrickColor.new("Really red")
- BodyColors.RightLegColor = BrickColor.new("Really red")
- BodyColors.TorsoColor = BrickColor.new("Really red")
- local DECAL = IT("Decal")
- function MakeRing()
- local RING = CreatePart(3, Effects, "Neon", 0, 1, BRICKC("Pearl"), "MagicRing", VT(0, 0, 0), true)
- local MSH = IT("BlockMesh", RING)
- local TOP = DECAL:Clone()
- local BOTTOM = DECAL:Clone()
- TOP.Parent = RING
- BOTTOM.Parent = RING
- TOP.Face = "Top"
- BOTTOM.Face = "Bottom"
- TOP.Texture = "http://www.roblox.com/asset/?id=127817121"
- BOTTOM.Texture = "http://www.roblox.com/asset/?id=127817121"
- local function REMOVE()
- coroutine.resume(coroutine.create(function()
- local SIZE = MSH.Scale.X
- for i = 1, 35 do
- Swait()
- MSH.Scale = MSH.Scale - VT(SIZE, 0, SIZE) / 60
- TOP.Transparency = TOP.Transparency + 0.02857142857142857
- BOTTOM.Transparency = BOTTOM.Transparency + 0.02857142857142857
- RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(-5), RAD(0))
- end
- RING:remove()
- end))
- end
- return RING, MSH, REMOVE
- end
- function SHAKECAM(POSITION, RANGE, INTENSITY, TIME)
- local TORSO = Torso
- local HUM = Humanoid
- if TORSO and RANGE >= (TORSO.Position - POSITION).Magnitude then
- coroutine.wrap(function()
- VT = Vector3.new
- MRANDOM = math.random
- local A = TIME
- local B = INTENSITY
- local C = true
- local HUMANOID = Humanoid
- local TIMER = A or 35
- local SHAKE = B or 5
- local FADE = C or true
- if HUMANOID then
- local FADER = SHAKE / TIMER
- for i = 1, TIMER do
- wait()
- HUMANOID.CameraOffset = VT(MRANDOM(-(SHAKE - FADER * i), SHAKE - FADER * i) / 10, MRANDOM(-(SHAKE - FADER * i), SHAKE - FADER * i) / 10, MRANDOM(-(SHAKE - FADER * i), SHAKE - FADER * i) / 10)
- end
- HUMANOID.CameraOffset = VT(0, 0, 0)
- end
- end)()
- end
- end
- shirts = Instance.new("Shirt", Character)
- pants = Instance.new("Pants", Character)
- pants.Name = "Pants"
- Character.Shirt.ShirtTemplate = "http://www.roblox.com/asset/?id=551773417"
- Character.Pants.PantsTemplate = "http://www.roblox.com/asset/?id=1982426077"
- function CreateWave(SIZE, WAIT, CFRAME, DOESROT, ROT, COLOR, GROW)
- local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0, 0, 0))
- local mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "20329976", "", SIZE, VT(0, 0, -SIZE.X / 8))
- wave.CFrame = CFRAME
- coroutine.resume(coroutine.create(function(PART)
- for i = 1, WAIT do
- Swait()
- mesh.Scale = mesh.Scale + GROW
- mesh.Offset = VT(0, 0, -(mesh.Scale.X / 8))
- if DOESROT == true then
- wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, ROT, 0)
- end
- wave.Transparency = wave.Transparency + 0.5 / WAIT
- if wave.Transparency > 0.99 then
- wave:remove()
- end
- end
- end))
- end
- function MagicSphere(SIZE, WAIT, CFRAME, COLOR, GROW)
- local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(1, 1, 1), true)
- local mesh = CreateMesh("SpecialMesh", wave, "Sphere", "", "", SIZE, VT(0, 0, 0))
- wave.CFrame = CFRAME
- coroutine.resume(coroutine.create(function(PART)
- for i = 1, WAIT do
- Swait()
- mesh.Scale = mesh.Scale + GROW
- wave.Transparency = wave.Transparency + 1 / WAIT
- if wave.Transparency > 0.99 then
- wave:remove()
- end
- end
- end))
- end
- function Slice(KIND, SIZE, WAIT, CFRAME, COLOR, GROW)
- local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(1, 1, 1), true)
- local mesh
- if KIND == "Base" then
- mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "448386996", "", VT(0, SIZE / 10, SIZE / 10), VT(0, 0, 0))
- elseif KIND == "Thin" then
- mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "662586858", "", VT(SIZE / 10, 0, SIZE / 10), VT(0, 0, 0))
- elseif KIND == "Round" then
- mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "662585058", "", VT(SIZE / 10, 0, SIZE / 10), VT(0, 0, 0))
- end
- wave.CFrame = CFRAME
- coroutine.resume(coroutine.create(function(PART)
- for i = 1, WAIT do
- Swait()
- mesh.Scale = mesh.Scale + GROW / 10
- wave.Transparency = wave.Transparency + 0.5 / WAIT
- if wave.Transparency > 0.99 then
- wave:remove()
- end
- end
- end))
- end
- function FireArc(Part, ToLocation, AmountOfTime, Height, DoesCourontine)
- if DoesCourontine == false then
- local Direction = CF(Part.Position, ToLocation)
- local Distance = (Part.Position - ToLocation).magnitude
- for i = 1, AmountOfTime do
- Swait()
- Part.CFrame = Direction * CF(0, AmountOfTime / 200 + (AmountOfTime / Height - i * 2 / Height), -Distance / AmountOfTime)
- Direction = Part.CFrame
- end
- Part:remove()
- elseif DoesCourontine == true then
- coroutine.resume(coroutine.create(function()
- local Direction = CF(Part.Position, ToLocation)
- local Distance = (Part.Position - ToLocation).magnitude
- for i = 1, AmountOfTime do
- Swait()
- Part.CFrame = Direction * CF(0, AmountOfTime / 200 + (AmountOfTime / Height - i * 2 / Height), -Distance / AmountOfTime)
- Direction = Part.CFrame
- end
- Part:remove()
- end))
- end
- end
- local naeeym2 = Instance.new("BillboardGui", Character)
- naeeym2.AlwaysOnTop = true
- naeeym2.Size = UDim2.new(15, 35, 2, 15)
- naeeym2.StudsOffset = Vector3.new(0, 3, 0)
- naeeym2.Adornee = Character.Head
- naeeym2.Name = "Name"
- local tecks2 = Instance.new("TextLabel", naeeym2)
- tecks2.BackgroundTransparency = 1
- tecks2.TextScaled = true
- tecks2.BorderSizePixel = 0
- tecks2.Text = "Void Mania"
- tecks2.Font = "Antique"
- tecks2.TextSize = 30
- tecks2.TextStrokeTransparency = 0
- tecks2.TextColor3 = Color3.new(1, 0, 0)
- tecks2.TextStrokeColor3 = Color3.new(0, 0, 0)
- tecks2.Size = UDim2.new(1, 0, 0.5, 0)
- tecks2.Parent = naeeym2
- Humanoid.Died:connect(function()
- Humanoid.Parent = nil
- Humanoid.MaxHealth = "inf"
- Humanoid.Health = "inf"
- refit()
- Humanoid.Parent = Character
- CreateSound(ATTACKEDTAUNTS[MRANDOM(1, #ATTACKEDTAUNTS)], Head, 10, 0.9)
- for i = 1, 5 do
- Slice("Round", 0.6, 35, CF(Torso.Position) * ANGLES(RAD(MRANDOM(-18, 18)), RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-18, 18))), "Really red", VT(0.1, 0, 0.1))
- end
- killnearest(Torso.Position, 25, 180)
- end)
- function killnearest(position, range, maxstrength)
- for i, v in ipairs(workspace:GetChildren()) do
- local body = v:GetChildren()
- for part = 1, #body do
- if (body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character and range > (body[part].Position - position).Magnitude then
- if v.ClassName == "Model" then
- v:BreakJoints()
- end
- local bv = Instance.new("BodyVelocity")
- bv.maxForce = Vector3.new(1000000000, 1000000000, 1000000000)
- bv.velocity = CF(position, body[part].Position).lookVector * maxstrength
- bv.Parent = body[part]
- Debris:AddItem(bv, 0.2)
- end
- end
- if v.ClassName == "Part" and v.Anchored == false and range > (v.Position - position).Magnitude then
- v.Velocity = CFrame.new(position, v.Position).lookVector * 5 * maxstrength
- end
- end
- end
- function Transparency(TRANS)
- tecks2.TextTransparency = TRANS
- tecks2.TextStrokeTransparency = TRANS
- for _, c in pairs(Character:GetChildren()) do
- if c.ClassName == "Part" and c ~= RootPart then
- c.Transparency = TRANS
- if c:FindFirstChildOfClass("Decal") then
- c:FindFirstChildOfClass("Decal").Transparency = TRANS
- end
- elseif c.ClassName == "Accessory" then
- c.Handle.Transparency = TRANS
- elseif c.ClassName == "Model" then
- for _, q in pairs(c:GetChildren()) do
- if q.ClassName == "Part" then
- q.Transparency = TRANS
- if q:FindFirstChildOfClass("Decal") then
- q:FindFirstChildOfClass("Decal").Transparency = TRANS
- end
- end
- end
- end
- end
- end
- function Endless_Pain()
- local HITBODIES = {}
- local HITFLOOR, HITPOS, NORMAL = Raycast(RootPart.Position, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 7 * Player_Size, Character)
- if HITFLOOR ~= nil then
- CreateSound("463598785", RootPart, 10, 0.8)
- ATTACK = true
- Rooted = true
- VALUE1 = true
- for i = 1, 500 do
- Swait()
- AddChildrenToTable(HITPOS, workspace, i / 3, HITBODIES)
- Slice("Round", 0.5 + i / 50, 35, CF(HITPOS + VT(0, 0.1, 0), HITPOS + VT(0, 0.1, 0) + NORMAL) * ANGLES(RAD(90), RAD(0), RAD(0)) * ANGLES(RAD(MRANDOM(-18, 18)), RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-18, 18))), "Really red", VT(0.001, 0, 0.001))
- Slice("Round", 0.5 + i / 50, 45, CF(HITPOS + VT(0, 0.1, 0), HITPOS + VT(0, 0.1, 0) + NORMAL) * ANGLES(RAD(90), RAD(MRANDOM(-180, 180)), RAD(0)), "Really red", VT(0, 0, 0))
- RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(-35 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(5 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
- Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(-25 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-5 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
- RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-40), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(12 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
- LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(-40), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
- RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-35 - 7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
- LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-35 - 7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
- for e = 1, #HITBODIES do
- if HITBODIES[e] ~= nil then
- local BOD = HITBODIES[e]
- local TORS = BOD:FindFirstChild("Torso") or BOD:FindFirstChild("UpperTorso")
- if TORS and TORS:FindFirstChild("BV") == nil then
- local bv = Instance.new("BodyVelocity")
- bv.Name = "BV"
- bv.maxForce = Vector3.new(1000000000, 1000000000, 1000000000)
- bv.velocity = CF(TORS.Position, TORS.Position + VT(0, 1, 0)).lookVector * 20
- bv.Parent = TORS
- Debris:AddItem(bv, 0.1)
- end
- end
- end
- end
- coroutine.resume(coroutine.create(function()
- for e = 1, #HITBODIES do
- Swait()
- if HITBODIES[e] ~= nil then
- local BOD = HITBODIES[e]
- for i = 1, #HITBODIES do
- if HITBODIES[i] == BOD and i ~= e then
- table.remove(HITBODIES, i)
- end
- end
- local TORS = BOD:FindFirstChild("Torso") or BOD:FindFirstChild("UpperTorso")
- if TORS then
- TORS.Anchored = false
- CreateSound("92597369", TORS, 10, 0.8)
- Slice("Thin", 1, 35, CF(TORS.Position, HITPOS) * ANGLES(RAD(0), RAD(-90), RAD(0)), "Really red", VT(0.01, 0, 0.01))
- BOD:BreakJoints()
- for _, c in pairs(BOD:GetChildren()) do
- if c.ClassName == "Part" or c.ClassName == "MeshPart" then
- local bv = Instance.new("BodyVelocity")
- bv.maxForce = Vector3.new(1000000000, 1000000000, 1000000000)
- bv.velocity = CF(HITPOS, c.Position).lookVector * 250
- bv.Parent = c
- Debris:AddItem(bv, 0.2)
- end
- end
- end
- end
- end
- end))
- VALUE1 = false
- ATTACK = false
- Rooted = false
- end
- end
- function Absoluteum()
- local HITFLOOR, HITPOS, NORMAL = Raycast(RootPart.Position, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 7 * Player_Size, Character)
- if HITFLOOR ~= nil then
- do
- local HITBODIES = {}
- ATTACK = true
- Rooted = true
- local ABSOLUTE = CreatePart(3, Effects, "Neon", 0, 1, "Really red", "ABSOLUTEUM", VT(0, 0, 0))
- MakeForm(ABSOLUTE, "Ball")
- CreateSound("416200578", RootPart, 10, 1)
- for i = 0, 8, 0.1 / Animation_Speed do
- Swait()
- ABSOLUTE.Size = ABSOLUTE.Size + VT(0.2, 0.2, 0.2)
- ABSOLUTE.CFrame = RootPart.CFrame * CF(0, 5 + ABSOLUTE.Size.Y / 2, 0)
- ABSOLUTE.Transparency = ABSOLUTE.Transparency - 0.01
- local CHARGE = CreatePart(3, Effects, "Neon", 0, 0, "Maroon", "ABSOLUTEUM", VT(2, 2, 2))
- MakeForm(CHARGE, "Ball")
- CHARGE.CFrame = CF(RootPart.Position) * CF(MRANDOM(-15, 15), -15, MRANDOM(-15, 15))
- FireArc(CHARGE, ABSOLUTE.Position, 45, 45, true)
- RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(15 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
- Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(-25 + 4.5 * SIN(SINE / 12)), RAD(25), RAD(-15 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
- RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 1.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(170), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(-12 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
- LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
- RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
- LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
- end
- CreateSound(ULTTAUNTS[MRANDOM(1, #ULTTAUNTS)], Head, 10, 0.9)
- CreateSound("160772554", ABSOLUTE, 10, MRANDOM(5, 7) / 10)
- for i = 1, 45 do
- Swait()
- RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(15 + 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
- Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(-25 + 4.5 * SIN(SINE / 12)), RAD(25), RAD(-15 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
- RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 1.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(170), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(-12 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
- LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
- RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
- LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
- end
- coroutine.resume(coroutine.create(function()
- local IMPACT = false
- local BULLET = ABSOLUTE
- MakeForm(BULLET, "Ball")
- BULLET.CFrame = CF(BULLET.Position, Mouse.Hit.p)
- for i = 1, 500 do
- Swait()
- BULLET.CFrame = BULLET.CFrame * CF(0, 0, -2)
- local HIT = Raycast(BULLET.Position, BULLET.CFrame.lookVector, BULLET.Size.X / 2, Character)
- MagicSphere(VT(10, 10, 10), 55, CF(BULLET.CFrame * CF(MRANDOM(-BULLET.Size.X / 2.5, BULLET.Size.X / 2.5), MRANDOM(-BULLET.Size.X / 2.5, BULLET.Size.X / 2.5), MRANDOM(-BULLET.Size.X / 2.5, BULLET.Size.X / 2.5)).p), "Really red", VT(-10, -10, -10) / 55)
- if HIT ~= nil then
- IMPACT = true
- break
- end
- end
- if IMPACT == false then
- for i = 1, 40 do
- Swait()
- BULLET.Size = BULLET.Size * 0.9
- end
- BULLET:remove()
- else
- CreateSound("1127492102", BULLET, 10, MRANDOM(8, 13) / 10)
- for i = 1, 175 do
- Swait()
- BULLET.Size = BULLET.Size * 0.99
- Slice("Round", 0, 35, CF(BULLET.Position) * ANGLES(RAD(MRANDOM(-18, 18)), RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-18, 18))), "Really red", VT(i, 0, i) / 85)
- end
- CreateSound("438666001", BULLET, 10, 3)
- Swait(35)
- BULLET.Transparency = 1
- for i = 1, 20 do
- for e = 1, 5 do
- MagicSphere(VT(0.2, 0.2, 0.2), 50, CF(BULLET.CFrame * CF(MRANDOM(-5, 5), MRANDOM(-5, 5), MRANDOM(-5, 5)).p, BULLET.Position), "Really black", VT(1, 1, i * 4), 0)
- Slice("Round", 0, 35, CF(BULLET.Position) * ANGLES(RAD(MRANDOM(-18, 18)), RAD(MRANDOM(-180, 180)), RAD(MRANDOM(-18, 18))), "Really red", VT(i, 0, i) / 3)
- end
- AddChildrenToTable(BULLET.Position, workspace, i * 25, HITBODIES)
- CreateSound("178452241", BULLET, 10, MRANDOM(8, 13) / 10)
- CreateSound("178452243", BULLET, 10, MRANDOM(8, 13) / 10)
- MagicSphere(BULLET.Size, 35, BULLET.CFrame, C3(MRANDOM(0, 10) / 10, 0, 0), VT(i, i, i) * 2)
- Swait(5)
- for e = 1, #HITBODIES do
- if HITBODIES[e] ~= nil then
- local BOD = HITBODIES[e]
- local TORS = BOD:FindFirstChild("Torso") or BOD:FindFirstChild("UpperTorso")
- if TORS then
- BOD:BreakJoints()
- for _, c in pairs(BOD:GetChildren()) do
- if c.ClassName == "Part" or c.ClassName == "MeshPart" then
- local bv = Instance.new("BodyVelocity")
- bv.maxForce = Vector3.new(1000000000, 1000000000, 1000000000)
- bv.velocity = CF(BULLET.Position, c.Position).lookVector * 250
- bv.Parent = c
- Debris:AddItem(bv, 0.2)
- end
- end
- end
- end
- end
- CreateWave(VT(0, 2, 0), 75, CF(BULLET.Position), true, -15, "Really red", VT(i, 0, i) * 2)
- end
- MagicSphere(BULLET.Size, 100, BULLET.CFrame, C3(1, 0, 0), VT(12, 12, 12))
- Debris:AddItem(BULLET, 10)
- end
- end))
- ATTACK = false
- Rooted = false
- end
- end
- end
- local Decal = IT("Decal")
- function CreateRing(SIZE,DOESROT,ROT,WAIT,CFRAME,COLOR,GROW)
- local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
- local mesh = IT("SpecialMesh",wave)
- mesh.MeshType = "FileMesh"
- mesh.MeshId = "http://www.roblox.com/asset/?id=3270017"
- mesh.Scale = SIZE
- mesh.Offset = VT(0,0,0)
- wave.CFrame = CFRAME
- coroutine.resume(coroutine.create(function(PART)
- for i = 1, WAIT do
- Swait()
- mesh.Scale = mesh.Scale + GROW
- if DOESROT == true then
- wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
- end
- wave.Transparency = wave.Transparency + (0.5/WAIT)
- if wave.Transparency > 0.99 then
- wave:remove()
- end
- end
- end))
- end
- local Character = owner.Character --game.Workspace.fefio92142
- -------------------------------------------------------------------------------------
- -------------------------------------------------------------------------------------
- local Color = BrickColor.new("Really red").Color
- local Num = 0.5
- local Num2 = 4 -------------Mods:1,4,8,10,15,20-------------------------------------
- local Size = 0.8
- local Rate = 300
- -------------------------------------------------------------------------------------
- local Player = owner
- local Character = Player.Character
- Torso = Character:WaitForChild'Torso'
- local Wing1 = Instance.new("Part",Character)
- Wing1.FormFactor = Enum.FormFactor.Custom
- Wing1.Size = Vector3.new(.1, .1, .1)
- Wing1.Name = "WIng_1"
- local fire = Instance.new("ParticleEmitter", Wing1)
- fire.VelocitySpread = 0
- fire.Lifetime = NumberRange.new(2)
- fire.Acceleration = Vector3.new(0, 2, 2)
- fire.RotSpeed = NumberRange.new(10)
- fire.Rate = Rate
- fire.Rotation = NumberRange.new(151515)
- fire.Name = "Fire"
- fire.LightEmission = 0.78
- fire.LockedToPart = true
- fire.Texture = "rbxasset://textures/particles/explosion01_implosion_main.dds"
- fire.Color = ColorSequence.new(BrickColor.new("Really red").Color, BrickColor.new("Really red").Color)
- fire.Size = NumberSequence.new({NumberSequenceKeypoint.new(0, Size), NumberSequenceKeypoint.new(1, Size)})
- local Wing2 = Wing1:Clone()
- Wing2.Parent = Torso
- local x,y,z = 0,-1,-6
- Wld = function(a,b,cf)
- local Weld = Instance.new('Weld',a)
- Weld.Part0 = a
- Weld.Part1 = b
- Weld.C1 = cf
- return Weld
- end
- local wld = Wld(Torso,Wing1,CFrame.new(0,0,-.5)*CFrame.Angles(-math.rad(90),-math.rad(20),-math.rad(90)))
- local wld2 = Wld(Torso,Wing2,CFrame.new(0,0,.5)*CFrame.Angles(-math.rad(90),-math.rad(20),-math.rad(90)))
- game:service'RunService'.Stepped:connect(function()
- --z = 6+math.sin(tick()*2)
- y = -1+math.sin(tick()*Num)*Num2
- Wing1.Fire.Acceleration = Vector3.new(x,y,z)
- Wing2.Fire.Acceleration = Vector3.new(x,y,-z)
- end)
- ------------------------------------------------------------------------------------------------
- local Player = owner
- local Character = Player.Character
- Torso = Character:WaitForChild'Torso'
- local Wing1 = Instance.new("Part",Character)
- Wing1.FormFactor = Enum.FormFactor.Custom
- Wing1.Size = Vector3.new(.2, .2, .2)
- Wing1.Name = "WIng_1"
- local fire = Instance.new("ParticleEmitter", Wing1)
- fire.VelocitySpread = 0
- fire.Lifetime = NumberRange.new(2.5)
- fire.Acceleration = Vector3.new(0, 4, 4)
- fire.RotSpeed = NumberRange.new(10)
- fire.Rate = Rate
- fire.Rotation = NumberRange.new(151515)
- fire.Name = "Fire"
- fire.LightEmission = 0.78
- fire.LockedToPart = true
- fire.Texture = "rbxasset://textures/particles/explosion01_implosion_main.dds"
- fire.Color = ColorSequence.new(BrickColor.new("Really red").Color, BrickColor.new("Really red").Color)
- fire.Size = NumberSequence.new({NumberSequenceKeypoint.new(0, Size), NumberSequenceKeypoint.new(1, Size)})
- local Wing2 = Wing1:Clone()
- Wing2.Parent = Torso
- local x,y,z = 0,-1,-6
- Wld = function(a,b,cf)
- local Weld = Instance.new('Weld',a)
- Weld.Part0 = a
- Weld.Part1 = b
- Weld.C1 = cf
- return Weld
- end
- local wld = Wld(Torso,Wing1,CFrame.new(0,0,-.5)*CFrame.Angles(-math.rad(90),-math.rad(30),-math.rad(90)))
- local wld2 = Wld(Torso,Wing2,CFrame.new(0,0,.5)*CFrame.Angles(-math.rad(90),-math.rad(30),-math.rad(90)))
- print'Loaded'
- game:service'RunService'.Stepped:connect(function()
- --z = 6+math.sin(tick()*2)
- y = -1+math.sin(tick()*Num)*Num2
- Wing1.Fire.Acceleration = Vector3.new(x,y,z)
- Wing2.Fire.Acceleration = Vector3.new(x,y,-z)
- end)
- ------------------------------------------------------------------------------------------------
- local Player = owner
- local Character = Player.Character
- Torso = Character:WaitForChild'Torso'
- local Wing1 = Instance.new("Part",Character)
- Wing1.FormFactor = Enum.FormFactor.Custom
- Wing1.Size = Vector3.new(.1, .1, .1)
- Wing1.Name = "WIng_1"
- local fire = Instance.new("ParticleEmitter", Wing1)
- fire.VelocitySpread = 0
- fire.Lifetime = NumberRange.new(2.8)
- fire.Acceleration = Vector3.new(0, 4, 4)
- fire.RotSpeed = NumberRange.new(10)
- fire.Rate = Rate
- fire.Rotation = NumberRange.new(151515)
- fire.Name = "Fire"
- fire.LightEmission = 0.78
- fire.LockedToPart = true
- fire.Texture = "rbxasset://textures/particles/explosion01_implosion_main.dds"
- fire.Color = ColorSequence.new(BrickColor.new("Really red").Color, BrickColor.new("Really red").Color)
- fire.Size = NumberSequence.new({NumberSequenceKeypoint.new(0, Size), NumberSequenceKeypoint.new(1, Size)})
- local Wing2 = Wing1:Clone()
- Wing2.Parent = Torso
- local x,y,z = 0,-1,-6
- Wld = function(a,b,cf)
- local Weld = Instance.new('Weld',a)
- Weld.Part0 = a
- Weld.Part1 = b
- Weld.C1 = cf
- return Weld
- end
- local wld = Wld(Torso,Wing1,CFrame.new(0,0,-.5)*CFrame.Angles(-math.rad(90),-math.rad(40),-math.rad(90)))
- local wld2 = Wld(Torso,Wing2,CFrame.new(0,0,.5)*CFrame.Angles(-math.rad(90),-math.rad(40),-math.rad(90)))
- print'Loaded'
- game:service'RunService'.Stepped:connect(function()
- --z = 6+math.sin(tick()*2)
- y = -1+math.sin(tick()*Num)*Num2
- Wing1.Fire.Acceleration = Vector3.new(x,y,z)
- Wing2.Fire.Acceleration = Vector3.new(x,y,-z)
- end)
- ------------------------------------------------------------------------------------------------
- local Player = owner
- local Character = Player.Character
- Torso = Character:WaitForChild'Torso'
- local Wing1 = Instance.new("Part",Character)
- Wing1.FormFactor = Enum.FormFactor.Custom
- Wing1.Size = Vector3.new(.1, .1, .1)
- Wing1.Name = "WIng_1"
- local fire = Instance.new("ParticleEmitter", Wing1)
- fire.VelocitySpread = 0
- fire.Lifetime = NumberRange.new(3)
- fire.Acceleration = Vector3.new(0, 4, 4)
- fire.RotSpeed = NumberRange.new(10)
- fire.Rate = Rate
- fire.Rotation = NumberRange.new(151515)
- fire.Name = "Fire"
- fire.LightEmission = 0.78
- fire.LockedToPart = true
- fire.Texture = "rbxasset://textures/particles/explosion01_implosion_main.dds"
- fire.Color = ColorSequence.new(BrickColor.new("Really red").Color,BrickColor.new("Really red").Color)
- fire.Size = NumberSequence.new({NumberSequenceKeypoint.new(0, Size), NumberSequenceKeypoint.new(1, Size)})
- local Wing2 = Wing1:Clone()
- Wing2.Parent = Torso
- local x,y,z = 0,-1,-6
- Wld = function(a,b,cf)
- local Weld = Instance.new('Weld',a)
- Weld.Part0 = a
- Weld.Part1 = b
- Weld.C1 = cf
- return Weld
- end
- local wld = Wld(Torso,Wing1,CFrame.new(0,0,-.5)*CFrame.Angles(-math.rad(90),-math.rad(50),-math.rad(90)))
- local wld2 = Wld(Torso,Wing2,CFrame.new(0,0,.5)*CFrame.Angles(-math.rad(90),-math.rad(50),-math.rad(90)))
- print'Loaded'
- game:service'RunService'.Stepped:connect(function()
- --z = 6+math.sin(tick()*2)
- y = -1+math.sin(tick()*Num)*Num2
- Wing1.Fire.Acceleration = Vector3.new(x,y,z)
- Wing2.Fire.Acceleration = Vector3.new(x,y,-z)
- end)
- ------------------------------------------------------------------------------------------------
- local Player = owner
- local Character = Player.Character
- Torso = Character:WaitForChild'Torso'
- local Wing1 = Instance.new("Part",Character)
- Wing1.FormFactor = Enum.FormFactor.Custom
- Wing1.Size = Vector3.new(.1, .1, .1)
- Wing1.Name = "WIng_1"
- local fire = Instance.new("ParticleEmitter", Wing1)
- fire.VelocitySpread = 0
- fire.Lifetime = NumberRange.new(3.1)
- fire.Acceleration = Vector3.new(0, 4, 4)
- fire.RotSpeed = NumberRange.new(10)
- fire.Rate = Rate
- fire.Rotation = NumberRange.new(151515)
- fire.Name = "Fire"
- fire.LightEmission = 0.78
- fire.LockedToPart = true
- fire.Texture = "rbxasset://textures/particles/explosion01_implosion_main.dds"
- fire.Color = ColorSequence.new(BrickColor.new("Really red").Color, BrickColor.new("Really red").Color)
- fire.Size = NumberSequence.new({NumberSequenceKeypoint.new(0, Size), NumberSequenceKeypoint.new(1, Size)})
- local Wing2 = Wing1:Clone()
- Wing2.Parent = Torso
- local x,y,z = 0,-1,-6
- Wld = function(a,b,cf)
- local Weld = Instance.new('Weld',a)
- Weld.Part0 = a
- Weld.Part1 = b
- Weld.C1 = cf
- return Weld
- end
- local wld = Wld(Torso,Wing1,CFrame.new(0,0,-.5)*CFrame.Angles(-math.rad(90),-math.rad(60),-math.rad(90)))
- local wld2 = Wld(Torso,Wing2,CFrame.new(0,0,.5)*CFrame.Angles(-math.rad(90),-math.rad(60),-math.rad(90)))
- print'Loaded'
- game:service'RunService'.Stepped:connect(function()
- --z = 6+math.sin(tick()*2)
- y = -1+math.sin(tick()*Num)*Num2
- Wing1.Fire.Acceleration = Vector3.new(x,y,z)
- Wing2.Fire.Acceleration = Vector3.new(x,y,-z)
- 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 MagicSphere(SIZE,WAIT,CFRAME,COLOR,GROW)
- local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(1,1,1), true)
- local mesh = IT("SpecialMesh",wave)
- mesh.MeshType = "Sphere"
- mesh.Scale = SIZE
- mesh.Offset = VT(0,0,0)
- wave.CFrame = CFRAME
- coroutine.resume(coroutine.create(function(PART)
- for i = 1, WAIT do
- Swait()
- mesh.Scale = mesh.Scale + GROW
- wave.Transparency = wave.Transparency + (1/WAIT)
- if wave.Transparency > 0.99 then
- wave:remove()
- end
- end
- end))
- end
- function MagicBlock(SIZE,WAIT,CFRAME,COLOR,GROW)
- local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(SIZE,SIZE,SIZE), true)
- local mesh = IT("BlockMesh",wave)
- wave.CFrame = CFRAME
- coroutine.resume(coroutine.create(function(PART)
- for i = 1, WAIT do
- Swait()
- mesh.Scale = mesh.Scale + GROW
- wave.CFrame = CFRAME * ANGLES(RAD(math.random(-360,360)),RAD(math.random(-360,360)),RAD(math.random(-360,360)))
- wave.Transparency = wave.Transparency + (1/WAIT)
- if wave.Transparency > 0.99 then
- wave:remove()
- end
- end
- end))
- end
- function MakeForm(PART,TYPE)
- if TYPE == "Cyl" then
- local MSH = IT("CylinderMesh",PART)
- elseif TYPE == "Ball" then
- local MSH = IT("SpecialMesh",PART)
- MSH.MeshType = "Sphere"
- elseif TYPE == "Wedge" then
- local MSH = IT("SpecialMesh",PART)
- MSH.MeshType = "Wedge"
- elseif TYPE == "Head" then
- local MSH = IT("SpecialMesh",PART)
- MSH.Scale = VT(1.25,1.25,1.25)
- end
- end
- function CheckTableForString(Table, String)
- for i, v in pairs(Table) do
- if string.find(string.lower(String), string.lower(v)) then
- return true
- end
- end
- return false
- end
- function CheckIntangible(Hit)
- local ProjectileNames = {"Water", "Arrow", "Projectile", "Effect", "Rail", "Lightning", "Bullet"}
- if Hit and Hit.Parent then
- if ((not Hit.CanCollide or CheckTableForString(ProjectileNames, Hit.Name)) and not Hit.Parent:FindFirstChild("Humanoid")) then
- return true
- end
- end
- return false
- end
- Debris = game:GetService("Debris")
- function CastZapRay(StartPos, Vec, Length, Ignore, DelayIfHit)
- local Direction = CFrame.new(StartPos, Vec).lookVector
- local Ignore = ((type(Ignore) == "table" and Ignore) or {Ignore})
- local RayHit, RayPos, RayNormal = game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(StartPos, Direction * Length), Ignore)
- if RayHit and CheckIntangible(RayHit) then
- if DelayIfHit then
- wait()
- end
- RayHit, RayPos, RayNormal = CastZapRay((RayPos + (Vec * 0.01)), Vec, (Length - ((StartPos - RayPos).magnitude)), Ignore, DelayIfHit)
- end
- return RayHit, RayPos, RayNormal
- end
- function CreateMagicCircle()
- local sinkhole = IT("Part")
- sinkhole.Size = VT(0,0,0)
- sinkhole.Parent = Effects
- sinkhole.Material = "Neon"
- sinkhole.Color = BrickColor.new("Really red").Color
- sinkhole.Anchored = true
- sinkhole.CanCollide = false
- sinkhole.Transparency = 1
- local decal = IT("Decal",sinkhole)
- decal.Face = "Top"
- decal.Texture = "http://www.roblox.com/asset/?id=112671903"
- local decal2 = IT("Decal",sinkhole)
- decal2.Face = "Bottom"
- decal2.Texture = "http://www.roblox.com/asset/?id=112671903"
- return sinkhole
- end
- function CreateGUICircle(TARGET)
- local GUI = Instance.new("BillboardGui",Character)
- GUI.Size = UDim2.new(0,0,0,0)
- GUI.Adornee = TARGET
- local GUI2 = IT("ImageLabel",GUI)
- GUI2.BackgroundTransparency = 1
- GUI2.BorderSizePixel = 0
- GUI2.Size = UDim2.new(1,0,1,0)
- GUI2.SizeConstraint = "RelativeYY"
- GUI.AlwaysOnTop = true
- GUI2.Image = "http://www.roblox.com/asset/?id=112671903"
- return GUI,GUI2
- end
- function CastWarpOutlines(TARGET)
- coroutine.resume(coroutine.create(function()
- local T = TARGET:GetChildren()
- for i = 1, # T do
- local child = T[i]
- if child.ClassName == "Part" or child.ClassName == "MeshPart" then
- local clone = child:Clone()
- clone.Parent = Effects
- clone.Anchored = true
- clone.CanCollide = false
- clone:ClearAllChildren()
- clone.CFrame = child.CFrame
- if clone.Name == "Head" then
- clone.Size = VT(clone.Size.Y,clone.Size.Y,clone.Size.Y)
- end
- if clone.ClassName == "MeshPart" then
- clone.TextureID = ""
- end
- clone.BrickColor = BRICKC"Really red"
- clone.Material = "Neon"
- coroutine.resume(coroutine.create(function()
- for i = 1, 200 do
- Swait()
- clone.Transparency = clone.Transparency + 0.005
- clone.Size = clone.Size + VT(0.001,0.001,0.001)
- end
- clone:remove()
- end))
- end
- end
- end))
- end
- function turnto(position)
- RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
- end
- local face = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Face mask", VT(1.001,1.001,1.001),false)
- local weld = CreateWeldOrSnapOrMotor("Weld", face, Head, face, CF(0.02,0,0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
- MakeForm(face,"Head")
- local part = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Eye", VT(0.4,0.25,0.2),false)
- local weld = CreateWeldOrSnapOrMotor("Weld", part, Head, part, CF(0.15,0.28,-0.53) * ANGLES(RAD(15), RAD(0), RAD(25)), CF(0, 0, 0))
- MakeForm(part,"Ball")
- local Eye = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Eye", VT(0.1,0.1,0.15),false)
- local PupilWeld = CreateWeldOrSnapOrMotor("Weld", Eye, Head, Eye, CF(0.13,0.24,-0.58) * ANGLES(RAD(0), RAD(0), RAD(25)), CF(0, 0, 0))
- MakeForm(Eye,"Ball")
- local face = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Face mask", VT(1.001,1.001,1.001),false)
- local weld = CreateWeldOrSnapOrMotor("Weld", face, Head, face, CF(-0.02,0,0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
- MakeForm(face,"Head")
- local part = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Eye", VT(0.4,0.25,0.2),false)
- local weld = CreateWeldOrSnapOrMotor("Weld", part, Head, part, CF(0.15,0.28,-0.53) * ANGLES(RAD(-15), RAD(0), RAD(-25)), CF(0, 0, 0))
- MakeForm(part,"Ball")
- local Eye = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Eye", VT(0.1,0.1,0.15),false)
- local PupilWeld = CreateWeldOrSnapOrMotor("Weld", Eye, Head, Eye, CF(-0.13,-0.24,0.58) * ANGLES(RAD(0), RAD(0), RAD(-25)), CF(0, 0, 0))
- MakeForm(Eye,"Ball")
- for _, c in pairs(Weapon:GetChildren()) do
- if c.ClassName == "Part" then
- c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
- end
- end
- Weapon.Parent = Character
- Humanoid.Died:connect(function()
- ATTACK = true
- end)
- function StatLabel(LABELTYPE, CFRAME, TEXT, COLOR)
- local STATPART = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
- STATPART.CFrame = CF(CFRAME.p + VT(0, 1.5, 0))
- local BODYGYRO = IT("BodyGyro", STATPART)
- local BODYPOSITION = IT("BodyPosition", STATPART)
- BODYPOSITION.P = 2000
- BODYPOSITION.D = 100
- BODYPOSITION.maxForce = VT(math.huge, math.huge, math.huge)
- BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 6, MRANDOM(-2, 2))
- game:GetService("Debris"):AddItem(STATPART ,5)
- local BILLBOARDGUI = Instance.new("BillboardGui", STATPART)
- BILLBOARDGUI.Adornee = STATPART
- BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0)
- BILLBOARDGUI.StudsOffset = VT(-2, 2, 0)
- BILLBOARDGUI.AlwaysOnTop = false
- local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI)
- TEXTLABEL.BackgroundTransparency = 1
- TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0)
- TEXTLABEL.Text = TEXT
- TEXTLABEL.Font = "SciFi"
- TEXTLABEL.FontSize="Size42"
- TEXTLABEL.TextColor3 = COLOR
- TEXTLABEL.TextStrokeTransparency = 1
- TEXTLABEL.TextScaled = true
- TEXTLABEL.TextWrapped = true
- coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL)
- if LABELTYPE == "Normal" then
- for i = 1, 20 do
- STATPART.Position = STATPART.Position + VT(0, (15-i)/10 ,0)
- TEXTLABEL.Transparency = TEXTLABEL.Transparency + (1/20)
- end
- elseif LABELTYPE == "Debuff" then
- for i = 1, 20 do
- STATPART.Position = STATPART.Position - VT(0, i/10 ,0)
- TEXTLABEL.Transparency = TEXTLABEL.Transparency + (1/20)
- end
- elseif LABELTYPE == "Shock" then
- local ORIGIN = STATPART.Position
- for i = 1, 20 do
- STATPART.Position = ORIGIN + VT(MRANDOM(-2,2),MRANDOM(-2,2),MRANDOM(-2,2))
- TEXTLABEL.Transparency = TEXTLABEL.Transparency + (1/20)
- end
- end
- THEPART.Parent = nil
- end),STATPART, BODYPOSITION, TEXTLABEL)
- end
- function AoEDamage(position,radius,min,max,maxstrength,beserk,critrate,critmultiplier,CanBeDodgedByJumping,DoesWarp,Instakill,HasChain)
- local dmg = math.random(min,max)
- for i,v in ipairs(workspace:GetChildren()) do
- if v:FindFirstChild("HitBy"..Player.Name) == nil then
- local body = v:GetChildren()
- for part = 1, #body do
- if(v:FindFirstChild("HitBy"..Player.Name) == nil and (body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
- if(body[part].Position - position).Magnitude < radius then
- if v.ClassName == "Model" then
- if v:FindFirstChildOfClass("Humanoid") then
- local HUMAN = v:FindFirstChildOfClass("Humanoid")
- if HUMAN.Health ~= 0 then
- if HasChain == true then
- local defence = Instance.new("BoolValue",v)
- defence.Name = ("HitBy"..Player.Name)
- game:GetService("Debris"):AddItem(defence, 1)
- coroutine.resume(coroutine.create(function()
- local TORSO = v:FindFirstChild("Torso") or v:FindFirstChild("UpperTorso")
- if TORSO then
- --print("Found "..v.Name.."'s Torso")
- local PART = IT("Part",Effects)
- PART.Anchored = true
- PART.CanCollide = false
- PART.Transparency = 1
- PART.CFrame = CF(position)
- Debris:AddItem(PART,15)
- local A = IT("Attachment",PART)
- --TORSO.Anchored = true
- local Front = CreatePart(3, Effects, "Neon", 1, 1, "Really black", "Chain head", VT(1,1,1),false)
- --print("Chain start")
- Front.CFrame = CF(position)
- Front.CanCollide = true
- CreateSound(HITWEAPONSOUNDS[MRANDOM(1,#HITWEAPONSOUNDS)], Front, 10, 1)
- local B = IT("Attachment",Front)
- local ChainLink = IT("Beam",Effects)
- ChainLink.Texture = "rbxassetid://1262544869"
- ChainLink.TextureSpeed = 0
- ChainLink.FaceCamera = true
- ChainLink.Width0 = 3
- ChainLink.Attachment0 = A
- ChainLink.Attachment1 = B
- ChainLink.TextureMode = "Static"
- local bv = Instance.new("BodyVelocity")
- bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
- bv.velocity = CF(Front.Position,TORSO.Position).lookVector*500
- bv.Parent = Front
- bv.Name = "MOVE"
- --print("Chain made")
- coroutine.resume(coroutine.create(function()
- Swait(30)
- bv:remove()
- local POS = Front.Position
- Front.CanCollide = false
- local onefourth = POS:Lerp(position, 0.25) + Vector3.new(0,0,0)
- local threefourths = POS:Lerp(position, 0.75) + Vector3.new(0,0,0)
- for i = 0, 1, 0.07 do
- Swait()
- Front.CFrame = CFrame.new(newBezier(POS, onefourth, threefourths, position, i))
- end
- Front:remove()
- ChainLink:remove()
- end))
- local harm = Front.Touched:Connect(function(hit)
- impale(Front,hit)
- end)
- end
- end))
- elseif DoesWarp == true then
- local defence = Instance.new("BoolValue",v)
- defence.Name = ("HitBy"..Player.Name)
- game:GetService("Debris"):AddItem(defence, 0.001)
- local TORSO = v:FindFirstChild("HumanoidRootPart") or v:FindFirstChild("Torso") or v:FindFirstChild("UpperTorso")
- Warp(TORSO,Instakill)
- else
- if CanBeDodgedByJumping == true then
- if body[part].Position.Y < position.Y+5 then
- if math.random(1,100) < critrate+1 then
- HUMAN.Health = HUMAN.Health - dmg*critmultiplier
- StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0))
- else
- HUMAN.Health = HUMAN.Health - dmg
- StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), dmg, C3(0, 0, 0))
- end
- local defence = Instance.new("BoolValue",v)
- defence.Name = ("HitBy"..Player.Name)
- game:GetService("Debris"):AddItem(defence, 0.01)
- end
- else
- if beserk == true then
- HUMAN.Health = 0
- end
- if math.random(1,100) < critrate+1 then
- HUMAN.Health = HUMAN.Health - dmg*critmultiplier
- StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0))
- else
- HUMAN.Health = HUMAN.Health - dmg
- StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), dmg, C3(0, 0, 0))
- end
- local defence = Instance.new("BoolValue",v)
- defence.Name = ("HitBy"..Player.Name)
- game:GetService("Debris"):AddItem(defence, 0.01)
- end
- end
- end
- end
- end
- --body[part].Velocity = CFrame.new(position,body[part].Position).lookVector*5*maxstrength
- end
- end
- end
- if v.ClassName == "Part" then
- if v.Anchored == false and (v.Position - position).Magnitude < radius then
- v.Velocity = CFrame.new(position,v.Position).lookVector*5*maxstrength
- end
- end
- end
- end
- end
- function Warp(Victim,WarpToVoid)
- print("Warping "..Victim.Name.."...")
- Victim.Anchored = true
- coroutine.resume(coroutine.create(function()
- local GUI,GUI2 = CreateGUICircle(Victim)
- CreateSound("1208650519", Victim, 10, 1)
- for i = 1, 100 do
- Swait()
- GUI.Size = GUI.Size + UDim2.new(0.2,0,0.2,0)
- GUI2.Rotation = GUI2.Rotation + 4
- end
- CastWarpOutlines(Victim.Parent)
- if WarpToVoid == false then
- Victim.CFrame = Victim.CFrame * CF(MRANDOM(-65,65),0,MRANDOM(-65,65))
- CreateSound("1177785010", Victim, 10, 1)
- local HUMANOID = Victim.Parent:FindFirstChildOfClass("Humanoid")
- if HUMANOID ~= nil then
- local dmg = MRANDOM(75,95)
- HUMANOID.Health = HUMANOID.Health - dmg
- StatLabel("Normal", Victim.CFrame * CF(0, 0 + (Victim.Size.z - 1), 0), "WARPED/"..dmg, C3(0.3, 0, 0.3))
- end
- for i = 1, 50 do
- Swait()
- GUI.Size = GUI.Size - UDim2.new(0.4,0,0.4,0)
- GUI2.Rotation = GUI2.Rotation - 8
- end
- Victim.Anchored = false
- GUI:remove()
- elseif WarpToVoid == true then
- CastWarpOutlines(Victim.Parent)
- q = Victim.Parent:GetChildren()
- for i = 1, #q do
- if q[i] ~= Victim then
- q[i]:remove()
- end
- end
- CreateSound("1177785010", Victim, 10, 1)
- Victim.Transparency = 1
- for i = 1, 50 do
- Swait()
- GUI.Size = GUI.Size - UDim2.new(0.4,0,0.4,0)
- GUI2.Rotation = GUI2.Rotation - 8
- end
- Victim.Parent:remove()
- end
- end))
- end
- function killnearest(position,range,maxstrength)
- for i,v in ipairs(workspace:GetChildren()) do
- local body = v:GetChildren()
- for part = 1, #body do
- if((body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
- if(body[part].Position - position).Magnitude < range then
- if v.ClassName == "Model" then
- v:BreakJoints()
- end
- --table.insert(Effects2,{body[part],"Disappear",0.02,2,2,2,2})
- body[part].Velocity = CFrame.new(position,body[part].Position).lookVector*5*maxstrength
- end
- end
- end
- if v.ClassName == "Part" then
- if v.Anchored == false and (v.Position - position).Magnitude < range then
- --table.insert(Effects2,{v,"Disappear",0.02,2,2,2,2})
- v.Velocity = CFrame.new(position,v.Position).lookVector*5*maxstrength
- end
- end
- end
- end
- function AttackTemplate()
- ATTACK = true
- Rooted = false
- for i=0, 1, 0.1 / Animation_Speed do
- Swait()
- RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
- Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
- PupilWeld.C0 = Clerp(PupilWeld.C0, CF(0.13,0.24,-0.58) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
- RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
- LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
- RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
- LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
- end
- ATTACK = false
- Rooted = false
- end
- function VoidWarp()
- ATTACK = true
- Rooted = false
- for i=0, 0.2, 0.1 / Animation_Speed do
- Swait()
- RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(0)), 0.5 / Animation_Speed)
- Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.5 / Animation_Speed)
- PupilWeld.C0 = Clerp(PupilWeld.C0, CF(0.13,0.24,-0.58) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
- RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.75, -0.5) * ANGLES(RAD(35), RAD(0), RAD(-65)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
- LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.75, -0.5) * ANGLES(RAD(35), RAD(0), RAD(65)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
- RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.5 / Animation_Speed)
- LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.5 / Animation_Speed)
- end
- AoEDamage(Torso.Position,15,0,0,0,false,0,0,false,true,false)
- CreateSound("1208650519", Torso, 10, 2.5)
- local GUI,GUI2 = CreateGUICircle(Torso)
- for i = 1, 50 do
- Swait()
- GUI.Size = GUI.Size + UDim2.new(i/60,0,i/60,0)
- GUI2.Rotation = GUI2.Rotation + i/10
- end
- CastWarpOutlines(Character)
- local POS = Torso.Position
- RootPart.CFrame = CF(CF(Mouse.Hit.p)*CF(0,2,0).p,POS)
- Swait()
- CreateSound("1177785010", Torso, 10, 1)
- coroutine.resume(coroutine.create(function()
- for i = 1, 50 do
- Swait()
- GUI.Size = GUI.Size - UDim2.new(i/60,0,i/60,0)
- GUI2.Rotation = GUI2.Rotation - i/10
- end
- end))
- ATTACK = false
- Rooted = false
- end
- local asd = Instance.new("ParticleEmitter")
- asd.Color = ColorSequence.new(BrickColor.new("Really red").Color, BrickColor.new("Really red").Color)
- asd.LightEmission = .1
- asd.Size = NumberSequence.new(0.2)
- asd.Texture = "http://www.roblox.com/asset/?ID=291880914"
- aaa = NumberSequence.new({NumberSequenceKeypoint.new(0, 0.2),NumberSequenceKeypoint.new(1, 5)})
- bbb = NumberSequence.new({NumberSequenceKeypoint.new(0, 1),NumberSequenceKeypoint.new(0.0636, 0), NumberSequenceKeypoint.new(1, 1)})
- asd.Transparency = bbb
- asd.Size = aaa
- asd.ZOffset = .9
- asd.Acceleration = Vector3.new(0, -15, 0)
- asd.LockedToPart = false
- asd.EmissionDirection = "Back"
- asd.Lifetime = NumberRange.new(1, 2)
- asd.Rotation = NumberRange.new(-100, 100)
- asd.RotSpeed = NumberRange.new(-100, 100)
- asd.Speed = NumberRange.new(25,35)
- asd.Enabled = false
- asd.VelocitySpread = 5
- function getbloody(victim,amount)
- local PART = IT("Part",Effects)
- PART.Transparency = 1
- PART.Size = victim.Size
- PART.Anchored = true
- PART.CanCollide = false
- PART.CFrame = CF(victim.Position,Torso.Position)
- local HITPLAYERSOUNDS = {"356551938","264486467"}
- Debris:AddItem(PART,5)
- CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
- local prtcl = asd:Clone()
- prtcl.Parent = PART
- prtcl:Emit(amount*10)
- end
- function impale(chain,hit)
- if hit.Parent ~= Character and hit.Parent:FindFirstChildOfClass("Humanoid") then
- local humanoid = hit.Parent:FindFirstChildOfClass("Humanoid")
- if humanoid.Health ~= 0 then
- hit.Parent:BreakJoints()
- getbloody(hit,15)
- local prtcl = asd:Clone()
- prtcl.Parent = chain
- prtcl.Enabled = true
- prtcl.Speed = NumberRange.new(0)
- prtcl.Size = NumberSequence.new(0.2)
- end
- end
- end
- function clerp(a, b, t)
- return a:lerp(b, t)
- end
- function newBezier(startpos, pos2, pos3, endpos, t)
- local A = clerp(startpos, pos2, t)
- local B = clerp(pos2, pos3, t)
- local C = clerp(pos3, endpos, t)
- local lerp1 = clerp(A, B, t)
- local lerp2 = clerp(B, C, t)
- local cubic = clerp(lerp1, lerp2, t)
- return cubic
- end
- function VoidChain()
- ATTACK = true
- Rooted = false
- for i=0, 2, 0.1 / Animation_Speed do
- turnto(Mouse.Hit.p)
- Swait()
- RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(25)), 0.25 / Animation_Speed)
- Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(5)), 0.25 / Animation_Speed)
- PupilWeld.C0 = Clerp(PupilWeld.C0, CF(0.2,0.30,-0.58) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
- RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(25)) * RIGHTSHOULDERC0, 0.25 / Animation_Speed)
- LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.25 / Animation_Speed)
- RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
- LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
- end
- CreateSound("144699494", RightArm, 10, 2)
- local RING = CreateMagicCircle()
- RING.CFrame = RightArm.CFrame * CF(0,-1.1,0)
- for i = 1, 5 do
- turnto(Mouse.Hit.p)
- Swait()
- local FRAME = CF(RightArm.CFrame * CF(MRANDOM(-5,5),MRANDOM(0,7.5),MRANDOM(-5,5)).p,RightArm.Position)
- MagicSphere(VT(0,0,5),25,FRAME,"Really red",VT(0.2,0.2,0))
- MagicSphere(VT(0,0,4.9),25,FRAME,"Really red",VT(0.18,0.18,0))
- RING.CFrame = RightArm.CFrame * CF(0,-1.1,0) * ANGLES(RAD(0),RAD(i*2),RAD(0))
- RING.Size = RING.Size + VT(1,0,1)
- end
- coroutine.resume(coroutine.create(function()
- local POS = Mouse.Hit.p
- local A = IT("Attachment",RING)
- for i = 1, 15 do
- Swait(MRANDOM(0,5))
- coroutine.resume(coroutine.create(function()
- local Front = CreatePart(3, Effects, "Neon", 1, 1, "Really red", "Chain head", VT(1,1,1),false)
- --print("Chain start")
- Front.CFrame = RING.CFrame*CF(MRANDOM(-3,3),0,MRANDOM(-3,3))
- Front.CanCollide = true
- CreateSound(HITWEAPONSOUNDS[MRANDOM(1,#HITWEAPONSOUNDS)], Front, 10, 1)
- local B = IT("Attachment",Front)
- local ChainLink = IT("Beam",RING)
- ChainLink.Texture = "rbxassetid://300899516"
- ChainLink.TextureSpeed = 0
- ChainLink.FaceCamera = true
- ChainLink.Width0 = 3
- ChainLink.Attachment0 = A
- ChainLink.Attachment1 = B
- ChainLink.CurveSize0 = MRANDOM(-5,5)
- ChainLink.CurveSize1 = MRANDOM(-5,5)
- ChainLink.TextureMode = "Static"
- local bv = Instance.new("BodyVelocity")
- bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
- bv.velocity = CF(Front.Position,VT(POS.X+MRANDOM(-3,3),POS.Y+MRANDOM(-3,3),POS.Z+MRANDOM(-3,3))).lookVector*500
- bv.Parent = Front
- bv.Name = "MOVE"
- --print("Chain made")
- coroutine.resume(coroutine.create(function()
- Swait(50)
- bv:remove()
- local POS = Front.Position
- Front.CanCollide = false
- local onefourth = POS:Lerp(RING.Position, 0.25) + Vector3.new(math.random(-5, 5), math.random(-5, 5),math.random(-5, 5))
- local threefourths = POS:Lerp(RING.Position, 0.75) + Vector3.new(math.random(-5, 5), math.random(-5, 5),math.random(-5, 5))
- for i = 0, 1, 0.07 do
- Swait()
- Front.CFrame = CFrame.new(newBezier(POS, onefourth, threefourths, RING.Position, i))
- end
- Front:remove()
- ChainLink:remove()
- end))
- local harm = Front.Touched:Connect(function(hit)
- impale(Front,hit)
- end)
- end))
- end
- Swait(60)
- for i = 1, 5 do
- Swait()
- RING.Size = RING.Size - VT(1,0,1)
- end
- RING:remove()
- end))
- ATTACK = false
- Rooted = false
- end
- function FalseDenial()
- if Mouse.Target.Parent ~= Character and Mouse.Target.Parent.Parent ~= Character and Mouse.Target.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
- local HITBODY = Mouse.Target.Parent
- local TORS = HITBODY:FindFirstChild("Torso") or HITBODY:FindFirstChild("UpperTorso")
- local HUMAN = Mouse.Target.Parent:FindFirstChildOfClass("Humanoid")
- if TORS ~= nil and HUMAN ~= nil then
- ATTACK = true
- Rooted = true
- RootPart.CFrame = TORS.CFrame * CF(-1,0,8)
- TORS.Anchored = true
- CreateSound(ALONE, Head, 10, 1)
- for i=0, 1, 0.1 / Animation_Speed do
- Swait()
- RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(15), RAD(0), RAD(0)), 0.5 / Animation_Speed)
- Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.5 / Animation_Speed)
- RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(180), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
- LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(15), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
- RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(-15), RAD(-15)), 0.5 / Animation_Speed)
- LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(15), RAD(-15)), 0.5 / Animation_Speed)
- end
- local HandlePart = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really red", "Handle", VT(0, 0, 0),false)
- HandlePart.Color = BrickColor.new("Really red").Color
- local HandleMesh = CreateMesh("SpecialMesh", HandlePart, "FileMesh", "93180631", "", VT(1,1,1), VT(0, 3.1, 0))
- HandlePart.CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(180), RAD(90), RAD(0))
- local WELD = weldBetween(RightArm,HandlePart)
- Rooted = true
- CreateSound("289315275", HandlePart, 10, 1.5)
- for i=1, 50 do
- Swait()
- MagicSphere(VT(0.2,0.2,i/5),35,CF(HandlePart.CFrame*CF(0,6,0)*CF(MRANDOM(-1,1),MRANDOM(-1,1),MRANDOM(-1,1)).p,HandlePart.CFrame*CF(0,6,0).p),C3(1,1,1),VT(0.001,0.001,0),0.5)
- HandlePart.Transparency = HandlePart.Transparency - (0.01)
- RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(15), RAD(0), RAD(0)), 0.5 / Animation_Speed)
- Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.5 / Animation_Speed)
- RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(180), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
- LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(15), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
- RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(-15), RAD(-15)), 0.5 / Animation_Speed)
- LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(15), RAD(-15)), 0.5 / Animation_Speed)
- end
- for i=0, 1, 0.1 / Animation_Speed do
- Swait()
- RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(15), RAD(0), RAD(-35)), 0.5 / Animation_Speed)
- Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(35)), 0.5 / Animation_Speed)
- RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0.3) * ANGLES(RAD(105), RAD(0), RAD(-15)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
- LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(15), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
- RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(-15), RAD(-15)), 0.5 / Animation_Speed)
- LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(15), RAD(-15)), 0.5 / Animation_Speed)
- end
- RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(15), RAD(0), RAD(45)), 3 / Animation_Speed)
- Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-45)), 3 / Animation_Speed)
- RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 1, -0.7) * ANGLES(RAD(110), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 3 / Animation_Speed)
- LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(15), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 3 / Animation_Speed)
- RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(-15), RAD(-15)), 3 / Animation_Speed)
- LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(15), RAD(-15)), 3 / Animation_Speed)
- Swait()
- WELD:remove()
- HandlePart.CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(180), RAD(90), RAD(0))
- HandlePart.Anchored = true
- local HEART = CreatePart(3, HITBODY, "Pebble", 0, 0, "Really red", "Heart", VT(1,1,1))
- MakeForm(HEART,"Ball")
- HEART.CFrame = HandlePart.CFrame*CF(0,6,0)
- getbloody(HEART,2)
- Swait(15)
- CreateSound("289315275", HEART, 10, 3)
- for i = 1, 25 do
- Swait()
- MagicSphere(VT(0.2,0.2,i/5),35,CF(HandlePart.CFrame*CF(0,6.5,0)*CF(MRANDOM(-1,1),MRANDOM(-1,1),MRANDOM(-1,1)).p,HandlePart.CFrame*CF(0,6,0).p),C3(1,1,1),VT(0.001,0.001,0),0.5)
- end
- CreateSound("264486467", HEART, 10, 1)
- getbloody(HEART,25)
- HEART.Transparency = 1
- HITBODY:BreakJoints()
- TORS.Anchored = false
- ATTACK = false
- Rooted = false
- coroutine.resume(coroutine.create(function()
- Swait(15)
- CreateSound("2248511", HandlePart, 10, 1)
- for i = 1, 50 do
- Swait()
- HandlePart.Transparency = HandlePart.Transparency + (0.01)
- end
- HandlePart:remove()
- end))
- end
- end
- end
- function findNearestTorso(pos)
- local list = game.Workspace:children()
- local torso = nil
- local dist = 1000
- local temp = nil
- local human = nil
- local temp2 = nil
- for x = 1, #list do
- temp2 = list[x]
- if (temp2.className == "Model") and (temp2 ~= Character) and (temp2 ~= pos.Parent) then
- temp = temp2:findFirstChild("Torso") or temp2:findFirstChild("UpperTorso")
- human = temp2:findFirstChildOfClass("Humanoid")
- if (temp ~= nil) and (human ~= nil) and (human.Health > 0) then
- if (temp.Position - pos.Position).magnitude < dist then
- torso = temp
- dist = (temp.Position - pos.Position).magnitude
- end
- end
- end
- end
- return torso,dist
- end
- function CreateBody()
- local zombie = IT("Model",Effects)
- zombie.Name = "Possessed"
- local tors = IT("Part",zombie)
- tors.Name = "Torso"
- tors.Size = Torso.Size
- tors.CFrame = RootPart.CFrame * CF(math.random(-5,5),0,-5)
- tors.Color = C3(0,0.5,0.5)
- local heed = IT("Part",zombie)
- heed.Size = Head.Size
- heed.CFrame = tors.CFrame * CF(0,1.5,0)
- heed.Name = "Head"
- heed.Color = C3(255/255, 230/255, 194/255)
- local face = IT("Decal",heed)
- face.Texture = "http://www.roblox.com/asset/?id=149118644"
- weldBetween(tors,heed)
- local headmesh = IT("SpecialMesh",heed)
- headmesh.Scale = VT(1.25,1.25,1.25)
- local limb = IT("Part",zombie)
- limb.Size = VT(1,2,1)
- limb.Name = "Left Arm"
- limb.CFrame = tors.CFrame * CF(-1.5,0,0)
- limb.Color = C3(255/255, 230/255, 194/255)
- weldBetween(tors,limb)
- local limb = IT("Part",zombie)
- limb.Size = VT(1,2,1)
- limb.Name = "Right Arm"
- limb.CFrame = tors.CFrame * CF(1.5,0,0)
- limb.Color = C3(255/255, 230/255, 194/255)
- weldBetween(tors,limb)
- local limb = IT("Part",zombie)
- limb.Size = VT(1,2,1)
- limb.Name = "Right Leg"
- limb.CFrame = tors.CFrame * CF(0.5,-2,0)
- limb.Color = C3(0,0.5,0.5)
- weldBetween(tors,limb)
- local limb = IT("Part",zombie)
- limb.Size = VT(1,2,1)
- limb.Name = "Left Leg"
- limb.CFrame = tors.CFrame * CF(-0.5,-2,0)
- limb.Color = C3(0,0.5,0.5)
- weldBetween(tors,limb)
- local hooman = IT("Humanoid",zombie)
- return zombie
- end
- function Taunt()
- ATTACK = true
- --Rooted = true
- for i=0, 2, 0.1 / Animation_Speed do
- Swait()
- RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
- Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(5 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
- RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(145), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
- LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(145), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
- RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
- LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
- end
- local winz = CreateSound("447225089", Head, 50, 1)
- local loop = 0
- repeat
- Swait()
- loop = loop + 1
- if loop == 25 then
- loop = 0
- Humanoid.Jump = true
- end
- until winz.Playing == false
- ATTACK = false
- --Rooted = false
- end
- function Taunt()
- ATTACK = true
- Rooted = true
- local SOUND = CreateSound("506001681", Head, 10, 1)
- Swait()
- repeat
- Swait()
- RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, -0.5, -0.5) * ANGLES(RAD(-45+(SOUND.PlaybackLoudness/10)), RAD(0), RAD(0)), 0.5 / Animation_Speed)
- Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-25), RAD(0), RAD(0)), 0.5 / Animation_Speed)
- RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-55), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
- LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-55), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
- RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(-45+(SOUND.PlaybackLoudness/10)), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
- LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(-45+(SOUND.PlaybackLoudness/10)), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
- until SOUND.Playing == false
- ATTACK = false
- Rooted = false
- end
- function VortexLeash()
- ATTACK = true
- Rooted = true
- for i=0, 1, 0.1 / Animation_Speed do
- Swait()
- RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, -1) * ANGLES(RAD(45), RAD(0), RAD(0)), 0.5 / Animation_Speed)
- Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
- PupilWeld.C0 = Clerp(PupilWeld.C0, CF(0.13,0.2,-0.58) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
- RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 1, -1) * ANGLES(RAD(60), RAD(-690), RAD(2 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 24))) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
- LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 , 0) * ANGLES(RAD(90), RAD(25), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed/8)
- RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.3 * Player_Size, -1) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.5 / Animation_Speed/8)
- LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.3, 0) * ANGLES(RAD(0), RAD(5), RAD(0)) * ANGLES(RAD(45), RAD(0), RAD(10)), 0.5 / Animation_Speed/8)
- end
- local RING = CreateMagicCircle()
- CreateSound("1208650519", RING, 10, 1.5)
- RING.CFrame = RootPart.CFrame * CF(0,-2.8,0)
- local FRAME = RootPart.CFrame * CF(0,-2.8,0)
- for i = 1, 75 do
- Swait()
- local FRAME = CF(RightArm.CFrame * CF(MRANDOM(-5,5),MRANDOM(0,7.5),MRANDOM(-5,5)).p,RightArm.Position)
- MagicSphere(VT(0,0,5),25,FRAME,"Really red",VT(0.2,0.2,0))
- MagicSphere(VT(0,0,4.9),25,FRAME,"Really red",VT(0.18,0.18,0))
- RING.CFrame = RING.CFrame * ANGLES(RAD(0),RAD(i/5),RAD(0))
- RING.Size = RING.Size + VT(1,0,1)
- end
- coroutine.resume(coroutine.create(function()
- for i = 1, 450 do
- Swait(2)
- local FRAME = CF(RING.CFrame * CF(MRANDOM(-25,25),MRANDOM(0,35),MRANDOM(-25,25)).p,RING.Position)
- MagicSphere(VT(0,0,5),25,FRAME,"Really red",VT(0.2,0.2,0))
- MagicSphere(VT(0,0,4.9),25,FRAME,"Really red",VT(0.18,0.18,0))
- MagicSphere(VT(0,0,0),10,RING.CFrame,"Really red",VT(2,4,2))
- MagicSphere(VT(0,0,0),10,RING.CFrame,"Really red",VT(1.8,3.8,1.8))
- local A = IT("Attachment",RING)
- local POS = RING.CFrame * CF(MRANDOM(-150,150),MRANDOM(5,50),MRANDOM(-150,150)).p
- coroutine.resume(coroutine.create(function()
- local Front = CreatePart(3, Effects, "Neon", 1, 1, "Really red", "Chain head", VT(1,1,1),false)
- --print("Chain start")
- Front.CFrame = RING.CFrame*CF(MRANDOM(-3,3),0,MRANDOM(-3,3))
- Front.CanCollide = false
- CreateSound(HITWEAPONSOUNDS[MRANDOM(1,#HITWEAPONSOUNDS)], Front, 2, 1)
- local B = IT("Attachment",Front)
- local ChainLink = IT("Beam",RING)
- ChainLink.Texture = "rbxassetid://300899517"
- ChainLink.TextureSpeed = 0
- ChainLink.FaceCamera = true
- ChainLink.Width0 = 3
- ChainLink.Attachment0 = A
- ChainLink.Attachment1 = B
- ChainLink.CurveSize0 = MRANDOM(-5,5)
- ChainLink.CurveSize1 = MRANDOM(-5,5)
- ChainLink.TextureMode = "Static"
- local bv = Instance.new("BodyVelocity")
- bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
- bv.velocity = CF(Front.Position,VT(POS.X+MRANDOM(-3,3),POS.Y+MRANDOM(-3,3),POS.Z+MRANDOM(-3,3))).lookVector*500
- bv.Parent = Front
- bv.Name = "MOVE"
- --print("Die")
- coroutine.resume(coroutine.create(function()
- Swait(50)
- bv:remove()
- local POS = Front.Position
- Front.CanCollide = false
- local onefourth = POS:Lerp(RING.Position, 0.25) + Vector3.new(math.random(-5, 5), math.random(-5, 5),math.random(-5, 5))
- local threefourths = POS:Lerp(RING.Position, 0.75) + Vector3.new(math.random(-5, 5), math.random(-5, 5),math.random(-5, 5))
- for i = 0, 1, 0.07 do
- Swait()
- Front.CFrame = CFrame.new(newBezier(POS, onefourth, threefourths, RING.Position, i))
- end
- Front:remove()
- ChainLink:remove()
- end))
- local harm = Front.Touched:Connect(function(hit)
- impale(Front,hit)
- end)
- end))
- AoEDamage(RING.Position,75,0,0,0,0,0,0,0,0,0,true)
- RING.CFrame = RING.CFrame* ANGLES(RAD(0),RAD(5),RAD(0))
- end
- Swait(65)
- for i = 1, 75 do
- Swait()
- RING.CFrame = RING.CFrame* ANGLES(RAD(0),RAD(-i/5),RAD(0))
- RING.Size = RING.Size - VT(1,0,1)
- end
- RING:remove()
- end))
- ATTACK = false
- Rooted = false
- end
- function VortexBarrier()
- ATTACK = true
- Rooted = true
- for i=0, 2, 0.1 / Animation_Speed do
- Swait()
- RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
- Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
- PupilWeld.C0 = Clerp(PupilWeld.C0, CF(0.13,0.24,-0.58) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
- RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.75, -0.5) * ANGLES(RAD(35), RAD(0), RAD(-65)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
- LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.75, -0.5) * ANGLES(RAD(35), RAD(0), RAD(65)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
- RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
- LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
- end
- for i=0, 0.5, 0.1 / Animation_Speed do
- Swait()
- RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0.2, 0) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.5 / Animation_Speed)
- Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.5 / Animation_Speed)
- PupilWeld.C0 = Clerp(PupilWeld.C0, CF(0.13,0.27,-0.58) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
- RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.75,0) * ANGLES(RAD(0), RAD(0), RAD(85)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
- LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.75, 0) * ANGLES(RAD(0), RAD(0), RAD(-85)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
- RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(-15)), 0.5 / Animation_Speed)
- LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(15)), 0.5 / Animation_Speed)
- end
- CreateSound("429459101", Effects, 10, 1)
- local GUI,GUI2 = CreateGUICircle(Torso)
- local GUI3,GUI4 = CreateGUICircle(Torso)
- for i = 1, 200 do
- Swait()
- local FRAME = CF(Torso.CFrame * CF(MRANDOM(-35,35),MRANDOM(-35,35),MRANDOM(-35,35)).p,Torso.Position)
- MagicSphere(VT(0,0,5),25,FRAME,"Really red",VT(0.2,0.2,0))
- MagicSphere(VT(0,0,4.9),25,FRAME,"Really red",VT(0.18,0.18,0))
- local FRAME = CF(Torso.CFrame * CF(MRANDOM(-35,35),MRANDOM(-35,35),MRANDOM(-35,35)).p,Torso.Position)
- MagicSphere(VT(0,0,5),25,FRAME,"Really red",VT(0.2,0.2,0))
- MagicSphere(VT(0,0,4.9),25,FRAME,"Really red",VT(0.18,0.18,0))
- GUI.Size = GUI.Size + UDim2.new(i/60,0,i/60,0)
- GUI2.Rotation = GUI2.Rotation + i/10
- GUI3.Size = GUI3.Size + UDim2.new(i/120,0,i/120,0)
- GUI4.Rotation = GUI4.Rotation - i/10
- end
- AoEDamage(Torso.Position,150,0,0,0,false,0,0,false,true,true)
- Swait(25)
- for i = 1, 100 do
- Swait()
- GUI.Size = GUI.Size - UDim2.new(i/15,0,i/15,0)
- GUI2.Rotation = GUI2.Rotation - i/5
- GUI3.Size = GUI3.Size - UDim2.new(i/30,0,i/30,0)
- GUI4.Rotation = GUI4.Rotation + i/5
- end
- GUI:remove()
- GUI3:remove()
- ATTACK = false
- Rooted = false
- end
- function MouseDown(Mouse)
- if ATTACK == false then
- end
- end
- function MouseUp(Mouse)
- HOLD = false
- end
- function KeyDown(Key)
- KEYHOLD = true
- if Key == "z" and ATTACK == false then
- VoidWarp()
- end
- if Key == "b" and ATTACK == false then
- VoidChain()
- end
- if Key == "c" and ATTACK == false then
- VortexLeash()
- end
- if Key == "v" and ATTACK == false then
- VortexBarrier()
- end
- if Key == "f" and ATTACK == false then
- Endless_Pain()
- end
- if Key == "g" and ATTACK == false then
- FalseDenial()
- end
- if Key == "x" and ATTACK == false then
- Absoluteum()
- end
- if Key == "t" and ATTACK == false then
- Taunt()
- end
- end
- function KeyUp(Key)
- KEYHOLD = false
- end
- Mouse.Button1Down:connect(function(NEWKEY)
- MouseDown(NEWKEY)
- end)
- Mouse.Button1Up:connect(function(NEWKEY)
- MouseUp(NEWKEY)
- end)
- Mouse.KeyDown:connect(function(NEWKEY)
- KeyDown(NEWKEY)
- end)
- Mouse.KeyUp:connect(function(NEWKEY)
- KeyUp(NEWKEY)
- end)
- function unanchor()
- if UNANCHOR == true then
- g = Character:GetChildren()
- for i = 1, #g do
- if g[i].ClassName == "Part" then
- g[i].Anchored = false
- end
- end
- end
- end
- local FF = IT("ForceField",Character)
- FF.Visible = false
- Humanoid.Changed:connect(function(Jump)
- if Jump == "Jump" and (Disable_Jump == true) then
- Humanoid.Jump = false
- end
- end)
- Speed = 45
- while true do
- Swait()
- script.Parent = WEAPONGUI
- ANIMATE.Parent = nil
- for _,v in next, Humanoid:GetPlayingAnimationTracks() do
- v:Stop();
- end
- SINE = SINE + CHANGE
- local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
- local TORSOVERTICALVELOCITY = RootPart.Velocity.y
- local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4+Humanoid.HipHeight, Character)
- local WALKSPEEDVALUE = 8 / (Humanoid.WalkSpeed / 16)
- Humanoid.HipHeight = 1
- if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
- ANIM = "Jump"
- if ATTACK == false then
- RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
- Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(-25), RAD(0), RAD(0)), 1 / Animation_Speed)
- RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-35), RAD(0), RAD(25 + 10 * COS(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
- LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-35), RAD(0), RAD(-25 - 10 * COS(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
- RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.4, -0.6) * ANGLES(RAD(1), RAD(90), RAD(0)) * ANGLES(RAD(-1 * SIN(SINE / 6)), RAD(0), RAD(0)), 1 / Animation_Speed)
- LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(-1 * SIN(SINE / 6)), RAD(0), RAD(0)), 1 / Animation_Speed)
- end
- elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
- ANIM = "Fall"
- if ATTACK == false then
- RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / Animation_Speed)
- Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / Animation_Speed)
- RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(35 - 4 * COS(SINE / 6)), RAD(0), RAD(45 + 10 * COS(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
- LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(35 - 4 * COS(SINE / 6)), RAD(0), RAD(-45 - 10 * COS(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
- RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.3, -0.7) * ANGLES(RAD(-25 + 5 * SIN(SINE / 12)), RAD(90), RAD(0)) * ANGLES(RAD(-1 * SIN(SINE / 6)), RAD(0), RAD(0)), 1 / Animation_Speed)
- LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.8, -0.3) * ANGLES(RAD(-10), RAD(-80), RAD(0)) * ANGLES(RAD(-1 * SIN(SINE / 6)), RAD(0), RAD(0)), 1 / Animation_Speed)
- end
- elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
- ANIM = "Idle"
- if ATTACK == false then
- RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
- Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
- RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.5 + 0.05 * SIN(SINE / 12), -0.7) * ANGLES(RAD(0), RAD(0), RAD(-95)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
- LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35 + 0.05 * SIN(SINE / 12), -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
- RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-25)), 1 / Animation_Speed)
- LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-5), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
- end
- elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
- ANIM = "Walk"
- if ATTACK == false then
- RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(10), RAD(0), RAD(0)), 1 / Animation_Speed)
- Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-10 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
- RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.75, 0.5 + 0.05 * SIN(SINE / 12), -0.7) * ANGLES(RAD(0), RAD(0), RAD(-95)) * ANGLES(RAD(5), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
- LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.75, 0.35 + 0.05 * SIN(SINE / 12), -0.6) * ANGLES(RAD(0), RAD(0), RAD(92)) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
- RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.6 - 0.05 * SIN(SINE / 12), -0.5) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(-35)), 1 / Animation_Speed)
- LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * SIN(SINE / 12), 0) * ANGLES(RAD(-15), RAD(-70), RAD(0)) * ANGLES(RAD(1), RAD(0), RAD(0)), 1 / Animation_Speed)
- end
- end
- if #Effects2>0 then
- for e=1,#Effects2 do
- if Effects2[e]~=nil then
- local Thing=Effects2[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]
- local Part2=Thing[8]
- if Thing[1].Transparency<=1 then
- if Thing[2]=="Block1" then
- Thing[1].CFrame=Thing[1].CFrame
- Mesh=Thing[1].Mesh
- Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
- Thing[1].Transparency=Thing[1].Transparency+Thing[3]
- elseif Thing[2]=="Cylinder" then
- Mesh=Thing[1].Mesh
- Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
- Thing[1].Transparency=Thing[1].Transparency+Thing[3]
- elseif Thing[2]=="Blood" then
- Mesh=Thing[7]
- Thing[1].CFrame=Thing[1].CFrame*CF(0,.5,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[1].Mesh
- 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(Effects2,e)
- end
- end
- end
- end
- end
- unanchor()
- Humanoid.MaxHealth = "inf"
- Humanoid.Health = "inf"
- if Rooted == false then
- Disable_Jump = false
- Humanoid.WalkSpeed = Speed
- elseif Rooted == true then
- Disable_Jump = true
- Humanoid.WalkSpeed = 0
- end
- q = Character:GetChildren()
- for u = 1, #q do
- if q[u].ClassName == "Accessory" or q[u].ClassName == "Hat" then
- if q[u].Handle:FindFirstChild("FaceFrontAttachment") or q[u].Handle:FindFirstChild("HatAttachment") then
- q[u].Handle.Transparency = 1
- end
- end
- end
- local MATHS = {"0","1"}
- Humanoid.Name = MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]..MATHS[MRANDOM(1,#MATHS)]
- Humanoid.PlatformStand = false
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement