Advertisement
DDDDDtuij

Untitled

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