Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- Script
- --https://github.com/Mokiros/roblox-FE-compatibility
- if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
- local Player,Mouse,mouse,UserInputService,ContextActionService = owner
- local RealPlayer = Player
- do print("FE Compatibility code by Mokiros")local a=RealPlayer;script.Parent=a.Character;local b=Instance.new("RemoteEvent")b.Name="UserInput_Event"local function c()local d={_fakeEvent=true,Functions={},Connect=function(self,e)table.insert(self.Functions,e)end}d.connect=d.Connect;return d end;local f={Target=nil,Hit=CFrame.new(),KeyUp=c(),KeyDown=c(),Button1Up=c(),Button1Down=c(),Button2Up=c(),Button2Down=c()}local g={InputBegan=c(),InputEnded=c()}local CAS={Actions={},BindAction=function(self,h,i,j,...)CAS.Actions[h]=i and{Name=h,Function=i,Keys={...}}or nil end}CAS.UnbindAction=CAS.BindAction;local function k(self,l,...)local d=f[l]if d and d._fakeEvent then for m,e in pairs(d.Functions)do e(...)end end end;f.TrigEvent=k;g.TrigEvent=k;b.OnServerEvent:Connect(function(n,o)if n~=a then return end;f.Target=o.Target;f.Hit=o.Hit;if not o.isMouse then local p=o.UserInputState==Enum.UserInputState.Begin;if o.UserInputType==Enum.UserInputType.MouseButton1 then return f:TrigEvent(p and"Button1Down"or"Button1Up")end;if o.UserInputType==Enum.UserInputType.MouseButton2 then return f:TrigEvent(p and"Button2Down"or"Button2Up")end;for m,d in pairs(CAS.Actions)do for m,q in pairs(d.Keys)do if q==o.KeyCode then d.Function(d.Name,o.UserInputState,o)end end end;f:TrigEvent(p and"KeyDown"or"KeyUp",o.KeyCode.Name:lower())g:TrigEvent(p and"InputBegan"or"InputEnded",o,false)end end)b.Parent=NLS([==[local a=game:GetService("Players").LocalPlayer;local b=script:WaitForChild("UserInput_Event")local c=a:GetMouse()local d=game:GetService("UserInputService")local e=function(f,g)if g then return end;b:FireServer({KeyCode=f.KeyCode,UserInputType=f.UserInputType,UserInputState=f.UserInputState,Hit=c.Hit,Target=c.Target})end;d.InputBegan:Connect(e)d.InputEnded:Connect(e)local h,i;while wait(1/30)do if h~=c.Hit or i~=c.Target then h,i=c.Hit,c.Target;b:FireServer({isMouse=true,Target=i,Hit=h})end end]==],Player.Character)local r=game;local s={__index=function(self,q)local t=rawget(self,"_RealService")if t then return typeof(t[q])=="function"and function(m,...)return t[q](t,...)end or t[q]end end,__newindex=function(self,q,u)local t=rawget(self,"_RealService")if t then t[q]=u end end}local function v(d,w)d._RealService=typeof(w)=="string"and r:GetService(w)or w;return setmetatable(d,s)end;local x={GetService=function(self,t)return rawget(self,t)or r:GetService(t)end,Players=v({LocalPlayer=v({GetMouse=function(self)return f end},Player)},"Players"),UserInputService=v(g,"UserInputService"),ContextActionService=v(CAS,"ContextActionService"),RunService=v({_btrs={},RenderStepped=r:GetService("RunService").Heartbeat,BindToRenderStep=function(self,h,m,i)self._btrs[h]=self.Heartbeat:Connect(i)end,UnbindFromRenderStep=function(self,h)self._btrs[h]:Disconnect()end},"RunService")}rawset(x.Players,"localPlayer",x.Players.LocalPlayer)x.service=x.GetService;v(x,game)game,owner=x,x.Players.LocalPlayer end
- --[[
- abyssal sword
- LOCALSCRIPT
- keys:
- e = energy brick
- c = smash
- f = fall
- l = lightning
- click = slash
- right click = lasers
- ]]
- me = owner
- user = me.Character
- local tool = Instance.new("Tool", me.Backpack)
- tool.Name = "AbbysalSword"
- local handle = Instance.new("Part", tool)
- handle.formFactor = "Custom"
- handle.CanCollide = false
- handle.Name = "Handle"
- handle.TopSurface = "Smooth"
- handle.BottomSurface = "Smooth"
- handle.Size = Vector3.new(0.3, 1, 0.3)
- handle.Rotation = Vector3.new(90, 0, 0)
- handle.Touched:connect(function(h)
- if not h:IsDescendantOf(me.Character) then
- for _, a in pairs(h.Parent:GetChildren()) do
- if a:IsA("Humanoid") then
- a.Health = a.Health - 20
- end
- end
- end
- end)
- tool.GripPos = Vector3.new(0, 0, -2)
- tool.GripForward = Vector3.new(-1, 0, 0)
- tool.GripRight = Vector3.new(0, 1, 0)
- tool.GripUp = Vector3.new(0, 0, 1.5)
- local fp = Instance.new("Part", tool)
- fp.FormFactor = "Custom"
- fp.Transparency = 1
- fp.Size = Vector3.new(0.25, 0.25, 0.25)
- local fire = Instance.new("Fire", fp)
- fire.Color = Color3.new(0, 0, 0)
- fire.SecondaryColor = Color3.new(255, 0, 0)
- fire.Size = 3
- fire.Heat = 0
- local derp = Instance.new("SpecialMesh", handle)
- derp.MeshId = "http://www.roblox.com/asset/?id=61357428"
- derp.TextureId = "http://www.roblox.com/asset/?id=61357495 "
- derp.Scale = Vector3.new(2, 2, 2.5)
- dist = 1.5
- defdist = 1.5
- upos = 0
- yrot = 90
- mode = 1
- fdist = 2
- updist = 0
- RS = me.Character.Torso["Right Shoulder"]
- LS = me.Character.Torso["Left Shoulder"]
- RSAnim = CFrame.new(1, 0.5, 0) * CFrame.Angles(0, math.rad(90), 0)
- LSAnim = CFrame.new(-1, 0.5, 0) * CFrame.Angles(0, math.rad(-90), 0)
- keys = {}
- coroutine.wrap(function()
- while true do
- for i = 1, 40 do
- dist = dist + 0.02
- defdist = defdist + 0.02
- wait()
- end
- for i = 1, 40 do
- dist = dist - 0.02
- defdist = defdist - 0.02
- wait()
- end
- end
- end)()
- for i = 1, 6 do
- local pr = Instance.new("Part", tool)
- pr.FormFactor = "Custom"
- pr.TopSurface = "Smooth"
- pr.BottomSurface = "Smooth"
- pr.Name = "derpp"
- pr.Transparency = 0
- pr.Anchored = true
- pr.CanCollide = false
- pr.Touched:connect(function(h)
- if not h:IsDescendantOf(me.Character) then
- if h.Parent:FindFirstChild("Humanoid") then
- h.Parent.Humanoid:TakeDamage(10)
- end
- end
- end)
- if i == 1 or i == 3 or i == 5 then
- pr.BrickColor = BrickColor.new("Really black")
- else
- pr.BrickColor = BrickColor.new("Dusty Rose")
- end
- pr.CanCollide = false
- pr.Size = Vector3.new(0.5, 0.5, 0.5)
- coroutine.wrap(function()
- while true do
- for r = 1, 90 do
- if mode == 1 then
- pr.CFrame = fp.CFrame * CFrame.Angles(0, math.rad((r*4)+((360/6)*i)), math.rad((r*4)+((360/5)*i))) * CFrame.new(0, 0, dist)
- elseif mode == 2 then
- pr.CFrame = (fp.CFrame * CFrame.new(2, 0, 0)) * CFrame.Angles(math.rad((r*4)+((360/6)*i)), 0, math.rad((r*4)+((360/5)*i))) * CFrame.new(0, 0, dist)
- elseif mode == 3 then
- pr.CFrame = me.Character["EnergyBrick"].CFrame * CFrame.Angles(0, 0, math.rad((r*4)+((360/6)*i))) * CFrame.new(0, dist, 0)
- end
- wait()
- end
- end
- end)()
- end
- tool.Equipped:connect(function(m)
- local w = Instance.new("Weld", handle)
- w.Part0 = handle
- w.Part1 = fp
- w.C0 = CFrame.new(0, 0, 0.75)
- m.Button1Down:connect(function()
- down = true
- wait()
- for i = 1,6 do
- me.Character.Torso["Right Shoulder"].C0 = me.Character.Torso["Right Shoulder"].C0 * CFrame.Angles(0, 0, math.rad(-i*4))
- wait()
- end
- for i = 1, 6 do
- me.Character.Torso["Right Shoulder"].C0 = me.Character.Torso["Right Shoulder"].C0 * CFrame.Angles(0, 0, math.rad(i*4))
- wait()
- end
- end)
- m.Button1Up:connect(function()
- down = false
- end)
- m.Button2Down:connect(function()
- mode = 2
- fire.Size = 6
- wait(0.5)
- for _, a in pairs(tool:GetChildren()) do
- if a.Name == "derpp" then
- coroutine.wrap(function()
- local ray = Ray.new(a.CFrame.p, (m.Hit.p-a.CFrame.p).unit*300)
- local hit, pos = game.Workspace:FindPartOnRay(ray, me.Character)
- local h = hit
- if h then
- for _, a in pairs(h.Parent:GetChildren()) do
- if a:IsA("Humanoid") then
- a.Health = a.Health - 20
- end
- end
- end
- local dis = (pos-a.CFrame.p).magnitude
- local beam = Instance.new("Part", user)
- beam.TopSurface = "Smooth"
- beam.BottomSurface = "Smooth"
- beam.FormFactor = "Custom"
- beam.Size = Vector3.new(1, 1, dis)
- beam.Anchored = true
- beam.BrickColor = BrickColor.new("Really black")
- beam.CanCollide = false
- beam.Transparency = 0.3
- coroutine.wrap(function()
- for d = 1, 10 do
- beam.Size = beam.Size - Vector3.new(0.1, 0.1, 0)
- beam.CFrame = CFrame.new(pos, a.CFrame.p) * CFrame.new(0, 0, -dis/2)
- wait()
- end
- end)()
- wait(0.5)
- beam:Remove()
- end)()
- end
- end
- wait(0.5)
- mode = 1
- end)
- tool.Activated:connect(function(k)
- fire.Size = 3
- end)
- function onKeyPress(inputObject, gameProcessedEvent)
- if inputObject.KeyCode == Enum.KeyCode.E then
- me.Character.Animate.Disabled = true
- wait(1)
- RS.C0 = RSAnim
- LS.C0 = LSAnim
- for _, a in pairs(tool:GetChildren()) do
- if a.Name ~= "derpp" then
- a.Transparency = 1
- end
- end
- fire.Enabled = false
- LS.C0 = CFrame.new(-1, 0.5, 0) * CFrame.Angles(math.rad(90), math.rad(-90), 0) * CFrame.Angles(math.rad(30), 0, 0)
- RS.C0 = CFrame.new(1, 0.5, 0) * CFrame.Angles(math.rad(90), math.rad(90), 0) * CFrame.Angles(math.rad(30), 0, 0)
- coroutine.wrap(function()
- for d = 1, 30 do
- LS.C0 = CFrame.new(-1, 0.5, 0) * CFrame.Angles(math.rad(90), math.rad(-90), 0) * CFrame.Angles(math.rad((30-(d))), 0, 0)
- RS.C0 = CFrame.new(1, 0.5, 0) * CFrame.Angles(math.rad(90), math.rad(90), 0) * CFrame.Angles(math.rad(30-(d)), 0, 0)
- wait()
- end
- end)()
- local ball = Instance.new("Part", me.Character)
- ball.Name = "EnergyBrick"
- ball.TopSurface = "Smooth"
- ball.BottomSurface = "Smooth"
- ball.CanCollide = false
- ball.Transparency = 0.4
- ball.BrickColor = BrickColor.new("Really black")
- ball.Anchored = true
- ball.Size = Vector3.new(1, 1, 1)
- ball.FormFactor = "Custom"
- ball.CFrame = me.Character.Torso.CFrame * CFrame.Angles(0, math.rad(180), 0) * CFrame.new(0, 0, fdist)
- ball.Touched:connect(function(h)
- if not h:IsDescendantOf(me.Character) then
- if h:IsA("Part") and not h.Name:lower():find("base") then
- h:Destroy()
- end
- end
- end)
- local f = Instance.new("Fire", ball)
- f.Size = 3
- f.Color = Color3.new(0, 0, 0)
- f.SecondaryColor = Color3.new(0, 0, 255)
- wait()
- mode = 3
- for d = 1, 40 do
- f.Size = f.Size + 0.25
- fdist = fdist + 0.05
- dist = dist + 0.05
- updist = updist + 0.025
- ball.Size = ball.Size + Vector3.new(0.1, 0.1, 0.1)
- ball.CFrame = me.Character.Torso.CFrame * CFrame.Angles(0, math.rad(180), 0) * CFrame.new(0, updist, fdist)
- wait()
- end
- local scf = me.Character.Torso.CFrame * CFrame.Angles(0, math.rad(180), 0)
- me.Character.Animate.Disabled = false
- LS.C0 = CFrame.new(-1, 0.5, 0) * CFrame.Angles(0, math.rad(-90), 0)
- RS.C0 = CFrame.new(1, 0.5, 0) * CFrame.Angles(0, math.rad(90), 0)
- for _, a in pairs(tool:GetChildren()) do
- a.Transparency = 0
- end
- fp.Transparency = 1
- mode = 1
- dist = defdist
- updist = 0
- fire.Enabled = true
- for i = 1, 150 do
- ball.CFrame = scf * CFrame.new(0, 0, fdist+(i*2)) * CFrame.Angles(0, 0, math.rad(i*3))
- local b2 = ball:Clone()
- b2.Fire:Destroy()
- b2.Parent = me.Character
- b2.CFrame = ball.CFrame * CFrame.Angles(0, 0, math.rad(i*3))
- b2.Touched:connect(function(h)
- if not h:IsDescendantOf(me.Character) then
- if h:IsA("Part") and not h.Name:lower():find("base") then
- h:Destroy()
- end
- end
- end)
- coroutine.wrap(function()
- wait(1)
- for i = 1, 20 do
- b2.Transparency = b2.Transparency + 0.05
- wait()
- end
- b2:Destroy()
- end)()
- wait()
- end
- ball:Destroy()
- fdist = 2
- function onKeyPress(inputObject, gameProcessedEvent)
- if inputObject.KeyCode == Enum.KeyCode.R then
- me.Character.Animate.Disabled = true
- wait(1)
- RS.C0 = RSAnim
- LS.C0 = LSAnim
- for i = 1, 11 do
- LS.C0 = CFrame.new(-0.75, 0.5, -0.5) * CFrame.Angles(math.rad(i*8), math.rad(-90), 0) * CFrame.Angles(math.rad(i*2), 0, 0)
- RS.C0 = CFrame.new(0.75, 0.5, -0.5) * CFrame.Angles(math.rad(i*8), math.rad(90), 0) * CFrame.Angles(math.rad(i*2), 0, 0)
- wait()
- end
- local bp = Instance.new("BodyPosition", me.Character.Torso)
- bp.maxForce = Vector3.new(0, 9999, 0)
- coroutine.wrap(function()
- for rs = 1, 10 do
- bp.position = me.Character.Head.Position + Vector3.new(0, 4, 0)
- wait()
- end
- end)()
- for an = 1, 30 do
- LS.C0 = CFrame.new(-0.75, 0.5, -0.5) * CFrame.Angles(math.rad(90+(an)), math.rad(-90), 0) * CFrame.Angles(math.rad(45), 0, 0)
- RS.C0 = CFrame.new(0.75, 0.5, -0.5) * CFrame.Angles(math.rad(90+(an)), math.rad(90), 0) * CFrame.Angles(math.rad(45), 0, 0)
- wait()
- end
- wait(0.5)
- bp:Remove()
- for an = 1, 7 do
- LS.C0 = CFrame.new(-0.75, 0.5, -0.5) * CFrame.Angles(math.rad(90-(an*9)), math.rad(-90), 0) * CFrame.Angles(math.rad(45), 0, 0)
- RS.C0 = CFrame.new(0.75, 0.5, -0.5) * CFrame.Angles(math.rad(90-(an*9)), math.rad(90), 0) * CFrame.Angles(math.rad(45), 0, 0)
- wait()
- end
- wait(0.25)
- local ex = Instance.new("Part", me.Character)
- ex.Size = Vector3.new(1, 1, 1)
- ex.Transparency = 0.4
- ex.BrickColor = BrickColor.new("Deep orange")
- local msh = Instance.new("SpecialMesh", ex)
- msh.MeshType = "FileMesh"
- msh.MeshId = "http://www.roblox.com/asset/?id=1323306"
- msh.Scale = Vector3.new(0.5, 0.5, 0.5)
- ex.Position = handle.Position
- ex.Anchored = true
- for i = 1, 20 do
- msh.Scale = msh.Scale + Vector3.new(3, 3, 3)
- for _, a in pairs(game.Players:GetChildren()) do
- if a.Name ~= me.Name and (a.Character.Torso.Position-ex.Position).magnitude <= i*2 then
- for _, b in pairs(a.Character:GetChildren()) do
- if b:IsA("Humanoid") then
- b.Health = b.Health - 10
- end
- end
- end
- end
- wait()
- end
- for i = 1, 12 do
- ex.Transparency = ex.Transparency + 0.05
- wait()
- end
- ex:Remove()
- LS.C0 = CFrame.new(-1, 0.5, 0) * CFrame.Angles(0, math.rad(-90), 0)
- RS.C0 = CFrame.new(1, 0.5, 0) * CFrame.Angles(0, math.rad(90), 0)
- wait()
- me.Character.Animate.Disabled = false
- function onKeyPress(inputObject, gameProcessedEvent)
- if inputObject.KeyCode == Enum.KeyCode.L then
- me.Character.Animate.Disabled = true
- wait(1)
- RS.C0 = RSAnim
- LS.C0 = LSAnim
- for i = 1, 60 do
- LS.C0 = CFrame.new(-1, 0.5, 0) * CFrame.Angles(math.rad(90), math.rad(-90), 0) * CFrame.Angles(math.rad(-90), 0, -math.rad(i))
- RS.C0 = CFrame.new(1, 0.5, 0) * CFrame.Angles(math.rad(90), math.rad(90), 0) * CFrame.Angles(math.rad(-90), 0, math.rad(i))
- wait()
- end
- local beam = Instance.new("Part", me.Character)
- beam.Size = Vector3.new(5, 300, 5)
- beam.CanCollide = false
- beam.CFrame = me.Character.Torso.CFrame * CFrame.new(0, (300/2)-2, 0)
- beam.TopSurface = "Smooth"
- beam.BottomSurface = "Smooth"
- beam.BrickColor = BrickColor.new("New Yeller")
- beam.Anchored = true
- beam.Transparency = 0.3
- wait(0.4)
- for e = 1, 14 do
- beam.Transparency = beam.Transparency + 0.05
- wait()
- end
- beam:Remove()
- local m = Instance.new("ForceField", me.Character)
- for i = 1, 40 do
- d1 = math.random(-200, 200)
- d2 = math.random(-200, 200)
- local ltn = Instance.new("Part", game.Workspace)
- ltn.Size = Vector3.new(3, 300, 3)
- ltn.CanCollide = false
- ltn.CFrame = CFrame.new(d1, 0, d2) * CFrame.new(0, 300/2, 0)
- ltn.TopSurface = "Smooth"
- ltn.BottomSurface = "Smooth"
- ltn.BrickColor = BrickColor.new("Deep blue")
- ltn.Anchored = true
- ltn.Transparency = 0.3
- local ex = Instance.new("Explosion")
- ex.Position = Vector3.new(d1, 0.5, d2)
- ex.BlastRadius = 10
- wait()
- ex.Parent = game.Workspace
- game.Lighting.Ambient = Color3.new(1, 1, 1)
- wait(0.125)
- ltn:Destroy()
- game.Lighting.Ambient = Color3.new(0.5, 0.5, 0.5)
- end
- m:Remove()
- LS.C0 = CFrame.new(-1, 0.5, 0) * CFrame.Angles(0, math.rad(-90), 0)
- RS.C0 = CFrame.new(1, 0.5, 0) * CFrame.Angles(0, math.rad(90), 0)
- wait()
- me.Character.Animate.Disabled = false
- elseif key:lower() == "c" then
- me.Character.Animate.Disabled = true
- wait(1)
- RS.C0 = RSAnim
- LS.C0 = LSAnim
- for _, a in pairs(tool:GetChildren()) do
- a.Transparency = 1
- end
- fire.Enabled = false
- local s = Instance.new("Part", me.Character)
- s.Transparency = 0
- s.Name = "StrikeSword"
- local w = Instance.new("Weld", s)
- w.Part0 = me.Character["Right Arm"]
- w.Part1 = s
- w.C0 = CFrame.new(0, -1, -2) * CFrame.Angles(math.rad(180), 0, 0)
- local derpe = Instance.new("SpecialMesh", s)
- derpe.MeshType = "FileMesh"
- derpe.MeshId = "http://www.roblox.com/asset/?id=61357428"
- derpe.TextureId = "http://www.roblox.com/asset/?id=61357495"
- derpe.Scale = Vector3.new(2, 2, 2.5)
- for i = 1, 35 do
- LS.C0 = CFrame.new(-1, 0.5, 0) * CFrame.Angles(math.rad(20+(i*3)), math.rad(-90), 0) * CFrame.Angles(math.rad(i+20), 0, 0)
- RS.C0 = CFrame.new(1, 0.5, 0) * CFrame.Angles(math.rad(20+(i*3)), math.rad(90), 0) * CFrame.Angles(math.rad(i+20), 0, 0)
- wait()
- end
- wait(1)
- for i = 1, 30 do
- derpe.Scale = derpe.Scale + Vector3.new(0.2, 0.2, 0.2)
- w.C0 = CFrame.new(0, -1, -2-i/3) * CFrame.Angles(math.rad(180), 0, 0)
- wait()
- end
- wait(0.125)
- for i = 1, 17 do
- LS.C0 = CFrame.new(-1, 0.5, 0) * CFrame.Angles(math.rad(110-(i*6)), math.rad(-90), 0)
- RS.C0 = CFrame.new(1, 0.5, 0) * CFrame.Angles(math.rad(110-(i*6)), math.rad(90), 0)
- wait()
- end
- wait(0.125)
- local ex = Instance.new("Part", me.Character)
- ex.Size = Vector3.new(1, 1, 1)
- ex.Transparency = 0.4
- ex.BrickColor = BrickColor.new("Deep orange")
- local msh = Instance.new("SpecialMesh", ex)
- msh.MeshType = "FileMesh"
- msh.MeshId = "http://www.roblox.com/asset/?id=1323306"
- msh.Scale = Vector3.new(0.5, 0.5, 0.5)
- ex.Position = s.Position
- ex.Anchored = true
- coroutine.wrap(function()
- s:Destroy()
- for _, a in pairs(tool:GetChildren()) do
- a.Transparency = 0
- end
- fp.Transparency = 1
- fire.Enabled = true
- me.Character.Animate.Disabled = false
- end)()
- for i = 1, 20 do
- msh.Scale = msh.Scale + Vector3.new(3, 3, 3)
- for _, a in pairs(game.Players:GetChildren()) do
- if a.Name ~= me.Name and (a.Character.Torso.Position-ex.Position).magnitude <= i*2 then
- for _, b in pairs(a.Character:GetChildren()) do
- if b:IsA("Humanoid") then
- b.Health = b.Health - 10
- end
- end
- end
- end
- wait()
- end
- for i = 1, 12 do
- ex.Transparency = ex.Transparency + 0.05
- wait()
- end
- end
- end
- me.Character.Humanoid.Died:connect(function()
- local ex = Instance.new("Explosion")
- ex.Position = handle.Position
- ex.BlastRadius = 100
- ex.BlastPressure = 1e6
- wait()
- ex.Parent = game.Workspace
- end)
- end
- game:GetService("UserInputService").InputBegan:connect(onKeyPress)
- tool.Unequipped:connect(function()
- end)
- end
- end
- end
- end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement