Advertisement
Guest User

Untitled

a guest
Sep 25th, 2016
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 59.36 KB | None | 0 0
  1.  
  2.  
  3. Player = game.Players.LocalPlayer
  4. Character = Player.Character
  5. PlayerGui = Player.PlayerGui
  6. Backpack = Player.Backpack
  7. Torso = Character.HumanoidRootPart
  8. Head = Character.Head
  9. Humanoid = Character.Humanoid
  10. LeftArm = Character["Left Arm"]
  11. LeftLeg = Character["Left Leg"]
  12. RightArm = Character["Right Arm"]
  13. RightLeg = Character["Right Leg"]
  14. Character = Player.Character
  15. PlayerGui = Player.PlayerGui
  16. Backpack = Player.Backpack
  17. TorsA = Character.Torso
  18. Head = Character.Head
  19. Humanoid = Character.Humanoid
  20. LeftArm = Character["Left Arm"]
  21. LeftLeg = Character["Left Leg"]
  22. RightArm = Character["Right Arm"]
  23. RightLeg = Character["Right Leg"]
  24. LS = TorsA["Left Shoulder"]
  25. LH = TorsA["Left Hip"]
  26. RS = TorsA["Right Shoulder"]
  27. RH = TorsA["Right Hip"]
  28. Neck = TorsA.Neck
  29. attacktype = 100
  30. vt = Vector3.new
  31. cf = CFrame.new
  32. euler = CFrame.fromEulerAnglesXYZ
  33. angles = CFrame.Angles
  34. necko = cf(1, 1, 1, -1, -1, -1, 1, 1, 1, 1, 1, 10)
  35. necko2 = cf(1, -0.5, 0, -1, -0, -1, 1, 0, 1, 1, 1, 0)
  36. LHC0 = cf(-1, -1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
  37. LHC1 = cf(-0.5, 1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
  38. RHC0 = cf(1, -1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
  39. RHC1 = cf(0.5, 1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
  40. RootPart = Character.HumanoidRootPart
  41. RootJoint = RootPart.RootJoint
  42. RootCF = euler(-1.571, 0, 3.141)
  43. attack = false
  44. equipped = true
  45. local Anim = "Idle"
  46. local Effects = {}
  47. cam = workspace.CurrentCamera
  48. ZTarget = nil
  49. RocketTarget = nil
  50. local RbxUtility = LoadLibrary("RbxUtility")
  51. local Create = RbxUtility.Create
  52. local m = Create("Model"){
  53. Parent = Character,
  54. Name = "WeaponModel",
  55. }
  56. mouse = Player:GetMouse()
  57. RSH, LSH = nil, nil
  58. LH = TorsA["Left Hip"]
  59. RH = TorsA["Right Hip"]
  60. RSH = TorsA["Right Shoulder"]
  61. LSH = TorsA["Left Shoulder"]
  62.  
  63. RSH.Parent = nil
  64. LSH.Parent = nil
  65.  
  66. RW = Create("Weld"){
  67. Name = "Right Shoulder",
  68. Part0 = Torso ,
  69. C0 = cf(1.5, 1.5, 0),
  70. C1 = cf(0, 0.5, 0),
  71. Part1 = RightArm ,
  72. Parent = Torso ,
  73. }
  74.  
  75. LW = Create("Weld"){
  76. Name = "Left Shoulder",
  77. Part0 = Torso ,
  78. C0 = cf(-1.5, 0.5, 0),
  79. C1 = cf(0, 0.5, 0) ,
  80. Part1 = LeftArm ,
  81. Parent = Torso ,
  82. }
  83.  
  84. function NoOutline(Part)
  85. Part.TopSurface, Part.BottomSurface, Part.LeftSurface, Part.RightSurface, Part.FrontSurface, Part.BackSurface = 10, 10, 10, 10, 10, 10
  86. end
  87. function swait(num)
  88. if num == 0 or num == nil then
  89. game:service'RunService'.Heartbeat:wait(0)
  90. else
  91. for i = 0, num do
  92. game:service'RunService'.Heartbeat:wait(0)
  93. end
  94. end
  95. end
  96.  
  97. function nooutline(part)
  98. part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10
  99. end
  100.  
  101. function part(formfactor, parent, material, reflectance, transparency, brickcolor, name, size)
  102. local fp = Create("Part"){
  103. formFactor = formfactor,
  104. Parent = parent,
  105. Reflectance = reflectance,
  106. Transparency = transparency,
  107. CanCollide = false,
  108. Locked = true,
  109. BrickColor = BrickColor.new(tostring(brickcolor)),
  110. Name = name,
  111. Size = size,
  112. Position = Character.Torso.Position,
  113. Material = material,
  114. }
  115. nooutline(fp)
  116. return fp
  117. end
  118.  
  119. function mesh(Mesh, part, meshtype, meshid, offset, scale)
  120. local Msh = Create(Mesh){
  121. Parent = part,
  122. Offset = offset,
  123. Scale = scale,
  124. }
  125. if Mesh == "SpecialMesh" then
  126. Msh.MeshType = meshtype
  127. Msh.MeshId = meshid
  128. end
  129. return Msh
  130. end
  131.  
  132. function weld(parent, part0, part1, c0, c1)
  133. local Weld = Create("Weld"){
  134. Parent = parent,
  135. Part0 = part0,
  136. Part1 = part1,
  137. C0 = c0,
  138. C1 = c1,
  139. }
  140. return Weld
  141. end
  142.  
  143.  
  144. local function CFrameFromTopBack(at, top, back)
  145. local right = top:Cross(back)
  146. return CFrame.new(at.x, at.y, at.z,
  147. right.x, top.x, back.x,
  148. right.y, top.y, back.y,
  149. right.z, top.z, back.z)
  150. end
  151.  
  152. function Triangle(a, b, c)
  153. local edg1 = (c - a):Dot((b - a).unit)
  154. local edg2 = (a - b):Dot((c - b).unit)
  155. local edg3 = (b - c):Dot((a - c).unit)
  156. if edg1 <= (b - a).magnitude and edg1 >= 0 then
  157. a, b, c = a, b, c
  158. elseif edg2 <= (c - b).magnitude and edg2 >= 0 then
  159. a, b, c = b, c, a
  160. elseif edg3 <= (a - c).magnitude and edg3 >= 0 then
  161. a, b, c = c, a, b
  162. else
  163. assert(false, "unreachable")
  164. end
  165.  
  166. local len1 = (c - a):Dot((b - a).unit)
  167. local len2 = (b - a).magnitude - len1
  168. local width = (a + (b - a).unit * len1 - c).magnitude
  169.  
  170. local maincf = CFrameFromTopBack(a, (b - a):Cross(c - b).unit, -(b - a).unit)
  171.  
  172. local list = {}
  173.  
  174. local Color = BrickColor.new("Yellow")
  175.  
  176. if len1 > 0.01 then
  177. local w1 = Create('WedgePart', m){
  178. Material = "Neon",
  179. FormFactor = 'Custom',
  180. BrickColor = Color,
  181. Transparency = 0,
  182. Reflectance = 0,
  183. Material = "Neon",
  184. CanCollide = false,
  185. Anchored = true,
  186. Parent = workspace,
  187. Transparency = 0.3,
  188. }
  189. game:GetService("Debris"):AddItem(w1, 5)
  190. NoOutline(w1)
  191. local sz = Vector3.new(0.2, width, len1)
  192. w1.Size = sz
  193. local sp = Create("SpecialMesh"){
  194. Parent = w1,
  195. MeshType = "Wedge",
  196. Scale = Vector3.new(0, 1, 1) * sz / w1.Size,
  197. }
  198. w1:BreakJoints()
  199. table.insert(Effects, {
  200. w1,
  201. "Disappear",
  202. .03
  203. })
  204. w1.CFrame = maincf * CFrame.Angles(math.pi, 0, math.pi / 2) * CFrame.new(0, width / 2, len1 / 2)
  205. table.insert(list, w1)
  206. end
  207. if len2 > 0.01 then
  208. local w2 = Create('WedgePart', m){
  209. Material = "Neon",
  210. FormFactor = 'Custom',
  211. BrickColor = Color,
  212. Transparency = 0,
  213. Reflectance = 0,
  214. Material = "Neon",
  215. CanCollide = false,
  216. Anchored = true,
  217. Parent = workspace,
  218. Transparency = 0.3,
  219. }
  220. game:GetService("Debris"):AddItem(w2, 5)
  221. NoOutline(w2)
  222. local sz = Vector3.new(0.2, width, len2)
  223. w2.Size = sz
  224. local sp = Create("SpecialMesh"){
  225. Parent = w2,
  226. MeshType = "Wedge",
  227. Scale = Vector3.new(0, 1, 1) * sz / w2.Size,
  228. }
  229. w2:BreakJoints()
  230. table.insert(Effects, {
  231. w2,
  232. "Disappear",
  233. .03
  234. })
  235. w2.CFrame = maincf * CFrame.Angles(math.pi, math.pi, -math.pi / 2) * CFrame.new(0, width / 2, -len1 - len2 / 2)
  236. table.insert(list, w2)
  237. end
  238. return unpack(list)
  239. end
  240.  
  241. function so(id, par, vol, pit)
  242. coroutine.resume(coroutine.create(function()
  243. local sou = Instance.new("Sound", par or workspace)
  244. sou.Volume = vol
  245. sou.Pitch = pit or 1
  246. sou.SoundId = Sounds[id].Id or id
  247. swait()
  248. sou:play()
  249. swait(6)
  250. sou:Remove()
  251. end))
  252. end
  253.  
  254. function clerp(a, b, t)
  255. local qa = {
  256. QuaternionFromCFrame(a)
  257. }
  258. local qb = {
  259. QuaternionFromCFrame(b)
  260. }
  261. local ax, ay, az = a.x, a.y, a.z
  262. local bx, by, bz = b.x, b.y, b.z
  263. local _t = 1 - t
  264. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  265. end
  266.  
  267. function QuaternionFromCFrame(cf)
  268. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  269. local trace = m00 + m11 + m22
  270. if trace > 0 then
  271. local s = math.sqrt(1 + trace)
  272. local recip = 0.5 / s
  273. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  274. else
  275. local i = 0
  276. if m11 > m00 then
  277. i = 1
  278. end
  279. if m22 > (i == 0 and m00 or m11) then
  280. i = 2
  281. end
  282. if i == 0 then
  283. local s = math.sqrt(m00 - m11 - m22 + 1)
  284. local recip = 0.5 / s
  285. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  286. elseif i == 1 then
  287. local s = math.sqrt(m11 - m22 - m00 + 1)
  288. local recip = 0.5 / s
  289. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  290. elseif i == 2 then
  291. local s = math.sqrt(m22 - m00 - m11 + 1)
  292. local recip = 0.5 / s
  293. return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  294. end
  295. end
  296. end
  297.  
  298. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  299. local xs, ys, zs = x + x, y + y, z + z
  300. local wx, wy, wz = w * xs, w * ys, w * zs
  301. local xx = x * xs
  302. local xy = x * ys
  303. local xz = x * zs
  304. local yy = y * ys
  305. local yz = y * zs
  306. local zz = z * zs
  307. 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))
  308. end
  309.  
  310. function QuaternionSlerp(a, b, t)
  311. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  312. local startInterp, finishInterp;
  313. if cosTheta >= 0.0001 then
  314. if (1 - cosTheta) > 0.0001 then
  315. local theta = math.acos(cosTheta)
  316. local invSinTheta = 1 / math.sin(theta)
  317. startInterp = math.sin((1 - t) * theta) * invSinTheta
  318. finishInterp = math.sin(t * theta) * invSinTheta
  319. else
  320. startInterp = 1 - t
  321. finishInterp = t
  322. end
  323. else
  324. if (1 + cosTheta) > 0.0001 then
  325. local theta = math.acos(-cosTheta)
  326. local invSinTheta = 1 / math.sin(theta)
  327. startInterp = math.sin((t - 1) * theta) * invSinTheta
  328. finishInterp = math.sin(t * theta) * invSinTheta
  329. else
  330. startInterp = t - 1
  331. finishInterp = t
  332. end
  333. end
  334. 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
  335. end
  336.  
  337. function rayCast(Pos, Dir, Max, Ignore)
  338. return game:service("Workspace"):FindPartOnRay(Ray.new(Pos, Dir.unit * (Max or 999.999)), Ignore)
  339. end
  340.  
  341. Asset = "http://www.roblox.com/asset/?id="
  342.  
  343. Sounds = {
  344. Hit1 = {
  345. Id = Asset..(199149137)
  346. },
  347. Hit2 = {
  348. Id = Asset..(199149186)
  349. },
  350. Hit3 = {
  351. Id = Asset..(199149221)
  352. },
  353. Hit4 = {
  354. Id = Asset..(199149235)
  355. },
  356. Slash1 = {
  357. Id = Asset..(161006195)
  358. },
  359. Slash2 = {
  360. Id = Asset..(161006212)
  361. },
  362. Fire = {
  363. Id = Asset..(168413145)
  364. },
  365. Beam = {
  366. Id = Asset..(278596476)
  367. },
  368. Appear = {
  369. Id = Asset..(200633077)
  370. },
  371. Disappear = {
  372. Id = Asset..(200633029)
  373. },
  374. }
  375.  
  376. ContentProvider = game:GetService("ContentProvider")
  377. for _, v in pairs(Sounds) do
  378. ContentProvider:Preload(v.Id)
  379. end
  380.  
  381.  
  382.  
  383. Damagefunc = function(Part, hit, minim, maxim, knockback, Type, Property, Delay, HitSound, HitPitch)
  384. if hit.Parent == nil then
  385. return
  386. end
  387. local h = hit.Parent:FindFirstChild("Humanoid")
  388. for _, v in pairs(hit.Parent:children()) do
  389. if v:IsA("Humanoid") then
  390. h = v
  391. end
  392. end
  393. if h ~= nil and hit.Parent.Name ~= Character.Name and hit.Parent:FindFirstChild("Torso") ~= nil then
  394. if hit.Parent:findFirstChild("DebounceHit") ~= nil then
  395. if hit.Parent.DebounceHit.Value == true then
  396. return
  397. end
  398. end
  399. if h.MaxHealth >= math.huge then
  400. hit:BreakJoints()
  401. end
  402. --[[ if game.Players:GetPlayerFromCharacter(hit.Parent)~=nil then
  403. return
  404. end]]
  405. -- hs(hit,1.2)
  406. local c = Create("ObjectValue"){
  407. Name = "creator",
  408. Value = game:service("Players").LocalPlayer,
  409. Parent = h,
  410. }
  411. game:GetService("Debris"):AddItem(c, .5)
  412. if HitSound ~= nil and HitPitch ~= nil then
  413. so(HitSound, hit, 1, HitPitch)
  414. end
  415. local Damage = math.random(minim, maxim)
  416. -- h:TakeDamage(Damage)
  417. local blocked = false
  418. local block = hit.Parent:findFirstChild("Block")
  419. if block ~= nil then
  420. if block.className == "IntValue" then
  421. if block.Value > 0 then
  422. blocked = true
  423. block.Value = block.Value - 1
  424. print(block.Value)
  425. end
  426. end
  427. end
  428. if blocked == false then
  429. -- h:TakeDamage(Damage)
  430. h.Health = h.Health - Damage
  431. ShowDamage((Part.CFrame * CFrame.new(230, 230, (Part.Size.Z / 2)).p + Vector3.new(0, 1.5, 0)), -Damage, 1.5, Part.BrickColor.Color)
  432. else
  433. h.Health = h.Health - (Damage / 272123231112)
  434. ShowDamage((Part.CFrame * CFrame.new(0, 0, (Part.Size.Z / 2)).p + Vector3.new(0, 1.5, 0)), -Damage, 1.5, Part.BrickColor.Color)
  435. end
  436. if Type == "Knockdown" then
  437. local hum = hit.Parent.Humanoid
  438. hum.PlatformStand = true
  439. coroutine.resume(coroutine.create(function(HHumanoid)
  440. swait(1)
  441. HHumanoid.PlatformStand = false
  442. end), hum)
  443. local angle = (hit.Position - (Property.Position + Vector3.new(0, 0, 0))).unit
  444. local bodvol = Create("BodyVelocity"){
  445. velocity = angle * knockback,
  446. P = 5000,
  447. maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
  448. Parent = hit,
  449. }
  450. local rl = Create("BodyAngularVelocity"){
  451. P = 3000,
  452. maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000,
  453. angularvelocity = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10)),
  454. Parent = hit,
  455. }
  456. game:GetService("Debris"):AddItem(bodvol, .5)
  457. game:GetService("Debris"):AddItem(rl, .5)
  458. elseif Type == "Normal" then
  459. local vp = Create("BodyVelocity"){
  460. P = 500,
  461. maxForce = Vector3.new(math.huge, 0, math.huge),
  462. velocity = Property.CFrame.lookVector * knockback + Property.Velocity / 1.05,
  463. }
  464. if knockback > 0 then
  465. vp.Parent = hit.Parent.Torso
  466. end
  467. game:GetService("Debris"):AddItem(vp, .5)
  468. elseif Type == "Up" then
  469. local bodyVelocity = Create("BodyVelocity"){
  470. velocity = vt(0, 20, 0),
  471. P = 5000,
  472. maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
  473. Parent = hit,
  474. }
  475. game:GetService("Debris"):AddItem(bodyVelocity, .5)
  476. elseif Type == "Snare" then
  477. local bp = Create("BodyPosition"){
  478. P = 2000,
  479. D = 100,
  480. maxForce = Vector3.new(math.huge, math.huge, math.huge),
  481. position = hit.Parent.Torso.Position,
  482. Parent = hit.Parent.Torso,
  483. }
  484. game:GetService("Debris"):AddItem(bp, 1)
  485. elseif Type == "Freeze" then
  486. local BodPos = Create("BodyPosition"){
  487. P = 50000,
  488. D = 1000,
  489. maxForce = Vector3.new(math.huge, math.huge, math.huge),
  490. position = hit.Parent.Torso.Position,
  491. Parent = hit.Parent.Torso,
  492. }
  493. local BodGy = Create("BodyGyro") {
  494. maxTorque = Vector3.new(4e+005, 4e+005, 4e+005) * math.huge ,
  495. P = 20e+003,
  496. Parent = hit.Parent.Torso,
  497. cframe = hit.Parent.Torso.CFrame,
  498. }
  499. hit.Parent.Torso.Anchored = true
  500. coroutine.resume(coroutine.create(function(Part)
  501. swait(1.5)
  502. Part.Anchored = false
  503. end), hit.Parent.Torso)
  504. game:GetService("Debris"):AddItem(BodPos, 3)
  505. game:GetService("Debris"):AddItem(BodGy, 3)
  506. end
  507. local debounce = Create("BoolValue"){
  508. Name = "DebounceHit",
  509. Parent = hit.Parent,
  510. Value = true,
  511. }
  512. game:GetService("Debris"):AddItem(debounce, Delay)
  513. c = Instance.new("ObjectValue")
  514. c.Name = "creator"
  515. c.Value = Player
  516. c.Parent = h
  517. game:GetService("Debris"):AddItem(c, .5)
  518. end
  519. end
  520.  
  521. function ShowDamage(Pos, Text, Time, Color)
  522. local Rate = (1 / 30)
  523. local Pos = (Pos or Vector3.new(0, 0, 0))
  524. local Text = (Text or "")
  525. local Time = (Time or 2)
  526. local Color = (Color or Color3.new(1, 4, 22))
  527. local EffectPart = part("Custom", workspace, "Neon", 0, 1, BrickColor.new(Color), "Effect", vt(0, 0, 0))
  528. EffectPart.Anchored = true
  529. local BillboardGui = Create("BillboardGui"){
  530. Size = UDim2.new(3, 0, 3, 0),
  531. Adornee = EffectPart,
  532. Parent = EffectPart,
  533. }
  534. local TextLabel = Create("TextLabel"){
  535. BackgroundTransparency = 1,
  536. Size = UDim2.new(1, 0, 1, 0),
  537. Text = Text,
  538. TextColor6 = Color,
  539. TextScaled = true,
  540. Font = Enum.Font.ArialBold,
  541. Parent = BillboardGui,
  542. }
  543. game.Debris:AddItem(EffectPart, (Time + 0.1))
  544. EffectPart.Parent = game:GetService("Workspace")
  545. delay(0, function()
  546. local Frames = (Time / Rate)
  547. for Frame = 1, Frames do
  548. wait(Rate)
  549. local Percent = (Frame / Frames)
  550. EffectPart.CFrame = CFrame.new(Pos) + Vector3.new(0, Percent, 0)
  551. TextLabel.TextTransparency = Percent
  552. end
  553. if EffectPart and EffectPart.Parent then
  554. EffectPart:Destroy()
  555. end
  556. end)
  557. end
  558.  
  559. Handle = part(Enum.FormFactor.Custom, m, Enum.Material.Neon, 0, 0, "Cyan", "Handle", Vector3.new(1.20000005, 0.200000003, 1.20000005))
  560. Handleweld = weld(m, Character["Torso"], Handle, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.0396080017, -4.09992504, 0.0598115921, 1, -7.6153174e-011, -2.01268858e-006, 8.22890089e-011, 1, 3.084431e-006, 2.01269063e-006, -3.084431e-006, 1))
  561. mesh("CylinderMesh", Handle, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 0.660000086, 1))
  562. Part = part(Enum.FormFactor.Custom, m, Enum.Material.Neon, 0, 0, "Really black", "Part", Vector3.new(1.44000006, 0.200000003, 1.44000006))
  563. Partweld = weld(m, Handle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(5.14984131e-005, 1.62124634e-005, -1.04904175e-005, 1, 1.23146328e-011, 1.07286201e-006, -1.13079598e-011, 1, -1.07284109e-006, -1.07285791e-006, 1.07284109e-006, 1))
  564. mesh("CylinderMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 0.600000024, 1))
  565. Layer2Handle = part(Enum.FormFactor.Custom, m, Enum.Material.Neon, 0, 0, "Really black", "Layer2Handle", Vector3.new(0.480000019, 0.200000003, 0.480001062))
  566. Layer2Handleweld = weld(m, Handle, Layer2Handle, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.000301361084, 2.28881836e-005, -0.000202178955, 1, 2.70082467e-007, -1.75730406e-006, -2.70091959e-007, 1, -8.66388018e-006, 1.7573052e-006, 8.66388655e-006, 1))
  567. Part = part(Enum.FormFactor.Custom, m, Enum.Material.Neon, 0, 0, "Cyan", "Part", Vector3.new(0.480000019, 0.200000003, 0.720000625))
  568. Partweld = weld(m, Layer2Handle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(5.14984131e-005, -9.53674316e-007, -2.8800478, 0.999997914, -1.93837602e-011, -1.48245363e-008, 3.90257063e-011, 1, -7.13953341e-011, 1.48336312e-008, 8.91304808e-011, 0.999997914))
  569. mesh("BlockMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 0.600000024, 1))
  570. Part = part(Enum.FormFactor.Custom, m, Enum.Material.Neon, 0, 0, "Cyan", "Part", Vector3.new(0.480000019, 0.200000003, 0.720000625))
  571. Partweld = weld(m, Layer2Handle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(4.19616699e-005, -3.24249268e-005, 2.87992668, 0.999985158, 2.87014509e-012, -1.48093022e-008, 5.66184322e-011, 1, -5.45696821e-012, 1.48470463e-008, 8.04902811e-011, 0.999985158))
  572. mesh("BlockMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 0.600000024, 1))
  573. Part = part(Enum.FormFactor.Custom, m, Enum.Material.Neon, 0, 0, "Really black", "Part", Vector3.new(0.480000019, 0.200000003, 5.04000092))
  574. Partweld = weld(m, Layer2Handle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(1.33514404e-005, -9.53674316e-007, -0.0001039505, 0.999987781, -7.77617137e-011, -1.49125299e-008, 1.16872789e-010, 1, -1.96905603e-010, 1.493936e-008, 2.51930032e-010, 0.999987781))
  575. mesh("BlockMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 0.600000024, 1))
  576. mesh("BlockMesh", Layer2Handle, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 0.600000024, 1))
  577. Layer3Handle = part(Enum.FormFactor.Custom, m, Enum.Material.Neon, 0, 1, "Cyan", "Layer3Handle", Vector3.new(0.720000029, 0.720000029, 0.200000003))
  578. Layer3Handleweld = weld(m, Handle, Layer3Handle, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.000802993774, -0.000151634216, 3.05175781e-005, 0.999999404, 4.16033836e-005, 1.96785777e-006, 1.96798396e-006, -2.12107511e-006, -0.999999404, -4.16014955e-005, 1, -2.12118243e-006))
  579. Part = part(Enum.FormFactor.Custom, m, Enum.Material.Neon, 0, 0, "Really black", "Part", Vector3.new(0.200000003, 0.480000019, 0.840000391))
  580. Partweld = weld(m, Layer3Handle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(9.53674316e-007, -0.840223312, 3.5397892, 4.89614176e-005, 5.0135186e-006, 0.999999762, -0.999999046, 1.22189522e-005, 4.8959475e-005, -1.22783813e-005, -0.999998689, 5.01443719e-006))
  581. mesh("SpecialMesh", Part, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(0.600000024, 1, 1))
  582. Part = part(Enum.FormFactor.Custom, m, Enum.Material.Neon, 0, 0, "Really black", "Part", Vector3.new(1.20000005, 0.200000003, 0.720000327))
  583. Partweld = weld(m, Layer3Handle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.000864028931, -6.00814819e-005, -3.59964466, -0.999999404, 9.70068322e-006, 3.31623378e-005, 3.31642768e-005, 4.86649742e-006, 1, 9.70056226e-006, 0.999999404, -4.86679755e-006))
  584. mesh("BlockMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 0.600000024, 1))
  585. Part = part(Enum.FormFactor.Custom, m, Enum.Material.Neon, 0, 0, "Really black", "Part", Vector3.new(0.200000003, 0.480000019, 0.840000391))
  586. Partweld = weld(m, Layer3Handle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(2.76565552e-005, -0.840137482, 3.54048443, -3.42451713e-005, -5.10578684e-006, -0.99999994, -0.999998927, -1.21146441e-005, 3.4243305e-005, -1.2144611e-005, 0.999998927, -5.10543578e-006))
  587. mesh("SpecialMesh", Part, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(0.600000024, 1, 1))
  588. Part = part(Enum.FormFactor.Custom, m, Enum.Material.Neon, 0, 0, "Really black", "Part", Vector3.new(1.20000005, 0.200000003, 0.720000327))
  589. Partweld = weld(m, Layer3Handle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.000713348389, -2.76565552e-005, -3.6005826, -0.999993503, -9.68569748e-006, 5.00400529e-005, -5.00420938e-005, -4.89724516e-006, -0.999999881, 9.62627109e-006, -0.999993503, 4.89690592e-006))
  590. mesh("BlockMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 0.600000024, 1))
  591. Part = part(Enum.FormFactor.Custom, m, Enum.Material.Neon, 0, 0, "Really black", "Part", Vector3.new(0.200000003, 0.480000019, 0.840000391))
  592. Partweld = weld(m, Layer3Handle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-7.62939453e-006, -0.838525772, 3.54048347, 3.57801182e-005, 5.10578639e-006, 0.99999994, 0.999999046, 1.0341405e-005, -3.57782446e-005, -1.03266702e-005, 0.999998927, -5.10551126e-006))
  593. mesh("SpecialMesh", Part, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(0.600000024, 1, 1))
  594. Part = part(Enum.FormFactor.Custom, m, Enum.Material.Neon, 0, 0, "Really black", "Part", Vector3.new(0.200000003, 0.480000019, 0.840000391))
  595. Partweld = weld(m, Layer3Handle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-5.7220459e-006, -0.84022522, 3.53960228, -3.45465851e-005, -1.12046393e-006, -1, 5.82638359e-006, -0.999999225, 1.12023974e-006, -0.999999225, -5.82638404e-006, 3.45446933e-005))
  596. mesh("SpecialMesh", Part, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(0.600000024, 1, 1))
  597. Part = part(Enum.FormFactor.Custom, m, Enum.Material.Neon, 0, 0, "Really black", "Part", Vector3.new(0.200000003, 0.480000019, 0.840000391))
  598. Partweld = weld(m, Layer3Handle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-2.86102295e-006, -0.839550018, 3.53951263, 3.41143859e-005, 1.04596313e-006, 1, -6.24368704e-006, 0.999999225, -1.04572723e-006, -0.999999225, -6.24369022e-006, 3.41124942e-005))
  599. mesh("SpecialMesh", Part, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(0.600000024, 1, 1))
  600. Part = part(Enum.FormFactor.Custom, m, Enum.Material.Neon, 0, 0, "Really black", "Part", Vector3.new(1.20000005, 0.200000003, 0.720000327))
  601. Partweld = weld(m, Layer3Handle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.000238418579, -9.53674316e-006, -3.59959984, 6.28840098e-006, -0.999999225, 1.09042128e-006, -3.40994848e-005, -1.09065854e-006, -1, 0.999999225, 6.2884028e-006, -3.4097593e-005))
  602. mesh("BlockMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 0.600000024, 1))
  603. Part = part(Enum.FormFactor.Custom, m, Enum.Material.Neon, 0, 0.19999998807907, "Cyan", "Part", Vector3.new(0.480000019, 0.480000019, 0.200000003))
  604. Partweld = weld(m, Layer3Handle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0, 0, 3.81469727e-006, 0.999998808, 4.0078163e-011, 1.9098958e-009, 4.0078163e-011, 0.999998808, 2.42152964e-011, 1.9098958e-009, 2.42152964e-011, 1))
  605. mesh("SpecialMesh", Part, Enum.MeshType.FileMesh, "http://www.roblox.com/asset/?id=18430887", Vector3.new(0, 0, 0), Vector3.new(3.58200026, 3.58200002, 2.9532001))
  606. Part = part(Enum.FormFactor.Custom, m, Enum.Material.Neon, 0, 0, "Really black", "Part", Vector3.new(0.200000003, 0.480000019, 0.840000391))
  607. Partweld = weld(m, Layer3Handle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(4.00543213e-005, -0.838380814, 3.53930187, -4.74264707e-005, -5.02687499e-006, -0.999999762, 0.999999046, -1.03116026e-005, -4.74245317e-005, -1.0311428e-005, -0.999998808, 5.02768307e-006))
  608. mesh("SpecialMesh", Part, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(0.600000024, 1, 1))
  609. Part = part(Enum.FormFactor.Custom, m, Enum.Material.Neon, 0, 0, "Really black", "Part", Vector3.new(0.480000019, 0.480000019, 0.200000003))
  610. Partweld = weld(m, Layer3Handle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0, 0, 0, 0.999998808, 4.0078163e-011, 1.9098958e-009, 4.0078163e-011, 0.999998808, 2.42152964e-011, 1.9098958e-009, 2.42152964e-011, 1))
  611. mesh("SpecialMesh", Part, Enum.MeshType.FileMesh, "http://www.roblox.com/asset/?id=18430887", Vector3.new(0, 0, 0), Vector3.new(3.60000014, 3.60000014, 3.60000014))
  612. Part = part(Enum.FormFactor.Custom, m, Enum.Material.Neon, 0, 0, "Really black", "Part", Vector3.new(0.200000003, 0.480000019, 0.840000391))
  613. Partweld = weld(m, Layer3Handle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(7.62939453e-006, -0.839694977, 3.53992653, -3.91442991e-005, -8.80631774e-007, -0.999993026, 2.27987925e-006, 0.999991357, -8.80696462e-007, 0.999997556, -2.29477519e-006, -3.92767397e-005))
  614. mesh("SpecialMesh", Part, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(0.600000024, 1, 1))
  615. Part = part(Enum.FormFactor.Custom, m, Enum.Material.Neon, 0, 0, "Really black", "Part", Vector3.new(1.20000005, 0.200000003, 0.720000327))
  616. Partweld = weld(m, Layer3Handle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.000235557556, -2.38418579e-005, -3.60028458, 1.50501114e-006, -0.999997199, 8.35720812e-007, 3.47488422e-005, 8.35786693e-007, 1, -0.999997199, -1.50502308e-006, 3.47468304e-005))
  617. mesh("BlockMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 0.600000024, 1))
  618. Part = part(Enum.FormFactor.Custom, m, Enum.Material.Neon, 0, 0, "Really black", "Part", Vector3.new(0.200000003, 0.480000019, 0.840000391))
  619. Partweld = weld(m, Layer3Handle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-2.28881836e-005, -0.840080261, 3.54010582, 3.91591857e-005, 8.0613512e-007, 0.999993026, -2.25008012e-006, -0.999991, 8.06197477e-007, 0.999997556, -2.29477519e-006, -3.92916445e-005))
  620. mesh("SpecialMesh", Part, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(0.600000024, 1, 1))
  621. HitboxA = part(Enum.FormFactor.Custom, m, Enum.Material.Neon, 0, 1, "Really black", "HitboxA", Vector3.new(0.200000003, 2.48000002, 0.840000391))
  622. HitboxAweld = weld(m, Layer3Handle, HitboxA, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-6.67572021e-006, -0.039557457, 3.53951645, 3.44422551e-005, 1.04596529e-006, 1, -5.90090622e-006, 0.999999225, -1.04573905e-006, -0.999999225, -5.90090895e-006, 3.44403634e-005))
  623. HitboxB = part(Enum.FormFactor.Custom, m, Enum.Material.Neon, 0, 1, "Really black", "HitboxB", Vector3.new(0.200000003, 2.48000026, 0.840000391))
  624. HitboxBweld = weld(m, Layer3Handle, HitboxB, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(9.53674316e-007, -0.0402240753, 3.5397892, 4.89614176e-005, 5.0135186e-006, 0.999999762, -0.999999046, 1.22189522e-005, 4.8959475e-005, -1.22783813e-005, -0.999998689, 5.01443719e-006))
  625. HitboxC = part(Enum.FormFactor.Custom, m, Enum.Material.Neon, 0, 1, "Really black", "HitboxC", Vector3.new(0.200000003, 2.28000021, 0.840000391))
  626. HitboxCweld = weld(m, Layer3Handle, HitboxC, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(2.76565552e-005, 0.0598621368, 3.54048443, -3.42451713e-005, -5.10578684e-006, -0.99999994, -0.999998927, -1.21146441e-005, 3.4243305e-005, -1.2144611e-005, 0.999998927, -5.10543578e-006))
  627. mesh("SpecialMesh", HitboxC, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(0.600000024, 1, 1))
  628. HitboxD = part(Enum.FormFactor.Custom, m, Enum.Material.Neon, 0, 1, "Really black", "HitboxD", Vector3.new(0.200000003, 2.28000021, 0.840000391))
  629. HitboxDweld = weld(m, Layer3Handle, HitboxD, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-2.28881836e-005, 0.0599050522, 3.54010582, 3.91591857e-005, 8.0613512e-007, 0.999993026, -2.25008012e-006, -0.999991, 8.06197477e-007, 0.999997556, -2.29477519e-006, -3.92916445e-005))
  630. mesh("SpecialMesh", HitboxD, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(0.600000024, 1, 1))
  631. mesh("SpecialMesh", Layer3Handle, Enum.MeshType.FileMesh, "http://www.roblox.com/asset/?id=18430887", Vector3.new(0, 0, 0), Vector3.new(6, 6, -1.21799994))
  632.  
  633. local Lite = Create("PointLight"){
  634. Parent = Handle,
  635. Color = BrickColor.new("Yellow").Color,
  636. Shadows = true,
  637. Range = 20,
  638. Brightness = 0.5,
  639. }
  640.  
  641. local Spin = Create("Sound"){
  642. Parent = Handle,
  643. SoundId = "rbxassetid://143301643",
  644. Volume = 1,
  645. Pitch = 1,
  646. Looped = true,
  647. }
  648.  
  649. local Spin2 = Create("Sound"){
  650. Parent = Handle,
  651. SoundId = "rbxassetid://149560784",
  652. Volume = .7,
  653. Pitch = .8,
  654. Looped = true,
  655. }
  656.  
  657. Spin:Play()
  658.  
  659. Spin2:Play()
  660.  
  661. local PE1 = Create("ParticleEmitter"){
  662. Parent = Layer3Handle,
  663. Color = ColorSequence.new(BrickColor.new("Yellow").Color),
  664. Transparency = NumberSequence.new(.5),
  665. Size = NumberSequence.new(0.2),
  666. Texture = "rbxassetid://263433152",
  667. Lifetime = NumberRange.new(1),
  668. Rate = 20,
  669. VelocitySpread = 180,
  670. Rotation = NumberRange.new(100),
  671. Speed = NumberRange.new(3),
  672. LightEmission = 1,
  673. }
  674.  
  675. function Reappear()
  676. for _, i in pairs(m:children()) do
  677. if i.Name == "Layer3Handle" then
  678. Part.Transparency = 1
  679. coroutine.resume(coroutine.create(function(Part)
  680. for i = 0, 1, 0.1 do
  681. swait()
  682. Part.Transparency = i
  683. end
  684. Part.Transparency = 0.5
  685. end), i)
  686. end
  687. end
  688. end
  689.  
  690. function Disappear()
  691. for _, i in pairs(m:children()) do
  692. if i.Name == "Layer3Handle" then
  693. Part.Transparency = .5
  694. coroutine.resume(coroutine.create(function(Part)
  695. for i = 0, 1, 0.1 do
  696. swait()
  697. Part.Transparency = i
  698. end
  699. Part.Transparency = 1
  700. end), i)
  701. end
  702. end
  703. end
  704.  
  705. function attackone()
  706. attack = true
  707. local con1 = HitboxA.Touched:connect(function(hit)
  708. Damagefunc(HitboxA, hit, 1023, 301211, math.random(11212, 51212), "Normal", RootPart, .1, "Hit1211211", 11211)
  709. end)
  710. local con2 = HitboxB.Touched:connect(function(hit)
  711. Damagefunc(HitboxA, hit, 10, 30, math.random(1121212, 5121212), "Normal", RootPart, .1, "Hit2", 1)
  712. end)
  713. local con3 = HitboxC.Touched:connect(function(hit)
  714. Damagefunc(HitboxA, hit, 101212, 3121210, math.random(121211, 512121), "Normal", RootPart, .1, "Hit3", 1)
  715. end)
  716. local con4 = HitboxD.Touched:connect(function(hit)
  717. Damagefunc(HitboxA, hit, 112120, 3121220, math.random(12121, 51212), "Normal", RootPart, .21212121, "Hit4", 1)
  718. end)
  719. Reappear()
  720. for i = 0, 1, 0.1 do
  721. swait()
  722. RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(-50)), .3)
  723. TorsA.Neck.C0 = clerp(TorsA.Neck.C0, necko * angles(math.rad(5), math.rad(0), math.rad(50)), .3)
  724. RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(90), math.rad(0), math.rad(30)), 0.3)
  725. LW.C0 = clerp(LW.C0, CFrame.new(-1, 0.3, .3) * angles(math.rad(-30), math.rad(0), math.rad(30)), 0.3)
  726. RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(0), math.rad(120), math.rad(0)) * angles(math.rad(-3), math.rad(0), math.rad(0)), .3)
  727. LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(0), math.rad(-70), math.rad(0)) * angles(math.rad(-3), math.rad(0), math.rad(0)), .3)
  728. Handleweld.C0 = clerp(Handleweld.C0, CFrame.new(5, -4, -7) * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3)
  729. Layer2Handleweld.C0 = clerp(Layer2Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), -5 * i, math.rad(0)), 0.3)
  730. Layer3Handleweld.C0 = clerp(Layer3Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), 5 * i, math.rad(0)), 0.3)
  731. end
  732. so("Slash1", Handle, 1, 1)
  733. for i = 0, 1, 0.1 do
  734. swait()
  735. RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(50)), .5)
  736. TorsA.Neck.C0 = clerp(TorsA.Neck.C0, necko * angles(math.rad(5), math.rad(0), math.rad(-50)), .5)
  737. RW.C0 = clerp(RW.C0, CFrame.new(1.2, 0.5, -.5) * angles(math.rad(90), math.rad(0), math.rad(-30)), 0.5)
  738. LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-30), math.rad(0), math.rad(-30)), 0.5)
  739. RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(0), math.rad(70), math.rad(0)) * angles(math.rad(-3), math.rad(0), math.rad(0)), .5)
  740. LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(0), math.rad(-120), math.rad(0)) * angles(math.rad(-3), math.rad(0), math.rad(0)), .5)
  741. Handleweld.C0 = clerp(Handleweld.C0, CFrame.new(-2, -4, -8) * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3)
  742. Layer2Handleweld.C0 = clerp(Layer2Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), -5 * i, math.rad(0)), 0.3)
  743. Layer3Handleweld.C0 = clerp(Layer3Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), 5 * i, math.rad(0)), 0.3)
  744. end
  745. Disappear()
  746. con1:disconnect()
  747. con2:disconnect()
  748. con3:disconnect()
  749. con4:disconnect()
  750. attack = false
  751. end
  752.  
  753. function attacktwo()
  754. attack = true
  755. local con1 = HitboxA.Touched:connect(function(hit)
  756. Damagefunc(HitboxA, hit, 1212120, 312112120, math.random(11212, 51212), "Normal", RootPart, .11212, "Hit1", 1)
  757. end)
  758. local con2 = HitboxB.Touched:connect(function(hit)
  759. Damagefunc(HitboxA, hit, 10, 30, math.random(1, 5), "Normal", RootPart, .1, "Hit2", 1)
  760. end)
  761. local con3 = HitboxC.Touched:connect(function(hit)
  762. Damagefunc(HitboxA, hit, 10, 30, math.random(1, 5), "Normal", RootPart, .1, "Hit3", 1)
  763. end)
  764. local con4 = HitboxD.Touched:connect(function(hit)
  765. Damagefunc(HitboxA, hit, 10, 30, math.random(1, 5), "Normal", RootPart, .1, "Hit4", 1)
  766. end)
  767. Reappear()
  768. for i = 0, 1, 0.1 do
  769. swait()
  770. RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(0)), .3)
  771. TorsA.Neck.C0 = clerp(TorsA.Neck.C0, necko * angles(math.rad(-10), math.rad(0), math.rad(0)), .3)
  772. RW.C0 = clerp(RW.C0, CFrame.new(1.4, 0.5, -.5) * angles(math.rad(150), math.rad(0), math.rad(0)), 0.3)
  773. LW.C0 = clerp(LW.C0, CFrame.new(-1.3, 0.3, 0) * angles(math.rad(-30), math.rad(0), math.rad(-30)), 0.3)
  774. RH.C0 = clerp(RH.C0, cf(1, -1, -.3) * angles(math.rad(0), math.rad(90), math.rad(0)) * angles(math.rad(-3), math.rad(0), math.rad(0)), .3)
  775. LH.C0 = clerp(LH.C0, cf(-1, -1, .2) * angles(math.rad(0), math.rad(-85), math.rad(0)) * angles(math.rad(-3), math.rad(0), math.rad(0)), .3)
  776. Handleweld.C0 = clerp(Handleweld.C0, CFrame.new(-4, 10, 0) * angles(math.rad(0), math.rad(0), math.rad(-90)), 0.3)
  777. Layer2Handleweld.C0 = clerp(Layer2Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), -5 * i, math.rad(0)), 0.3)
  778. Layer3Handleweld.C0 = clerp(Layer3Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), 5 * i, math.rad(0)), 0.3)
  779. end
  780. so("Slash2", Handle, 1, 1.2)
  781. for i = 0, 1, 0.1 do
  782. swait()
  783. RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(0)), .5)
  784. TorsA.Neck.C0 = clerp(TorsA.Neck.C0, necko * angles(math.rad(10), math.rad(0), math.rad(0)), .5)
  785. RW.C0 = clerp(RW.C0, CFrame.new(1.2, 0.3, -.5) * angles(math.rad(50), math.rad(0), math.rad(-30)), 0.5)
  786. LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-30), math.rad(0), math.rad(-50)), 0.5)
  787. RH.C0 = clerp(RH.C0, cf(1, -1, -.3) * angles(math.rad(0), math.rad(90), math.rad(0)) * angles(math.rad(-3), math.rad(0), math.rad(0)), .5)
  788. LH.C0 = clerp(LH.C0, cf(-1, -1, .2) * angles(math.rad(0), math.rad(-85), math.rad(0)) * angles(math.rad(-3), math.rad(0), math.rad(0)), .5)
  789. Handleweld.C0 = clerp(Handleweld.C0, CFrame.new(-4, .5, -8) * angles(math.rad(0), math.rad(0), math.rad(-90)), 0.4)
  790. Layer2Handleweld.C0 = clerp(Layer2Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), -5 * i, math.rad(0)), 0.3)
  791. Layer3Handleweld.C0 = clerp(Layer3Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), 5 * i, math.rad(0)), 0.3)
  792. end
  793. Disappear()
  794. con1:disconnect()
  795. con2:disconnect()
  796. con3:disconnect()
  797. con4:disconnect()
  798. attack = false
  799. end
  800.  
  801. function attackthree()
  802. attack = true
  803. local con1 = HitboxA.Touched:connect(function(hit)
  804. Damagefunc(HitboxA, hit, 1012121, 30121212, math.random(1, 5), "Normal", RootPart, .12121, "Hit1", 1)
  805. end)
  806. local con2 = HitboxB.Touched:connect(function(hit)
  807. Damagefunc(HitboxA, hit, 12121210, 3121212120, math.random(12121, 21125), "Normal", RootPart, .1, "Hit2", 1)
  808. end)
  809. local con3 = HitboxC.Touched:connect(function(hit)
  810. Damagefunc(HitboxA, hit, 1112120, 3021212, math.random(112121, 1212125), "Normal", RootPart, .1, "Hit3", 1)
  811. end)
  812. local con4 = HitboxD.Touched:connect(function(hit)
  813. Damagefunc(HitboxA, hit, 10, 30, math.random(1, 5), "Normal", RootPart, .1, "Hit4", 1)
  814. end)
  815. Reappear()
  816. for i = 0, 1, 0.1 do
  817. swait()
  818. RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(50)), .3)
  819. TorsA.Neck.C0 = clerp(TorsA.Neck.C0, necko * angles(math.rad(0), math.rad(0), math.rad(-50)), .3)
  820. RW.C0 = clerp(RW.C0, CFrame.new(1.4, 0.8, -.5) * angles(math.rad(120), math.rad(0), math.rad(-30)), 0.3)
  821. LW.C0 = clerp(LW.C0, CFrame.new(-1.3, 0.3, 0) * angles(math.rad(-30), math.rad(0), math.rad(-30)), 0.3)
  822. RH.C0 = clerp(RH.C0, cf(1, -1, -.3) * angles(math.rad(0), math.rad(70), math.rad(0)) * angles(math.rad(-3), math.rad(0), math.rad(0)), .3)
  823. LH.C0 = clerp(LH.C0, cf(-1, -1, .2) * angles(math.rad(0), math.rad(-140), math.rad(0)) * angles(math.rad(-3), math.rad(0), math.rad(0)), .3)
  824. Handleweld.C0 = clerp(Handleweld.C0, CFrame.new(-10, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(-20)), 0.3)
  825. Layer2Handleweld.C0 = clerp(Layer2Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), -5 * i, math.rad(0)), 0.3)
  826. Layer3Handleweld.C0 = clerp(Layer3Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), 5 * i, math.rad(0)), 0.3)
  827. end
  828. so("Slash1", Handle, 1, 1.2)
  829. for i = 0, 1, 0.1 do
  830. swait()
  831. RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(-50)), .5)
  832. TorsA.Neck.C0 = clerp(TorsA.Neck.C0, necko * angles(math.rad(10), math.rad(0), math.rad(50)), .5)
  833. RW.C0 = clerp(RW.C0, CFrame.new(1.4, 0.5, 0) * angles(math.rad(50), math.rad(0), math.rad(30)), 0.5)
  834. LW.C0 = clerp(LW.C0, CFrame.new(-1.3, 0.3, 0) * angles(math.rad(-30), math.rad(0), math.rad(-30)), 0.5)
  835. RH.C0 = clerp(RH.C0, cf(1, -1, -.3) * angles(math.rad(0), math.rad(140), math.rad(0)) * angles(math.rad(-3), math.rad(0), math.rad(0)), .5)
  836. LH.C0 = clerp(LH.C0, cf(-1, -1, .2) * angles(math.rad(0), math.rad(-50), math.rad(0)) * angles(math.rad(-3), math.rad(0), math.rad(0)), .5)
  837. Handleweld.C0 = clerp(Handleweld.C0, CFrame.new(0, -5, -10) * angles(math.rad(0), math.rad(0), math.rad(-20)), 0.3)
  838. Layer2Handleweld.C0 = clerp(Layer2Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), -5 * i, math.rad(0)), 0.3)
  839. Layer3Handleweld.C0 = clerp(Layer3Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), 5 * i, math.rad(0)), 0.3)
  840. end
  841. Disappear()
  842. con1:disconnect()
  843. con2:disconnect()
  844. con3:disconnect()
  845. con4:disconnect()
  846. attack = false
  847. end
  848.  
  849. local hoverpos = Create("BodyPosition"){}
  850.  
  851. local bv = Create("BodyVelocity"){
  852.  
  853. Parent = nil,
  854.  
  855. maxForce = Vector3.new(4e+020, 4e+020, 4e+020) ,
  856.  
  857. }
  858.  
  859. local hovering = false
  860.  
  861. function Hover()
  862. so("Appear",Handle,1,1)
  863. attack = true
  864. local dur = 0
  865. local donum3 = 0
  866. coroutine.resume(coroutine.create(function(Num)
  867. for i = 0, 1, 0.1 do
  868. swait()
  869. RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(0)), .3)
  870. TorsA.Neck.C0 = clerp(TorsA.Neck.C0, necko * angles(math.rad(10), math.rad(0), math.rad(0)), .3)
  871. RW.C0 = clerp(RW.C0, CFrame.new(1, 0.3, .3) * angles(math.rad(-30), math.rad(0), math.rad(-30)), 0.3)
  872. LW.C0 = clerp(LW.C0, CFrame.new(-1, 0.3, .3) * angles(math.rad(-30), math.rad(0), math.rad(30)), 0.3)
  873. RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(0), math.rad(90), math.rad(-20)) * angles(math.rad(0), math.rad(0), math.rad(0)), .3)
  874. LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(0), math.rad(-90), math.rad(10)) * angles(math.rad(0), math.rad(0), math.rad(0)), .3)
  875. Handleweld.C0 = clerp(Handleweld.C0, CFrame.new(0, -8, 0) * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3)
  876. Layer2Handleweld.C0 = clerp(Layer2Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), math.rad(30) - donum3 / .03, math.rad(0)), 0.3)
  877. Layer3Handleweld.C0 = clerp(Layer3Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), math.rad(30) + donum3 / .04, math.rad(0)), 0.3)
  878. end
  879. end), dur)
  880. Reappear()
  881. hoverpos.maxForce = vt(4e+080, 4e+080, 4e+080)
  882. hoverpos.Name = "BP"
  883. hoverpos.Parent = RootPart
  884. hoverpos.P = 2000
  885. hoverpos.D = 100
  886. hoverpos.position = RootPart.Position
  887. while hovering == true do
  888. for i = 0, 1, 0.1 do
  889. swait()
  890. donum3 = donum3 + 0.01
  891. Layer2Handleweld.C0 = clerp(Layer2Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), math.rad(30) - donum3 / .03, math.rad(0)), 0.3)
  892. Layer3Handleweld.C0 = clerp(Layer3Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), math.rad(30) + donum3 / .04, math.rad(0)), 0.3)
  893. end
  894. end
  895. Disappear()
  896. so("Disappear",Handle,1,1)
  897. hoverpos.Parent = nil
  898. attack = false
  899. end
  900.  
  901. function MagniDamage(Hit,Part,magni,mindam,maxdam,knock,Type)
  902. for _,c in pairs(workspace:children()) do
  903. local hum=c:findFirstChild("Humanoid")
  904. if hum~=nil then
  905. local head=c:findFirstChild("Torso")
  906. if head~=nil then
  907. local targ=head.Position-Part.Position
  908. local mag=targ.magnitude
  909. if mag<=magni and c.Name~=Player.Name then
  910. Damagefunc(Hit,head,mindam,maxdam,knock,Type,RootPart,.2,"Hit1",1)
  911. end
  912. end
  913. end
  914. end
  915. end
  916.  
  917. function CylinderEffect(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay)
  918. local prt=part(3,Character,"Neon",0,0,brickcolor,"Effect",vt(72.2,23.2,23.2))
  919. prt.Anchored=true
  920. prt.CFrame=cframe
  921. local msh=mesh("CylinderMesh",prt,"","",vt(0,0,0),vt(x1,y1,z1))
  922. game:GetService("Debris"):AddItem(prt,5)
  923. Effects[#Effects+1]={prt,"Cylinder",delay,x3,y3,z3} --part, type, delay
  924. end
  925.  
  926. RocketTarget = RootPart
  927. function ShootCannon(asd)
  928. local MainPos=asd.Position
  929. local MainPos2=mouse.Hit.p
  930. local MouseLook=cf((MainPos+MainPos2)/2,MainPos2)
  931. num=30
  932. coroutine.resume(coroutine.create(function()
  933. repeat
  934. wait()
  935. local hit,pos = rayCast(MainPos,MouseLook.lookVector,10,RocketTarget.Parent)
  936. local mag=(MainPos-pos).magnitude
  937. CylinderEffect(BrickColor.new("Black"),CFrame.new((MainPos+pos)/2,pos)*angles(1.57,0,0),3,mag*5,3,1.5,0,1.5,0.1)
  938. MainPos=MainPos+(MouseLook.lookVector*10)
  939. num=num-1
  940. if hit~=nil then
  941. num=0
  942. local ref=part(3,workspace,"Neon",0,1,BrickColor.new("Black"),"Reference",vt())
  943. ref.Anchored=true
  944. ref.CFrame=cf(pos)
  945. MagniDamage(ref,hit,5,30,50,1,"Normal")
  946. game:GetService("Debris"):AddItem(ref,5)
  947. end
  948. until num<=0
  949. end))
  950. end
  951.  
  952. function BlastEffect(brickcolor, cframe, x1, y1, z1, x2, y2, z2)
  953. local prt = part(3, workspace, "Neon", 0, 0, brickcolor, "Effect", vt(0.5, 0.5, 0.5))
  954. prt.Anchored = true
  955. prt.CFrame = cframe
  956. local msh = mesh("SpecialMesh", prt, "FileMesh", "http://www.roblox.com/asset/?id=20329976", vt(0, 0, 0), vt(x1, y1, z1))
  957. coroutine.resume(coroutine.create(function()
  958. for i = 0, 1, 0.05 do
  959. wait()
  960. prt.Transparency = i
  961. msh.Scale = msh.Scale + vt(x2, y2, z2)
  962. end
  963. prt.Parent = nil
  964. end))
  965. end
  966.  
  967. function BlockEffect(brickcolor,cframe,x1,y1,z1,x3,y3,z3,delay)
  968. local prt=part(3,workspace,"Neon",0,0,brickcolor,"Effect",vt())
  969. prt.Anchored=true
  970. prt.CFrame=cframe
  971. local msh=mesh("BlockMesh",prt,"","",vt(0,0,0),vt(x1,y1,z1))
  972. game:GetService("Debris"):AddItem(prt,5)
  973. table.insert(Effects,{prt,"Block1",delay,x3,y3,z3}) --part, type, delay
  974. end
  975.  
  976. function FireProjectiles()
  977. attack = true
  978. so("Appear",Handle,1,1)
  979. Reappear()
  980. for i = 0,1,0.1 do
  981. swait()
  982. RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(0)), .3)
  983. TorsA.Neck.C0 = clerp(TorsA.Neck.C0, necko * angles(math.rad(-30), math.rad(0), math.rad(0)), .3)
  984. RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(150), math.rad(0), math.rad(0)), 0.3)
  985. LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(20), math.rad(0), math.rad(-20)), 0.3)
  986. RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(0), math.rad(90), math.rad(0)) * angles(math.rad(-5), math.rad(0), math.rad(0)), .3)
  987. LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(0), math.rad(-90), math.rad(0)) * angles(math.rad(-5), math.rad(0), math.rad(0)), .3)
  988. Handleweld.C0 = clerp(Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3)
  989. Layer2Handleweld.C0 = clerp(Layer2Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), -6*i, math.rad(0)), 0.3)
  990. Layer3Handleweld.C0 = clerp(Layer3Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), 6*i, math.rad(0)), 0.3)
  991. end
  992. Humanoid.WalkSpeed = 0
  993. for i = 1,8 do
  994. ShootCannon(Handle)
  995. BlockEffect(BrickColor.new("Black"),Handle.CFrame,.5,.5,.5,.9,.9,.9,0.05)
  996. so("Beam",Handle,1,1.5)
  997. for i = 0,1,0.1 do
  998. swait()
  999. RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(0)), .5)
  1000. TorsA.Neck.C0 = clerp(TorsA.Neck.C0, necko * angles(math.rad(0), math.rad(0), math.rad(0)), .5)
  1001. RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(85), math.rad(0), math.rad(30)), 0.5)
  1002. LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(85), math.rad(0), math.rad(-30)), 0.5)
  1003. RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(0), math.rad(90), math.rad(0)) * angles(math.rad(-5), math.rad(0), math.rad(0)), .3)
  1004. LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(0), math.rad(-90), math.rad(0)) * angles(math.rad(-5), math.rad(0), math.rad(0)), .3)
  1005. Handleweld.C0 = clerp(Handleweld.C0, CFrame.new(0, 1, 0) * angles(math.rad(-90), math.rad(0), math.rad(0)), 0.3)
  1006. Layer2Handleweld.C0 = clerp(Layer2Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), -6*i, math.rad(0)), 0.3)
  1007. Layer3Handleweld.C0 = clerp(Layer3Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), 6*i, math.rad(0)), 0.3)
  1008. end
  1009. end
  1010. Disappear()
  1011. so("Disappear",Handle,1,1)
  1012. Humanoid.WalkSpeed = 16
  1013. attack = false
  1014. end
  1015.  
  1016. function EnergyBurst()
  1017. attack = true
  1018. so("Appear",Handle,1,1)
  1019. for i = 0,1,0.1 do
  1020. swait()
  1021. RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(-50)), .3)
  1022. TorsA.Neck.C0 = clerp(TorsA.Neck.C0, necko * angles(math.rad(0), math.rad(0), math.rad(50)), .3)
  1023. RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(0), math.rad(50), math.rad(90)), 0.3)
  1024. LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-30), math.rad(0), math.rad(-20)), 0.3)
  1025. RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(0), math.rad(130), math.rad(0)) * angles(math.rad(-3), math.rad(0), math.rad(0)), .3)
  1026. LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(0), math.rad(-70), math.rad(0)) * angles(math.rad(-3), math.rad(0), math.rad(0)), .3)
  1027. Handleweld.C0 = clerp(Handleweld.C0, CFrame.new(10, -4, 0) * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3)
  1028. Layer2Handleweld.C0 = clerp(Layer2Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), -6*i, math.rad(0)), 0.3)
  1029. Layer3Handleweld.C0 = clerp(Layer3Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), 6*i, math.rad(0)), 0.3)
  1030. end
  1031. Reappear()
  1032. so("Slash1", Handle, 1, 1.2)
  1033. for i = 1,2 do
  1034. for i = 0,1,0.1 do
  1035. swait()
  1036. BlockEffect(BrickColor.new("Yellow"),Handle.CFrame,.5,.5,.5,.9,.9,.9,0.05)
  1037. RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(70)), .3)
  1038. TorsA.Neck.C0 = clerp(TorsA.Neck.C0, necko * angles(math.rad(0), math.rad(0), math.rad(-70)), .3)
  1039. RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(0), math.rad(20), math.rad(90)), 0.3)
  1040. LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-40), math.rad(0), math.rad(-50)), 0.3)
  1041. RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(0), math.rad(70), math.rad(0)) * angles(math.rad(-3), math.rad(0), math.rad(0)), .3)
  1042. LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(0), math.rad(-130), math.rad(0)) * angles(math.rad(-3), math.rad(0), math.rad(0)), .3)
  1043. Handleweld.C0 = clerp(Handleweld.C0, CFrame.new(15, -4, -7) * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3)
  1044. Layer2Handleweld.C0 = clerp(Layer2Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), -6*i, math.rad(0)), 0.3)
  1045. Layer3Handleweld.C0 = clerp(Layer3Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), 6*i, math.rad(0)), 0.3)
  1046. end
  1047. end
  1048. Disappear()
  1049. so("Disappear",Handle,1,1)
  1050. so("Fire", Handle, 1, 1.2)
  1051. so("Fire", Handle, 1, .8)
  1052. MagniDamage(Handle,Handle,30,30,50,1,"Knockdown")
  1053. BlastEffect(BrickColor.new("Yellow"), Handle.CFrame, .1, .1, .1, 1, 1, 1)
  1054. for i = 1,5 do
  1055. BlockEffect(BrickColor.new("Black"),Handle.CFrame,1,1,1,5,5,5,0.05)
  1056. end
  1057. attack = false
  1058. end
  1059.  
  1060. function WaveEffect(Part,cframe1,cframe2,Damage,Size)
  1061. coroutine.resume(coroutine.create(function()
  1062. local wave=part(1,workspace,"Neon",0,0,BrickColor.new("Black"),"Effect",vt(3,3,10))
  1063. wave.Anchored=true
  1064. wave.CFrame=Part.CFrame*cframe1
  1065. so("Beam",wave,1,1.3)
  1066. MagniDamage(wave,wave,11212120,1212110,312120,12211,"Normal")
  1067. local Msh = Create("SpecialMesh"){
  1068. Parent = wave,
  1069. MeshType = "Sphere"
  1070. }
  1071. BlockEffect(BrickColor.new("Yellow"),wave.CFrame,1,1,1,3,3,3,0.05)
  1072. local PE1 = Create("ParticleEmitter"){
  1073. Parent = wave,
  1074. Color = ColorSequence.new(BrickColor.new("Yellow").Color),
  1075. Transparency = NumberSequence.new(.5),
  1076. Size = NumberSequence.new(1),
  1077. Texture = "rbxassetid://249270319",
  1078. Lifetime = NumberRange.new(1),
  1079. Rate = 50,
  1080. VelocitySpread = 180,
  1081. Rotation = NumberRange.new(0),
  1082. Speed = NumberRange.new(5),
  1083. LightEmission = 1,
  1084. }
  1085. for i=0,1,0.2 do
  1086. wait()
  1087. local dir = wave.CFrame.lookVector*-1
  1088. local pos = rayCast(wave.Position,dir,5,Character)
  1089. wave.CFrame=wave.CFrame*cframe2
  1090. Effects[#Effects+1]={wave,"Cylinder",0.01,.03,.03,.03}
  1091. end
  1092. end))
  1093. end
  1094.  
  1095. function Wave()
  1096. attack = true
  1097. Reappear()
  1098. so("Appear",Handle,1,.8)
  1099. for i = 1,3 do
  1100. for i = 0, 1, 0.1 do
  1101. swait()
  1102. BlockEffect(BrickColor.new("Black"),Handle.CFrame,.1,.1,.1,1,1,1,0.05)
  1103. RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(0)), .3)
  1104. TorsA.Neck.C0 = clerp(TorsA.Neck.C0, necko * angles(math.rad(-10), math.rad(0), math.rad(0)), .3)
  1105. RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.8, 0) * angles(math.rad(150), math.rad(0), math.rad(0)), 0.3)
  1106. LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-30), math.rad(0), math.rad(-30)), 0.3)
  1107. RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(0), math.rad(90), math.rad(0)) * angles(math.rad(-5), math.rad(0), math.rad(0)), .3)
  1108. LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(0), math.rad(-90), math.rad(0)) * angles(math.rad(-5), math.rad(0), math.rad(0)), .3)
  1109. Handleweld.C0 = clerp(Handleweld.C0, CFrame.new(-4, 10, 0) * angles(math.rad(0), math.rad(0), math.rad(-90)), 0.4)
  1110. Layer2Handleweld.C0 = clerp(Layer2Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), -5 * i, math.rad(0)), 0.3)
  1111. Layer3Handleweld.C0 = clerp(Layer3Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), 5 * i, math.rad(0)), 0.3)
  1112. end
  1113. end
  1114. so("Slash2",Handle,1,.4)
  1115. local inc=-10
  1116. for i=1,8 do
  1117. WaveEffect(Torso,CFrame.new(0,-5,inc)*CFrame.fromEulerAnglesXYZ(-2,0,1.57),CFrame.new(0,0,0.8),10,5)
  1118. inc=inc-7
  1119. end
  1120. for i = 1,2 do
  1121. for i = 0, 1, 0.1 do
  1122. swait()
  1123. BlockEffect(BrickColor.new("Black"),Handle.CFrame,.1,.1,.1,1,1,1,0.05)
  1124. RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(10), math.rad(0), math.rad(0)), .5)
  1125. TorsA.Neck.C0 = clerp(TorsA.Neck.C0, necko * angles(math.rad(-5), math.rad(0), math.rad(0)), .5)
  1126. RW.C0 = clerp(RW.C0, CFrame.new(1.2, 0.4, -.5) * angles(math.rad(50), math.rad(0), math.rad(-20)), 0.5)
  1127. LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-50), math.rad(0), math.rad(-50)), 0.5)
  1128. RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(0), math.rad(90), math.rad(10)) * angles(math.rad(-5), math.rad(0), math.rad(0)), .3)
  1129. LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(0), math.rad(-90), math.rad(-10)) * angles(math.rad(-5), math.rad(0), math.rad(0)), .3)
  1130. Handleweld.C0 = clerp(Handleweld.C0, CFrame.new(-4, .5, -10) * angles(math.rad(0), math.rad(0), math.rad(-90)), 0.5)
  1131. Layer2Handleweld.C0 = clerp(Layer2Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), -5 * i, math.rad(0)), 0.3)
  1132. Layer3Handleweld.C0 = clerp(Layer3Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), 5 * i, math.rad(0)), 0.3)
  1133. end
  1134. end
  1135. Disappear()
  1136. so("Disappear",Handle,1,.8)
  1137. attack = false
  1138. end
  1139.  
  1140. mouse.Button1Down:connect(function()
  1141. if attack == false and attacktype == 1 then
  1142. attacktype = 2
  1143. attackone()
  1144. elseif attack == false and attacktype == 2 then
  1145. attacktype = 3
  1146. attacktwo()
  1147. elseif attack == false and attacktype == 3 then
  1148. attacktype = 1
  1149. attackthree()
  1150. end
  1151. end)
  1152.  
  1153. mouse.KeyDown:connect(function(k)
  1154. k = k:lower()
  1155. if attack == false and k == ' ' and Anim == "Jump" then
  1156. hovering = true
  1157. Hover()
  1158. elseif k == ' ' and hovering == true then
  1159. hovering = false
  1160. elseif attack == false and k == 'q' then
  1161. FireProjectiles()
  1162. elseif attack == false and k == 'e' then
  1163. EnergyBurst()
  1164. elseif attack == false and k == 'r' then
  1165. Wave()
  1166. end
  1167. end)
  1168.  
  1169. local sine = 0
  1170. local change = 1
  1171. local val = 0
  1172. local idle = 0
  1173. local donum = 0
  1174. local donum2 = 0
  1175.  
  1176. while true do
  1177. swait()
  1178. sine = sine + change
  1179. local torvel = (RootPart.Velocity * Vector3.new(1, 0, 1)).magnitude
  1180. local velderp = RootPart.Velocity.y
  1181. hitfloor, posfloor = rayCast(RootPart.Position, (CFrame.new(RootPart.Position, RootPart.Position - Vector3.new(0, 1, 0))).lookVector, 4, Character)
  1182. if equipped == true or equipped == false then
  1183. if attack == false then
  1184. idle = idle + 1
  1185. else
  1186. idle = 0
  1187. end
  1188. if idle >= 500 then
  1189. if attack == false then
  1190. end
  1191. end
  1192. if donum2 >= .5 then
  1193. handidle = true
  1194. elseif donum2 <= 0 then
  1195. handidle = false
  1196. end
  1197. if handidle == false then
  1198. donum2 = donum2 + 0.003
  1199. else
  1200. donum2 = donum2 - 0.003
  1201. end
  1202. donum = donum + 0.003
  1203. if RootPart.Velocity.y > 1 and hitfloor == nil then
  1204. Anim = "Jump"
  1205. if attack == false then
  1206. RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(5), math.rad(0), math.rad(0)), .3)
  1207. TorsA.Neck.C0 = clerp(TorsA.Neck.C0, necko * angles(math.rad(-10), math.rad(0), math.rad(0)), .3)
  1208. RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(30)), 0.3)
  1209. LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(-30)), 0.3)
  1210. RH.C0 = clerp(RH.C0, cf(1, -.8, -.5) * angles(math.rad(0), math.rad(90), math.rad(-20)), .3)
  1211. LH.C0 = clerp(LH.C0, cf(-1, -1, -.3) * angles(math.rad(0), math.rad(-90), math.rad(30)), .3)
  1212. Handleweld.C0 = clerp(Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(20) - donum2 / 1), 0.3)
  1213. Layer2Handleweld.C0 = clerp(Layer2Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), math.rad(30) - donum / .01, math.rad(0)), 0.3)
  1214. Layer3Handleweld.C0 = clerp(Layer3Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), math.rad(30) + donum / .03, math.rad(0)), 0.3)
  1215. end
  1216. elseif RootPart.Velocity.y < -1 and hitfloor == nil then
  1217. Anim = "Fall"
  1218. if attack == false then
  1219. RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(-5), math.rad(0), math.rad(0)), .3)
  1220. TorsA.Neck.C0 = clerp(TorsA.Neck.C0, necko * angles(math.rad(10), math.rad(0), math.rad(0)), .3)
  1221. RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(50)), 0.3)
  1222. LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(-50)), 0.3)
  1223. RH.C0 = clerp(RH.C0, cf(1, -.7, -.5) * angles(math.rad(0), math.rad(90), math.rad(-20)), .3)
  1224. LH.C0 = clerp(LH.C0, cf(-1, -.9, -.3) * angles(math.rad(0), math.rad(-90), math.rad(30)), .3)
  1225. Handleweld.C0 = clerp(Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(20) - donum2 / 1), 0.3)
  1226. Layer2Handleweld.C0 = clerp(Layer2Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), math.rad(30) - donum / .01, math.rad(0)), 0.3)
  1227. Layer3Handleweld.C0 = clerp(Layer3Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), math.rad(30) + donum / .03, math.rad(0)), 0.3)
  1228. end
  1229. elseif torvel < 1 and hitfloor ~= nil then
  1230. Anim = "Idle"
  1231. if attack == false then
  1232. RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(-30)), .3)
  1233. TorsA.Neck.C0 = clerp(TorsA.Neck.C0, necko * angles(math.rad(5), math.rad(0), math.rad(30)), .3)
  1234. RW.C0 = clerp(RW.C0, CFrame.new(.8, 0.5, -.7) * angles(math.rad(85), math.rad(0), math.rad(-70)), 0.3)
  1235. LW.C0 = clerp(LW.C0, CFrame.new(-.8, 0.5, -.3) * angles(math.rad(70), math.rad(0), math.rad(70)), 0.3)
  1236. RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(0), math.rad(90), math.rad(0)) * angles(math.rad(-3), math.rad(0), math.rad(0)), .3)
  1237. LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(0), math.rad(-70), math.rad(0)) * angles(math.rad(-3), math.rad(0), math.rad(0)), .3)
  1238. Handleweld.C0 = clerp(Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(20) - donum2 / 1), 0.3)
  1239. Layer2Handleweld.C0 = clerp(Layer2Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), math.rad(30) - donum / .01, math.rad(0)), 0.3)
  1240. Layer3Handleweld.C0 = clerp(Layer3Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), math.rad(30) + donum / .03, math.rad(0)), 0.3)
  1241. end
  1242. elseif torvel > 2 and hitfloor ~= nil then
  1243. Anim = "Walk"
  1244. if attack == false then
  1245. change = 3
  1246. RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(5), math.rad(0), math.rad(0)), .3)
  1247. TorsA.Neck.C0 = clerp(TorsA.Neck.C0, necko * angles(math.rad(5), math.rad(0), math.rad(0)), .3)
  1248. RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(40) * math.cos(sine / 10), math.rad(0), math.rad(5)), 0.3)
  1249. LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-40) * math.cos(sine / 10), math.rad(0), math.rad(-5)), 0.3)
  1250. RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(0), math.rad(90), math.rad(0)) * angles(math.rad(-2), math.rad(0), math.rad(0)), .3)
  1251. LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(0), math.rad(-90), math.rad(0)) * angles(math.rad(-2), math.rad(0), math.rad(0)), .3)
  1252. Handleweld.C0 = clerp(Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(20), math.rad(0), math.rad(20) - donum2 / 1), 0.3)
  1253. Layer2Handleweld.C0 = clerp(Layer2Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), math.rad(30) - donum / .01, math.rad(0)), 0.3)
  1254. Layer3Handleweld.C0 = clerp(Layer3Handleweld.C0, CFrame.new(0, 0, 0) * angles(math.rad(0), math.rad(30) + donum / .03, math.rad(0)), 0.3)
  1255. end
  1256. end
  1257. end
  1258. if #Effects > 0 then
  1259. for e = 1, #Effects do
  1260. if Effects[e] ~= nil then
  1261. local Thing = Effects[e]
  1262. if Thing ~= nil then
  1263. local Part = Thing[1]
  1264. local Mode = Thing[2]
  1265. local Delay = Thing[3]
  1266. local IncX = Thing[4]
  1267. local IncY = Thing[5]
  1268. local IncZ = Thing[6]
  1269. if Thing[1].Transparency <= 1 then
  1270. if Thing[2] == "Block1" then
  1271. Thing[1].CFrame = Thing[1].CFrame * euler(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
  1272. Mesh = Thing[1].Mesh
  1273. Mesh.Scale = Mesh.Scale + vt(Thing[4], Thing[5], Thing[6])
  1274. Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1275. elseif Thing[2] == "Cylinder" then
  1276. Mesh = Thing[1].Mesh
  1277. Mesh.Scale = Mesh.Scale + vt(Thing[4], Thing[5], Thing[6])
  1278. Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1279. elseif Thing[2] == "Blood" then
  1280. Mesh = Thing[7]
  1281. Thing[1].CFrame = Thing[1].CFrame * cf(0, .5, 0)
  1282. Mesh.Scale = Mesh.Scale + vt(Thing[4], Thing[5], Thing[6])
  1283. Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1284. elseif Thing[2] == "Elec" then
  1285. Mesh = Thing[1].Mesh
  1286. Mesh.Scale = Mesh.Scale + vt(Thing[7], Thing[8], Thing[9])
  1287. Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1288. elseif Thing[2] == "Disappear" then
  1289. Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1290. end
  1291. else
  1292. Part.Parent = nil
  1293. table.remove(Effects, e)
  1294. end
  1295. end
  1296. end
  1297. end
  1298. end
  1299. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement