Advertisement
wanTH092

Dominator

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