Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --// Artuco's Anti Skids Sing Boie \\--
- wait(0.01)
- local plr = game.Players.LocalPlayer
- local char = plr.Character
- local hed = char.Head
- local tors = char.Torso
- local Torso = tors
- local hum = char.Humanoid
- local mouse,Mouse = plr:GetMouse()
- local Player = plr
- local Character = char
- local Humanoid = hum
- local RA = char["Right Arm"]
- local LA = char["Left Arm"]
- local RL = char["Right Leg"]
- local LL = char["Left Leg"]
- local root = char.HumanoidRootPart
- local equipped = false
- local idle = 0
- local change = 1
- local val = 0
- local toim = 0
- local idleanim = 0.4
- local rainbowmode = false
- local chaosmode = false
- modz = Instance.new("Model")
- modz.Name = "efx"
- modz.Parent = char
- Heartbeat = Instance.new("BindableEvent")
- Heartbeat.Name = "Heartbeat"
- Heartbeat.Parent = script
- LS=tors["Left Shoulder"]
- LH=tors["Left Hip"]
- RS=tors["Right Shoulder"]
- RH=tors["Right Hip"]
- Neck=tors.Neck
- radical = math.rad
- angles=CFrame.Angles
- random = math.random
- Vec3 = Vector3.new
- Inst = Instance.new
- cFrame = CFrame.new
- Euler = CFrame.fromEulerAnglesXYZ
- vt = Vector3.new
- bc = BrickColor.new
- br = BrickColor.random
- it = Instance.new
- cf = CFrame.new
- 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
- Cos = math.cos
- Acos = math.acos
- FLOOR = math.floor
- Player_Size = 1 --Size of the player.
- Animation_Speed = 1
- Frame_Speed = 1 / 30 -- (1 / 30) OR (1 / 60)
- CF = CFrame.new
- VT = Vector3.new
- angles = CFrame.Angles
- attack = false
- Euler = CFrame.fromEulerAnglesXYZ
- Rad = math.rad
- IT = Instance.new
- BrickC = BrickColor.new
- Cos = math.cos
- Acos = math.acos
- Sin = math.sin
- Asin = math.asin
- Abs = math.abs
- Mrandom = math.random
- Floor = math.floor
- rd2 = math.random
- local CHANGE = 2 / Animation_Speed
- local cn = CFrame.new
- local mr = math.rad
- local angles = CFrame.Angles
- local ud = UDim2.new
- local c3 = Color3.new
- local Speed = 20
- local r = 255
- local g = 0
- local b = 0
- local Effects2 = {}
- 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 idle=0
- local Anim="Idle"
- local Effects={}
- local gun=false
- local shoot=false
- local sine = 0
- local change = 1
- local ANIMATE = char.Animate
- local ROBLOXIDLEANIMATION = IT("Animation")
- local RootPart = char.HumanoidRootPart
- local RootJoint = RootPart.RootJoint
- local RootCF = CFrame.fromEulerAnglesXYZ(-1.57, 0, 3.14)
- local RHCF = CFrame.fromEulerAnglesXYZ(0, 1.6, 0)
- local LHCF = CFrame.fromEulerAnglesXYZ(0, -1.6, 0)
- ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
- ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
- RW, LW=Instance.new("Weld"), Instance.new("Weld")
- RW.Name="Right Shoulder" LW.Name="Left Shoulder"
- 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=char.HumanoidRootPart
- RootJoint=RootPart.RootJoint
- RootCF=Euler(-1.57,0,3.14)
- necko = CF(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
- RSH, LSH = nil, nil
- RW = Instance.new("Weld")
- LW = Instance.new("Weld")
- RH = tors["Right Hip"]
- LH = tors["Left Hip"]
- RSH = tors["Right Shoulder"]
- LSH = tors["Left Shoulder"]
- RSH.Parent = nil
- LSH.Parent = nil
- RW.Name = "RW"
- RW.Part0 = tors
- RW.C0 = CF(1.5, 0.5, 0)
- RW.C1 = CF(0, 0.5, 0)
- RW.Part1 = RA
- RW.Parent = tors
- LW.Name = "LW"
- LW.Part0 = tors
- LW.C0 = CF(-1.5, 0.5, 0)
- LW.C1 = CF(0, 0.5, 0)
- LW.Part1 = LA
- LW.Parent = tors
- Effects = {}
- --Functions
- 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 swait(num)
- if num == 0 or num == nil then
- Heartbeat.Event:wait()
- else
- for i = 1, num do
- Heartbeat.Event:wait()
- end
- end
- end
- function sphere2(bonuspeed,type,pos,scale,value,value2,value3,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.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
- local scaler2b = 1
- local scaler2c = 1
- if type == "Add" then
- scaler2 = 1*value
- scaler2b = 1*value2
- scaler2c = 1*value3
- elseif type == "Divide" then
- scaler2 = 1/value
- scaler2b = 1/value2
- scaler2c = 1/value3
- end
- coroutine.resume(coroutine.create(function()
- for i = 0,10/bonuspeed,0.1 do
- wait(0.01)
- if type == "Add" then
- scaler2 = scaler2 - 0.01*value/bonuspeed
- scaler2b = scaler2b - 0.01*value/bonuspeed
- scaler2c = scaler2c - 0.01*value/bonuspeed
- elseif type == "Divide" then
- scaler2 = scaler2 - 0.01/value*bonuspeed
- scaler2b = scaler2b - 0.01/value*bonuspeed
- scaler2c = scaler2c - 0.01/value*bonuspeed
- end
- rng.Transparency = rng.Transparency + 0.01*bonuspeed
- rngm.Scale = rngm.Scale + Vector3.new(scaler2*bonuspeed, scaler2b*bonuspeed, scaler2c*bonuspeed)
- end
- rng:Destroy()
- end))
- end
- function chatfunc(Text,chatcolor,font)
- local chat = coroutine.wrap(function()
- if char:FindFirstChild("TalkingBillBoard")~= nil then
- char:FindFirstChild("TalkingBillBoard"):destroy()
- end
- local Bill = Instance.new("BillboardGui",hed)
- Bill.Size = UDim2.new(0,100,0,40)
- Bill.StudsOffset = Vector3.new(0,3,0)
- Bill.Name = "TalkingBillBoard"
- local Hehe = Instance.new("TextLabel",Bill)
- Hehe.BackgroundTransparency = 1
- Hehe.BorderSizePixel = 0
- Hehe.Text = Text
- Hehe.Font = font
- Hehe.TextSize = 40
- Hehe.TextStrokeTransparency = 0
- Hehe.TextColor3 = Color3.new(chatcolor)
- Hehe.TextStrokeColor3 = Color3.new(0,0,0)
- Hehe.Size = UDim2.new(1,0,0.5,0)
- coroutine.resume(coroutine.create(function()
- while Hehe ~= nil do
- wait(0.01)
- Hehe.Position = UDim2.new(math.random(-.4,.4),math.random(-5,5),.05,math.random(-5,5))
- Hehe.Rotation = math.random(-2.5,2.5)
- end
- end))
- for i = 1,string.len(Text) do
- wait(0.01)
- Hehe.Text = string.sub(Text,1,i)
- end
- for i = 0, 1, .025 do
- wait(0.01)
- Bill.ExtentsOffset = Vector3.new(math.random(-i, i), math.random(-i, i), math.random(-i, i))
- Hehe.TextStrokeTransparency = i
- Hehe.TextTransparency = i
- end
- Bill:Destroy()
- end)
- chat()
- 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 RemoveOutlines(part)
- part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10
- 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 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 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 waveEff(bonuspeed,type,typeoftrans,pos,scale,value,value2,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.Material = "Neon"
- rng.Size = Vector3.new(1, 1, 1)
- rng.Transparency = 0
- if typeoftrans == "In" then
- rng.Transparency = 1
- end
- rng.TopSurface = 0
- rng.BottomSurface = 0
- rng.CFrame = pos
- local rngm = Instance.new("SpecialMesh", rng)
- rngm.MeshType = "FileMesh"
- rngm.MeshId = "rbxassetid://20329976"
- rngm.Scale = scale
- local scaler2 = 1
- local scaler2b = 1
- if type == "Add" then
- scaler2 = 1*value
- scaler2b = 1*value2
- elseif type == "Divide" then
- scaler2 = 1/value
- scaler2b = 1/value2
- end
- local randomrot = math.random(1,2)
- coroutine.resume(coroutine.create(function()
- for i = 0,10/bonuspeed,0.1 do
- wait(0.01)
- if type == "Add" then
- scaler2 = scaler2 - 0.01*value/bonuspeed
- scaler2b = scaler2b - 0.01*value/bonuspeed
- elseif type == "Divide" then
- scaler2 = scaler2 - 0.01/value*bonuspeed
- scaler2b = scaler2b - 0.01/value*bonuspeed
- end
- if randomrot == 1 then
- rng.CFrame = rng.CFrame*CFrame.Angles(0,math.rad(5*bonuspeed/2),0)
- elseif randomrot == 2 then
- rng.CFrame = rng.CFrame*CFrame.Angles(0,math.rad(-5*bonuspeed/2),0)
- end
- if typeoftrans == "Out" then
- rng.Transparency = rng.Transparency + 0.01*bonuspeed
- elseif typeoftrans == "In" then
- rng.Transparency = rng.Transparency - 0.01*bonuspeed
- end
- rngm.Scale = rngm.Scale + Vector3.new(scaler2*bonuspeed, scaler2b*bonuspeed, scaler2*bonuspeed)
- end
- rng:Destroy()
- end))
- 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,
- Name = "EffectSoundo",
- 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 = {
- };
- }
- function sphere(bonuspeed,type,pos,scale,value,color)
- local type = type
- local rng = Instance.new("Part", workspace)
- rng.Anchored = true
- rng.BrickColor = color
- 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
- if rainbowmode == true then
- rng.Color = Color3.new(r/255,g/255,b/255)
- end
- 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/bonuspeed,0.1 do
- wait(0.01)
- if rainbowmode == true then
- rng.Color = Color3.new(r/255,g/255,b/255)
- end
- if type == "Add" then
- scaler2 = scaler2 - 0.01*value/bonuspeed
- elseif type == "Divide" then
- scaler2 = scaler2 - 0.01/value*bonuspeed
- end
- if chaosmode == true then
- rng.BrickColor = BrickColor.random()
- end
- rng.Transparency = rng.Transparency + 0.01*bonuspeed
- rngm.Scale = rngm.Scale + Vector3.new(scaler2*bonuspeed, scaler2*bonuspeed, scaler2*bonuspeed)
- end
- rng:Destroy()
- end))
- end
- function sphereMK(bonuspeed,FastSpeed,type,pos,x1,y1,z1,value,color,outerpos)
- local type = type
- local rng = Instance.new("Part", workspace)
- rng.Anchored = true
- rng.BrickColor = color
- 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
- rng.CFrame = rng.CFrame + rng.CFrame.lookVector*outerpos
- local rngm = Instance.new("SpecialMesh", rng)
- rngm.MeshType = "Sphere"
- rngm.Scale = vt(x1,y1,z1)
- if rainbowmode == true then
- rng.Color = Color3.new(r/255,g/255,b/255)
- end
- local scaler2 = 1
- local speeder = FastSpeed
- if type == "Add" then
- scaler2 = 1*value
- elseif type == "Divide" then
- scaler2 = 1/value
- end
- coroutine.resume(coroutine.create(function()
- for i = 0,10/bonuspeed,0.1 do
- wait(0.01)
- if rainbowmode == true then
- rng.Color = Color3.new(r/255,g/255,b/255)
- end
- if type == "Add" then
- scaler2 = scaler2 - 0.01*value/bonuspeed
- elseif type == "Divide" then
- scaler2 = scaler2 - 0.01/value*bonuspeed
- end
- if chaosmode == true then
- rng.BrickColor = BrickColor.random()
- end
- speeder = speeder - 0.01*FastSpeed*bonuspeed
- rng.CFrame = rng.CFrame + rng.CFrame.lookVector*speeder*bonuspeed
- rng.Transparency = rng.Transparency + 0.01*bonuspeed
- rngm.Scale = rngm.Scale + Vector3.new(scaler2*bonuspeed, scaler2*bonuspeed, 0)
- end
- rng:Destroy()
- end))
- end
- function Damagefunc(Part, hit, minim, maxim, knockback, Type, Property, Delay, HitSound, HitPitch)
- if hit.Parent == nil then
- return
- end
- local h = hit.Parent:FindFirstChildOfClass("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("Head") ~= 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.random(minim, maxim)
- 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.Head
- 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 MagniDamage(Part, magni, mindam, maxdam, knock, Type)
- for _, c in pairs(workspace:children()) do
- local hum = c:findFirstChildOfClass("Humanoid")
- if hum ~= nil then
- local head = c:findFirstChild("Head")
- 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 CreateSound(Id,Vol,prnt)
- local sund = Instance.new("Sound", prnt)
- sund.SoundId = "rbxassetid://".. Id
- sund.Volume = Vol
- sund:Play()
- if Id == 3333907347 then
- wait(1)
- sund:Destroy()
- elseif Id == 1621591319 then
- sund.TimePosition = 5
- wait(1)
- sund:Destroy()
- end
- end
- 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.1,0.1,0.1)
- p.Transparency = transparency
- p.Reflectance = reflectance
- p.CanCollide = false
- p.Locked = true
- p.BrickColor = brickcolor
- p.Material = material
- return p
- 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 createweld(prnt,nm,p0,p1,co,c1)
- local wed = Instance.new("Weld", prnt)
- wed.Name = nm
- wed.Part0 = p0
- wed.Part1 = p1
- wed.C0 = co
- wed.C1 = c1
- 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 CreteBodyVelocity(Block,type,amt,velocity)
- local Direction = type
- local velo = velocity / sine
- if Direction == "Up" then
- for i = 1,amt do
- wait(velo)
- Block.CFrame = Block.CFrame * cf(0,0,1)
- end
- end
- if Direction == "Down" then
- for i = 1,amt do
- wait(velo)
- Block.CFrame = Block.CFrame * cf(0,0,-1)
- end
- end
- if Direction == "Left" then
- for i = 1,amt do
- wait(velo)
- Block.CFrame = Block.CFrame * cf(0,1,0)
- end
- end
- if Direction == "Right" then
- for i = 1,amt do
- wait(velo)
- Block.CFrame = Block.CFrame * cf(0,-1,0)
- end
- end
- if Direction == "Front" then
- for i = 1,amt do
- wait(velo)
- Block.CFrame = Block.CFrame * cf(1,0,0)
- end
- end
- if Direction == "Back" then
- for i = 1,amt do
- wait(velo)
- Block.CFrame = Block.CFrame * cf(-1,0,0)
- end
- end
- end
- --StopSing
- o1 = Instance.new("Model")
- o2 = Instance.new("Part")
- o3 = Instance.new("Part")
- o4 = Instance.new("Decal")
- o5 = Instance.new("Part")
- o6 = Instance.new("SurfaceGui")
- o7 = Instance.new("TextLabel")
- o8 = Instance.new("Weld")
- o9 = Instance.new("CFrameValue")
- o10 = Instance.new("Weld")
- o11 = Instance.new("CFrameValue")
- o12 = Instance.new("Part")
- o13 = Instance.new("Weld")
- o14 = Instance.new("CFrameValue")
- o15 = Instance.new("Part")
- o16 = Instance.new("Weld")
- o17 = Instance.new("Weld")
- o18 = Instance.new("CFrameValue")
- o1.Name = "Stop sing"
- o1.Parent = char
- o2.Name = "Pal"
- o2.Parent = o1
- o2.Position = Vector3.new(-41.8863831, 7.09160089, -29.8337212)
- o2.Rotation = Vector3.new(-6.71000004, 42.3199997, -175.259995)
- o2.Shape = Enum.PartType.Cylinder
- o2.Size = Vector3.new(4.28796577, 0.212915897, 0.212915897)
- o2.CFrame = CFrame.new(-41.8863831, 7.09160089, -29.8337212, -0.73683244, 0.0611351281, 0.673305571, -0.00370033155, -0.996252894, 0.0864087939, 0.676065266, 0.0611773506, 0.734297693)
- o2.BottomSurface = Enum.SurfaceType.Smooth
- o2.TopSurface = Enum.SurfaceType.Smooth
- o2.Position = Vector3.new(-41.8863831, 7.09160089, -29.8337212)
- o2.Orientation = Vector3.new(-4.96000004, 42.5200005, -179.789993)
- o3.Name = "Board"
- o3.Parent = o1
- o3.Position = Vector3.new(-40.954464, 7.20388651, -30.7010422)
- o3.Rotation = Vector3.new(-6.71000004, 42.3199997, -85.2600021)
- o3.Shape = Enum.PartType.Cylinder
- o3.Size = Vector3.new(0.0768114701, 2.13387561, 2.13387561)
- o3.CFrame = CFrame.new(-40.954464, 7.20388651, -30.7010422, 0.0611351281, 0.73683244, 0.673305571, -0.996252894, 0.00370033155, 0.0864087939, 0.0611773506, -0.676065266, 0.734297693)
- o3.BottomSurface = Enum.SurfaceType.Smooth
- o3.TopSurface = Enum.SurfaceType.Smooth
- o3.Position = Vector3.new(-40.954464, 7.20388651, -30.7010422)
- o3.Orientation = Vector3.new(-4.96000004, 42.5200005, -89.7900009)
- o4.Parent = o3
- o4.Texture = "http://www.roblox.com/asset/?id=5837725"
- o4.Face = Enum.NormalId.Left
- o5.Name = "Stop"
- o5.Parent = o3
- o5.Transparency = 1
- o5.Position = Vector3.new(-40.9097862, 7.20411825, -30.742033)
- o5.Rotation = Vector3.new(86.4899979, 3.5, -132.419998)
- o5.FormFactor = Enum.FormFactor.Custom
- o5.Size = Vector3.new(2.05302143, 2.13185382, 0.134756923)
- o5.CFrame = CFrame.new(-40.9097862, 7.20411825, -30.742033, -0.673305571, 0.73683244, 0.0611351281, -0.0864087939, 0.00370033155, -0.996252894, -0.734297693, -0.676065266, 0.0611773506)
- o5.Position = Vector3.new(-40.9097862, 7.20411825, -30.742033)
- o5.Orientation = Vector3.new(85.0400009, 44.9799995, -87.5500031)
- o6.Parent = o5
- o6.CanvasSize = Vector2.new(200, 100)
- o7.Name = "Welcome"
- o7.Parent = o6
- o7.Size = UDim2.new(1,0,1,0)
- o7.Text = "Stop Skids"
- o7.BackgroundColor3 = Color3.new(1, 1, 1)
- o7.BackgroundTransparency = 1
- o7.Font = Enum.Font.SourceSansBold
- o7.FontSize = Enum.FontSize.Size60
- o7.TextColor3 = Color3.new(1, 1, 1)
- o7.TextStrokeTransparency = 0
- o8.Name = "qCFrameWeldThingy"
- o8.Parent = o5
- o8.C1 = CFrame.new(0.000297546387, -1.33408213, 0.107959747, 0, 0, -1, -1, 0, 0, 0, 1, 0)
- o8.Part0 = o2
- o8.Part1 = o5
- o9.Name = "qRelativeCFrameWeldValue"
- o9.Parent = o5
- o9.Value = CFrame.new(0.000297546387, -1.33408213, 0.107959747, 0, 0, -1, -1, 0, 0, 0, 1, 0)
- o10.Name = "qCFrameWeldThingy"
- o10.Parent = o3
- o10.C1 = CFrame.new(0.107952118, -1.27345085, -0.000297546387, 0, 1, -0, -1, 0, 0, 0, 0, 1)
- o10.Part0 = o2
- o10.Part1 = o3
- o11.Name = "qRelativeCFrameWeldValue"
- o11.Parent = o3
- o11.Value = CFrame.new(0.107952118, -1.27345085, -0.000297546387, 0, 1, -0, -1, 0, 0, 0, 0, 1)
- o12.Name = "HitBox"
- o12.Parent = o1
- o12.Transparency = 1
- o12.Position = Vector3.new(-40.9544678, 7.20387888, -30.7010384)
- o12.Rotation = Vector3.new(-6.71000004, 42.3199997, -85.2600021)
- o12.CanCollide = false
- o12.Size = Vector3.new(0.420441568, 2.13387561, 2.13387561)
- o12.CFrame = CFrame.new(-40.9544678, 7.20387888, -30.7010384, 0.0611351281, 0.73683244, 0.673305571, -0.996252894, 0.00370033155, 0.0864087939, 0.0611773506, -0.676065266, 0.734297693)
- o12.BottomSurface = Enum.SurfaceType.Smooth
- o12.TopSurface = Enum.SurfaceType.Smooth
- o12.Position = Vector3.new(-40.9544678, 7.20387888, -30.7010384)
- o12.Orientation = Vector3.new(-4.96000004, 42.5200005, -89.7900009)
- o13.Name = "qCFrameWeldThingy"
- o13.Parent = o12
- o13.C1 = CFrame.new(0.107944489, -1.27344513, -0.000297546387, 0, 1, -0, -1, 0, 0, 0, 0, 1)
- o13.Part0 = o2
- o13.Part1 = o12
- o14.Name = "qRelativeCFrameWeldValue"
- o14.Parent = o12
- o14.Value = CFrame.new(0.107944489, -1.27344513, -0.000297546387, 0, 1, -0, -1, 0, 0, 0, 0, 1)
- o15.Name = "Handlu"
- o15.Parent = o1
- o15.Transparency = 1
- o15.Position = Vector3.new(-42.8535767, 6.1518054, -28.9348221)
- o15.Rotation = Vector3.new(0.310000002, -47.4599991, -174.809998)
- o15.CanCollide = false
- o15.Size = Vector3.new(1, 2, 1)
- o15.CFrame = CFrame.new(-42.8535767, 6.1518054, -28.9348221, -0.673305571, 0.0611351281, -0.73683244, -0.0864087939, -0.996252894, -0.00370033155, -0.734297693, 0.0611773506, 0.676065266)
- o15.BottomSurface = Enum.SurfaceType.Smooth
- o15.TopSurface = Enum.SurfaceType.Smooth
- o15.Position = Vector3.new(-42.8535767, 6.1518054, -28.9348221)
- o15.Orientation = Vector3.new(0.209999993, -47.4599991, -175.039993)
- o16.Name = "LAWeld"
- o16.Parent = o15
- o16.Part0 = o15
- o16.Part1 = LA
- o17.Name = "qCFrameWeldThingy"
- o17.Parent = o15
- o17.C1 = CFrame.new(-0.0723648071, -0.932136536, -1.32385194, 0, 0, -1, 0, 1, 0, 1, 0, 0)
- o17.Part0 = o2
- o17.Part1 = o15
- o18.Name = "qRelativeCFrameWeldValue"
- o18.Parent = o15
- o18.Value = CFrame.new(-0.0723648071, -0.932136536, -1.32385194, 0, 0, -1, 0, 1, 0, 1, 0, 0)
- --Attacks
- --AttFunctions
- local keyhold = false
- function Attack1()
- attack = true
- candamage = true
- keyhold = true
- while keyhold == true do
- for i = 1,15 do
- wait(0.001)
- 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)),.1)
- 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)),.1)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0 + 0.05 * math.cos(sine / 32),0)*angles(math.rad(-20),math.rad(0),math.rad(20)),.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.5,0.5 ,0)*angles(math.rad(0),math.rad(0),math.rad(0)),.1)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5 ,0)*angles(math.rad(150),math.rad(20),math.rad(0)),.1)
- end
- CreateSound(3333907347,10,o12)
- for i = 1,50 do
- swait(0.001)
- 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)),.1)
- 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)),.1)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0 + 0.05 * math.cos(sine / 32),0)*angles(math.rad(50),math.rad(0),math.rad(-30)),.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.5,0.5 ,0)*angles(math.rad(0),math.rad(0),math.rad(0)),.1)
- LW.C0=clerp(LW.C0,cf(-1.5,0.6 ,0)*angles(math.rad(30),math.rad(0),math.rad(0)),.1)
- end
- o12.Touched:Connect(function(hit)
- candamage = false
- if (hit.Parent:IsA("Model")) and candamage == true then
- if hit.Name == "Baseplate" then
- print("Not This Bay!!")
- else
- hit.Parent.Humanoid.Health = 0
- hit:Destroy()
- end
- end
- end)
- end
- end
- function DestroyerBall()
- attack = true
- local tagged = nil
- hum.WalkSpeed = 0
- for i = 1,30 do
- wait(0.01)
- RH.C0=clerp(RH.C0,cf(1,-1 - 0.05 * math.cos(sine / 32),0)*angles(math.rad(0),math.rad(80),math.rad(0)),.1)
- LH.C0=clerp(LH.C0,cf(-1,-1 - 0.05 * math.cos(sine / 32),0)*angles(math.rad(0),math.rad(-80),math.rad(0)),.1)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0 + 0.05 * math.cos(sine / 32),0)*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.5,0.5 ,0)*angles(math.rad(190),math.rad(0),math.rad(0)),.1)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5 ,0)*angles(math.rad(0),math.rad(0),math.rad(0)),.1)
- sphere2(8,"Add",RA.CFrame*CFrame.new(0,-1,0)*CFrame.Angles(math.rad(math.random(-360,360)),math.rad(math.random(-360,360)),math.rad(math.random(-360,360))),vt(1,1,1),-0.01,0.05,-0.01,BrickColor.new("Really red"),Color3.new(0,1,0))
- end
- for i = 1,30 do
- wait(0.01)
- RH.C0=clerp(RH.C0,cf(1,0,0)*angles(math.rad(30),math.rad(90),math.rad(0)),.1)
- LH.C0=clerp(LH.C0,cf(-1,-1,0)*angles(math.rad(-20),math.rad(-90),math.rad(0)),.1)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0 + 0.05 * math.cos(sine / 32),-1.5)*angles(math.rad(50),math.rad(0),math.rad(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,cf(1.5,0.5 ,-1)*angles(math.rad(50),math.rad(0),math.rad(0)),.1)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5 ,0)*angles(math.rad(-50),math.rad(0),math.rad(0)),.1)
- sphere2(8,"Add",RA.CFrame*CFrame.new(0,-1,0)*CFrame.Angles(math.rad(math.random(-360,360)),math.rad(math.random(-360,360)),math.rad(math.random(-360,360))),vt(1,1,1),-0.01,0.05,-0.01,BrickColor.new("Really red"),Color3.new(0,1,0))
- end
- wait(1)
- local p = Instance.new("Part",root)
- p.Anchored = true
- p.CanCollide = false
- p.BrickColor = BrickColor.new("Really red")
- p.Material = Enum.Material.Neon
- p.Size = Vector3.new(1,1,1)
- p.CFrame = CFrame.new(mouse.Hit.p)+Vector3.new(0,1000,0)
- p.CFrame = p.CFrame * CFrame.Angles(0,0,89.5354)
- local m = Instance.new("SpecialMesh",p)
- m.MeshType = "Cylinder"
- m.Scale = Vector3.new(2000,2,2)
- local targ = Instance.new("Part",root)
- targ.Transparency = 1
- targ.CanCollide = false
- targ.Size = Vector3.new(1,1,1)
- targ.CFrame = p.CFrame-Vector3.new(0,1000,0)
- CFuncs.Sound.Create("rbxassetid://164178927", targ, 5, 1)
- CFuncs.Sound.Create("rbxassetid://1208650519", targ, 10, 1)
- for i = 1,15 do
- targ.CFrame = p.CFrame-Vector3.new(0,1000,0)
- sphere(10, "Add", targ.CFrame, vt(15, 15, 15), 0.05, BrickColor.new("Really red"))
- sphereMK(3, 0.5, "Add", targ.CFrame * CFrame.Angles(math.rad(math.random(-360, 360)), math.rad(math.random(-360, 360)), math.rad(math.random(-360, 360))), 1, 1, 7, -0.005, BrickColor.new("Really red"), 0)
- m.Scale = m.Scale+Vector3.new(0,1,1)
- p.CFrame = CFrame.new(mouse.Hit.p)+Vector3.new(0,1000,0)
- p.CFrame = p.CFrame * CFrame.Angles(0,0,89.5354)
- targ.Touched:Connect(function(tch)
- if (tch.Parent:IsA("Model")) then
- if tch.Parent.Name == plr.Name or tch.Parent.Name == "Workspace" then
- print("bai")
- else
- tagged = tch.Parent
- tagged.Humanoid:TakeDamage(1)
- while tagged.Humanoid.Health == 0 do
- wait(0.01)
- tagged.Head:Destroy()
- end
- end
- end
- end)
- wait(0.01)
- end
- sphereMK(3, 0.2, "Add", targ.CFrame * CFrame.Angles(math.rad(math.random(-360, 360)), math.rad(math.random(-360, 360)), math.rad(math.random(-360, 360))), 0.5, 0.5, 5, -0.005, BrickColor.new("Really red"), 0)
- while keyhold == true do
- targ.CFrame = p.CFrame-Vector3.new(0,1000,0)
- sphereMK(3, 0.5, "Add", targ.CFrame * CFrame.Angles(math.rad(math.random(-360, 360)), math.rad(math.random(-360, 360)), math.rad(math.random(-360, 360))), 3, 3, 15, -0.005, BrickColor.new("Really red"), 0)
- sphere(10, "Add", targ.CFrame, vt(15, 15, 15), 0.15, BrickColor.new("Really red"))
- p.CFrame = CFrame.new(mouse.Hit.p)+Vector3.new(0,1000,0)
- p.CFrame = p.CFrame * CFrame.Angles(0,0,89.5354)
- targ.Touched:Connect(function(tch)
- if (tch.Parent:IsA("Model")) then
- if tch.Parent.Name == plr.Name or tch.Parent.Name == "Workspace" then
- print("bai")
- else
- tagged = tch.Parent
- tagged.Humanoid:TakeDamage(1)
- while tagged.Humanoid.Health == 0 do
- wait(0.01)
- tagged.Head:Destroy()
- end
- end
- end
- end)
- wait(0.01)
- end
- for i =1,15 do
- m.Scale = m.Scale-Vector3.new(1,1,1)
- p.Transparency = i / 15
- wait(0.01)
- end
- p:Destroy()
- hum.WalkSpeed = 50
- attack = false
- end
- local targetted = nil
- function BanPan()
- if mouse.Target == nil then
- print("Mouse's Target Is Nil")
- elseif mouse.Target.Parent ~= Character and mouse.Target.Parent.Parent ~= Character and mouse.Target.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
- targetted = mouse.Target.Parent
- end
- if targetted ~= nil then
- attack = true
- if targetted.Torso == nil then
- root.CFrame = targetted.HumanoidRootPart.CFrame * cf(0,0.5,4)
- targetted.HumanoidRootPart.Orientation = root.Orientation
- targetted.HumanoidRootPart.Anchored = true
- else
- root.CFrame = targetted.Torso.CFrame * cf(0,0.5,4)
- targetted.Torso.Orientation = root.Orientation
- targetted.Torso.Anchored = true
- end
- hum.WalkSpeed = 0
- CreateSound(245064504,10,o12)
- chatfunc("Nope..",BrickColor.new("Brown"),"SourceSans")
- for i = 1,40 do
- wait(0.01)
- RH.C0=clerp(RH.C0,cf(1,-1 - 0.05 * math.cos(sine / 32),0)*angles(math.rad(0),math.rad(80),math.rad(0)),.1)
- LH.C0=clerp(LH.C0,cf(-1,-1 - 0.05 * math.cos(sine / 32),0)*angles(math.rad(0),math.rad(-80),math.rad(0)),.1)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0 + 0.05 * math.cos(sine / 32),0)*angles(math.rad(0),math.rad(0),math.rad(50)),.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,0.5 ,0)*angles(math.rad(90),math.rad(0),math.rad(-35)),.1)
- LW.C0=clerp(LW.C0,cf(-0.5,0.5 ,0)*angles(math.rad(90),math.rad(70),math.rad(20)),.1)
- end
- CreateSound(3431749479,10,o12)
- for i = 1,20 do
- wait(0.01)
- RH.C0=clerp(RH.C0,cf(1,-1 - 0.05 * math.cos(sine / 32),0)*angles(math.rad(0),math.rad(80),math.rad(0)),.1)
- LH.C0=clerp(LH.C0,cf(-1,-1 - 0.05 * math.cos(sine / 32),0)*angles(math.rad(0),math.rad(-80),math.rad(0)),.1)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0 + 0.05 * math.cos(sine / 32),0)*angles(math.rad(0),math.rad(0),math.rad(-90)),.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,0.5 ,0)*angles(math.rad(90),math.rad(0),math.rad(-35)),.1)
- LW.C0=clerp(LW.C0,cf(-0.5,0.5 ,0)*angles(math.rad(90),math.rad(70),math.rad(20)),.1)
- end
- attack = false
- targetted.Humanoid.Health = 0
- targetted.Head:Destroy()
- hum.WalkSpeed = 50
- else
- print("Please Select A Target First..")
- end
- end
- function NoU()
- attack = true
- keyhold = false
- CreateSound(1543318456,10,hed)
- for i = 1,10 do
- wait(0.01)
- RH.C0=clerp(RH.C0,cf(1,-1 - 0.05 * math.cos(sine / 32),0)*angles(math.rad(0),math.rad(80),math.rad(0)),.1)
- LH.C0=clerp(LH.C0,cf(-1,-1 - 0.05 * math.cos(sine / 32),0)*angles(math.rad(0),math.rad(-80),math.rad(0)),.1)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0 + 0.05 * math.cos(sine / 32),0)*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.5,0.5 ,0)*angles(math.rad(120),math.rad(0),math.rad(-20)),.1)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5 ,0)*angles(math.rad(0),math.rad(0),math.rad(-20)),.1)
- end
- for i = 1,10 do
- wait(0.01)
- RH.C0=clerp(RH.C0,cf(1,-1 - 0.05 * math.cos(sine / 32),0)*angles(math.rad(0),math.rad(80),math.rad(0)),.1)
- LH.C0=clerp(LH.C0,cf(-1,-1 - 0.05 * math.cos(sine / 32),0)*angles(math.rad(0),math.rad(-80),math.rad(0)),.1)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0 + 0.05 * math.cos(sine / 32),0)*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.5,0.5 ,0)*angles(math.rad(120),math.rad(0),math.rad(20)),.1)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5 ,0)*angles(math.rad(0),math.rad(0),math.rad(-20)),.1)
- end
- for i = 1,10 do
- wait(0.01)
- RH.C0=clerp(RH.C0,cf(1,-1 - 0.05 * math.cos(sine / 32),0)*angles(math.rad(0),math.rad(80),math.rad(0)),.1)
- LH.C0=clerp(LH.C0,cf(-1,-1 - 0.05 * math.cos(sine / 32),0)*angles(math.rad(0),math.rad(-80),math.rad(0)),.1)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0 + 0.05 * math.cos(sine / 32),0)*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.5,0.5 ,0)*angles(math.rad(120),math.rad(0),math.rad(-20)),.1)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5 ,0)*angles(math.rad(0),math.rad(0),math.rad(-20)),.1)
- end
- for i = 1,10 do
- wait(0.01)
- RH.C0=clerp(RH.C0,cf(1,-1 - 0.05 * math.cos(sine / 32),0)*angles(math.rad(0),math.rad(80),math.rad(0)),.1)
- LH.C0=clerp(LH.C0,cf(-1,-1 - 0.05 * math.cos(sine / 32),0)*angles(math.rad(0),math.rad(-80),math.rad(0)),.1)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0 + 0.05 * math.cos(sine / 32),0)*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.5,0.5 ,0.5)*angles(math.rad(90),math.rad(0),math.rad(0)),.1)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5 ,0)*angles(math.rad(0),math.rad(0),math.rad(-20)),.1)
- end
- for i = 1,10 do
- wait(0.01)
- RH.C0=clerp(RH.C0,cf(1,-1 - 0.05 * math.cos(sine / 32),0)*angles(math.rad(0),math.rad(80),math.rad(0)),.1)
- LH.C0=clerp(LH.C0,cf(-1,-1 - 0.05 * math.cos(sine / 32),0)*angles(math.rad(0),math.rad(-80),math.rad(0)),.1)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0 + 0.05 * math.cos(sine / 32),0)*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.5,0.5 ,-0.5)*angles(math.rad(90),math.rad(0),math.rad(0)),.1)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5 ,0)*angles(math.rad(0),math.rad(0),math.rad(-20)),.1)
- end
- attack = false
- end
- --key
- canattack = true
- mouse.Button1Down:Connect(function()
- Attack1()
- attack = false
- end)
- mouse.Button1Up:Connect(function()
- keyhold = false
- end)
- mouse.KeyDown:Connect(function(Key)
- if Key == "q" then
- if canattack == true then
- keyhold = true
- canattack = false
- DestroyerBall()
- end
- elseif Key == "e" then
- if canattack == true then
- canattack = false
- BanPan()
- wait(2)
- canattack = true
- candamage = true
- end
- elseif Key == "t" then
- if canattack == true then
- canattack = false
- NoU()
- wait(1)
- canattack = true
- end
- end
- end)
- mouse.KeyUp:Connect(function(Key)
- if Key == "q" then
- canattack = true
- keyhold = false
- end
- end)
- --Animations
- local equipped = false
- local idle = 0
- local change = 1
- local val = 0
- local toim = 0
- local idleanim = 0.4
- ANIMATE.Parent = nil
- hum.WalkSpeed = 50
- hum.JumpPower = 70
- hum.MaxHealth = "inf"
- hum.Health = "inf"
- hum.Animator.Parent = nil
- while true do
- wait(0.001)
- sine = sine + change
- local torvel = (root.Velocity * Vector3.new(1, 0, 1)).magnitude
- local velderp = root.Velocity.y
- hitfloor, posfloor = rayCast(root.Position, CFrame.new(root.Position, root.Position - Vector3.new(0, 1, 0)).lookVector, 4, char)
- if equipped == true or equipped == false then
- if attack == false then
- idle = idle + 1
- else
- idle = 0
- end
- if 1 < root.Velocity.y and hitfloor == nil and attack == false then
- Anim = "Jump"
- change = 1
- 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)),.1)
- 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)),.1)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0 + 0.05 * math.cos(sine / 32),0)*angles(math.rad(0 + 3 * math.cos(sine / 20)),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.5,0.5 ,0)*angles(math.rad(0),math.rad(0),math.rad(90)),.1)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5 ,0)*angles(math.rad(0),math.rad(0),math.rad(-90)),.1)
- elseif -1 > root.Velocity.y and hitfloor == nil and attack == false then
- Anim = "FaLL"
- change = 1
- RH.C0=clerp(RH.C0,cf(1,-1 - 0.05 * math.cos(sine / 32),0)*angles(math.rad(-20),math.rad(90),math.rad(0)),.1)
- LH.C0=clerp(LH.C0,cf(-1,-1 - 0.05 * math.cos(sine / 32),0)*angles(math.rad(-20),math.rad(-90),math.rad(0)),.1)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0 + 0.05 * math.cos(sine / 32),0)*angles(math.rad(30),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.5,0.5 ,0)*angles(math.rad(0),math.rad(0),math.rad(90)),.1)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5 ,0)*angles(math.rad(0),math.rad(0),math.rad(-90)),.1)
- elseif torvel < 1 and hitfloor ~= nil and attack == false then
- Anim = "Idle"
- change = 1
- RH.C0=clerp(RH.C0,cf(1,-1 - 0.05 * math.cos(sine / 32),0)*angles(math.rad(0 + 40 * math.cos(sine / 20)),math.rad(90),math.rad(0)),.1)
- LH.C0=clerp(LH.C0,cf(-1,-1 - 0.05 * math.cos(sine / 32),0)*angles(math.rad(0 + 40 * math.cos(sine / 20)),math.rad(-90),math.rad(0)),.1)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(0 + 30 * math.cos(sine / 20)),math.rad(0),math.rad(0)),.1)
- Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(0 - 40 * math.cos(sine / 20)),math.rad(0),math.rad(0)),.1)
- RW.C0=clerp(RW.C0,cf(1.5,0.5 ,0)*angles(math.rad(0 - 40 * math.cos(sine / 20)),math.rad(0),math.rad(0)),.1)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5 ,0)*angles(math.rad(20 - 40 * math.cos(sine / 20)),math.rad(0),math.rad(0)),.1)
- elseif torvel > 2 and torvel < 25 and hitfloor ~= nil and attack == false then
- Anim = "Walk"
- change = 2.6
- elseif torvel >= 25 and hitfloor ~= nil and attack == false then
- Anim = "Sprint"
- change = 3
- RH.C0=clerp(RH.C0,cf(1,-1 - 0.05 * math.cos(sine / 32),0)*angles(math.rad(0 + 150 * math.cos(sine / 20)),math.rad(90),math.rad(0)),.1)
- LH.C0=clerp(LH.C0,cf(-1,-1 - 0.05 * math.cos(sine / 32),0)*angles(math.rad(0 - 150 * math.cos(sine / 20)),math.rad(-90),math.rad(0)),.1)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0 + 0.1 * math.cos(sine / 32),0)*angles(math.rad(-30),math.rad(0 + 8 * math.cos(sine / 20)),math.rad(0 + 8 * math.cos(sine / 20))),.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.5,0.5 ,0)*angles(math.rad(0 - 150 * math.cos(sine / 20)),math.rad(0),math.rad(0)),.1)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5 ,0)*angles(math.rad(0 + 150 * math.cos(sine / 20)),math.rad(0),math.rad(0)),.1)
- 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 1 >= Thing[1].TRAnsparency then
- if Thing[2] == "Block1" then
- Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.RAndom(-50, 50), math.RAndom(-50, 50), math.RAndom(-50, 50))
- local Mesh = Thing[1].Mesh
- Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
- Thing[1].TRAnsparency = Thing[1].TRAnsparency + Thing[3]
- elseif Thing[2] == "Block2" then
- Thing[1].CFrame = Thing[1].CFrame + Vector3.new(0, 0, 0)
- local Mesh = Thing[7]
- Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
- Thing[1].TRAnsparency = Thing[1].TRAnsparency + Thing[3]
- elseif Thing[2] == "Block3" then
- Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.RAndom(-50, 50), math.RAndom(-50, 50), math.RAndom(-50, 50)) + Vector3.new(0, 0.15, 0)
- local Mesh = Thing[7]
- Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
- Thing[1].TRAnsparency = Thing[1].TRAnsparency + Thing[3]
- elseif Thing[2] == "Cylinder" then
- local Mesh = Thing[1].Mesh
- Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
- Thing[1].TRAnsparency = Thing[1].TRAnsparency + Thing[3]
- elseif Thing[2] == "Blood" then
- local Mesh = Thing[7]
- Thing[1].CFrame = Thing[1].CFrame * Vector3.new(0, 0.5, 0)
- Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
- Thing[1].TRAnsparency = Thing[1].TRAnsparency + Thing[3]
- elseif Thing[2] == "Elec" then
- local Mesh = Thing[1].Mesh
- Mesh.Scale = Mesh.Scale + Vector3.new(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]
- elseif Thing[2] == "Shatter" then
- Thing[1].TRAnsparency = Thing[1].TRAnsparency + Thing[3]
- Thing[4] = Thing[4] * CFrame.new(0, Thing[7], 0)
- Thing[1].CFrame = Thing[4] * CFrame.fromEulerAnglesXYZ(Thing[6], 0, 0)
- Thing[6] = Thing[6] + Thing[5]
- end
- else
- Part.Parent = nil
- table.remove(Effects, e)
- end
- end
- end
- end
- end
- end
Add Comment
Please, Sign In to add comment