Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- Air Magic
- plr = game.Players.LocalPlayer
- char = plr.Character
- hum = char.Humanoid
- local cam = game.Workspace.CurrentCamera
- t = char.Torso
- h = char.Head
- ra = char["Right Arm"]
- la = char["Left Arm"]
- rl = char["Right Leg"]
- ll = char["Left Leg"]
- tors = char.Torso
- lleg = char["Left Leg"]
- root = char.HumanoidRootPart
- hed = char.Head
- rleg = char["Right Leg"]
- rarm = char["Right Arm"]
- larm = char["Left Arm"]
- vt = Vector3.new
- bc = BrickColor.new
- br = BrickColor.random
- it = Instance.new
- cf = CFrame.new
- local Create = LoadLibrary("RbxUtility").Create
- CFuncs = {
- ["Part"] = {
- Create = function(Parent, Material, Reflectance, Transparency, BColor, Name, Size)
- local Part = Create("Part"){
- Parent = Parent,
- Reflectance = Reflectance,
- Transparency = Transparency,
- CanCollide = false,
- Locked = true,
- BrickColor = BrickColor.new(tostring(BColor)),
- Name = Name,
- Size = Size,
- Material = Material,
- }
- RemoveOutlines(Part)
- return Part
- end;
- };
- ["Mesh"] = {
- Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale)
- local Msh = Create(Mesh){
- Parent = Part,
- Offset = OffSet,
- Scale = Scale,
- }
- if Mesh == "SpecialMesh" then
- Msh.MeshType = MeshType
- Msh.MeshId = MeshId
- end
- return Msh
- end;
- };
- ["Mesh"] = {
- Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale)
- local Msh = Create(Mesh){
- Parent = Part,
- Offset = OffSet,
- Scale = Scale,
- }
- if Mesh == "SpecialMesh" then
- Msh.MeshType = MeshType
- Msh.MeshId = MeshId
- end
- return Msh
- end;
- };
- ["Weld"] = {
- Create = function(Parent, Part0, Part1, C0, C1)
- local Weld = Create("Weld"){
- Parent = Parent,
- Part0 = Part0,
- Part1 = Part1,
- C0 = C0,
- C1 = C1,
- }
- return Weld
- end;
- };
- ["Sound"] = {
- Create = function(id, par, vol, pit)
- coroutine.resume(coroutine.create(function()
- local S = Create("Sound"){
- Volume = vol,
- Pitch = pit or 1,
- SoundId = id,
- Parent = par or workspace,
- }
- wait()
- S:play()
- game:GetService("Debris"):AddItem(S, 10)
- end))
- end;
- };
- ["ParticleEmitter"] = {
- Create = function(Parent, Color1, Color2, LightEmission, Size, Texture, Transparency, ZOffset, Accel, Drag, LockedToPart, VelocityInheritance, EmissionDirection, Enabled, LifeTime, Rate, Rotation, RotSpeed, Speed, VelocitySpread)
- local fp = Create("ParticleEmitter"){
- Parent = Parent,
- Color = ColorSequence.new(Color1, Color2),
- LightEmission = LightEmission,
- Size = Size,
- Texture = Texture,
- Transparency = Transparency,
- ZOffset = ZOffset,
- Acceleration = Accel,
- Drag = Drag,
- LockedToPart = LockedToPart,
- VelocityInheritance = VelocityInheritance,
- EmissionDirection = EmissionDirection,
- Enabled = Enabled,
- Lifetime = LifeTime,
- Rate = Rate,
- Rotation = Rotation,
- RotSpeed = RotSpeed,
- Speed = Speed,
- VelocitySpread = VelocitySpread,
- }
- return fp
- end;
- };
- CreateTemplate = {
- };
- }
- New = function(Object, Parent, Name, Data)
- local Object = Instance.new(Object)
- for Index, Value in pairs(Data or {}) do
- Object[Index] = Value
- end
- Object.Parent = Parent
- Object.Name = Name
- return Object
- end
- local m = Instance.new("Model",char)
- function CreatePart(parent,transparency,reflectance,material,brickcolor)
- local p = Instance.new("Part")
- p.Parent = parent
- p.Size = Vector3.new(1,1,1)
- p.Transparency = transparency
- p.Reflectance = reflectance
- p.CanCollide = false
- p.Locked = true
- p.BrickColor = brickcolor
- p.Material = material
- return p
- end
- function CreateMesh(parent,meshtype,x1,y1,z1)
- local mesh = Instance.new("SpecialMesh",parent)
- mesh.MeshType = meshtype
- mesh.Scale = Vector3.new(x1,y1,z1)
- return mesh
- end
- function CreateSpecialGlowMesh(parent,meshid,x1,y1,z1)
- local mesh = Instance.new("SpecialMesh",parent)
- mesh.MeshType = "FileMesh"
- mesh.MeshId = meshid
- mesh.TextureId = "http://www.roblox.com/asset/?id=269748808"
- mesh.Scale = Vector3.new(x1,y1,z1)
- mesh.VertexColor = Vector3.new(parent.BrickColor.r, parent.BrickColor.g, parent.BrickColor.b)
- return mesh
- end
- function CreateWeld(parent,part0,part1,C1X,C1Y,C1Z,C1Xa,C1Ya,C1Za,C0X,C0Y,C0Z,C0Xa,C0Ya,C0Za)
- local weld = Instance.new("Weld")
- weld.Parent = parent
- weld.Part0 = part0
- weld.Part1 = part1
- weld.C1 = CFrame.new(C1X,C1Y,C1Z)*CFrame.Angles(C1Xa,C1Ya,C1Za)
- weld.C0 = CFrame.new(C0X,C0Y,C0Z)*CFrame.Angles(C0Xa,C0Ya,C0Za)
- return weld
- end
- local sorb = CreatePart(m,1,1,"SmoothPlastic",BrickColor.random())
- CreateWeld(sorb,rarm,sorb,0,2,0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- local sorb2 = CreatePart(m,1,1,"SmoothPlastic",BrickColor.random())
- CreateWeld(sorb2,larm,sorb2,0,2,0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- Player=game:GetService("Players").LocalPlayer
- Character=Player.Character
- PlayerGui=Player.PlayerGui
- Backpack=Player.Backpack
- Torso=Character.Torso
- Head=Character.Head
- Humanoid=Character.Humanoid
- m=Instance.new('Model',Character)
- LeftArm=Character["Left Arm"]
- LeftLeg=Character["Left Leg"]
- RightArm=Character["Right Arm"]
- RightLeg=Character["Right Leg"]
- LS=Torso["Left Shoulder"]
- LH=Torso["Left Hip"]
- RS=Torso["Right Shoulder"]
- RH=Torso["Right Hip"]
- Face = Head.face
- Neck=Torso.Neck
- it=Instance.new
- attacktype=1
- vt=Vector3.new
- cf=CFrame.new
- euler=CFrame.fromEulerAnglesXYZ
- angles=CFrame.Angles
- cloaked=false
- necko=cf(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
- necko2=cf(0, -0.5, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
- LHC0=cf(-1,-1,0,-0,-0,-1,0,1,0,1,0,0)
- LHC1=cf(-0.5,1,0,-0,-0,-1,0,1,0,1,0,0)
- RHC0=cf(1,-1,0,0,0,1,0,1,0,-1,-0,-0)
- RHC1=cf(0.5,1,0,0,0,1,0,1,0,-1,-0,-0)
- RootPart=Character.HumanoidRootPart
- RootJoint=RootPart.RootJoint
- RootCF=euler(-1.57,0,3.14)
- attack = false
- attackdebounce = false
- deb=false
- equipped=true
- hand=false
- MMouse=nil
- combo=0
- mana=0
- trispeed=.2
- attackmode='none'
- local idle=0
- local Anim="Idle"
- local Effects={}
- local gun=false
- local shoot=false
- local sine = 0
- local change = 1
- player=nil
- mouse=Player:GetMouse()
- --save shoulders
- RSH, LSH=nil, nil
- --welds
- RW, LW=Instance.new("Weld"), Instance.new("Weld")
- RW.Name="Right Shoulder" LW.Name="Left Shoulder"
- LH=Torso["Left Hip"]
- RH=Torso["Right Hip"]
- TorsoColor=Torso.BrickColor
- function NoOutline(Part)
- Part.TopSurface,Part.BottomSurface,Part.LeftSurface,Part.RightSurface,Part.FrontSurface,Part.BackSurface = 10,10,10,10,10,10
- end
- player=Player
- ch=Character
- RSH=ch.Torso["Right Shoulder"]
- LSH=ch.Torso["Left Shoulder"]
- --
- RSH.Parent=nil
- LSH.Parent=nil
- --
- RW.Name="Right Shoulder"
- RW.Part0=ch.Torso
- RW.C0=cf(1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.3, 0, -0.5)
- RW.C1=cf(0, 0.5, 0)
- RW.Part1=ch["Right Arm"]
- RW.Parent=ch.Torso
- --
- LW.Name="Left Shoulder"
- LW.Part0=ch.Torso
- LW.C0=cf(-1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.7, 0, 0.8)
- LW.C1=cf(0, 0.5, 0)
- LW.Part1=ch["Left Arm"]
- LW.Parent=ch.Torso
- local Stats=Instance.new("BoolValue")
- Stats.Name="Stats"
- Stats.Parent=Character
- local Atk=Instance.new("NumberValue")
- Atk.Name="Damage"
- Atk.Parent=Stats
- Atk.Value=1
- local Def=Instance.new("NumberValue")
- Def.Name="Defense"
- Def.Parent=Stats
- Def.Value=1
- local Speed=Instance.new("NumberValue")
- Speed.Name="Speed"
- Speed.Parent=Stats
- Speed.Value=1
- local Mvmt=Instance.new("NumberValue")
- Mvmt.Name="Movement"
- Mvmt.Parent=Stats
- Mvmt.Value=1
- local donum=0
- function part(formfactor,parent,reflectance,transparency,brickcolor,name,size)
- local fp=it("Part")
- fp.formFactor=formfactor
- fp.Parent=parent
- fp.Reflectance=reflectance
- fp.Transparency=transparency
- fp.CanCollide=false
- fp.Locked=true
- fp.BrickColor=brickcolor
- fp.Name=name
- fp.Size=size
- fp.Position=Torso.Position
- NoOutline(fp)
- fp.Material="SmoothPlastic"
- fp:BreakJoints()
- return fp
- end
- function mesh(Mesh,part,meshtype,meshid,offset,scale)
- local mesh=it(Mesh)
- mesh.Parent=part
- if Mesh=="SpecialMesh" then
- mesh.MeshType=meshtype
- if meshid~="nil" then
- mesh.MeshId="http://www.roblox.com/asset/?id="..meshid
- end
- end
- mesh.Offset=offset
- mesh.Scale=scale
- return mesh
- end
- function weld(parent,part0,part1,c0)
- local weld=it("Weld")
- weld.Parent=parent
- weld.Part0=part0
- weld.Part1=part1
- weld.C0=c0
- return weld
- end
- local Color1=Torso.BrickColor
- local bodvel=Instance.new("BodyVelocity")
- local bg=Instance.new("BodyGyro")
- function swait(num)
- if num==0 or num==nil then
- game:service'RunService'.Stepped:wait(0)
- else
- for i=0,num do
- game:service'RunService'.Stepped:wait(0)
- end
- end
- end
- so = function(id,par,vol,pit)
- coroutine.resume(coroutine.create(function()
- local sou = Instance.new("Sound",par or workspace)
- sou.Volume=vol
- sou.Pitch=pit or 1
- sou.SoundId=id
- swait()
- sou:play()
- game:GetService("Debris"):AddItem(sou,6)
- end))
- end
- function clerp(a,b,t)
- local qa = {QuaternionFromCFrame(a)}
- local qb = {QuaternionFromCFrame(b)}
- local ax, ay, az = a.x, a.y, a.z
- local bx, by, bz = b.x, b.y, b.z
- local _t = 1-t
- return QuaternionToCFrame(_t*ax + t*bx, _t*ay + t*by, _t*az + t*bz,QuaternionSlerp(qa, qb, t))
- end
- function QuaternionFromCFrame(cf)
- local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
- local trace = m00 + m11 + m22
- if trace > 0 then
- local s = math.sqrt(1 + trace)
- local recip = 0.5/s
- return (m21-m12)*recip, (m02-m20)*recip, (m10-m01)*recip, s*0.5
- else
- local i = 0
- if m11 > m00 then
- i = 1
- end
- if m22 > (i == 0 and m00 or m11) then
- i = 2
- end
- if i == 0 then
- local s = math.sqrt(m00-m11-m22+1)
- local recip = 0.5/s
- return 0.5*s, (m10+m01)*recip, (m20+m02)*recip, (m21-m12)*recip
- elseif i == 1 then
- local s = math.sqrt(m11-m22-m00+1)
- local recip = 0.5/s
- return (m01+m10)*recip, 0.5*s, (m21+m12)*recip, (m02-m20)*recip
- elseif i == 2 then
- local s = math.sqrt(m22-m00-m11+1)
- local recip = 0.5/s return (m02+m20)*recip, (m12+m21)*recip, 0.5*s, (m10-m01)*recip
- end
- end
- end
- function QuaternionToCFrame(px, py, pz, x, y, z, w)
- local xs, ys, zs = x + x, y + y, z + z
- local wx, wy, wz = w*xs, w*ys, w*zs
- local xx = x*xs
- local xy = x*ys
- local xz = x*zs
- local yy = y*ys
- local yz = y*zs
- local zz = z*zs
- return CFrame.new(px, py, pz,1-(yy+zz), xy - wz, xz + wy,xy + wz, 1-(xx+zz), yz - wx, xz - wy, yz + wx, 1-(xx+yy))
- end
- function QuaternionSlerp(a, b, t)
- local cosTheta = a[1]*b[1] + a[2]*b[2] + a[3]*b[3] + a[4]*b[4]
- local startInterp, finishInterp;
- if cosTheta >= 0.0001 then
- if (1 - cosTheta) > 0.0001 then
- local theta = math.acos(cosTheta)
- local invSinTheta = 1/math.sin(theta)
- startInterp = math.sin((1-t)*theta)*invSinTheta
- finishInterp = math.sin(t*theta)*invSinTheta
- else
- startInterp = 1-t
- finishInterp = t
- end
- else
- if (1+cosTheta) > 0.0001 then
- local theta = math.acos(-cosTheta)
- local invSinTheta = 1/math.sin(theta)
- startInterp = math.sin((t-1)*theta)*invSinTheta
- finishInterp = math.sin(t*theta)*invSinTheta
- else
- startInterp = t-1
- finishInterp = t
- end
- end
- return a[1]*startInterp + b[1]*finishInterp, a[2]*startInterp + b[2]*finishInterp, a[3]*startInterp + b[3]*finishInterp, a[4]*startInterp + b[4]*finishInterp
- end
- local function CFrameFromTopBack(at, top, back)
- local right = top:Cross(back)
- return CFrame.new(at.x, at.y, at.z,
- right.x, top.x, back.x,
- right.y, top.y, back.y,
- right.z, top.z, back.z)
- end
- function Triangle(a, b, c)
- local edg1 = (c-a):Dot((b-a).unit)
- local edg2 = (a-b):Dot((c-b).unit)
- local edg3 = (b-c):Dot((a-c).unit)
- if edg1 <= (b-a).magnitude and edg1 >= 0 then
- a, b, c = a, b, c
- elseif edg2 <= (c-b).magnitude and edg2 >= 0 then
- a, b, c = b, c, a
- elseif edg3 <= (a-c).magnitude and edg3 >= 0 then
- a, b, c = c, a, b
- else
- assert(false, "unreachable")
- end
- local len1 = (c-a):Dot((b-a).unit)
- local len2 = (b-a).magnitude - len1
- local width = (a + (b-a).unit*len1 - c).magnitude
- local maincf = CFrameFromTopBack(a, (b-a):Cross(c-b).unit, -(b-a).unit)
- local list = {}
- if len1 > 0.01 then
- local w1 = Instance.new('WedgePart', m)
- game:GetService("Debris"):AddItem(w1,5)
- w1.Material = "SmoothPlastic"
- w1.FormFactor = 'Custom'
- w1.BrickColor = BrickColor.new("Really red")
- w1.Transparency = 0
- w1.Reflectance = 0
- w1.Material = "SmoothPlastic"
- w1.CanCollide = false
- local l1 = Instance.new("PointLight",w1)
- l1.Color = Color3.new(170,0,0)
- NoOutline(w1)
- local sz = Vector3.new(0.2, width, len1)
- w1.Size = sz
- local sp = Instance.new("SpecialMesh",w1)
- sp.MeshType = "Wedge"
- sp.Scale = Vector3.new(0,1,1) * sz/w1.Size
- w1:BreakJoints()
- w1.Anchored = true
- w1.Parent = workspace
- w1.Transparency = 0.7
- table.insert(Effects,{w1,"Disappear",.01})
- w1.CFrame = maincf*CFrame.Angles(math.pi,0,math.pi/2)*CFrame.new(0,width/2,len1/2)
- table.insert(list,w1)
- end
- if len2 > 0.01 then
- local w2 = Instance.new('WedgePart', m)
- game:GetService("Debris"):AddItem(w2,5)
- w2.Material = "SmoothPlastic"
- w2.FormFactor = 'Custom'
- w2.BrickColor = BrickColor.new("Really red")
- w2.Transparency = 0
- w2.Reflectance = 0
- w2.Material = "SmoothPlastic"
- w2.CanCollide = false
- local l2 = Instance.new("PointLight",w2)
- l2.Color = Color3.new(170,0,0)
- NoOutline(w2)
- local sz = Vector3.new(0.2, width, len2)
- w2.Size = sz
- local sp = Instance.new("SpecialMesh",w2)
- sp.MeshType = "Wedge"
- sp.Scale = Vector3.new(0,1,1) * sz/w2.Size
- w2:BreakJoints()
- w2.Anchored = true
- w2.Parent = workspace
- w2.Transparency = 0.7
- table.insert(Effects,{w2,"Disappear",.01})
- w2.CFrame = maincf*CFrame.Angles(math.pi,math.pi,-math.pi/2)*CFrame.new(0,width/2,-len1 - len2/2)
- table.insert(list,w2)
- end
- return unpack(list)
- end
- Damagefunc=function(hit,minim,maxim,knockback,Type,Property,Delay,KnockbackType,decreaseblock)
- if hit.Parent==nil then
- return
- end
- h=hit.Parent:FindFirstChild("Humanoid")
- for _,v in pairs(hit.Parent:children()) do
- if v:IsA("Humanoid") then
- h=v
- end
- end
- if hit.Parent.Parent:FindFirstChild("Torso")~=nil then
- h=hit.Parent.Parent:FindFirstChild("Humanoid")
- end
- if hit.Parent.className=="Hat" then
- hit=hit.Parent.Parent:findFirstChild("Head")
- end
- if h~=nil and hit.Parent.Name~=Character.Name and hit.Parent:FindFirstChild("Torso")~=nil then
- if hit.Parent:findFirstChild("DebounceHit")~=nil then if hit.Parent.DebounceHit.Value==true then return end end
- --[[ if game.Players:GetPlayerFromCharacter(hit.Parent)~=nil then
- return
- end]]
- -- hs(hit,1.2)
- c=Instance.new("ObjectValue")
- c.Name="creator"
- c.Value=game:service("Players").LocalPlayer
- c.Parent=h
- game:GetService("Debris"):AddItem(c,.5)
- Damage=math.random(minim,maxim)
- -- h:TakeDamage(Damage)
- blocked=false
- block=hit.Parent:findFirstChild("Block")
- if block~=nil then
- print(block.className)
- if block.className=="NumberValue" then
- if block.Value>0 then
- blocked=true
- if decreaseblock==nil then
- block.Value=block.Value-1
- end
- end
- end
- if block.className=="IntValue" then
- if block.Value>0 then
- blocked=true
- if decreaseblock~=nil then
- block.Value=block.Value-1
- end
- end
- end
- end
- if blocked==false then
- -- h:TakeDamage(Damage)
- h.Health=h.Health-Damage
- showDamage(hit.Parent,Damage,.5,BrickColor.new("Really red"))
- else
- h.Health=h.Health-(Damage/2)
- showDamage(hit.Parent,Damage/2,.5,BrickColor.new("Bright blue"))
- end
- if Type=="Knockdown" then
- hum=hit.Parent.Humanoid
- hum.PlatformStand=true
- coroutine.resume(coroutine.create(function(HHumanoid)
- swait(1)
- HHumanoid.PlatformStand=false
- end),hum)
- local angle=(hit.Position-(Property.Position+Vector3.new(0,0,0))).unit
- --hit.CFrame=CFrame.new(hit.Position,Vector3.new(angle.x,hit.Position.y,angle.z))*CFrame.fromEulerAnglesXYZ(math.pi/4,0,0)
- local bodvol=Instance.new("BodyVelocity")
- bodvol.velocity=angle*knockback
- bodvol.P=5000
- bodvol.maxForce=Vector3.new(8e+003, 8e+003, 8e+003)
- bodvol.Parent=hit
- rl=Instance.new("BodyAngularVelocity")
- rl.P=3000
- rl.maxTorque=Vector3.new(500000,500000,500000)*50000000000000
- rl.angularvelocity=Vector3.new(math.random(-10,10),math.random(-10,10),math.random(-10,10))
- rl.Parent=hit
- game:GetService("Debris"):AddItem(bodvol,.5)
- game:GetService("Debris"):AddItem(rl,.5)
- elseif Type=="Normal" then
- vp=Instance.new("BodyVelocity")
- vp.P=500
- vp.maxForce=Vector3.new(math.huge,0,math.huge)
- -- vp.velocity=Character.Torso.CFrame.lookVector*Knockback
- if KnockbackType==1 then
- vp.velocity=Property.CFrame.lookVector*knockback+Property.Velocity/1.05
- elseif KnockbackType==2 then
- vp.velocity=Property.CFrame.lookVector*knockback
- end
- if knockback>0 then
- vp.Parent=hit.Parent.Torso
- end
- game:GetService("Debris"):AddItem(vp,.5)
- elseif Type=="Up" then
- local bodyVelocity=Instance.new("BodyVelocity")
- bodyVelocity.velocity=vt(0,60,0)
- bodyVelocity.P=5000
- bodyVelocity.maxForce=Vector3.new(8e+003, 8e+003, 8e+003)
- bodyVelocity.Parent=hit
- game:GetService("Debris"):AddItem(bodyVelocity,1)
- rl=Instance.new("BodyAngularVelocity")
- rl.P=3000
- rl.maxTorque=Vector3.new(500000,500000,500000)*50000000000000
- rl.angularvelocity=Vector3.new(math.random(-30,30),math.random(-30,30),math.random(-30,30))
- rl.Parent=hit
- game:GetService("Debris"):AddItem(rl,.5)
- elseif Type=="Snare" then
- bp=Instance.new("BodyPosition")
- bp.P=2000
- bp.D=100
- bp.maxForce=Vector3.new(math.huge,math.huge,math.huge)
- bp.position=hit.Parent.Torso.Position
- bp.Parent=hit.Parent.Torso
- game:GetService("Debris"):AddItem(bp,1)
- elseif Type=="Target" then
- if Targetting==false then
- ZTarget=hit.Parent.Torso
- coroutine.resume(coroutine.create(function(Part)
- so("http://www.roblox.com/asset/?id=15666462",Part,1,1.5)
- swait(5)
- so("http://www.roblox.com/asset/?id=15666462",Part,1,1.5)
- end),ZTarget)
- TargHum=ZTarget.Parent:findFirstChild("Humanoid")
- targetgui=Instance.new("BillboardGui")
- targetgui.Parent=ZTarget
- targetgui.Size=UDim2.new(10,100,10,100)
- targ=Instance.new("ImageLabel")
- targ.Parent=targetgui
- targ.BackgroundTransparency=1
- targ.Image="rbxassetid://4834067"
- targ.Size=UDim2.new(1,0,1,0)
- cam.CameraType="Scriptable"
- cam.CoordinateFrame=CFrame.new(Head.CFrame.p,ZTarget.Position)
- dir=Vector3.new(cam.CoordinateFrame.lookVector.x,0,cam.CoordinateFrame.lookVector.z)
- workspace.CurrentCamera.CoordinateFrame=CFrame.new(Head.CFrame.p,ZTarget.Position)
- Targetting=true
- RocketTarget=ZTarget
- for i=1,Property do
- --while Targetting==true and Humanoid.Health>0 and Character.Parent~=nil do
- if Humanoid.Health>0 and Character.Parent~=nil and TargHum.Health>0 and TargHum.Parent~=nil and Targetting==true then
- swait()
- end
- --workspace.CurrentCamera.CoordinateFrame=CFrame.new(Head.CFrame.p,Head.CFrame.p+rmdir*100)
- cam.CoordinateFrame=CFrame.new(Head.CFrame.p,ZTarget.Position)
- dir=Vector3.new(cam.CoordinateFrame.lookVector.x,0,cam.CoordinateFrame.lookVector.z)
- cam.CoordinateFrame=CFrame.new(Head.CFrame.p,ZTarget.Position)*cf(0,5,10)*euler(-0.3,0,0)
- end
- Targetting=false
- RocketTarget=nil
- targetgui.Parent=nil
- cam.CameraType="Custom"
- end
- end
- debounce=Instance.new("BoolValue")
- debounce.Name="DebounceHit"
- debounce.Parent=hit.Parent
- debounce.Value=true
- game:GetService("Debris"):AddItem(debounce,Delay)
- c=Instance.new("ObjectValue")
- c.Name="creator"
- c.Value=Player
- c.Parent=h
- game:GetService("Debris"):AddItem(c,.5)
- CRIT=false
- hitDeb=true
- AttackPos=6
- end
- end
- showDamage=function(Char,Dealt,du,Color)
- m=Instance.new("Model")
- m.Name=tostring(Dealt)
- h=Instance.new("Humanoid")
- h.Health=0
- h.MaxHealth=0
- h.Parent=m
- c=Instance.new("Part")
- c.Transparency=0
- c.BrickColor=Color
- c.Transparency = 1
- c.Name="Head"
- c.TopSurface=0
- c.BottomSurface=0
- c.formFactor="Plate"
- c.Size=Vector3.new(1,.4,1)
- local txt = Instance.new("BillboardGui", c)
- txt.Adornee = c
- txt.Name = "_status"
- txt.Size = UDim2.new(2, 0, 1.2, 0)
- txt.StudsOffset = Vector3.new(-9, 8, 0)
- local text = Instance.new("TextLabel", txt)
- text.Size = UDim2.new(10, 0, 7, 0)
- text.FontSize = "Size12"
- text.TextScaled = true
- text.TextTransparency = 0.5
- text.BackgroundTransparency = 1
- text.TextTransparency = 0.5
- text.TextStrokeTransparency = 0.5
- text.Font = "SciFi"
- text.TextStrokeColor3 = Color3.new(0,0,0)
- v=Instance.new("Part")
- v.Name = "ColorBrick"
- v.Parent=c
- v.FormFactor="Symmetric"
- v.Anchored=true
- v.CanCollide=false
- v.BottomSurface="Smooth"
- v.TopSurface="Smooth"
- v.Size=Vector3.new(10,5,3)
- v.Transparency=1
- v.CFrame=c.CFrame
- v.BrickColor=BrickColor.random()
- v.Transparency=1
- text.TextColor3 = t.BrickColor.Color
- v.Shape="Block"
- text.Text = tostring(Dealt)
- ms=Instance.new("CylinderMesh")
- ms.Scale=Vector3.new(.8,.8,.8)
- --[[local hitsounds={"199149137","199149186","199149221","199149235","199149269","199149297"}
- local rndm=math.random(1,#hitsounds)
- local r=rndm
- CFuncs["Sound"].Create("http://www.roblox.com/asset/?id="..hitsounds[r],c,1.25,1)]]--
- if CRIT==true then
- ms.Scale=Vector3.new(1,1.25,1)
- end
- ms.Parent=c
- c.Reflectance=0
- Instance.new("BodyGyro").Parent=c
- c.Parent=m
- if Char:findFirstChild("Head")~=nil then
- c.CFrame=CFrame.new(Char["Head"].CFrame.p+Vector3.new(0,1.5,0))
- elseif Char.Parent:findFirstChild("Head")~=nil then
- c.CFrame=CFrame.new(Char.Parent["Head"].CFrame.p+Vector3.new(0,1.5,0))
- end
- f=Instance.new("BodyPosition")
- f.P=2000
- f.D=100
- f.maxForce=Vector3.new(math.huge,math.huge,math.huge)
- f.position=c.Position+Vector3.new(0,3,0)
- f.Parent=c
- game:GetService("Debris"):AddItem(m,.5+du)
- c.CanCollide=false
- m.Parent=workspace
- c.CanCollide=false
- end
- function rayCast(Pos, Dir, Max, Ignore) -- Origin Position , Direction, MaxDistance , IgnoreDescendants
- return game:service("Workspace"):FindPartOnRay(Ray.new(Pos, Dir.unit * (Max or 999.999)), Ignore)
- end
- function SkullEffect(brickcolor,cframe,x1,y1,z1,delay)
- local prt=part(3,workspace,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.CFrame=cframe
- local msh=mesh("SpecialMesh",prt,"FileMesh","http://www.roblox.com/asset/?id=4770583",vt(0,0,0),vt(x1,y1,z1))
- --http://www.roblox.com/asset/?id=4770560
- game:GetService("Debris"):AddItem(prt,2)
- CF=prt.CFrame
- coroutine.resume(coroutine.create(function(Part,Mesh,TehCF)
- for i=0,1,0.2 do
- wait()
- Part.CFrame=CF*cf(0,0,-0.4)
- end
- for i=0,1,delay do
- wait()
- --Part.CFrame=CF*cf((math.random(-1,0)+math.random())/5,(math.random(-1,0)+math.random())/5,(math.random(-1,0)+math.random())/5)
- Mesh.Scale=Mesh.Scale
- end
- for i=0,1,0.1 do
- wait()
- Part.Transparency=i
- end
- Part.Parent=nil
- end),prt,msh,CF)
- end
- function MagicBlock(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay)
- local prt=part(3,char,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.Material = "Neon"
- prt.CFrame=cframe
- prt.CFrame=prt.CFrame*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))
- msh=mesh("BlockMesh",prt,"","",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,5)
- coroutine.resume(coroutine.create(function(Part,Mesh)
- for i=0,1,delay do
- swait()
- Part.CFrame=Part.CFrame*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))
- Part.Transparency=i
- Mesh.Scale=Mesh.Scale+vt(x3,y3,z3)
- end
- Part.Parent=nil
- end),prt,msh)
- end
- function MagicBlockSteady(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay,rottype)
- local prt=part(3,char,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.Material = "Neon"
- prt.CFrame=cframe
- msh=mesh("BlockMesh",prt,"","",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,5)
- coroutine.resume(coroutine.create(function(Part,Mesh)
- local rtype = rottype
- for i=0,1,delay do
- swait()
- if rtype == 1 then
- prt.CFrame = prt.CFrame*CFrame.Angles(0,0,0.1)
- elseif rtype == 2 then
- prt.CFrame = prt.CFrame*CFrame.Angles(0,0,-0.1)
- end
- Part.Transparency=i
- Mesh.Scale=Mesh.Scale+vt(x3,y3,z3)
- end
- Part.Parent=nil
- end),prt,msh)
- end
- function MagicSphere(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay)
- local prt=part(3,char,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.CFrame=cframe
- prt.CFrame=prt.CFrame*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))
- msh=mesh("SpecialMesh",prt,"Sphere","",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,5)
- coroutine.resume(coroutine.create(function(Part,Mesh)
- for i=0,1,delay do
- wait()
- Part.Transparency=i
- Mesh.Scale=Mesh.Scale+vt(x3,y3,z3)
- end
- Part.Parent=nil
- end),prt,msh)
- end
- function MagicBlockSteady(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay,rottype)
- local prt=part(3,char,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.Material = "Neon"
- prt.CFrame=cframe
- msh=mesh("BlockMesh",prt,"","",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,5)
- coroutine.resume(coroutine.create(function(Part,Mesh)
- local rtype = rottype
- for i=0,1,delay do
- swait()
- if rtype == 1 then
- prt.CFrame = prt.CFrame*CFrame.Angles(0,0,0.1)
- elseif rtype == 2 then
- prt.CFrame = prt.CFrame*CFrame.Angles(0,0,-0.1)
- end
- Part.Transparency=i
- Mesh.Scale=Mesh.Scale+vt(x3,y3,z3)
- end
- Part.Parent=nil
- end),prt,msh)
- end
- function MagicShock(brickcolor,cframe,x1,y1,x3,y3,delay,rottype)
- local prt=part(3,char,1,1,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.Material = "Neon"
- prt.CFrame=cframe
- local dec = decal(prt.Color,"http://www.roblox.com/asset/?id=874580939","Front",prt)
- local dec2 = decal(prt.Color,"http://www.roblox.com/asset/?id=874580939","Front",prt)
- msh=mesh("BlockMesh",prt,"","",vt(0,0,0),vt(x1,y1,0.01))
- game:GetService("Debris"):AddItem(prt,5)
- coroutine.resume(coroutine.create(function(Part,Mesh)
- local rtype = rottype
- for i=0,1,delay do
- swait()
- if rtype == 1 then
- prt.CFrame = prt.CFrame*CFrame.Angles(0,0,0.1)
- elseif rtype == 2 then
- prt.CFrame = prt.CFrame*CFrame.Angles(0,0,-0.1)
- end
- dec.Transparency=i
- dec2.Transparency=i
- Mesh.Scale=Mesh.Scale+vt(x3,y3,0)
- end
- Part.Parent=nil
- end),prt,msh)
- end
- function MagicShockAlt(brickcolor,cframe,x1,y1,x3,y3,delay,rottype)
- local prt=part(3,char,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.Material = "Neon"
- prt.CFrame=cframe
- msh=mesh("BlockMesh",prt,"","",vt(0,0,0),vt(x1,y1,0.01))
- game:GetService("Debris"):AddItem(prt,5)
- coroutine.resume(coroutine.create(function(Part,Mesh)
- local rtype = rottype
- for i=0,1,delay do
- swait()
- if rtype == 1 then
- prt.CFrame = prt.CFrame*CFrame.Angles(0,0,0.1)
- elseif rtype == 2 then
- prt.CFrame = prt.CFrame*CFrame.Angles(0,0,-0.1)
- end
- prt.Transparency=i
- Mesh.Scale=Mesh.Scale+vt(x3,y3,0)
- end
- Part.Parent=nil
- end),prt,msh)
- end
- function MagicShockAltCircle(brickcolor,cframe,x1,z1,x3,z3,delay,rottype)
- local prt=part(3,char,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.Material = "Neon"
- prt.CFrame=cframe
- msh=mesh("BlockMesh",prt,"","",vt(0,0,0),vt(x1,1,z1))
- game:GetService("Debris"):AddItem(prt,5)
- coroutine.resume(coroutine.create(function(Part,Mesh)
- local rtype = rottype
- for i=0,1,delay do
- swait()
- if rtype == 1 then
- prt.CFrame = prt.CFrame*CFrame.Angles(0,0.1,0)
- elseif rtype == 2 then
- prt.CFrame = prt.CFrame*CFrame.Angles(0,-0.1,0)
- end
- prt.Transparency=i
- Mesh.Scale=Mesh.Scale+vt(x3,0,z3)
- end
- Part.Parent=nil
- end),prt,msh)
- end
- function MagicShockTrailAlt(brickcolor,cframe,x1,y1,z1,x3,y3,delay,rottype)
- local prt=part(3,char,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.Material = "Neon"
- prt.CFrame=cframe
- msh=mesh("BlockMesh",prt,"","",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,5)
- coroutine.resume(coroutine.create(function(Part,Mesh)
- local rtype = rottype
- for i=0,1,delay do
- swait()
- if rtype == 1 then
- prt.CFrame = prt.CFrame*CFrame.Angles(0,0,0.1)
- elseif rtype == 2 then
- prt.CFrame = prt.CFrame*CFrame.Angles(0,0,-0.1)
- end
- prt.Transparency=i
- Mesh.Scale=Mesh.Scale+vt(x3,y3,0)
- end
- Part.Parent=nil
- end),prt,msh)
- end
- function MagicBlock2(brickcolor,cframe,Parent,x1,y1,z1,x3,y3,z3,delay)
- local prt=part(3,char,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=false
- prt.CFrame=cframe
- msh=mesh("BlockMesh",prt,"","",vt(0,0,0),vt(x1,y1,z1))
- local wld=weld(prt,prt,Parent,cframe)
- game:GetService("Debris"):AddItem(prt,5)
- coroutine.resume(coroutine.create(function(Part,Mesh,Weld)
- for i=0,1,delay do
- wait()
- Weld.C0=euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))*cframe
- --Part.CFrame=Part.CFrame*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))
- Part.Transparency=i
- Mesh.Scale=Mesh.Scale+vt(x3,y3,z3)
- end
- Part.Parent=nil
- end),prt,msh,wld)
- end
- function MagicBlock3(brickcolor,cframe,Parent,x1,y1,z1,x3,y3,z3,delay)
- local prt=part(3,workspace,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=false
- prt.CFrame=cframe
- msh=mesh("BlockMesh",prt,"","",vt(0,0,0),vt(x1,y1,z1))
- local wld=weld(prt,prt,Parent,euler(0,0,0)*cf(0,0,0))
- game:GetService("Debris"):AddItem(prt,5)
- coroutine.resume(coroutine.create(function(Part,Mesh,Weld)
- for i=0,1,delay do
- wait()
- Weld.C0=euler(i*20,0,0)
- --Part.CFrame=Part.CFrame*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))
- Part.Transparency=i
- Mesh.Scale=Mesh.Scale+vt(x3,y3,z3)
- end
- Part.Parent=nil
- end),prt,msh,wld)
- end
- function MagicCircle2(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay)
- local prt=part(3,workspace,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.CFrame=cframe
- local msh=mesh("CylinderMesh",prt,"","",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,2)
- coroutine.resume(coroutine.create(function(Part,Mesh)
- for i=0,1,delay do
- wait()
- Part.CFrame=Part.CFrame
- Mesh.Scale=Mesh.Scale+vt(x3,y3,z3)
- local prt2=part(3,workspace,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt2.Anchored=true
- prt2.CFrame=cframe*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))
- local msh2=mesh("SpecialMesh",prt2,"Sphere","",vt(0,0,0),vt(0.5,0.5,0.5))
- game:GetService("Debris"):AddItem(prt2,2)
- coroutine.resume(coroutine.create(function(Part,Mesh)
- for i=0,1,0.1 do
- wait()
- Part.CFrame=Part.CFrame*cf(0,0.5,0)
- end
- Part.Parent=nil
- end),prt2,msh2)
- end
- for i=0,1,delay*2 do
- wait()
- Part.CFrame=Part.CFrame
- Mesh.Scale=vt((x1+x3)-(x1+x3)*i,(y1+y3)-(y1+y3)*i,(z1+z3)-(z1+z3)*i)
- end
- Part.Parent=nil
- end),prt,msh)
- end
- function MagicCircle(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay)
- local prt=part(3,workspace,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.CFrame=cframe
- local msh=mesh("SpecialMesh",prt,"Sphere","",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,2)
- coroutine.resume(coroutine.create(function(Part,Mesh)
- for i=0,1,delay do
- wait()
- Part.CFrame=Part.CFrame
- Part.Transparency=i
- Mesh.Scale=Mesh.Scale+vt(x3,y3,z3)
- end
- Part.Parent=nil
- end),prt,msh)
- end
- function BreakEffect(brickcolor,cframe,x1,y1,z1)
- local prt=part(3,workspace,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.CFrame=cframe*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))
- local msh=mesh("SpecialMesh",prt,"Sphere","",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,2)
- coroutine.resume(coroutine.create(function(Part,CF,Numbb,randnumb)
- CF=Part.CFrame
- Numbb=0
- randnumb=math.random()/10
- rand1=math.random()/10
- for i=0,1,rand1 do
- wait()
- CF=CF*cf(0,math.random()/2,0)
- --Part.CFrame=Part.CFrame*euler(0.5,0,0)*cf(0,1,0)
- Part.CFrame=CF*euler(Numbb,0,0)
- Part.Transparency=i
- Numbb=Numbb+randnumb
- end
- Part.Parent=nil
- end),prt,CF,Numbb,randnumb)
- end
- function MagicWaveThing(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay)
- local prt=part(3,workspace,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.CFrame=cframe
- msh=mesh("SpecialMesh",prt,"FileMesh","http://www.roblox.com/asset/?id=1051557",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,5)
- coroutine.resume(coroutine.create(function(Part,Mesh)
- for i=0,1,delay do
- wait()
- Part.CFrame=Part.CFrame*euler(0,0.7,0)
- Part.Transparency=i
- Mesh.Scale=Mesh.Scale+vt(x3,y3,z3)
- end
- Part.Parent=nil
- end),prt,msh)
- end
- function WaveEffect(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay)
- local prt=part(3,workspace,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.CFrame=cframe
- msh=mesh("SpecialMesh",prt,"FileMesh","http://www.roblox.com/asset/?id=20329976",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,2)
- coroutine.resume(coroutine.create(function(Part,Mesh)
- for i=0,1,delay do
- wait()
- Part.CFrame=Part.CFrame*cf(0,y3/2,0)
- Part.Transparency=i
- Mesh.Scale=Mesh.Scale+vt(x3,y3,z3)
- end
- Part.Parent=nil
- end),prt,msh)
- end
- function StravEffect(brickcolor,cframe,x,y,z,x1,y1,z1,delay)
- local prt=part(3,workspace,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.CFrame=cframe*cf(x,y,z)
- msh=mesh("SpecialMesh",prt,"FileMesh","rbxassetid://168892363",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,5)
- coroutine.resume(coroutine.create(function(Part,Mesh,ex,why,zee)
- local num=math.random()
- local num2=math.random(-3,2)+math.random()
- local numm=0
- for i=0,1,delay*2 do
- swait()
- Part.CFrame=cframe*euler(0,numm*num*10,0)*cf(ex,why,zee)*cf(-i*10,num2,0)
- Part.Transparency=i
- numm=numm+0.01
- end
- Part.Parent=nil
- Mesh.Parent=nil
- end),prt,msh,x,y,z)
- end
- function dmgstart(dmg,what)
- hitcon = what.Touched:connect(function(hit)
- local hum = hit.Parent:FindFirstChild("Humanoid")
- if hum and not hum:IsDescendantOf(Character) then
- hum:TakeDamage(dmg)
- end
- end)
- end
- function dmgstop()
- hitcon:disconnect()
- end
- function Cloak()
- Face.Parent=nil
- cloaked=true
- for _,v in pairs(Torso.Parent:children()) do
- if v.className=="Part" and v.Name~="HumanoidRootPart" then
- coroutine.resume(coroutine.create(function()
- for i=0,1,0.2 do
- wait()
- v.Transparency=i
- end
- v.Transparency=1
- end))
- end
- if v.className=="Hat" then
- hatp=v.Handle
- coroutine.resume(coroutine.create(function(derp)
- for i=0,1,0.2 do
- wait()
- derp.Transparency=i
- end
- derp.Transparency=1
- end),hatp)
- end
- end
- for _,v in pairs(m:children()) do
- if v.className=="Part" then
- coroutine.resume(coroutine.create(function()
- for i=0,1,0.2 do
- wait()
- v.Transparency=i
- end
- v.Transparency=1
- end))
- end
- end
- end
- function UnCloak()
- so("http://roblox.com/asset/?id=2767090",Torso,1,1.1)
- Face.Parent=Head
- cloaked=false
- for _,v in pairs(Torso.Parent:children()) do
- if v.className=="Part" and v.Name~="HumanoidRootPart" then
- coroutine.resume(coroutine.create(function()
- for i=0,1,0.1 do
- wait()
- v.Transparency=v.Transparency-0.1
- end
- v.Transparency=0
- end))
- end
- if v.className=="Hat" then
- hatp=v.Handle
- coroutine.resume(coroutine.create(function(derp)
- for i=0,1,0.1 do
- wait()
- derp.Transparency=derp.Transparency-0.1
- end
- derp.Transparency=0
- end),hatp)
- end
- end
- for _,v in pairs(m:children()) do
- if v.className=="Part" and v.Name~="hitbox" and v.Name~='tip' then
- coroutine.resume(coroutine.create(function()
- for i=0,1,0.1 do
- wait()
- v.Transparency=v.Transparency-0.1
- end
- v.Transparency=0
- end))
- v.Transparency=0
- end
- end
- end
- local jumped = false
- function jump()
- attack = true
- jumped = true
- hum.WalkSpeed = 0
- MagicBlock(bc("White"),root.CFrame,15,15,15,-0.25,-0.25,-0.25,0.015)
- CFuncs["Sound"].Create("rbxassetid://169445572", root, 1, 1)
- CFuncs["Sound"].Create("rbxassetid://169380495", root, 1, 0.7)
- for i = 0,15,0.1 do
- swait()
- MagicBlock(bc("White"),sorb2.CFrame,3,3,3,0.05,0.05,0.05,0.05)
- MagicBlock(bc("White"),sorb.CFrame,3,3,3,0.05,0.05,0.05,0.05)
- RH.C0=clerp(RH.C0,cf(1,0.45,-0.75)*angles(math.rad(0),math.rad(90),math.rad(0))*angles(math.rad(-2.5),math.rad(0),math.rad(50)),.05)
- LH.C0=clerp(LH.C0,cf(-1,-1,0)*angles(math.rad(0),math.rad(-90),math.rad(0))*angles(math.rad(-2.5),math.rad(0),math.rad(15)),.05)
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,-1.5)* angles(math.rad(50),math.rad(0),math.rad(0)),0.05)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(5),math.rad(0),math.rad(0)),.05)
- RW.C0 = clerp(RW.C0, CFrame.new(1.45, 0.5, 0) * angles(math.rad(50), math.rad(0), math.rad(20)), 0.05)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.45, 0.5, 0) * angles(math.rad(50), math.rad(0), math.rad(-20)), 0.05)
- end
- local bv = Instance.new("BodyVelocity")
- bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
- bv.velocity = Vector3.new(0,500,0)
- bv.Parent = root
- game:GetService("Debris"):AddItem(bv, 0.5)
- local rng = Instance.new("Part", char)
- rng.Anchored = true
- rng.BrickColor = BrickColor.new("White")
- rng.CanCollide = false
- rng.FormFactor = 3
- rng.Name = "Ring"
- rng.Size = Vector3.new(1, 1, 1)
- rng.Transparency = 0
- rng.TopSurface = 0
- rng.BottomSurface = 0
- rng.Position = root.Position
- rng.CFrame = rng.CFrame * CFrame.Angles(math.rad(90), math.rad(0), math.rad(0))
- local rngm = Instance.new("SpecialMesh", rng)
- rngm.MeshId = "http://www.roblox.com/asset/?id=3270017"
- local rng2 = rng:Clone()
- rng2.Parent = char
- local rng2m = rng2.Mesh
- local rng3 = rng:Clone()
- rng3.Parent = char
- local rng3m = rng3.Mesh
- local rng4 = rng:Clone()
- rng4.Parent = char
- local rng4m = rng4.Mesh
- local rng5 = rng:Clone()
- rng5.Parent = char
- local rng5m = rng5.Mesh
- CFuncs["Sound"].Create("rbxassetid://324867021", rng, 10, 1)
- wait()
- local scaler = 10
- local scaler2 = 10
- game:GetService("Debris"):AddItem(bv, 2.4)
- hum.WalkSpeed = 50
- MagicBlock(bc("White"),root.CFrame,15,15,15,10,10,10,0.015)
- for i = 0,10,0.1 do
- swait()
- rng.Transparency = rng.Transparency + 0.01
- rng2.Transparency = rng2.Transparency + 0.01
- rng3.Transparency = rng3.Transparency + 0.01
- rng4.Transparency = rng4.Transparency + 0.01
- rng5.Transparency = rng5.Transparency + 0.01
- scaler = scaler - 0.125
- scaler2 = scaler2 - 0.1
- rng2m.Scale = rng2m.Scale + Vector3.new(scaler/1.25, scaler/1.25, 20)
- rng3m.Scale = rng3m.Scale + Vector3.new(scaler/1.5, scaler/1.5, 30)
- rng4m.Scale = rng4m.Scale + Vector3.new(scaler/1.75, scaler/1.75, 40)
- rng5m.Scale = rng5m.Scale + Vector3.new(scaler/2, scaler/2, 50)
- rngm.Scale = rngm.Scale + Vector3.new(scaler2, scaler2, 0)
- RH.C0=clerp(RH.C0,cf(1,-0.25,-0.5)*angles(math.rad(0),math.rad(90),math.rad(0))*angles(math.rad(-2.5),math.rad(0),math.rad(5)),.5)
- LH.C0=clerp(LH.C0,cf(-1,-1,0)*angles(math.rad(0),math.rad(-90),math.rad(0))*angles(math.rad(-2.5),math.rad(0),math.rad(5)),.5)
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,0)* angles(math.rad(-5),math.rad(0),math.rad(0)),0.5)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(-5),math.rad(0),math.rad(0)),.5)
- RW.C0 = clerp(RW.C0, CFrame.new(1.45, 0.5, 0) * angles(math.rad(-20), math.rad(0), math.rad(50)), 0.5)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.45, 0.5, 0) * angles(math.rad(-20), math.rad(0), math.rad(-50)), 0.5)
- end
- game:GetService("Debris"):AddItem(rng, 0.1)
- game:GetService("Debris"):AddItem(rng2, 0.1)
- game:GetService("Debris"):AddItem(rng3, 0.1)
- game:GetService("Debris"):AddItem(rng4, 0.1)
- game:GetService("Debris"):AddItem(rng5, 0.1)
- hum.WalkSpeed = 16
- attack = false
- jumped = false
- end
- function dash()
- attack = true
- jumped = true
- hum.WalkSpeed = 0
- local bv = Instance.new("BodyVelocity")
- bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
- bv.velocity = root.CFrame.lookVector*150
- bv.Parent = root
- game:GetService("Debris"):AddItem(bv, 1)
- local rng = Instance.new("Part", char)
- rng.Anchored = true
- rng.BrickColor = BrickColor.new("White")
- rng.CanCollide = false
- rng.FormFactor = 3
- rng.Name = "Ring"
- rng.Size = Vector3.new(1, 1, 1)
- rng.Transparency = 0
- rng.TopSurface = 0
- rng.BottomSurface = 0
- rng.CFrame = root.CFrame
- local rngm = Instance.new("SpecialMesh", rng)
- rngm.MeshId = "http://www.roblox.com/asset/?id=3270017"
- local rng2 = rng:Clone()
- rng2.Parent = char
- rng2.CFrame = root.CFrame + root.CFrame.lookVector*10
- local rng2m = rng2.Mesh
- local rng3 = rng:Clone()
- rng3.Parent = char
- rng3.CFrame = root.CFrame + root.CFrame.lookVector*20
- local rng3m = rng3.Mesh
- local rng4 = rng:Clone()
- rng4.Parent = char
- rng4.CFrame = root.CFrame + root.CFrame.lookVector*30
- local rng4m = rng4.Mesh
- local rng5 = rng:Clone()
- rng5.Parent = char
- rng5.CFrame = root.CFrame + root.CFrame.lookVector*40
- local rng5m = rng5.Mesh
- CFuncs["Sound"].Create("rbxassetid://324867021", root, 1, 1)
- wait()
- local scaler = 10/5
- local scaler2 = 10/5
- local hit = larm.Touched:connect(function(hit)
- Damagefunc(hit,25,34,math.random(10,20),"Normal",root,.2,1)
- end)
- for i = 0,10,0.1 do
- swait()
- MagicBlock(bc("White"),sorb2.CFrame,3,3,3,0.05,0.05,0.05,0.05)
- rng.Transparency = rng.Transparency + 0.01
- rng2.Transparency = rng2.Transparency + 0.01
- rng3.Transparency = rng3.Transparency + 0.01
- rng4.Transparency = rng4.Transparency + 0.01
- rng5.Transparency = rng5.Transparency + 0.01
- scaler = scaler - 0.125/5
- scaler2 = scaler2 - 0.1/5
- rng2m.Scale = rng2m.Scale + Vector3.new(scaler2/1.25, scaler2/1.25, 0)
- rng3m.Scale = rng3m.Scale + Vector3.new(scaler2/1.5, scaler2/1.5, 0)
- rng4m.Scale = rng4m.Scale + Vector3.new(scaler2/1.75, scaler2/1.75, 0)
- rng5m.Scale = rng5m.Scale + Vector3.new(scaler2/2, scaler2/2, 0)
- rngm.Scale = rngm.Scale + Vector3.new(scaler2, scaler2, 0)
- RH.C0=clerp(RH.C0,cf(1,-0.25,-0.5)*angles(math.rad(0),math.rad(90),math.rad(0))*angles(math.rad(-2.5),math.rad(0),math.rad(-25)),.5)
- LH.C0=clerp(LH.C0,cf(-1,-1,0)*angles(math.rad(0),math.rad(-90),math.rad(0))*angles(math.rad(-2.5),math.rad(0),math.rad(5)),.5)
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,0)* angles(math.rad(20),math.rad(0),math.rad(-80)),0.5)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(5),math.rad(0),math.rad(80)),.5)
- RW.C0 = clerp(RW.C0, CFrame.new(1.45, 0.5, 0) * angles(math.rad(-20), math.rad(0), math.rad(50)), 0.5)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.45, 0.5, 0) * angles(math.rad(-20), math.rad(0), math.rad(-110)), 0.5)
- end
- game:GetService("Debris"):AddItem(rng, 0.1)
- game:GetService("Debris"):AddItem(rng2, 0.1)
- game:GetService("Debris"):AddItem(rng3, 0.1)
- game:GetService("Debris"):AddItem(rng4, 0.1)
- game:GetService("Debris"):AddItem(rng5, 0.1)
- hum.WalkSpeed = 16
- hit:disconnect()
- attack = false
- jumped = false
- end
- function boom()
- attack = true
- jumped = true
- hum.WalkSpeed = 0
- MagicBlock(bc("White"),sorb.CFrame,15,15,15,-0.25,-0.25,-0.25,0.015)
- CFuncs["Sound"].Create("rbxassetid://169445572", root, 1, 1)
- CFuncs["Sound"].Create("rbxassetid://169380495", root, 1, 0.7)
- for i = 0,15,0.1 do
- swait()
- MagicBlock(bc("White"),sorb.CFrame,3,3,3,0.05,0.05,0.05,0.05)
- RH.C0=clerp(RH.C0,cf(1,-1,0)*angles(math.rad(0),math.rad(90),math.rad(0))*angles(math.rad(-2.5),math.rad(0),math.rad(0)),.05)
- LH.C0=clerp(LH.C0,cf(-1,-1,0)*angles(math.rad(0),math.rad(-90),math.rad(0))*angles(math.rad(-2.5),math.rad(0),math.rad(0)),.05)
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,0)* angles(math.rad(0),math.rad(0),math.rad(-80)),0.05)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(5),math.rad(0),math.rad(80)),.05)
- RW.C0 = clerp(RW.C0, CFrame.new(1.45, 0.5, 0) * angles(math.rad(50), math.rad(0), math.rad(20)), 0.05)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.45, 0.5, 0) * angles(math.rad(50), math.rad(0), math.rad(-90)), 0.05)
- end
- local rng = Instance.new("Part", char)
- rng.Anchored = true
- rng.BrickColor = BrickColor.new("White")
- rng.CanCollide = false
- rng.FormFactor = 3
- rng.Name = "Ring"
- rng.Size = Vector3.new(1, 1, 1)
- rng.Transparency = 0
- rng.TopSurface = 0
- rng.BottomSurface = 0
- rng.Position = root.Position
- rng.CFrame = rng.CFrame * CFrame.Angles(math.rad(90), math.rad(0), math.rad(0))
- local rngm = Instance.new("SpecialMesh", rng)
- rngm.MeshId = "http://www.roblox.com/asset/?id=3270017"
- local rng2 = rng:Clone()
- rng2.Parent = char
- local rng2m = rng2.Mesh
- local rng3 = rng:Clone()
- rng3.Parent = char
- local rng3m = rng3.Mesh
- local rng4 = rng:Clone()
- rng4.Parent = char
- local rng4m = rng4.Mesh
- local rng5 = rng:Clone()
- rng5.Parent = char
- local rng5m = rng5.Mesh
- local hit = rng5.Touched:connect(function(hit)
- Damagefunc(hit,10,25,math.random(10,20),"Normal",root,.2,1)
- end)
- MagicBlock(bc("White"),root.CFrame,15,15,15,5,5,5,0.015)
- CFuncs["Sound"].Create("rbxassetid://187137517", rng, 10, 1)
- CFuncs["Sound"].Create("rbxassetid://597291504", rng, 5, 0.85)
- CFuncs["Sound"].Create("rbxassetid://144699494", rng, 10, 1)
- wait()
- local scaler = 10
- local scaler2 = 10
- for i = 0,10,0.1 do
- swait()
- rng.Transparency = rng.Transparency + 0.01
- rng2.Transparency = rng2.Transparency + 0.01
- rng3.Transparency = rng3.Transparency + 0.01
- rng4.Transparency = rng4.Transparency + 0.01
- rng5.Transparency = rng5.Transparency + 0.01
- scaler = scaler - 0.125
- scaler2 = scaler2 - 0.1
- rng2m.Scale = rng2m.Scale + Vector3.new(scaler2/1.75, scaler2/1.75, 4)
- rng3m.Scale = rng3m.Scale + Vector3.new(scaler2/1.5, scaler2/1.5, 3)
- rng4m.Scale = rng4m.Scale + Vector3.new(scaler2/1.25, scaler2/1.25, 2)
- rng5m.Scale = rng5m.Scale + Vector3.new(scaler2, scaler2, 1)
- rng5.Size = rng5m.Scale
- rng5.CFrame = rng.CFrame
- rngm.Scale = rngm.Scale + Vector3.new(scaler2/2, scaler2/2, 5)
- RH.C0=clerp(RH.C0,cf(1,-0.25,-0.5)*angles(math.rad(0),math.rad(90),math.rad(0))*angles(math.rad(-30),math.rad(0),math.rad(0)),.5)
- LH.C0=clerp(LH.C0,cf(-1,-1,0)*angles(math.rad(0),math.rad(-90),math.rad(0))*angles(math.rad(-2.5),math.rad(0),math.rad(0)),.5)
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,-1)* angles(math.rad(30),math.rad(0),math.rad(80)),0.5)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(5),math.rad(0),math.rad(-80)),.5)
- RW.C0 = clerp(RW.C0, CFrame.new(1.45, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(40)), 0.5)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.45, 0.5, 0) * angles(math.rad(50), math.rad(0), math.rad(-50)), 0.5)
- end
- hit:disconnect()
- game:GetService("Debris"):AddItem(rng, 1)
- game:GetService("Debris"):AddItem(rng2, 1)
- game:GetService("Debris"):AddItem(rng3, 1)
- game:GetService("Debris"):AddItem(rng4, 1)
- game:GetService("Debris"):AddItem(rng5, 1)
- hum.WalkSpeed = 16
- attack = false
- jumped = false
- end
- function shooty()
- attack = true
- MagicBlock(bc("White"),sorb.CFrame,15,15,15,-0.25,-0.25,-0.25,0.015)
- CFuncs["Sound"].Create("rbxassetid://169445572", root, 1, 1)
- CFuncs["Sound"].Create("rbxassetid://169380495", root, 1, 0.7)
- for i = 0,15,0.1 do
- swait()
- MagicBlock(bc("White"),sorb.CFrame,3,3,3,0.05,0.05,0.05,0.05)
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,0)* angles(math.rad(0),math.rad(0),math.rad(-80)),0.05)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(5),math.rad(0),math.rad(80)),.05)
- RW.C0 = clerp(RW.C0, CFrame.new(1.45, 0.5, 0) * angles(math.rad(50), math.rad(0), math.rad(20)), 0.05)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.45, 0.5, 0) * angles(math.rad(50), math.rad(0), math.rad(-90)), 0.05)
- end
- CFuncs["Sound"].Create("rbxassetid://187137517", root, 1, 1)
- local a = Instance.new("Part",Character)
- a.Name = "Direction"
- a.Anchored = true
- a.BrickColor = bc("Bright red")
- a.Material = "Neon"
- a.Transparency = 1
- a.CanCollide = false
- local ray = Ray.new(
- root.CFrame.p, -- origin
- (mouse.Hit.p - root.CFrame.p).unit * 500 -- direction
- )
- local ignore = Character
- local hit, position, normal = workspace:FindPartOnRay(ray, ignore)
- a.BottomSurface = 10
- a.TopSurface = 10
- local distance = (root.CFrame.p - position).magnitude
- a.Size = Vector3.new(0.1, 0.1, 0.1)
- a.CFrame = CFrame.new(root.CFrame.p, position) * CFrame.new(0, 0, 0)
- local lb = Instance.new("Part")
- lb.Parent = char
- lb.BrickColor = bc("White")
- lb.CanCollide = false
- lb.Material = "Neon"
- lb.Anchored = true
- lb.TopSurface = 0
- lb.BottomSurface = 0
- lb.Transparency = 0
- lb.Size = vt(0.5,0.5,0.5)
- lb.CFrame = sorb.CFrame
- lb.Anchored = false
- local thingery = Instance.new("SpecialMesh",lb)
- thingery.MeshType = "Sphere"
- thingery.Scale = vt(25,25,25)
- game:GetService("Debris"):AddItem(lb, 10)
- local bv = Instance.new("BodyVelocity")
- bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
- bv.velocity = a.CFrame.lookVector*150
- bv.Parent = lb
- game:GetService("Debris"):AddItem(a, 0.1)
- wait(0.05)
- local hitted = false
- lb.Touched:connect(function(hit)
- if hitted == false then
- hitted = true
- lb.Anchored = true
- lb.Transparency = 1
- local rng = Instance.new("Part", char)
- rng.Anchored = true
- rng.BrickColor = BrickColor.new("White")
- rng.CanCollide = false
- rng.FormFactor = 3
- rng.Name = "Ring"
- rng.Size = Vector3.new(1, 1, 1)
- rng.Transparency = 0
- rng.TopSurface = 0
- rng.BottomSurface = 0
- rng.CFrame = lb.CFrame
- rng.CFrame = rng.CFrame * CFrame.Angles(math.rad(math.random(-360,360)), math.rad(math.random(-360,360)), math.rad(math.random(-360,360)))
- local rngm = Instance.new("SpecialMesh", rng)
- rngm.MeshId = "http://www.roblox.com/asset/?id=3270017"
- local rng2 = rng:Clone()
- rng2.Parent = char
- local rng2m = rng2.Mesh
- local rng3 = rng:Clone()
- rng3.Parent = char
- local rng3m = rng3.Mesh
- local rng4 = rng:Clone()
- rng4.Parent = char
- local rng4m = rng4.Mesh
- local rng5 = rng:Clone()
- rng5.Parent = char
- rng5.CFrame = rng5.CFrame * CFrame.Angles(math.rad(math.random(-360,360)), math.rad(math.random(-360,360)), math.rad(math.random(-360,360)))
- local rng5m = rng5.Mesh
- rng2.CFrame = rng2.CFrame * CFrame.Angles(math.rad(math.random(-360,360)), math.rad(math.random(-360,360)), math.rad(math.random(-360,360)))
- rng3.CFrame = rng3.CFrame * CFrame.Angles(math.rad(math.random(-360,360)), math.rad(math.random(-360,360)), math.rad(math.random(-360,360)))
- rng4.CFrame = rng4.CFrame * CFrame.Angles(math.rad(math.random(-360,360)), math.rad(math.random(-360,360)), math.rad(math.random(-360,360)))
- MagicBlock(bc("White"),lb.CFrame,15,15,15,5,5,5,0.015)
- local rng6 = rng:Clone()
- rng6.Material = "Neon"
- rng6.Parent = char
- local rng6m = rng6.Mesh
- rng6m.Scale = vt(1,1,1)
- rng6m.MeshType = "Sphere"
- local hita = rng6.Touched:connect(function(hit)
- Damagefunc(hit,10,25,math.random(10,20),"Normal",root,.2,1)
- end)
- CFuncs["Sound"].Create("rbxassetid://187137517", rng, 5, 1)
- CFuncs["Sound"].Create("rbxassetid://597291504", rng, 5, 0.75)
- CFuncs["Sound"].Create("rbxassetid://144699494", rng, 5, 1)
- local scaler = 5
- local scaler2 = 5
- for i = 0,20,0.1 do
- swait()
- rng.Transparency = rng.Transparency + 0.005
- rng2.Transparency = rng2.Transparency + 0.005
- rng3.Transparency = rng3.Transparency + 0.005
- rng4.Transparency = rng4.Transparency + 0.005
- rng5.Transparency = rng5.Transparency + 0.005
- rng6.Transparency = rng6.Transparency + 0.005
- scaler = scaler - 0.005/2
- scaler2 = scaler2 - 0.05/2
- rng6.Size = rng6.Size + Vector3.new(scaler2/3, scaler2/3, scaler2/3)
- rng6.CFrame = rng.CFrame
- rng2m.Scale = rng2m.Scale + Vector3.new(scaler2/1.5, scaler2/1.5, 0)
- rng3m.Scale = rng3m.Scale + Vector3.new(scaler2/1.5, scaler2/1.5, 0)
- rng4m.Scale = rng4m.Scale + Vector3.new(scaler2/2, scaler2/2, 0)
- rng5m.Scale = rng5m.Scale + Vector3.new(scaler2, scaler2, 0)
- rngm.Scale = rngm.Scale + Vector3.new(scaler2, scaler2, 0)
- end
- hita:disconnect()
- game:GetService("Debris"):AddItem(rng, 1)
- game:GetService("Debris"):AddItem(rng2, 1)
- game:GetService("Debris"):AddItem(rng3, 1)
- game:GetService("Debris"):AddItem(rng4, 1)
- game:GetService("Debris"):AddItem(rng5, 1)
- game:GetService("Debris"):AddItem(rng6, 1)
- end
- end)
- for i = 0,2,0.1 do
- swait()
- MagicBlock(bc("White"),sorb.CFrame,3,3,3,0.05,0.05,0.05,0.05)
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,0)* angles(math.rad(20),math.rad(0),math.rad(80)),0.5)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(5),math.rad(0),math.rad(-80)),.5)
- RW.C0 = clerp(RW.C0, CFrame.new(1.45, 0.5, 0) * angles(math.rad(50), math.rad(0), math.rad(20)), 0.5)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.45, 0.5, 0) * angles(math.rad(50), math.rad(0), math.rad(-90)), 0.5)
- end
- attack = false
- end
- function superpunch()
- attack = true
- jumped = true
- hum.WalkSpeed = 0
- MagicBlock(bc("White"),sorb.CFrame,15,15,15,-0.25,-0.25,-0.25,0.015)
- CFuncs["Sound"].Create("rbxassetid://169445572", root, 1, 1)
- CFuncs["Sound"].Create("rbxassetid://169380495", root, 1, 0.7)
- for i = 0,15,0.1 do
- swait()
- MagicBlock(bc("White"),sorb.CFrame,3,3,3,0.05,0.05,0.05,0.05)
- RH.C0=clerp(RH.C0,cf(1,-1,0)*angles(math.rad(0),math.rad(90),math.rad(0))*angles(math.rad(-2.5),math.rad(0),math.rad(0)),.05)
- LH.C0=clerp(LH.C0,cf(-1,-1,0)*angles(math.rad(0),math.rad(-90),math.rad(0))*angles(math.rad(-2.5),math.rad(0),math.rad(0)),.05)
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,0)* angles(math.rad(0),math.rad(0),math.rad(-80)),0.05)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(5),math.rad(0),math.rad(80)),.05)
- RW.C0 = clerp(RW.C0, CFrame.new(1.45, 0.5, 0) * angles(math.rad(50), math.rad(0), math.rad(-20)), 0.05)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.45, 0.5, 0) * angles(math.rad(50), math.rad(0), math.rad(-90)), 0.05)
- end
- local rng = Instance.new("Part", char)
- rng.Anchored = true
- rng.BrickColor = BrickColor.new("White")
- rng.CanCollide = false
- rng.FormFactor = 3
- rng.Name = "Ring"
- rng.Size = Vector3.new(1, 1, 1)
- rng.Transparency = 0
- rng.TopSurface = 0
- rng.BottomSurface = 0
- rng.CFrame = root.CFrame
- local rngm = Instance.new("SpecialMesh", rng)
- rngm.MeshId = "http://www.roblox.com/asset/?id=3270017"
- local rng2 = rng:Clone()
- rng2.Parent = char
- local rng2m = rng2.Mesh
- local rng3 = rng:Clone()
- rng3.Parent = char
- local rng3m = rng3.Mesh
- local rng4 = rng:Clone()
- rng4.Parent = char
- local rng4m = rng4.Mesh
- local rng5 = rng:Clone()
- rng5.Parent = char
- local rng5m = rng5.Mesh
- local rng6 = rng:Clone()
- rng6.Material = "Neon"
- rng6.Parent = char
- local rng6m = rng6.Mesh
- rng6m.Scale = vt(1,1,1)
- rng6m.MeshType = "Sphere"
- local hita = rng6.Touched:connect(function(hit)
- Damagefunc(hit,10,25,math.random(10,20),"Normal",root,.2,1)
- end)
- rng2.CFrame = root.CFrame
- rng3.CFrame = root.CFrame
- rng4.CFrame = root.CFrame
- rng5.CFrame = root.CFrame
- rng6.CFrame = root.CFrame
- CFuncs["Sound"].Create("rbxassetid://260430117", rng, 5, 1)
- CFuncs["Sound"].Create("rbxassetid://187137517", rng, 5, 0.85)
- CFuncs["Sound"].Create("rbxassetid://169628396", rng, 5, 1)
- CFuncs["Sound"].Create("rbxassetid://137994058", rng, 5, 1)
- CFuncs["Sound"].Create("rbxassetid://138186576", rng, 5, 1)
- wait()
- local scaler = 10/5
- local scaler2 = 10/5
- MagicBlock(bc("White"),root.CFrame,15,15,15,5,5,5,0.015)
- for i = 0,10,0.1 do
- swait()
- MagicBlock(bc("White"),rng6.CFrame,5,5,5,5,5,5,0.1)
- rng.CFrame = rng.CFrame + rng.CFrame.lookVector*scaler2
- rng2.CFrame = rng2.CFrame + rng2.CFrame.lookVector*scaler2/1.25
- rng3.CFrame = rng3.CFrame + rng3.CFrame.lookVector*scaler2/1.5
- rng4.CFrame = rng4.CFrame + rng4.CFrame.lookVector*scaler2/1.75
- rng5.CFrame = rng5.CFrame + rng5.CFrame.lookVector*scaler2/2
- rng6.Size = rng6.Size + Vector3.new(scaler2/3, scaler2/3, scaler2/3)
- rng6.CFrame = rng.CFrame
- rng.Transparency = rng.Transparency + 0.01
- rng2.Transparency = rng2.Transparency + 0.01
- rng3.Transparency = rng3.Transparency + 0.01
- rng4.Transparency = rng4.Transparency + 0.01
- rng5.Transparency = rng5.Transparency + 0.01
- rng6.Transparency = rng6.Transparency + 0.01
- scaler = scaler - 0.125/5
- scaler2 = scaler2 - 0.1/5
- rng2m.Scale = rng2m.Scale + Vector3.new(scaler2/2.5, scaler2/2.5, 1.5)
- rng3m.Scale = rng3m.Scale + Vector3.new(scaler2/2, scaler2/2, 1)
- rng4m.Scale = rng4m.Scale + Vector3.new(scaler2/1.5, scaler2/1.5, 0.5)
- rng5m.Scale = rng5m.Scale + Vector3.new(scaler2, scaler2, 0)
- rngm.Scale = rngm.Scale + Vector3.new(scaler2/3, scaler2/3, 2)
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,0)* angles(math.rad(20),math.rad(0),math.rad(80)),0.5)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(5),math.rad(0),math.rad(-80)),.5)
- RW.C0 = clerp(RW.C0, CFrame.new(1.45, 0.5, 0) * angles(math.rad(50), math.rad(0), math.rad(20)), 0.5)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.45, 0.5, 0) * angles(math.rad(50), math.rad(0), math.rad(-90)), 0.5)
- end
- hita:disconnect()
- game:GetService("Debris"):AddItem(rng, 1)
- game:GetService("Debris"):AddItem(rng2, 1)
- game:GetService("Debris"):AddItem(rng3, 1)
- game:GetService("Debris"):AddItem(rng4, 1)
- game:GetService("Debris"):AddItem(rng5, 1)
- hum.WalkSpeed = 16
- attack = false
- jumped = false
- end
- mouse.KeyDown:connect(function(k)
- if k == "z" and attack == false and RootPart.Velocity.y == 0 and hitfloor~=nil then
- jump()
- end
- if k == "x" and attack == false then
- dash()
- end
- if k == "c" and attack == false and RootPart.Velocity.y == 0 and hitfloor~=nil then
- boom()
- end
- if k == "v" and attack == false then
- shooty()
- end
- if k == "b" and attack == false then
- superpunch()
- end
- end)
- Humanoid.Animator.Parent = nil
- idleanim=.4
- while true do
- swait()
- sine = sine + change
- local torvel=(RootPart.Velocity*Vector3.new(1,0,1)).magnitude
- local velderp=RootPart.Velocity.y
- hitfloor,posfloor=rayCast(RootPart.Position,(CFrame.new(RootPart.Position,RootPart.Position - Vector3.new(0,1,0))).lookVector,4,Character)
- if equipped==true or equipped==false then
- if attack==false then
- idle=idle+1
- else
- idle=0
- end
- if idle>=500 then
- if attack==false then
- --Sheath()
- end
- end
- if RootPart.Velocity.y > 1 and hitfloor==nil then
- Anim="Jump"
- if attack==false then
- Neck.C0=clerp(Neck.C0,necko*euler(-0.2,0,0),.3)
- Neck.C1=clerp(Neck.C1,necko2*euler(0,0,0),.3)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0.25)*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(-.5,0,0.5)*angles(math.rad(-25),math.rad(0),math.rad(0)),.3)
- RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(-.5,0,-0.5),.3)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
- RH.C0=clerp(RH.C0,cf(1,-1,-.3)*euler(-0.5,1.57,0)*euler(-.2,0,0),.2)
- LH.C0=clerp(LH.C0,cf(-1,-1,-.3)*euler(-0.5,-1.57,0)*euler(-.2,0,0),.2)
- end
- elseif RootPart.Velocity.y < -1 and hitfloor==nil then
- Anim="Fall"
- if attack==false then
- Neck.C0=clerp(Neck.C0,necko*euler(0.4,0,0),.3)
- Neck.C1=clerp(Neck.C1,necko2*euler(0,0,0),.3)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0.25)*angles(math.rad(5),math.rad(0),math.rad(0)),.3)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(0.3,0,-0.2),.3)
- LW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(0.3,0,0.2)*angles(math.rad(-25),math.rad(0),math.rad(0)),.3)
- RW.C1=clerp(LW.C1,cf(0,0.5,0)*euler(0,0,0),.3)
- RH.C0=clerp(RH.C0,cf(1,-1,0)*euler(0.4,1.57,0),.2)
- LH.C0=clerp(LH.C0,cf(-1,-1,0)*euler(-0.2,-1.57,0),.2)
- end
- elseif torvel<1 and hitfloor~=nil then
- Anim="Idle"
- if jumped == false then
- RH.C0=clerp(RH.C0,cf(1,-1 - 0.15 * math.cos(sine / 25),0)*angles(math.rad(0),math.rad(90),math.rad(0))*angles(math.rad(-2.5 - 2.5 * math.cos(sine / 32)),math.rad(0),math.rad(0 + 7.5 * math.cos(sine / 32))),.3)
- LH.C0=clerp(LH.C0,cf(-1,-1 - 0.15 * math.cos(sine / 25),0)*angles(math.rad(0),math.rad(-90),math.rad(0))*angles(math.rad(-2.5 - 2.5 * math.cos(sine / 32)),math.rad(0),math.rad(0 + 7.5 * math.cos(sine / 32))),.3)
- end
- if attack==false then
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0 + 0.15 * math.cos(sine / 25))*angles(math.rad(0),math.rad(0),math.rad(0)),.3)
- Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(0 - 5 * math.cos(sine / 25)),math.rad(0),math.rad(0)),.3)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*angles(math.rad(0),math.rad(0),math.rad(5 + 2.5 * math.cos(sine / 25))),.3)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*angles(math.rad(0),math.rad(0),math.rad(-5 - 2.5 * math.cos(sine / 25))),.3)
- end
- elseif torvel>2 and torvel<22 and hitfloor~=nil then
- Anim="Walk"
- if jumped == false then
- RH.C0=clerp(RH.C0,cf(1,-1 - 0.05 * math.cos(sine / 4),-0.25 - 0.15 * math.cos(sine / 4))*angles(math.rad(0),math.rad(90),math.rad(0))*angles(math.rad(0),math.rad(0),math.rad(0 + 25 * math.cos(sine / 8))),.3)
- LH.C0=clerp(LH.C0,cf(-1,-1 - 0.05 * math.cos(sine / 4),-0.25 - 0.15 * math.cos(sine / 4))*angles(math.rad(0),math.rad(-90),math.rad(0))*angles(math.rad(0),math.rad(0),math.rad(0 + 25 * math.cos(sine / 8))),.3)
- end
- if attack==false then
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0 - 0.05 * math.cos(sine / 4))*angles(math.rad(15),math.rad(0),math.rad(0)),.3)
- Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*angles(math.rad(0 - 25 * math.cos(sine / 8)),math.rad(0),math.rad(10 + 1.25 * math.cos(sine / 16))),.3)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*angles(math.rad(0 + 25 * math.cos(sine / 8)),math.rad(0),math.rad(-10 - 1.25 * math.cos(sine / 16))),.3)
- end
- elseif torvel>=22 and hitfloor~=nil then
- Anim="Run"
- if jumped == false then
- RH.C0=clerp(RH.C0,cf(1,-1 - 0.05 * math.cos(sine / 32),0)*angles(math.rad(0),math.rad(90),math.rad(0))*angles(math.rad(0),math.rad(0),math.rad(0 + 75 * math.cos(sine / 3))),.3)
- LH.C0=clerp(LH.C0,cf(-1,-1 - 0.05 * math.cos(sine / 32),0)*angles(math.rad(0),math.rad(-90),math.rad(0))*angles(math.rad(0),math.rad(0),math.rad(0 + 75 * math.cos(sine / 3))),.3)
- end
- if attack==false then
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,-0.25 + 0.05 * math.cos(sine / 32))* angles(math.rad(35),math.rad(0),math.rad(0)),.3)
- Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*angles(math.rad(-50),math.rad(-60),math.rad(25)),.3)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*angles(math.rad(-50),math.rad(0),math.rad(-25)),.3)
- end
- end
- end
- end
- -- Magic Unknown
- --[[Magic Unknown, By KillerDarkness0105/Codex#6685.]]--
- Player=game:GetService("Players").LocalPlayer
- Character=Player.Character
- PlayerGui=Player.PlayerGui
- Backpack=Player.Backpack
- Torso=Character.Torso
- Head=Character.Head
- Humanoid=Character.Humanoid
- LeftArm=Character["Left Arm"]
- LeftLeg=Character["Left Leg"]
- RightArm=Character["Right Arm"]
- RightLeg=Character["Right Leg"]
- LS=Torso["Left Shoulder"]
- LH=Torso["Left Hip"]
- RS=Torso["Right Shoulder"]
- RH=Torso["Right Hip"]
- Face = Head.face
- Neck=Torso.Neck
- it=Instance.new
- attacktype=1
- attacktype2=1
- vt=Vector3.new
- it=Instance.new
- cf=CFrame.new
- cn=CFrame.new
- euler=CFrame.fromEulerAnglesXYZ
- angles=CFrame.Angles
- combo = 0
- necko=cf(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
- necko2=cf(0, -0.5, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
- LHC0=cf(-1,-1,0,-0,-0,-1,0,1,0,1,0,0)
- LHC1=cf(-0.5,1,0,-0,-0,-1,0,1,0,1,0,0)
- RHC0=cf(1,-1,0,0,0,1,0,1,0,-1,-0,-0)
- RHC1=cf(0.5,1,0,0,0,1,0,1,0,-1,-0,-0)
- RootPart=Character.HumanoidRootPart
- RootJoint=RootPart.RootJoint
- RootCF=euler(-1.57,0,3.14)
- attack = false
- attackdebounce = false
- trispeed=.2
- attackmode='none'
- local idle=0
- local Anim="Idle"
- stance = false
- local ff = 2
- noleg = false
- evadecooldown = false
- Humanoid.Animator.Parent = nil
- local equip = false
- local Effects = {}
- attackspeed = 0.14
- df = false
- Swing = 1
- local sine = 0
- local change = 1
- local val = 0
- local speed = 0
- local rs = game:GetService("RunService").RenderStepped
- cam = workspace.CurrentCamera
- local RbxUtility = LoadLibrary("RbxUtility")
- local Create = RbxUtility.Create
- deb = game:GetService("Debris")
- Face:Destroy()
- --game.Lighting.TimeOfDay = 210
- local eye1 = Instance.new("Part")
- eye1.Parent = Character
- eye1.Size = Vector3.new(0.2,0.2,0.2)
- eye1.Archivable = true
- eye1.Transparency = 0
- eye1.CanCollide = false
- eye1.Material = "Neon"
- eye1.Color = Color3.fromRGB(48,0,211)
- local eye1mesh = Instance.new("SpecialMesh",eye1)
- eye1mesh.MeshType = "Sphere"
- eye1mesh.Scale = Vector3.new(0.66,1.22,0.66)
- ko2 = eye1mesh.Scale
- local eye1weld = Instance.new("Weld")
- eye1weld.Parent = eye1
- eye1weld.Part0 = Head
- eye1weld.Part1 = eye1
- eye1weld.C0 = CFrame.new(.13,.19,-.55)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
- eye1weld.Part0 = Head
- local eye2 = Instance.new("Part")
- eye2.Parent = Character
- eye2.Size = Vector3.new(0.2,0.2,0.2)
- eye2.Archivable = true
- eye2.Transparency = 0
- eye2.CanCollide = false
- eye2.Material = "Neon"
- eye2.Color = Color3.fromRGB(48,0,211)
- local eye2mesh = Instance.new("SpecialMesh",eye2)
- eye2mesh.MeshType = "Sphere"
- eye2mesh.Scale = Vector3.new(0.66,1.22,0.66)
- local eye2weld = Instance.new("Weld")
- eye2weld.Parent = eye2
- eye2weld.Part0 = Head
- eye2weld.Part1 = eye2
- eye2weld.C0 = CFrame.new(-.13,.19,-.55)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
- eye2weld.Part0 = Head
- music = Instance.new("Sound",PlayerGui)
- music.Volume = 1
- music.TimePosition = 0
- music.Pitch = 1
- music.SoundId = "rbxassetid://1849245030"
- music.Looped = true
- music:Play()
- so = function(id,par,vol,pit)
- coroutine.resume(coroutine.create(function()
- local sou = Instance.new("Sound",par or workspace)
- sou.Volume=vol
- sou.Pitch=pit or 1
- sou.SoundId=id
- sou:play()
- game:GetService("Debris"):AddItem(sou,8)
- end))
- end
- --save shoulders
- RSH, LSH=nil, nil
- --welds
- RW, LW=Instance.new("Weld"), Instance.new("Weld")
- RW.Name="Right Shoulder" LW.Name="Left Shoulder"
- LH=Torso["Left Hip"]
- RH=Torso["Right Hip"]
- TorsoColor=Torso.BrickColor
- function NoOutline(Part)
- Part.TopSurface,Part.BottomSurface,Part.LeftSurface,Part.RightSurface,Part.FrontSurface,Part.BackSurface = 10,10,10,10,10,10
- end
- player=Player
- ch=Character
- RSH=ch.Torso["Right Shoulder"]
- LSH=ch.Torso["Left Shoulder"]
- --
- RSH.Parent=nil
- LSH.Parent=nil
- --
- RW.Name="Right Shoulder"
- RW.Part0=ch.Torso
- RW.C0=cf(1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.3, 0, -0.5)
- RW.C1=cf(0, 0.5, 0)
- RW.Part1=ch["Right Arm"]
- RW.Parent=ch.Torso
- --
- LW.Name="Left Shoulder"
- LW.Part0=ch.Torso
- LW.C0=cf(-1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.7, 0, 0.8)
- LW.C1=cf(0, 0.5, 0)
- LW.Part1=ch["Left Arm"]
- LW.Parent=ch.Torso
- newWeld = function(wp0, wp1, wc0x, wc0y, wc0z)
- local wld = Instance.new("Weld", wp1)
- wld.Part0 = wp0
- wld.Part1 = wp1
- wld.C0 = CFrame.new(wc0x, wc0y, wc0z)
- end
- local rs = game:GetService("RunService").RenderStepped
- newWeld(RootPart, Torso, 0, -1, 0)
- Torso.Weld.C1 = CFrame.new(0, -1, 0)
- newWeld(Torso, LeftLeg, -0.5, -1, 0)
- LeftLeg.Weld.C1 = CFrame.new(0, 1, 0)
- newWeld(Torso, RightLeg, 0.5, -1, 0)
- RightLeg.Weld.C1 = CFrame.new(0, 1, 0)
- Player=game:GetService('Players').LocalPlayer
- Character=Player.Character
- mouse=Player:GetMouse()
- m=Instance.new('Model',Character)
- 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
- ArtificialHB = Instance.new("BindableEvent", script)
- ArtificialHB.Name = "Heartbeat"
- script:WaitForChild("Heartbeat")
- frame = 1 / 80
- tf = 0
- allowframeloss = false
- tossremainder = false
- lastframe = tick()
- script.Heartbeat:Fire()
- game:GetService("RunService").Heartbeat:connect(function(s, p)
- tf = tf + s
- if tf >= frame then
- if allowframeloss then
- script.Heartbeat:Fire()
- lastframe = tick()
- else
- for i = 1, math.floor(tf / frame) do
- script.Heartbeat:Fire()
- end
- lastframe = tick()
- end
- if tossremainder then
- tf = 0
- else
- tf = tf - frame * math.floor(tf / frame)
- end
- end
- end)
- --[[]
- function swait(num)
- if num == 0 or num == nil then
- ArtificialHB.Event:wait()
- else
- for i = 0, num do
- ArtificialHB.Event:wait()
- end
- end
- end
- ]]
- function swait(num)
- if num == 0 or num == nil then
- game:service("RunService").Stepped:wait()
- else
- for i = 0, num do
- game:service("RunService").Stepped:wait()
- end
- end
- end
- function RemoveOutlines(part)
- part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10
- end
- part = function(formfactor, parent, reflectance, transparency, brickcolor, name, size)
- local fp = it("Part")
- fp.formFactor = formfactor
- fp.Parent = parent
- fp.Reflectance = reflectance
- fp.Transparency = transparency
- fp.CanCollide = false
- fp.Locked = true
- fp.BrickColor = brickcolor
- fp.Name = name
- fp.Size = size
- fp.Position = Torso.Position
- NoOutline(fp)
- if fp.BrickColor == BrickColor.new("Dark indigo") then
- fp.Material = "Neon"
- else
- if fp.BrickColor == BrickColor.new("Really black") then
- fp.BrickColor = BrickColor.new("Really black")
- fp.Material = "Metal"
- else
- fp.Material = "Neon"
- end
- end
- fp:BreakJoints()
- return fp
- end
- mesh = function(Mesh, part, meshtype, meshid, offset, scale)
- local mesh = it(Mesh)
- mesh.Parent = part
- if Mesh == "SpecialMesh" then
- mesh.MeshType = meshtype
- if meshid ~= "nil" then
- mesh.MeshId = "http://www.roblox.com/asset/?id=" .. meshid
- end
- end
- mesh.Offset = offset
- mesh.Scale = scale
- return mesh
- end
- weld = function(parent, part0, part1, c0)
- local weld = it("Weld")
- weld.Parent = parent
- weld.Part0 = part0
- weld.Part1 = part1
- weld.C0 = c0
- return weld
- end
- F1 = Instance.new("Folder", Character)
- F1.Name = "Effects Folder"
- F2 = Instance.new("Folder", F1)
- F2.Name = "Effects"
- Triangle = function(a, b, c)
- end
- MagicBlock = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, Type, parent)
- local prt = part(3, workspace, 0, 0, brickcolor, "Effect", vt())
- prt.Anchored = true
- prt.CFrame = cframe
- msh = mesh("BlockMesh", prt, "", "", vt(0, 0, 0), vt(x1, y1, z1))
- game:GetService("Debris"):AddItem(prt, 10)
- if Type == 1 or Type == nil then
- table.insert(Effects, {prt, "Block1", delay, x3, y3, z3, msh})
- else
- if Type == 2 then
- table.insert(Effects, {prt, "Block2", delay, x3, y3, z3, msh})
- else
- if Type == 3 then
- table.insert(Effects, {prt, "Block3", delay, x3, y3, z3, msh, prt.CFrame * euler(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50)), 0})
- end
- end
- end
- end
- MagicSkull = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, goe)
- local prt = part(3, workspace, 0, 0, brickcolor, "Effect", vt())
- prt.Anchored = true
- prt.CFrame = cframe
- msh = mesh("SpecialMesh", prt, "FileMesh", "14028428", vt(0, 0, 0), vt(x1, y1, z1))
- game:GetService("Debris"):AddItem(prt, 10)
- table.insert(Effects, {prt, "Skull", delay, x3, y3, z3, msh, goe})
- end
- MagicCircle = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
- local prt = part(3, workspace, 0, 0, brickcolor, "Effect", vt())
- prt.Anchored = true
- prt.CFrame = cframe
- local msh = mesh("SpecialMesh", prt, "Sphere", "nil", vt(0, 0, 0), vt(x1, y1, z1))
- game:GetService("Debris"):AddItem(prt, 10)
- table.insert(Effects, {prt, "Cylinder", delay, x3, y3, z3, msh})
- end
- MagicRing = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
- local prt = part(3, workspace, 0, 0, brickcolor, "Effect", vt(0.5, 0.5, 0.5))
- prt.Anchored = true
- prt.CFrame = cframe * cf(x2, y2, z2)
- local msh = mesh("SpecialMesh", prt, "FileMesh", "3270017", vt(0, 0, 0), vt(x1, y1, z1))
- game:GetService("Debris"):AddItem(prt, 10)
- table.insert(Effects, {prt, "Cylinder", delay, x3, y3, z3, msh})
- end
- MagicCircle2 = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, push)
- local prt = part(3, workspace, 0, 0, brickcolor, "Effect", vt())
- prt.Anchored = true
- prt.CFrame = cframe
- local msh = mesh("SpecialMesh", prt, "Sphere", "nil", vt(0, 0, 0), vt(x1, y1, z1))
- game:GetService("Debris"):AddItem(prt, 10)
- table.insert(Effects, {prt, "Blood", delay, x3, y3, z3, msh, push})
- end
- MagicCylinder = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
- local prt = part(3, workspace, 0, 0, brickcolor, "Effect", vt())
- prt.Anchored = true
- prt.CFrame = cframe
- local msh = mesh("CylinderMesh", prt, "", "", vt(0, 0, 0), vt(x1, y1, z1))
- game:GetService("Debris"):AddItem(prt, 10)
- table.insert(Effects, {prt, "Cylinder", delay, x3, y3, z3, msh})
- end
- MagicCylinder2 = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, goe)
- local prt = part(3, workspace, 0, 0, brickcolor, "Effect", vt())
- prt.Anchored = true
- prt.CFrame = cframe
- local msh = mesh("CylinderMesh", prt, "", "", vt(0, 0, 0), vt(x1, y1, z1))
- game:GetService("Debris"):AddItem(prt, 10)
- table.insert(Effects, {prt, "Cylinder2", delay, x3, y3, z3, msh, goe})
- end
- MagicHead = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
- local prt = part(3, workspace, 0, 0, brickcolor, "Effect", vt())
- prt.Anchored = true
- prt.CFrame = cframe
- local msh = mesh("SpecialMesh", prt, "Head", "nil", vt(0, 0, 0), vt(x1, y1, z1))
- game:GetService("Debris"):AddItem(prt, 10)
- table.insert(Effects, {prt, "Cylinder", delay, x3, y3, z3, msh})
- end
- ClangEffect = function(brickcolor, cframe, duration, decrease, size, power)
- local prt = part(3, workspace, 0, 1, brickcolor, "Effect", vt())
- prt.Anchored = true
- prt.CFrame = cframe
- local msh = mesh("BlockMesh", prt, "", "", vt(0, 0, 0), vt(5, 5, 5))
- game:GetService("Debris"):AddItem(prt, 10)
- table.insert(Effects, {prt, "CylinderClang", duration, decrease, size, power, prt.CFrame, nil})
- end
- MagicWave = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
- local prt = part(3, workspace, 0, 0, brickcolor, "Effect", vt())
- prt.Anchored = true
- prt.CFrame = cframe
- local msh = mesh("SpecialMesh", prt, "FileMesh", "20329976", vt(0, 0, 0), vt(x1, y1, z1))
- game:GetService("Debris"):AddItem(prt, 10)
- table.insert(Effects, {prt, "Cylinder", delay, x3, y3, z3, msh})
- end
- MagicFire = function(brickcolor, cframe, x1, y1, z1, delay)
- local prt = part(3, workspace, 0, 0, brickcolor, "Effect", vt())
- prt.Anchored = true
- prt.CFrame = cframe
- msh = mesh("BlockMesh", prt, "", "", vt(0, 0, 0), vt(x1, y1, z1))
- game:GetService("Debris"):AddItem(prt, 10)
- table.insert(Effects, {prt, "Fire", delay, 1, 1, 1, msh})
- end
- MagicFireWave = function(brickcolor, cframe, x1, y1, z1)
- local prt = part(3, workspace, 0, 1, brickcolor, "Effect", vt())
- prt.Anchored = true
- prt.CFrame = cframe
- msh = mesh("BlockMesh", prt, "", "", vt(0, 0, 0), vt(x1, y1, z1))
- d = Instance.new("Decal")
- d.Parent = prt
- d.Texture = "http://www.roblox.com/asset/?id=26356434"
- d.Face = "Top"
- d = Instance.new("Decal")
- d.Parent = prt
- d.Texture = "http://www.roblox.com/asset/?id=26356434"
- d.Face = "Bottom"
- game:GetService("Debris"):AddItem(prt, 10)
- table.insert(Effects, {prt, "FireWave", 1, 30, math.random(400, 600) / 100, msh})
- end
- ElecEffect = function(cff, x, y, z)
- local prt = part(3, workspace, 0, 0, BrickColor.new("White"), "Part", vt(1, 1, 1))
- prt.Anchored = true
- prt.CFrame = cff * cf(math.random(-x, x), math.random(-y, y), math.random(-z, z))
- prt.CFrame = cf(prt.Position)
- game:GetService("Debris"):AddItem(prt, 10)
- xval = math.random() / 3
- yval = math.random() / 3
- zval = math.random() / 3
- msh = mesh("BlockMesh", prt, "", "", vt(0, 0, 0), vt(xval, yval, zval))
- Effects[#Effects + 1] = {prt, "Elec", 0.2, x, y, z, xval, yval, zval, msh}
- end
- function FindNearestTorso(Position, Distance, SinglePlayer)
- if SinglePlayer then
- return (SinglePlayer.Torso.CFrame.p - Position).magnitude Distance
- end
- local List = {}
- for i, v in pairs(workspace:GetChildren()) do
- if v:IsA("Model") then
- if v:findFirstChild("Torso") then
- if v ~= Character then
- if (v.Torso.Position - Position).magnitude = Distance then
- table.insert(List, v)
- end
- end
- end
- end
- end
- return List
- end
- function CreatePart(Parent, Material, Reflectance, Transparency, BColor, Name, Size)
- local Part = Create("Part"){
- Parent = Parent,
- Reflectance = Reflectance,
- Transparency = Transparency,
- CanCollide = false,
- Locked = true,
- BrickColor = BrickColor.new(tostring(BColor)),
- Name = Name,
- Size = Size,
- Material = Material,
- }
- RemoveOutlines(Part)
- return Part
- end
- function CreateMesh(Mesh, Part, MeshType, MeshId, OffSet, Scale)
- local Msh = Create(Mesh){
- Parent = Part,
- Offset = OffSet,
- Scale = Scale,
- }
- if Mesh == "SpecialMesh" then
- Msh.MeshType = MeshType
- Msh.MeshId = MeshId
- end
- return Msh
- end
- function BlockEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, Type)
- local prt = CreatePart(workspace, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
- prt.Anchored = true
- prt.CFrame = cframe
- local msh = CreateMesh("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
- game:GetService("Debris"):AddItem(prt, 10)
- if Type == 1 or Type == nil then
- table.insert(Effects, {
- prt,
- "Block1",
- delay,
- x3,
- y3,
- z3,
- msh
- })
- elseif Type == 2 then
- table.insert(Effects, {
- prt,
- "Block2",
- delay,
- x3,
- y3,
- z3,
- msh
- })
- end
- end
- function SphereEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
- local prt = CreatePart(workspace, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
- prt.Anchored = true
- prt.CFrame = cframe
- local msh = CreateMesh("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
- game:GetService("Debris"):AddItem(prt, 10)
- table.insert(Effects, {
- prt,
- "Cylinder",
- delay,
- x3,
- y3,
- z3,
- msh
- })
- end
- function RingEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
- local prt=CreatePart(workspace,"Neon",0,0,brickcolor,"Effect",vt(.5,.5,.5))--part(3,workspace,"SmoothPlastic",0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.CFrame=cframe
- msh=CreateMesh("SpecialMesh",prt,"FileMesh","http://www.roblox.com/asset/?id=3270017",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,2)
- coroutine.resume(coroutine.create(function(Part,Mesh,num)
- for i=0,1,delay do
- swait()
- Part.Transparency=i
- Mesh.Scale=Mesh.Scale+vt(x3,y3,z3)
- end
- Part.Parent=nil
- end),prt,msh,(math.random(0,1)+math.random())/5)
- end
- function CylinderEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
- local prt = CreatePart(workspace, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
- prt.Anchored = true
- prt.CFrame = cframe
- local msh = CreateMesh("CylinderMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
- game:GetService("Debris"):AddItem(prt, 10)
- table.insert(Effects, {
- prt,
- "Cylinder",
- delay,
- x3,
- y3,
- z3,
- msh
- })
- end
- function WaveEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
- local prt = CreatePart(workspace, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
- prt.Anchored = true
- prt.CFrame = cframe
- local msh = CreateMesh("SpecialMesh", prt, "FileMesh", "rbxassetid://20329976", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
- game:GetService("Debris"):AddItem(prt, 10)
- table.insert(Effects, {
- prt,
- "Cylinder",
- delay,
- x3,
- y3,
- z3,
- msh
- })
- end
- function SpecialEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
- local prt = CreatePart(workspace, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
- prt.Anchored = true
- prt.CFrame = cframe
- local msh = CreateMesh("SpecialMesh", prt, "FileMesh", "rbxassetid://24388358", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
- game:GetService("Debris"):AddItem(prt, 10)
- table.insert(Effects, {
- prt,
- "Cylinder",
- delay,
- x3,
- y3,
- z3,
- msh
- })
- end
- function MoonEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
- local prt = CreatePart(workspace, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
- prt.Anchored = true
- prt.CFrame = cframe
- local msh = CreateMesh("SpecialMesh", prt, "FileMesh", "rbxassetid://259403370", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
- game:GetService("Debris"):AddItem(prt, 10)
- table.insert(Effects, {
- prt,
- "Cylinder",
- delay,
- x3,
- y3,
- z3,
- msh
- })
- end
- function HeadEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
- local prt = CreatePart(workspace, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
- prt.Anchored = true
- prt.CFrame = cframe
- local msh = CreateMesh("SpecialMesh", prt, "Head", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
- game:GetService("Debris"):AddItem(prt, 10)
- table.insert(Effects, {
- prt,
- "Cylinder",
- delay,
- x3,
- y3,
- z3,
- msh
- })
- end
- function BreakEffect(brickcolor, cframe, x1, y1, z1)
- local prt = CreatePart(workspace, "Neon", 0, 0, brickcolor, "Effect", Vector3.new(0.5, 0.5, 0.5))
- prt.Anchored = true
- prt.CFrame = cframe * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
- local msh = CreateMesh("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
- local num = math.random(10, 50) / 1000
- game:GetService("Debris"):AddItem(prt, 10)
- table.insert(Effects, {
- prt,
- "Shatter",
- num,
- prt.CFrame,
- math.random() - math.random(),
- 0,
- math.random(50, 100) / 100
- })
- end
- function FindNearestHead(Position, Distance, SinglePlayer)
- if SinglePlayer then
- return Distance > (SinglePlayer.Torso.CFrame.p - Position).magnitude
- end
- local List = {}
- for i, v in pairs(workspace:GetChildren()) do
- if v:IsA("Model") and v:findFirstChild("Head") and v ~= Character and Distance >= (v.Head.Position - Position).magnitude then
- table.insert(List, v)
- end
- end
- return List
- end
- function clerp(a,b,t)
- local qa = {QuaternionFromCFrame(a)}
- local qb = {QuaternionFromCFrame(b)}
- local ax, ay, az = a.x, a.y, a.z
- local bx, by, bz = b.x, b.y, b.z
- local _t = 1-t
- return QuaternionToCFrame(_t*ax + t*bx, _t*ay + t*by, _t*az + t*bz,QuaternionSlerp(qa, qb, t))
- end
- function QuaternionFromCFrame(cf)
- local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
- local trace = m00 + m11 + m22
- if trace > 0 then
- local s = math.sqrt(1 + trace)
- local recip = 0.5/s
- return (m21-m12)*recip, (m02-m20)*recip, (m10-m01)*recip, s*0.5
- else
- local i = 0
- if m11 > m00 then
- i = 1
- end
- if m22 > (i == 0 and m00 or m11) then
- i = 2
- end
- if i == 0 then
- local s = math.sqrt(m00-m11-m22+1)
- local recip = 0.5/s
- return 0.5*s, (m10+m01)*recip, (m20+m02)*recip, (m21-m12)*recip
- elseif i == 1 then
- local s = math.sqrt(m11-m22-m00+1)
- local recip = 0.5/s
- return (m01+m10)*recip, 0.5*s, (m21+m12)*recip, (m02-m20)*recip
- elseif i == 2 then
- local s = math.sqrt(m22-m00-m11+1)
- local recip = 0.5/s return (m02+m20)*recip, (m12+m21)*recip, 0.5*s, (m10-m01)*recip
- end
- end
- end
- local lerp = function(a, b, t)
- return a * (1 - t) + b * t
- end
- function QuaternionToCFrame(px, py, pz, x, y, z, w)
- local xs, ys, zs = x + x, y + y, z + z
- local wx, wy, wz = w*xs, w*ys, w*zs
- local xx = x*xs
- local xy = x*ys
- local xz = x*zs
- local yy = y*ys
- local yz = y*zs
- local zz = z*zs
- return CFrame.new(px, py, pz,1-(yy+zz), xy - wz, xz + wy,xy + wz, 1-(xx+zz), yz - wx, xz - wy, yz + wx, 1-(xx+yy))
- end
- function QuaternionSlerp(a, b, t)
- local cosTheta = a[1]*b[1] + a[2]*b[2] + a[3]*b[3] + a[4]*b[4]
- local startInterp, finishInterp;
- if cosTheta >= 0.0001 then
- if (1 - cosTheta) > 0.0001 then
- local theta = math.acos(cosTheta)
- local invSinTheta = 1/math.sin(theta)
- startInterp = math.sin((1-t)*theta)*invSinTheta
- finishInterp = math.sin(t*theta)*invSinTheta
- else
- startInterp = 1-t
- finishInterp = t
- end
- else
- if (1+cosTheta) > 0.0001 then
- local theta = math.acos(-cosTheta)
- local invSinTheta = 1/math.sin(theta)
- startInterp = math.sin((t-1)*theta)*invSinTheta
- finishInterp = math.sin(t*theta)*invSinTheta
- else
- startInterp = t-1
- finishInterp = t
- end
- end
- return a[1]*startInterp + b[1]*finishInterp, a[2]*startInterp + b[2]*finishInterp, a[3]*startInterp + b[3]*finishInterp, a[4]*startInterp + b[4]*finishInterp
- end
- function weld5(part0, part1, c0, c1)
- weeld=Instance.new("Weld", part0)
- weeld.Part0=part0
- weeld.Part1=part1
- weeld.C0=c0
- weeld.C1=c1
- return weeld
- end
- --Example: Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.4)
- function rayCast(Pos, Dir, Max, Ignore) -- Origin Position , Direction, MaxDistance , IgnoreDescendants
- return game:service("Workspace"):FindPartOnRay(Ray.new(Pos, Dir.unit * (Max or 999.999)), Ignore)
- end
- function Bullets(thinggy,place,size,color,velocity,damage,bounce,collide,rotation)
- swait()
- local Bullet = Instance.new("Part",Workspace)
- Bullet.Locked = true
- Bullet.Name = "Bullet"
- Bullet.Anchored = bounce
- Bullet.CanCollide = collide
- Bullet.Transparency = 0.24
- Bullet.Reflectance = 0
- Bullet.BottomSurface = 0
- Bullet.TopSurface = 0
- Bullet.Shape = 0
- Bullet.BrickColor = BrickColor.new(color)
- Bullet.Size = Vector3.new(size,size,size)
- Bullet.Material = "Neon"
- Bullet.Orientation = vt(-90,0,0)
- local Bulletthing = Instance.new("SpecialMesh",Bullet)
- Bulletthing.MeshType = "Sphere"
- local Bulletforce = Instance.new("BodyForce")
- Bulletforce.force = Vector3.new(0,Bullet:GetMass()*166.2,0)
- Bulletforce.Parent = Bullet
- Bullet.CFrame = thinggy.CFrame*CFrame.new(math.random(-place,place),math.random(-place,place),math.random(-place,place))
- local bv = Instance.new("BodyVelocity",Bullet)
- bv.maxForce = Vector3.new(math.huge,math.huge,math.huge)
- Bullet.CFrame = CFrame.new(Bullet.Position,mouse.Hit.p)
- bv.velocity = Bullet.CFrame.lookVector*velocity
- Bullet.Touched:connect(function(hit)
- if (hit.Parent.Parent ~= Character and hit.Parent ~= Character and hit.Name ~= "prt" and hit.Name ~= "Effect" and hit.Name ~= "orb" and Bullet.Anchored == false) then
- local orbexplode = Instance.new("Sound", Bullet)
- orbexplode.Volume = 4
- orbexplode.PlayOnRemove = true
- orbexplode.SoundId = "http://roblox.com/asset/?id=142070127"
- orbexplode.Pitch = 1
- orbexplode:Destroy()
- deb:AddItem(orbexplode, 4)
- Bullet.Anchored = true
- Bullet.Transparency = 1
- deb:AddItem(Bullet, 4)
- local Explode = Instance.new("Explosion")
- Explode.Position = Bullet.Position
- Explode.Parent = Workspace
- Explode.BlastPressure = 0
- Explode.BlastRadius = Bullet.Size.X *5.6
- Explode.Visible = false
- Explode.Hit:connect(function(hit)
- if hit.Parent:FindFirstChildOfClass("Humanoid")~=nil and hit.Parent ~= Character then
- if hit.Parent:FindFirstChildOfClass("Humanoid").MaxHealth > 500 then
- hit.Parent:FindFirstChildOfClass("Humanoid").MaxHealth = 100
- hit.Parent:FindFirstChildOfClass("Humanoid").Health = 100
- end
- if attackdebounce == false then
- attackdebounce = true
- hit.Parent:FindFirstChildOfClass("Humanoid"):TakeDamage(math.random(damage/2,damage))
- wait(0.02)
- attackdebounce = false
- end
- end
- end)
- coroutine.resume(coroutine.create(function()
- MagicCircle(BrickColor.new("Royal purple"), cf(Bullet.Position), 10, 10, 10, 50, 50, 50, 0.065)
- MagicCircle(BrickColor.new("Royal purple"), cf(Bullet.Position), 0, 1, 0, 15, 0, 15, 0.025)
- MagicRing(BrickColor.new("Royal purple"), cf(Bullet.Position) * euler(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50)), 0, 0, 4, 4, 4, 0, 0.025)
- MagicRing(BrickColor.new("Royal purple"), cf(Bullet.Position) * euler(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50)), 0, 0, 0.5, -1, -1, 0, 0.025)
- end))
- end
- end)
- coroutine.resume(coroutine.create(function()
- for i = 0,16,0.1 do
- swait()
- end
- if Bullet.Anchored == false then
- Bullet:Destroy()
- end
- end))
- end
- local bl = Instance.new("BlurEffect",cam)
- bl.Size = 0
- function Dash()
- evadecooldown = true
- attack = true
- so("http://www.roblox.com/asset/?id=231917788", Torso, 1, 1)
- so("http://www.roblox.com/asset/?id=231917788", Torso, 1, 1)
- bl.Size = 84
- MagicCircle(BrickColor.new("White"), cf(RootPart.Position), 800, 5, 800, 0, 0, 0, 0.05)
- MagicCircle(BrickColor.new("Royal purple"), cf(RootPart.Position), 800, 10, 800, -40, 0, -40, 0.025)
- MagicCircle(BrickColor.new("White"), cf(RootPart.Position), 800, 10, 800, -42, 1000, -42, 0.05)
- MagicCircle(BrickColor.new("Royal purple"), cf(RootPart.Position), 1000, 10, 1000, -62, 1200, -62, 0.05)
- RootPart.CFrame = RootPart.CFrame*CFrame.new(0,0,-96)
- RootPart.Velocity = RootPart.CFrame.lookVector *280
- for i, v in pairs(FindNearestHead(Torso.CFrame.p, 52.5)) do
- if v:FindFirstChild("Torso") and v:FindFirstChild("Humanoid") then
- so("http://www.roblox.com/asset/?id=138186576", v.Torso, 10, 1)
- v:FindFirstChild("Humanoid"):TakeDamage(math.random(18,36))
- SphereEffect(BrickColor.new("Royal purple"), cf(v.Torso.Position) , 1, 1, 1, 6.8, 6.8, 6.8, 0.04)
- MagicBlock(BrickColor.new("White"), cf(v.Torso.Position), 2000, 2000, 2000, -100, -100, -100, 0.05, 1)
- MagicBlock(BrickColor.new("Royal purple"), cf(v.Torso.Position), 2500, 2500, 2500, -150, -150, -150, 0.05, 1)
- MagicBlock(BrickColor.new("White"), cf(v.Torso.Position), 3000, 3000, 3000, -200, -200, -200, 0.05, 1)
- MagicCircle(BrickColor.new("Royal purple"), cf(v.Torso.Position), 800, 2, 800, 150, 2, 150, 0.05)
- MagicCircle(BrickColor.new("White"), cf(v.Torso.Position), 800, 2, 800, 100, 4, 100, 0.05)
- MagicCircle(BrickColor.new("Royal purple"), cf(v.Torso.Position), 800, 2, 800, 50, 6, 50, 0.05)
- MagicCircle(BrickColor.new("White"), cf(v.Torso.Position), 0, 0, 0, 100, 100, 100, 0.05)
- MagicCircle(BrickColor.new("Royal purple"), cf(v.Torso.Position), 0, 0, 0, 200, 200, 200, 0.05)
- MagicCircle(BrickColor.new("White"), cf(v.Torso.Position), 0, 0, 0, 300, 300, 300, 0.05)
- MagicCircle(BrickColor.new("Royal purple"), cf(v.Torso.Position), 0, 0, 0, 400, 400, 400, 0.05)
- MagicCircle(BrickColor.new("White"), cf(v.Torso.Position), 800, 2, 800, 4, 350, 4, 0.005)
- MagicCircle(BrickColor.new("Royal purple"), cf(v.Torso.Position), 600, 2, 600, 4, 300, 4, 0.005)
- MagicCircle(BrickColor.new("White"), cf(v.Torso.Position), 400, 2, 400, 4, 250, 4, 0.005)
- end
- end
- for i = 0,1,0.064 do
- swait()
- cam.FieldOfView = lerp(cam.FieldOfView, 110, 0.5)
- Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,12),0.24)
- RootPart.Velocity = RootPart.CFrame.lookVector * 175
- bl.Size = bl.Size - 8.5
- SphereEffect(BrickColor.new("Royal purple"),RootPart.CFrame*angles(math.random(-50,50),math.random(-50,50),math.random(-50,50)),1,5,1,5.5,10,5.5,0.03)
- Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, -12) * CFrame.Angles(math.rad(-40), math.rad(0), math.rad(0)), 0.4)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(-30),math.rad(0),math.rad(0)),.4)
- RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(-20), math.rad(0), math.rad(30)),.4)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-20), math.rad(0), math.rad(-30)),.4)
- LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1, -0.4) * CFrame.Angles(math.rad(-40), math.rad(0), math.rad(0)), 0.8)
- RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -0.7, -0.7) * CFrame.Angles(math.rad(-60), math.rad(0), math.rad(0)), 0.8)
- end
- attack = false
- attackdebounce = false
- Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,0),0.1)
- wait(.2)
- bl.Size = 0
- evadecooldown = false
- end
- local shooting = false
- function shoot()
- attack = true
- shooting = true
- local thing = Instance.new("BodyGyro",RootPart)
- thing.D = 50
- thing.P = 6000
- thing.MaxTorque = vt(100000,math.huge,0)
- thing.CFrame = CFrame.new(RootPart.Position,mouse.Hit.p)
- for i = 0,2,0.16 do
- swait()
- Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0), math.rad(90), math.rad(0)), 0.2)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(0),math.rad(0),math.rad(-80)),.2)
- RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(90), math.rad(0), math.rad(90)),.2)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-20), math.rad(0), math.rad(-30)),.2)
- LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.73, -1.0, 0) * CFrame.Angles(math.rad(-25), math.rad(-66), math.rad(-25)), 0.1)
- RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.6, -1.0, 0) * CFrame.Angles(math.rad(0), math.rad(-83), math.rad(0)), 0.1)
- end
- while shooting == true do
- swait(1)
- RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(90), math.rad(0), math.rad(90)),.2)
- so("http://roblox.com/asset/?id=200633327",Torso,2,1)
- thing.CFrame = CFrame.new(RootPart.Position,mouse.Hit.p)
- Torso.Velocity = RootPart.CFrame.lookVector * -13
- Bullets(RightArm,0,1.5,"Royal purple",700,25.5,false,false)
- RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(80), math.rad(40), math.rad(80)),.2)
- coroutine.resume(coroutine.create(function()
- for i = 0, 0.5, 0.1 do
- swait()
- Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(math.random(-0.55*1.8,0.55*1.8),math.random(-0.55*1.8,0.55*1.8),math.random(-0.55*1.8,0.55*1.8)),0.24)
- end
- end))
- end
- attack = false
- thing:Destroy()
- end
- function dshoot()
- attack = true
- shooting = true
- local thing = Instance.new("BodyGyro",RootPart)
- thing.D = 50
- thing.P = 6000
- thing.MaxTorque = vt(100000,math.huge,0)
- thing.CFrame = CFrame.new(RootPart.Position,mouse.Hit.p)
- so("http://roblox.com/asset/?id=1268159756",Torso,5,1)
- for i = 0,3,0.16 do
- swait()
- MagicRing(BrickColor.new("Royal purple"), RootPart.CFrame*CFrame.new(0,0,-8), 9, 9, 1, -0.7, -0.7, 0, 0.07)
- MagicCircle(BrickColor.new("Royal purple"), RootPart.CFrame*CFrame.new(0,0,-8), 9, 9, 9, -0.7, -0.7, -0.7, 0.07)
- Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.2)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(0),math.rad(0),math.rad(0)),.2)
- RW.C0 = clerp(RW.C0, CFrame.new(1.3, 0.5, -0.4) * angles(math.rad(90), math.rad(0), math.rad(-20)),.2)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.3, 0.5, -0.4) * angles(math.rad(90), math.rad(0), math.rad(20)),.2)
- LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1.0, 0) * CFrame.Angles(math.rad(25), math.rad(0), math.rad(-25)), 0.1)
- RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1.0, 0) * CFrame.Angles(math.rad(25), math.rad(0), math.rad(25)), 0.1)
- end
- while shooting == true do
- swait(0.5)
- coroutine.resume(coroutine.create(function()
- MagicRing(BrickColor.new("Royal purple"), RootPart.CFrame*CFrame.new(0,0,-8), 3, 3, 1, 10.2, 10.2, 0, 0.07)
- end))
- LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1.0, 0) * CFrame.Angles(math.rad(25), math.rad(0), math.rad(-25)), 0.3)
- RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1.0, 0) * CFrame.Angles(math.rad(25), math.rad(0), math.rad(25)), 0.3)
- so("http://roblox.com/asset/?id=200633327",Torso,2,1)
- thing.CFrame = CFrame.new(RootPart.Position,mouse.Hit.p)
- Torso.Velocity = RootPart.CFrame.lookVector * -63
- Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0), math.rad(-30), math.rad(0)), 0.4)
- Bullets(RightArm,0,2.5,"Royal purple",1200,45.5,false,false)
- coroutine.resume(coroutine.create(function()
- for i = 0, 0.5, 0.1 do
- swait()
- Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(math.random(-0.55*4.8,0.55*4.8),math.random(-0.55*4.8,0.55*4.8),math.random(-0.55*4.8,0.55*4.8)),0.44)
- end
- end))
- Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0), math.rad(30), math.rad(0)), 0.2)
- Bullets(LeftArm,0,2.5,"Royal purple",1200,45.5,false,false)
- coroutine.resume(coroutine.create(function()
- for i = 0, 0.5, 0.1 do
- swait()
- Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(math.random(-0.55*1.8,0.55*1.8),math.random(-0.55*1.8,0.55*1.8),math.random(-0.55*1.8,0.55*1.8)),0.24)
- end
- end))
- end
- attack = false
- thing:Destroy()
- end
- function finaldev()
- attack = true
- so("http://roblox.com/asset/?id=815032096",Head,6,0.84)
- so("http://roblox.com/asset/?id=200633529",Workspace,3,0.84)
- for i = 0,14,0.1 do
- swait()
- WaveEffect(BrickColor.new("White"), RootPart.CFrame*CFrame.new(0,-1,0)*angles(0,math.rad(0+90*i),0) , 1, 1, 1, 7, 0.8, 7, 0.09)
- WaveEffect(BrickColor.new("Royal purple"), RootPart.CFrame*CFrame.new(0,-1,0)*angles(0,math.rad(0-90*i),0) , 1, 1, 1, 5, 0.8, 5, 0.05)
- Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(math.random(-0.25*2.8,0.25*2.8),math.random(-0.25*2.8,0.25*2.8),math.random(-0.25*2.8,0.25*2.8)),0.16)
- Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -2, 0) * CFrame.Angles(math.rad(-16), math.rad(0), math.rad(0)), 0.15)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(14),math.rad(0),math.rad(0)),.15)
- RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(87)),.15)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, -0) * angles(math.rad(0), math.rad(0), math.rad(-87)),.15)
- LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, 0, -0.5) * CFrame.Angles(math.rad(16), math.rad(0), math.rad(0)), 0.15)
- RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1.14, 0.2) * CFrame.Angles(math.rad(-17), math.rad(0), math.rad(0)), 0.15)
- end
- so("http://roblox.com/asset/?id=197161452",Torso,7,1)
- for i = 0,6,0.1 do
- swait()
- WaveEffect(BrickColor.new("White"), RootPart.CFrame*CFrame.new(0,-1,0)*angles(0,math.rad(0+90*i),0) , 1, 1, 1, 7, 0.8, 7, 0.09)
- WaveEffect(BrickColor.new("Royal purple"), RootPart.CFrame*CFrame.new(0,-1,0)*angles(0,math.rad(0-90*i),0) , 1, 1, 1, 5, 0.8, 5, 0.05)
- Head.Velocity = Vector3.new(0,320,0)
- Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0+260*i), math.rad(0), math.rad(0)), 0.6)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(70),math.rad(0),math.rad(0)),.1)
- RW.C0 = clerp(RW.C0, CFrame.new(.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(-90)), 0.1)
- LW.C0 = clerp(LW.C0, CFrame.new(-.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(90)), 0.1)
- LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
- RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
- end
- local bel = part(3, Character, 0, 1, BrickColor.new("Royal purple"), "Ball", vt(0.126,0.126,0.126))
- local belmsh = mesh("SpecialMesh", bel, "Sphere", "nil", vt(0, 0, 0), vt(10, 10, 10))
- local Charge = Instance.new("Sound", bel)
- Charge.Volume = 10
- Charge.SoundId = "http://roblox.com/asset/?id=244578827"
- Charge.Pitch = 0.8
- Charge.PlayOnRemove = true
- Charge:Play()
- Charge:Destroy()
- bel.Anchored = true
- for i = 0,47,0.1 do
- swait()
- bel.CFrame = RootPart.CFrame * cf(0, 90*i/3.5, 0)
- bel.Transparency = bel.Transparency - 0.0034
- belmsh.Scale = belmsh.Scale + Vector3.new(24,24,24)
- Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0+1*i,0+1*i),0.15)
- cam.FieldOfView = lerp(cam.FieldOfView, 40+1*i, 0.15)
- Head.Velocity = Vector3.new(0,2.4+0.8*i,0)
- Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(35), math.rad(0), math.rad(0)), 0.2)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(-13),math.rad(0),math.rad(0)),.2)
- RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.7, 0) * angles(math.rad(0), math.rad(0), math.rad(140)),.2)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.7, 0) * angles(math.rad(0), math.rad(0), math.rad(-140)),.2)
- LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1.0, 0) * CFrame.Angles(math.rad(-45), math.rad(34), math.rad(-25)), 0.1)
- RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1.0, 0) * CFrame.Angles(math.rad(-45), math.rad(-34), math.rad(25)), 0.1)
- end
- so("http://roblox.com/asset/?id=160212892",Head,10,0.84)
- for i = 0,4,0.1 do
- swait()
- Head.Velocity = Vector3.new(0,2.4,0)
- Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,0),0.15)
- Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(35), math.rad(0), math.rad(0)), 0.2)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(13),math.rad(0),math.rad(0)),.2)
- RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.7, 0) * angles(math.rad(0), math.rad(0), math.rad(140)),.2)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.7, 0) * angles(math.rad(0), math.rad(0), math.rad(-140)),.2)
- LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1.0, 0) * CFrame.Angles(math.rad(-45), math.rad(34), math.rad(-25)), 0.1)
- RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1.0, 0) * CFrame.Angles(math.rad(-45), math.rad(-34), math.rad(25)), 0.1)
- end
- bel.Anchored = false
- local bv = Instance.new("BodyVelocity",bel)
- bv.maxForce = Vector3.new(math.huge,math.huge,math.huge)
- bel.CFrame = CFrame.new(bel.Position,mouse.Hit.p)
- bv.velocity = bel.CFrame.lookVector*350
- --[[
- bel.Touched:connect(function(hit)
- if hit.Parent.Parent ~= Character and hit.Parent ~= Character and hit.Name ~= "prt" and hit.Name ~= "Effect" and hit.Name ~= "orb" and Bullet.Anchored == false then
- local orbexplode = Instance.new("Sound", bel)
- orbexplode.Volume = 10
- orbexplode.PlayOnRemove = true
- orbexplode.SoundId = "http://roblox.com/asset/?id=142070127"
- orbexplode.Pitch = 1
- orbexplode:Destroy()
- deb:AddItem(orbexplode, 4)
- bel.Anchored = true
- bel.Transparency = 1
- deb:AddItem(bel, 4)
- local Explode = Instance.new("Explosion")
- Explode.Position = bel.Position
- Explode.Parent = Workspace
- Explode.BlastPressure = 90
- Explode.BlastRadius = Bullet.Size.X *25.6
- Explode.Visible = false
- coroutine.resume(coroutine.create(function()
- MagicBlock(BrickColor.new("White"), cf(bel.Position), 2000, 2000, 2000, -100, -100, -100, 0.05, 1)
- MagicBlock(BrickColor.new("Royal purple"), cf(bel.Position), 2500, 2500, 2500, -150, -150, -150, 0.05, 1)
- MagicBlock(BrickColor.new("White"), cf(bel.Position), 3000, 3000, 3000, -200, -200, -200, 0.05, 1)
- MagicCircle(BrickColor.new("Royal purple"), cf(bel.Position), 1800, 2, 1800, 1150, 2, 1150, 0.05)
- MagicCircle(BrickColor.new("White"), cf(bel.Position), 1800, 2, 1800, 1100, 4, 1100, 0.05)
- MagicCircle(BrickColor.new("Royal purple"), cf(bel.Position), 1800, 2, 1800, 150, 16, 150, 0.05)
- MagicCircle(BrickColor.new("White"), cf(bel.Position), 0, 0, 0, 1100, 4100, 1100, 0.05)
- MagicCircle(BrickColor.new("Royal purple"), cf(bel.Position), 0, 0, 0, 1200, 1200, 1200, 0.05)
- MagicCircle(BrickColor.new("White"), cf(bel.Position), 0, 0, 0, 1300, 1300,1300, 0.05)
- MagicCircle(BrickColor.new("Royal purple"), cf(bel.Position), 0, 0, 0, 1400, 1400, 1400, 0.05)
- MagicCircle(BrickColor.new("White"), cf(bel.Position), 4800, 2, 1800, 4, 1350, 4, 0.005)
- MagicCircle(BrickColor.new("Royal purple"), cf(bel.Position), 1600, 2, 1600, 4, 1300, 4, 0.005)
- MagicCircle(BrickColor.new("White"), cf(bel.Position), 1400, 2, 1400, 4, 1250, 4, 0.005)
- MagicCircle(BrickColor.new("Royal purple"), cf(bel.Position), 10, 10, 10, 50, 50, 50, 0.065)
- MagicCircle(BrickColor.new("Royal purple"), cf(bel.Position), 0, 1, 0, 15, 0, 15, 0.025)
- MagicRing(BrickColor.new("Royal purple"), cf(bel.Position) * euler(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50)), 0, 0, 4, 4, 4, 0, 0.025)
- MagicRing(BrickColor.new("Royal purple"), cf(bel.Position) * euler(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50)), 0, 0, 0.5, -1, -1, 0, 0.025)
- end))
- end
- end)
- ]]
- con5=bel.Touched:connect(function(hit)
- local orbexplode = Instance.new("Sound", bel)
- orbexplode.Volume = 10
- orbexplode.PlayOnRemove = true
- orbexplode.SoundId = "http://roblox.com/asset/?id=167115397"
- orbexplode.Pitch = 1
- orbexplode:Destroy()
- deb:AddItem(orbexplode, 4)
- bel.Anchored = true
- bel.Transparency = 1
- deb:AddItem(bel, 5.2)
- coroutine.resume(coroutine.create(function()
- so("http://www.roblox.com/asset/?id=167115397", Workspace, 6, 1)
- so("http://www.roblox.com/asset/?id=138186576", Workspace, 6, 1)
- for i = 0, 0.4, 0.1 do
- swait()
- for i, v in pairs(FindNearestHead(bel.CFrame.p, 252.5)) do
- if v:FindFirstChild("Torso") and v:FindFirstChild("Humanoid") then
- if v:FindFirstChildOfClass("Humanoid").MaxHealth > 500 then
- v:FindFirstChildOfClass("Humanoid").MaxHealth = 100
- v:FindFirstChildOfClass("Humanoid").Health = 100
- end
- v.Humanoid:TakeDamage(math.random(43,86))
- coroutine.resume(coroutine.create(function()
- for i = 0,2,0.1 do
- swait()
- v.Head.Velocity = -v.Head.CFrame.lookVector*660 + Vector3.new(0,684,0)
- end
- end))
- end
- end
- coroutine.resume(coroutine.create(function()
- for i = 0, 2.4, 0.1 do
- swait()
- Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(math.random(-0.55*4.8,0.55*4.8),math.random(-0.55*4.8,0.55*4.8),math.random(-0.55*4.8,0.55*4.8)),0.44)
- end
- end))
- MagicBlock(BrickColor.new("White"), cf(bel.Position), 2000, 2000, 2000, -100, -100, -100, 0.05, 1)
- MagicBlock(BrickColor.new("Royal purple"), cf(bel.Position), 2500, 2500, 2500, -150, -150, -150, 0.05, 1)
- MagicBlock(BrickColor.new("White"), cf(bel.Position), 3000, 3000, 3000, -200, -200, -200, 0.05, 1)
- MagicCircle(BrickColor.new("Royal purple"), cf(bel.Position), 1800,222, 1800, 1150, 222, 1150, 0.05)
- MagicCircle(BrickColor.new("White"), cf(bel.Position), 1800, 222, 1800, 1100, 224, 1100, 0.05)
- MagicCircle(BrickColor.new("Royal purple"), cf(bel.Position), 1800, 222, 1800, 150, 216, 150, 0.05)
- MagicCircle(BrickColor.new("White"), cf(bel.Position), 0, 0, 0, 1100, 4100, 1100, 0.05)
- MagicCircle(BrickColor.new("Royal purple"), cf(bel.Position), 0, 0, 0, 1200, 1200, 1200, 0.05)
- MagicCircle(BrickColor.new("White"), cf(bel.Position), 0, 0, 0, 1300, 1300,1300, 0.05)
- MagicCircle(BrickColor.new("Royal purple"), cf(bel.Position), 0, 0, 0, 1400, 1400, 1400, 0.05)
- MagicCircle(BrickColor.new("White"), cf(bel.Position), 4800, 222, 1800, 224, 1350, 224, 0.005)
- MagicCircle(BrickColor.new("Royal purple"), cf(bel.Position), 1600, 222, 1600, 224, 1300, 224, 0.005)
- MagicCircle(BrickColor.new("White"), cf(bel.Position), 1400, 222, 1400, 224, 1250, 224, 0.005)
- WaveEffect(BrickColor.new("White"), cf(bel.Position)*angles(0,math.rad(0+90*i),0) , 1, 1, 1, 24, 5.4, 24, 0.09)
- WaveEffect(BrickColor.new("Royal purple"), cf(bel.Position)*angles(0,math.rad(0-90*i),0) , 1, 1, 1, 22, 4.8, 22, 0.05)
- MagicCircle(BrickColor.new("Royal purple"), cf(bel.Position), 10, 10, 10, 50, 50, 50, 0.065)
- MagicCircle(BrickColor.new("Royal purple"), cf(bel.Position), 0, 1, 0, 15, 0, 15, 0.025)
- MagicRing(BrickColor.new("White"), cf(bel.Position) * euler(math.random(-360, 360), math.random(-360, 360), math.random(-360, 360)), 24, 24, 1, 12, 12, 0, 0.015)
- MagicRing(BrickColor.new("Royal purple"), cf(bel.Position) * euler(math.random(-360, 360), math.random(-360, 360), math.random(-360, 360)), 24, 24, 1, 12, 12, 0, 0.015)
- MagicRing(BrickColor.new("White"), cf(bel.Position) * euler(math.random(-360, 360), math.random(-360, 360), math.random(-360, 360)), 24, 24, 1, 8, 8, 0, 0.015)
- MagicRing(BrickColor.new("Royal purple"), cf(bel.Position) * euler(math.random(-360, 360), math.random(-360, 360), math.random(-360, 360)), 24, 24, 1, 12, 12, 0, 0.015)
- end
- end))
- end)
- for i = 0,32,0.1 do
- swait()
- Head.Velocity = Vector3.new(0,2.4,0)
- Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(-35), math.rad(0), math.rad(0)), 0.2)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(43),math.rad(0),math.rad(0)),.2)
- RW.C0 = clerp(RW.C0, CFrame.new(1.0, 0.5, -0.4) * angles(math.rad(80), math.rad(12), math.rad(-30)),.2)
- LW.C0 = clerp(LW.C0, CFrame.new(-1., 0.5, -0.4) * angles(math.rad(80), math.rad(-12), math.rad(30)),.2)
- LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1.0, 0) * CFrame.Angles(math.rad(75), math.rad(34), math.rad(-35)), 0.2)
- RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1.0, 0) * CFrame.Angles(math.rad(75), math.rad(-34), math.rad(35)), 0.2)
- end
- coroutine.resume(coroutine.create(function()
- for i = 0, 63, 0.1 do
- swait()
- end
- if bel.Anchored == false then
- bel:Destroy()
- end
- end))
- attack = false
- end
- mouse.Button1Down:connect(function(key)
- if attack == false then
- shoot()
- end
- end)
- mouse.Button1Up:connect(function(key)
- if shooting == true then
- shooting = false
- end
- end)
- mouse.KeyDown:connect(function(key)
- if key == 'e' and attack == false then
- dshoot()
- end
- end)
- mouse.KeyDown:connect(function(key)
- if key == 'q' and attack == false then
- finaldev()
- end
- end)
- mouse.KeyUp:connect(function(key)
- if key == 'e' and shooting == true then
- shooting = false
- end
- end)
- mouse.KeyDown:connect(function(key)
- if key == 'f' and attack == false and evadecooldown == false then
- Dash()
- end
- end)
- local orb = part(3, Character, 0, 0.9, BrickColor.new("White"), "Effect", vt())
- local msh = mesh("SpecialMesh", orb, "Sphere", "nil", vt(0, 0, 0), vt(15, 15, 15))
- local orb2 = part(3, Character, 0, 0.9, BrickColor.new("White"), "Effect", vt())
- local msh = mesh("SpecialMesh", orb2, "Sphere", "nil", vt(0, 0, 0), vt(15, 15, 15))
- orb.Anchored = true
- orb2.Anchored = true
- Humanoid.WalkSpeed = 32
- local f = 0
- game:GetService("RunService"):BindToRenderStep("W0tT", 0, function()
- f = f+1
- cam.FieldOfView = lerp(cam.FieldOfView, 70, 0.076)
- if f >= 6 then
- f=0
- SphereEffect(BrickColor.new("Royal purple"),cf(orb.Position)*angles(math.random(-360, 360),math.random(-360, 360),math.random(-360, 360)),1,5,1,.05,4,.05,0.03)
- SphereEffect(BrickColor.new("Royal purple"),cf(orb2.Position)*angles(math.random(-360, 360),math.random(-360, 360),math.random(-360, 360)),1,5,1,.05,4,.05,0.03)
- MagicRing(BrickColor.new("Royal purple"), cf(orb.Position) * euler(math.random(-360, 360), math.random(-360, 360), math.random(-360, 360)), 3, 3, 1, -0.2, -0.2, 0, 0.07)
- MagicCircle(BrickColor.new("Royal purple"), cf(orb.Position), 0, 0, 0, 1.25, 1.25, 1.25, 0.05)
- MagicRing(BrickColor.new("Royal purple"), cf(orb2.Position) * euler(math.random(-360, 360), math.random(-360, 360), math.random(-360, 360)), 3, 3, 1, -0.2, -0.2, 0, 0.07)
- MagicCircle(BrickColor.new("Royal purple"), cf(orb2.Position), 0, 0, 0, 1.25, 1.25, 1.25, 0.05)
- MagicBlock(BrickColor.new("Royal purple"), cf(orb.Position) * cf(math.random(-200, 200) / 100, math.random(-200, 200) / 100, math.random(-200, 200) / 100) * euler(math.random(-360, 360), math.random(-360, 360), math.random(-360, 360)), 1, 1, 1, 1, 1, 1, 0.1, 2)
- MagicBlock(BrickColor.new("Royal purple"), cf(orb2.Position) * cf(math.random(-200, 200) / 100, math.random(-200, 200) / 100, math.random(-200, 200) / 100) * euler(math.random(-360, 360), math.random(-360, 360), math.random(-360, 360)), 1, 1, 1, 1, 1, 1, 0.1, 2)
- end
- end)
- Humanoid.MaxHealth = 400
- print("Move list")
- print("---------")
- print("F: Time Dash")
- print("Hold Click: Lesser Bullets")
- print("Hold E: Mega Bullets")
- print("Q: Final Devastator")
- while true do
- swait()
- sine = sine + change
- --speed = speed + music.PlaybackLoudness/90
- local torvel=(RootPart.Velocity*Vector3.new(1,0,1)).magnitude
- local velderp=RootPart.Velocity.y
- hitfloor,posfloor=rayCast(RootPart.Position,(CFrame.new(RootPart.Position,RootPart.Position - Vector3.new(0,1,0))).lookVector,4,Character)
- local TiltVelocity = CFrame.new(RootPart.CFrame:vectorToObjectSpace(RootPart.Velocity))
- if attack==true or attack==false then
- if attack==false then
- idle=idle+1
- else
- idle=0
- end
- if idle>=500 then
- if attack==false then
- end
- end
- Humanoid.Health = Humanoid.Health + 4
- orb.CFrame = RightArm.CFrame * cf(0, -1, 0)
- orb2.CFrame = LeftArm.CFrame * cf(0, -1, 0)
- if RootPart.Velocity.y > 1 and hitfloor==nil then
- Anim="Jump"
- if attack==false then
- change = 1
- look = 0
- Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,0),0.15)
- Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(4), math.rad(0), math.rad(0)), 0.07)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(-10+2.05*math.cos(sine/5)),math.rad(0),math.rad(0)),0.07)
- RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(-20+2.05*math.cos(sine/5)), math.rad(-10), math.rad(50-2.05*math.cos(sine/5))), 0.07)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-20+2.05*math.cos(sine/5)), math.rad(-10), math.rad(-50+2.05*math.cos(sine/5))), 0.07)
- RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1, -0.6) * CFrame.Angles(math.rad(-25+3.05*math.cos(sine/5)), math.rad(-3), math.rad(0)), 0.1)
- LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -.47, -0.7) * CFrame.Angles(math.rad(-12+3.05*math.cos(sine/5)), math.rad(0), math.rad(0)), 0.1)
- end
- elseif RootPart.Velocity.y -1 and hitfloor==nil then
- Anim="Fall"
- change = 1
- if attack==false then
- Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,0),0.15)
- Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0.2) * CFrame.Angles(math.rad(7+4*math.sin(sine/1.3)), math.rad(0), math.rad(0)),0.07)
- RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.65, 0) * angles(math.rad(0), math.rad(0), math.rad(140+12*math.cos(sine/1.3))), 0.07)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.65, 0) * angles(math.rad(0), math.rad(0), math.rad(-140+12*math.cos(sine/1.3))), 0.07)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(40+7*math.sin(sine/1.3)),math.rad(0),math.rad(0)),0.07)
- LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1+0.17*math.cos(sine/1.3), -0.13) * CFrame.Angles(math.rad(18+7*math.cos(sine/1.3)), math.rad(3), math.rad(0)), 0.1)
- RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -.37+0.17*math.cos(sine/1.3), -0.2) * CFrame.Angles(math.rad(32+7*math.cos(sine/1.3)), math.rad(0), math.rad(0)), 0.1)
- end
- elseif torvel1 and hitfloor~=nil then
- Anim="Idle"
- change = 1
- if attack==false and equip == false then
- Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,0),0.15)
- orb.CFrame = orb.CFrame:lerp(RightArm.CFrame*cf(0+2*math.cos(sine/40), -5+2*math.sin(sine/40), 0),0.1)
- orb2.CFrame = orb2.CFrame:lerp(LeftArm.CFrame*cf(0-2*math.cos(sine/40), -5+2*math.sin(sine/40), 0),0.1)
- Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1-0.04*math.cos(sine/40), -0) * CFrame.Angles(math.rad(0), math.rad(-70), math.rad(0)), 0.25)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(10+2.6*math.sin(sine/40)),math.rad(0),math.rad(60)),0.25)
- RW.C0 = clerp(RW.C0, CFrame.new(1.2, 0.55+0.04*math.sin(sine/40), 0.2) * angles(math.rad(-32+1.3*math.cos(sine/40)), math.rad(0+4*math.sin(sine/40)), math.rad(-22.3+2.2*math.cos(sine/40))),0.25)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.3, 0.55+0.04*math.sin(sine/40), -0.3-0.04*math.cos(sine/40)) * angles(math.rad(28+1.3*math.cos(sine/40)), math.rad(0-4*math.sin(sine/40)), math.rad(26.3-2.2*math.cos(sine/40))),0.25)
- LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1+0.04*math.cos(sine/40), 0) * CFrame.Angles(math.rad(0), math.rad(8), math.rad(-7)),0.25)
- RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.57, -1+0.04*math.cos(sine/40), 0) * CFrame.Angles(math.rad(0), math.rad(-2), math.rad(3)),0.25)
- end
- elseif torvel>1.5 and torvel22 and hitfloor~=nil then
- Anim="Walk"
- change = 0.84
- look = 0
- if attack==false and equip == false then
- Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,0),0.02)
- Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1+0.14*math.cos(sine/5), -0.3) * angles(math.rad(-2)*-math.rad(TiltVelocity.z)*9.5, math.rad(0+2*math.cos(sine/10)), math.rad(8)*-math.rad(TiltVelocity.x)*7.5+ RootPart.RotVelocity.Y / 46), 0.08)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(4-3*math.sin(sine/5)),math.rad(0),math.rad(2) + RootPart.RotVelocity.Y / 13), 0.08)
- RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0+0.34*math.sin(sine/10)) * angles(math.rad(0-26*math.sin(sine/10))+ RootPart.RotVelocity.Y / -34, math.rad(0), math.rad(6+8*math.cos(sine/5))- RootPart.RotVelocity.Y / 34), 0.08)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0-0.34*math.sin(sine/10)) * angles(math.rad(0+26*math.sin(sine/10))+ RootPart.RotVelocity.Y / 34, math.rad(0), math.rad(-6-8*math.cos(sine/5))+ RootPart.RotVelocity.Y / -34), 0.08)
- --LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1-0.21*math.cos(sine/10), -0.03+0.19*math.cos(sine/10)) * CFrame.Angles(math.rad(-8-25*math.sin(sine/10)*-math.rad(TiltVelocity.z)*12.5), math.rad(0)- RootPart.RotVelocity.Y / -24, math.rad(0-25*math.sin(sine/10)*math.rad(TiltVelocity.x)*11.5+ RootPart.RotVelocity.Y / -34)), 0.08)
- --RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1+0.21*math.cos(sine/10),-0.03-0.19*math.cos(sine/10)) * CFrame.Angles(math.rad(-8+25*math.sin(sine/10)*-math.rad(TiltVelocity.z)*12.5), math.rad(0)+ RootPart.RotVelocity.Y / 24, math.rad(0-25*math.sin(sine/10)*-math.rad(TiltVelocity.x)*11.5- RootPart.RotVelocity.Y / 34)), 0.08)
- end
- if attack == false or attack==true and noleg == false then
- LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1-0.21*math.cos(sine/10), -0.03+0.19*math.cos(sine/10)) * CFrame.Angles(math.rad(-8-25*math.sin(sine/10)*-math.rad(TiltVelocity.z)*9.5), math.rad(0)- RootPart.RotVelocity.Y / -24, math.rad(0-25*math.sin(sine/10)*math.rad(TiltVelocity.x)*6.5- RootPart.RotVelocity.Y / 34)), 0.08)
- RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1+0.21*math.cos(sine/10),-0.03-0.19*math.cos(sine/10)) * CFrame.Angles(math.rad(-8+25*math.sin(sine/10)*-math.rad(TiltVelocity.z)*9.5), math.rad(0)+ RootPart.RotVelocity.Y / 24, math.rad(0-25*math.sin(sine/10)*-math.rad(TiltVelocity.x)*6.5- RootPart.RotVelocity.Y / 34)), 0.08)
- end
- elseif torvel>=22 and hitfloor~=nil then
- Anim="Run"
- change = 0.84+ Character.Humanoid.WalkSpeed/112
- if attack==false and equip == false then
- Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,0),0.02)
- Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1-0.5*math.cos(sine/2.5), -.8) * angles(math.rad(-23+4*math.cos(sine/5)), math.rad(0+4*math.sin(sine/5)), math.rad(0)+ RootPart.RotVelocity.Y / 26), .1)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(-12+20*math.sin(sine/2.5)),math.rad(0),math.rad(0+5*math.sin(sine/5)) + RootPart.RotVelocity.Y / 13),.1)
- RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0-0.34*math.cos(sine/5)) * angles(math.rad(10+57*math.cos(sine/5))+ RootPart.RotVelocity.Y / -34, math.rad(0+43*math.cos(sine/5)), math.rad(5)- RootPart.RotVelocity.Y / 34),.25)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0+0.34*math.cos(sine/5))*angles(math.rad(10-57*math.cos(sine/5))+ RootPart.RotVelocity.Y / 34,math.rad(0+43*math.cos(sine/5)),math.rad(-5)+ RootPart.RotVelocity.Y / -34),.25)
- LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1+0.56*math.cos(sine/5), 0-0.48*math.cos(sine/5)) * CFrame.Angles(math.rad(0+73*math.sin(sine/5)), math.rad(0)+ RootPart.RotVelocity.Y / 42, math.rad(0)+ RootPart.RotVelocity.Y / -54), 0.3)
- RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1-0.56*math.cos(sine/5),0+0.48*math.cos(sine/5)) * CFrame.Angles(math.rad(0-73*math.sin(sine/5)), math.rad(0)+ RootPart.RotVelocity.Y / 42, math.rad(0)- RootPart.RotVelocity.Y / 54), 0.3)
- end
- --[[
- if attack==false then
- LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1-0.4*math.cos(sine/5.5)/2, 0 *math.sin(sine/6.6)/2) * CFrame.Angles(math.rad(0) + -math.sin(sine/5.5)/1.2, math.rad(0), 0), .8)
- RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1+0.4*math.cos(sine/5.5)/2,0 *-math.sin(sine/6.6)/2) * CFrame.Angles(math.rad(0) + math.sin(sine/5.5)/1.2, math.rad(0), 0), .8)
- end
- ]]
- if attack==true and noleg == false then
- LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1-0.24*math.cos(sine/5), 0.+0.24*math.cos(sine/5)) * CFrame.Angles(math.rad(0-74*math.sin(sine/5)), math.rad(0), math.rad(0)), 0.3)
- RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1+0.24*math.cos(sine/5),0.-0.24*math.cos(sine/5)) * CFrame.Angles(math.rad(0+74*math.sin(sine/5)), math.rad(0), math.rad(0)), 0.3)
- end
- end
- end
- if 0 #Effects then
- for e = 1, #Effects do
- if Effects[e] ~= nil then
- local Thing = Effects[e]
- if Thing ~= nil then
- local Part = Thing[1]
- local Mode = Thing[2]
- local Delay = Thing[3]
- local IncX = Thing[4]
- local IncY = Thing[5]
- local IncZ = Thing[6]
- if Thing[2] == "CylinderClang" then
- if Thing[3] = 1 then
- Thing[1].CFrame = Thing[1].CFrame * CFrame.new(0, 2.5 * Thing[5], 0) * CFrame.fromEulerAnglesXYZ(Thing[6], 0, 0)
- Thing[7] = Thing[1].CFrame
- effect("New Yeller", 0, Thing[8], Thing[7])
- Thing[8] = Thing[7]
- Thing[3] = Thing[3] + Thing[4]
- else
- Part.Parent = nil
- table.remove(Effects, e)
- end
- end
- if Thing[2] == "showDamage" then
- if Thing[6] Thing[5] then
- Thing[6] = Thing[6] + 1
- else
- if Thing[6] Thing[7] then
- Thing[4].position = Thing[4].position + vt(0, -0.2, 0)
- Thing[6] = Thing[6] + 1
- else
- if Thing[6] Thing[8] then
- Thing[6] = Thing[6] + 1
- else
- if Thing[6] Thing[9] then
- Thing[6] = Thing[6] + 1
- Thing[4].position = Thing[4].position + vt(0, 0.2, 0)
- Thing[3].TextStrokeTransparency = Thing[3].TextStrokeTransparency + 0.1
- Thing[3].TextTransparency = Thing[3].TextTransparency + 0.1
- else
- Thing[1].Parent = nil
- table.remove(Effects, e)
- end
- end
- end
- end
- end
- if Thing[2] == "PartiEmi" then
- Thing[3] = Thing[3] - 1
- if Thing[3] = 0 then
- Thing[1].Enabled = false
- table.remove(Effects, e)
- end
- end
- if Thing[2] == "AdjuEff" then
- if 0 Thing[3] then
- Thing[3] = Thing[3] - 1
- Thing[1].Size = Thing[1].Size + UDim2.new(0.2, 0, 0.2, 0)
- Thing[1].StudsOffset = Thing[1].StudsOffset + vt(0, -0.2, 0)
- Thing[4].ImageTransparency = Thing[4].ImageTransparency + 0.1
- else
- Thing[1].Parent = nil
- table.remove(Effects, e)
- end
- end
- if Thing[2] ~= "Shoot" and Thing[2] ~= "DecreaseStat" and Thing[2] ~= "Wave" and Thing[2] ~= "FireWave" and Thing[2] ~= "showDamage" and Thing[2] ~= "PartiEmi" and Thing[2] ~= "AdjuEff" then
- if Thing[1].Transparency = 1 then
- if Thing[2] == "Block1" then
- Thing[1].CFrame = Thing[1].CFrame * euler(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
- Mesh = Thing[7]
- Mesh.Scale = Mesh.Scale + vt(Thing[4], Thing[5], Thing[6])
- Thing[1].Transparency = Thing[1].Transparency + Thing[3]
- else
- if Thing[2] == "Block2" then
- Thing[1].CFrame = Thing[1].CFrame
- Mesh = Thing[7]
- Mesh.Scale = Mesh.Scale + vt(Thing[4], Thing[5], Thing[6])
- Thing[1].Transparency = Thing[1].Transparency + Thing[3]
- else
- if Thing[2] == "Block3" then
- Thing[9] = Thing[9] + 0.5
- Thing[1].CFrame = Thing[8] * cf(0, Thing[9], 0)
- Thing[1].CFrame = Thing[1].CFrame * euler(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
- Mesh = Thing[7]
- Mesh.Scale = Mesh.Scale + vt(Thing[4], Thing[5], Thing[6])
- Thing[1].Transparency = Thing[1].Transparency + Thing[3]
- else
- if Thing[2] == "Skull" then
- Thing[1].CFrame = Thing[1].CFrame * cf(0, Thing[8] / 2, -Thing[8])
- Mesh = Thing[7]
- Mesh.Scale = Mesh.Scale + vt(Thing[4], Thing[5], Thing[6])
- Thing[1].Transparency = Thing[1].Transparency + Thing[3]
- else
- if Thing[2] == "Cylinder" then
- Mesh = Thing[7]
- Mesh.Scale = Mesh.Scale + vt(Thing[4]-Thing[1].Transparency, Thing[5]-Thing[1].Transparency, Thing[6]-Thing[1].Transparency)
- Thing[1].Transparency = Thing[1].Transparency + Thing[3]
- else
- if Thing[2] == "Cylinder2" then
- Thing[1].CFrame = Thing[1].CFrame * cf(0, Thing[8], 0)
- Mesh = Thing[7]
- Mesh.Scale = Mesh.Scale + vt(Thing[4], Thing[5], Thing[6])
- Thing[1].Transparency = Thing[1].Transparency + Thing[3]
- else
- if Thing[2] == "Blood" then
- Mesh = Thing[7]
- Thing[1].CFrame = Thing[1].CFrame * cf(0, 0.5, 0)
- Mesh.Scale = Mesh.Scale + vt(Thing[4], Thing[5], Thing[6])
- Thing[1].Transparency = Thing[1].Transparency + Thing[3]
- else
- if Thing[2] == "Elec" then
- Mesh = Thing[10]
- Mesh.Scale = Mesh.Scale + vt(Thing[7], Thing[8], Thing[9])
- Thing[1].Transparency = Thing[1].Transparency + Thing[3]
- else
- if Thing[2] == "Disappear" then
- Thing[1].Transparency = Thing[1].Transparency + Thing[3]
- end
- end
- end
- end
- end
- end
- end
- end
- end
- else
- Part.Parent = nil
- table.remove(Effects, e)
- end
- end
- end
- end
- end
- end
- end
- -- I.R.O.N
- plr = game.Players.LocalPlayer
- char = plr.Character
- hum = char.Humanoid
- local cam = game.Workspace.CurrentCamera
- t = char.Torso
- h = char.Head
- ra = char["Right Arm"]
- la = char["Left Arm"]
- rl = char["Right Leg"]
- ll = char["Left Leg"]
- tors = char.Torso
- lleg = char["Left Leg"]
- root = char.HumanoidRootPart
- hed = char.Head
- rleg = char["Right Leg"]
- rarm = char["Right Arm"]
- larm = char["Left Arm"]
- vt = Vector3.new
- bc = BrickColor.new
- br = BrickColor.random
- it = Instance.new
- cf = CFrame.new
- function CameraShake(Times, Power)
- coroutine.resume(coroutine.create(function()
- FV = Instance.new("BoolValue", Character)
- FV.Name = "CameraShake"
- for ShakeNum=1,Times do
- swait()
- local ef=Power
- if ef>=1 then
- Humanoid.CameraOffset = Vector3.new(math.random(-ef,ef),math.random(-ef,ef),math.random(-ef,ef))
- else
- ef=Power*10
- Humanoid.CameraOffset = Vector3.new(math.random(-ef,ef)/10,math.random(-ef,ef)/10,math.random(-ef,ef)/10)
- end
- end
- Humanoid.CameraOffset = Vector3.new(0,0,0)
- FV:Destroy()
- end))
- end
- CamShake=function(Part,Distan,Power,Times)
- local de=Part.Position
- for i,v in pairs(workspace:children()) do
- if v:IsA("Model") and v:findFirstChild("Humanoid") then
- for _,c in pairs(v:children()) do
- if c.ClassName=="Part" and (c.Position - de).magnitude < Distan then
- local Noob=v.Humanoid
- if Noob~=nil then
- if Noob:FindFirstChild("CamShake")==nil then-- and Noob == Character then
- --[[local ss=script.CamShake:clone()
- ss.Parent=Noob
- ss.Power.Value=Power
- ss.Times.Value=Times
- ss.Disabled=false]]
- CameraShake(Times, Power)
- end
- end
- end
- end
- end
- end
- end
- function chatfunc(text,color)
- local chat = coroutine.wrap(function()
- if Character:FindFirstChild("TalkingBillBoard")~= nil then
- Character:FindFirstChild("TalkingBillBoard"):destroy()
- end
- local naeeym2 = Instance.new("BillboardGui",Character)
- naeeym2.Size = UDim2.new(0,100,0,40)
- naeeym2.StudsOffset = Vector3.new(0,3,0)
- naeeym2.Adornee = Character.Head
- naeeym2.Name = "TalkingBillBoard"
- local tecks2 = Instance.new("TextLabel",naeeym2)
- tecks2.BackgroundTransparency = 1
- tecks2.BorderSizePixel = 0
- tecks2.Text = ""
- tecks2.Font = "SciFi"
- tecks2.TextSize = 30
- tecks2.TextStrokeTransparency = 0
- tecks2.TextColor3 = color
- tecks2.TextStrokeColor3 = Color3.new(0,0,0)
- tecks2.Size = UDim2.new(1,0,0.5,0)
- local tecks3 = Instance.new("TextLabel",naeeym2)
- tecks3.BackgroundTransparency = 1
- tecks3.BorderSizePixel = 0
- tecks3.Text = ""
- tecks3.Font = "SciFi"
- tecks3.TextSize = 30
- tecks3.TextStrokeTransparency = 0
- tecks3.TextColor3 = Color3.new(0,0,0)
- tecks3.TextStrokeColor3 = color
- tecks3.Size = UDim2.new(1,0,0.5,0)
- for i = 1,string.len(text),1 do
- CFuncs["Sound"].Create("rbxassetid://274118116", char, 0.25, 0.115)
- tecks2.Text = string.sub(text,1,i)
- tecks3.Text = string.sub(text,1,i)
- wait(0.01)
- end
- wait(1)
- local randomrot = math.random(1,2)
- if randomrot == 1 then
- for i = 1, 50 do
- swait()
- tecks2.Rotation = tecks2.Rotation - .75
- tecks2.TextStrokeTransparency = tecks2.TextStrokeTransparency +.04
- tecks2.TextTransparency = tecks2.TextTransparency + .04
- tecks3.Rotation = tecks2.Rotation + .75
- tecks3.TextStrokeTransparency = tecks2.TextStrokeTransparency +.04
- tecks3.TextTransparency = tecks2.TextTransparency + .04
- end
- elseif randomrot == 2 then
- for i = 1, 50 do
- swait()
- tecks2.Rotation = tecks2.Rotation + .75
- tecks2.TextStrokeTransparency = tecks2.TextStrokeTransparency +.04
- tecks2.TextTransparency = tecks2.TextTransparency + .04
- tecks3.Rotation = tecks2.Rotation - .75
- tecks3.TextStrokeTransparency = tecks2.TextStrokeTransparency +.04
- tecks3.TextTransparency = tecks2.TextTransparency + .04
- end
- end
- naeeym2:Destroy()
- end)
- chat()
- end
- local Create = LoadLibrary("RbxUtility").Create
- CFuncs = {
- ["Part"] = {
- Create = function(Parent, Material, Reflectance, Transparency, BColor, Name, Size)
- local Part = Create("Part"){
- Parent = Parent,
- Reflectance = Reflectance,
- Transparency = Transparency,
- CanCollide = false,
- Locked = true,
- BrickColor = BrickColor.new(tostring(BColor)),
- Name = Name,
- Size = Size,
- Material = Material,
- }
- RemoveOutlines(Part)
- return Part
- end;
- };
- ["Mesh"] = {
- Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale)
- local Msh = Create(Mesh){
- Parent = Part,
- Offset = OffSet,
- Scale = Scale,
- }
- if Mesh == "SpecialMesh" then
- Msh.MeshType = MeshType
- Msh.MeshId = MeshId
- end
- return Msh
- end;
- };
- ["Mesh"] = {
- Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale)
- local Msh = Create(Mesh){
- Parent = Part,
- Offset = OffSet,
- Scale = Scale,
- }
- if Mesh == "SpecialMesh" then
- Msh.MeshType = MeshType
- Msh.MeshId = MeshId
- end
- return Msh
- end;
- };
- ["Weld"] = {
- Create = function(Parent, Part0, Part1, C0, C1)
- local Weld = Create("Weld"){
- Parent = Parent,
- Part0 = Part0,
- Part1 = Part1,
- C0 = C0,
- C1 = C1,
- }
- return Weld
- end;
- };
- ["Sound"] = {
- Create = function(id, par, vol, pit)
- coroutine.resume(coroutine.create(function()
- local S = Create("Sound"){
- Volume = vol,
- Pitch = pit or 1,
- SoundId = id,
- Parent = par or workspace,
- }
- wait()
- S:play()
- game:GetService("Debris"):AddItem(S, 10)
- end))
- end;
- };
- ["LongSound"] = {
- Create = function(id, par, vol, pit)
- coroutine.resume(coroutine.create(function()
- local S = Create("Sound"){
- Volume = vol,
- Pitch = pit or 1,
- SoundId = id,
- Parent = par or workspace,
- }
- wait()
- S:play()
- game:GetService("Debris"):AddItem(S, 30)
- end))
- end;
- };
- ["ParticleEmitter"] = {
- Create = function(Parent, Color1, Color2, LightEmission, Size, Texture, Transparency, ZOffset, Accel, Drag, LockedToPart, VelocityInheritance, EmissionDirection, Enabled, LifeTime, Rate, Rotation, RotSpeed, Speed, VelocitySpread)
- local fp = Create("ParticleEmitter"){
- Parent = Parent,
- Color = ColorSequence.new(Color1, Color2),
- LightEmission = LightEmission,
- Size = Size,
- Texture = Texture,
- Transparency = Transparency,
- ZOffset = ZOffset,
- Acceleration = Accel,
- Drag = Drag,
- LockedToPart = LockedToPart,
- VelocityInheritance = VelocityInheritance,
- EmissionDirection = EmissionDirection,
- Enabled = Enabled,
- Lifetime = LifeTime,
- Rate = Rate,
- Rotation = Rotation,
- RotSpeed = RotSpeed,
- Speed = Speed,
- VelocitySpread = VelocitySpread,
- }
- return fp
- end;
- };
- CreateTemplate = {
- };
- }
- New = function(Object, Parent, Name, Data)
- local Object = Instance.new(Object)
- for Index, Value in pairs(Data or {}) do
- Object[Index] = Value
- end
- Object.Parent = Parent
- Object.Name = Name
- return Object
- end
- local glowcolor = BrickColor.new("Toothpaste")
- local glowcolor2 = BrickColor.new("Institutional white")
- local patchcolor = BrickColor.new("Really black")
- local patchcolor2 = BrickColor.new("Really black")
- local wepcolor = BrickColor.new("Smoky grey")
- local m = Instance.new("Model",char)
- function CreateParta(parent,transparency,reflectance,material,brickcolor)
- local p = Instance.new("Part")
- p.TopSurface = 0
- p.BottomSurface = 0
- p.Parent = parent
- p.Size = Vector3.new(0.05,0.05,0.05)
- p.Transparency = transparency
- p.Reflectance = reflectance
- p.CanCollide = false
- p.Locked = true
- p.BrickColor = brickcolor
- p.Material = material
- return p
- end
- function CreateMesh(parent,meshtype,x1,y1,z1)
- local mesh = Instance.new("SpecialMesh",parent)
- mesh.MeshType = meshtype
- mesh.Scale = Vector3.new(x1*20,y1*20,z1*20)
- return mesh
- end
- function CreateSpecialMesh(parent,meshid,x1,y1,z1)
- local mesh = Instance.new("SpecialMesh",parent)
- mesh.MeshType = "FileMesh"
- mesh.MeshId = meshid
- mesh.Scale = Vector3.new(x1,y1,z1)
- return mesh
- end
- function CreateSpecialGlowMesh(parent,meshid,x1,y1,z1)
- local mesh = Instance.new("SpecialMesh",parent)
- mesh.MeshType = "FileMesh"
- mesh.MeshId = meshid
- mesh.TextureId = "http://www.roblox.com/asset/?id=269748808"
- mesh.Scale = Vector3.new(x1,y1,z1)
- mesh.VertexColor = Vector3.new(parent.BrickColor.r, parent.BrickColor.g, parent.BrickColor.b)
- return mesh
- end
- function CreateWeld(parent,part0,part1,C1X,C1Y,C1Z,C1Xa,C1Ya,C1Za,C0X,C0Y,C0Z,C0Xa,C0Ya,C0Za)
- local weld = Instance.new("Weld")
- weld.Parent = parent
- weld.Part0 = part0
- weld.Part1 = part1
- weld.C1 = CFrame.new(C1X,C1Y,C1Z)*CFrame.Angles(C1Xa,C1Ya,C1Za)
- weld.C0 = CFrame.new(C0X,C0Y,C0Z)*CFrame.Angles(C0Xa,C0Ya,C0Za)
- return weld
- end
- local sorb = CreateParta(m,1,1,"SmoothPlastic",BrickColor.random())
- CreateWeld(sorb,rarm,sorb,0,1.15,0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- local wepcenter = CreateParta(m,1,0,"SmoothPlastic",wepcolor)
- local wepweld = CreateWeld(wepcenter,tors,wepcenter,1,0,-4,math.rad(20),math.rad(-90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- ga = CreateParta(m,0,0,"SmoothPlastic",wepcolor)
- CreateMesh(ga,"Brick",0.175,0.175,2.25)
- CreateWeld(ga,wepcenter,ga,0,0,0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- ga = CreateParta(m,0,0,"Neon",glowcolor)
- CreateMesh(ga,"Brick",0.195,0.195,1.45)
- CreateWeld(ga,wepcenter,ga,0,0,0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- ga = CreateParta(m,0,0,"SmoothPlastic",wepcolor)
- CreateMesh(ga,"Brick",0.215,0.215,1.375)
- CreateWeld(ga,wepcenter,ga,0,0,0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- ga = CreateParta(m,0,0,"SmoothPlastic",wepcolor)
- CreateMesh(ga,"Brick",0.125,0.125,1.25)
- CreateWeld(ga,wepcenter,ga,0,-0.5,0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- ga = CreateParta(m,0,0,"SmoothPlastic",wepcolor)
- CreateMesh(ga,"Brick",0.125,0.125,0.65)
- CreateWeld(ga,wepcenter,ga,0,-0.765,0.35,math.rad(45),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- ga = CreateParta(m,0,0,"SmoothPlastic",wepcolor)
- CreateMesh(ga,"Brick",0.125,0.125,0.65)
- CreateWeld(ga,wepcenter,ga,0,-0.765,-0.35,math.rad(-45),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- ga = CreateParta(m,0,0,"Neon",glowcolor)
- CreateMesh(ga,"Brick",0.245,0.245,1.45)
- CreateWeld(ga,wepcenter,ga,0,0,-2,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- ga = CreateParta(m,0,0,"Neon",glowcolor)
- CreateMesh(ga,"Brick",0.265,0.265,0.45)
- CreateWeld(ga,wepcenter,ga,0,0,-2,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- ga = CreateParta(m,0,0,"SmoothPlastic",patchcolor)
- CreateMesh(ga,"Brick",0.285,0.285,0.35)
- CreateWeld(ga,wepcenter,ga,0,0,-2,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- ga = CreateParta(m,0,0,"SmoothPlastic",wepcolor)
- CreateMesh(ga,"Brick",0.2525,0.2525,1.375)
- CreateWeld(ga,wepcenter,ga,0,0,-2,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- cryst = CreateParta(m,0,0,"SmoothPlastic",patchcolor2)
- CreateSpecialMesh(cryst,"http://www.roblox.com/Asset/?id=9756362",0.55,0.55,1.5)
- CreateWeld(cryst,wepcenter,cryst,0,0,-1,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- cryst = CreateParta(m,0,0,"SmoothPlastic",glowcolor2)
- CreateSpecialMesh(cryst,"http://www.roblox.com/Asset/?id=9756362",0.575,0.575,1)
- CreateWeld(cryst,wepcenter,cryst,0,0,-1,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- cryst = CreateParta(m,0,0,"SmoothPlastic",glowcolor)
- CreateSpecialMesh(cryst,"http://www.roblox.com/Asset/?id=9756362",0.45,0.45,0.5)
- CreateWeld(cryst,wepcenter,cryst,0,0,-1.25,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- cryst = CreateParta(m,0,0,"SmoothPlastic",glowcolor)
- CreateSpecialMesh(cryst,"http://www.roblox.com/Asset/?id=9756362",0.45,0.45,0.5)
- CreateWeld(cryst,wepcenter,cryst,0,0,-0.75,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- cryst = CreateParta(m,0,0,"SmoothPlastic",patchcolor2)
- CreateSpecialMesh(cryst,"http://www.roblox.com/Asset/?id=9756362",0.5,0.5,2)
- CreateWeld(cryst,wepcenter,cryst,0,0,-2.5,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- cryst = CreateParta(m,0,0,"SmoothPlastic",patchcolor2)
- CreateSpecialMesh(cryst,"http://www.roblox.com/Asset/?id=9756362",1,1,0.5)
- CreateWeld(cryst,wepcenter,cryst,0,0,1,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- crysta = CreateParta(m,0,0,"SmoothPlastic",patchcolor)
- CreateSpecialMesh(crysta,"http://www.roblox.com/Asset/?id=9756362",1,1,0.35)
- CreateWeld(crysta,cryst,crysta,0,0,0,math.rad(0),math.rad(0),math.rad(45),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- orbe = CreateParta(m,0,0,"Neon",glowcolor)
- CreateMesh(orbe,"Sphere",0.35,0.35,0.25)
- CreateWeld(orbe,wepcenter,orbe,0,0,1.25,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- orbem = CreateParta(m,0.75,0,"Neon",glowcolor)
- CreateMesh(orbem,"Cylinder",2,0.45,0.45)
- CreateWeld(orbem,orbe,orbem,0.75,0,0,math.rad(0),math.rad(90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- orba = CreateParta(m,0,0,"Neon",glowcolor2)
- CreateMesh(orba,"Sphere",0.65,0.65,0.65)
- CreateWeld(orba,wepcenter,orba,0,0,2,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- ger = CreateParta(m,0,0,"SmoothPlastic",wepcolor)
- CreateSpecialMesh(ger,"http://www.roblox.com/asset?id=156292343",1.5,1.5,1.5)
- local orbitalweld = CreateWeld(ger,orba,ger,0,0,0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- boi = CreateParta(m,0,0,"SmoothPlastic",patchcolor)
- CreateSpecialMesh(boi,"http://www.roblox.com/asset?id=156292343",2,2,7.5)
- CreateWeld(boi,cryst,boi,0,0,2,math.rad(0),math.rad(0),math.rad(45),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- boi = CreateParta(m,0,0,"SmoothPlastic",wepcolor)
- CreateSpecialMesh(boi,"http://www.roblox.com/asset?id=156292343",3,3,2.5)
- CreateWeld(boi,cryst,boi,0,0,2,math.rad(0),math.rad(0),math.rad(45),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- crysta = CreateParta(m,0,0,"SmoothPlastic",glowcolor)
- CreateSpecialMesh(crysta,"http://www.roblox.com/Asset/?id=9756362",1,1,0.65)
- CreateWeld(crysta,cryst,crysta,0,0,2,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- blad = CreateParta(m,0,0,"SmoothPlastic",patchcolor2)
- CreateMesh(blad,"Brick",0.15,1.5,6.75)
- CreateWeld(blad,wepcenter,blad,0,0,6.5,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- bladn = CreateParta(m,0,0,"SmoothPlastic",wepcolor)
- CreateMesh(bladn,"Brick",0.1,1.65,6.75)
- CreateWeld(bladn,wepcenter,bladn,0,0,6.5,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- local hitbox = CreateParta(m,1,0,"SmoothPlastic",BrickColor.random())
- hitbox.Size = Vector3.new(0.5,0.5,10)
- CreateWeld(hitbox,blad,hitbox,0,0,-1,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- -----------
- boipatt = CreateParta(m,0,0,"SmoothPlastic",glowcolor)
- CreateSpecialMesh(boipatt,"http://www.roblox.com/asset?id=156292343",1,1,5)
- CreateWeld(boipatt,wepcenter,boipatt,4,-0.25,0,math.rad(0),math.rad(90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- orbpatt = CreateParta(m,0,0,"Neon",glowcolor2)
- CreateMesh(orbpatt,"Sphere",0.8,0.8,0.225)
- CreateWeld(orbpatt,boipatt,orbpatt,0,0,0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- boipatt = CreateParta(m,0,0,"SmoothPlastic",glowcolor)
- CreateSpecialMesh(boipatt,"http://www.roblox.com/asset?id=156292343",0.8,0.8,5)
- CreateWeld(boipatt,wepcenter,boipatt,6,-0.25,0,math.rad(0),math.rad(90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- orbpatt = CreateParta(m,0,0,"Neon",glowcolor2)
- CreateMesh(orbpatt,"Sphere",0.6,0.6,0.225)
- CreateWeld(orbpatt,boipatt,orbpatt,0,0,0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- boipatt = CreateParta(m,0,0,"SmoothPlastic",glowcolor)
- CreateSpecialMesh(boipatt,"http://www.roblox.com/asset?id=156292343",0.6,0.6,5)
- CreateWeld(boipatt,wepcenter,boipatt,8,-0.25,0,math.rad(0),math.rad(90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- orbpatt = CreateParta(m,0,0,"Neon",glowcolor2)
- CreateMesh(orbpatt,"Sphere",0.4,0.4,0.225)
- CreateWeld(orbpatt,boipatt,orbpatt,0,0,0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- boipatt = CreateParta(m,0,0,"SmoothPlastic",glowcolor)
- CreateSpecialMesh(boipatt,"http://www.roblox.com/asset?id=156292343",0.4,0.4,5)
- CreateWeld(boipatt,wepcenter,boipatt,10,-0.25,0,math.rad(0),math.rad(90),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- orbpatt = CreateParta(m,0,0,"Neon",glowcolor2)
- CreateMesh(orbpatt,"Sphere",0.25,0.25,0.225)
- CreateWeld(orbpatt,boipatt,orbpatt,0,0,0,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- patt = CreateParta(m,0,0,"SmoothPlastic",wepcolor)
- CreateMesh(patt,"Brick",0.175,0.25,6.75)
- CreateWeld(patt,wepcenter,patt,0,0.45,6.5,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- pattw = CreateParta(m,0,0,"SmoothPlastic",wepcolor)
- CreateMesh(pattw,"Wedge",0.175,0.25,0.25)
- CreateWeld(pattw,wepcenter,pattw,0,-0.45,10,math.rad(0),math.rad(0),math.rad(180),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- patte = CreateParta(m,0,0,"Neon",glowcolor)
- CreateMesh(patte,"Brick",0.185,0.175,1)
- CreateWeld(patte,wepcenter,patte,0,0.45,3.5,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- patte = CreateParta(m,0,0,"Neon",glowcolor)
- CreateMesh(patte,"Brick",0.185,0.175,1)
- CreateWeld(patte,wepcenter,patte,0,0.45,4.75,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- patte = CreateParta(m,0,0,"Neon",glowcolor)
- CreateMesh(patte,"Brick",0.185,0.175,1)
- CreateWeld(patte,wepcenter,patte,0,0.45,6,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- patte = CreateParta(m,0,0,"Neon",glowcolor)
- CreateMesh(patte,"Brick",0.185,0.175,1)
- CreateWeld(patte,wepcenter,patte,0,0.45,7.25,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- patte = CreateParta(m,0,0,"Neon",glowcolor)
- CreateMesh(patte,"Brick",0.185,0.175,1)
- CreateWeld(patte,wepcenter,patte,0,0.45,8.5,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- patte = CreateParta(m,0,0,"Neon",glowcolor)
- CreateMesh(patte,"Brick",0.185,0.175,0.65)
- CreateWeld(patte,wepcenter,patte,0,0.45,9.55,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- pattew = CreateParta(m,0,0,"Neon",glowcolor)
- CreateMesh(pattew,"Wedge",0.185,0.175,0.15)
- CreateWeld(pattew,wepcenter,pattew,0,-0.45,9.95,math.rad(0),math.rad(0),math.rad(180),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- orbpatet = CreateParta(m,0,0,"Neon",patchcolor)
- CreateMesh(orbpatet,"Sphere",0.175,0.175,0.225)
- CreateWeld(orbpatet,wepcenter,orbpatet,0,-0.45,5,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- orbpatet = CreateParta(m,0,0,"Neon",patchcolor)
- CreateMesh(orbpatet,"Sphere",0.175,0.175,0.225)
- CreateWeld(orbpatet,wepcenter,orbpatet,0,-0.45,5.5,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- orbpatet = CreateParta(m,0,0,"Neon",patchcolor)
- CreateMesh(orbpatet,"Sphere",0.175,0.175,0.225)
- CreateWeld(orbpatet,wepcenter,orbpatet,0,-0.45,4.5,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- orbpatet = CreateParta(m,0,0,"Neon",patchcolor)
- CreateMesh(orbpatet,"Sphere",0.175,0.175,0.225)
- CreateWeld(orbpatet,wepcenter,orbpatet,0,-0.45,7,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- orbpatet = CreateParta(m,0,0,"Neon",patchcolor)
- CreateMesh(orbpatet,"Sphere",0.175,0.175,0.225)
- CreateWeld(orbpatet,wepcenter,orbpatet,0,-0.45,7.5,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- orbpatet = CreateParta(m,0,0,"Neon",patchcolor)
- CreateMesh(orbpatet,"Sphere",0.175,0.175,0.225)
- CreateWeld(orbpatet,wepcenter,orbpatet,0,-0.45,6.5,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- orbpatet = CreateParta(m,0,0,"Neon",patchcolor)
- CreateMesh(orbpatet,"Sphere",0.175,0.175,0.225)
- CreateWeld(orbpatet,wepcenter,orbpatet,0,-0.45,9,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- orbpatet = CreateParta(m,0,0,"Neon",patchcolor)
- CreateMesh(orbpatet,"Sphere",0.175,0.175,0.225)
- CreateWeld(orbpatet,wepcenter,orbpatet,0,-0.45,9.5,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- orbpatet = CreateParta(m,0,0,"Neon",patchcolor)
- CreateMesh(orbpatet,"Sphere",0.175,0.175,0.225)
- CreateWeld(orbpatet,wepcenter,orbpatet,0,-0.45,8.5,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- orbpatet = CreateParta(m,0,0,"Neon",patchcolor)
- CreateMesh(orbpatet,"Sphere",0.175,0.175,0.225)
- CreateWeld(orbpatet,wepcenter,orbpatet,0,-0.45,11,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- orbpatet = CreateParta(m,0,0,"Neon",patchcolor)
- CreateMesh(orbpatet,"Sphere",0.175,0.175,0.225)
- CreateWeld(orbpatet,wepcenter,orbpatet,0,-0.45,10.5,math.rad(0),math.rad(0),math.rad(0),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- -----------
- bladt = CreateParta(m,0,0,"SmoothPlastic",patchcolor2)
- CreateMesh(bladt,"Wedge",0.15,1.5,2)
- CreateWeld(bladt,wepcenter,bladt,0,0,10.85,math.rad(0),math.rad(0),math.rad(180),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- bladtn = CreateParta(m,0,0,"SmoothPlastic",wepcolor)
- CreateMesh(bladtn,"Wedge",0.1,1.65,2.2)
- CreateWeld(bladtn,wepcenter,bladtn,0,0,10.975,math.rad(0),math.rad(0),math.rad(180),0,0,0,math.rad(0),math.rad(0),math.rad(0))
- ------
- function RemoveOutlines(part)
- part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10
- end
- function CreatePart(Parent, Material, Reflectance, Transparency, BColor, Name, Size)
- local Part = Create("Part")({
- Parent = Parent,
- Reflectance = Reflectance,
- Transparency = Transparency,
- CanCollide = false,
- Locked = true,
- BrickColor = BrickColor.new(tostring(BColor)),
- Name = Name,
- Size = Size,
- Material = Material
- })
- Part.CustomPhysicalProperties = PhysicalProperties.new(0.001, 0.001, 0.001, 0.001, 0.001)
- RemoveOutlines(Part)
- return Part
- end
- function CreateMesh(Mesh, Part, MeshType, MeshId, OffSet, Scale)
- local Msh = Create(Mesh)({
- Parent = Part,
- Offset = OffSet,
- Scale = Scale
- })
- if Mesh == "SpecialMesh" then
- Msh.MeshType = MeshType
- Msh.MeshId = MeshId
- end
- return Msh
- end
- function CreateWeld(Parent, Part0, Part1, C0, C1)
- local Weld = Create("Weld")({
- Parent = Parent,
- Part0 = Part0,
- Part1 = Part1,
- C0 = C0,
- C1 = C1
- })
- return Weld
- end
- Player=game:GetService("Players").LocalPlayer
- Character=Player.Character
- PlayerGui=Player.PlayerGui
- Backpack=Player.Backpack
- Torso=Character.Torso
- Head=Character.Head
- Humanoid=Character.Humanoid
- m=Instance.new('Model',Character)
- LeftArm=Character["Left Arm"]
- LeftLeg=Character["Left Leg"]
- RightArm=Character["Right Arm"]
- RightLeg=Character["Right Leg"]
- LS=Torso["Left Shoulder"]
- LH=Torso["Left Hip"]
- RS=Torso["Right Shoulder"]
- RH=Torso["Right Hip"]
- Face = Head.face
- Neck=Torso.Neck
- it=Instance.new
- attacktype=1
- vt=Vector3.new
- cf=CFrame.new
- euler=CFrame.fromEulerAnglesXYZ
- angles=CFrame.Angles
- cloaked=false
- necko=cf(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
- necko2=cf(0, -0.5, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
- LHC0=cf(-1,-1,0,-0,-0,-1,0,1,0,1,0,0)
- LHC1=cf(-0.5,1,0,-0,-0,-1,0,1,0,1,0,0)
- RHC0=cf(1,-1,0,0,0,1,0,1,0,-1,-0,-0)
- RHC1=cf(0.5,1,0,0,0,1,0,1,0,-1,-0,-0)
- RootPart=Character.HumanoidRootPart
- RootJoint=RootPart.RootJoint
- RootCF=euler(-1.57,0,3.14)
- attack = false
- attackdebounce = false
- deb=false
- equipped=true
- hand=false
- MMouse=nil
- combo=0
- mana=0
- trispeed=.2
- attackmode='none'
- local idle=0
- local Anim="Idle"
- local Effects={}
- local gun=false
- local shoot=false
- local sine = 0
- local change = 1
- player=nil
- mouse=Player:GetMouse()
- --save shoulders
- RSH, LSH=nil, nil
- --welds
- RW, LW=Instance.new("Weld"), Instance.new("Weld")
- RW.Name="Right Shoulder" LW.Name="Left Shoulder"
- LH=Torso["Left Hip"]
- RH=Torso["Right Hip"]
- TorsoColor=Torso.BrickColor
- function NoOutline(Part)
- Part.TopSurface,Part.BottomSurface,Part.LeftSurface,Part.RightSurface,Part.FrontSurface,Part.BackSurface = 10,10,10,10,10,10
- end
- player=Player
- ch=Character
- RSH=ch.Torso["Right Shoulder"]
- LSH=ch.Torso["Left Shoulder"]
- --
- RSH.Parent=nil
- LSH.Parent=nil
- --
- RW.Name="Right Shoulder"
- RW.Part0=ch.Torso
- RW.C0=cf(1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.3, 0, -0.5)
- RW.C1=cf(0, 0.5, 0)
- RW.Part1=ch["Right Arm"]
- RW.Parent=ch.Torso
- --
- LW.Name="Left Shoulder"
- LW.Part0=ch.Torso
- LW.C0=cf(-1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.7, 0, 0.8)
- LW.C1=cf(0, 0.5, 0)
- LW.Part1=ch["Left Arm"]
- LW.Parent=ch.Torso
- local Stats=Instance.new("BoolValue")
- Stats.Name="Stats"
- Stats.Parent=Character
- local Atk=Instance.new("NumberValue")
- Atk.Name="Damage"
- Atk.Parent=Stats
- Atk.Value=1
- local Def=Instance.new("NumberValue")
- Def.Name="Defense"
- Def.Parent=Stats
- Def.Value=1
- local Speed=Instance.new("NumberValue")
- Speed.Name="Speed"
- Speed.Parent=Stats
- Speed.Value=1
- local Mvmt=Instance.new("NumberValue")
- Mvmt.Name="Movement"
- Mvmt.Parent=Stats
- Mvmt.Value=1
- local donum=0
- function part(formfactor,parent,reflectance,transparency,brickcolor,name,size)
- local fp=it("Part")
- fp.formFactor=formfactor
- fp.Parent=parent
- fp.Reflectance=reflectance
- fp.Transparency=transparency
- fp.CanCollide=false
- fp.Locked=true
- fp.BrickColor=brickcolor
- fp.Name=name
- fp.Size=size
- fp.Position=Torso.Position
- NoOutline(fp)
- fp.Material="SmoothPlastic"
- fp:BreakJoints()
- return fp
- end
- function mesh(Mesh,part,meshtype,meshid,offset,scale)
- local mesh=it(Mesh)
- mesh.Parent=part
- if Mesh=="SpecialMesh" then
- mesh.MeshType=meshtype
- if meshid~="nil" then
- mesh.MeshId="http://www.roblox.com/asset/?id="..meshid
- end
- end
- mesh.Offset=offset
- mesh.Scale=scale
- return mesh
- end
- function weld(parent,part0,part1,c0)
- local weld=it("Weld")
- weld.Parent=parent
- weld.Part0=part0
- weld.Part1=part1
- weld.C0=c0
- return weld
- end
- local Color1=Torso.BrickColor
- local bodvel=Instance.new("BodyVelocity")
- local bg=Instance.new("BodyGyro")
- function swait(num)
- if num==0 or num==nil then
- game:service'RunService'.Stepped:wait(0)
- else
- for i=0,num do
- game:service'RunService'.Stepped:wait(0)
- end
- end
- end
- so = function(id,par,vol,pit)
- coroutine.resume(coroutine.create(function()
- local sou = Instance.new("Sound",par or workspace)
- sou.Volume=vol
- sou.Pitch=pit or 1
- sou.SoundId=id
- swait()
- sou:play()
- game:GetService("Debris"):AddItem(sou,6)
- end))
- end
- function clerp(a,b,t)
- local qa = {QuaternionFromCFrame(a)}
- local qb = {QuaternionFromCFrame(b)}
- local ax, ay, az = a.x, a.y, a.z
- local bx, by, bz = b.x, b.y, b.z
- local _t = 1-t
- return QuaternionToCFrame(_t*ax + t*bx, _t*ay + t*by, _t*az + t*bz,QuaternionSlerp(qa, qb, t))
- end
- function QuaternionFromCFrame(cf)
- local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
- local trace = m00 + m11 + m22
- if trace > 0 then
- local s = math.sqrt(1 + trace)
- local recip = 0.5/s
- return (m21-m12)*recip, (m02-m20)*recip, (m10-m01)*recip, s*0.5
- else
- local i = 0
- if m11 > m00 then
- i = 1
- end
- if m22 > (i == 0 and m00 or m11) then
- i = 2
- end
- if i == 0 then
- local s = math.sqrt(m00-m11-m22+1)
- local recip = 0.5/s
- return 0.5*s, (m10+m01)*recip, (m20+m02)*recip, (m21-m12)*recip
- elseif i == 1 then
- local s = math.sqrt(m11-m22-m00+1)
- local recip = 0.5/s
- return (m01+m10)*recip, 0.5*s, (m21+m12)*recip, (m02-m20)*recip
- elseif i == 2 then
- local s = math.sqrt(m22-m00-m11+1)
- local recip = 0.5/s return (m02+m20)*recip, (m12+m21)*recip, 0.5*s, (m10-m01)*recip
- end
- end
- end
- function QuaternionToCFrame(px, py, pz, x, y, z, w)
- local xs, ys, zs = x + x, y + y, z + z
- local wx, wy, wz = w*xs, w*ys, w*zs
- local xx = x*xs
- local xy = x*ys
- local xz = x*zs
- local yy = y*ys
- local yz = y*zs
- local zz = z*zs
- return CFrame.new(px, py, pz,1-(yy+zz), xy - wz, xz + wy,xy + wz, 1-(xx+zz), yz - wx, xz - wy, yz + wx, 1-(xx+yy))
- end
- function QuaternionSlerp(a, b, t)
- local cosTheta = a[1]*b[1] + a[2]*b[2] + a[3]*b[3] + a[4]*b[4]
- local startInterp, finishInterp;
- if cosTheta >= 0.0001 then
- if (1 - cosTheta) > 0.0001 then
- local theta = math.acos(cosTheta)
- local invSinTheta = 1/math.sin(theta)
- startInterp = math.sin((1-t)*theta)*invSinTheta
- finishInterp = math.sin(t*theta)*invSinTheta
- else
- startInterp = 1-t
- finishInterp = t
- end
- else
- if (1+cosTheta) > 0.0001 then
- local theta = math.acos(-cosTheta)
- local invSinTheta = 1/math.sin(theta)
- startInterp = math.sin((t-1)*theta)*invSinTheta
- finishInterp = math.sin(t*theta)*invSinTheta
- else
- startInterp = t-1
- finishInterp = t
- end
- end
- return a[1]*startInterp + b[1]*finishInterp, a[2]*startInterp + b[2]*finishInterp, a[3]*startInterp + b[3]*finishInterp, a[4]*startInterp + b[4]*finishInterp
- end
- local function CFrameFromTopBack(at, top, back)
- local right = top:Cross(back)
- return CFrame.new(at.x, at.y, at.z,
- right.x, top.x, back.x,
- right.y, top.y, back.y,
- right.z, top.z, back.z)
- end
- function Triangle(a, b, c)
- local edg1 = (c-a):Dot((b-a).unit)
- local edg2 = (a-b):Dot((c-b).unit)
- local edg3 = (b-c):Dot((a-c).unit)
- if edg1 <= (b-a).magnitude and edg1 >= 0 then
- a, b, c = a, b, c
- elseif edg2 <= (c-b).magnitude and edg2 >= 0 then
- a, b, c = b, c, a
- elseif edg3 <= (a-c).magnitude and edg3 >= 0 then
- a, b, c = c, a, b
- else
- assert(false, "unreachable")
- end
- local len1 = (c-a):Dot((b-a).unit)
- local len2 = (b-a).magnitude - len1
- local width = (a + (b-a).unit*len1 - c).magnitude
- local maincf = CFrameFromTopBack(a, (b-a):Cross(c-b).unit, -(b-a).unit)
- local list = {}
- if len1 > 0.01 then
- local w1 = Instance.new('WedgePart', m)
- game:GetService("Debris"):AddItem(w1,5)
- w1.Material = "SmoothPlastic"
- w1.FormFactor = 'Custom'
- w1.BrickColor = BrickColor.new("Really red")
- w1.Transparency = 0
- w1.Reflectance = 0
- w1.Material = "SmoothPlastic"
- w1.CanCollide = false
- local l1 = Instance.new("PointLight",w1)
- l1.Color = Color3.new(170,0,0)
- NoOutline(w1)
- local sz = Vector3.new(0.2, width, len1)
- w1.Size = sz
- local sp = Instance.new("SpecialMesh",w1)
- sp.MeshType = "Wedge"
- sp.Scale = Vector3.new(0,1,1) * sz/w1.Size
- w1:BreakJoints()
- w1.Anchored = true
- w1.Parent = workspace
- w1.Transparency = 0.7
- table.insert(Effects,{w1,"Disappear",.01})
- w1.CFrame = maincf*CFrame.Angles(math.pi,0,math.pi/2)*CFrame.new(0,width/2,len1/2)
- table.insert(list,w1)
- end
- if len2 > 0.01 then
- local w2 = Instance.new('WedgePart', m)
- game:GetService("Debris"):AddItem(w2,5)
- w2.Material = "SmoothPlastic"
- w2.FormFactor = 'Custom'
- w2.BrickColor = BrickColor.new("Really red")
- w2.Transparency = 0
- w2.Reflectance = 0
- w2.Material = "SmoothPlastic"
- w2.CanCollide = false
- local l2 = Instance.new("PointLight",w2)
- l2.Color = Color3.new(170,0,0)
- NoOutline(w2)
- local sz = Vector3.new(0.2, width, len2)
- w2.Size = sz
- local sp = Instance.new("SpecialMesh",w2)
- sp.MeshType = "Wedge"
- sp.Scale = Vector3.new(0,1,1) * sz/w2.Size
- w2:BreakJoints()
- w2.Anchored = true
- w2.Parent = workspace
- w2.Transparency = 0.7
- table.insert(Effects,{w2,"Disappear",.01})
- w2.CFrame = maincf*CFrame.Angles(math.pi,math.pi,-math.pi/2)*CFrame.new(0,width/2,-len1 - len2/2)
- table.insert(list,w2)
- end
- return unpack(list)
- end
- function Damagefunc(Part, hit, minim, maxim, knockback, Type, Property, Delay, HitSound, HitPitch)
- if hit.Parent == nil then
- return
- end
- local h = hit.Parent:FindFirstChild("Humanoid")
- for _, v in pairs(hit.Parent:children()) do
- if v:IsA("Humanoid") then
- h = v
- end
- end
- if h ~= nil and hit.Parent.Name ~= Character.Name and hit.Parent:FindFirstChild("Torso") ~= nil then
- if hit.Parent:findFirstChild("DebounceHit") ~= nil and hit.Parent.DebounceHit.Value == true then
- return
- end
- local c = Create("ObjectValue")({
- Name = "creator",
- Value = game:service("Players").LocalPlayer,
- Parent = h
- })
- game:GetService("Debris"):AddItem(c, 0.5)
- if HitSound ~= nil and HitPitch ~= nil then
- CFuncs.Sound.Create(HitSound, hit, 1, HitPitch)
- end
- local Damage = math.huge
- local blocked = false
- local block = hit.Parent:findFirstChild("Block")
- if block ~= nil and block.className == "IntValue" and block.Value > 0 then
- blocked = true
- block.Value = block.Value - 1
- print(block.Value)
- end
- if blocked == false then
- HitHealth = h.Health
- h.Health = h.Health - Damage
- if HitHealth ~= h.Health and HitHealth ~= 0 and 0 >= h.Health and h.Parent.Name ~= "Hologram" then
- print("gained kill")
- end
- ShowDamage(Part.CFrame * CFrame.new(0, 0, Part.Size.Z / 2).p + Vector3.new(0, 1.5, 0), -Damage, 1.5, Part.BrickColor.Color)
- else
- h.Health = h.Health - Damage / 2
- ShowDamage(Part.CFrame * CFrame.new(0, 0, Part.Size.Z / 2).p + Vector3.new(0, 1.5, 0), -Damage, 1.5, Part.BrickColor.Color)
- end
- if Type == "Knockdown" then
- local hum = hit.Parent.Humanoid
- hum.PlatformStand = true
- coroutine.resume(coroutine.create(function(HHumanoid)
- swait(1)
- HHumanoid.PlatformStand = false
- end), hum)
- local angle = hit.Position - (Property.Position + Vector3.new(0, 0, 0)).unit
- local bodvol = Create("BodyVelocity")({
- velocity = angle * knockback,
- P = 5000,
- maxForce = Vector3.new(8000, 8000, 8000),
- Parent = hit
- })
- local rl = Create("BodyAngularVelocity")({
- P = 3000,
- maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000,
- angularvelocity = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10)),
- Parent = hit
- })
- game:GetService("Debris"):AddItem(bodvol, 0.5)
- game:GetService("Debris"):AddItem(rl, 0.5)
- elseif Type == "Normal" then
- local vp = Create("BodyVelocity")({
- P = 500,
- maxForce = Vector3.new(math.huge, 0, math.huge),
- velocity = Property.CFrame.lookVector * knockback + Property.Velocity / 1.05
- })
- if knockback > 0 then
- vp.Parent = hit.Parent.Torso
- end
- game:GetService("Debris"):AddItem(vp, 0.5)
- elseif Type == "Up" then
- local bodyVelocity = Create("BodyVelocity")({
- velocity = Vector3.new(0, 20, 0),
- P = 5000,
- maxForce = Vector3.new(8000, 8000, 8000),
- Parent = hit
- })
- game:GetService("Debris"):AddItem(bodyVelocity, 0.5)
- local bodyVelocity = Create("BodyVelocity")({
- velocity = Vector3.new(0, 20, 0),
- P = 5000,
- maxForce = Vector3.new(8000, 8000, 8000),
- Parent = hit
- })
- game:GetService("Debris"):AddItem(bodyVelocity, 1)
- elseif Type == "Leech" then
- local hum = hit.Parent.Humanoid
- if hum ~= nil then
- for i = 0, 2 do
- Effects.Sphere.Create(BrickColor.new("Bright red"), hit.Parent.Torso.CFrame * cn(0, 0, 0) * angles(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50)), 1, 15, 1, 0, 5, 0, 0.02)
- end
- Humanoid.Health = Humanoid.Health + 10
- end
- elseif Type == "UpKnock" then
- local hum = hit.Parent.Humanoid
- hum.PlatformStand = true
- if hum ~= nil then
- hitr = true
- end
- coroutine.resume(coroutine.create(function(HHumanoid)
- swait(5)
- HHumanoid.PlatformStand = false
- hitr = false
- end), hum)
- local bodyVelocity = Create("BodyVelocity")({
- velocity = Vector3.new(0, 20, 0),
- P = 5000,
- maxForce = Vector3.new(8000, 8000, 8000),
- Parent = hit
- })
- game:GetService("Debris"):AddItem(bodyVelocity, 0.5)
- local bodyVelocity = Create("BodyVelocity")({
- velocity = Vector3.new(0, 20, 0),
- P = 5000,
- maxForce = Vector3.new(8000, 8000, 8000),
- Parent = hit
- })
- game:GetService("Debris"):AddItem(bodyVelocity, 1)
- elseif Type == "Snare" then
- local bp = Create("BodyPosition")({
- P = 2000,
- D = 100,
- maxForce = Vector3.new(math.huge, math.huge, math.huge),
- position = hit.Parent.Torso.Position,
- Parent = hit.Parent.Torso
- })
- game:GetService("Debris"):AddItem(bp, 1)
- elseif Type == "Slashnare" then
- Effects.Block.Create(BrickColor.new("Pastel Blue"), hit.Parent.Torso.CFrame * cn(0, 0, 0), 15*4, 15*4, 15*4, 3*4, 3*4, 3*4, 0.07)
- for i = 1, math.random(4, 5) do
- Effects.Sphere.Create(BrickColor.new("Teal"), hit.Parent.Torso.CFrame * cn(math.random(-5, 5), math.random(-5, 5), math.random(-5, 5)) * angles(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50)), 1, 15, 1, 0, 5, 0, 0.02)
- end
- local bp = Create("BodyPosition")({
- P = 2000,
- D = 100,
- maxForce = Vector3.new(math.huge, math.huge, math.huge),
- position = hit.Parent.Torso.Position,
- Parent = hit.Parent.Torso
- })
- game:GetService("Debris"):AddItem(bp, 1)
- elseif Type == "Spike" then
- CreateBigIceSword(hit.Parent.Torso.CFrame)
- local bp = Create("BodyPosition")({
- P = 2000,
- D = 100,
- maxForce = Vector3.new(math.huge, math.huge, math.huge),
- position = hit.Parent.Torso.Position,
- Parent = hit.Parent.Torso
- })
- game:GetService("Debris"):AddItem(bp, 1)
- elseif Type == "Freeze" then
- local BodPos = Create("BodyPosition")({
- P = 50000,
- D = 1000,
- maxForce = Vector3.new(math.huge, math.huge, math.huge),
- position = hit.Parent.Torso.Position,
- Parent = hit.Parent.Torso
- })
- local BodGy = Create("BodyGyro")({
- maxTorque = Vector3.new(400000, 400000, 400000) * math.huge,
- P = 20000,
- Parent = hit.Parent.Torso,
- cframe = hit.Parent.Torso.CFrame
- })
- hit.Parent.Torso.Anchored = true
- coroutine.resume(coroutine.create(function(Part)
- swait(1.5)
- Part.Anchored = false
- end), hit.Parent.Torso)
- game:GetService("Debris"):AddItem(BodPos, 3)
- game:GetService("Debris"):AddItem(BodGy, 3)
- end
- local debounce = Create("BoolValue")({
- Name = "DebounceHit",
- Parent = hit.Parent,
- Value = true
- })
- game:GetService("Debris"):AddItem(debounce, Delay)
- c = Instance.new("ObjectValue")
- c.Name = "creator"
- c.Value = Player
- c.Parent = h
- game:GetService("Debris"):AddItem(c, 0.5)
- end
- end
- function ShowDamage(Pos, Text, Time, Color)
- local Rate = 0.03333333333333333
- local Pos = Pos or Vector3.new(0, 0, 0)
- local Text = Text or ""
- local Time = Time or 2
- local Color = Color or Color3.new(1, 0, 1)
- local EffectPart = CreatePart(workspace, "SmoothPlastic", 0, 1, BrickColor.new(Color), "Effect", Vector3.new(0, 0, 0))
- EffectPart.Anchored = true
- local BillboardGui = Create("BillboardGui")({
- Size = UDim2.new(3, 0, 3, 0),
- Adornee = EffectPart,
- Parent = EffectPart
- })
- local TextLabel = Create("TextLabel")({
- BackgroundTransparency = 1,
- Size = UDim2.new(1, 0, 1, 0),
- Text = Text,
- TextColor3 = Color,
- TextScaled = true,
- Font = Enum.Font.ArialBold,
- Parent = BillboardGui
- })
- game.Debris:AddItem(EffectPart, Time + 0.1)
- EffectPart.Parent = game:GetService("Workspace")
- delay(0, function()
- local Frames = Time / Rate
- for Frame = 1, Frames do
- wait(Rate)
- local Percent = Frame / Frames
- EffectPart.CFrame = CFrame.new(Pos) + Vector3.new(0, Percent, 0)
- TextLabel.TextTransparency = Percent
- end
- if EffectPart and EffectPart.Parent then
- EffectPart:Destroy()
- end
- end)
- end
- function MagniDamage(Part, magni, mindam, maxdam, knock, Type)
- for _, c in pairs(workspace:children()) do
- local hum = c:findFirstChild("Humanoid")
- if hum ~= nil then
- local head = c:findFirstChild("Torso")
- if head ~= nil then
- local targ = head.Position - Part.Position
- local mag = targ.magnitude
- if magni >= mag and c.Name ~= Player.Name then
- Damagefunc(head, head, mindam, maxdam, knock, Type, RootPart, 0.1, "rbxassetid://231917784", 1)
- end
- end
- end
- end
- end
- function MagniDamageWithEffect(Part, magni, mindam, maxdam, knock, Type)
- for _, c in pairs(workspace:children()) do
- local hum = c:findFirstChild("Humanoid")
- if hum ~= nil then
- local head = c:findFirstChild("Torso")
- if head ~= nil then
- local targ = head.Position - Part.Position
- local mag = targ.magnitude
- if magni >= mag and c.Name ~= Player.Name then
- MagicBlock(BrickColor.new("Pastel light blue"),head.CFrame,5,5,5,1,1,1,0.05)
- Damagefunc(head, head, mindam, maxdam, knock, Type, RootPart, 0.1, "rbxassetid://231917784", 1)
- end
- end
- end
- end
- end
- function rayCast(Pos, Dir, Max, Ignore) -- Origin Position , Direction, MaxDistance , IgnoreDescendants
- return game:service("Workspace"):FindPartOnRay(Ray.new(Pos, Dir.unit * (Max or 999.999)), Ignore)
- end
- function SkullEffect(brickcolor,cframe,x1,y1,z1,delay)
- local prt=part(3,workspace,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.CFrame=cframe
- local msh=mesh("SpecialMesh",prt,"FileMesh","http://www.roblox.com/asset/?id=4770583",vt(0,0,0),vt(x1,y1,z1))
- --http://www.roblox.com/asset/?id=4770560
- game:GetService("Debris"):AddItem(prt,2)
- CF=prt.CFrame
- coroutine.resume(coroutine.create(function(Part,Mesh,TehCF)
- for i=0,1,0.2 do
- wait()
- Part.CFrame=CF*cf(0,0,-0.4)
- end
- for i=0,1,delay do
- wait()
- --Part.CFrame=CF*cf((math.random(-1,0)+math.random())/5,(math.random(-1,0)+math.random())/5,(math.random(-1,0)+math.random())/5)
- Mesh.Scale=Mesh.Scale
- end
- for i=0,1,0.1 do
- wait()
- Part.Transparency=i
- end
- Part.Parent=nil
- end),prt,msh,CF)
- end
- function MagicBlock(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay)
- local prt=part(3,char,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.Material = "Neon"
- prt.CFrame=cframe
- prt.CFrame=prt.CFrame*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))
- msh=mesh("BlockMesh",prt,"","",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,5)
- coroutine.resume(coroutine.create(function(Part,Mesh)
- for i=0,1,delay do
- swait()
- Part.CFrame=Part.CFrame*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))
- Part.Transparency=i
- Mesh.Scale=Mesh.Scale+vt(x3,y3,z3)
- end
- Part.Parent=nil
- end),prt,msh)
- end
- function MagicBlockSteady(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay,rottype)
- local prt=part(3,char,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.Material = "Neon"
- prt.CFrame=cframe
- msh=mesh("BlockMesh",prt,"","",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,5)
- coroutine.resume(coroutine.create(function(Part,Mesh)
- local rtype = rottype
- for i=0,1,delay do
- swait()
- if rtype == 1 then
- prt.CFrame = prt.CFrame*CFrame.Angles(0,0,0.1)
- elseif rtype == 2 then
- prt.CFrame = prt.CFrame*CFrame.Angles(0,0,-0.1)
- end
- Part.Transparency=i
- Mesh.Scale=Mesh.Scale+vt(x3,y3,z3)
- end
- Part.Parent=nil
- end),prt,msh)
- end
- function MagicSphere(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay)
- local prt=part(3,char,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.CFrame=cframe
- prt.CFrame=prt.CFrame*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))
- msh=mesh("SpecialMesh",prt,"Sphere","",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,5)
- coroutine.resume(coroutine.create(function(Part,Mesh)
- for i=0,1,delay do
- wait()
- Part.Transparency=i
- Mesh.Scale=Mesh.Scale+vt(x3,y3,z3)
- end
- Part.Parent=nil
- end),prt,msh)
- end
- function MagicBlockSteady(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay,rottype)
- local prt=part(3,char,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.Material = "Neon"
- prt.CFrame=cframe
- msh=mesh("BlockMesh",prt,"","",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,5)
- coroutine.resume(coroutine.create(function(Part,Mesh)
- local rtype = rottype
- for i=0,1,delay do
- swait()
- if rtype == 1 then
- prt.CFrame = prt.CFrame*CFrame.Angles(0,0,0.1)
- elseif rtype == 2 then
- prt.CFrame = prt.CFrame*CFrame.Angles(0,0,-0.1)
- end
- Part.Transparency=i
- Mesh.Scale=Mesh.Scale+vt(x3,y3,z3)
- end
- Part.Parent=nil
- end),prt,msh)
- end
- function MagicShock(brickcolor,cframe,x1,y1,x3,y3,delay,rottype)
- local prt=part(3,char,1,1,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.Material = "Neon"
- prt.CFrame=cframe
- local dec = decal(prt.Color,"http://www.roblox.com/asset/?id=874580939","Front",prt)
- local dec2 = decal(prt.Color,"http://www.roblox.com/asset/?id=874580939","Front",prt)
- msh=mesh("BlockMesh",prt,"","",vt(0,0,0),vt(x1,y1,0.01))
- game:GetService("Debris"):AddItem(prt,5)
- coroutine.resume(coroutine.create(function(Part,Mesh)
- local rtype = rottype
- for i=0,1,delay do
- swait()
- if rtype == 1 then
- prt.CFrame = prt.CFrame*CFrame.Angles(0,0,0.1)
- elseif rtype == 2 then
- prt.CFrame = prt.CFrame*CFrame.Angles(0,0,-0.1)
- end
- dec.Transparency=i
- dec2.Transparency=i
- Mesh.Scale=Mesh.Scale+vt(x3,y3,0)
- end
- Part.Parent=nil
- end),prt,msh)
- end
- function MagicShockAlt(brickcolor,cframe,x1,y1,x3,y3,delay,rottype)
- local prt=part(3,char,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.Material = "Neon"
- prt.CFrame=cframe
- msh=mesh("BlockMesh",prt,"","",vt(0,0,0),vt(x1,y1,0.01))
- game:GetService("Debris"):AddItem(prt,5)
- coroutine.resume(coroutine.create(function(Part,Mesh)
- local rtype = rottype
- for i=0,1,delay do
- swait()
- if rtype == 1 then
- prt.CFrame = prt.CFrame*CFrame.Angles(0,0,0.1)
- elseif rtype == 2 then
- prt.CFrame = prt.CFrame*CFrame.Angles(0,0,-0.1)
- end
- prt.Transparency=i
- Mesh.Scale=Mesh.Scale+vt(x3,y3,0)
- end
- Part.Parent=nil
- end),prt,msh)
- end
- function MagicShockAltCircle(brickcolor,cframe,x1,z1,x3,z3,delay,rottype)
- local prt=part(3,char,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.Material = "Neon"
- prt.CFrame=cframe
- msh=mesh("BlockMesh",prt,"","",vt(0,0,0),vt(x1,1,z1))
- game:GetService("Debris"):AddItem(prt,5)
- coroutine.resume(coroutine.create(function(Part,Mesh)
- local rtype = rottype
- for i=0,1,delay do
- swait()
- if rtype == 1 then
- prt.CFrame = prt.CFrame*CFrame.Angles(0,0.1,0)
- elseif rtype == 2 then
- prt.CFrame = prt.CFrame*CFrame.Angles(0,-0.1,0)
- end
- prt.Transparency=i
- Mesh.Scale=Mesh.Scale+vt(x3,0,z3)
- end
- Part.Parent=nil
- end),prt,msh)
- end
- function MagicShockTrailAlt(brickcolor,cframe,x1,y1,z1,x3,y3,delay,rottype)
- local prt=part(3,char,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.Material = "Neon"
- prt.CFrame=cframe
- msh=mesh("BlockMesh",prt,"","",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,5)
- coroutine.resume(coroutine.create(function(Part,Mesh)
- local rtype = rottype
- for i=0,1,delay do
- swait()
- if rtype == 1 then
- prt.CFrame = prt.CFrame*CFrame.Angles(0,0,0.1)
- elseif rtype == 2 then
- prt.CFrame = prt.CFrame*CFrame.Angles(0,0,-0.1)
- end
- prt.Transparency=i
- Mesh.Scale=Mesh.Scale+vt(x3,y3,0)
- end
- Part.Parent=nil
- end),prt,msh)
- end
- function MagicShockTrailAlt2(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay,rottype)
- local prt=part(3,char,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.Material = "Neon"
- prt.CFrame=cframe
- msh=mesh("BlockMesh",prt,"","",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,5)
- coroutine.resume(coroutine.create(function(Part,Mesh)
- local rtype = rottype
- for i=0,1,delay do
- swait()
- if rtype == 1 then
- prt.CFrame = prt.CFrame*CFrame.Angles(0,0,0.1)
- elseif rtype == 2 then
- prt.CFrame = prt.CFrame*CFrame.Angles(0,0,-0.1)
- end
- prt.Transparency=i
- Mesh.Scale=Mesh.Scale+vt(x3,y3,z3)
- end
- Part.Parent=nil
- end),prt,msh)
- end
- function MagicBlock2(brickcolor,cframe,Parent,x1,y1,z1,x3,y3,z3,delay)
- local prt=part(3,char,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=false
- prt.CFrame=cframe
- msh=mesh("BlockMesh",prt,"","",vt(0,0,0),vt(x1,y1,z1))
- local wld=weld(prt,prt,Parent,cframe)
- game:GetService("Debris"):AddItem(prt,5)
- coroutine.resume(coroutine.create(function(Part,Mesh,Weld)
- for i=0,1,delay do
- wait()
- Weld.C0=euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))*cframe
- --Part.CFrame=Part.CFrame*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))
- Part.Transparency=i
- Mesh.Scale=Mesh.Scale+vt(x3,y3,z3)
- end
- Part.Parent=nil
- end),prt,msh,wld)
- end
- function MagicBlock3(brickcolor,cframe,Parent,x1,y1,z1,x3,y3,z3,delay)
- local prt=part(3,workspace,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=false
- prt.CFrame=cframe
- msh=mesh("BlockMesh",prt,"","",vt(0,0,0),vt(x1,y1,z1))
- local wld=weld(prt,prt,Parent,euler(0,0,0)*cf(0,0,0))
- game:GetService("Debris"):AddItem(prt,5)
- coroutine.resume(coroutine.create(function(Part,Mesh,Weld)
- for i=0,1,delay do
- wait()
- Weld.C0=euler(i*20,0,0)
- --Part.CFrame=Part.CFrame*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))
- Part.Transparency=i
- Mesh.Scale=Mesh.Scale+vt(x3,y3,z3)
- end
- Part.Parent=nil
- end),prt,msh,wld)
- end
- function MagicCircle2(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay)
- local prt=part(3,workspace,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.CFrame=cframe
- local msh=mesh("CylinderMesh",prt,"","",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,2)
- coroutine.resume(coroutine.create(function(Part,Mesh)
- for i=0,1,delay do
- wait()
- Part.CFrame=Part.CFrame
- Mesh.Scale=Mesh.Scale+vt(x3,y3,z3)
- local prt2=part(3,workspace,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt2.Anchored=true
- prt2.CFrame=cframe*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))
- local msh2=mesh("SpecialMesh",prt2,"Sphere","",vt(0,0,0),vt(0.5,0.5,0.5))
- game:GetService("Debris"):AddItem(prt2,2)
- coroutine.resume(coroutine.create(function(Part,Mesh)
- for i=0,1,0.1 do
- wait()
- Part.CFrame=Part.CFrame*cf(0,0.5,0)
- end
- Part.Parent=nil
- end),prt2,msh2)
- end
- for i=0,1,delay*2 do
- wait()
- Part.CFrame=Part.CFrame
- Mesh.Scale=vt((x1+x3)-(x1+x3)*i,(y1+y3)-(y1+y3)*i,(z1+z3)-(z1+z3)*i)
- end
- Part.Parent=nil
- end),prt,msh)
- end
- function MagicCircle(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay)
- local prt=part(3,workspace,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.CFrame=cframe
- local msh=mesh("SpecialMesh",prt,"Sphere","",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,2)
- coroutine.resume(coroutine.create(function(Part,Mesh)
- for i=0,1,delay do
- wait()
- Part.CFrame=Part.CFrame
- Part.Transparency=i
- Mesh.Scale=Mesh.Scale+vt(x3,y3,z3)
- end
- Part.Parent=nil
- end),prt,msh)
- end
- function BreakEffect(brickcolor,cframe,x1,y1,z1)
- local prt=part(3,workspace,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.CFrame=cframe*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))
- local msh=mesh("SpecialMesh",prt,"Sphere","",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,2)
- coroutine.resume(coroutine.create(function(Part,CF,Numbb,randnumb)
- CF=Part.CFrame
- Numbb=0
- randnumb=math.random()/10
- rand1=math.random()/10
- for i=0,1,rand1 do
- wait()
- CF=CF*cf(0,math.random()/2,0)
- --Part.CFrame=Part.CFrame*euler(0.5,0,0)*cf(0,1,0)
- Part.CFrame=CF*euler(Numbb,0,0)
- Part.Transparency=i
- Numbb=Numbb+randnumb
- end
- Part.Parent=nil
- end),prt,CF,Numbb,randnumb)
- end
- function MagicWaveThing(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay)
- local prt=part(3,workspace,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.CFrame=cframe
- msh=mesh("SpecialMesh",prt,"FileMesh","http://www.roblox.com/asset/?id=1051557",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,5)
- coroutine.resume(coroutine.create(function(Part,Mesh)
- for i=0,1,delay do
- wait()
- Part.CFrame=Part.CFrame*euler(0,0.7,0)
- Part.Transparency=i
- Mesh.Scale=Mesh.Scale+vt(x3,y3,z3)
- end
- Part.Parent=nil
- end),prt,msh)
- end
- function WaveEffect(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay)
- local prt=part(3,workspace,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.CFrame=cframe
- msh=mesh("SpecialMesh",prt,"FileMesh","http://www.roblox.com/asset/?id=20329976",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,2)
- coroutine.resume(coroutine.create(function(Part,Mesh)
- for i=0,1,delay do
- wait()
- Part.CFrame=Part.CFrame*cf(0,y3/2,0)
- Part.Transparency=i
- Mesh.Scale=Mesh.Scale+vt(x3,y3,z3)
- end
- Part.Parent=nil
- end),prt,msh)
- end
- function StravEffect(brickcolor,cframe,x,y,z,x1,y1,z1,delay)
- local prt=part(3,workspace,0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
- prt.Anchored=true
- prt.CFrame=cframe*cf(x,y,z)
- msh=mesh("SpecialMesh",prt,"FileMesh","rbxassetid://168892363",vt(0,0,0),vt(x1,y1,z1))
- game:GetService("Debris"):AddItem(prt,5)
- coroutine.resume(coroutine.create(function(Part,Mesh,ex,why,zee)
- local num=math.random()
- local num2=math.random(-3,2)+math.random()
- local numm=0
- for i=0,1,delay*2 do
- swait()
- Part.CFrame=cframe*euler(0,numm*num*10,0)*cf(ex,why,zee)*cf(-i*10,num2,0)
- Part.Transparency=i
- numm=numm+0.01
- end
- Part.Parent=nil
- Mesh.Parent=nil
- end),prt,msh,x,y,z)
- end
- function dmgstart(dmg,what)
- hitcon = what.Touched:connect(function(hit)
- local hum = hit.Parent:FindFirstChild("Humanoid")
- if hum and not hum:IsDescendantOf(Character) then
- hum:TakeDamage(dmg)
- end
- end)
- end
- function dmgstop()
- hitcon:disconnect()
- end
- function Cloak()
- Face.Parent=nil
- cloaked=true
- for _,v in pairs(Torso.Parent:children()) do
- if v.className=="Part" and v.Name~="HumanoidRootPart" then
- coroutine.resume(coroutine.create(function()
- for i=0,1,0.2 do
- wait()
- v.Transparency=i
- end
- v.Transparency=1
- end))
- end
- if v.className=="Hat" then
- hatp=v.Handle
- coroutine.resume(coroutine.create(function(derp)
- for i=0,1,0.2 do
- wait()
- derp.Transparency=i
- end
- derp.Transparency=1
- end),hatp)
- end
- end
- for _,v in pairs(m:children()) do
- if v.className=="Part" then
- coroutine.resume(coroutine.create(function()
- for i=0,1,0.2 do
- wait()
- v.Transparency=i
- end
- v.Transparency=1
- end))
- end
- end
- end
- function UnCloak()
- so("http://roblox.com/asset/?id=2767090",Torso,1,1.1)
- Face.Parent=Head
- cloaked=false
- for _,v in pairs(Torso.Parent:children()) do
- if v.className=="Part" and v.Name~="HumanoidRootPart" then
- coroutine.resume(coroutine.create(function()
- for i=0,1,0.1 do
- wait()
- v.Transparency=v.Transparency-0.1
- end
- v.Transparency=0
- end))
- end
- if v.className=="Hat" then
- hatp=v.Handle
- coroutine.resume(coroutine.create(function(derp)
- for i=0,1,0.1 do
- wait()
- derp.Transparency=derp.Transparency-0.1
- end
- derp.Transparency=0
- end),hatp)
- end
- end
- for _,v in pairs(m:children()) do
- if v.className=="Part" and v.Name~="hitbox" and v.Name~='tip' then
- coroutine.resume(coroutine.create(function()
- for i=0,1,0.1 do
- wait()
- v.Transparency=v.Transparency-0.1
- end
- v.Transparency=0
- end))
- v.Transparency=0
- end
- end
- end
- local origcolor = BrickColor.new("Toothpaste")
- ---- This section of explosions.
- function Explode(rad,par,pitch,vol,mindam,maxdam)
- local expart = Instance.new("Part",char)
- local expart2 = Instance.new("Part",char)
- local rin = Instance.new("Part",char)
- local rin2 = Instance.new("Part",char)
- local partMesh = Instance.new("SpecialMesh",expart)
- partMesh.MeshType = "Sphere"
- local partMesh2 = Instance.new("SpecialMesh",expart2)
- partMesh2.MeshType = "Sphere"
- local partMesh3 = Instance.new("SpecialMesh",rin)
- partMesh3.MeshType = "Brick"
- local partMesh4 = Instance.new("SpecialMesh",rin2)
- partMesh4.MeshType = "Brick"
- CFuncs["Sound"].Create("rbxassetid://165970126", expart,vol, pitch)
- partMesh.Scale = vt(rad,rad,rad)
- expart.Size = vt(1,1,1)
- expart.Transparency = 0
- expart.Anchored = true
- expart.Material = "Neon"
- expart.BrickColor = bc("White")
- expart.CFrame = par.CFrame
- partMesh2.Scale = vt(rad,rad,rad)
- expart2.Size = vt(1.15,1.15,1.15)
- expart2.Transparency = 0.5
- expart2.Anchored = true
- expart2.Material = "Neon"
- expart2.BrickColor = par.BrickColor
- expart2.CFrame = par.CFrame
- rin.Size = vt(1.15,1.15,1.15)
- rin.Transparency = 1
- rin.Anchored = true
- rin.Material = "Neon"
- rin.BrickColor = par.BrickColor
- rin.CFrame = par.CFrame*CFrame.Angles(math.rad(math.random(-360,360)),math.rad(math.random(-360,360)),math.rad(math.random(-360,360)))
- rin2.Size = vt(1.15,1.15,1.15)
- rin2.Transparency = 1
- rin2.Anchored = true
- rin2.Material = "Neon"
- rin2.BrickColor = par.BrickColor
- rin2.CFrame = par.CFrame*CFrame.Angles(math.rad(math.random(-360,360)),math.rad(math.random(-360,360)),math.rad(math.random(-360,360)))
- partMesh3.Scale = vt(0,1,0)
- partMesh4.Scale = vt(0,1,0)
- local dec2 = Instance.new("Decal", rin)
- dec2.Face = "Top"
- dec2.Texture = "http://www.roblox.com/asset/?id=874580939"
- dec2.Parent = rin
- local dec2b = dec2:Clone()
- dec2b.Face = "Bottom"
- dec2b.Parent = rin
- local dec2a = Instance.new("Decal", rin2)
- dec2a.Face = "Top"
- dec2a.Texture = "http://www.roblox.com/asset/?id=874580939"
- dec2a.Parent = rin2
- local dec2ab = dec2a:Clone()
- dec2ab.Face = "Bottom"
- dec2ab.Parent = rin2
- expart.CanCollide = false
- expart2.CanCollide = false
- rin.CanCollide = false
- rin2.CanCollide = false
- MagniDamage(par, rad*5, mindam, maxdam, 0, "Normal")
- local value = 1*rad/6.5
- for i = 0, 199 do
- partMesh.Scale = partMesh.Scale + vt(value,value,value)
- expart.CFrame = expart.CFrame
- partMesh2.Scale = partMesh2.Scale + vt(value,value,value)
- expart2.CFrame = expart.CFrame
- value = value - 0.035*rad/30
- if value < 7.5 then
- partMesh3.Scale = partMesh3.Scale + vt(rad/5,0,rad/5)
- rin.CFrame = rin.CFrame*CFrame.Angles(0,math.rad(1),0)
- partMesh4.Scale = partMesh4.Scale + vt(rad/7.5,0,rad/7.5)
- rin2.CFrame = rin2.CFrame*CFrame.Angles(0,math.rad(-1),0)
- end
- if value < 0 then
- dec2.Transparency = dec2.Transparency + 0.025
- dec2a.Transparency = dec2a.Transparency + 0.025
- dec2b.Transparency = dec2b.Transparency + 0.025
- dec2ab.Transparency = dec2ab.Transparency + 0.025
- expart.Transparency = expart.Transparency + 0.025
- expart2.Transparency = expart2.Transparency + 0.025
- rin.Transparency = rin.Transparency + 0.025
- rin2.Transparency = rin2.Transparency + 0.025
- end
- swait()
- end
- game:GetService("Debris"):AddItem(expart, 1)
- game:GetService("Debris"):AddItem(expart2, 1)
- game:GetService("Debris"):AddItem(rin, 1)
- game:GetService("Debris"):AddItem(rin2, 1)
- end
- function ExplodeShort(rad,par,pitch,vol,mindam,maxdam)
- local expart = Instance.new("Part",char)
- local expart2 = Instance.new("Part",char)
- local partMesh = Instance.new("SpecialMesh",expart)
- partMesh.MeshType = "Sphere"
- local partMesh2 = Instance.new("SpecialMesh",expart2)
- partMesh2.MeshType = "Sphere"
- CFuncs["Sound"].Create("http://www.roblox.com/asset/?id=142070127", expart,vol, pitch)
- partMesh.Scale = vt(rad,rad,rad)
- expart.Size = vt(1,1,1)
- expart.Transparency = 0
- expart.Anchored = true
- expart.Material = "Neon"
- expart.BrickColor = bc("White")
- expart.CFrame = par.CFrame
- partMesh2.Scale = vt(rad,rad,rad)
- expart2.Size = vt(1.15,1.15,1.15)
- expart2.Transparency = 0.5
- expart2.Anchored = true
- expart2.Material = "Neon"
- expart2.BrickColor = par.BrickColor
- expart2.CFrame = par.CFrame
- expart.CanCollide = false
- expart2.CanCollide = false
- MagniDamage(par, rad*2.5, mindam, maxdam, 0, "Normal")
- local value = 1*rad/6.5
- for i = 0, 75 do
- partMesh.Scale = partMesh.Scale + vt(value,value,value)
- expart.CFrame = expart.CFrame
- partMesh2.Scale = partMesh2.Scale + vt(value,value,value)
- expart2.CFrame = expart.CFrame
- value = value - 0.035*rad/5
- if value < 0 then
- value = 0
- expart.Transparency = expart.Transparency + 0.05
- expart2.Transparency = expart2.Transparency + 0.05
- end
- swait()
- end
- game:GetService("Debris"):AddItem(expart, 1)
- game:GetService("Debris"):AddItem(expart2, 1)
- end
- function AreaDanger(rad,par,mindam,maxdam)
- local expart = Instance.new("Part",char)
- local partMesh = Instance.new("SpecialMesh",expart)
- CFuncs["Sound"].Create("rbxassetid://231917784", expart,1.5,1.15)
- partMesh.MeshType = "Sphere"
- partMesh.Scale = vt(rad,rad,rad)
- expart.Size = vt(1,1,1)
- expart.Transparency = 0.5
- expart.Anchored = true
- expart.Material = "Neon"
- expart.CanCollide = false
- expart.BrickColor = par.BrickColor
- expart.CFrame = par.CFrame
- local value = 1*rad/5
- MagicBlock(origcolor,expart.CFrame,0,0,0,rad/2,rad/2,rad/2,0.1)
- for i = 0, 14 do
- wait()
- partMesh.Scale = partMesh.Scale + vt(value,value,value)
- expart.CFrame = expart.CFrame
- value = value - 0.035*rad
- if value < 0 then
- value = 0
- end
- end
- wait(0.25)
- CFuncs["Sound"].Create("rbxassetid://588738544", expart,1.5,1)
- wait(0.5)
- CFuncs["Sound"].Create("rbxassetid://588737825", expart,1.5,1)
- CFuncs["Sound"].Create("rbxassetid://231917784", expart,1.5,0.75)
- MagniDamageWithEffect(par, rad, mindam, maxdam, 0, "Normal")
- MagicBlock(origcolor,expart.CFrame,rad*2,rad*2,rad*2,0.1,0.1,0.1,0.025)
- for i = 0, 14 do
- wait()
- partMesh.Scale = partMesh.Scale + vt(value,value,value)
- expart.CFrame = expart.CFrame
- value = value - 0.035*rad/2
- end
- expart.Transparency = 1
- game:GetService("Debris"):AddItem(expart, 5)
- end
- function Swarmsplosions(negrad,rad,par,mindam,maxdam)
- CFuncs["Sound"].Create("rbxassetid://588737825", par, 2.5, 2)
- CFuncs["Sound"].Create("rbxassetid://231917784", par, 2.5,1)
- CFuncs["Sound"].Create("rbxassetid://231917744", par, 2.5,1)
- CFuncs["Sound"].Create("rbxassetid://233856106", par, 2.5, 1)
- MagniDamageWithEffect(par, 25, 5,10, 0, "Normal")
- MagicBlock(origcolor,par.CFrame,5,5,5,5,5,5,0.025)
- for i = 0, 24 do
- MagicShockTrailAlt2(origcolor,par.CFrame*CFrame.Angles(math.rad(math.random(-360,360)),math.rad(math.random(-360,360)),math.rad(math.random(-360,360))),10/5,10/5,5,-0.05/5,-0.05/5,25,0.005,math.random(1,2))
- end
- for i = 0, 24 do
- local expart = Instance.new("Part",char)
- expart.Transparency = 1
- expart.Anchored = true
- expart.CanCollide = false
- expart.CFrame = par.CFrame*CFrame.new(math.random(negrad,rad),math.random(negrad,rad),math.random(negrad,rad))
- CFuncs["Sound"].Create("rbxassetid://588737825", expart,1,2)
- CFuncs["Sound"].Create("rbxassetid://231917784", expart,1.5,1.15)
- MagniDamage(expart, rad/2, mindam, maxdam, 0, "Normal")
- MagicBlock(origcolor,expart.CFrame,rad,rad,rad,0.1,0.1,0.1,0.025)
- for i = 0, 9 do
- MagicShockTrailAlt2(origcolor,expart.CFrame*CFrame.Angles(math.rad(math.random(-360,360)),math.rad(math.random(-360,360)),math.rad(math.random(-360,360))),10/5,10/5,5,-0.05/5,-0.05/5,5,0.05,math.random(1,2))
- end
- game:GetService("Debris"):AddItem(expart, 2)
- wait(0.1)
- end
- end
- function EXterPlosion(par)
- CFuncs["Sound"].Create("rbxassetid://919941001", par, 10, 1)
- CFuncs["Sound"].Create("rbxassetid://138213851", par, 5,0.85)
- CFuncs["Sound"].Create("rbxassetid://157878578", par, 5,0.2)
- CFuncs["Sound"].Create("rbxassetid://233856106", par, 2.5, 1)
- MagniDamageWithEffect(par, 500, 80,99, 0, "Normal")
- MagicBlock(origcolor,par.CFrame,5,5,5,5,5,5,0.005)
- MagicBlock(origcolor,par.CFrame,0,0,0,150,150,150,0.1)
- for i = 0, 24 do
- MagicShockTrailAlt2(origcolor,par.CFrame*CFrame.Angles(math.rad(math.random(-360,360)),math.rad(math.random(-360,360)),math.rad(math.random(-360,360))),10*5,10*5,5,-0.05*10,-0.05*10,500,0.1,math.random(1,2))
- end
- for i = 0, 24 do
- MagicShockTrailAlt2(origcolor,par.CFrame*CFrame.Angles(math.rad(math.random(-360,360)),math.rad(math.random(-360,360)),math.rad(math.random(-360,360))),10*5,10*5,5,-0.05*5,-0.05*5,50,0.005,math.random(1,2))
- end
- end
- ----
- function ring(type,pos,scale,value)
- local type = type
- local rng = Instance.new("Part", char)
- rng.Anchored = true
- rng.BrickColor = origcolor
- rng.CanCollide = false
- rng.FormFactor = 3
- rng.Name = "Ring"
- rng.Size = Vector3.new(1, 1, 1)
- rng.Transparency = 0
- rng.TopSurface = 0
- rng.BottomSurface = 0
- rng.CFrame = pos
- local rngm = Instance.new("SpecialMesh", rng)
- rngm.MeshId = "http://www.roblox.com/asset/?id=3270017"
- rngm.Scale = scale
- local scaler2 = 1
- if type == "Add" then
- scaler2 = 1*value
- elseif type == "Divide" then
- scaler2 = 1/value
- end
- coroutine.resume(coroutine.create(function()
- for i = 0,10,0.1 do
- swait()
- if type == "Add" then
- scaler2 = scaler2 - 0.01*value
- elseif type == "Divide" then
- scaler2 = scaler2 - 0.01/value
- end
- rng.Transparency = rng.Transparency + 0.01
- rngm.Scale = rngm.Scale + Vector3.new(scaler2, scaler2, 0)
- end
- rng:Destroy()
- end))
- end
- function ring2(type,pos,scale,value,color)
- local type = type
- local rng = Instance.new("Part", char)
- rng.Anchored = true
- rng.BrickColor = color
- rng.CanCollide = false
- rng.FormFactor = 3
- rng.Name = "Ring"
- rng.Size = Vector3.new(1, 1, 1)
- rng.Transparency = 0
- rng.TopSurface = 0
- rng.BottomSurface = 0
- rng.CFrame = pos
- local rngm = Instance.new("SpecialMesh", rng)
- rngm.MeshId = "http://www.roblox.com/asset/?id=3270017"
- rngm.Scale = scale
- local scaler2 = 1
- if type == "Add" then
- scaler2 = 1*value
- elseif type == "Divide" then
- scaler2 = 1/value
- end
- coroutine.resume(coroutine.create(function()
- for i = 0,10,0.1 do
- swait()
- if type == "Add" then
- scaler2 = scaler2 - 0.01*value
- elseif type == "Divide" then
- scaler2 = scaler2 - 0.01/value
- end
- rng.Transparency = rng.Transparency + 0.01
- rngm.Scale = rngm.Scale + Vector3.new(scaler2, scaler2, 0)
- end
- rng:Destroy()
- end))
- end
- function wave(type,pos,scale,value)
- local type = type
- local rng = Instance.new("Part", char)
- rng.Anchored = true
- rng.BrickColor = origcolor
- rng.CanCollide = false
- rng.FormFactor = 3
- rng.Name = "Ring"
- rng.Size = Vector3.new(1, 1, 1)
- rng.Transparency = 0
- rng.TopSurface = 0
- rng.BottomSurface = 0
- rng.CFrame = pos
- local rngm = Instance.new("SpecialMesh", rng)
- rngm.MeshId = "http://www.roblox.com/asset/?id=20329976"
- rngm.Scale = scale
- local scaler2 = 1
- if type == "Add" then
- scaler2 = 1*value
- elseif type == "Divide" then
- scaler2 = 1/value
- end
- coroutine.resume(coroutine.create(function()
- for i = 0,10,0.1 do
- swait()
- if type == "Add" then
- scaler2 = scaler2 - 0.01*value
- elseif type == "Divide" then
- scaler2 = scaler2 - 0.01/value
- end
- rng.Transparency = rng.Transparency + 0.01
- rngm.Scale = rngm.Scale + Vector3.new(scaler2, scaler2, scaler2)
- end
- rng:Destroy()
- end))
- end
- function wave2(type,pos,scale,value,color)
- local type = type
- local rng = Instance.new("Part", char)
- rng.Anchored = true
- rng.BrickColor = color
- rng.CanCollide = false
- rng.FormFactor = 3
- rng.Name = "Ring"
- rng.Size = Vector3.new(1, 1, 1)
- rng.Transparency = 0
- rng.TopSurface = 0
- rng.BottomSurface = 0
- rng.CFrame = pos
- local rngm = Instance.new("SpecialMesh", rng)
- rngm.MeshId = "http://www.roblox.com/asset/?id=20329976"
- rngm.Scale = scale
- local scaler2 = 1
- if type == "Add" then
- scaler2 = 1*value
- elseif type == "Divide" then
- scaler2 = 1/value
- end
- coroutine.resume(coroutine.create(function()
- for i = 0,10,0.1 do
- swait()
- if type == "Add" then
- scaler2 = scaler2 - 0.01*value
- elseif type == "Divide" then
- scaler2 = scaler2 - 0.01/value
- end
- rng.Transparency = rng.Transparency + 0.01
- rngm.Scale = rngm.Scale + Vector3.new(scaler2, scaler2, scaler2)
- end
- rng:Destroy()
- end))
- end
- function wind(type,pos,scale,value,speed)
- local type = type
- local rng = Instance.new("Part", char)
- rng.Anchored = true
- rng.BrickColor = origcolor
- rng.CanCollide = false
- rng.FormFactor = 3
- rng.Name = "Ring"
- rng.Size = Vector3.new(1, 1, 1)
- rng.Transparency = 0
- rng.TopSurface = 0
- rng.BottomSurface = 0
- rng.CFrame = pos
- local rngm = Instance.new("SpecialMesh", rng)
- rngm.MeshId = "http://www.roblox.com/asset/?id=1051557"
- rngm.Scale = scale
- local scaler2 = 1
- if type == "Add" then
- scaler2 = 1*value
- elseif type == "Divide" then
- scaler2 = 1/value
- end
- coroutine.resume(coroutine.create(function()
- for i = 0,10,0.1 do
- swait()
- if type == "Add" then
- scaler2 = scaler2 - 0.01*value
- elseif type == "Divide" then
- scaler2 = scaler2 - 0.01/value
- end
- rng.CFrame = rng.CFrame*CFrame.Angles(0,0.025*speed,0)
- rng.Transparency = rng.Transparency + 0.01
- rngm.Scale = rngm.Scale + Vector3.new(scaler2, scaler2, scaler2)
- end
- rng:Destroy()
- end))
- end
- function groundwind(type,pos,scale,value,speed)
- local type = type
- local rng = Instance.new("Part", char)
- rng.Anchored = true
- rng.BrickColor = origcolor
- rng.CanCollide = false
- rng.FormFactor = 3
- rng.Name = "Ring"
- rng.Size = Vector3.new(1, 1, 1)
- rng.Transparency = 0
- rng.TopSurface = 0
- rng.BottomSurface = 0
- rng.CFrame = pos
- local rngm = Instance.new("SpecialMesh", rng)
- rngm.MeshId = "http://www.roblox.com/asset/?id=1051557"
- rngm.Scale = scale
- local scaler2 = 1
- if type == "Add" then
- scaler2 = 1*value
- elseif type == "Divide" then
- scaler2 = 1/value
- end
- coroutine.resume(coroutine.create(function()
- for i = 0,10,0.1 do
- swait()
- if type == "Add" then
- scaler2 = scaler2 - 0.01*value
- elseif type == "Divide" then
- scaler2 = scaler2 - 0.01/value
- end
- rng.CFrame = rng.CFrame*CFrame.Angles(0,0.025*speed,0)
- rng.Transparency = rng.Transparency + 0.01
- rngm.Scale = rngm.Scale + Vector3.new(scaler2, scaler2/5, scaler2)
- end
- rng:Destroy()
- end))
- end
- function sphere(type,pos,scale,value)
- local type = type
- local rng = Instance.new("Part", char)
- rng.Anchored = true
- rng.BrickColor = origcolor
- rng.CanCollide = false
- rng.FormFactor = 3
- rng.Name = "Ring"
- rng.Material = "Neon"
- rng.Size = Vector3.new(1, 1, 1)
- rng.Transparency = 0
- rng.TopSurface = 0
- rng.BottomSurface = 0
- rng.CFrame = pos
- local rngm = Instance.new("SpecialMesh", rng)
- rngm.MeshType = "Sphere"
- rngm.Scale = scale
- local scaler2 = 1
- if type == "Add" then
- scaler2 = 1*value
- elseif type == "Divide" then
- scaler2 = 1/value
- end
- coroutine.resume(coroutine.create(function()
- for i = 0,10,0.1 do
- swait()
- if type == "Add" then
- scaler2 = scaler2 - 0.01*value
- elseif type == "Divide" then
- scaler2 = scaler2 - 0.01/value
- end
- rng.Transparency = rng.Transparency + 0.01
- rngm.Scale = rngm.Scale + Vector3.new(scaler2, scaler2, scaler2)
- end
- rng:Destroy()
- end))
- end
- function beam(type,pos,scale,value)
- local type = type
- local rng = Instance.new("Part", char)
- rng.Anchored = true
- rng.BrickColor = origcolor
- rng.CanCollide = false
- rng.FormFactor = 3
- rng.Name = "Ring"
- rng.Material = "Neon"
- rng.Size = Vector3.new(1, 1, 1)
- rng.Transparency = 0
- rng.TopSurface = 0
- rng.BottomSurface = 0
- rng.CFrame = pos
- local rngm = Instance.new("SpecialMesh", rng)
- rngm.MeshType = "Sphere"
- rngm.Scale = scale
- rngm.Scale = rngm.Scale + Vector3.new(0,10000,0)
- local scaler2 = 0.5
- if type == "Add" then
- scaler2 = 0.5*value
- elseif type == "Divide" then
- scaler2 = 0.5/value
- end
- coroutine.resume(coroutine.create(function()
- for i = 0,10,0.1 do
- swait()
- if type == "Add" then
- scaler2 = scaler2 - 0.01*value
- elseif type == "Divide" then
- scaler2 = scaler2 - 0.01/value
- end
- rng.Transparency = rng.Transparency + 0.01
- rngm.Scale = rngm.Scale + Vector3.new(scaler2, scaler2, scaler2)
- end
- rng:Destroy()
- end))
- end
- local dashing = false
- local OriginalWalkspeed = hum.WalkSpeed
- local equipped = false
- -- Functions are ready.
- function equipanim()
- attack = true
- for i = 0,2,0.1 do
- swait()
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,0)* angles(math.rad(0),math.rad(0),math.rad(0)),0.2)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(10),math.rad(0),math.rad(-40)),.2)
- RW.C0 = clerp(RW.C0, CFrame.new(1.75, 0.5, 0) * angles(math.rad(0), math.rad(-50), math.rad(100)), 0.2)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.45, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(-10)), 0.2)
- end
- attack = false
- hum.WalkSpeed = 10
- wepweld.C1 = clerp(wepweld.C1,cf(0,1,0)* angles(math.rad(0),math.rad(0),math.rad(0)),1)
- wepweld.Part0 = rarm
- equipped = true
- end
- function unequipanim()
- attack = true
- for i = 0,2,0.1 do
- swait()
- wepweld.C1 = clerp(wepweld.C1,cf(0,-1,0)* angles(math.rad(220),math.rad(0),math.rad(0)),0.2)
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,0)* angles(math.rad(0),math.rad(0),math.rad(0)),0.2)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(10),math.rad(0),math.rad(-40)),.2)
- RW.C0 = clerp(RW.C0, CFrame.new(1.75, 0.5, 0) * angles(math.rad(0), math.rad(-50), math.rad(100)), 0.2)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.45, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(-10)), 0.2)
- end
- attack = false
- hum.WalkSpeed = OriginalWalkspeed
- wepweld.C1 = clerp(wepweld.C1,cf(1,0,-4)* angles(math.rad(20),math.rad(-90),math.rad(0)),1)
- wepweld.Part0 = tors
- equipped = false
- end
- ----------- attacks
- function attackone()
- attack = true
- for i = 0,3,0.1 do
- swait()
- wepweld.C1 = clerp(wepweld.C1,cf(0,1,0)* angles(math.rad(0),math.rad(0),math.rad(0)),0.1)
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,0)* angles(math.rad(0),math.rad(0),math.rad(40)),0.1)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(10),math.rad(0),math.rad(-40)),.1)
- RW.C0 = clerp(RW.C0, CFrame.new(1.45, 0.5, 0) * angles(math.rad(0), math.rad(100), math.rad(100)), 0.1)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.45, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(-100)), 0.1)
- end
- CFuncs["Sound"].Create("rbxassetid://231917961", hitbox, 1, 1)
- local con = hitbox.Touched:connect(function(hit)
- Damagefunc(hitbox, hit, math.huge, math.huge, 0, "Normal", RootPart, 0.3, "0", 0.8)
- end)
- for i = 0,3,0.1 do
- swait()
- wepweld.C1 = clerp(wepweld.C1,cf(0,1,0)* angles(math.rad(0),math.rad(0),math.rad(0)),0.2)
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,0)* angles(math.rad(10),math.rad(0),math.rad(-60)),0.2)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(10),math.rad(0),math.rad(60)),.2)
- RW.C0 = clerp(RW.C0, CFrame.new(1.45, 0.5, 0) * angles(math.rad(0), math.rad(40), math.rad(60)), 0.2)
- LW.C0 = clerp(LW.C0, CFrame.new(-0.25, 0.5, -0.75) * angles(math.rad(40), math.rad(0), math.rad(50)), 0.2)
- end
- con:disconnect()
- attack = false
- end
- function attacktwo()
- attack = true
- for i = 0,3,0.1 do
- swait()
- wepweld.C1 = clerp(wepweld.C1,cf(0,-1,0)* angles(math.rad(180),math.rad(0),math.rad(0)),0.1)
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,0)* angles(math.rad(0),math.rad(0),math.rad(-40)),0.1)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(10),math.rad(0),math.rad(40)),.1)
- RW.C0 = clerp(RW.C0, CFrame.new(1.45, 0.5, 0) * angles(math.rad(0), math.rad(100), math.rad(70)), 0.1)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.45, 0.5, 0) * angles(math.rad(80), math.rad(0), math.rad(40)), 0.1)
- end
- CFuncs["Sound"].Create("rbxassetid://231917950", hitbox, 1, 1)
- local con = hitbox.Touched:connect(function(hit)
- Damagefunc(hitbox, hit, math.huge, math.huge, 0, "Normal", RootPart, 0.3, "0", 0.8)
- end)
- for i = 0,3,0.1 do
- swait()
- wepweld.C1 = clerp(wepweld.C1,cf(0,-1,0)* angles(math.rad(180),math.rad(0),math.rad(0)),0.2)
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,0)* angles(math.rad(0),math.rad(0),math.rad(80)),0.2)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(10),math.rad(0),math.rad(-80)),.2)
- RW.C0 = clerp(RW.C0, CFrame.new(1.45, 0.5, -0.75) * angles(math.rad(0), math.rad(130), math.rad(100)), 0.2)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.45, 0.5, 0) * angles(math.rad(110), math.rad(0), math.rad(50)), 0.2)
- end
- con:disconnect()
- attack = false
- end
- function attackthree()
- attack = true
- for i = 0,3,0.1 do
- swait()
- wepweld.C1 = clerp(wepweld.C1,cf(0,1,0)* angles(math.rad(0),math.rad(0),math.rad(0)),0.5)
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,0)* angles(math.rad(20),math.rad(0),math.rad(-100)),0.1)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(10),math.rad(0),math.rad(100)),.1)
- RW.C0 = clerp(RW.C0, CFrame.new(1.45, 0.5, 0) * angles(math.rad(0), math.rad(40), math.rad(60)), 0.1)
- LW.C0 = clerp(LW.C0, CFrame.new(-0.25, 0.5, -0.75) * angles(math.rad(40), math.rad(0), math.rad(50)), 0.1)
- end
- CFuncs["Sound"].Create("rbxassetid://231917950", hitbox, 1, 1.25)
- local con = hitbox.Touched:connect(function(hit)
- Damagefunc(hitbox, hit, math.huge, math.huge, 0, "Normal", RootPart, 0.3, "0", 0.8)
- end)
- for i = 0,3,0.1 do
- swait()
- wepweld.C1 = clerp(wepweld.C1,cf(0,1,0)* angles(math.rad(20),math.rad(0),math.rad(0)),0.2)
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,0)* angles(math.rad(0),math.rad(0),math.rad(70)),0.2)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(10),math.rad(0),math.rad(-70)),.2)
- RW.C0 = clerp(RW.C0, CFrame.new(1.45, 0.5, 0) * angles(math.rad(0), math.rad(80), math.rad(110)), 0.2)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.45, 0.5, -0.75) * angles(math.rad(120), math.rad(0), math.rad(-5)), 0.2)
- end
- con:disconnect()
- attack = false
- end
- function attackfour()
- attack = true
- for i = 0,3,0.1 do
- swait()
- wepweld.C1 = clerp(wepweld.C1,cf(1,1,0)* angles(math.rad(0),math.rad(0),math.rad(-40)),0.5)
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,0)* angles(math.rad(-10),math.rad(0),math.rad(0)),0.1)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(10),math.rad(0),math.rad(0)),.1)
- RW.C0 = clerp(RW.C0, CFrame.new(1.15, 1, 0) * angles(math.rad(190), math.rad(0), math.rad(-40)), 0.1)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.15, 1, 0) * angles(math.rad(190), math.rad(0), math.rad(40)), 0.1)
- end
- for i = 0,1,0.1 do
- swait()
- wepweld.C1 = clerp(wepweld.C1,cf(1,1,0)* angles(math.rad(60),math.rad(0),math.rad(-40)),0.4)
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,0)* angles(math.rad(10),math.rad(0),math.rad(0)),0.4)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(10),math.rad(0),math.rad(0)),.4)
- RW.C0 = clerp(RW.C0, CFrame.new(1.15, 0.25, -0.45) * angles(math.rad(60), math.rad(0), math.rad(-40)), 0.4)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.15, 0.25, -0.45) * angles(math.rad(60), math.rad(0), math.rad(40)), 0.4)
- end
- local impact = Instance.new("Part")
- impact.Parent = char
- impact.BrickColor = origcolor
- impact.CanCollide = false
- impact.Material = "Neon"
- impact.Anchored = true
- impact.TopSurface = 0
- impact.BottomSurface = 0
- impact.Transparency = 1
- impact.Size = vt(2,2,2)
- impact.Position = bladt.Position
- game:GetService("Debris"):AddItem(impact, 5)
- CFuncs["Sound"].Create("rbxassetid://231917806", impact, 2, 1)
- CFuncs["Sound"].Create("rbxassetid://231917845", impact, 1, 1)
- CFuncs["Sound"].Create("rbxassetid://231917833", impact, 1, 1.5)
- MagniDamage(impact, 10, 10,12, 0, "Normal")
- ring2("Divide",impact.CFrame*CFrame.Angles(math.rad(90),0,0),Vector3.new(1,1,0),1.5,BrickColor.new("White"))
- ring2("Divide",impact.CFrame*CFrame.Angles(math.rad(90),0,0),Vector3.new(5,5,0),2.5,BrickColor.new("White"))
- wave2("Divide",impact.CFrame*CFrame.Angles(0,0,0),Vector3.new(5,0,5),5,BrickColor.new("White"))
- for i = 0,1,0.1 do
- swait()
- CameraShake(10, 5)
- wepweld.C1 = clerp(wepweld.C1,cf(1,1,0)* angles(math.rad(60),math.rad(0),math.rad(-40)),0.4)
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,0)* angles(math.rad(10),math.rad(0),math.rad(0)),0.4)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(10),math.rad(0),math.rad(0)),.4)
- RW.C0 = clerp(RW.C0, CFrame.new(1.15, 0.25, -0.45) * angles(math.rad(60), math.rad(0), math.rad(-40)), 0.4)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.15, 0.25, -0.45) * angles(math.rad(60), math.rad(0), math.rad(40)), 0.4)
- end
- attack = false
- end
- -------- Skills
- function scrollingup()
- attack = true
- for i = 0,3,0.1 do
- swait()
- wepweld.C1 = clerp(wepweld.C1,cf(0,1,0)* angles(math.rad(0),math.rad(0),math.rad(0)),0.5)
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,0)* angles(math.rad(0),math.rad(0),math.rad(110)),0.1)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(10),math.rad(0),math.rad(-100)),.1)
- RW.C0 = clerp(RW.C0, CFrame.new(1.45, 0.5, 0) * angles(math.rad(0), math.rad(70), math.rad(90)), 0.1)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.45, 0.5, 0) * angles(math.rad(90), math.rad(0), math.rad(20)), 0.1)
- end
- local con = hitbox.Touched:connect(function(hit)
- Damagefunc(hitbox, hit, math.huge, math.huge, 0, "Normal", RootPart, 0.3, "0", 0.8)
- end)
- local bv = Instance.new("BodyVelocity")
- bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
- bv.velocity = root.CFrame.lookVector*100
- bv.Parent = root
- CFuncs["Sound"].Create("rbxassetid://231917788", root, 2.5, 1)
- CFuncs["Sound"].Create("rbxassetid://231917845", root, 2.5, 1)
- CFuncs["Sound"].Create("rbxassetid://231917801", root, 1, 1)
- wave2("Divide",root.CFrame*CFrame.Angles(math.rad(90),0,0),Vector3.new(10,1,10),35,BrickColor.new("White"))
- wave2("Divide",root.CFrame*CFrame.Angles(math.rad(90),0,0),Vector3.new(10,1,10),5,BrickColor.new("White"))
- ring2("Divide",root.CFrame*CFrame.Angles(0,0,0),Vector3.new(1,1,1),1.5,BrickColor.new("White"))
- ring2("Divide",root.CFrame*CFrame.Angles(0,0,0),Vector3.new(1,1,1),1,BrickColor.new("White"))
- coroutine.resume(coroutine.create(function()
- wait(0.45)
- bv:Destroy()
- end))
- for z = 0, 1 do
- MagniDamage(root, 15, 13,15, 0, "Normal")
- ring2("Divide",root.CFrame*CFrame.Angles(0,0,0),Vector3.new(1,1,1),5,BrickColor.new("White"))
- ring2("Divide",root.CFrame*CFrame.Angles(math.rad(90),0,0),Vector3.new(15,15,1),25,BrickColor.new("Toothpaste"))
- ring2("Divide",root.CFrame*CFrame.Angles(math.rad(90),0,0),Vector3.new(15,15,1),2.5,BrickColor.new("Toothpaste"))
- for i = 0,1,0.3 do
- CameraShake(6, 3)
- swait()
- wepweld.C1 = clerp(wepweld.C1,cf(0,1,0)* angles(math.rad(20),math.rad(-5),math.rad(0)),0.3)
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,0)* angles(math.rad(10),math.rad(0),math.rad(-30)),0.3)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(10),math.rad(0),math.rad(30)),.3)
- RW.C0 = clerp(RW.C0, CFrame.new(1.45, 0.5, 0) * angles(math.rad(0), math.rad(-10), math.rad(90)), 0.3)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.45, 0.5, 0) * angles(math.rad(-30), math.rad(0), math.rad(-40)), 0.3)
- end
- for i = 0,1,0.3 do
- swait()
- wepweld.C1 = clerp(wepweld.C1,cf(0,1,0)* angles(math.rad(20),math.rad(-5),math.rad(0)),0.3)
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,0)* angles(math.rad(0),math.rad(0),math.rad(-90)),0.3)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(10),math.rad(0),math.rad(90)),.3)
- RW.C0 = clerp(RW.C0, CFrame.new(1.45, 0.5, 0) * angles(math.rad(0), math.rad(-10), math.rad(90)), 0.3)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.45, 0.5, 0) * angles(math.rad(-30), math.rad(0), math.rad(-40)), 0.3)
- end
- for i = 0,1,0.3 do
- swait()
- wepweld.C1 = clerp(wepweld.C1,cf(0,1,0)* angles(math.rad(20),math.rad(-5),math.rad(0)),0.3)
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,0)* angles(math.rad(0),math.rad(0),math.rad(-180)),0.3)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(10),math.rad(0),math.rad(30)),.3)
- RW.C0 = clerp(RW.C0, CFrame.new(1.45, 0.5, 0) * angles(math.rad(0), math.rad(-10), math.rad(90)), 0.3)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.45, 0.5, 0) * angles(math.rad(-30), math.rad(0), math.rad(-40)), 0.3)
- end
- for i = 0,1,0.3 do
- swait()
- wepweld.C1 = clerp(wepweld.C1,cf(0,1,0)* angles(math.rad(20),math.rad(-5),math.rad(0)),0.3)
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,0)* angles(math.rad(0),math.rad(0),math.rad(-270)),0.3)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(10),math.rad(0),math.rad(30)),.3)
- RW.C0 = clerp(RW.C0, CFrame.new(1.45, 0.5, 0) * angles(math.rad(0), math.rad(-10), math.rad(90)), 0.3)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.45, 0.5, 0) * angles(math.rad(-30), math.rad(0), math.rad(-40)), 0.3)
- end
- end
- attack = false
- con:disconnect()
- end
- function lemmesmashyoo()
- attack = true
- CFuncs["Sound"].Create("rbxassetid://136007472", root, 0.75, 1.15)
- sphere("Divide",root.CFrame*CFrame.Angles(0,0,0),Vector3.new(-25,-25,-25),1.75)
- for i = 0,5,0.1 do
- swait()
- wepweld.C1 = clerp(wepweld.C1,cf(1,1,0)* angles(math.rad(0),math.rad(0),math.rad(-40)),0.5)
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,0)* angles(math.rad(-10),math.rad(0),math.rad(0)),0.1)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(10),math.rad(0),math.rad(0)),.1)
- RW.C0 = clerp(RW.C0, CFrame.new(1.15, 1, 0) * angles(math.rad(190), math.rad(0), math.rad(-40)), 0.1)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.15, 1, 0) * angles(math.rad(190), math.rad(0), math.rad(40)), 0.1)
- end
- for i = 0,1,0.1 do
- swait()
- wepweld.C1 = clerp(wepweld.C1,cf(1,1,0)* angles(math.rad(60),math.rad(0),math.rad(-40)),0.4)
- CameraShake(8, 4)
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,0)* angles(math.rad(10),math.rad(0),math.rad(0)),0.4)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(10),math.rad(0),math.rad(0)),.4)
- RW.C0 = clerp(RW.C0, CFrame.new(1.15, 0.25, -0.45) * angles(math.rad(60), math.rad(0), math.rad(-40)), 0.4)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.15, 0.25, -0.45) * angles(math.rad(60), math.rad(0), math.rad(40)), 0.4)
- end
- local impact = Instance.new("Part")
- impact.Parent = char
- impact.BrickColor = origcolor
- impact.CanCollide = false
- impact.Material = "Neon"
- impact.Anchored = true
- impact.TopSurface = 0
- impact.BottomSurface = 0
- impact.Transparency = 1
- impact.Size = vt(2,2,2)
- impact.Position = bladt.Position
- game:GetService("Debris"):AddItem(impact, 5)
- CFuncs["Sound"].Create("rbxassetid://157878578", impact, 1.5, 0.75)
- CFuncs["Sound"].Create("rbxassetid://157878578", impact, 0.5, 0.5)
- CFuncs["Sound"].Create("rbxassetid://231917806", impact, 2.25, 0.5)
- CFuncs["Sound"].Create("rbxassetid://231917845", impact, 2.25, 0.5)
- CFuncs["Sound"].Create("rbxassetid://231917833", impact, 2.25, 1.25)
- MagniDamage(impact, 27.5, 15,17, 0, "Normal")
- ring2("Add",impact.CFrame*CFrame.Angles(math.rad(90),0,0),Vector3.new(1,1,0),1.25,BrickColor.new("White"))
- ring2("Divide",impact.CFrame*CFrame.Angles(math.rad(90),0,0),Vector3.new(5,5,0),1.5,BrickColor.new("White"))
- wave2("Divide",impact.CFrame*CFrame.Angles(0,0,0),Vector3.new(5,0,5),3.5,BrickColor.new("White"))
- wave2("Divide",impact.CFrame*CFrame.Angles(0,0,0),Vector3.new(15,0,15),5,BrickColor.new("White"))
- ring2("Add",impact.CFrame*CFrame.Angles(math.rad(90),0,0),Vector3.new(0,0,0),50,BrickColor.new("Really black"))
- beam("Add",impact.CFrame*CFrame.Angles(0,0,0),Vector3.new(0,0,0),1)
- beam("Add",impact.CFrame*CFrame.Angles(0,0,0),Vector3.new(0,0,0),1.25)
- for i = 0,1,0.1 do
- swait()
- wepweld.C1 = clerp(wepweld.C1,cf(1,1,0)* angles(math.rad(60),math.rad(0),math.rad(-40)),0.4)
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,0)* angles(math.rad(10),math.rad(0),math.rad(0)),0.4)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(10),math.rad(0),math.rad(0)),.4)
- RW.C0 = clerp(RW.C0, CFrame.new(1.15, 0.25, -0.45) * angles(math.rad(60), math.rad(0), math.rad(-40)), 0.4)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.15, 0.25, -0.45) * angles(math.rad(60), math.rad(0), math.rad(40)), 0.4)
- end
- attack = false
- end
- ---
- local attacktype = 1
- mouse.Button1Down:connect(function()
- if equipped == true then
- if attack == false and attacktype == 1 then
- attacktype = 2
- attackone()
- elseif attack == false and attacktype == 2 then
- attacktype = 3
- attacktwo()
- elseif attack == false and attacktype == 3 then
- attacktype = 4
- attackthree()
- elseif attack == false and attacktype == 4 then
- attacktype = 1
- attackfour()
- end
- end
- end)
- mouse.KeyDown:connect(function(k)
- if k == "f" and attack == false and equipped == false then
- equipanim()
- elseif k == "f" and attack == false and equipped == true then
- unequipanim()
- end
- if equipped == true then
- if k == "z" and attack == false then
- scrollingup()
- end
- if k == "x" and attack == false then
- lemmesmashyoo()
- end
- end
- end)
- Humanoid.Animator.Parent = nil
- idleanim=.4
- while true do
- swait()
- sine = sine + change
- local torvel=(RootPart.Velocity*Vector3.new(1,0,1)).magnitude
- local velderp=RootPart.Velocity.y
- hitfloor,posfloor=rayCast(RootPart.Position,(CFrame.new(RootPart.Position,RootPart.Position - Vector3.new(0,1,0))).lookVector,4,Character)
- if equipped==true or equipped==false then
- if attack==false then
- idle=idle+1
- else
- idle=0
- end
- if idle>=500 then
- if attack==false then
- end
- end
- if RootPart.Velocity.y > 1 and hitfloor==nil then
- Anim="Jump"
- if attack==false then
- RH.C0=clerp(RH.C0,cf(1,-1 - 0.05 * math.cos(sine / 25),0)*angles(math.rad(0),math.rad(90),math.rad(0))*angles(math.rad(-5),math.rad(0),math.rad(-20)),.1)
- LH.C0=clerp(LH.C0,cf(-1,-1 - 0.05 * math.cos(sine / 25),0)*angles(math.rad(0),math.rad(-90),math.rad(0))*angles(math.rad(-5),math.rad(0),math.rad(20)),.1)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0 + 0.05 * math.cos(sine / 25))*angles(math.rad(-10),math.rad(0),math.rad(0)),.1)
- Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(-2.5),math.rad(0),math.rad(0)),.1)
- RW.C0=clerp(RW.C0,cf(1.45,0.5 + 0.1 * math.cos(sine / 25),0)*angles(math.rad(-5),math.rad(0),math.rad(25)),.1)
- LW.C0=clerp(LW.C0,cf(-1.45,0.5 + 0.1 * math.cos(sine / 25),0)*angles(math.rad(-5),math.rad(0),math.rad(-25)),.1)
- if equipped == true then
- wepweld.C1 = clerp(wepweld.C1,cf(0,1,0)* angles(math.rad(-10),math.rad(180),math.rad(0)),0.1)
- end
- end
- elseif RootPart.Velocity.y < -1 and hitfloor==nil then
- Anim="Fall"
- if attack==false then
- RH.C0=clerp(RH.C0,cf(1,-1 - 0.05 * math.cos(sine / 25),0)*angles(math.rad(0),math.rad(90),math.rad(0))*angles(math.rad(-5),math.rad(0),math.rad(-20)),.1)
- LH.C0=clerp(LH.C0,cf(-1,-1 - 0.05 * math.cos(sine / 25),0)*angles(math.rad(0),math.rad(-90),math.rad(0))*angles(math.rad(-5),math.rad(0),math.rad(20)),.1)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0 + 0.05 * math.cos(sine / 25))*angles(math.rad(0),math.rad(0),math.rad(0)),.1)
- Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(0),math.rad(0),math.rad(0)),.1)
- RW.C0=clerp(RW.C0,cf(1.45,0.5 + 0.1 * math.cos(sine / 25),0)*angles(math.rad(-20),math.rad(0),math.rad(50)),.1)
- LW.C0=clerp(LW.C0,cf(-1.45,0.5 + 0.1 * math.cos(sine / 25),0)*angles(math.rad(-20),math.rad(0),math.rad(-50)),.1)
- if equipped == true then
- wepweld.C1 = clerp(wepweld.C1,cf(0,1,0)* angles(math.rad(-10),math.rad(180),math.rad(0)),0.1)
- end
- end
- elseif torvel<1 and hitfloor~=nil then
- Anim="Idle"
- if equipped == false then
- if dashing == false then
- RH.C0=clerp(RH.C0,cf(1,-1 - 0.05 * math.cos(sine / 100),0)*angles(math.rad(0),math.rad(90),math.rad(0))*angles(math.rad(-2.5),math.rad(0),math.rad(-15)),.1)
- LH.C0=clerp(LH.C0,cf(-1,-1 - 0.05 * math.cos(sine / 100),0)*angles(math.rad(0),math.rad(-90),math.rad(0))*angles(math.rad(-2.5),math.rad(0),math.rad(10)),.1)
- end
- if attack==false then
- wepweld.C1 = clerp(wepweld.C1,cf(1,0,-4)* angles(math.rad(20),math.rad(-90),math.rad(0)),0.1)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0 + 0.05 * math.cos(sine / 100))*angles(math.rad(-10),math.rad(0),math.rad(20 + 2.5 * math.cos(sine / 100))),.1)
- Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(15 - 2.5 * math.cos(sine / 100)),math.rad(-10),math.rad(-20 - 2.5 * math.cos(sine / 100))),.1)
- RW.C0=clerp(RW.C0,cf(1.45,0.5 + 0.1 * math.cos(sine / 100),0)*angles(math.rad(2.5),math.rad(0),math.rad(20 + 5 * math.cos(sine / 100))),.1)
- LW.C0=clerp(LW.C0,cf(-1.45,0.5 + 0.1 * math.cos(sine / 100),0)*angles(math.rad(-25),math.rad(0),math.rad(-15 + 1.5 * math.cos(sine / 100))),.1)
- end
- elseif equipped == true then
- if dashing == false then
- RH.C0=clerp(RH.C0,cf(1,-1 - 0.05 * math.cos(sine / 100),0)*angles(math.rad(0),math.rad(90),math.rad(0))*angles(math.rad(-2.5),math.rad(0),math.rad(-15)),.1)
- LH.C0=clerp(LH.C0,cf(-1,-1 - 0.05 * math.cos(sine / 100),0)*angles(math.rad(0),math.rad(-90),math.rad(0))*angles(math.rad(-2.5),math.rad(0),math.rad(-10)),.1)
- end
- if attack==false then
- wepweld.C1 = clerp(wepweld.C1,cf(0,1,0)* angles(math.rad(0),math.rad(0),math.rad(0)),0.1)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0 + 0.05 * math.cos(sine / 100))*angles(math.rad(10),math.rad(0),math.rad(-20 + 2.5 * math.cos(sine / 100))),.1)
- Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(-5 - 2.5 * math.cos(sine / 100)),math.rad(0),math.rad(20 - 2.5 * math.cos(sine / 100))),.1)
- RW.C0=clerp(RW.C0,cf(1.45,0.5 + 0.1 * math.cos(sine / 100),0)*angles(math.rad(2.5),math.rad(75),math.rad(40 + 5 * math.cos(sine / 100))),.1)
- LW.C0=clerp(LW.C0,cf(-1.45,0.5 + 0.1 * math.cos(sine / 100),0)*angles(math.rad(60),math.rad(0),math.rad(20 + 1.5 * math.cos(sine / 100))),.1)
- end
- end
- elseif torvel>2 and torvel<22 and hitfloor~=nil then
- Anim="Walk"
- if equipped == false then
- if dashing == false then
- RH.C0=clerp(RH.C0,cf(1,-1 - 0.05 * math.cos(sine / 4),0)*angles(math.rad(0),math.rad(90),math.rad(0))*angles(math.rad(0),math.rad(0),math.rad(0 + 35 * math.cos(sine / 6))),.1)
- LH.C0=clerp(LH.C0,cf(-1,-1 - 0.05 * math.cos(sine / 4),0)*angles(math.rad(0),math.rad(-90),math.rad(0))*angles(math.rad(0),math.rad(0),math.rad(0 + 35 * math.cos(sine / 6))),.1)
- end
- if attack==false then
- wepweld.C1 = clerp(wepweld.C1,cf(1,0,-4)* angles(math.rad(20),math.rad(-90),math.rad(0)),0.1)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0 + 0.05 * math.cos(sine / 32))*angles(math.rad(5),math.rad(0),math.rad(0)),.1)
- Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(5),math.rad(0),math.rad(0)),.1)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*angles(math.rad(-10),math.rad(0),math.rad(10)),.1)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*angles(math.rad(-10),math.rad(0),math.rad(-10)),.1)
- end
- elseif equipped == true then
- if dashing == false then
- RH.C0=clerp(RH.C0,cf(1,-1 - 0.05 * math.cos(sine / 4),0)*angles(math.rad(0),math.rad(90),math.rad(0))*angles(math.rad(0),math.rad(0),math.rad(0 + 35 * math.cos(sine / 12))),.1)
- LH.C0=clerp(LH.C0,cf(-1,-1 - 0.05 * math.cos(sine / 4),0)*angles(math.rad(0),math.rad(-90),math.rad(0))*angles(math.rad(0),math.rad(0),math.rad(0 + 35 * math.cos(sine / 12))),.1)
- end
- if attack==false then
- wepweld.C1 = clerp(wepweld.C1,cf(0,1,0)* angles(math.rad(20),math.rad(180),math.rad(0)),0.1)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0 + 0.05 * math.cos(sine / 32))*angles(math.rad(5),math.rad(0),math.rad(0)),.1)
- Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(5),math.rad(0),math.rad(0)),.1)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*angles(math.rad(-10),math.rad(20),math.rad(10)),.1)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*angles(math.rad(-10),math.rad(0),math.rad(-10)),.1)
- end
- end
- elseif torvel>=22 and hitfloor~=nil then
- Anim="Run"
- if dashing == false then
- RH.C0=clerp(RH.C0,cf(1,-1 - 0.05 * math.cos(sine / 32),0)*angles(math.rad(0),math.rad(90),math.rad(0))*angles(math.rad(0),math.rad(0),math.rad(0 + 75 * math.cos(sine / 3))),.3)
- LH.C0=clerp(LH.C0,cf(-1,-1 - 0.05 * math.cos(sine / 32),0)*angles(math.rad(0),math.rad(-90),math.rad(0))*angles(math.rad(0),math.rad(0),math.rad(0 + 75 * math.cos(sine / 3))),.3)
- end
- if attack==false then
- RootJoint.C0 = clerp(RootJoint.C0,RootCF*cf(0,0,-0.25 + 0.05 * math.cos(sine / 32))* angles(math.rad(35),math.rad(0),math.rad(0)),.3)
- Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*angles(math.rad(-50),math.rad(-60),math.rad(25)),.3)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*angles(math.rad(-50),math.rad(0),math.rad(-25)),.3)
- end
- end
- end
- end
- -- Prism code
- --//====================================================\\--
- --|| CREATED BY SHACKLUSTER
- --\\====================================================//--
- wait(0.2)
- Player = game:GetService("Players").LocalPlayer
- PlayerGui = Player.PlayerGui
- Cam = workspace.CurrentCamera
- Backpack = Player.Backpack
- Character = Player.Character
- Humanoid = Character.Humanoid
- Mouse = Player:GetMouse()
- 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://1167151479"
- sick.Looped = true
- sick.Pitch = 1
- sick.Volume = 1
- sick:Play()
- local naeeym2 = Instance.new("BillboardGui",Character)
- naeeym2.AlwaysOnTop = true
- naeeym2.Size = UDim2.new(5,35,2,35)
- naeeym2.StudsOffset = Vector3.new(0,3,0)
- naeeym2.Adornee = Character.Head
- naeeym2.Name = "Name"
- --naeeym2.PlayerToHideFrom = Player
- naeeym2.MaxDistance = 200
- local tecks2 = Instance.new("TextLabel",naeeym2)
- tecks2.BackgroundTransparency = 1
- tecks2.TextScaled = true
- tecks2.BorderSizePixel = 0
- tecks2.Text = "??l??"
- tecks2.Font = "SciFi"
- tecks2.TextSize = 30
- tecks2.TextStrokeTransparency = 1
- tecks2.TextColor3 = Color3.new(255,255,255)
- tecks2.TextStrokeColor3 = Color3.new(0,0,0)
- tecks2.Size = UDim2.new(1,0,0.5,0)
- tecks2.Parent = naeeym2
- 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
- function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE)
- local NEWPART = IT("Part")
- NEWPART.formFactor = FORMFACTOR
- NEWPART.Reflectance = REFLECTANCE
- NEWPART.Transparency = TRANSPARENCY
- NEWPART.CanCollide = false
- NEWPART.Locked = true
- 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
- --//=================================\\
- --|| CUSTOMIZATION
- --\\=================================//
- Class_Name = "??l??.exe"
- Weapon_Name = "Add-ons"
- Custom_Colors = {
- Custom_Color_1 = BRICKC("Institutional white"); --1st color for the weapon.
- Custom_Color_2 = BRICKC("Institutional white"); --2nd color for the weapon.
- Custom_Color_3 = BRICKC("Institutional white"); --Color for the abilities.
- Custom_Color_4 = BRICKC("Institutional white"); --Color for the secondary bar.
- Custom_Color_5 = BRICKC("Institutional white"); --Color for the mana bar.
- Custom_Color_6 = BRICKC("Institutional white"); --Color for the health bar.
- Custom_Color_7 = BRICKC("Institutional white"); --Color for the stun bar.
- Custom_Color_8 = BRICKC("Institutional white"); --Background for the mana bar.
- Custom_Color_9 = BRICKC("Institutional white"); --Background for the secondary mana bar.
- Custom_Color_10 = BRICKC("Institutional white"); --Background for the stun bar.
- Custom_Color_11 = BRICKC("Institutional white"); --Background for the health bar.
- Custom_Color_12 = BRICKC("Institutional white"); --Background for the abilities.
- }
- Player_Size = 1 --Size of the player.
- Animation_Speed = 3
- Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
- local Speed = 16
- local Effects2 = {}
- --//=================================\\
- --|| END OF CUSTOMIZATION
- --\\=================================//
- 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, "Neon", 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, "Neon", 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
- --//=================================\\
- --|| USEFUL VALUES
- --\\=================================//
- 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 CO1 = 0
- local CO2 = 0
- local CO3 = 0
- local CO4 = 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 LASTPOINT = nil
- local BLCF = nil
- local SCFR = nil
- local STAGGERHITANIM = false
- local STAGGERANIM = false
- local STUNANIM = false
- local CRITCHANCENUMBER = 0
- local IDLENUMBER = 0
- local DONUMBER = 0
- local HANDIDLE = false
- local SINE = 0
- local CHANGE = 2 / Animation_Speed
- local WALKINGANIM = false
- local WALK = 0
- local KEYHOLD = false
- local DISABLEJUMPING = false
- local HASBEENBLOCKED = false
- local STUNDELAYNUMBER = 0
- local MANADELAYNUMBER = 0
- local SECONDARYMANADELAYNUMBER = 0
- 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", nil)
- WEAPONGUI.Name = "Weapon GUI"
- local WEAPONTOOL = IT("HopperBin", nil)
- WEAPONTOOL.Name = Weapon_Name
- 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 CUTSOUNDS = {"645750958","645747150"}
- local VICIOUSWOOSH = "658941933"
- local RELEASESOUND = "565538688"
- local CHARGESOUND = "565538601"
- local UNANCHOR = true
- local MAGICPARTICLE = "1229782954"
- --//=================================\\
- --\\=================================//
- --//=================================\\
- --|| STATS
- --\\=================================//
- if Character:FindFirstChild("Stats") ~= nil then
- Character:FindFirstChild("Stats").Parent = nil
- end
- local Stats = IT("Folder", nil)
- Stats.Name = "Stats"
- local ChangeStat = IT("Folder", Stats)
- ChangeStat.Name = "ChangeStat"
- local Defense = IT("NumberValue", Stats)
- Defense.Name = "Defense"
- Defense.Value = 1
- local Movement = IT("NumberValue", Stats)
- Movement.Name = "Movement"
- Movement.Value = 1
- local Damage = IT("NumberValue", Stats)
- Damage.Name = "Damage"
- Damage.Value = 1
- local Mana = IT("NumberValue", Stats)
- Mana.Name = "Mana"
- Mana.Value = 0
- local SecondaryMana = IT("NumberValue", Stats)
- SecondaryMana.Name = "SecondaryMana"
- SecondaryMana.Value = 0
- local CanCrit = IT("BoolValue", Stats)
- CanCrit.Name = "CanCrit"
- CanCrit.Value = false
- local CritChance = IT("NumberValue", Stats)
- CritChance.Name = "CritChance"
- CritChance.Value = 20
- local CanPenetrateArmor = IT("BoolValue", Stats)
- CanPenetrateArmor.Name = "CanPenetrateArmor"
- CanPenetrateArmor.Value = false
- local AntiTeamKill = IT("BoolValue", Stats)
- AntiTeamKill.Name = "AntiTeamKill"
- AntiTeamKill.Value = false
- local Rooted = IT("BoolValue", Stats)
- Rooted.Name = "Rooted"
- Rooted.Value = false
- local Block = IT("BoolValue", Stats)
- Block.Name = "Block"
- Block.Value = false
- local RecentEnemy = IT("ObjectValue", Stats)
- RecentEnemy.Name = "RecentEnemy"
- RecentEnemy.Value = nil
- local StaggerHit = IT("BoolValue", Stats)
- StaggerHit.Name = "StaggerHit"
- StaggerHit.Value = false
- local Stagger = IT("BoolValue", Stats)
- Stagger.Name = "Stagger"
- Stagger.Value = false
- local Stun = IT("BoolValue", Stats)
- Stun.Name = "Stun"
- Stun.Value = false
- local StunValue = IT("NumberValue", Stats)
- StunValue.Name = "StunValue"
- StunValue.Value = 0
- --//=================================\\
- --\\=================================//
- --//=================================\\
- --|| DEBUFFS / BUFFS
- --\\=================================//
- local DEFENSECHANGE1 = IT("NumberValue", ChangeStat)
- DEFENSECHANGE1.Name = "ChangeDefense"
- DEFENSECHANGE1.Value = 0
- local MOVEMENTCHANGE1 = IT("NumberValue", nil)
- MOVEMENTCHANGE1.Name = "ChangeMovement"
- MOVEMENTCHANGE1.Value = 0
- --//=================================\\
- --\\=================================//
- --//=================================\\
- --|| SAZERENOS' ARTIFICIAL HEARTBEAT
- --\\=================================//
- 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)
- --//=================================\\
- --\\=================================//
- --//=================================\\
- --|| SOME FUNCTIONS
- --\\=================================//
- 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 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 = C3(255, 255, 255)
- label.TextStrokeTransparency = STROKETRANSPARENCY
- label.TextTransparency = TRANSPARENCY
- label.FontSize = TEXTFONTSIZE
- label.Font = TEXTFONT
- label.BorderSizePixel = BORDERSIZEPIXEL
- label.TextScaled = true
- 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
- function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
- local NEWSOUND = nil
- coroutine.resume(coroutine.create(function()
- NEWSOUND = IT("Sound", PARENT)
- NEWSOUND.Volume = VOLUME
- NEWSOUND.Pitch = PITCH
- NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
- --Swait()
- NEWSOUND:play()
- if DOESLOOP == false then
- repeat Swait() until NEWSOUND.Playing == false
- NEWSOUND:remove()
- elseif DOESLOOP == true then
- NEWSOUND.Looped = true
- 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
- function CreateWave(inair,size,doesrotate,rotatedirection,waitt,part,offset,color)
- local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0))
- local mesh = IT("SpecialMesh",wave)
- mesh.MeshType = "FileMesh"
- wave.Anchored = true
- mesh.MeshId = "http://www.roblox.com/asset/?id=20329976"
- mesh.Scale = VT(size,size,size)
- mesh.Offset = VT(0,0,-size/8)
- wave.CFrame = CF(part.p) * CF(0,offset,0) * ANGLES(RAD(inair),RAD(0),RAD(0))
- coroutine.resume(coroutine.create(function(PART)
- for i = 1, waitt do
- Swait()
- mesh.Scale = mesh.Scale + VT(size/5,0,size/5)
- mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
- if doesrotate == true then
- wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0)
- end
- wave.Transparency = wave.Transparency + (0.5/waitt)
- if wave.Transparency > 0.99 then
- wave:remove()
- end
- end
- end))
- end
- function CreateSwirl(inair,size,doesrotate,rotatedirection,waitt,part,offset,color)
- local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0))
- local mesh = IT("SpecialMesh",wave)
- mesh.MeshType = "FileMesh"
- wave.Anchored = true
- mesh.MeshId = "http://www.roblox.com/asset/?id=1051557"
- mesh.Scale = VT(size,size,size)
- wave.CFrame = CF(part.Position) * CF(0,offset,0) * ANGLES(RAD(inair),RAD(0),RAD(0))
- coroutine.resume(coroutine.create(function(PART)
- for i = 1, waitt do
- Swait()
- mesh.Scale = mesh.Scale + VT(size/5,size/5,size/5)
- if doesrotate == true then
- wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0)
- end
- wave.Transparency = wave.Transparency + (0.5/waitt)
- if wave.Transparency > 0.99 then
- wave:remove()
- end
- end
- end))
- end
- function CreateTornado(inair,size,doesrotate,rotatedirection,waitt,part,offset,color)
- local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0))
- local mesh = IT("SpecialMesh",wave)
- mesh.MeshType = "FileMesh"
- wave.Anchored = true
- mesh.MeshId = "http://www.roblox.com/asset/?id=102638417"
- mesh.Scale = VT(size,size,size)
- wave.CFrame = CF(part.Position) * CF(0,offset,0) * ANGLES(RAD(inair),RAD(0),RAD(0))
- coroutine.resume(coroutine.create(function(PART)
- for i = 1, waitt do
- Swait()
- mesh.Scale = mesh.Scale + VT(size/5,0,size/5)
- if doesrotate == true then
- wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0)
- end
- wave.Transparency = wave.Transparency + (0.5/waitt)
- if wave.Transparency > 0.99 then
- wave:remove()
- end
- end
- end))
- end
- function CreateRing(inair,size,doesrotate,rotatedirection,waitt,part,offset,spin1,spin2,color)
- 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 = VT(size,size,size)
- wave.Anchored = true
- mesh.Offset = VT(0,0,0)
- wave.CFrame = CF(part.Position) * CF(0,offset,0) * ANGLES(RAD(inair),RAD(0),RAD(0))
- coroutine.resume(coroutine.create(function(PART)
- for i = 1, waitt do
- Swait()
- mesh.Scale = mesh.Scale + VT(size/5,size/5,size/5)
- if doesrotate == true then
- wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(spin2, rotatedirection, spin1)
- end
- wave.Transparency = wave.Transparency + (0.5/waitt)
- if wave.Transparency > 0.99 then
- wave:remove()
- end
- end
- end))
- end
- function MagicSphere(size,waitt,part,color)
- local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(color), "Effect", VT(0,0,0))
- local mesh = IT("SpecialMesh",wave)
- mesh.MeshType = "Sphere"
- wave.Anchored = true
- mesh.Scale = VT(size,size,size)
- mesh.Offset = VT(0,0,0)
- wave.CFrame = part * ANGLES(RAD(0),RAD(0),RAD(0))
- coroutine.resume(coroutine.create(function(PART)
- for i = 1, waitt do
- Swait()
- mesh.Scale = mesh.Scale + VT(size/5,size/5,size/5)
- wave.Transparency = wave.Transparency + (1/waitt)
- if wave.Transparency > 0.99 then
- wave:remove()
- end
- end
- end))
- end
- function MagicBlock(size,waitt,part,offset,color)
- local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(color), "Effect", VT(size,size,size))
- local mesh = IT("BlockMesh",wave)
- wave.Anchored = true
- wave.CFrame = CF(part.Position) * CF(0,offset,0) * ANGLES(RAD(0),RAD(0),RAD(0))
- coroutine.resume(coroutine.create(function(PART)
- for i = 1, waitt do
- Swait()
- mesh.Scale = mesh.Scale + VT(size/5,size/5,size/5)
- wave.CFrame = CF(wave.Position) * ANGLES(RAD(math(-360,360)),RAD(math(-360,360)),RAD(math(-360,360)))
- wave.Transparency = wave.Transparency + (1/waitt)
- if wave.Transparency > 0.99 then
- wave:remove()
- end
- end
- end))
- end
- local EyeSizes={
- NumberSequenceKeypoint.new(0,0.5,0),
- NumberSequenceKeypoint.new(1,0.2,0)
- }
- local EyeTrans={
- NumberSequenceKeypoint.new(0,0,0),
- NumberSequenceKeypoint.new(1,1,0)
- }
- local PE=Instance.new("ParticleEmitter")
- PE.LightEmission=0.3
- PE.Size=NumberSequence.new(EyeSizes)
- PE.Transparency=NumberSequence.new(EyeTrans)
- PE.Rotation=NumberRange.new(0,360)
- PE.LockedToPart = false
- PE.Speed = NumberRange.new(0,0,0)
- PE.ZOffset = 0.3
- PE.Rate = 999
- PE.Name = "Particles"
- function CreateParticles(art,text,accel,drag,lifetime,type,isenabledbydefault,locked)
- local particle = nil
- coroutine.resume(coroutine.create(function(PART)
- particle = PE:Clone()
- Swait()
- particle.Rate = 999
- particle.Parent = art
- particle.Acceleration = accel
- if type == "Fire" then
- local EyeSizes={
- NumberSequenceKeypoint.new(0,0.5,0.3),
- NumberSequenceKeypoint.new(1,0.2,0.2)
- }
- particle.Size = NumberSequence.new(EyeSizes)
- elseif type == "Smoke" then
- local EyeSizes={
- NumberSequenceKeypoint.new(0,0.5,0),
- NumberSequenceKeypoint.new(1,5,0.5)
- }
- particle.Size = NumberSequence.new(EyeSizes)
- elseif type == "Solid" then
- local EyeSizes={
- NumberSequenceKeypoint.new(0,0.5,0),
- NumberSequenceKeypoint.new(1,0.5,0)
- }
- particle.Size = NumberSequence.new(EyeSizes)
- end
- particle.Lifetime=NumberRange.new(lifetime)
- particle.Drag = drag
- if locked == true then
- particle.LockedToPart = true
- end
- particle.Texture = "http://www.roblox.com/asset/?id="..text
- particle.Enabled = isenabledbydefault
- end))
- return particle
- end
- local EyeSizes={
- NumberSequenceKeypoint.new(0,0.5,0),
- NumberSequenceKeypoint.new(1,0.2,0)
- }
- local EyeTrans={
- NumberSequenceKeypoint.new(0,0,0),
- NumberSequenceKeypoint.new(1,1,0)
- }
- local PE2=Instance.new("ParticleEmitter")
- PE2.LightEmission=0.8
- PE2.Size=NumberSequence.new(EyeSizes)
- PE2.Transparency=NumberSequence.new(EyeTrans)
- PE2.Rotation=NumberRange.new(0,360)
- PE2.LockedToPart = false
- PE2.Speed = NumberRange.new(0,0,0)
- PE2.ZOffset = 0.3
- PE2.Rate = 999
- PE2.VelocitySpread = 90000
- PE2.Name = "Particles"
- function CreateParticles2(art,accel,drag,lifetime,type,isenabledbydefault,locked,size,speed)
- local particle = nil
- coroutine.resume(coroutine.create(function(PART)
- particle = PE2:Clone()
- Swait()
- particle.Rate = 999
- particle.Parent = art
- particle.Acceleration = accel
- if type == "Fire" then
- local EyeSizes={
- NumberSequenceKeypoint.new(0,size,size/2),
- NumberSequenceKeypoint.new(1,size/4,size/8)
- }
- particle.Size = NumberSequence.new(EyeSizes)
- elseif type == "Smoke" then
- local EyeSizes={
- NumberSequenceKeypoint.new(0,0.5,0),
- NumberSequenceKeypoint.new(1,5,0.5)
- }
- particle.Size = NumberSequence.new(EyeSizes)
- elseif type == "Solid" then
- local EyeSizes={
- NumberSequenceKeypoint.new(0,0.5,0),
- NumberSequenceKeypoint.new(1,0.5,0)
- }
- particle.Size = NumberSequence.new(EyeSizes)
- end
- particle.Lifetime=NumberRange.new(lifetime)
- particle.Drag = drag
- if locked == true then
- particle.LockedToPart = true
- end
- particle.Speed = NumberRange.new(speed,speed,speed)
- particle.Texture = "http://www.roblox.com/asset/?id="..MAGICPARTICLE
- particle.Enabled = isenabledbydefault
- --particle.Color = ColorSequence.new(Color3.new(255, 255, 255))
- end))
- return particle
- end
- local Decal = IT("Decal")
- function CreateMagicCircle(size,doesrotate,rotatedirection,waitt,cframe,alwaysfade)
- local sinkhole = IT("Part")
- sinkhole.Size = VT(size,0,size)
- sinkhole.CFrame = cframe
- --sinkhole.Orientation = VT(0,0,0)
- sinkhole.Parent = Effects
- sinkhole.Material = "Neon"
- sinkhole.Color = C3(255, 255, 255)
- sinkhole.Anchored = true
- sinkhole.CanCollide = false
- sinkhole.Transparency = 1
- local decal = Decal:Clone()
- decal.Parent = sinkhole
- decal.Face = "Top"
- decal.Texture = "http://www.roblox.com/asset/?id=1226241606"
- local decal2 = Decal:Clone()
- decal2.Parent = sinkhole
- decal2.Face = "Bottom"
- decal2.Texture = "http://www.roblox.com/asset/?id=1226241606"
- coroutine.resume(coroutine.create(function(PART)
- for i = 1, waitt do
- Swait()
- if doesrotate == true then
- sinkhole.CFrame = sinkhole.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0)
- end
- if alwaysfade == true then
- decal.Transparency = decal.Transparency + (1/waitt)
- decal2.Transparency = decal.Transparency + (1/waitt)
- end
- if i > waitt-11 and (alwaysfade ~= true) then
- decal.Transparency = decal.Transparency + 0.1
- decal2.Transparency = decal.Transparency + 0.1
- end
- end
- sinkhole.Parent = nil
- end))
- return sinkhole
- end
- --//=================================\\
- --\\=================================//
- --//=================================\\
- --|| WEAPON CREATION
- --\\=================================//
- if Player_Size ~= 1 then
- for _, v in pairs (Weapon:GetChildren()) do
- if v.ClassName == "Motor" or v.ClassName == "Weld" or v.ClassName == "Snap" then
- local p1 = v.Part1
- v.Part1 = nil
- local cf1, cf2, cf3, cf4, cf5, cf6, cf7, cf8, cf9, cf10, cf11, cf12 = v.C1:components()
- v.C1 = CF(cf1 * Player_Size, cf2 * Player_Size, cf3 * Player_Size, cf4, cf5, cf6, cf7, cf8, cf9, cf10, cf11, cf12)
- v.Part1 = p1
- elseif v.ClassName == "Part" then
- for _, b in pairs (v:GetChildren()) do
- if b.ClassName == "SpecialMesh" or b.ClassName == "BlockMesh" then
- b.Scale = VT(b.Scale.x * Player_Size, b.Scale.y * Player_Size, b.Scale.z * Player_Size)
- end
- end
- end
- end
- end
- Swait()
- local Plate = IT("Part",Weapon)
- Plate.Size = VT(1,0.1,1)
- Plate.Transparency = 1
- Plate.CanCollide = false
- Plate.CFrame = LeftLeg.CFrame * CF(0,-1.1,0)
- CreateParticles(Plate,MAGICPARTICLE,VT(0,2,0),2,2,"Fire",true,true)
- weldBetween(LeftLeg,Plate)
- local Plate = IT("Part",Weapon)
- Plate.Size = VT(1,0.1,1)
- Plate.Transparency = 1
- Plate.CanCollide = false
- Plate.CFrame = RightLeg.CFrame * CF(0,-1.1,0)
- CreateParticles(Plate,MAGICPARTICLE,VT(0,2,0),2,2,"Fire",true,true)
- weldBetween(RightLeg,Plate)
- local Plate = IT("Part",Weapon)
- Plate.Size = VT(1,0.1,1)
- Plate.Transparency = 1
- Plate.CanCollide = false
- Plate.CFrame = RightArm.CFrame * CF(0,-1.1,0)
- CreateParticles(Plate,MAGICPARTICLE,VT(0,2,0),2,2,"Fire",true,true)
- weldBetween(RightArm,Plate)
- local Plate = IT("Part",Weapon)
- Plate.Size = VT(1,0.1,1)
- Plate.Transparency = 1
- Plate.CanCollide = false
- Plate.CFrame = LeftArm.CFrame * CF(0,-1.1,0)
- CreateParticles(Plate,MAGICPARTICLE,VT(0,2,0),2,2,"Fire",true,true)
- weldBetween(LeftArm,Plate)
- local eye = IT("Part",Weapon)
- eye.Size = VT(0.2,0.2,0.2)
- eye.Shape = "Ball"
- eye.CFrame = Head.CFrame * CF(0.125,0.2,-0.55)
- eye.Material = "Neon"
- eye.BrickColor = BRICKC("Institutional white")
- weldBetween(Head,eye)
- 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)
- print(Class_Name.." loaded.")
- --//=================================\\
- --\\=================================//
- --//=================================\\
- --|| DAMAGE FUNCTIONS
- --\\=================================//
- function StatLabel(LABELTYPE, CFRAME, TEXT, COLOR)
- local STATPART = CreatePart(3, Effects, "Neon", 0, 1, "Institutional white", "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)
- if LABELTYPE == "Normal" then
- BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 6, MRANDOM(-2, 2))
- elseif LABELTYPE == "Debuff" then
- BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 8, MRANDOM(-2, 2))
- elseif LABELTYPE == "Interruption" then
- BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2,2), 8, MRANDOM(-2, 2))
- end
- 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)
- wait(0.2)
- for i=1, 5 do
- wait()
- THEBODYPOSITION.Position = THEPART.Position - VT(0, 0.5 ,0)
- end
- wait(1.2)
- for i=1, 5 do
- wait()
- THETEXTLABEL.TextTransparency = THETEXTLABEL.TextTransparency + 0.2
- THETEXTLABEL.TextStrokeTransparency = THETEXTLABEL.TextStrokeTransparency + 0.2
- THEBODYPOSITION.position = THEPART.Position + VT(0, 0.5, 0)
- end
- THEPART.Parent = nil
- end),STATPART, BODYPOSITION, TEXTLABEL)
- end
- --//=================================\\
- --|| DAMAGING
- --\\=================================//
- function dealdamage(hit,min,max,maxstrength,beserk,critrate,critmultiplier)
- if hit.Parent:FindFirstChildOfClass("Humanoid") and hit.Parent:FindFirstChild("HitBy"..Player.Name) == nil then
- local humanoid = hit.Parent:FindFirstChildOfClass("Humanoid")
- local dmg = math.random(min,max)
- if humanoid.Health > 0 then
- if beserk == true then
- humanoid.Health = 0
- else
- CreateSound("260430060", hit, 1.2, MRANDOM(7, 12) / 10)
- hit.Velocity = CFrame.new(Torso.Position,hit.Position).lookVector*5*maxstrength
- if math.random(1,100) < critrate+1 then
- humanoid.Health = humanoid.Health - dmg*critmultiplier
- StatLabel("Normal", hit.CFrame * CF(0, 0 + (hit.Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0))
- else
- humanoid.Health = humanoid.Health - dmg
- StatLabel("Normal", hit.CFrame * CF(0, 0 + (hit.Size.z - 1), 0), dmg, C3(0, 0, 0))
- end
- local defence = Instance.new("BoolValue",hit.Parent)
- defence.Name = ("HitBy"..Player.Name)
- game:GetService("Debris"):AddItem(defence, 0.5)
- end
- end
- end
- end
- function AoEDamage(position,radius,min,max,maxstrength,beserk,critrate,critmultiplier,CanBeDodgedByJumping)
- 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:FindFirstChild("Humanoid") then
- if v.Humanoid.Health ~= 0 then
- if CanBeDodgedByJumping == true then
- if body[part].Position.Y < position.Y+5 then
- if math.random(1,100) < critrate+1 then
- v.Humanoid.Health = v.Humanoid.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
- v.Humanoid.Health = v.Humanoid.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.5)
- end
- else
- if beserk == true then
- v.Humanoid.Health = 0
- end
- if math.random(1,100) < critrate+1 then
- v.Humanoid.Health = v.Humanoid.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
- v.Humanoid.Health = v.Humanoid.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.5)
- 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 attractnearest(postype,position,range,maxstrength,last)
- if postype == "Vector" then
- 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 body[part]:FindFirstChild("ATTRACT") == nil then
- local bv = Instance.new("BodyVelocity")
- bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
- bv.velocity = CF(body[part].Position,position).lookVector*maxstrength
- bv.Parent = body[part]
- bv.Name = "ATTRACT"
- else
- coroutine.resume(coroutine.create(function()
- for i = 1, last/5 do
- Swait(5)
- body[part].ATTRACT.velocity = CF(body[part].Position,position).lookVector*maxstrength
- end
- body[part].ATTRACT:remove()
- end))
- end
- end
- end
- end
- if v.ClassName == "Part" then
- if v.Anchored == false and (v.Position - position).Magnitude < range then
- if v:FindFirstChild("ATTRACT") == nil then
- local bv = Instance.new("BodyVelocity")
- bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
- bv.velocity = CF(v.Position,position).lookVector*maxstrength
- bv.Parent = v
- bv.Name = "ATTRACT"
- else
- coroutine.resume(coroutine.create(function()
- for i = 1, last/5 do
- Swait(5)
- v.ATTRACT.velocity = CF(v.Position,position).lookVector*maxstrength
- end
- v.ATTRACT:remove()
- end))
- end
- end
- end
- end
- elseif postype == "Part" then
- 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.Position).Magnitude < range then
- if body[part]:FindFirstChild("ATTRACT") == nil then
- local bv = Instance.new("BodyVelocity")
- bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
- bv.velocity = CF(body[part].Position,position.Position).lookVector*maxstrength
- bv.Parent = body[part]
- bv.Name = "ATTRACT"
- else
- coroutine.resume(coroutine.create(function()
- for i = 1, last/5 do
- Swait(5)
- body[part].ATTRACT.velocity = CF(body[part].Position,position.Position).lookVector*maxstrength
- end
- body[part].ATTRACT:remove()
- end))
- end
- end
- end
- end
- if v.ClassName == "Part" then
- if v.Anchored == false and (v.Position - position.Position).Magnitude < range then
- if v:FindFirstChild("ATTRACT") == nil then
- local bv = Instance.new("BodyVelocity")
- bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
- bv.velocity = CF(v.Position,position.Position).lookVector*maxstrength
- bv.Parent = v
- bv.Name = "ATTRACT"
- else
- coroutine.resume(coroutine.create(function()
- for i = 1, last/5 do
- Swait(5)
- v.ATTRACT.velocity = CF(v.Position,position.Position).lookVector*maxstrength
- end
- v.ATTRACT:remove()
- end))
- end
- end
- end
- end
- end
- end
- function killnearest(position,range,maxstrength,candestroy)
- 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
- if candestroy == true then
- table.insert(Effects2,{body[part],"Disappear",0.02,2,2,2,2})
- 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 < range then
- if candestroy == true then
- table.insert(Effects2,{v,"Disappear",0.02,2,2,2,2})
- end
- v.Velocity = CFrame.new(position,v.Position).lookVector*5*maxstrength
- end
- end
- end
- end
- --//=================================\\
- --|| ATTACK FUNCTIONS AND STUFF
- --\\=================================//
- 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 turnto(pos)
- RootPart.CFrame = CF(RootPart.Position,VT(pos.X,RootPart.Position.Y,pos.Z))
- end
- function GraviBomb()
- ATTACK = true
- for i=0, 1, 0.1 / Animation_Speed do
- Swait()
- RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0.7 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(-40)), 0.4 / Animation_Speed)
- Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(35)) * ANGLES(RAD(2.5), RAD(0), RAD(0)), 0.4 / Animation_Speed)
- RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(70), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
- LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.75 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(50)) * ANGLES(RAD(80), RAD(-20), RAD(-30)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
- RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / 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(10)), 0.2 / Animation_Speed)
- end
- MagicSphere(25,25,LeftArm.CFrame*CF(0,-1,0),"Institutional white")
- MagicSphere(20,25,LeftArm.CFrame*CF(0,-1,0),"Institutional white")
- coroutine.resume(coroutine.create(function()
- local cframe = CF(Mouse.Hit.p)
- local circle = CreateMagicCircle(75,true,0.05,120,cframe,false)
- for i = 1, 5 do
- CreateSound(CUTSOUNDS[MRANDOM(1, #CUTSOUNDS)], Effects, 2, 1)
- local sphere = IT("Part",Effects)
- sphere.Shape = "Ball"
- sphere.Size = VT(50,50,50)
- sphere.Anchored = true
- sphere.CanCollide = false
- sphere.Material = "Neon"
- sphere.BrickColor = BRICKC("Institutional white")
- sphere.Transparency = 0
- sphere.CFrame = cframe
- for i = 1, 10 do
- Swait(2)
- attractnearest("Vector",cframe.p,75,50,10)
- sphere.CFrame = cframe
- sphere.Size = sphere.Size - VT(5,5,5)
- sphere.CFrame = cframe
- end
- sphere:remove()
- end
- local scale = 5
- coroutine.resume(coroutine.create(function()
- CreateSound(RELEASESOUND, Effects, 2, 1)
- MagicSphere(100,125,cframe,"Institutional white")
- MagicSphere(75,125,cframe,"Institutional white")
- CreateSwirl(180,6,true,0.3,225,circle,0,"Institutional white")
- CreateSwirl(180,4,true,0.3,225,circle,0,"Institutional white")
- CreateSwirl(180,2,true,0.3,225,circle,0,"Institutional white")
- for i = 1, 15 do
- Swait()
- killnearest(cframe.p,25,150)
- end
- end))
- end))
- for i=0, 1, 0.1 / Animation_Speed do
- Swait()
- RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0.7 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(-30)), 0.4 / Animation_Speed)
- Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(25)) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.4 / Animation_Speed)
- RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(70), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
- LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.25 * Player_Size, -0.25 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(-20 + MRANDOM(-2.5, 2.5))) * ANGLES(RAD(70 + MRANDOM(-2.5, 2.5)), RAD(40), RAD(0)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
- RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / 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(10)), 0.2 / Animation_Speed)
- end
- ATTACK = false
- end
- function GraviSpear()
- ATTACK = true
- for i=0, 1.5, 0.1 / Animation_Speed do
- Swait()
- turnto(Mouse.Hit.p)
- RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0.7 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(75)), 0.4 / Animation_Speed)
- Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-75)), 0.2 / Animation_Speed)
- RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
- LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(25), RAD(-25)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
- RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / 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(10)), 0.2 / Animation_Speed)
- end
- local spear = IT("Part",Effects)
- spear.Anchored = true
- spear.CanCollide = false
- spear.Shape = "Ball"
- spear.Size = VT(0,0,0)
- spear.Material = "Neon"
- spear.Transparency = 0.2
- spear.BrickColor = BRICKC("Institutional white")
- spear.CFrame = RightArm.CFrame * CF(0,-4,0)
- local inner = spear:Clone()
- inner.Parent = spear
- inner.Size = VT(0,0,0)
- inner.BrickColor = BRICKC("Institutional white")
- inner.CFrame = spear.CFrame
- for i = 1, 10 do
- Swait()
- turnto(Mouse.Hit.p)
- spear.CFrame = RightArm.CFrame * CF(0,-4,0)
- inner.CFrame = spear.CFrame
- spear.Size = spear.Size + VT(0.4,0.4,0.4)
- inner.Size = inner.Size + VT(0.35,0.35,0.35)
- end
- CreateParticles2(inner,VT(0,0,0),5,1,"Smoke",true,true,1,8)
- MagicSphere(25,25,RightArm.CFrame*CF(0,-1,0),"Institutional white")
- MagicSphere(20,25,RightArm.CFrame*CF(0,-1,0),"Institutional white")
- CreateSound(CUTSOUNDS[MRANDOM(1, #CUTSOUNDS)], RightArm, 6, 1)
- local bv = Instance.new("BodyVelocity")
- bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
- bv.velocity = CF(spear.Position,Mouse.Hit.p).lookVector*65
- bv.Parent = spear
- bv.Name = "MOVE"
- weldBetween(spear,inner)
- spear.Anchored = false
- inner.Anchored = false
- local harm = spear.Touched:Connect(function(hit)
- if hit.Parent ~= Character and hit.Parent ~= Weapon and hit.Parent ~= Effects then
- local cframe = spear.CFrame
- coroutine.resume(coroutine.create(function()
- spear.Parent = nil
- coroutine.resume(coroutine.create(function()
- CreateSound(RELEASESOUND, Effects, 2, 1)
- MagicSphere(60,125,cframe,"Institutional white")
- MagicSphere(50,125,cframe,"Institutional white")
- CreateSwirl(0,6,true,0.3,125,spear,0,"Institutional white")
- CreateSwirl(0,4,true,0.3,125,spear,0,"Institutional white")
- CreateSwirl(0,2,true,0.3,125,spear,0,"Institutional white")
- for i = 1, 15 do
- Swait()
- killnearest(cframe.p,15,150)
- end
- end))
- end))
- end
- end)
- coroutine.resume(coroutine.create(function()
- repeat
- Swait()
- CreateSwirl(0,2,true,0.3,25,spear,0,"Institutional white")
- attractnearest("Part",spear,65,70,5)
- until spear.Parent == nil
- end))
- ATTACK = false
- end
- function WarpSpear()
- ATTACK = true
- for i=0, 1.5, 0.1 / Animation_Speed do
- Swait()
- turnto(Mouse.Hit.p)
- RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0.7 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(75)), 0.4 / Animation_Speed)
- Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-75)), 0.2 / Animation_Speed)
- RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
- LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(25), RAD(-25)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
- RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / 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(10)), 0.2 / Animation_Speed)
- end
- local spear = IT("Part",Effects)
- spear.Anchored = true
- spear.CanCollide = false
- spear.Shape = "Ball"
- spear.Size = VT(0,0,0)
- spear.Material = "Neon"
- spear.Transparency = 0.2
- spear.BrickColor = BRICKC("Institutional white")
- spear.CFrame = RightArm.CFrame * CF(0,-4,0)
- local inner = spear:Clone()
- inner.Parent = spear
- inner.Size = VT(0,0,0)
- inner.BrickColor = BRICKC("Institutional white")
- inner.CFrame = spear.CFrame
- for i = 1, 5 do
- Swait()
- turnto(Mouse.Hit.p)
- spear.CFrame = RightArm.CFrame * CF(0,-4,0)
- inner.CFrame = spear.CFrame
- spear.Size = spear.Size + VT(0.4,0.4,0.4)
- inner.Size = inner.Size + VT(0.35,0.35,0.35)
- end
- MagicSphere(25,25,RightArm.CFrame*CF(0,-1,0),"Institutional white")
- MagicSphere(20,25,RightArm.CFrame*CF(0,-1,0),"Institutional white")
- CreateSound(CUTSOUNDS[MRANDOM(1, #CUTSOUNDS)], RightArm, 6, 1)
- local bv = Instance.new("BodyVelocity")
- bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
- bv.velocity = CF(spear.Position,Mouse.Hit.p).lookVector*100
- bv.Parent = spear
- bv.Name = "MOVE"
- weldBetween(spear,inner)
- spear.Anchored = false
- inner.Anchored = false
- local HIT = false
- local harm = spear.Touched:Connect(function(hit)
- if HIT == false and hit.Parent ~= Character and hit.Parent ~= Weapon and hit.Parent ~= Effects then
- local cframe = spear.CFrame
- HIT = true
- coroutine.resume(coroutine.create(function()
- spear.Parent = nil
- RootPart.CFrame = CF(spear.Position,Mouse.Hit.p)
- coroutine.resume(coroutine.create(function()
- CreateSound(RELEASESOUND, Effects, 2, 1.5)
- MagicSphere(30,105,cframe,"Institutional white")
- MagicSphere(25,105,cframe,"Institutional white")
- for i = 1, 15 do
- Swait()
- killnearest(cframe.p,7.5,150)
- end
- end))
- end))
- end
- end)
- coroutine.resume(coroutine.create(function()
- Swait(75)
- if HIT == false then
- local cframe = spear.CFrame
- HIT = true
- coroutine.resume(coroutine.create(function()
- spear.Parent = nil
- RootPart.CFrame = CF(spear.Position,Mouse.Hit.p)
- coroutine.resume(coroutine.create(function()
- CreateSound(RELEASESOUND, Effects, 2, 1.5)
- MagicSphere(30,105,cframe,"Institutional white")
- MagicSphere(25,105,cframe,"Institutional white")
- for i = 1, 15 do
- Swait()
- killnearest(cframe.p,7.5,150)
- end
- end))
- end))
- end
- end))
- coroutine.resume(coroutine.create(function()
- local loop = 0
- repeat
- Swait()
- loop = loop + 1
- if loop == 4 then
- MagicSphere(25,15,spear.CFrame,"Institutional white")
- end
- if loop == 7 then
- loop = 0
- MagicSphere(25,15,spear.CFrame,"Institutional white")
- end
- attractnearest("Part",spear,12.5,50,5)
- until spear.Parent == nil
- end))
- ATTACK = false
- end
- function GravityGlobe()
- ATTACK = true
- Rooted = true
- for i=0, 1, 0.1 / Animation_Speed do
- Swait()
- RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0.7 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(-40)), 0.4 / Animation_Speed)
- Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(35)) * ANGLES(RAD(2.5), RAD(0), RAD(0)), 0.4 / Animation_Speed)
- RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(70), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
- LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.75 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(50)) * ANGLES(RAD(80), RAD(-20), RAD(-30)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
- RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / 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(10)), 0.2 / Animation_Speed)
- end
- coroutine.resume(coroutine.create(function()
- CreateMagicCircle(100,true,0.02,50,CF(RootPart.Position) * CF(0,-2.8,0),true)
- local cframe = RootPart.CFrame
- CreateSound(RELEASESOUND, Effects, 2, 1)
- local sphere = IT("Part",Effects)
- sphere.Shape = "Ball"
- sphere.Size = VT(0,0,0)
- sphere.Anchored = true
- sphere.CanCollide = false
- sphere.Material = "Neon"
- sphere.Transparency = 0.5
- sphere.BrickColor = BRICKC("Institutional white")
- sphere.CFrame = cframe
- local sphere2 = IT("Part",Effects)
- sphere2.Shape = "Ball"
- sphere2.Size = VT(0,0,0)
- sphere2.Anchored = true
- sphere2.CanCollide = false
- sphere2.Material = "Neon"
- sphere2.Transparency = 0.3
- sphere2.BrickColor = BRICKC("Institutional white")
- sphere2.CFrame = cframe
- for i = 1, 10 do
- Swait(2)
- attractnearest("Vector",cframe.p,50,50,10)
- sphere.CFrame = cframe
- sphere.Size = sphere.Size + VT(4,4,4)
- sphere2.CFrame = cframe
- sphere2.Size = sphere2.Size + VT(3.5,3.5,3.5)
- killnearest(cframe.p,15,0)
- end
- local scale = 0.2
- local mode = "shrink"
- for i = 1, 350 do
- Swait()
- if mode == "shrink" then
- scale = scale + scale
- if scale >= - 65 then
- mode = "grow"
- end
- elseif mode == "grow" then
- scale = scale + -scale*2
- if scale <= - 65 then
- mode = "shrink"
- end
- end
- CreateRing(180,5,true,0,50,sphere,0,scale,scale,"Institutional white")
- sphere.Size = sphere.Size + VT(scale,scale,scale)
- attractnearest("Vector",cframe.p,50,50,5)
- killnearest(cframe.p,15,0)
- end
- for i = 1, 10 do
- Swait(2)
- sphere.CFrame = cframe
- sphere.Size = sphere.Size - VT(5,5,5)
- sphere.CFrame = cframe
- sphere2.CFrame = cframe
- sphere2.Size = sphere2.Size - VT(3.5,3.5,3.5)
- end
- sphere:remove()
- sphere2:remove()
- end))
- for i=0, 1, 0.1 / Animation_Speed do
- Swait()
- RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0.7 * Player_Size) * ANGLES(RAD(5), RAD(0), RAD(-30)), 0.4 / Animation_Speed)
- Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(25)) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.4 / Animation_Speed)
- RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(70), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
- LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.25 * Player_Size, -0.25 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(-20 + MRANDOM(-2.5, 2.5))) * ANGLES(RAD(70 + MRANDOM(-2.5, 2.5)), RAD(40), RAD(0)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
- RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / 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(10)), 0.2 / Animation_Speed)
- end
- Rooted = false
- ATTACK = false
- end
- function GravityBeam()
- ATTACK = true
- Rooted = true
- for i=0, 1.5, 0.1 / Animation_Speed do
- Swait()
- turnto(Mouse.Hit.p)
- RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0.7 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(75)), 0.4 / Animation_Speed)
- Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-75)), 0.2 / Animation_Speed)
- RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
- LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(25), RAD(-25)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
- RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size, -1 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 0.2 / 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(10)), 0.2 / Animation_Speed)
- end
- local startpos = RightArm.CFrame*CF(0,-1.5,0).p
- local loop = 0
- local loopsound = CreateSound(CHARGESOUND, RightArm, 10, 1, true)
- local loopsound2 = CreateSound("487214658", Effects, 1, 0, true)
- local pos = nil
- repeat
- if loop < 150 then
- Swait()
- loop = loop + 1
- turnto(Mouse.Hit.p)
- MagicSphere(15,25,RightArm.CFrame*CF(0,-1,0),"Institutional white")
- MagicSphere(12,25,RightArm.CFrame*CF(0,-1,0),"Institutional white")
- else
- loopsound2.Pitch = 1
- loopsound:Stop()
- startpos = RightArm.CFrame*CF(0,-1.5,0).p
- turnto(Mouse.Hit.p)
- MagicSphere(35,25,CF(startpos),"Institutional white")
- MagicSphere(32,25,CF(startpos),"Institutional white")
- local RayHit, RayPos, RayNormal = CastZapRay(startpos, Mouse.Hit.p, 150, Character, false)
- local distance = (startpos - RayPos).magnitude
- local laser = Instance.new("Part",Effects)
- laser.Transparency = 0.5
- laser.CanCollide = false
- laser.Anchored = true
- laser.BrickColor = BrickColor.new("Institutional white")
- laser.Material = "Neon"
- laser.formFactor = Enum.FormFactor.Custom
- laser.Size = Vector3.new(2.5, 2.5, distance)
- laser.CFrame = CFrame.new(startpos, RayPos) * CFrame.new(0, 0, -distance/2)
- local laser2 = Instance.new("Part",Effects)
- laser2.Transparency = 0
- laser2.CanCollide = false
- laser2.Anchored = true
- laser2.BrickColor = BrickColor.new("Institutional white")
- laser2.Material = "Neon"
- laser2.formFactor = Enum.FormFactor.Custom
- laser2.Size = Vector3.new(2, 2, distance)
- laser2.CFrame = CFrame.new(startpos, RayPos) * CFrame.new(0, 0, -distance/2)
- killnearest(RayPos,5,150,true)
- MagicSphere(350,2,CF(RayPos),"Institutional white")
- MagicSphere(320,2,CF(RayPos),"Institutional white")
- if RayHit ~= nil then
- CreateWave(0,5,false,0,25,CF(RayPos),0,"Institutional white")
- end
- attractnearest("Vector",RayPos,40,50,10)
- pos = RayPos
- Swait()
- laser2:remove()
- laser:remove()
- end
- until KEYHOLD == false
- if loop == 150 then
- local cframe = CF(pos)
- coroutine.resume(coroutine.create(function()
- coroutine.resume(coroutine.create(function()
- CreateSound(RELEASESOUND, Effects, 2, 1)
- MagicSphere(500,55,cframe,"Institutional white")
- MagicSphere(450,55,cframe,"Institutional white")
- for i = 1, 15 do
- Swait()
- killnearest(cframe.p,75,150)
- end
- end))
- end))
- end
- loopsound2:remove()
- loopsound:remove()
- Rooted = false
- ATTACK = false
- end
- --//=================================\\
- --|| ASSIGN THINGS TO KEYS
- --\\=================================//
- Humanoid.Changed:connect(function(Jump)
- if Jump == "Jump" and (Disable_Jump == true or DISABLEJUMPING == true) then
- Humanoid.Jump = false
- end
- end)
- function MouseDown(Mouse)
- if ATTACK == false then
- end
- end
- function MouseUp(Mouse)
- HOLD = false
- end
- function KeyDown(Key)
- KEYHOLD = true
- if Key == "q" and ATTACK == false then
- GraviBomb()
- end
- if Key == "e" and ATTACK == false then
- GraviSpear()
- end
- if Key == "r" and ATTACK == false then
- GravityGlobe()
- end
- if Key == "g" and ATTACK == false then
- GravityBeam()
- end
- if Key == "x" and ATTACK == false then
- end
- if Key == "c" and ATTACK == false then
- WarpSpear()
- end
- if Key == "t" and ATTACK == false then
- CreateSound("305685800", Head, 10, 1 ,false)
- 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
- --//=================================\\
- --|| WRAP THE WHOLE SCRIPT UP
- --\\=================================//
- Humanoid.Changed:connect(function(Jump)
- if Jump == "Jump" and (Disable_Jump == true or DISABLEJUMPING == true) then
- Humanoid.Jump = false
- end
- end)
- ANIMATE.Parent = nil
- local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
- IDLEANIMATION:Play()
- while true do
- Swait()
- SINE = SINE + CHANGE
- local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
- local TORSOVERTICALVELOCITY = RootPart.Velocity.y
- local LV = Torso.CFrame:pointToObjectSpace(Torso.Velocity - Torso.Position)
- local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4 * Player_Size, Character)
- local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
- if ANIM == "Walk" and TORSOVELOCITY > 1 then
- RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.1 * COS(SINE / (WALKSPEEDVALUE / 2)) * Player_Size) * ANGLES(RAD(0), RAD(0) - RootPart.RotVelocity.Y / 75, RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
- Neck.C1 = Clerp(Neck.C1, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(2.5 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0) - Head.RotVelocity.Y / 30), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
- --RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
- --LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
- elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
- RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
- Neck.C1 = Clerp(Neck.C1, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
- --RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
- ----LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
- end
- if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
- ANIM = "Jump"
- if ATTACK == false then
- RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0.7 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
- Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
- RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
- LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
- RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0.3 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
- LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0.3 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 0.2 / Animation_Speed)
- end
- elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
- ANIM = "Fall"
- if ATTACK == false then
- RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0.7 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
- Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
- RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(60)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
- LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / 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(20)), 0.2 / 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(10)), 0.2 / Animation_Speed)
- end
- elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
- ANIM = "Idle"
- if ATTACK == false then
- RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0.7 * 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(15 - 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(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
- LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
- RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size - 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
- LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size - 0.2 * COS(SINE / 12) * Player_Size, -0.01 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
- end
- elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
- ANIM = "Walk"
- WALK = WALK + 1 / Animation_Speed
- if WALK >= 15 - (5 * (Humanoid.WalkSpeed / 16 / Player_Size)) then
- WALK = 0
- if WALKINGANIM == true then
- WALKINGANIM = false
- elseif WALKINGANIM == false then
- WALKINGANIM = true
- end
- end
- --RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
- --LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
- if ATTACK == false then
- RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0.7 * Player_Size) * ANGLES(RAD(25), RAD(0), RAD(0)), 0.15 / Animation_Speed*3)
- 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(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
- LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
- RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.3 * Player_Size - 0 * Player_Size, -0.2 * Player_Size) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
- LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size - 0.2 * COS(SINE / 12) * Player_Size, -0.01 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / 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
- --CreateMagicCircle(2 ,false,0,3,LeftLeg.CFrame * CF(0,-1.2,0),true)
- end
- --//=================================\\
- --\\=================================//
- --//====================================================\\--
- --|| END OF SCRIPT
- --\\====================================================//--
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement