Advertisement
ItzInfern

world eater

Jan 5th, 2019
145
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 29.63 KB | None | 0 0
  1.  
  2.  
  3.  
  4. --https://github.com/Mokiros/roblox-FE-compatibility
  5. if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
  6. local Player,Mouse,mouse,UserInputService,ContextActionService = owner
  7. local RealPlayer = Player
  8. 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
  9.  
  10.  
  11. --[[ World eater Script ]]--
  12. --[[ Declarations ]]--
  13. wait(.0000000000000000000001)
  14. local Player = game:GetService("Players").LocalPlayer
  15. local Character = Player.Character
  16. local Head = Character.Head
  17. local Torso = Character.Torso
  18. local Right_Arm = Character["Right Arm"]
  19. local Right_Leg = Character["Right Leg"]
  20. local Left_Arm = Character["Left Arm"]
  21. local Left_Leg = Character["Left Leg"]
  22. local Humanoid = Character.Humanoid
  23. local Animation = "Idle"
  24. local Mouse = Player:GetMouse()
  25. local LeftShoulder = Torso["Left Shoulder"]
  26. local Left_Hip = Torso["Left Hip"]
  27. local RightShoulder = Torso["Right Shoulder"]
  28. local Right_Hip = Torso["Right Hip"]
  29. local Root = Character.HumanoidRootPart
  30. local RootJoint = Root.RootJoint
  31. local Attacking = false
  32. local CanAttack = true
  33. local Anim = "Idle"
  34. local Combo = 1
  35. local Blocking = false
  36. local MaxDestruction = 1000
  37. local Destruction = 0
  38. local MaxBlock = 100
  39. local Effects = {}
  40. local Color = "Bright yellow"
  41. local Invert = false
  42. local Idle = 0
  43. local Equipped = false
  44. local Running = false
  45. local Unseathed = false
  46. local Shard = "None"
  47.  
  48. Humanoid.MaxHealth = 3000
  49. Humanoid.Health = 3000
  50.  
  51. local WorldEaterTheme = Instance.new("Sound",Character)
  52. WorldEaterTheme.Name = "WorldEaterTheme"
  53. WorldEaterTheme.Looped = true
  54. WorldEaterTheme.SoundId = "http://www.roblox.com/asset?id=149981769"
  55. WorldEaterTheme:Play()
  56.  
  57. Left_Shoulder = Instance.new("Weld", Torso)
  58. Left_Shoulder.Part0 = Torso
  59. Left_Shoulder.Part1 = Left_Arm
  60. Left_Shoulder.Name = "Left Shoulder"
  61. Left_Shoulder.C0 = CFrame.new(-1.5,0,0)
  62.  
  63. Right_Shoulder = Instance.new("Weld", Torso)
  64. Right_Shoulder.Part0 = Torso
  65. Right_Shoulder.Part1 = Right_Arm
  66. Right_Shoulder.Name = "Right Shoulder"
  67. Right_Shoulder.C0 = CFrame.new(1.5,0,0)
  68.  
  69. LeftShoulder.Parent = nil
  70. RightShoulder.Parent = nil
  71. Humanoid.WalkSpeed = 10
  72.  
  73. local RootCFrame = CFrame.fromEulerAnglesXYZ(-1.57,0,3.14)
  74. Necko = CFrame.new(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
  75. Necko2 = CFrame.new(0, -0.5, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
  76. Right_Hip_C1 = CFrame.new(0.5, 1, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
  77. Left_Hip_C1 = CFrame.new(-0.5, 1, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
  78.  
  79.  
  80. Movemment = 1
  81. Walk = 0
  82.  
  83. Animator = Humanoid.Animator
  84. --Animate = Character.Animate
  85.  
  86. Animator.Parent = nil
  87. --Animate.Parent = nil
  88.  
  89. local Services = {
  90.  
  91. SoundService = game:GetService("SoundService");
  92. Players = game:GetService("Players");
  93. Debris = game:GetService("Debris");
  94. Workspace = game:GetService("Workspace");
  95. Lighting = game:GetService("Lighting");
  96. HttpService = game:GetService("HttpService");
  97. InsertService = game:GetService("InsertService");
  98.  
  99. }
  100.  
  101. local ManaBarGUI = Instance.new("ScreenGui", Player.PlayerGui)
  102. ManaBarGUI.Name = "ManaBarGUI"
  103.  
  104. local ManaBarP1 = Instance.new("Frame", ManaBarGUI)
  105. ManaBarP1.Name = "ManaBarPart1"
  106. ManaBarP1.Size = UDim2.new(0,300,0,20)
  107. ManaBarP1.Position = UDim2.new(0,350,0.1,0)
  108. ManaBarP1.BackgroundColor3 = BrickColor.Black().Color
  109.  
  110. local ManaBarP2 = Instance.new("Frame", ManaBarP1)
  111. ManaBarP2.Name = "ManaBarPart2"
  112. ManaBarP2.Size = UDim2.new(0,300,0,20)
  113. ManaBarP2.Position = UDim2.new(0,0,0,0)
  114. ManaBarP2.BackgroundColor3 = BrickColor.new("Black").Color
  115.  
  116. local ManaBarText = Instance.new("TextLabel", ManaBarP1)
  117. ManaBarText.Name = "ManaBarText"
  118. ManaBarText.Size = UDim2.new(0,300,0,20)
  119. ManaBarText.Position = UDim2.new(0,0,-1.5,0)
  120. ManaBarText.TextScaled = true
  121. ManaBarText.Text = "<{[ Destruction ]}> 0 <{[ Destruction ]}>"
  122. ManaBarText.BackgroundTransparency = 1
  123. ManaBarText.TextStrokeTransparency = 0
  124. ManaBarText.TextStrokeColor3 = Color3.new(1,1,1)
  125. ManaBarText.TextColor3 = Color3.new(0,0,0)
  126. ManaBarText.Font = "Garamond"
  127.  
  128. local WorldEaterGui = Instance.new("BillboardGui", Head)
  129. WorldEaterGui.ExtentsOffset = Vector3.new(0,5,0)
  130. WorldEaterGui.Adornee = Head
  131. WorldEaterGui.AlwaysOnTop = true
  132. WorldEaterGui.Enabled = true
  133. WorldEaterGui.Size = UDim2.new(0, 200,0, 50)
  134.  
  135. local WorldEaterText = Instance.new("TextLabel", WorldEaterGui)
  136. WorldEaterText.BackgroundTransparency = 1
  137. WorldEaterText.Font = "Garamond"
  138. WorldEaterText.Size = UDim2.new(0, 200,0, 50)
  139. WorldEaterText.TextStrokeColor3 = BrickColor.Red().Color
  140. WorldEaterText.TextStrokeTransparency = 0
  141. WorldEaterText.TextColor3 = BrickColor.Black().Color
  142. WorldEaterText.TextScaled = true
  143. WorldEaterText.Text = "World Eater"
  144.  
  145. --------[[ Mesh Ids ]]--------
  146.  
  147. SpikeMeshId = 1033714
  148. SpikeBallId = 9982590
  149. StarMeshId = 45428961
  150. CrystalMeshId = 9756362
  151.  
  152. --[[ Essential Functions ]]--
  153. function NoOutlines(Part)
  154. Part.TopSurface,Part.BottomSurface,Part.LeftSurface,Part.RightSurface,Part.FrontSurface,Part.BackSurface = 10,10,10,10,10,10
  155. end
  156.  
  157.  
  158. local CreatePart = function(Parent, Name, Color, Size, Material, Transparency, Shape)
  159.  
  160. local Part = Instance.new("Part", Parent)
  161. Part.Name = Name
  162. Part.BrickColor = BrickColor.new(Color)
  163. Part.Size = Size
  164. Part.Material = Material
  165. Part.Transparency = Transparency
  166. Part.Shape = Shape
  167. Part.CanCollide = false
  168. NoOutlines(Part)
  169.  
  170. return Part
  171.  
  172. end
  173.  
  174. local CreateMesh = function(Parent, Scale, Shape)
  175.  
  176.  
  177. local Mesh = Instance.new("BlockMesh", Parent)
  178. Mesh.Scale = Scale
  179.  
  180. return Mesh
  181.  
  182. end
  183.  
  184. local CreateWedge = function(Parent, Name, Color, Size, Material, Transparency)
  185.  
  186. local WedgePart = Instance.new("WedgePart", Parent)
  187. WedgePart.Name = Name
  188. WedgePart.BrickColor = BrickColor.new(Color)
  189. WedgePart.Size = Size
  190. WedgePart.Material = Material
  191. WedgePart.Transparency = Transparency
  192. WedgePart.CanCollide = false
  193. NoOutlines(WedgePart)
  194.  
  195. return WedgePart
  196.  
  197. end
  198.  
  199. local CreateWeld = function(Parent, Cframe, P1 , P0)
  200.  
  201. local Weld = Instance.new("Weld", Parent)
  202. Weld.Part0 = P0
  203. Weld.Part1 = P1
  204. Weld.Name = P0.Name .. "To" .. P1.Name
  205. Weld.C0 = Cframe
  206.  
  207. return Weld
  208.  
  209. end
  210.  
  211. local CreateVelocity = function(Parent,Velocity,Force)
  212.  
  213. local BodyVelocity = Instance.new("BodyVelocity", Parent)
  214. BodyVelocity.Velocity = Velocity
  215. BodyVelocity.MaxForce = Force
  216.  
  217.  
  218.  
  219. return BodyVelocity
  220.  
  221. end
  222.  
  223.  
  224. local CreateCrystal = function(Parent, Name, Color, Size, Material, Transparency, Scale)
  225.  
  226.  
  227. local Part = Instance.new("Part", Parent)
  228. Part.Name = Name
  229. Part.BrickColor = BrickColor.new(Color)
  230. Part.Size = Size
  231. Part.Material = Material
  232. Part.Transparency = Transparency
  233. Part.CanCollide = false
  234. NoOutlines(Part)
  235.  
  236. local Mesh = Instance.new("SpecialMesh", Part)
  237. Mesh.MeshId = "http://www.roblox.com/asset?id=" .. CrystalMeshId
  238. Mesh.Scale = Scale
  239.  
  240. return Mesh and Part
  241.  
  242. end
  243.  
  244. local MakeSFX = function(Parent, Id, Volume, Pitch, Type)
  245.  
  246. local SFX = Instance.new("Sound", Parent)
  247. SFX.SoundId = "http://www.roblox.com/asset?id=" .. Id
  248. SFX.Name = "SFX"
  249. SFX:Play()
  250. SFX.Volume = Volume
  251. SFX.Pitch = Pitch
  252. SFX.PlayOnRemove = true
  253. SFX:Remove()
  254.  
  255. if Type == "Echo" then
  256.  
  257. Instance.new("EchoSoundEffect", SFX)
  258.  
  259. end
  260.  
  261. end
  262.  
  263. local CreateSpike = function(Parent, Name, Color, Size, Material, Transparency, Scale)
  264.  
  265.  
  266. local Part = Instance.new("Part", Parent)
  267. Part.Name = Name
  268. Part.BrickColor = BrickColor.new(Color)
  269. Part.Size = Size
  270. Part.Material = Material
  271. Part.Transparency = Transparency
  272. Part.CanCollide = false
  273. NoOutlines(Part)
  274.  
  275. local Mesh = Instance.new("SpecialMesh", Part)
  276. Mesh.MeshId = "http://www.roblox.com/asset?id=" .. SpikeMeshId
  277. Mesh.Scale = Scale
  278.  
  279. return Mesh and Part
  280.  
  281. end
  282.  
  283. CircleEffect = function(Position, Parent, DSX, DSY, DSZ, SX, SY, SZ, Time, Brickcolor, Material, Transparency)
  284.  
  285. local Part = Instance.new("Part", Parent)
  286. Part.Transparency = Transparency
  287. Part.Name = "CircleEffect"
  288. Part.Size = Vector3.new()
  289. Part.Anchored = true
  290. Part.CanCollide = false
  291. Part.Position = Position
  292. Part.BrickColor = BrickColor.new(Brickcolor)
  293. Part.Material = Material
  294. NoOutlines(Part)
  295.  
  296. local Mesh = Instance.new("SpecialMesh", Part)
  297. Mesh.MeshType = "Sphere"
  298. Mesh.Scale = Vector3.new(DSX, DSY, DSZ)
  299.  
  300. Services.Debris:AddItem(Part, Time)
  301.  
  302.  
  303. table.insert(Effects, {Part, "Circle", Time, SX, SY, SZ})
  304.  
  305.  
  306. end
  307.  
  308. BlockEffect = function(Position, Parent, DSX, DSY, DSZ, SX, SY, SZ, Time, Brickcolor, Material, Transparency)
  309.  
  310. local Part = Instance.new("Part", Parent)
  311. Part.Transparency = Transparency
  312. Part.Name = "BlockEffect"
  313. Part.Size = Vector3.new()
  314. Part.Anchored = true
  315. Part.Position = Position
  316. Part.CanCollide = false
  317. Part.BrickColor = BrickColor.new(Brickcolor)
  318. Part.Material = Material
  319. NoOutlines(Part)
  320.  
  321. local Mesh = Instance.new("BlockMesh", Part)
  322. Mesh.Scale = Vector3.new(DSX, DSY, DSZ)
  323.  
  324. Services.Debris:AddItem(Part, Time)
  325.  
  326. table.insert(Effects, {Part, "Block", Time, SX, SY, SZ})
  327.  
  328.  
  329. end
  330.  
  331. --[[ Damage function ]]--
  332.  
  333.  
  334. function DamageFunction(Hit, Part, Type, HitSFX, Knockback, Min, Max)
  335.  
  336. local HitHumanoid = Hit.Parent.Humanoid
  337.  
  338.  
  339. local Damage = math.random(Min, Max)
  340.  
  341.  
  342. coroutine.resume(coroutine.create(function()
  343. HitHumanoid:TakeDamage(Damage)
  344. end))
  345.  
  346. if Type == "Shrink" then
  347. MakeSFX(Hit.Parent.Torso, 209527235, 1, 1)
  348. for i,v in pairs(Hit.Parent:children()) do
  349. if v:IsA("Part") then
  350. coroutine.resume(coroutine.create(function()
  351. for i = 1,100 do
  352. wait()
  353. v.Size = v.Size - Vector3.new(0.05,0.05,0.05)
  354. v.Transparency = v.Transparency + 0.05
  355.  
  356. end
  357. end))
  358. end
  359. end
  360.  
  361. end
  362.  
  363.  
  364.  
  365. if Type == "Normal" then
  366.  
  367. local Push = CreateVelocity(Hit.Parent.Torso, Torso.CFrame.lookVector * Knockback, Vector3.new(math.huge,math.huge,math.huge))
  368. Services.Debris:AddItem(Push, 0)
  369. DamageLabel(Hit.Parent, Damage, Hit)
  370.  
  371. elseif Type == "Ranged" then
  372. local Push = CreateVelocity(Hit.Parent.Torso, Part.CFrame.lookVector * Knockback, Vector3.new(math.huge,math.huge,math.huge))
  373. Services.Debris:AddItem(Push, 0)
  374. DamageLabel(Hit.Parent, Damage, Hit)
  375.  
  376. elseif Type == "Impale" then
  377.  
  378. local Spike = CreateSpike(Services.Workspace, "D e a t h", "Black", Vector3.new(), "SmoothPlastic", 0, Vector3.new(1,20,1))
  379. Spike.Anchored = true
  380. Spike.Rotation = Vector3.new(math.random(-50,50), 0 , math.random(-50,50))
  381. Spike.Position = Hit.Parent.Torso.Position
  382.  
  383.  
  384. Services.Debris:AddItem(Spike, 30)
  385.  
  386. Hit.Parent:BreakJoints()
  387. Hit.Parent.Torso.Position = Spike.Position + Vector3.new(0,5,0)
  388. Hit.Parent.Torso.Anchored = true
  389.  
  390. MakeSFX(Spike, 306247724, 1,1)
  391. MakeSFX(Hit.Parent.Torso, 209527175, 10,1)
  392. elseif Type == "Knockdown" then
  393.  
  394.  
  395. local Push = CreateVelocity(Hit.Parent.Torso, Part.CFrame.lookVector * Knockback, Vector3.new(math.huge,math.huge,math.huge))
  396. DamageLabel(Hit.Parent, Damage, Hit)
  397. Services.Debris:AddItem(Push, 0.3)
  398.  
  399. coroutine.resume(coroutine.create(function()
  400.  
  401. HitHumanoid.PlatformStand = true
  402. wait(1)
  403. HitHumanoid.PlatformStand = false
  404.  
  405.  
  406. end))
  407. end
  408.  
  409. if HitSFX == "Penetration" then
  410.  
  411. MakeSFX(Hit, 199149269, 1 , 1)
  412.  
  413. elseif HitSFX == "Punch" then
  414.  
  415. MakeSFX(Hit, 278062209, 1 , 1)
  416.  
  417.  
  418.  
  419.  
  420. end
  421. end
  422.  
  423. function DamageLabel(HitCharacter, DamageDealt, Hit)
  424.  
  425. local DamageShowingPart = CreatePart(Services.Workspace, "ShowDamage", "Bright yellow", Vector3.new(0.8,0.8,0.8), "Neon", 1, "Block")
  426. DamageShowingPart.Position = HitCharacter.Head.Position
  427.  
  428. local DamageGui = Instance.new("BillboardGui", DamageShowingPart)
  429. DamageGui.Name = "Damage"
  430. DamageGui.AlwaysOnTop = true
  431. DamageGui.Size = UDim2.new(5, 0, 5, 0)
  432.  
  433. local DamageNumber = Instance.new("TextLabel", DamageGui)
  434. DamageNumber.Size = UDim2.new(1,0,1,0)
  435. if Hit.Parent:FindFirstChild("Head") then
  436. DamageNumber.TextStrokeColor3 = Hit.Parent.Head.BrickColor.Color
  437. DamageNumber.TextColor3 = Hit.BrickColor.Color
  438. end
  439. DamageNumber.TextStrokeTransparency = 0
  440. DamageNumber.BackgroundTransparency = 1
  441. DamageNumber.Font = "SourceSansBold"
  442. DamageNumber.TextScaled = true
  443. DamageNumber.Text = DamageDealt
  444.  
  445. local BodyVelocity = Instance.new("BodyVelocity", DamageShowingPart)
  446. BodyVelocity.MaxForce = Vector3.new(math.huge,math.huge,math.huge)
  447. BodyVelocity.Velocity = Vector3.new(0,2,0)
  448.  
  449. Services.Debris:AddItem(DamageShowingPart, 3)
  450.  
  451.  
  452. end
  453.  
  454. function ValidateDamage(Part, Distance ,Min , Max, Type, HitSFX, Knockback)
  455. for _,WorkspaceChildren in pairs(workspace:children()) do
  456.  
  457. local HitHumanoid = WorkspaceChildren:findFirstChild("Humanoid")
  458.  
  459. if HitHumanoid ~= nil then
  460. local Hit = WorkspaceChildren:findFirstChild("Torso")
  461.  
  462. if Hit ~= nil then
  463.  
  464. local Target = Hit.Position - Part.Position
  465.  
  466. local Magnitude = Target.magnitude
  467.  
  468. if Magnitude <= Distance and WorkspaceChildren.Name ~= Player.Name then
  469.  
  470. local HitBlock = Hit.Parent:FindFirstChild("Block")
  471.  
  472. if HitBlock ~= nil and HitBlock:FindFirstChild("BlockDurability") and HitBlock.Value == true then
  473.  
  474. local HitBlock2 = Hit.Parent.Block.BlockDurability
  475.  
  476. if HitBlock2.Value > 15 then
  477.  
  478. local HitN = math.random(1,5)
  479.  
  480. HitBlock2.Value = HitBlock2.Value - 15
  481.  
  482.  
  483. if HitN == 1 then
  484. MakeSFX(Hit ,199148971, 0.5, 1)
  485. end
  486.  
  487. if HitN == 2 then
  488. MakeSFX(Hit ,199149025, 0.5, 1)
  489. end
  490.  
  491. if HitN == 3 then
  492. MakeSFX(Hit ,199149072, 0.5, 1)
  493. end
  494.  
  495. if HitN == 4 then
  496. MakeSFX(Hit ,199149109, 0.5, 1)
  497. end
  498.  
  499. if HitN == 5 then
  500. MakeSFX(Hit ,199149119, 0.5, 1)
  501. end
  502. return
  503. end
  504. end
  505.  
  506. DamageFunction(Hit, Part, Type, HitSFX, Knockback, Min, Max)
  507.  
  508.  
  509.  
  510. end
  511. end
  512. end
  513. end
  514. end
  515.  
  516.  
  517.  
  518. local Cloak = Instance.new("Part", Character)
  519. Cloak.Name = "Cloak"
  520. Cloak.CanCollide = false
  521. Cloak.BrickColor = BrickColor.new("Institutional white")
  522.  
  523. local CloakMesh = Instance.new("SpecialMesh", Cloak)
  524. CloakMesh.MeshId = "http://www.roblox.com/asset?id=16150814"
  525. CloakMesh.TextureId = "http://www.roblox.com/asset?id=16150799"
  526.  
  527. local CloakWeld = CreateWeld(Cloak, CFrame.new(0,0,0) * CFrame.Angles(0,0,0), Head , Cloak, "ArkusToCharacter")
  528.  
  529. for i,v in pairs(Character:children()) do
  530. if v:IsA("Accessory") then
  531. v:Remove()
  532. elseif v:IsA("Shirt") then
  533. v:Remove()
  534. elseif v:IsA("Pants") then
  535. v:Remove()
  536. elseif v:IsA("BodyColors") then
  537.  
  538. Head.BrickColor =BrickColor.new("Really black")
  539. Torso.BrickColor = BrickColor.new("Really black")
  540. Right_Arm.BrickColor = BrickColor.new("Really black")
  541. Right_Leg.BrickColor = BrickColor.new("Really black")
  542. Left_Arm.BrickColor = BrickColor.new("Really black")
  543. Left_Leg.BrickColor = BrickColor.new("Really black")
  544.  
  545. v.HeadColor = BrickColor.new("Really black")
  546. v.TorsoColor = BrickColor.new("Really black")
  547. v.RightArmColor = BrickColor.new("Really black")
  548. v.LeftArmColor = BrickColor.new("Really black")
  549. v.RightLegColor = BrickColor.new("Really black")
  550. v.LeftLegColor = BrickColor.new("Really black")
  551.  
  552. end
  553. end
  554.  
  555.  
  556.  
  557. --[[ CLerp Declarations ]]--
  558.  
  559. function clerp(a,b,t)
  560. local qa = {QuaternionFromCFrame(a)}
  561. local qb = {QuaternionFromCFrame(b)}
  562. local ax, ay, az = a.x, a.y, a.z
  563. local bx, by, bz = b.x, b.y, b.z
  564. local _t = 1-t
  565. return QuaternionToCFrame(_t*ax + t*bx, _t*ay + t*by, _t*az + t*bz,QuaternionSlerp(qa, qb, t))
  566. end
  567.  
  568. function QuaternionFromCFrame(cf) -- dis one
  569. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  570. local trace = m00 + m11 + m22
  571. if trace > 0 then
  572. local s = math.sqrt(1 + trace)
  573. local recip = 0.5/s
  574. return (m21-m12)*recip, (m02-m20)*recip, (m10-m01)*recip, s*0.5
  575. else
  576. local i = 0
  577. if m11 > m00 then
  578. i = 1
  579. end
  580. if m22 > (i == 0 and m00 or m11) then
  581. i = 2
  582. end
  583. if i == 0 then
  584. local s = math.sqrt(m00-m11-m22+1)
  585. local recip = 0.5/s
  586. return 0.5*s, (m10+m01)*recip, (m20+m02)*recip, (m21-m12)*recip
  587. elseif i == 1 then
  588. local s = math.sqrt(m11-m22-m00+1)
  589. local recip = 0.5/s
  590. return (m01+m10)*recip, 0.5*s, (m21+m12)*recip, (m02-m20)*recip
  591. elseif i == 2 then
  592. local s = math.sqrt(m22-m00-m11+1)
  593. local recip = 0.5/s return (m02+m20)*recip, (m12+m21)*recip, 0.5*s, (m10-m01)*recip
  594. end
  595. end
  596. end
  597.  
  598. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  599. local xs, ys, zs = x + x, y + y, z + z
  600. local wx, wy, wz = w*xs, w*ys, w*zs
  601. local xx = x*xs
  602. local xy = x*ys
  603. local xz = x*zs
  604. local yy = y*ys
  605. local yz = y*zs
  606. local zz = z*zs
  607. 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))
  608. end
  609.  
  610. function QuaternionSlerp(a, b, t)
  611. local cosTheta = a[1]*b[1] + a[2]*b[2] + a[3]*b[3] + a[4]*b[4]
  612. local startInterp, finishInterp;
  613. if cosTheta >= 0.0001 then
  614. if (1 - cosTheta) > 0.0001 then
  615. local theta = math.acos(cosTheta)
  616. local invSinTheta = 1/math.sin(theta)
  617. startInterp = math.sin((1-t)*theta)*invSinTheta
  618. finishInterp = math.sin(t*theta)*invSinTheta
  619. else
  620. startInterp = 1-t
  621. finishInterp = t
  622. end
  623. else
  624. if (1+cosTheta) > 0.0001 then
  625. local theta = math.acos(-cosTheta)
  626. local invSinTheta = 1/math.sin(theta)
  627. startInterp = math.sin((t-1)*theta)*invSinTheta
  628. finishInterp = math.sin(t*theta)*invSinTheta
  629. else
  630. startInterp = t-1
  631. finishInterp = t
  632. end
  633. end
  634. 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
  635. end
  636.  
  637. function RayCast(Pos, Dir, Max, Ignore)
  638. return game:service("Workspace"):FindPartOnRay(Ray.new(Pos, Dir.unit * (Max or 999.999)), Ignore)
  639. end
  640.  
  641.  
  642. function Bars()
  643.  
  644. --[[ Mana Bar ]]--
  645. if Destruction ~= MaxDestruction then
  646.  
  647. Destruction = Destruction + 1
  648.  
  649. end
  650.  
  651. if Destruction >= MaxDestruction then
  652.  
  653. Destruction = Destruction
  654.  
  655. end
  656.  
  657.  
  658. ManaBarText.Text = "<{[ Destruction ]}> <|"..Destruction.."|> <{[ Destruction ]}>"
  659.  
  660. ManaBarP2.Size = UDim2.new(Destruction / Destruction,0,0,20)
  661.  
  662. end
  663. local EyeReference = CreatePart(Character, "Reference", "Dark stone grey", Vector3.new(), "SmoothPlastic", 1, "Block")
  664. local EyeReferenceWeld = CreateWeld(EyeReference, CFrame.new(0.15,-0.1,-0.7), EyeReference, Head)
  665.  
  666. coroutine.resume(coroutine.create(function()
  667.  
  668. while wait(3) do
  669.  
  670.  
  671. CircleEffect(EyeReference.Position, Services.Workspace, 1, 1, 1, 1, 1, 1, 0.5, "Bright red", "Neon", 0.5)
  672.  
  673.  
  674. end
  675.  
  676. end))
  677. --[[ Attacks ]]--
  678.  
  679. function Attack1()
  680. Attacking = true
  681. MakeSFX(EyeReference, 341336274, 1,1)
  682. wait(0.3)
  683. local Reference = CreatePart(Services.Workspace, "Reference", "Dark stone grey", Vector3.new(), "SmoothPlastic", 1, "Block")
  684. local ReferenceWeld = CreateWeld(Reference, CFrame.new(0,0.5,-5), Reference, Root)
  685.  
  686. local Reference2 = CreatePart(Services.Workspace, "Reference", "Dark stone grey", Vector3.new(), "SmoothPlastic", 1, "Block")
  687. local Reference2Weld = CreateWeld(Reference2, CFrame.new(0,0.5,-2), Reference2, Root)
  688.  
  689.  
  690. for i = 1,10 do
  691.  
  692. wait()
  693. RootJoint.C0 = clerp(RootJoint.C0,RootCFrame*CFrame.new(0,0,0)* CFrame.Angles(0,0,-1.6),0.5)
  694. Torso.Neck.C0 = clerp(Torso.Neck.C0,Necko * CFrame.Angles(0,0,1.3),0.2)
  695. Right_Shoulder.C0 = clerp(Right_Shoulder.C0, CFrame.new(1.5, 0.1, 0) * CFrame.Angles(0,0,0.2), 0.3)
  696. Left_Shoulder.C0 = clerp(Left_Shoulder.C0, CFrame.new(-1.5, 0.5, 0) * CFrame.Angles(0,0,-1.6), 0.4)
  697. Right_Hip.C0=clerp(Right_Hip.C0,CFrame.new(1,-1,0) * CFrame.Angles(0,1.6,0),0.3)
  698. Left_Hip.C0=clerp(Left_Hip.C0,CFrame.new(-1,-1,0) * CFrame.Angles(0,-1.6,0),0.3)
  699.  
  700. end
  701.  
  702. CircleEffect(Reference2.Position, Services.Workspace, 50, 50, 50, -5, -5, -5, 5, "Bright red", "Neon", 0.5)
  703. wait(0.5)
  704. CircleEffect(Reference2.Position, Services.Workspace, 50, 50, 50, -5, -5, -5, 5, "Bright red", "Neon", 0.5)
  705. wait(0.5)
  706. CircleEffect(Reference2.Position, Services.Workspace, 50, 50, 50, -5, -5, -5, 5, "Bright red", "Neon", 0.5)
  707. wait(0.5)
  708. CircleEffect(Reference2.Position, Services.Workspace, 50, 50, 50, -5, -5, -5, 5, "Bright red", "Neon", 0.5)
  709. wait(0.5)
  710. MakeSFX(Reference, 306247724, 1,1)
  711. CircleEffect(Reference.Position, Services.Workspace, 1, 1, 1, 5, 5, 5, 5, "Bright red", "Neon", 0.5)
  712. ValidateDamage(Reference, 10 ,10 , 14, "Shrink", "Penetration", 5)
  713. Attacking = false
  714. end
  715.  
  716. function Attack2()
  717.  
  718. Attacking = true
  719. Humanoid.WalkSpeed = 0
  720. Humanoid.JumpPower = 0
  721.  
  722.  
  723. for i = 1,25 do
  724. wait()
  725.  
  726. RootJoint.C0 = clerp(RootJoint.C0,RootCFrame*CFrame.new(0,0,0)* CFrame.Angles(-0.5,0,0),0.2)
  727. Torso.Neck.C0 = clerp(Torso.Neck.C0,Necko * CFrame.Angles(-0.5,0,0),0.3)
  728. Right_Shoulder.C0 = clerp(Right_Shoulder.C0, CFrame.new(1, 1, 0) * CFrame.Angles(3.2,0,-0.6), 0.3)
  729. Left_Shoulder.C0 = clerp(Left_Shoulder.C0, CFrame.new(-1, 1, 0) * CFrame.Angles(3.2,0,0.6), 0.3)
  730. Right_Hip.C0=clerp(Right_Hip.C0,CFrame.new(1,-1,0)*CFrame.Angles(0,1.6,-0.3),0.2)
  731. Left_Hip.C0=clerp(Left_Hip.C0,CFrame.new(-1,-1,-0.5)*CFrame.Angles(0,-1.6,0),0.2)
  732.  
  733. end
  734.  
  735. MakeSFX(Torso, 142070127, 1, 1)
  736. ValidateDamage(Torso, 60 ,23, 26, "Knockdown", "Penetration", 15)
  737. local Hit, Position = RayCast(Torso.Position,(CFrame.new(Root.Position,Root.Position - Vector3.new(0,1,0))).lookVector,100,Character)
  738. if Hit ~= nil then
  739. local Reference = CreatePart(Services.Workspace, "Reference", "Dark stone grey", Vector3.new(), "SmoothPlastic", 1, "Block")
  740. Reference.Anchored = true
  741. Reference.CFrame = CFrame.new(Position)
  742.  
  743. CircleEffect(Reference.Position, Services.Workspace, 1, 1, 1, 5, 5, 5, 5, "Bright red", "Neon", 0.5)
  744.  
  745. game:GetService("Debris"):AddItem(Reference,0.1)
  746. for i=1,50 do
  747.  
  748. local Ground = CreatePart(Services.Workspace, "Ground", Hit.BrickColor.Color, Vector3.new(math.random(1,3), math.random(1,3), math.random(1,3)), Hit.Material, 0, "Block")
  749. Ground.Anchored = true
  750. Ground.CanCollide = true
  751. Ground.CFrame = CFrame.new(Position) * CFrame.new(math.random(-30,30), 0, math.random(-30,30)) * CFrame.Angles(math.random(-50,50),math.random(-50,50), math.random(-50,50))
  752.  
  753. game:GetService("Debris"):AddItem(Ground,10)
  754.  
  755. end
  756. end
  757.  
  758. for i = 1,25 do
  759. wait()
  760.  
  761. RootJoint.C0 = clerp(RootJoint.C0,RootCFrame*CFrame.new(0,0,0)* CFrame.Angles(0,0,0),0.5)
  762. Torso.Neck.C0 = clerp(Torso.Neck.C0,Necko * CFrame.Angles(0.5,0,0),0.3)
  763. Right_Shoulder.C0 = clerp(Right_Shoulder.C0, CFrame.new(1.5, 0, 0.1) * CFrame.Angles(-0.2,0,0), 0.3)
  764. Left_Shoulder.C0 = clerp(Left_Shoulder.C0, CFrame.new(-1.5, 0, 0.1) * CFrame.Angles(-0.2,0,0), 0.3)
  765. Right_Hip.C0=clerp(Right_Hip.C0,CFrame.new(1,-1,0)*CFrame.Angles(0,1.6,-0.3),0.2)
  766. Left_Hip.C0=clerp(Left_Hip.C0,CFrame.new(-1,-1,-0.5)*CFrame.Angles(0,-1.6,0),0.2)
  767.  
  768. end
  769.  
  770. Attacking = false
  771. Humanoid.WalkSpeed = 16
  772. Humanoid.JumpPower = 50
  773.  
  774.  
  775.  
  776. end
  777.  
  778.  
  779. function Attack3()
  780. Humanoid.WalkSpeed = 0
  781. Humanoid.JumpPower = 0
  782. Attacking = true
  783. wait(1)
  784. MakeSFX(Torso, 341336274, 1, 1.2)
  785. CircleEffect(Torso.Position, Services.Workspace, 1, 1, 1, 20, 20, 20, 5, "Black", "Neon", 0.5)
  786. wait(1)
  787. MakeSFX(Torso, 341336274, 1, 1.2)
  788. CircleEffect(Torso.Position, Services.Workspace, 1, 1, 1, 20, 20, 20, 5, "Black", "Neon", 0.5)
  789. wait(1)
  790. MakeSFX(Torso, 341336274, 1, 1.2)
  791. CircleEffect(Torso.Position, Services.Workspace, 1, 1, 1, 20, 20, 20, 5, "Black", "Neon", 0.5)
  792. ValidateDamage(Torso, 60 ,0, 0, "Impale", "Penetration", 15)
  793. Humanoid.WalkSpeed = 16
  794. Humanoid.JumpPower = 50
  795. Attacking = false
  796. end
  797.  
  798. Mouse.Button1Down:connect(function()
  799. if not Attacking then
  800. if Combo == 1 then
  801.  
  802. Combo = 2
  803. Attack1()
  804.  
  805.  
  806. elseif Combo == 2 then
  807.  
  808. Attack2()
  809. Combo = 3
  810.  
  811. elseif Combo == 3 then
  812.  
  813. Attack3()
  814. Combo = 1
  815.  
  816. end
  817. end
  818. end)
  819.  
  820. --[[ CLerp Animations ]]--
  821. Change1 = 0
  822. Change2 = 0
  823. Change3 = 0
  824. Change4 = 0
  825.  
  826. while true do
  827. wait()
  828.  
  829. local Torvel = (Root.Velocity*Vector3.new(1,0,1)).magnitude
  830. local Velderp = Root.Velocity.y
  831. HitFloor,PosFloor = RayCast(Root.Position,(CFrame.new(Root.Position,Root.Position - Vector3.new(0,1,0))).lookVector,4,Character)
  832.  
  833. Bars()
  834.  
  835.  
  836. if Torvel < 1 and HitFloor ~= nil and Attacking == false then
  837. Anim = "Idle"
  838.  
  839. RootJoint.C0 = clerp(RootJoint.C0,RootCFrame*CFrame.new(0,0,0)* CFrame.Angles(0,0,0),0.2)
  840. Torso.Neck.C0 = clerp(Torso.Neck.C0,Necko * CFrame.Angles(0,-0.3,0),0.3)
  841. Right_Shoulder.C0 = clerp(Right_Shoulder.C0, CFrame.new(1.5, 0.1, 0) * CFrame.Angles(0,0,0.2), 0.3)
  842. Left_Shoulder.C0 = clerp(Left_Shoulder.C0, CFrame.new(-1.5, 0.1, 0) * CFrame.Angles(0,0,-0.2), 0.3)
  843. Right_Hip.C0=clerp(Right_Hip.C0,CFrame.new(1,-1,0)*CFrame.Angles(0,1.6,0) * CFrame.Angles(-0.1,0,0),0.2)
  844. Left_Hip.C0=clerp(Left_Hip.C0,CFrame.new(-1,-1,0)*CFrame.Angles(0,-1.6,0) * CFrame.Angles(-0.1,0,0),0.2)
  845.  
  846. end
  847.  
  848.  
  849. if 2 < Torvel and Torvel < 22 and HitFloor ~= nil and Attacking == false then
  850. Anim = "Walking"
  851.  
  852. if Invert == false then
  853. Change1 = Change1 + 0.1
  854.  
  855. elseif Invert == true then
  856.  
  857. Change1 = Change1 - 0.1
  858.  
  859. end
  860.  
  861. if Change1 > 0.5 then
  862.  
  863. Invert = true
  864.  
  865. elseif Change1 < -0.5 then
  866.  
  867. Invert = false
  868.  
  869. end
  870.  
  871. if Attacking == false then
  872.  
  873. RootJoint.C0 = clerp(RootJoint.C0,RootCFrame*CFrame.new(0,0,0)* CFrame.Angles(0,0,0),0.2)
  874. Torso.Neck.C0 = clerp(Torso.Neck.C0,Necko * CFrame.Angles(0,-0.3,0),0.3)
  875. Right_Shoulder.C0 = clerp(Right_Shoulder.C0, CFrame.new(1.5, 0, -Change1) * CFrame.Angles(Change1,0,0), 0.3)
  876. Left_Shoulder.C0 = clerp(Left_Shoulder.C0, CFrame.new(-1.5, 0, Change1) * CFrame.Angles(-Change1,0,0), 0.3)
  877. Right_Hip.C0=clerp(Right_Hip.C0,CFrame.new(1,-1,-Change1 / 4)*CFrame.Angles(Change1,1.6,0),0.2)
  878. Left_Hip.C0=clerp(Left_Hip.C0,CFrame.new(-1,-1,Change1 / 4)*CFrame.Angles(-Change1,-1.6,0),0.2)
  879.  
  880. end
  881. end
  882.  
  883. if Root.Velocity.y > 1 and HitFloor == nil and Attacking == false then
  884. Anim = "Jump"
  885.  
  886. RootJoint.C0 = clerp(RootJoint.C0,RootCFrame*CFrame.new(0,0,0)* CFrame.Angles(0,0,0),0.2)
  887. Torso.Neck.C0 = clerp(Torso.Neck.C0,Necko * CFrame.Angles(-0.5,0,0),0.3)
  888. Right_Shoulder.C0 = clerp(Right_Shoulder.C0, CFrame.new(1.5, 0, 0.2) * CFrame.Angles(-0.4,0,0.2), 0.3)
  889. Left_Shoulder.C0 = clerp(Left_Shoulder.C0, CFrame.new(-1.5, 0, 0.2) * CFrame.Angles(-0.4,0,-0.2), 0.3)
  890. Right_Hip.C0=clerp(Right_Hip.C0,CFrame.new(1,-1,-0.2)*CFrame.Angles(-0.2,1.6,0),0.2)
  891. Left_Hip.C0=clerp(Left_Hip.C0,CFrame.new(-1,-1,0)*CFrame.Angles(0,-1.6,0),0.2)
  892.  
  893. end
  894.  
  895. if Root.Velocity.y < -1 and HitFloor == nil and Attacking == false then
  896. Anim = "Fall"
  897.  
  898. RootJoint.C0 = clerp(RootJoint.C0,RootCFrame*CFrame.new(0,0,0)* CFrame.Angles(0,0,0),0.2)
  899. Torso.Neck.C0 = clerp(Torso.Neck.C0,Necko * CFrame.Angles(0.5,0,0),0.3)
  900. Right_Shoulder.C0 = clerp(Right_Shoulder.C0, CFrame.new(1.5, 0, -0.2) * CFrame.Angles(0.4,0,0.2), 0.3)
  901. Left_Shoulder.C0 = clerp(Left_Shoulder.C0, CFrame.new(-1.5, 0, -0.2) * CFrame.Angles(0.4,0,-0.2), 0.3)
  902. Right_Hip.C0=clerp(Right_Hip.C0,CFrame.new(1,-1,-0.2)*CFrame.Angles(-0.2,1.6,0),0.2)
  903. Left_Hip.C0=clerp(Left_Hip.C0,CFrame.new(-1,-1,0)*CFrame.Angles(0,-1.6,0),0.2)
  904.  
  905. end
  906.  
  907.  
  908. if #Effects > 0 then
  909. for E = 1, #Effects do
  910. if Effects[E]~=nil then
  911. local Effect = Effects[E]
  912.  
  913. if Effect ~= nil then
  914.  
  915. local Part = Effect[1]
  916. local Mode = Effect[2]
  917. local Time = Effect[3]
  918. local SizeX = Effect[4]
  919. local SizeY = Effect[5]
  920. local SizeZ = Effect[6]
  921.  
  922. if Effect[1].Transparency <= 1 then
  923. if Effect[2] == "Block" then
  924. Effect[1].CFrame = Effect[1].CFrame * CFrame.Angles(math.random(-50,50),math.random(-50,50),math.random(-50,50))
  925.  
  926. Mesh = Effect[1]:FindFirstChild("Mesh")
  927. if Mesh ~= nil then
  928. Mesh.Scale = Mesh.Scale + Vector3.new(Effect[4],Effect[5],Effect[6])
  929. end
  930.  
  931. elseif Effect[2] == "Circle" then
  932.  
  933. if Effect[1]:FindFirstChild("Mesh") ~= nil then
  934. Mesh=Effect[1].Mesh
  935. Mesh.Scale = Mesh.Scale + Vector3.new(Effect[4],Effect[5],Effect[6])
  936. end
  937.  
  938. Effect[1].Transparency = Effect[1].Transparency + 0.05
  939.  
  940. else
  941.  
  942. Part.Parent=nil
  943.  
  944. table.remove(Effects, E)
  945.  
  946. end
  947. end
  948. end
  949. end
  950. end
  951. end
  952. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement