Advertisement
Adog1656

Untitled

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