Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- warn'any options for 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
- gui = function(GuiType, parent, text, backtrans, backcol, pos, size)
- local gui = it(GuiType)
- gui.Parent = parent
- gui.Text = text
- gui.BackgroundTransparency = backtrans
- gui.BackgroundColor3 = backcol
- gui.SizeConstraint = "RelativeXY"
- gui.TextXAlignment = "Center"
- gui.TextYAlignment = "Center"
- gui.Position = pos
- gui.Size = size
- gui.Font = "SourceSans"
- gui.FontSize = "Size14"
- gui.TextWrapped = false
- gui.TextStrokeTransparency = 0
- gui.TextColor = BrickColor.new("White")
- return gui
- end
- ---- GUI set
- local basgui = it("GuiMain")
- basgui.Parent = plr.PlayerGui
- basgui.Name = "CooldownsGUI"
- local basframe = it("Frame")
- basframe.Parent = basgui
- basframe.BackgroundColor3 = Color3.new(255, 255, 255)
- basframe.BackgroundTransparency = 1
- basframe.BorderColor3 = Color3.new(17, 17, 17)
- basframe.Size = UDim2.new(0.2, 0, 0.2, 0)
- basframe.Position = UDim2.new(0.8, 0, 0.8, 0)
- local x = gui("TextLabel", basframe, "Basic", 0, BrickColor.new("Really black").Color, UDim2.new(-0.15, 0, 0.5, 0), UDim2.new(0.95, 0, 0.5, 0))
- x.ZIndex = 2
- x.Font = "Highway"
- x.BackgroundTransparency = 0.5
- x.BorderSizePixel = 0.65
- x.TextScaled = true
- x.Text = "Element: Stone"
- x.TextSize = 24
- 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
- function Explode(rad,par,pitch,vol)
- 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 = "Sphere"
- local partMesh4 = Instance.new("SpecialMesh",rin2)
- partMesh4.MeshType = "Sphere"
- 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 = 0.75
- 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 = 0.75
- 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)))
- local hitbox = Instance.new("Part",char)
- hitbox.Size = Vector3.new(1,1,1)
- hitbox.CFrame = par.CFrame
- hitbox.Anchored = true
- hitbox.Transparency = 1
- hitbox.CanCollide = false
- partMesh3.Scale = vt(0,1,0)
- partMesh4.Scale = vt(0,1,0)
- expart.CanCollide = false
- expart2.CanCollide = false
- rin.CanCollide = false
- rin2.CanCollide = false
- hitbox.Touched:connect(function(hit)
- Damagefunc(hit,5,10,math.random(50,100),"Normal",root,.2,1)
- end)
- game:GetService("Debris"):AddItem(hitbox, 3)
- local value = 1*rad/6.5
- for i = 0, 199 do
- partMesh.Scale = partMesh.Scale + vt(value,value,value)
- expart.CFrame = expart.CFrame
- hitbox.Size = hitbox.Size + Vector3.new(value*1.5,value*1.5,value*1.5)
- hitbox.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
- partMesh4.Scale = partMesh4.Scale + vt(rad/7.5,0,rad/7.5)
- rin2.CFrame = rin2.CFrame
- end
- if value < 0 then
- 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)
- 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
- local hitbox = Instance.new("Part",char)
- hitbox.Size = Vector3.new(1,1,1)
- hitbox.CFrame = par.CFrame
- hitbox.Anchored = true
- hitbox.Transparency = 1
- hitbox.CanCollide = false
- hitbox.Touched:connect(function(hit)
- Damagefunc(hit,5,10,math.random(10,20),"Normal",root,.2,1)
- end)
- game:GetService("Debris"):AddItem(hitbox, 1)
- local value = 1*rad/6.5
- for i = 0, 75 do
- partMesh.Scale = partMesh.Scale + vt(value,value,value)
- expart.CFrame = expart.CFrame
- hitbox.Size = hitbox.Size + Vector3.new(value*1.5,value*1.5,value*1.5)
- hitbox.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 PulseDam(rad,par,col)
- 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"
- 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 = col
- expart2.CFrame = par.CFrame
- expart.CanCollide = false
- expart2.CanCollide = false
- local hitbox = Instance.new("Part",char)
- hitbox.Size = Vector3.new(1,1,1)
- hitbox.CFrame = par.CFrame
- hitbox.Anchored = true
- hitbox.Transparency = 1
- hitbox.CanCollide = false
- hitbox.Touched:connect(function(hit)
- Damagefunc(hit,10,15,1,"Normal",root,.2,1)
- end)
- local value = 1*rad/10
- for i = 0, 34 do
- partMesh.Scale = partMesh.Scale + vt(value,value,value)
- expart.CFrame = expart.CFrame
- hitbox.Size = hitbox.Size + Vector3.new(value*1.5,value*1.5,value*1.5)
- hitbox.CFrame = expart.CFrame
- partMesh2.Scale = partMesh2.Scale + vt(value,value,value)
- expart2.CFrame = expart.CFrame
- value = value - 0.035*rad/10
- if value < 0 then
- value = 0
- end
- swait()
- end
- for z = 0, 4 do
- CFuncs["Sound"].Create("rbxassetid://203691467", expart, 1, 0.25)
- for i = 0, 24 do
- partMesh.Scale = partMesh.Scale + vt(value,value,value)
- expart.CFrame = expart.CFrame
- hitbox.Size = hitbox.Size + Vector3.new(value*1.5,value*1.5,value*1.5)
- hitbox.CFrame = expart.CFrame
- partMesh2.Scale = partMesh2.Scale + vt(value,value,value)
- expart2.CFrame = expart.CFrame
- value = value - 0.035*rad/10
- swait()
- end
- for i = 0, 49 do
- partMesh.Scale = partMesh.Scale + vt(value,value,value)
- expart.CFrame = expart.CFrame
- hitbox.Size = hitbox.Size + Vector3.new(value*1.5,value*1.5,value*1.5)
- hitbox.CFrame = expart.CFrame
- partMesh2.Scale = partMesh2.Scale + vt(value,value,value)
- expart2.CFrame = expart.CFrame
- value = value + 0.035*rad/10
- swait()
- end
- CFuncs["Sound"].Create("rbxassetid://203691467", expart, 1, 0.25)
- for i = 0, 24 do
- partMesh.Scale = partMesh.Scale + vt(value,value,value)
- expart.CFrame = expart.CFrame
- hitbox.Size = hitbox.Size + Vector3.new(value*1.5,value*1.5,value*1.5)
- hitbox.CFrame = expart.CFrame
- partMesh2.Scale = partMesh2.Scale + vt(value,value,value)
- expart2.CFrame = expart.CFrame
- value = value - 0.035*rad/10
- swait()
- end
- end
- for i = 0, 75 do
- partMesh.Scale = partMesh.Scale + vt(value,value,value)
- expart.CFrame = expart.CFrame
- hitbox.Size = hitbox.Size + Vector3.new(value*1.5,value*1.5,value*1.5)
- hitbox.CFrame = expart.CFrame
- partMesh2.Scale = partMesh2.Scale + vt(value,value,value)
- expart2.CFrame = expart.CFrame
- value = value - 0.035*rad/10
- if value < 0 then
- expart.Transparency = expart.Transparency + 0.025
- expart2.Transparency = expart2.Transparency + 0.025
- end
- swait()
- end
- game:GetService("Debris"):AddItem(hitbox, 0.1)
- game:GetService("Debris"):AddItem(expart, 1)
- game:GetService("Debris"):AddItem(expart2, 1)
- end
- function PulseShort(rad,par,col,times)
- 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"
- 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 = col
- expart2.CFrame = par.CFrame
- expart.CanCollide = false
- expart2.CanCollide = false
- local value = 1*rad/10
- for i = 0, 34 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/10
- if value < 0 then
- value = 0
- end
- swait()
- end
- for z = 0, times do
- for i = 0, 24 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/10
- swait()
- end
- for i = 0, 49 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/10
- swait()
- end
- for i = 0, 24 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/10
- swait()
- end
- end
- 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/10
- if value < 0 then
- expart.Transparency = expart.Transparency + 0.025
- expart2.Transparency = expart2.Transparency + 0.025
- end
- swait()
- end
- game:GetService("Debris"):AddItem(expart, 1)
- game:GetService("Debris"):AddItem(expart2, 1)
- end
- function ExplodeLong(rad,par,pitch,vol)
- 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("rbxassetid://165970126", char, vol, pitch)
- expart.Size = vt(1,1,1)
- expart.Transparency = 0
- expart.Anchored = true
- expart.Material = "Neon"
- expart.BrickColor = bc("White")
- expart.CFrame = par.CFrame
- 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
- local hitbox = Instance.new("Part",char)
- hitbox.Size = Vector3.new(1,1,1)
- hitbox.CFrame = par.CFrame
- hitbox.Anchored = true
- hitbox.Transparency = 1
- hitbox.CanCollide = false
- hitbox.Touched:connect(function(hit)
- Damagefunc(hit,50,75,math.random(50,100),"Normal",root,.2,1)
- end)
- game:GetService("Debris"):AddItem(hitbox, 3)
- local value = 1*rad/6.5
- for i = 0, 175 do
- partMesh.Scale = partMesh.Scale + vt(value,value,value)
- expart.CFrame = expart.CFrame
- hitbox.Size = hitbox.Size + Vector3.new(value*1.5,value*1.5,value*1.5)
- hitbox.CFrame = expart.CFrame
- partMesh2.Scale = partMesh2.Scale + vt(value,value,value)
- expart2.CFrame = expart.CFrame
- value = value - 0.035*rad/30
- if value < 0 then
- expart.Transparency = expart.Transparency + 0.025
- expart2.Transparency = expart2.Transparency + 0.025
- end
- swait()
- end
- game:GetService("Debris"):AddItem(expart, 1)
- game:GetService("Debris"):AddItem(expart2, 1)
- 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
- function MakeMagic(Type,Color,Bullets,Size,Speed,Position,MagCircleScale,Delay,ExplosionScale,ExplosionVol,Explosionpit)
- if Type == "PulsingBullet" then
- for i = 0,1,0.1 do
- swait()
- MagicBlock(Color,sorb.CFrame,1,1,1,0.05,0.05,0.05,0.05)
- 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)),.4)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(5),math.rad(0),math.rad(0)),.4)
- RW.C0 = clerp(RW.C0, CFrame.new(1.25, 0.5, -0.15) * angles(math.rad(80), math.rad(0), math.rad(-30)), 0.4)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.25, 0.5, -0.15) * angles(math.rad(80), math.rad(0), math.rad(30)), 0.4)
- end
- local a = Instance.new("Part",Character)
- a.Name = "Direction"
- a.Anchored = true
- a.BrickColor = Color
- a.Material = "Neon"
- a.Transparency = 0.5
- a.CanCollide = false
- local ray = Ray.new(
- sorb.CFrame.p, -- origin
- (mouse.Hit.p - sorb.CFrame.p).unit * 500 -- direction
- )
- local ignore = Character
- local hit, position, normal = workspace:FindPartOnRay(ray, ignore)
- a.BottomSurface = 10
- a.TopSurface = 10
- local distance = (sorb.CFrame.p - position).magnitude
- a.Size = Vector3.new(0.1, 0.1, 0.1)
- a.CFrame = CFrame.new(sorb.CFrame.p, position) * CFrame.new(0, 0, 0)
- game:GetService("Debris"):AddItem(a, 3)
- local thing = Instance.new("SpecialMesh",a)
- thing.MeshType = "Sphere"
- thing.Scale = vt(0,0,1)
- for i = 0, 9 do
- ray = Ray.new(
- sorb.CFrame.p, -- origin
- (mouse.Hit.p - sorb.CFrame.p).unit * 500 -- direction
- )
- ignore = Character
- hit, position, normal = workspace:FindPartOnRay(ray, ignore)
- local distance = (sorb.CFrame.p - position).magnitude
- a.Size = Vector3.new(0.1, 0.1, 0.1)
- a.CFrame = CFrame.new(sorb.CFrame.p, position) * CFrame.new(0, 0, 0)
- thing.Scale = thing.Scale + vt(MagCircleScale,MagCircleScale,0)
- wait()
- end
- if Bullets == 1 then
- local lb = Instance.new("Part")
- CFuncs["Sound"].Create("rbxassetid://260433768", lb, 2.5, 1)
- lb.Parent = char
- lb.BrickColor = Color
- lb.CanCollide = false
- lb.Material = "Neon"
- lb.Shape = "Ball"
- lb.Anchored = true
- lb.Transparency = 0
- lb.Size = vt(1,1,1)
- lb.CFrame = a.CFrame
- local thingery = Instance.new("SpecialMesh",lb)
- thingery.MeshType = "Sphere"
- thingery.Scale = Size
- lb.Anchored = false
- local bv = Instance.new("BodyVelocity")
- bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
- bv.velocity = a.CFrame.lookVector*Speed
- bv.Parent = lb
- wait(0.1)
- local touched = false
- lb.Touched:connect(function(hit)
- if touched == false then
- touched = true
- lb.Transparency = 1
- PulseDam(ExplosionScale,lb,lb.BrickColor)
- lb.Anchored = true
- end
- end)
- game:GetService("Debris"):AddItem(lb, Delay)
- end
- for i = 0, 9 do
- ray = Ray.new(
- sorb.CFrame.p, -- origin
- (mouse.Hit.p - sorb.CFrame.p).unit * 500 -- direction
- )
- ignore = Character
- hit, position, normal = workspace:FindPartOnRay(ray, ignore)
- local distance = (sorb.CFrame.p - position).magnitude
- a.Size = Vector3.new(0.1, 0.1, 0.1)
- a.CFrame = CFrame.new(sorb.CFrame.p, position) * CFrame.new(0, 0, 0)
- thing.Scale = thing.Scale - vt(MagCircleScale,MagCircleScale,0)
- wait()
- end
- end
- if Type == "ExplodingBullet" then
- if Bullets == 1 then
- for i = 0,1,0.1 do
- swait()
- MagicBlock(Color,sorb.CFrame,1,1,1,0.05,0.05,0.05,0.05)
- 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)),.4)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(5),math.rad(0),math.rad(0)),.4)
- RW.C0 = clerp(RW.C0, CFrame.new(1.25, 0.5, -0.15) * angles(math.rad(80), math.rad(0), math.rad(-30)), 0.4)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.25, 0.5, -0.15) * angles(math.rad(80), math.rad(0), math.rad(30)), 0.4)
- end
- end
- if Bullets > 1 then
- for i = 0,1,0.1 do
- swait()
- MagicBlock(Color,sorb.CFrame,1,1,1,0.05,0.05,0.05,0.05)
- 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(90)),.4)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(5),math.rad(0),math.rad(-90)),.4)
- RW.C0 = clerp(RW.C0, CFrame.new(1.45, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(90)), 0.4)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.45, 0.5, 0) * angles(math.rad(-10), math.rad(0), math.rad(-10)), 0.4)
- end
- end
- local a = Instance.new("Part",Character)
- a.Name = "Direction"
- a.Anchored = true
- a.BrickColor = Color
- a.Material = "Neon"
- a.Transparency = 0.5
- a.CanCollide = false
- local ray = Ray.new(
- sorb.CFrame.p, -- origin
- (mouse.Hit.p - sorb.CFrame.p).unit * 500 -- direction
- )
- local ignore = Character
- local hit, position, normal = workspace:FindPartOnRay(ray, ignore)
- a.BottomSurface = 10
- a.TopSurface = 10
- local distance = (sorb.CFrame.p - position).magnitude
- a.Size = Vector3.new(0.1, 0.1, 0.1)
- a.CFrame = CFrame.new(sorb.CFrame.p, position) * CFrame.new(0, 0, 0)
- game:GetService("Debris"):AddItem(a, 3)
- local thing = Instance.new("SpecialMesh",a)
- thing.MeshType = "Sphere"
- thing.Scale = vt(0,0,1)
- for i = 0, 9 do
- ray = Ray.new(
- sorb.CFrame.p, -- origin
- (mouse.Hit.p - sorb.CFrame.p).unit * 500 -- direction
- )
- ignore = Character
- hit, position, normal = workspace:FindPartOnRay(ray, ignore)
- local distance = (sorb.CFrame.p - position).magnitude
- a.Size = Vector3.new(0.1, 0.1, 0.1)
- a.CFrame = CFrame.new(sorb.CFrame.p, position) * CFrame.new(0, 0, 0)
- thing.Scale = thing.Scale + vt(MagCircleScale,MagCircleScale,0)
- wait()
- end
- if Bullets == 1 then
- local lb = Instance.new("Part")
- CFuncs["Sound"].Create("rbxassetid://260433721", lb, 2.5, 1)
- lb.Parent = char
- lb.BrickColor = Color
- lb.CanCollide = false
- lb.Material = "Neon"
- lb.Shape = "Ball"
- lb.Anchored = true
- lb.Transparency = 0
- lb.Size = vt(1,1,1)
- lb.CFrame = a.CFrame
- local thingery = Instance.new("SpecialMesh",lb)
- thingery.MeshType = "Sphere"
- thingery.Scale = Size
- lb.Anchored = false
- local bv = Instance.new("BodyVelocity")
- bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
- bv.velocity = a.CFrame.lookVector*Speed
- bv.Parent = lb
- wait(0.1)
- local touched = false
- lb.Touched:connect(function(hit)
- if touched == false then
- touched = true
- lb.Transparency = 1
- Explode(ExplosionScale,lb,Explosionpit,ExplosionVol)
- lb.Anchored = true
- end
- end)
- game:GetService("Debris"):AddItem(lb, Delay)
- end
- if Bullets > 1 then
- for i = 0, Bullets do
- ray = Ray.new(
- sorb.CFrame.p, -- origin
- (mouse.Hit.p - sorb.CFrame.p).unit * 500 -- direction
- )
- ignore = Character
- hit, position, normal = workspace:FindPartOnRay(ray, ignore)
- local distance = (sorb.CFrame.p - position).magnitude
- a.Size = Vector3.new(0.1, 0.1, 0.1)
- a.CFrame = CFrame.new(sorb.CFrame.p, position) * CFrame.new(0, 0, 0)
- local lb = Instance.new("Part")
- CFuncs["Sound"].Create("rbxassetid://203691467", lb, 1, 5.5)
- lb.Parent = char
- lb.BrickColor = Color
- lb.CanCollide = false
- lb.Material = "Neon"
- lb.Shape = "Ball"
- lb.Anchored = true
- lb.Transparency = 0
- lb.Size = vt(1,1,1)
- lb.CFrame = a.CFrame
- local thingery = Instance.new("SpecialMesh",lb)
- thingery.MeshType = "Sphere"
- thingery.Scale = Size
- lb.Anchored = false
- local bv = Instance.new("BodyVelocity")
- bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
- bv.velocity = a.CFrame.lookVector*Speed
- bv.Parent = lb
- wait(0.035)
- local touched = false
- lb.Touched:connect(function(hit)
- if touched == false then
- touched = true
- lb.Transparency = 1
- ExplodeShort(ExplosionScale,lb,Explosionpit,ExplosionVol)
- lb.Anchored = true
- end
- end)
- game:GetService("Debris"):AddItem(lb, Delay)
- end
- end
- for i = 0, 9 do
- ray = Ray.new(
- sorb.CFrame.p, -- origin
- (mouse.Hit.p - sorb.CFrame.p).unit * 500 -- direction
- )
- ignore = Character
- hit, position, normal = workspace:FindPartOnRay(ray, ignore)
- local distance = (sorb.CFrame.p - position).magnitude
- a.Size = Vector3.new(0.1, 0.1, 0.1)
- a.CFrame = CFrame.new(sorb.CFrame.p, position) * CFrame.new(0, 0, 0)
- thing.Scale = thing.Scale - vt(MagCircleScale,MagCircleScale,0)
- wait()
- end
- end
- if Type == "FireUltExplosion" then
- hum.WalkSpeed = 16
- local a = Instance.new("Part",Character)
- a.Name = "Direction"
- a.Anchored = true
- a.BrickColor = Color
- a.Material = "Neon"
- a.Transparency = 0.5
- a.Size = vt(1,1,1)
- a.CanCollide = false
- a.CFrame = root.CFrame + vt(0,5,0)
- game:GetService("Debris"):AddItem(a, Delay)
- local thing = Instance.new("SpecialMesh",a)
- thing.MeshType = "Sphere"
- thing.Scale = vt(0,1,0)
- for i = 0,5,0.1 do
- swait()
- MagicBlock(Color,sorb.CFrame,1,1,1,0.05,0.05,0.05,0.05)
- MagicBlock(Color,sorb2.CFrame,1,1,1,0.05,0.05,0.05,0.05)
- 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)),.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.25, 0.5, -0.15) * angles(math.rad(150), math.rad(0), math.rad(30)), 0.1)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.25, 0.5, -0.15) * angles(math.rad(150), math.rad(0), math.rad(-30)), 0.1)
- end
- for i = 0, 9 do
- thing.Scale = thing.Scale + vt(MagCircleScale,0,MagCircleScale)
- wait()
- end
- for i = 0,5,0.1 do
- swait()
- MagicBlock(Color,sorb.CFrame,1,1,1,0.05,0.05,0.05,0.05)
- MagicBlock(Color,sorb2.CFrame,1,1,1,0.05,0.05,0.05,0.05)
- 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)),.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, CFrame.new(1.25, 0.5, -0.15) * angles(math.rad(80), math.rad(0), math.rad(30)), 0.1)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.25, 0.5, -0.15) * angles(math.rad(80), math.rad(0), math.rad(-30)), 0.1)
- end
- for i = 0,1,0.1 do
- swait()
- MagicBlock(Color,sorb.CFrame,1,1,1,0.05,0.05,0.05,0.05)
- MagicBlock(Color,sorb2.CFrame,1,1,1,0.05,0.05,0.05,0.05)
- 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)),.4)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(5),math.rad(0),math.rad(0)),.4)
- RW.C0 = clerp(RW.C0, CFrame.new(1.25, 0.5, -0.15) * angles(math.rad(80), math.rad(0), math.rad(-30)), 0.4)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.25, 0.5, -0.15) * angles(math.rad(80), math.rad(0), math.rad(30)), 0.4)
- end
- hum.WalkSpeed = 16
- attack = false
- for i = 0, 9 do
- thing.Scale = thing.Scale - vt(MagCircleScale,0,MagCircleScale)
- wait()
- end
- ExplodeLong(65,a,0.4,1)
- end
- if Type == "Bullet" then
- for i = 0,1,0.1 do
- swait()
- MagicBlock(Color,sorb.CFrame,1,1,1,0.05,0.05,0.05,0.05)
- 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(80)),.4)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(5),math.rad(0),math.rad(-80)),.4)
- RW.C0 = clerp(RW.C0, CFrame.new(1.45, 0.5, 0) * angles(math.rad(0), math.rad(10), math.rad(90)), 0.4)
- LW.C0 = clerp(LW.C0, CFrame.new(-0.15, 0.5, -0.35) * angles(math.rad(0), math.rad(0), math.rad(90)), 0.4)
- end
- local a = Instance.new("Part",Character)
- a.Name = "Direction"
- a.Anchored = true
- a.BrickColor = Color
- a.Material = "Neon"
- a.Transparency = 0.5
- a.CanCollide = false
- local ray = Ray.new(
- sorb.CFrame.p, -- origin
- (mouse.Hit.p - sorb.CFrame.p).unit * 500 -- direction
- )
- local ignore = Character
- local hit, position, normal = workspace:FindPartOnRay(ray, ignore)
- a.BottomSurface = 10
- a.TopSurface = 10
- local distance = (sorb.CFrame.p - position).magnitude
- a.Size = Vector3.new(0.1, 0.1, 0.1)
- a.CFrame = CFrame.new(sorb.CFrame.p, position) * CFrame.new(0, 0, 0)
- game:GetService("Debris"):AddItem(a, 3)
- local thing = Instance.new("SpecialMesh",a)
- thing.MeshType = "Sphere"
- thing.Scale = vt(0,0,1)
- for i = 0, 9 do
- thing.Scale = thing.Scale + vt(MagCircleScale,MagCircleScale,0)
- wait()
- end
- if Bullets == 1 then
- local lb = Instance.new("Part")
- CFuncs["Sound"].Create("rbxassetid://260433721", lb, 2.5, 1)
- lb.Parent = char
- lb.BrickColor = Color
- lb.CanCollide = false
- lb.Material = "Neon"
- lb.Shape = "Ball"
- lb.Anchored = true
- lb.Transparency = 0.5
- lb.Size = Size
- lb.CFrame = a.CFrame
- local thing = Instance.new("SpecialMesh",lb)
- thing.MeshType = "Sphere"
- lb.Anchored = false
- local bv = Instance.new("BodyVelocity")
- bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
- bv.velocity = a.CFrame.lookVector*Speed
- bv.Parent = lb
- lb.Touched:connect(function(hit)
- Damagefunc(hit,9,15,math.random(10,20),"Normal",root,.2,1)
- end)
- game:GetService("Debris"):AddItem(lb, Delay)
- end
- if Bullets > 1 then
- for i = 0, Bullets do
- wait(0.075)
- ray = Ray.new(
- sorb.CFrame.p, -- origin
- (mouse.Hit.p - sorb.CFrame.p).unit * 500 -- direction
- )
- ignore = Character
- hit, position, normal = workspace:FindPartOnRay(ray, ignore)
- local distance = (sorb.CFrame.p - position).magnitude
- a.Size = Vector3.new(0.1, 0.1, 0.1)
- a.CFrame = CFrame.new(sorb.CFrame.p, position) * CFrame.new(0, 0, 0)
- local lb = Instance.new("Part")
- CFuncs["Sound"].Create("rbxassetid://260433721", lb, 2.5, 1)
- lb.Parent = char
- lb.BrickColor = Color
- lb.CanCollide = false
- lb.Material = "Neon"
- lb.Shape = "Ball"
- lb.Anchored = true
- lb.Transparency = 0.5
- lb.Size = Size
- lb.CFrame = a.CFrame
- local thing = Instance.new("SpecialMesh",lb)
- thing.MeshType = "Sphere"
- lb.Anchored = false
- local bv = Instance.new("BodyVelocity")
- bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
- bv.velocity = a.CFrame.lookVector*Speed
- bv.Parent = lb
- lb.Touched:connect(function(hit)
- Damagefunc(hit,3,5,math.random(10,20),"Normal",root,.2,1)
- end)
- game:GetService("Debris"):AddItem(lb, Delay)
- end
- end
- for i = 0, 9 do
- thing.Scale = thing.Scale - vt(MagCircleScale,MagCircleScale,0)
- wait()
- end
- end
- if Type == "Beam" then
- for i = 0,1,0.1 do
- swait()
- MagicBlock(Color,sorb.CFrame,1,1,1,0.05,0.05,0.05,0.05)
- 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(80)),.4)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(5),math.rad(0),math.rad(-80)),.4)
- RW.C0 = clerp(RW.C0, CFrame.new(1.45, 0.5, 0) * angles(math.rad(0), math.rad(10), math.rad(90)), 0.4)
- LW.C0 = clerp(LW.C0, CFrame.new(-0.15, 0.5, -0.35) * angles(math.rad(0), math.rad(0), math.rad(90)), 0.4)
- end
- local a = Instance.new("Part",Character)
- a.Name = "Direction"
- a.Anchored = true
- a.BrickColor = Color
- a.Material = "Neon"
- a.Transparency = 0.5
- a.CanCollide = false
- local ray = Ray.new(
- sorb.CFrame.p, -- origin
- (mouse.Hit.p - sorb.CFrame.p).unit * 500 -- direction
- )
- local ignore = Character
- local hit, position, normal = workspace:FindPartOnRay(ray, ignore)
- a.BottomSurface = 10
- a.TopSurface = 10
- local distance = (sorb.CFrame.p - position).magnitude
- a.Size = Vector3.new(0.1, 0.1, 0.1)
- a.CFrame = CFrame.new(sorb.CFrame.p, position) * CFrame.new(0, 0, 0)
- game:GetService("Debris"):AddItem(a, 3)
- local thing = Instance.new("SpecialMesh",a)
- thing.MeshType = "Sphere"
- thing.Scale = vt(0,0,1)
- for i = 0, 9 do
- thing.Scale = thing.Scale + vt(MagCircleScale,MagCircleScale,0)
- wait()
- end
- if Bullets == 1 then
- local a = Instance.new("Part",Character)
- a.Name = "Direction"
- a.Anchored = true
- a.BrickColor = Color
- a.Material = "Neon"
- a.Transparency = 0.5
- a.CanCollide = false
- local ray = Ray.new(
- sorb.CFrame.p, -- origin
- (mouse.Hit.p - sorb.CFrame.p).unit * 500 -- direction
- )
- local ignore = Character
- local hit, position, normal = workspace:FindPartOnRay(ray, ignore)
- if hit then
- local humanoid = hit.Parent:FindFirstChildOfClass("Humanoid")
- if not humanoid then
- humanoid = hit.Parent.Parent:FindFirstChildOfClass("Humanoid")
- end
- if humanoid then
- if humanoid.Parent:IsA"Model" then
- Damagefunc(hit,5,10,math.random(10,20),"Normal",RootPart,.2,1)
- end
- end
- end
- a.BottomSurface = 10
- a.TopSurface = 10
- CFuncs["Sound"].Create("rbxassetid://151414336", a, 2.5, 1)
- local distance = (sorb.CFrame.p - position).magnitude
- a.Size = Vector3.new(0.5, 0.5, distance)
- a.CFrame = CFrame.new(sorb.CFrame.p, position) * CFrame.new(0, 0, -distance/2)
- game:GetService("Debris"):AddItem(a, 0.1)
- end
- if Bullets > 1 then
- for i = 0, Bullets do
- wait(0.05)
- ray = Ray.new(
- sorb.CFrame.p, -- origin
- (mouse.Hit.p - sorb.CFrame.p).unit * 500 -- direction
- )
- ignore = Character
- hit, position, normal = workspace:FindPartOnRay(ray, ignore)
- local distance = (sorb.CFrame.p - position).magnitude
- a.Size = Vector3.new(0.1, 0.1, 0.1)
- a.CFrame = CFrame.new(sorb.CFrame.p, position) * CFrame.new(0, 0, 0)
- local a = Instance.new("Part",Character)
- a.Name = "Direction"
- a.Anchored = true
- a.BrickColor = Color
- a.Material = "Neon"
- a.Transparency = 0.5
- a.CanCollide = false
- local ray = Ray.new(
- sorb.CFrame.p, -- origin
- (mouse.Hit.p - sorb.CFrame.p).unit * 500 -- direction
- )
- local ignore = Character
- local hit, position, normal = workspace:FindPartOnRay(ray, ignore)
- if hit then
- local humanoid = hit.Parent:FindFirstChildOfClass("Humanoid")
- if not humanoid then
- humanoid = hit.Parent.Parent:FindFirstChildOfClass("Humanoid")
- end
- if humanoid then
- if humanoid.Parent:IsA"Model" then
- Damagefunc(hit,5,10,math.random(10,20),"Normal",RootPart,.2,1)
- end
- end
- end
- a.BottomSurface = 10
- a.TopSurface = 10
- CFuncs["Sound"].Create("rbxassetid://151414336", a, 2.5, 1)
- local distance = (sorb.CFrame.p - position).magnitude
- a.Size = Vector3.new(0.5, 0.5, distance)
- a.CFrame = CFrame.new(sorb.CFrame.p, position) * CFrame.new(0, 0, -distance/2)
- game:GetService("Debris"):AddItem(a, 0.1)
- end
- end
- for i = 0, 9 do
- thing.Scale = thing.Scale - vt(MagCircleScale,MagCircleScale,0)
- wait()
- end
- end
- hum.WalkSpeed = 16
- end
- function Teleport(col,rad,par)
- attack = true
- for i = 0,1,0.1 do
- swait()
- MagicBlock(col,sorb.CFrame,1,1,1,0.05,0.05,0.05,0.05)
- 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(90)),.4)
- Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(5),math.rad(0),math.rad(-90)),.4)
- RW.C0 = clerp(RW.C0, CFrame.new(1.45, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(90)), 0.4)
- LW.C0 = clerp(LW.C0, CFrame.new(-1.45, 0.5, 0) * angles(math.rad(-10), math.rad(0), math.rad(-10)), 0.4)
- end
- local a = Instance.new("Part",Character)
- a.Name = "Direction"
- a.Anchored = true
- a.BrickColor = col
- a.Material = "Neon"
- a.Transparency = 1
- a.CanCollide = false
- local ab = Instance.new("Part",Character)
- ab.Name = "Direction"
- ab.Anchored = true
- ab.BrickColor = col
- ab.Material = "Neon"
- ab.Transparency = 1
- ab.CanCollide = false
- local ray = Ray.new(
- sorb.CFrame.p, -- origin
- (mouse.Hit.p - sorb.CFrame.p).unit * 75 -- direction
- )
- local ignore = Character
- local hit, position, normal = workspace:FindPartOnRay(ray, ignore)
- a.BottomSurface = 10
- a.TopSurface = 10
- CFuncs["Sound"].Create("rbxassetid://201858045", a, 2.5, 1.25)
- local distance = (sorb.CFrame.p - position).magnitude
- a.Size = Vector3.new(0.5, 0.5, distance)
- ab.Size = Vector3.new(1,1,1)
- a.CFrame = CFrame.new(sorb.CFrame.p, position) * CFrame.new(0, 0, -distance/2)
- ab.CFrame = CFrame.new(sorb.CFrame.p, position) * CFrame.new(0, 0, -distance)
- 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"
- 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 = col
- expart2.CFrame = par.CFrame
- expart.CanCollide = false
- expart2.CanCollide = false
- local expartb = Instance.new("Part",char)
- local expart2b = Instance.new("Part",char)
- expartb.CanCollide = false
- expart2b.CanCollide = false
- local partMeshb = Instance.new("SpecialMesh",expartb)
- partMeshb.MeshType = "Sphere"
- local partMesh2b = Instance.new("SpecialMesh",expart2b)
- partMesh2b.MeshType = "Sphere"
- partMeshb.Scale = vt(rad,rad,rad)
- expartb.Size = vt(1,1,1)
- expartb.Transparency = 0
- expartb.Anchored = true
- expartb.Material = "Neon"
- expartb.BrickColor = bc("White")
- expartb.CFrame = ab.CFrame
- partMesh2b.Scale = vt(rad,rad,rad)
- expart2b.Size = vt(1.15,1.15,1.15)
- expart2b.Transparency = 0.5
- expart2b.Anchored = true
- expart2b.Material = "Neon"
- expart2b.BrickColor = col
- expart2b.CFrame = ab.CFrame
- local value = 1*rad/10
- for i = 0, 34 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
- partMeshb.Scale = partMeshb.Scale + vt(value,value,value)
- expartb.CFrame = expartb.CFrame
- partMesh2b.Scale = partMesh2b.Scale + vt(value,value,value)
- expart2b.CFrame = expartb.CFrame
- value = value - 0.035*rad/10
- if value < 0 then
- value = 0
- end
- swait()
- end
- value = 1.5*rad/10
- CFuncs["Sound"].Create("http://www.roblox.com/asset/?id=142070127",tors,2.5, 1)
- attack = false
- tors.CFrame = ab.CFrame
- for i = 0, 99 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
- partMeshb.Scale = partMeshb.Scale + vt(value,value,value)
- expartb.CFrame = expartb.CFrame
- partMesh2b.Scale = partMesh2b.Scale + vt(value,value,value)
- expart2b.CFrame = expartb.CFrame
- value = value - 0.035*rad/10
- if value < 0 then
- value = 0
- expart.Transparency = expart.Transparency + 0.025
- expart2.Transparency = expart2.Transparency + 0.025
- expartb.Transparency = expartb.Transparency + 0.025
- expart2b.Transparency = expart2b.Transparency + 0.025
- end
- swait()
- end
- game:GetService("Debris"):AddItem(a, 4)
- game:GetService("Debris"):AddItem(ab, 4)
- game:GetService("Debris"):AddItem(expart, 1)
- game:GetService("Debris"):AddItem(expart2, 1)
- game:GetService("Debris"):AddItem(expart2b, 1)
- game:GetService("Debris"):AddItem(expartb, 1)
- end
- local amount = 1
- local size = 1
- local speed = 50
- local custocolor = BrickColor.new("Dark stone grey")
- local groundmove = false
- function Move1()
- attack = true
- hum.WalkSpeed = 0
- for i = 0,3,0.1 do
- swait()
- MagicBlock(custocolor,sorb.CFrame,2,2,2,0.05,0.05,0.05,0.05)
- 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(20),math.rad(-20 + 7.5 * math.cos(sine / 32))),.1)
- 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))),.1)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0 + 0.15 * math.cos(sine / 25))*angles(math.rad(-20),math.rad(0),math.rad(-50)),.1)
- Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(20 - 5 * math.cos(sine / 25)),math.rad(0),math.rad(50)),.1)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*angles(math.rad(-20),math.rad(0),math.rad(175 + 2.5 * math.cos(sine / 25))),.1)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*angles(math.rad(20),math.rad(0),math.rad(-80 - 2.5 * math.cos(sine / 25))),.1)
- end
- for i = 0,1,0.1 do
- swait()
- MagicBlock(custocolor,sorb.CFrame,2,2,2,0.05,0.05,0.05,0.05)
- RH.C0=clerp(RH.C0,cf(1,-0.25 - 0.15 * math.cos(sine / 25),-0.5)*angles(math.rad(0),math.rad(90),math.rad(0))*angles(math.rad(-2.5 - 2.5 * math.cos(sine / 32)),math.rad(20),math.rad(-20 + 7.5 * math.cos(sine / 32))),.5)
- 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))),.5)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-1 + 0.15 * math.cos(sine / 25))*angles(math.rad(50),math.rad(0),math.rad(80)),.5)
- Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(0 - 5 * math.cos(sine / 25)),math.rad(0),math.rad(-80)),.5)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*angles(math.rad(-20),math.rad(0),math.rad(75 + 2.5 * math.cos(sine / 25))),.5)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*angles(math.rad(20),math.rad(0),math.rad(-80 - 2.5 * math.cos(sine / 25))),.5)
- end
- MagicBlock(custocolor,sorb.CFrame,2,2,2,5,5,5,0.05)
- MagicBlock(custocolor,sorb.CFrame,2,2,2,10,10,10,0.15)
- groundmove = true
- local sizer = 5
- local dist = 10
- CFuncs["Sound"].Create("http://www.roblox.com/asset/?id=838393216",tors,2.5, 1)
- for i = 0, 14 do
- local lb = Instance.new("Part")
- lb.Parent = char
- lb.BrickColor = custocolor
- lb.CanCollide = false
- lb.Material = "Slate"
- lb.Shape = "Block"
- lb.Anchored = true
- lb.Transparency = 0
- lb.Size = vt(math.random(3,5),math.random(3,5),math.random(3,5))
- lb.Velocity = Vector3.new(math.random(-35,35),100,math.random(-35,35))
- lb.CFrame = sorb.CFrame
- lb.CFrame = lb.CFrame*CFrame.new(math.random(-3,3),0,math.random(-3,3))
- lb.CFrame = lb.CFrame*CFrame.Angles(math.random(math.rad(-360),math.rad(360)),math.random(math.rad(-360),math.rad(360)),math.random(math.rad(-360),math.rad(360)))
- lb.Anchored = false
- game:GetService("Debris"):AddItem(lb, 3)
- end
- for i = 0, 14 do
- local lb = Instance.new("Part")
- lb.Parent = char
- lb.BrickColor = custocolor
- lb.Material = "Slate"
- lb.Shape = "Block"
- lb.Anchored = true
- lb.Transparency = 0
- lb.Size = vt(math.random(2,3),math.random(2,3),math.random(2,3))
- lb.CFrame = sorb.CFrame
- game:GetService("Debris"):AddItem(lb, 3)
- lb.CFrame = lb.CFrame*CFrame.new(math.random(-2,2),math.random(-1,1),math.random(-2,2))
- lb.CFrame = lb.CFrame*CFrame.Angles(math.random(math.rad(-360),math.rad(360)),math.random(math.rad(-360),math.rad(360)),math.random(math.rad(-360),math.rad(360)))
- end
- for i = 0, 24 do
- sizer = sizer + 1
- dist = dist + 5
- local lb = Instance.new("Part")
- CFuncs["Sound"].Create("http://www.roblox.com/asset/?id=822969951",lb,1, 0.85)
- lb.Parent = char
- lb.BrickColor = custocolor
- lb.CanCollide = false
- lb.Material = "Slate"
- lb.Shape = "Block"
- lb.Anchored = true
- lb.Transparency = 0
- lb.Size = vt(sizer,sizer,sizer)
- lb.CFrame = root.CFrame + root.CFrame.lookVector*dist
- lb.CFrame = lb.CFrame*CFrame.new(0,-5,0)
- lb.CFrame = lb.CFrame*CFrame.Angles(math.random(math.rad(-360),math.rad(360)),math.random(math.rad(-360),math.rad(360)),math.random(math.rad(-360),math.rad(360)))
- lb.Anchored = false
- game:GetService("Debris"):AddItem(lb, 3)
- lb.Touched:connect(function(hit)
- Damagefunc(hit,9,13,1,"Normal",root,.2,1)
- end)
- local bv = Instance.new("BodyVelocity")
- bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
- bv.velocity = Vector3.new(math.random(-15,15),50,math.random(-15,15))
- bv.Parent = lb
- MagicBlock(custocolor,lb.CFrame,sizer,sizer,sizer,1.5*sizer/10,1.5*sizer/10,1.5*sizer/10,0.05)
- wait(0.05)
- bv:Destroy()
- end
- groundmove = false
- attack = false
- hum.WalkSpeed = 16
- end
- function Move2()
- attack = true
- for i = 0,3,0.1 do
- swait()
- MagicBlock(custocolor,sorb.CFrame,1,1,1,0.05,0.05,0.05,0.05)
- MagicBlock(custocolor,sorb2.CFrame,1,1,1,0.05,0.05,0.05,0.05)
- 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)),.1)
- Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(-20 - 5 * math.cos(sine / 25)),math.rad(0),math.rad(0)),.1)
- RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*angles(math.rad(175),math.rad(0),math.rad(20)),.1)
- LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*angles(math.rad(175),math.rad(0),math.rad(-20)),.1)
- end
- local lb = Instance.new("Part")
- CFuncs["Sound"].Create("http://www.roblox.com/asset/?id=834070187",lb,3, 1)
- lb.Parent = char
- lb.BrickColor = custocolor
- lb.CanCollide = false
- lb.Material = "Slate"
- lb.Shape = "Block"
- lb.Anchored = true
- lb.Transparency = 0
- lb.Size = vt(1,1,1)
- local bm = Instance.new("BlockMesh",lb)
- bm.Scale = vt(5,5,5)
- lb.CFrame = root.CFrame*CFrame.new(0,5,0)
- lb.CFrame = lb.CFrame*CFrame.Angles(math.random(math.rad(-360),math.rad(360)),math.random(math.rad(-360),math.rad(360)),math.random(math.rad(-360),math.rad(360)))
- lb.Anchored = false
- MagicBlock(custocolor,lb.CFrame,0.5,0.5,0.5,1,1,1,0.05)
- MagicBlock(custocolor,lb.CFrame,0.5,0.5,0.5,2,2,2,0.05)
- game:GetService("Debris"):AddItem(lb, 10)
- local a = Instance.new("Part",Character)
- a.Name = "Direction"
- a.Anchored = true
- a.BrickColor = custocolor
- a.Material = "Neon"
- a.Transparency = 1
- a.CanCollide = false
- local ray = Ray.new(
- lb.CFrame.p, -- origin
- (mouse.Hit.p - lb.CFrame.p).unit * 500 -- direction
- )
- local ignore = Character
- local hit, position, normal = workspace:FindPartOnRay(ray, ignore)
- a.BottomSurface = 10
- a.TopSurface = 10
- local distance = (lb.CFrame.p - position).magnitude
- a.Size = Vector3.new(0.5, 0.5, distance)
- a.CFrame = CFrame.new(lb.CFrame.p, position) * CFrame.new(0, 0, -distance/2)
- local touched = false
- local bv = Instance.new("BodyVelocity")
- bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
- bv.velocity = a.CFrame.lookVector*150
- bv.Parent = lb
- wait(0.05)
- a:Destroy()
- lb.Touched:connect(function(hit)
- if touched == false then
- touched = true
- lb.Anchored = true
- lb.Transparency = 1
- MagicBlock(custocolor,lb.CFrame,0.5,0.5,0.5,2,2,2,0.075)
- MagicBlock(custocolor,lb.CFrame,0.5,0.5,0.5,2,2,2,0.075)
- CFuncs["Sound"].Create("http://www.roblox.com/asset/?id=822969951",lb,2.5, 1)
- for i = 0, 14 do
- local lbs = Instance.new("Part")
- lbs.Parent = char
- lbs.BrickColor = custocolor
- lbs.Material = "Slate"
- lbs.Shape = "Block"
- lbs.Anchored = true
- lbs.Transparency = 0
- lbs.Size = vt(math.random(2,3),math.random(2,3),math.random(2,3))
- lbs.CFrame = lb.CFrame
- game:GetService("Debris"):AddItem(lbs, 3)
- lbs.CFrame = lbs.CFrame*CFrame.new(math.random(-2,2),math.random(-1,1),math.random(-2,2))
- lbs.CFrame = lbs.CFrame*CFrame.Angles(math.random(math.rad(-360),math.rad(360)),math.random(math.rad(-360),math.rad(360)),math.random(math.rad(-360),math.rad(360)))
- end
- for i = 0, 14 do
- local lbs = Instance.new("Part")
- lbs.Parent = char
- lbs.BrickColor = custocolor
- lbs.CanCollide = false
- lbs.Material = "Slate"
- lbs.Shape = "Block"
- lbs.Anchored = true
- lbs.Transparency = 0
- lbs.Size = vt(math.random(2,3),math.random(2,3),math.random(2,3))
- lbs.Velocity = Vector3.new(math.random(-45,45),50,math.random(-45,45))
- lbs.CFrame = lb.CFrame
- lbs.CFrame = lbs.CFrame*CFrame.new(math.random(-3,3),0,math.random(-3,3))
- lbs.CFrame = lbs.CFrame*CFrame.Angles(math.random(math.rad(-360),math.rad(360)),math.random(math.rad(-360),math.rad(360)),math.random(math.rad(-360),math.rad(360)))
- lbs.Anchored = false
- lbs.Touched:connect(function(hit)
- Damagefunc(hit,5,7,1,"Normal",root,.2,1)
- end)
- game:GetService("Debris"):AddItem(lb, 3)
- end
- end
- end)
- attack = false
- end
- function Move3()
- attack = true
- hum.WalkSpeed = 0
- for i = 0,3,0.1 do
- swait()
- MagicBlock(custocolor,sorb.CFrame,2,2,2,0.05,0.05,0.05,0.05)
- MagicBlock(custocolor,sorb2.CFrame,2,2,2,0.05,0.05,0.05,0.05)
- 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(-30 + 7.5 * math.cos(sine / 32))),.1)
- 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(30 + 7.5 * math.cos(sine / 32))),.1)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0 + 0.15 * math.cos(sine / 25))*angles(math.rad(-20),math.rad(0),math.rad(0)),.1)
- Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(-20 - 5 * math.cos(sine / 25)),math.rad(0),math.rad(0)),.1)
- RW.C0=clerp(RW.C0,cf(1.15,0.5,0)*angles(math.rad(190),math.rad(0),math.rad(-20)),.1)
- LW.C0=clerp(LW.C0,cf(-1.15,0.5,0)*angles(math.rad(190),math.rad(0),math.rad(20)),.1)
- end
- for i = 0,1,0.1 do
- swait()
- MagicBlock(custocolor,sorb.CFrame,2,2,2,0.05,0.05,0.05,0.05)
- MagicBlock(custocolor,sorb2.CFrame,2,2,2,0.05,0.05,0.05,0.05)
- RH.C0=clerp(RH.C0,cf(1,-0.25 - 0.15 * math.cos(sine / 25),-0.75)*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(-30 + 7.5 * math.cos(sine / 32))),.5)
- 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(30 + 7.5 * math.cos(sine / 32))),.5)
- RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-1.5 + 0.15 * math.cos(sine / 25))*angles(math.rad(50),math.rad(0),math.rad(0)),.5)
- Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(50 - 5 * math.cos(sine / 25)),math.rad(0),math.rad(0)),.5)
- RW.C0=clerp(RW.C0,cf(1.15,0.5,0)*angles(math.rad(30),math.rad(0),math.rad(-20)),.5)
- LW.C0=clerp(LW.C0,cf(-1.15,0.5,0)*angles(math.rad(30),math.rad(0),math.rad(20)),.5)
- end
- MagicBlock(custocolor,sorb.CFrame,2,2,2,5,5,5,0.05)
- MagicBlock(custocolor,sorb.CFrame,2,2,2,10,10,10,0.15)
- groundmove = true
- CFuncs["Sound"].Create("http://www.roblox.com/asset/?id=838393216",tors,4.5, 0.95)
- for i = 0, 14 do
- local lb = Instance.new("Part")
- lb.Parent = char
- lb.BrickColor = custocolor
- lb.CanCollide = false
- lb.Material = "Slate"
- lb.Shape = "Block"
- lb.Anchored = true
- lb.Transparency = 0
- lb.Size = vt(math.random(6,9),math.random(6,9),math.random(6,9))
- lb.Velocity = Vector3.new(math.random(-45,45),100,math.random(-45,45))
- lb.CFrame = sorb.CFrame
- lb.CFrame = lb.CFrame*CFrame.new(math.random(-3,3),0,math.random(-3,3))
- lb.CFrame = lb.CFrame*CFrame.Angles(math.random(math.rad(-360),math.rad(360)),math.random(math.rad(-360),math.rad(360)),math.random(math.rad(-360),math.rad(360)))
- lb.Anchored = false
- lb.Touched:connect(function(hit)
- Damagefunc(hit,9,12,1,"Normal",root,.2,1)
- end)
- game:GetService("Debris"):AddItem(lb, 8)
- end
- for i = 0, 24 do
- local lb = Instance.new("Part")
- lb.Parent = char
- lb.BrickColor = custocolor
- lb.Material = "Slate"
- lb.Shape = "Block"
- lb.Anchored = true
- lb.Transparency = 0
- lb.Size = vt(math.random(10,15),math.random(10,15),math.random(10,15))
- lb.CFrame = root.CFrame*CFrame.new(0,-5,0)
- game:GetService("Debris"):AddItem(lb, 8)
- lb.CFrame = lb.CFrame*CFrame.new(math.random(-30,30),math.random(-1,1),math.random(-30,30))
- lb.CFrame = lb.CFrame*CFrame.Angles(math.random(math.rad(-360),math.rad(360)),math.random(math.rad(-360),math.rad(360)),math.random(math.rad(-360),math.rad(360)))
- end
- groundmove = false
- attack = false
- hum.WalkSpeed = 16
- end
- local coold = false
- mouse.KeyDown:connect(function(k)
- if k == "z" and attack == false then
- Move2()
- end
- if k == "x" and attack == false then
- Move1()
- end
- if k == "c" and attack == false then
- Move3()
- 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 groundmove == 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"
- 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)
- 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"
- 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)
- 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
Add Comment
Please, Sign In to add comment