SHARE
TWEET

dream

a guest Mar 21st, 2017 59 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. dot = false
  2. des = false
  3. local ChatService = game:GetService("Chat")
  4. local player = game.Players.LocalPlayer
  5. char = player.Character
  6. hum = char.Humanoid
  7. torso = hum.Torso
  8. m=player:GetMouse()
  9. bb = Instance.new("BillboardGui",player.Character.Head)
  10. bb.Enabled = true
  11. bb.AlwaysOnTop = true
  12. bb.Size = UDim2.new(0,200,0,50)
  13. bb.StudsOffset = Vector3.new(0,1,0)
  14. gui=Instance.new("TextBox",bb)
  15. gui.Text = "* "
  16. gui.Size = UDim2.new(0,133,0,45)
  17. gui.Position=UDim2.new(0,57,0,-40)
  18. gui.TextColor3 = Color3.new(255,255,255)
  19. gui.BackgroundColor3=Color3.new(0,0,0)
  20. gui.TextWrapped = true
  21. gui.TextScaled = true
  22. gui.TextXAlignment = "Left"
  23. gui.TextYAlignment = "Top"
  24. gui.Visible = false
  25. gui.BorderColor3 = Color3.new(0,0,0)
  26.  
  27. gui1=Instance.new("TextButton",bb)
  28. gui1.Position=UDim2.new(0,5,0,-43)
  29. gui1.Size = UDim2.new(0,190,0,51)
  30.  
  31. gui1.TextColor3 = Color3.new(255,255,255)
  32. gui1.BackgroundColor3=Color3.new(255,255,255)
  33.  
  34. gui1.Visible = false
  35. img = Instance.new("ImageLabel",bb)
  36. img.Size = UDim2.new(0,46,0,47)
  37. img.Position = UDim2.new(0,10,0,-41)
  38. img.Image = "rbxassetid://419852216"
  39. img.BorderColor3 = Color3.new(0,0,0)
  40. img.Visible = false
  41. asd = Instance.new("Sound",player.Character.Torso)
  42. asd.SoundId = "http://www.roblox.com/asset/?id = 419874833"
  43.  
  44. asd1 = Instance.new("Sound",player.Character.Torso)
  45. asd1.SoundId = "http://www.roblox.com/asset/?id = 419874833"
  46. EpicText = Instance.new("Sound",player.Character.Torso)
  47. EpicText.SoundId = "http://www.roblox.com/asset/?id = 454824301"
  48.  
  49. asd2 = Instance.new("Sound",player.Character.Torso)
  50. asd2.SoundId = "http://www.roblox.com/asset/?id = 441352248"
  51. asd2.Looped = true
  52. asd3 = Instance.new("Sound",player.Character.Torso)
  53. asd3.SoundId = "http://www.roblox.com/asset/?id = 440709051"
  54. asd3.Looped = true
  55. asd4 = Instance.new("Sound",player.Character.Torso)
  56. asd4.SoundId = "http://www.roblox.com/asset/?id = 304222305"
  57. asd4.Looped = false
  58. asd5 = Instance.new("Sound",player.Character.Torso)
  59. asd5.SoundId = "http://www.roblox.com/asset/?id = 428665016"
  60. asd5.Looped = true
  61. dunkd = Instance.new("Sound",player.Character.Torso)
  62. dunkd.SoundId = "http://www.roblox.com/asset/?id = 318502757"
  63. dunkd.Looped = false
  64. function play(play)
  65. asd:Play()
  66. asd1:Play()
  67. end
  68. eye = Instance.new("Part",player.Character)
  69. eye.BrickColor = BrickColor.new("Black")
  70. eye.Material = "Neon"
  71. eye.FormFactor = 3
  72. eye.Shape = "Ball"
  73. eye.Size = Vector3.new(0.37,0.37,0.1)
  74. weld = Instance.new("Weld",eye)
  75. weld.Part0 = eye
  76. weld.Part1 = player.Character.Head
  77. weld.C0 = CFrame.new(0.1,-0.2,0.45)
  78. eye.Transparency = 1
  79. -- listen for their chatting
  80. player.Chatted:connect(function(message)
  81. a = string.len(message)
  82. gui.Text = "* "
  83. gui.Visible = true
  84. gui1.Visible = true
  85. des = false
  86. img.Visible = true
  87. print(a)
  88. if dot == false then
  89. for i = 1,string.len(message) do wait(0.07)
  90. gui.Text =gui.Text..message:sub(i,i)
  91.  
  92. play()
  93. end
  94. end
  95.  
  96. des = true
  97. end)
  98. m.KeyDown:connect(function(k)
  99. if k == "l" then
  100. asd2:Play()
  101.  
  102.  
  103. end
  104. end)
  105. m.KeyDown:connect(function(k)
  106. if k == "k" then
  107.  
  108. asd3:Play()
  109. end
  110. end)
  111. m.KeyDown:connect(function(k)
  112. if k == "j" then
  113. asd4:Play()
  114. end
  115. end)
  116. m.KeyDown:connect(function(k)
  117. if k == "p" then
  118.  
  119. asd5:Play()
  120. end
  121. end)
  122. m.KeyDown:connect(function(k)
  123. if k == "z" then
  124. asd1 = Instance.new("Sound",player.Character.Torso)
  125. asd1.SoundId = "http://www.roblox.com/asset/?id = 454824301"
  126.  
  127. img.Image = "rbxassetid://460973235"
  128. asd2:Play()
  129.  
  130. EpicText:Play()
  131. EpicText:Play()
  132. end
  133. end)
  134.  
  135. m.KeyDown:connect(function(k)
  136. if k == "n" then
  137. img.Image = "rbxassetid://419852168"
  138. end
  139. end)
  140. m.KeyDown:connect(function(k)
  141. if k == "b" then
  142. img.Image = "rbxassetid://419852186"
  143. end
  144. end)
  145. m.KeyDown:connect(function(k)
  146. if k == "m" then
  147. img.Image = "rbxassetid://419852203"
  148. end
  149. end)
  150. m.KeyDown:connect(function(k)
  151. if k == "h" then
  152. img.Image = "rbxassetid://419852243"
  153. end
  154. end)
  155. m.KeyDown:connect(function(k)
  156. if k == "x" then
  157. if des == true then
  158. gui.Visible = false
  159. gui.Text = "! "
  160. gui1.Visible = false
  161. img.Visible = false
  162. end
  163. end
  164. end)
  165. m.KeyDown:connect(function(k)
  166. if k == ";" then
  167. asd3:Stop()
  168. asd2:Stop()
  169. asd4:Stop()
  170. dunkd:Stop()
  171. eye.Transparency = 1
  172. asd5:Stop()
  173. end
  174. end)
  175. m.KeyDown:connect(function(k)
  176. if k == "y" then
  177. img.Image = "rbxassetid://419852216"
  178. end
  179. end)
  180. -- my god...
  181. -- Suck_HiyaThere moves to arizona
  182.  
  183. pls=game:GetService'Players';
  184. rs=game:GetService'RunService';
  185. uinps=game:GetService'UserInputService';
  186. lp=pls.LocalPlayer;
  187. mouse=lp:GetMouse();
  188. c=lp.Character;
  189. rayModel=Instance.new('Model',c);
  190. human=c.Humanoid;
  191. Cone=nil;
  192. human.MaxHealth=1000000;
  193. wait();
  194. human.Health=1000000;
  195. c.Health:Destroy();
  196. Debounces={
  197. FPS=0;
  198. isAttacking=false;
  199. isMoving=false;
  200. isSprinting=false;
  201. Debounce=false;
  202. isTyping=false;
  203. isJumping=false;
  204. isFlash=false;
  205. };
  206. numLerp=function(start,goal,alpha)
  207. return(((goal-start)*alpha)+start);
  208. end;
  209. CFrameZero=function()
  210. return CFrame.new(Vector3.new());
  211. end;
  212. local function a()
  213. local t=tick();
  214. local l=t%1*3;
  215. local t=.5*math.pi*(l%1);
  216. if l<1 then
  217. return Color3.new(1,1-math.cos(t),1-math.sin(t));
  218. elseif l<2 then
  219. return Color3.new(1-math.sin(t),1,1-math.cos(t));
  220. else
  221. return Color3.new(1-math.cos(t),1-math.sin(t),1);
  222. end;
  223. end;
  224. rad=function(value)
  225. return math.rad(value);
  226. end;
  227. CFAngles=function(Vector)
  228. return CFrame.Angles(rad(Vector.x),rad(Vector.y),rad(Vector.z));
  229. end;
  230. AnimStat={
  231. lerpSpeed=.2;
  232. lerpSpeed2=.35;
  233. lerpTween=0;
  234. };
  235. Joints={
  236. c.HumanoidRootPart.RootJoint;
  237. c.Torso.Neck;
  238. c.Torso['Left Shoulder'];
  239. c.Torso['Right Shoulder'];
  240. c.Torso['Left Hip'];
  241. c.Torso['Right Hip'];
  242. };
  243. prepareCharacter=function()
  244. music=Instance.new('Sound',c.HumanoidRootPart);
  245. music.SoundId='rbxassetid://306154368';
  246. music.Looped=true;
  247. music.Volume=.6;
  248. music2=Instance.new('Sound',c);
  249. music2.SoundId='rbxassetid://320842828';
  250. music2.Looped=true;
  251. music2.Volume=1;
  252. music3=Instance.new('Sound',c.HumanoidRootPart);
  253. music3.SoundId='rbxassetid://304222305';
  254. music3.Looped=true;
  255. music3.Volume=1;
  256. music4=Instance.new('Sound',c.HumanoidRootPart);
  257. music4.SoundId='rbxassetid://428665016';
  258. music4.Looped=true;
  259. music4.Volume=1;
  260. music5=Instance.new('Sound',c.HumanoidRootPart);
  261. music5.SoundId='rbxassetid://318502757';
  262. music5.Looped=true;
  263. music5.Volume=1;
  264. human.WalkSpeed=0;
  265. human.JumpPower=0;
  266. end;
  267. triWave=function(x)
  268. local pi2=math.pi/2;
  269. return math.abs((x/pi2)%4-2)-1;
  270. end;
  271. setLerp=function(speed)
  272. AnimStat.lerpSpeed=speed;
  273. end;
  274. setTween=function(tween)
  275. AnimStat.lerpTween=tween;
  276. end;
  277. playSound=function(id,part,vol,pitch)
  278. local vol=vol or 1;
  279. local pitch=pitch or 1;
  280. local x=Instance.new('Sound',part);
  281. x.Volume=vol;
  282. x.Pitch=pitch;
  283. x.SoundId='rbxassetid://'..id;
  284. spawn(function()
  285. wait();
  286. x:Play();
  287. wait(x.TimeLength+.2);
  288. x:Destroy();
  289. end);
  290. end;
  291. lerpBoom=function()
  292. if Cone then
  293. Cone.CFrame=CFrame.new(c.HumanoidRootPart.CFrame.p,c.HumanoidRootPart.CFrame.p+c.HumanoidRootPart.Velocity)*CFrame.Angles(-math.pi/2,0,0);
  294. cMesh.Scale=Vector3.new(20,20+c.HumanoidRootPart.Velocity.magnitude/10,20);
  295. Cone.Transparency=1-c.HumanoidRootPart.Velocity.magnitude/1000;
  296. else
  297. Cone=Instance.new('Part',c);
  298. Cone.Anchored=true;
  299. Cone.CanCollide=false;
  300. Cone.Transparency=math.random(50,70)/100;
  301. Cone.Size=Vector3.new(1,1,1);
  302. Cone.CFrame=CFrame.new(c.HumanoidRootPart.CFrame.p,c.HumanoidRootPart.CFrame.p+c.HumanoidRootPart.Velocity)*CFrame.Angles(-math.pi/2,0,0);
  303. cMesh=Instance.new('SpecialMesh',Cone);
  304. cMesh.MeshId='rbxassetid://1033714';
  305. cMesh.Scale=Vector3.new(20,50,20);
  306. end;
  307. end;
  308. noBoom=function()
  309. if Cone then local x=Cone Cone=nil;
  310. for i=1,20 do
  311. wait();
  312. x.Mesh.Scale=x.Mesh.Scale+Vector3.new(-.5,1,-.5);
  313. x.Transparency=x.Transparency+1/30;
  314. end;
  315. end;
  316. end;
  317. gasterBlast=function(tCFrame,aimPos,charge)
  318. local aimTarget;
  319. if aimPos then
  320. aimTarget=CFrame.new(tCFrame,aimPos);
  321. else
  322. aimTarget=tCFrame;
  323. end;
  324. local gast=Instance.new('Part',c);
  325. gast.Size=Vector3.new(12,.2,12);
  326. gast.CanCollide=false;
  327. gast.Anchored=true;
  328. gast.Transparency=1;
  329. if charge then
  330. playSound(400523331,gast,math.random(90,110)/100);
  331. end;
  332. wait();
  333. for i=1,2 do
  334. local decal=Instance.new('Decal',gast);
  335. decal.Texture='rbxassetid://401564454';
  336. if i==1 then
  337. decal.Face=Enum.NormalId.Top;
  338. else
  339. decal.Face=Enum.NormalId.Bottom;
  340. end;
  341. end;
  342. gast.CFrame=CFrame.new(aimTarget.p-Vector3.new(math.sin(tick()*10)*10,20,math.cos(tick()*10)*10));
  343. spawn(function()
  344. local tarCFrame=gast.CFrame;
  345. local isLooping=true;
  346. spawn(function()
  347. while rs.RenderStepped:wait()and isLooping do
  348. gast.CFrame=gast.CFrame:lerp(tarCFrame,.6/(Debounces.FPS/60));
  349. end;
  350. end);
  351. for i=1,30 do
  352. wait();
  353. tarCFrame=gast.CFrame:lerp(aimTarget,.24);
  354. end;
  355. playSound(340722848,gast,math.random(90,110)/100);
  356. isLooping=false;
  357. wait(.08);
  358. local ray=Ray.new(aimTarget.p,aimTarget.lookVector.unit*999);
  359. local _,pos=workspace:FindPartOnRay(ray,c);
  360. local dis=(aimTarget.p-pos).magnitude;
  361. local rayCFrame=CFrame.new(gast.CFrame.p+(pos-gast.CFrame.p).unit*(dis/2+200),gast.CFrame.p+(pos-gast.CFrame.p).unit*dis*2)*CFrame.Angles(0,math.pi/2,0);
  362. local rayPart=Instance.new('Part',rayModel);
  363. rayPart.Material='Neon';
  364. rayPart.FormFactor='Custom';
  365. rayPart.Anchored=true;
  366. rayPart.CanCollide=false;
  367. rayPart.Color=a();
  368. rayPart.Shape='Cylinder';
  369. rayPart.Size=Vector3.new(dis+400,8,8);
  370. rayPart.CFrame=rayCFrame;
  371. gast:Destroy();
  372. end);
  373. end;
  374. largegasterBlast=function(tCFrame,aimPos)
  375. local aimTarget;
  376. if aimPos then
  377. aimTarget=CFrame.new(tCFrame,aimPos);
  378. else
  379. aimTarget=tCFrame;
  380. end;
  381. local gast=Instance.new('Part',c);
  382. gast.Size=Vector3.new(25,.2,25);
  383. gast.CanCollide=false;
  384. gast.Anchored=true;
  385. gast.Transparency=1;
  386. playSound(400523331,gast,math.random(85,97)/100);
  387. wait();
  388. for i=1,2 do
  389. local decal=Instance.new('Decal',gast);
  390. decal.Texture='rbxassetid://401564690';
  391. if i==1 then
  392. decal.Face=Enum.NormalId.Top;
  393. else
  394. decal.Face=Enum.NormalId.Bottom;
  395. end;
  396. end;
  397. gast.CFrame=CFrame.new(aimTarget.p-Vector3.new(math.sin(tick()*10)*10,20,math.cos(tick()*10)*10));
  398. spawn(function()
  399. local tarCFrame=gast.CFrame;
  400. local isLooping=true;
  401. spawn(function()
  402. while rs.RenderStepped:wait()and isLooping do
  403. gast.CFrame=gast.CFrame:lerp(tarCFrame,.6/(Debounces.FPS/60));
  404. end;
  405. end);
  406. for i=1,40 do
  407. wait();
  408. tarCFrame=gast.CFrame:lerp(aimTarget,.18);
  409. end;
  410. playSound(340722848,gast,math.random(80,95)/100);
  411. isLooping=false;
  412. wait(.08);
  413. local ray=Ray.new(aimTarget.p,aimTarget.lookVector.unit*999);
  414. local _,pos=workspace:FindPartOnRay(ray,c);
  415. local dis=(aimTarget.p-pos).magnitude;
  416. local rayCFrame=CFrame.new(gast.CFrame.p+(pos-gast.CFrame.p).unit*(dis/2+200),gast.CFrame.p+(pos-gast.CFrame.p).unit*dis*2)*CFrame.Angles(0,math.pi/2,0);
  417. local rayPart=Instance.new('Part',rayModel);
  418. rayPart.Material='Neon';
  419. rayPart.FormFactor='Custom';
  420. rayPart.Anchored=true;
  421. rayPart.CanCollide=false;
  422. rayPart.Shape='Cylinder';
  423. rayPart.Size=Vector3.new(dis+400,17,17);
  424. rayPart.CFrame=rayCFrame;
  425. gast:Destroy();
  426. end);
  427. end;
  428.  
  429. if Debounces.isAttacking==false and Debounces.isMoving==false and Debounces.Debounce==false and Debounces.isJumping==false then
  430. setLerp(.8);
  431. elseif Debounces.isAttacking==false and Debounces.isMoving==true and Debounces.Debounce==false and Debounces.isSprinting==true and Debounces.isJumping==false then
  432. sine=tick()*28;
  433. human.WalkSpeed=400;
  434. lerpBoom();
  435. setLerp(.65);
  436. end;
  437. human.Changed:connect(function(prop)
  438. if prop=='MoveDirection'then
  439. if human.MoveDirection.magnitude>.02 then
  440. Debounces.isMoving=true;
  441. else
  442. Debounces.isMoving=false;
  443. end;
  444. end;
  445. end);
  446. uinps.InputBegan:connect(function(InputObj)
  447. if InputObj.KeyCode==Enum.KeyCode.Slash then
  448. local finishEvent=nil;
  449. Debounces.isTyping=true
  450. finishEvent=uinps.InputBegan:connect(function(InputObj)
  451. if InputObj.KeyCode==Enum.KeyCode.Return or InputObj.UserInputType==Enum.UserInputType.MouseButton1 then
  452. Debounces.isTyping=false;
  453. finishEvent:disconnect();
  454. end;
  455. end);
  456. end;
  457. end);
  458. mouse.KeyDown:connect(function(key)
  459. if key=='0'then
  460. Debounces.isSprinting=true;
  461. playSound(160248522,c.Torso);
  462. for i=1,3 do
  463. spawn(function()
  464. local e=Instance.new('Part',c);
  465. e.Size=Vector3.new(1,1,1);
  466. e.Material='Neon';
  467. e.Color=a();
  468. e.Anchored=true;
  469. e.CFrame=c.HumanoidRootPart.CFrame*CFrame.Angles(0,0,-math.pi/2);
  470. e.CanCollide=false;
  471. local rm=Instance.new('SpecialMesh',e);
  472. rm.MeshType='FileMesh';
  473. rm.MeshId='rbxassetid://3270017';
  474. rm.Scale=Vector3.new(3.2,3.2,10);
  475. for x=1,30 do
  476. wait();
  477. rm.Scale=rm.Scale:lerp(Vector3.new(i*30,i*30,(4-i)*450),.1);
  478. e.Transparency=x/30+.5;
  479. end;
  480. end);
  481. end;
  482. c.HumanoidRootPart.Velocity=c.HumanoidRootPart.CFrame.lookVector*200;
  483. end;
  484. end);
  485. mouse.KeyUp:connect(function(key)
  486. if key=='0'then
  487. Debounces.isSprinting=false;
  488. end;
  489. end);
  490. mouse.KeyDown:connect(function(key)
  491. if key=='v'then
  492. playSound(201858087,c.Torso,math.random(90,120)/100);
  493. local oldPos=c.HumanoidRootPart.CFrame.p;
  494. local mHit=mouse.Hit.p;
  495. for i=1,2 do
  496. spawn(function()
  497. local pos
  498. if i==1 then pos=oldPos else pos=mHit end
  499. local p=Instance.new('Part',workspace);
  500. p.Anchored=true;
  501. p.CanCollide=false;
  502. p.Color=a();
  503. p.FormFactor='Custom';
  504. p.CFrame=CFrame.new(pos+Vector3.new(0,500,0));
  505. p.Transparency=.4;
  506. p.Size=Vector3.new(20,1000,20);
  507. for i=1,20 do
  508. wait();
  509. p.Transparency=.4+(i/10)*.6;
  510. p.Size=Vector3.new(20-i*1.5,1000,20-i*1.5);
  511. p.CFrame=CFrame.new(pos+Vector3.new(0,500,0));
  512. end;
  513. p:Destroy();
  514. end);
  515. end;
  516. if Debounces.isMoving then
  517. c.HumanoidRootPart.CFrame=CFrame.new(mouse.Hit.p+Vector3.new(0,4,0),Vector3.new(c.HumanoidRootPart.Velocity.x,mouse.Hit.p.y+4,c.HumanoidRootPart.Velocity.z));
  518. else
  519. c.HumanoidRootPart.CFrame=CFrame.new(mouse.Hit.p+Vector3.new(0,4,0),Vector3.new(oldPos.x,mouse.Hit.p.y+4,oldPos.z));
  520. end;
  521. end;
  522. end);
  523. mouse.KeyDown:connect(function(key)
  524. if key=='r'then
  525. local pointTarget=mouse.Hit.p;
  526. for i=1,20 do
  527. wait();
  528. gasterBlast(CFrame.new(pointTarget+Vector3.new(math.sin(tick()*10)*20,5+math.abs(math.sin(tick()*5)*10),math.cos(tick()*10)*20),pointTarget));
  529. end;
  530. wait();
  531. largegasterBlast(CFrame.new(pointTarget+Vector3.new(0,35,0),pointTarget));
  532. end;
  533. end);
  534. mouse.KeyDown:connect(function(key)
  535. if key=='k'then
  536. if music.isPlaying then music:Stop();else music:Play();end;
  537. end;
  538. end);
  539. mouse.KeyDown:connect(function(key)
  540. if key=='j'then
  541. if music2.isPlaying then music2:Stop();else music2:Play();end;
  542. end;
  543. end);
  544. mouse.KeyDown:connect(function(key)
  545. if key=='l'then
  546. if music3.isPlaying then music3:Stop();else music3:Play();end;
  547. end;
  548. end);
  549. mouse.KeyDown:connect(function(key)
  550. if key=='p'then
  551. if music4.isPlaying then music4:Stop();else music4:Play();end;
  552. end;
  553. end);
  554. mouse.KeyDown:connect(function(key)
  555. if key=='o'then
  556. if music5.isPlaying then music4:Stop();else music5:Play();end;
  557. end;
  558. end);
  559. mouse.KeyDown:connect(function(key)
  560. if key=='e'then
  561. gasterBlast(c.Torso.CFrame.p+Vector3.new(math.sin(tick()*10)*10,12,math.cos(tick()*10)*10),mouse.Hit.p,true);
  562. end;
  563. end);
  564. mouse.KeyDown:connect(function(key)
  565. if key=='c'then
  566. largegasterBlast(c.Torso.CFrame.p+Vector3.new(math.sin(tick()*10)*10,12,math.cos(tick()*10)*10),mouse.Hit.p);
  567. end;
  568. end);
  569. mouse.KeyDown:connect(function(key)
  570. if key=='q'then
  571. for i=1,5 do
  572. wait();
  573. gasterBlast(c.Torso.CFrame.p+Vector3.new(math.sin(tick()*10)*10,12,math.cos(tick()*10)*10),mouse.Hit.p);
  574. end;
  575. largegasterBlast(c.Torso.CFrame.p+Vector3.new(0,25,0),mouse.Hit.p);
  576. end;
  577. end);
  578. mouse.KeyDown:connect(function(key)
  579. if key=='t'then
  580. local pointTarget=mouse.Hit.p;
  581. for i=1,20 do
  582. gasterBlast(pointTarget+Vector3.new(math.sin(math.deg((360/40)*i))*(20-i),5+i,math.cos(math.deg((360/40)*i))*(20-i)),pointTarget);
  583. end;
  584. wait(.2);
  585. for i=1,10 do
  586. largegasterBlast(pointTarget+Vector3.new(math.sin(math.deg((360/20)*i))*25,20,math.cos(math.deg((360/20)*i))*25),pointTarget);
  587. end;
  588. end;
  589. end);
  590. human.StateChanged:connect(function(os,ns)
  591. if c.HumanoidRootPart.Velocity.Y<.1 and Debounces.isJumping==true and ns==Enum.HumanoidStateType.Landed then
  592. Debounces.isJumping=false;
  593. end;
  594. end);
  595. rs.RenderStepped:connect(function()
  596. Debounces.FPS=1/rs.RenderStepped:wait();
  597. if Debounces.FPS<30 then
  598. Debounces.FPS=30;
  599. end;
  600. if Debounces.isSprinting then
  601. lerpBoom();
  602. else
  603. noBoom();
  604. end;
  605. for _,v in pairs(rayModel:children())do
  606. v.Transparency=v.Transparency+.06/(Debounces.FPS/60);
  607. if v.Transparency>.99 then v:Destroy();return;end;
  608. v.CanCollide=true;
  609. local tParts=v:GetTouchingParts();
  610. v.CanCollide=false;
  611. local vCFrame=v.CFrame;
  612. v.Size=v.Size+Vector3.new(0,1,1)/(Debounces.FPS/60);
  613. v.CFrame=vCFrame;
  614. for _,x in pairs(tParts)do
  615. if x and x.Parent and x.Parent:FindFirstChild'Humanoid'and x.Parent.Humanoid:isA'Humanoid'and x.Parent~=c then
  616. x.Parent.Humanoid:TakeDamage(1000000,2000000);
  617. end;
  618. end;
  619. end;
  620. local FPSLerp=AnimStat.lerpSpeed/(Debounces.FPS/60);
  621. end);
  622.  
  623. local verlet = {}
  624. verlet.step_time = 1 / 50
  625. verlet.gravity = Vector3.new(0, -10, 0)
  626.  
  627. local char = game.Players.LocalPlayer.Character
  628. local torso = char:WaitForChild("Torso")
  629. local parts = {}
  630. local render = game:GetService("RunService").RenderStepped
  631.  
  632. wait(2)
  633.  
  634. local point = {}
  635. local link = {}
  636. local rope = {}
  637.  
  638. local function ccw(A,B,C)
  639.     return (C.y-A.y) * (B.x-A.x) > (B.y-A.y) * (C.x-A.x)
  640. end
  641.  
  642. local function intersect(A,B,C,D)
  643.     return ccw(A,C,D) ~= ccw(B,C,D) and ccw(A,B,C) ~= ccw(A,B,D)
  644. end
  645.  
  646. local function vec2(v)
  647.     return Vector2.new(v.x, v.z)
  648. end
  649.  
  650. function point:step()
  651.     if not self.fixed then
  652.         local derivative = (self.position - self.last_position) * 0.95
  653.         self.last_position = self.position
  654.         self.position = self.position + derivative + (self.velocity * verlet.step_time ^ 2)
  655.         --[[local torsoP = torso.CFrame * CFrame.new(-1, 0, 0.5)
  656.         local torsoE = torso.CFrame * CFrame.new(1, 0, 0.5)
  657.         local pointE = self.position + torso.CFrame.lookVector * 100
  658.         local doIntersect = intersect(vec2(torsoP.p), vec2(torsoE.p), vec2(self.position), vec2(pointE))
  659.         if not doIntersect then
  660.             self.postition = self.position - torso.CFrame.lookVector * 10
  661.         end]]
  662.     end
  663. end
  664.  
  665. function link:step()
  666.     for i = 1, 1 do
  667.         local distance = self.point1.position - self.point2.position
  668.         local magnitude = distance.magnitude
  669.         local differance = (self.length - magnitude) / magnitude
  670.         local translation = ((self.point1.fixed or self.point2.fixed) and 1 or 0.6) * distance * differance
  671.         if not self.point1.fixed then
  672.             self.point1.position = self.point1.position + translation
  673.         end
  674.         if not self.point2.fixed then
  675.             self.point2.position = self.point2.position - translation
  676.         end
  677.     end
  678. end
  679.  
  680. function verlet.new(class, a, b, c)
  681.     if class == "Point" then
  682.         local new = {}
  683.         setmetatable(new, {__index = point})
  684.         new.class = class
  685.         new.position = a or Vector3.new()
  686.         new.last_position = new.position
  687.         new.velocity = verlet.gravity
  688.         new.fixed = false
  689.         return new
  690.     elseif class == "Link" then
  691.         local new = {}
  692.         setmetatable(new, {__index = link})
  693.         new.class = class
  694.         new.point1 = a
  695.         new.point2 = b
  696.         new.length = c or (a.position - b.position).magnitude
  697.         return new
  698.     elseif class == "Rope" then
  699.         local new = {}
  700.         setmetatable(new, {__index = link})
  701.         new.class = class
  702.         new.start_point = a
  703.         new.finish_point = b
  704.         new.points = {}
  705.         new.links = {}
  706.         local inc = (b - a) / 10
  707.         for i = 0, 10 do
  708.             table.insert(new.points, verlet.new("Point", a + (i * inc)))
  709.         end
  710.         for i = 2, #new.points do
  711.             table.insert(new.links, verlet.new("Link", new.points[i - 1], new.points[i]))
  712.         end
  713.         return new
  714.     end
  715. end
  716.  
  717. local tris = {}
  718. local triParts = {}
  719.  
  720. local function GetDiscoColor(hue)
  721.  local section = hue % 1 * 3
  722.  local secondary = 0.5 * math.pi * (section % 1)
  723.  if section < 1 then
  724.   return Color3.new(0, 0, 0)
  725.  elseif section < 2 then
  726.   return Color3.new(0, 0, 0)
  727.  else
  728.   return Color3.new(0, 0, 0)
  729.  end
  730. end
  731.  
  732. local function setupPart(part)
  733.     part.Anchored = true
  734.     part.FormFactor = 3
  735.     part.CanCollide = false
  736.     part.TopSurface = 10
  737.     part.BottomSurface = 10
  738.     part.LeftSurface = 10
  739.     part.RightSurface = 10
  740.     part.FrontSurface = 10
  741.     part.BackSurface = 10
  742.     part.Material = "Neon"
  743.     local m = Instance.new("SpecialMesh", part)
  744.     m.MeshType = "Wedge"
  745.     m.Scale = Vector3.new(0.2, 1, 1)
  746.     return part
  747. end
  748.  
  749. local function CFrameFromTopBack(at, top, back)
  750.     local right = top:Cross(back)
  751.     return CFrame.new(at.x, at.y, at.z, right.x, top.x, back.x,  right.y, top.y, back.y, right.z, top.z, back.z)
  752. end
  753.  
  754. local function drawTri(parent, a, b, c)
  755.     local this = {}
  756.     local mPart1 = table.remove(triParts, 1) or setupPart(Instance.new("Part"))
  757.     local mPart2 = table.remove(triParts, 1) or setupPart(Instance.new("Part"))
  758.     function this:Set(a, b, c)
  759.         local ab, bc, ca = b-a, c-b, a-c
  760.         local abm, bcm, cam = ab.magnitude, bc.magnitude, ca.magnitude
  761.         local edg1 = math.abs(0.5 + ca:Dot(ab)/(abm*abm))
  762.         local edg2 = math.abs(0.5 + ab:Dot(bc)/(bcm*bcm))
  763.         local edg3 = math.abs(0.5 + bc:Dot(ca)/(cam*cam))
  764.         if edg1 < edg2 then
  765.             if edg1 >= edg3 then       
  766.                 a, b, c = c, a, b
  767.                 ab, bc, ca = ca, ab, bc
  768.                 abm = cam
  769.             end
  770.         else
  771.             if edg2 < edg3 then
  772.                 a, b, c = b, c, a
  773.                 ab, bc, ca = bc, ca, ab
  774.                 abm = bcm
  775.             else
  776.                 a, b, c = c, a, b
  777.                 ab, bc, ca = ca, ab, bc
  778.                 abm = cam
  779.             end
  780.         end
  781.      
  782.         local len1 = -ca:Dot(ab)/abm
  783.         local len2 = abm - len1
  784.         local width = (ca + ab.unit*len1).magnitude
  785.      
  786.         local maincf = CFrameFromTopBack(a, ab:Cross(bc).unit, -ab.unit)
  787.      
  788.         if len1 > 0.2 then
  789.             mPart1.Parent = parent
  790.             mPart1.Size = Vector3.new(0.2, width, len1)
  791.             mPart1.CFrame = maincf*CFrame.Angles(math.pi,0,math.pi/2)*CFrame.new(0,width/2,len1/2)
  792.         else
  793.             mPart1.Parent = nil
  794.         end
  795.        
  796.         if len2 > 0.2 then
  797.             mPart2.Parent = parent
  798.             mPart2.Size = Vector3.new(0.2, width, len2)
  799.             mPart2.CFrame = maincf*CFrame.Angles(math.pi,math.pi,-math.pi/2)*CFrame.new(0,width/2,-len1 - len2/2)
  800.         else
  801.             mPart2.Parent = nil
  802.         end
  803.     end
  804.     function this:SetProperty(prop, value)
  805.         mPart1[prop] = value
  806.         mPart2[prop] = value
  807.     end
  808.     this:Set(a, b, c)
  809.     function this:Destroy()
  810.         mPart1:Destroy()
  811.         mPart2:Destroy()
  812.     end
  813.     this.p1 = mPart1
  814.     this.p2 = mPart2
  815.     this.p1.BrickColor = BrickColor.new(GetDiscoColor(math.noise(0.5, 0.5, this.p1.CFrame.Y * 0.5 + time())))
  816.     this.p2.BrickColor = BrickColor.new(GetDiscoColor(math.noise(0.5, 0.5, this.p2.CFrame.Y * 0.5 + time())))
  817.     return this
  818. end
  819.  
  820. function verlet.draw(object, id)
  821.     if object.class == "Point" then
  822.         local part = parts[id]
  823.         part.BrickColor = BrickColor.new(107, 0, 107)
  824.         part.Transparency = 0
  825.         part.formFactor = 3
  826.         part.Anchored = true
  827.         part.CanCollide = false
  828.         part.TopSurface = 0
  829.         part.BottomSurface = 0
  830.         part.Size = Vector3.new(0.35, 0.35, 0.35)
  831.         part.Material = "Neon"
  832.         part.CFrame = CFrame.new(object.position)
  833.         part.Parent = torso
  834.         return part
  835.     elseif object.class == "Link" then
  836.         local part = parts[id]
  837.         local dist = (object.point1.position - object.point2.position).magnitude
  838.         part.Size = Vector3.new(0.2, 0.2, dist)
  839.         part.CFrame = CFrame.new(object.point1.position, object.point2.position) * CFrame.new(0, 0, dist * -0.5)
  840.         part.Parent = torso
  841.         return part
  842.     end
  843. end
  844.  
  845. function verlet.clear()
  846.     for _, v in pairs(workspace:GetChildren()) do
  847.         if v.Name == "Part" then
  848.             v:Destroy()
  849.         end
  850.     end
  851. end
  852.  
  853. local points = {}
  854. local links = {}
  855.  
  856. for x = 0, 2 do
  857.     points[x] = {}
  858.     for y = 0, 3 do
  859.         points[x][y] = verlet.new("Point", torso.Position + Vector3.new(x * 0.8 - 2, 2 - y * 0.8, 5 + y * 0.4))
  860.         points[x][y].fixed = y == 0
  861.     end
  862. end
  863.  
  864. for x = 1, 2 do
  865.     for y = 0, 3 do
  866.         links[#links + 1] = verlet.new("Link", points[x][y], points[x - 1][y], 1 + y * 0.08)
  867.     end
  868. end
  869.  
  870. for x = 0, 2 do
  871.     for y = 1, 3 do
  872.         links[#links + 1] = verlet.new("Link", points[x][y], points[x][y - 1], 1.2 + y * 0.03)
  873.     end
  874. end
  875.  
  876. render:connect(function()
  877.     for x = 0, 2 do
  878.         for y = 0, 3 do
  879.             if y == 0 then
  880.                 points[x][y].position = (torso.CFrame * CFrame.new(x * 1 - 1, 1, 0.5)).p
  881.             else
  882.                 points[x][y]:step()
  883.             end
  884.         end
  885.     end
  886.     for i = 1, #links do
  887.         links[i]:step()
  888.     end
  889.     for i = 1, #tris do
  890.         triParts[#triParts + 1] = tris[i].p1
  891.         triParts[#triParts + 1] = tris[i].p2
  892.     end
  893.     tris = {}
  894.     for x = 1, 2 do
  895.         for y = 1, 3 do
  896.             tris[#tris + 1] = drawTri(torso, points[x - 1][y - 1].position, points[x - 1][y].position, points[x][y - 1].position)
  897.             tris[#tris + 1] = drawTri(torso, points[x][y].position, points[x - 1][y].position, points[x][y - 1].position)
  898.         end
  899.     end
  900. end)
  901.  
  902.  
  903.  
  904.  
  905.  
  906. wait(0.016666666666667)
  907. Player = game:GetService("Players").LocalPlayer
  908. Character = Player.Character
  909. PlayerGui = Player.PlayerGui
  910. Backpack = Player.Backpack
  911. Torso = Character.Torso
  912. Head = Character.Head
  913. Humanoid = Character.Humanoid
  914. LeftArm = Character["Left Arm"]
  915. LeftLeg = Character["Left Leg"]
  916. RightArm = Character["Right Arm"]
  917. RightLeg = Character["Right Leg"]
  918. LS = Torso["Left Shoulder"]
  919. LH = Torso["Left Hip"]
  920. RS = Torso["Right Shoulder"]
  921. RH = Torso["Right Hip"]
  922. Face = Head.face
  923. Neck = Torso.Neck
  924. it = Instance.new
  925. attacktype = 1
  926. vt = Vector3.new
  927. cf = CFrame.new
  928. euler = CFrame.fromEulerAnglesXYZ
  929. angles = CFrame.Angles
  930. cloaked = false
  931. necko = cf(0, 1, 0, -1, 0, 0, 0, 0, 1, 0, 1, 0)
  932. necko2 = cf(0, -0.5, 0, -1, 0, 0, 0, 0, 1, 0, 1, 0)
  933. LHC0 = cf(-1, -1, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
  934. LHC1 = cf(-0.5, 1, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
  935. RHC0 = cf(1, -1, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
  936. RHC1 = cf(0.5, 1, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
  937. RootPart = Character.HumanoidRootPart
  938. RootJoint = RootPart.RootJoint
  939. RootCF = euler(-1.57, 0, 3.14)
  940. attack = false
  941. attackdebounce = false
  942. deb = false
  943. equipped = false
  944. hand = false
  945. MMouse = nil
  946. combo = 0
  947. mana = 100
  948. trispeed = 0.2
  949. attackmode = "none"
  950. local idle = 0
  951. local Anim = "Idle"
  952. local gun = false
  953. local shoot = false
  954. player = nil
  955. mana = 100
  956. mouse = Player:GetMouse()
  957. RSH = nil
  958. RW = Instance.new("Weld")
  959. LW = Instance.new("Weld")
  960. RW.Name = "Right Shoulder"
  961. LW.Name = "Left Shoulder"
  962. LH = Torso["Left Hip"]
  963. RH = Torso["Right Hip"]
  964. TorsoColor = Torso.BrickColor
  965. NoOutline = function(Part)
  966.   Part.TopSurface = 10
  967. end
  968.  
  969. player = Player
  970. ch = Character
  971. RSH = ch.Torso["Right Shoulder"]
  972. LSH = ch.Torso["Left Shoulder"]
  973. RSH.Parent = player.Character.Torso
  974. LSH.Parent = player.Character.Torso
  975. RW.Name = "Right Shoulder"
  976. RW.Part0 = ch.Torso
  977. RW.C0 = cf(1.5, 0.5, 0)
  978. RW.C1 = cf(0, 0.5, 0)
  979. RW.Part1 = ch["Right Arm"]
  980. RW.Parent = nil
  981. LW.Name = "Left Shoulder"
  982. LW.Part0 = ch.Torso
  983. LW.C0 = cf(-1.5, 0.5, 0)
  984. LW.C1 = cf(0, 0.5, 0)
  985. LW.Part1 = ch["Left Arm"]
  986. LW.Parent = nil
  987. Player = game:GetService("Players").LocalPlayer
  988. Character = Player.Character
  989. Mouse = Player:GetMouse()
  990. m = Instance.new("Model", Character)
  991. local Player = game.Players.localPlayer
  992. local Character = Player.Character
  993. local Humanoid = Character.Humanoid
  994. local mouse = Player:GetMouse()
  995. local LeftArm = Character["Left Arm"]
  996. local RightArm = Character["Right Arm"]
  997. local LeftLeg = Character["Left Leg"]
  998. local RightLeg = Character["Right Leg"]
  999. local Head = Character.Head
  1000. local Torso = Character.Torso
  1001. local cam = game.Workspace.CurrentCamera
  1002. local RootPart = Character.HumanoidRootPart
  1003. local equipped = false
  1004. local attack = false
  1005. local Anim = "Idle"
  1006. local idle = 0
  1007. local sprint = false
  1008. local battlestance = false
  1009. local attacktype = 1
  1010. local state = "none"
  1011. local torsovelocity = RootPart.Velocity * Vector3.new(1, 0, 1).magnitude
  1012. local velocity = RootPart.Velocity.y
  1013. local sine = 0
  1014. local change = 1
  1015. local on = false
  1016. local grabbed = false
  1017. local skill1 = false
  1018. local skill2 = false
  1019. local skill3 = false
  1020. local skill4 = false
  1021. local cooldown1 = 0
  1022. local cooldown2 = 0
  1023. local cooldown3 = 0
  1024. local cooldown4 = 0
  1025. local co1 = 0
  1026. local co2 = 0
  1027. local co3 = 0
  1028. local co4 = 0
  1029. local inputserv = game:GetService("UserInputService")
  1030. local typing = false
  1031. local crit = false
  1032. local critchance = 2
  1033. local critdamageaddmin = 3
  1034. local critdamageaddmax = 7
  1035. local maxstamina = 100
  1036. local stamina = 0
  1037. local skill1stam = 0
  1038. local skill2stam = 0
  1039. local skill3stam = 0
  1040. local skill4stam = 0
  1041. local recovermana = 3
  1042. local mindamage = 5
  1043. local maxdamage = 10
  1044. local cf = CFrame.new
  1045. local mr = math.rad
  1046. local angles = CFrame.Angles
  1047. local ud = UDim2.new
  1048. local c3 = Color3.new
  1049. local skillcolorscheme = c3(1, 1, 1)
  1050. local defensevalue = 1
  1051. local speedvalue = 1
  1052. local damagevalue = 1
  1053. local cf = CFrame.new
  1054. local mr = math.rad
  1055. local angles = CFrame.Angles
  1056. local ud = UDim2.new
  1057. local c3 = Color3.new
  1058. local skillcolorscheme = c3(1, 1, 1)
  1059. local scrn = Instance.new("ScreenGui", Player.PlayerGui)
  1060. makeframe = function(par, trans, pos, size, color)
  1061.   local frame = Instance.new("Frame", par)
  1062.   frame.BackgroundTransparency = trans
  1063.   frame.BorderSizePixel = 0
  1064.   frame.Position = pos
  1065.   frame.Size = size
  1066.   frame.BackgroundColor3 = color
  1067.   return frame
  1068. end
  1069.  
  1070. makelabel = function(par, text)
  1071.   local label = Instance.new("TextLabel", par)
  1072.   label.BackgroundTransparency = 1
  1073.   label.Size = ud(1, 0, 1, 0)
  1074.   label.Position = ud(0, 0, 0, 0)
  1075.   label.TextColor3 = c3(255, 255, 255)
  1076.   label.TextStrokeTransparency = 0
  1077.   label.FontSize = Enum.FontSize.Size32
  1078.   label.Font = Enum.Font.SourceSansBold
  1079.   label.BorderSizePixel = 0
  1080.   label.TextScaled = true
  1081.   label.Text = text
  1082. end
  1083.  
  1084. local stats = Instance.new("Folder", Character)
  1085. stats.Name = "Stats"
  1086. local block = Instance.new("BoolValue", stats)
  1087. block.Name = "Block"
  1088. block.Value = false
  1089. local stun = Instance.new("BoolValue", stats)
  1090. stun.Name = "Stun"
  1091. stun.Value = false
  1092. local defense = Instance.new("NumberValue", stats)
  1093. defense.Name = "Defence"
  1094. defense.Value = defensevalue
  1095. local speed = Instance.new("NumberValue", stats)
  1096. speed.Name = "Speed"
  1097. speed.Value = speedvalue
  1098. local damagea = Instance.new("NumberValue", stats)
  1099. damagea.Name = "Damage"
  1100. damagea.Value = damagevalue
  1101. framesk1 = makeframe(scrn, 0.5, ud(0.13, 0, 0.56, 0), ud(0.08, 0, 0.06, 0), c3(1, 1, 0.5))
  1102. bar1 = makeframe(framesk1, 0.5, ud(0, 0, 0, 0), ud(1, 0, 1, 0), c3(1, 1, 0.5))
  1103. ammolabel = Instance.new("TextLabel", framesk1)
  1104. ammolabel.BackgroundTransparency = 1
  1105. ammolabel.Size = ud(1, 0, 1, 0)
  1106. ammolabel.Position = ud(0, 0, 0, 0)
  1107. ammolabel.TextColor3 = c3(255, 255, 255)
  1108. ammolabel.TextStrokeTransparency = 0
  1109. ammolabel.FontSize = Enum.FontSize.Size8
  1110. ammolabel.Font = Enum.Font.SourceSans
  1111. ammolabel.BorderSizePixel = 0
  1112. ammolabel.TextScaled = true
  1113. ammolabel.Text = "Speed [" .. speed.Value .. "]"
  1114. framesk2 = makeframe(scrn, 0.5, ud(0.13, 0, 0.63, 0), ud(0.08, 0, 0.06, 0), c3(1, 0.5, 1))
  1115. bar2 = makeframe(framesk2, 0.5, ud(0, 0, 0, 0), ud(1, 0, 1, 0), c3(0.5, 0.25, 0.25))
  1116. ammolabel2 = Instance.new("TextLabel", framesk2)
  1117. ammolabel2.BackgroundTransparency = 1
  1118. ammolabel2.Size = ud(1, 0, 1, 0)
  1119. ammolabel2.Position = ud(0, 0, 0, 0)
  1120. ammolabel2.TextColor3 = c3(255, 255, 255)
  1121. ammolabel2.TextStrokeTransparency = 0
  1122. ammolabel2.FontSize = Enum.FontSize.Size8
  1123. ammolabel2.Font = Enum.Font.SourceSans
  1124. ammolabel2.BorderSizePixel = 0
  1125. ammolabel2.TextScaled = true
  1126. ammolabel2.Text = "Damage [" .. damagea.Value .. "]"
  1127. framesk3 = makeframe(scrn, 0.5, ud(0.13, 0, 0.7, 0), ud(0.08, 0, 0.06, 0), c3(1, 0.5, 1))
  1128. bar3 = makeframe(framesk3, 0.5, ud(0, 0, 0, 0), ud(1, 0, 1, 0), c3(0.25, 0.25, 0.5))
  1129. ammolabel3 = Instance.new("TextLabel", framesk3)
  1130. ammolabel3.BackgroundTransparency = 1
  1131. ammolabel3.Size = ud(1, 0, 1, 0)
  1132. ammolabel3.Position = ud(0, 0, 0, 0)
  1133. ammolabel3.TextColor3 = c3(255, 255, 255)
  1134. ammolabel3.TextStrokeTransparency = 0
  1135. ammolabel3.FontSize = Enum.FontSize.Size8
  1136. ammolabel3.Font = Enum.Font.SourceSans
  1137. ammolabel3.BorderSizePixel = 0
  1138. ammolabel3.TextScaled = true
  1139. ammolabel3.Text = "Defense [" .. defense.Value .. "]"
  1140. animate = Character:findFirstChild("Animate")
  1141. animate.Disabled = false
  1142. CustomColor = BrickColor.new("Cool yellow")
  1143. Colorpart1 = Torso.BrickColor.r
  1144. Colorpart2 = Torso.BrickColor.g
  1145. Colorpart3 = Torso.BrickColor.b
  1146. local weldBetween = function(a, b)
  1147.   local weldd = Instance.new("ManualWeld")
  1148.   weldd.Part0 = a
  1149.   weldd.Part1 = b
  1150.   weldd.C0 = CFrame.new()
  1151.   weldd.C1 = b.CFrame:inverse() * a.CFrame
  1152.   weldd.Parent = a
  1153.   return weldd
  1154. end
  1155.  
  1156. swait = function(num)
  1157.   if num == 0 or num == nil then
  1158.     game:service("RunService").Stepped:wait(0)
  1159.   else
  1160.     for i = 0, num do
  1161.       game:service("RunService").Stepped:wait(0)
  1162.     end
  1163.   end
  1164. end
  1165.  
  1166. nooutline = function(part)
  1167.   part.TopSurface = 10
  1168. end
  1169.  
  1170. part = function(formfactor, parent, material, reflectance, transparency, brickcolor, name, size)
  1171.   local fp = it("Part")
  1172.   fp.formFactor = formfactor
  1173.   fp.Parent = parent
  1174.   fp.Reflectance = reflectance
  1175.   fp.Transparency = transparency
  1176.   fp.CanCollide = false
  1177.   fp.Locked = true
  1178.   fp.BrickColor = BrickColor.new(tostring(brickcolor))
  1179.   fp.Name = name
  1180.   fp.Size = size
  1181.   fp.Position = Character.Torso.Position
  1182.   nooutline(fp)
  1183.   fp.Material = material
  1184.   fp:BreakJoints()
  1185.   return fp
  1186. end
  1187.  
  1188. mesh = function(Mesh, part, meshtype, meshid, offset, scale)
  1189.   local mesh = it(Mesh)
  1190.   mesh.Parent = part
  1191.   if Mesh == "SpecialMesh" then
  1192.     mesh.MeshType = meshtype
  1193.     mesh.MeshId = meshid
  1194.   end
  1195.   mesh.Offset = offset
  1196.   mesh.Scale = scale
  1197.   return mesh
  1198. end
  1199.  
  1200. weld = function(parent, part0, part1, c0, c1)
  1201.   local weld = it("Weld")
  1202.   weld.Parent = parent
  1203.   weld.Part0 = part0
  1204.   weld.Part1 = part1
  1205.   weld.C0 = c0
  1206.   weld.C1 = c1
  1207.   return weld
  1208. end
  1209.  
  1210. fat = Instance.new("BindableEvent", script)
  1211. fat.Name = "Heartbeat"
  1212. script:WaitForChild("Heartbeat")
  1213. frame = 0.033333333333333
  1214. tf = 0
  1215. allowframeloss = false
  1216. tossremainder = false
  1217. lastframe = tick()
  1218. script.Heartbeat:Fire()
  1219. game:GetService("RunService").Heartbeat:connect(function(s, p)
  1220.   tf = tf + s
  1221.   if frame <= tf then
  1222.     if allowframeloss then
  1223.       script.Heartbeat:Fire()
  1224.       lastframe = tick()
  1225.     else
  1226.       for i = 1, math.floor(tf / frame) do
  1227.         script.Heartbeat:Fire()
  1228.       end
  1229.       lastframe = tick()
  1230.     end
  1231.     if tossremainder then
  1232.       tf = 0
  1233.     else
  1234.       tf = tf - frame * math.floor(tf / frame)
  1235.     end
  1236.   end
  1237. end
  1238. )
  1239. if script.Parent.className ~= "HopperBin" then
  1240.   Tool = Instance.new("HopperBin")
  1241.   Tool.Parent = Backpack
  1242.   Tool.Name = "Flying"
  1243.   script.Parent = Tool
  1244. end
  1245. Bin = script.Parent
  1246. so = function(id, par, vol, pit)
  1247.   coroutine.resume(coroutine.create(function()
  1248.     local sou = Instance.new("Sound", par or workspace)
  1249.     sou.Volume = vol
  1250.     sou.Pitch = pit or 1
  1251.     sou.SoundId = id
  1252.     swait()
  1253.     sou:play()
  1254.     game:GetService("Debris"):AddItem(sou, 6)
  1255.   end
  1256. ))
  1257. end
  1258.  
  1259. local CFrameFromTopBack = function(at, top, back)
  1260.   local right = top:Cross(back)
  1261.   return CFrame.new(at.x, at.y, at.z, right.x, top.x, back.x, right.y, top.y, back.y, right.z, top.z, back.z)
  1262. end
  1263.  
  1264. Triangle = function(a, b, c)
  1265.   local edg1 = c - a:Dot(b - a.unit)
  1266.   local edg2 = a - b:Dot(c - b.unit)
  1267.   local edg3 = b - c:Dot(a - c.unit)
  1268.   if edg1 <= b - a.magnitude and edg1 >= 0 then
  1269.     a = a
  1270.   else
  1271.     -- DECOMPILER ERROR at PC35: Overwrote pending register: R1 in 'AssignReg'
  1272.  
  1273.     if edg2 <= c - b.magnitude and edg2 >= 0 then
  1274.       a = b
  1275.     else
  1276.       -- DECOMPILER ERROR at PC46: Overwrote pending register: R2 in 'AssignReg'
  1277.  
  1278.       -- DECOMPILER ERROR at PC47: Overwrote pending register: R1 in 'AssignReg'
  1279.  
  1280.       if edg3 <= a - c.magnitude and edg3 >= 0 then
  1281.         a = c
  1282.       else
  1283.         assert(false, "unreachable")
  1284.       end
  1285.     end
  1286.   end
  1287.   local len1 = c - a:Dot(b - a.unit)
  1288.   local len2 = b - a.magnitude - len1
  1289.   local width = a + b - a.unit * len1 - c.magnitude
  1290.   local maincf = CFrameFromTopBack(a, b - a:Cross(c - b).unit, -b - a.unit)
  1291.   local list = {}
  1292.   local TrailColor = "Dark grey"
  1293.   if len1 > 0.01 then
  1294.     local w1 = Instance.new("WedgePart", m)
  1295.     game:GetService("Debris"):AddItem(w1, 5)
  1296.     w1.Material = "SmoothPlastic"
  1297.     w1.FormFactor = "Custom"
  1298.     w1.BrickColor = BrickColor.new(TrailColor)
  1299.     w1.Transparency = 0
  1300.     w1.Reflectance = 0
  1301.     w1.Material = "SmoothPlastic"
  1302.     w1.CanCollide = false
  1303.     NoOutline(w1)
  1304.     local sz = Vector3.new(0.2, width, len1)
  1305.     w1.Size = sz
  1306.     local sp = Instance.new("SpecialMesh", w1)
  1307.     sp.MeshType = "Wedge"
  1308.     sp.Scale = Vector3.new(0, 1, 1) * sz / w1.Size
  1309.     w1:BreakJoints()
  1310.     w1.Anchored = true
  1311.     w1.Parent = workspace
  1312.     w1.Transparency = 0.7
  1313.     table.insert(Effects, {w1, "Disappear", 0.01})
  1314.     w1.CFrame = maincf * CFrame.Angles(math.pi, 0, math.pi / 2) * CFrame.new(0, width / 2, len1 / 2)
  1315.     table.insert(list, w1)
  1316.   end
  1317.   do
  1318.     if len2 > 0.01 then
  1319.       local w2 = Instance.new("WedgePart", m)
  1320.       game:GetService("Debris"):AddItem(w2, 5)
  1321.       w2.Material = "SmoothPlastic"
  1322.       w2.FormFactor = "Custom"
  1323.       w2.BrickColor = BrickColor.new(TrailColor)
  1324.       w2.Transparency = 0
  1325.       w2.Reflectance = 0
  1326.       w2.Material = "SmoothPlastic"
  1327.       w2.CanCollide = false
  1328.       NoOutline(w2)
  1329.       local sz = Vector3.new(0.2, width, len2)
  1330.       w2.Size = sz
  1331.       local sp = Instance.new("SpecialMesh", w2)
  1332.       sp.MeshType = "Wedge"
  1333.       sp.Scale = Vector3.new(0, 1, 1) * sz / w2.Size
  1334.       w2:BreakJoints()
  1335.       w2.Anchored = true
  1336.       w2.Parent = workspace
  1337.       w2.Transparency = 0.7
  1338.       table.insert(Effects, {w2, "Disappear", 0.01})
  1339.       w2.CFrame = maincf * CFrame.Angles(math.pi, math.pi, -math.pi / 2) * CFrame.new(0, width / 2, -len1 - len2 / 2)
  1340.       table.insert(list, w2)
  1341.     end
  1342.     do
  1343.       return unpack(list)
  1344.     end
  1345.   end
  1346. end
  1347.  
  1348. rayCast = function(Pos, Dir, Max, Ignore)
  1349.   return game:service("Workspace"):FindPartOnRay(Ray.new(Pos, Dir.unit * (Max or 999.999)), Ignore)
  1350. end
  1351.  
  1352. function clerp(a,b,t)
  1353. local qa = {QuaternionFromCFrame(a)}
  1354. local qb = {QuaternionFromCFrame(b)}
  1355. local ax, ay, az = a.x, a.y, a.z
  1356. local bx, by, bz = b.x, b.y, b.z
  1357. local _t = 1-t
  1358. return QuaternionToCFrame(_t*ax + t*bx, _t*ay + t*by, _t*az + t*bz,QuaternionSlerp(qa, qb, t))
  1359. end
  1360.  
  1361. function QuaternionFromCFrame(cf)
  1362. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  1363. local trace = m00 + m11 + m22
  1364. if trace > 0 then
  1365. local s = math.sqrt(1 + trace)
  1366. local recip = 0.5/s
  1367. return (m21-m12)*recip, (m02-m20)*recip, (m10-m01)*recip, s*0.5
  1368. else
  1369. local i = 0
  1370. if m11 > m00 then
  1371. i = 1
  1372. end
  1373. if m22 > (i == 0 and m00 or m11) then
  1374. i = 2
  1375. end
  1376. if i == 0 then
  1377. local s = math.sqrt(m00-m11-m22+1)
  1378. local recip = 0.5/s
  1379. return 0.5*s, (m10+m01)*recip, (m20+m02)*recip, (m21-m12)*recip
  1380. elseif i == 1 then
  1381. local s = math.sqrt(m11-m22-m00+1)
  1382. local recip = 0.5/s
  1383. return (m01+m10)*recip, 0.5*s, (m21+m12)*recip, (m02-m20)*recip
  1384. elseif i == 2 then
  1385. local s = math.sqrt(m22-m00-m11+1)
  1386. local recip = 0.5/s return (m02+m20)*recip, (m12+m21)*recip, 0.5*s, (m10-m01)*recip
  1387. end
  1388. end
  1389. end
  1390.  
  1391. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  1392. local xs, ys, zs = x + x, y + y, z + z
  1393. local wx, wy, wz = w*xs, w*ys, w*zs
  1394. local xx = x*xs
  1395. local xy = x*ys
  1396. local xz = x*zs
  1397. local yy = y*ys
  1398. local yz = y*zs
  1399. local zz = z*zs
  1400. 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))
  1401. end
  1402.  
  1403. function QuaternionSlerp(a, b, t)
  1404. local cosTheta = a[1]*b[1] + a[2]*b[2] + a[3]*b[3] + a[4]*b[4]
  1405. local startInterp, finishInterp;
  1406. if cosTheta >= 0.0001 then
  1407. if (1 - cosTheta) > 0.0001 then
  1408. local theta = math.acos(cosTheta)
  1409. local invSinTheta = 1/math.sin(theta)
  1410. startInterp = math.sin((1-t)*theta)*invSinTheta
  1411. finishInterp = math.sin(t*theta)*invSinTheta  
  1412. else
  1413. startInterp = 1-t
  1414. finishInterp = t
  1415. end
  1416. else
  1417. if (1+cosTheta) > 0.0001 then
  1418. local theta = math.acos(-cosTheta)
  1419. local invSinTheta = 1/math.sin(theta)
  1420. startInterp = math.sin((t-1)*theta)*invSinTheta
  1421. finishInterp = math.sin(t*theta)*invSinTheta
  1422. else
  1423. startInterp = t-1
  1424. finishInterp = t
  1425. end
  1426. end
  1427. 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
  1428. end
  1429. rayCast = function(Pos, Dir, Max, Ignore)
  1430.   return game:service("Workspace"):FindPartOnRay(Ray.new(Pos, Dir.unit * (Max or 999.999)), Ignore)
  1431. end
  1432.  
  1433. makegui = function(cframe, text)
  1434.   local a = math.random(-10, 10) / 100
  1435.   local c = Instance.new("Part")
  1436.   c.Transparency = 1
  1437.   Instance.new("BodyGyro").Parent = c
  1438.   c.Parent = workspace
  1439.   c.CFrame = CFrame.new(cframe.p + Vector3.new(0, 1.5, 0))
  1440.   local f = Instance.new("BodyPosition")
  1441.   f.P = 2000
  1442.   f.D = 100
  1443.   f.maxForce = Vector3.new(math.huge, math.huge, math.huge)
  1444.   f.position = c.Position + Vector3.new(0, 3, 0)
  1445.   f.Parent = c
  1446.   game:GetService("Debris"):AddItem(c, 6.5)
  1447.   c.CanCollide = false
  1448.   c.Parent = workspace
  1449.   c.CanCollide = false
  1450.   local bg = Instance.new("BillboardGui", c)
  1451.   bg.Adornee = c
  1452.   bg.Size = UDim2.new(1, 0, 1, 0)
  1453.   bg.StudsOffset = Vector3.new(0, 0, 0)
  1454.   bg.AlwaysOnTop = false
  1455.   local tl = Instance.new("TextLabel", bg)
  1456.   tl.BackgroundTransparency = 1
  1457.   tl.Size = UDim2.new(1, 0, 1, 0)
  1458.   tl.Text = text
  1459.   tl.Font = "SourceSansBold"
  1460.   tl.FontSize = "Size42"
  1461.   if crit == true then
  1462.     tl.TextColor3 = Color3.new(0.70588235294118, 0, 0)
  1463.   else
  1464.     tl.TextColor3 = Color3.new(255, 0.70588235294118, 0.2)
  1465.   end
  1466.   tl.TextStrokeTransparency = 0
  1467.   tl.TextScaled = true
  1468.   tl.TextWrapped = true
  1469.   coroutine.wrap(function()
  1470.     wait(2)
  1471.     for i = 1, 10 do
  1472.       fat.Event:wait()
  1473.       c.Transparency = 1
  1474.       tl.TextTransparency = tl.TextTransparency + 0.1
  1475.     end
  1476.   end
  1477. )()
  1478. end
  1479.  
  1480. Damagefunc = function(hit, minim, maxim, knockback, Type, Property, Delay, KnockbackType, decreaseblock)
  1481.   if hit.Parent == nil then
  1482.     return
  1483.   end
  1484.   h = hit.Parent:FindFirstChild("Humanoid")
  1485.   for _,v in pairs(hit.Parent:children()) do
  1486.     if v:IsA("Humanoid") then
  1487.       h = v
  1488.     end
  1489.   end
  1490.   if hit.Parent.Parent:FindFirstChild("Torso") ~= nil then
  1491.     h = hit.Parent.Parent:FindFirstChild("Humanoid")
  1492.   end
  1493.   if hit.Parent.className == "Hat" then
  1494.     hit = hit.Parent.Parent:findFirstChild("Head")
  1495.   end
  1496.   if h ~= nil and hit.Parent.Name ~= Character.Name and hit.Parent:FindFirstChild("Torso") ~= nil then
  1497.     if hit.Parent:findFirstChild("DebounceHit") ~= nil and hit.Parent.DebounceHit.Value == true then
  1498.       return
  1499.     end
  1500.     blocked = false
  1501.     block = hit.Parent:findFirstChild("Block")
  1502.     if block ~= nil then
  1503.       print(block.className)
  1504.       if block.className == "NumberValue" and block.Value > 0 then
  1505.         blocked = true
  1506.         if decreaseblock == nil then
  1507.           block.Value = block.Value - 1
  1508.         end
  1509.       end
  1510.       if block.className == "IntValue" and block.Value > 0 then
  1511.         blocked = true
  1512.         if decreaseblock ~= nil then
  1513.           block.Value = block.Value - 1
  1514.         end
  1515.       end
  1516.     end
  1517.     if blocked == false then
  1518.       local D = math.random(minim, maxim) * damagea.Value
  1519.       if h.Parent:FindFirstChild("Stats") then
  1520.         D = D / h.Parent:FindFirstChild("Stats").Defence.Value
  1521.       else
  1522.       end
  1523.       if not h.Parent:FindFirstChild("Stats") then
  1524.         do
  1525.           h.Health = h.Health - D
  1526.           makegui(hit.Parent.Head.CFrame, tostring(math.floor(D + 0.5)))
  1527.           local D = math.random(minim, maxim) * damagea.Value
  1528.           if h.Parent:FindFirstChild("Stats") then
  1529.             D = D / h.Parent:FindFirstChild("Stats").Defence.Value
  1530.           else
  1531.           end
  1532.           if not h.Parent:FindFirstChild("Stats") then
  1533.             do
  1534.               h.Health = h.Health - D / 2
  1535.               makegui(hit.Parent.Head.CFrame, tostring(math.floor(D + 0.5)))
  1536.               if Type == "Knockdown" then
  1537.                 humanoid = hit.Parent.Humanoid
  1538.                 humanoid.PlatformStand = true
  1539.                 coroutine.resume(coroutine.create(function(Humanoid)
  1540.     fat.Event:wait()
  1541.     Humanoid.PlatformStand = false
  1542.   end
  1543. ), humanoid)
  1544.                 local angle = hit.Position - (Property.Position + Vector3.new(0, 0, 0)).unit
  1545.                 local bodvol = Instance.new("BodyVelocity")
  1546.                 bodvol.velocity = angle * knockback
  1547.                 bodvol.P = 5000
  1548.                 bodvol.maxForce = Vector3.new(8000, 8000, 8000)
  1549.                 bodvol.Parent = hit
  1550.                 rl = Instance.new("BodyAngularVelocity")
  1551.                 rl.P = 3000
  1552.                 rl.maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000
  1553.                 rl.angularvelocity = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10))
  1554.                 rl.Parent = hit
  1555.                 game:GetService("Debris"):AddItem(bodvol, 0.5)
  1556.                 game:GetService("Debris"):AddItem(rl, 0.5)
  1557.               else
  1558.                 do
  1559.                   if Type == "Normal" then
  1560.                     so("http://roblox.com/asset/?id=392592460", hit, 1, math.random(80, 120) / 100)
  1561.                     vp = Instance.new("BodyVelocity")
  1562.                     vp.P = 500
  1563.                     vp.maxForce = Vector3.new(math.huge, 0, math.huge)
  1564.                     if KnockbackType == 1 then
  1565.                       vp.velocity = Property.CFrame.lookVector * knockback + Property.Velocity / 1.05
  1566.                     else
  1567.                       if KnockbackType == 2 then
  1568.                         vp.velocity = Property.CFrame.lookVector * knockback
  1569.                       end
  1570.                     end
  1571.                     if knockback > 0 then
  1572.                       vp.Parent = hit.Parent.Torso
  1573.                     end
  1574.                     game:GetService("Debris"):AddItem(vp, 0.5)
  1575.                   else
  1576.                     if Type == "MovementDebuff" then
  1577.                       coroutine.resume(coroutine.create(function()
  1578.     hit.Parent.Humanoid.WalkSpeed = hit.Parent.Humanoid.WalkSpeed - 0.2
  1579.     speed.Value = speed.Value + 0.2
  1580.     Humanoid.WalkSpeed = 16 * speed.Value
  1581.     wait(1)
  1582.     hit.Parent.Humanoid.WalkSpeed = hit.Parent.Humanoid.WalkSpeed + 0.2
  1583.     speed.Value = speed.Value - 0.2
  1584.     Humanoid.WalkSpeed = 16 * speed.Value
  1585.   end
  1586. ))
  1587.                       vp = Instance.new("BodyVelocity")
  1588.                       vp.P = 500
  1589.                       vp.maxForce = Vector3.new(math.huge, 0, math.huge)
  1590.                       if KnockbackType == 1 then
  1591.                         vp.velocity = Property.CFrame.lookVector * knockback + Property.Velocity / 1.05
  1592.                       else
  1593.                         if KnockbackType == 2 then
  1594.                           vp.velocity = Property.CFrame.lookVector * knockback
  1595.                         end
  1596.                       end
  1597.                       if knockback > 0 then
  1598.                         vp.Parent = hit.Parent.Torso
  1599.                       end
  1600.                       game:GetService("Debris"):AddItem(vp, 0.5)
  1601.                     else
  1602.                       if Type == "CurseAura" then
  1603.                         coroutine.resume(coroutine.create(function()
  1604.     savethewalkspeed = hit.Parent.Humanoid.WalkSpeed
  1605.     hit.Parent.Humanoid.WalkSpeed = 0
  1606.     wait(0.25)
  1607.     hit.Parent.Humanoid.WalkSpeed = savethewalkspeed
  1608.   end
  1609. ))
  1610.                         vp = Instance.new("BodyVelocity")
  1611.                         vp.P = 500
  1612.                         vp.maxForce = Vector3.new(math.huge, 0, math.huge)
  1613.                         if KnockbackType == 1 then
  1614.                           vp.velocity = Property.CFrame.lookVector * knockback + Property.Velocity / 1.05
  1615.                         else
  1616.                           if KnockbackType == 2 then
  1617.                             vp.velocity = Property.CFrame.lookVector * knockback
  1618.                           end
  1619.                         end
  1620.                         if knockback > 0 then
  1621.                           vp.Parent = hit.Parent.Torso
  1622.                         end
  1623.                         game:GetService("Debris"):AddItem(vp, 0.5)
  1624.                       else
  1625.                         if Type == "SlashLifeSteal2" then
  1626.                           so("http://www.roblox.com/asset/?id=344936315", hit, 1, math.random(100, 200) / 100)
  1627.                           Humanoid.Health = Humanoid.Health + math.random(2, 3) / 2.5
  1628.                           vp = Instance.new("BodyVelocity")
  1629.                           vp.P = 500
  1630.                           vp.maxForce = Vector3.new(math.huge, 0, math.huge)
  1631.                           if KnockbackType == 1 then
  1632.                             vp.velocity = Property.CFrame.lookVector * knockback + Property.Velocity / 1.05
  1633.                           else
  1634.                             if KnockbackType == 2 then
  1635.                               vp.velocity = Property.CFrame.lookVector * knockback
  1636.                             end
  1637.                           end
  1638.                           if knockback > 0 then
  1639.                             vp.Parent = hit.Parent.Torso
  1640.                           end
  1641.                           game:GetService("Debris"):AddItem(vp, 0.5)
  1642.                         else
  1643.                           if Type == "BlackHoleDamage" then
  1644.                             Humanoid.Health = Humanoid.Health + math.random(2, 4) / 5
  1645.                             floatingvelocity = Instance.new("BodyVelocity")
  1646.                             floatingvelocity.Parent = hit.Parent.Torso
  1647.                             floatingvelocity.Velocity = Vector3.new(0, math.random(2.5, 5), 0)
  1648.                             game:GetService("Debris"):AddItem(floatingvelocity, 1)
  1649.                           else
  1650.                             if Type == "BlackHoleDamage2" then
  1651.                               vp = Instance.new("BodyVelocity")
  1652.                               vp.P = 500
  1653.                               vp.maxForce = Vector3.new(math.huge, 0, math.huge)
  1654.                               if KnockbackType == 1 then
  1655.                                 vp.velocity = Property.CFrame.lookVector * knockback + Property.Velocity / 1.05
  1656.                               else
  1657.                                 if KnockbackType == 2 then
  1658.                                   vp.velocity = Property.CFrame.lookVector * knockback
  1659.                                 end
  1660.                               end
  1661.                               if knockback > 0 then
  1662.                                 vp.Parent = hit.Parent.Torso
  1663.                               end
  1664.                               game:GetService("Debris"):AddItem(vp, 0.5)
  1665.                             else
  1666.                               if Type == "Up" then
  1667.                                 local bodyVelocity = Instance.new("BodyVelocity")
  1668.                                 bodyVelocity.velocity = vt(0, 60, 0)
  1669.                                 bodyVelocity.P = 5000
  1670.                                 bodyVelocity.maxForce = Vector3.new(8000, 8000, 8000)
  1671.                                 bodyVelocity.Parent = hit
  1672.                                 game:GetService("Debris"):AddItem(bodyVelocity, 1)
  1673.                                 rl = Instance.new("BodyAngularVelocity")
  1674.                                 rl.P = 3000
  1675.                                 rl.maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000
  1676.                                 rl.angularvelocity = Vector3.new(math.random(-30, 30), math.random(-30, 30), math.random(-30, 30))
  1677.                                 rl.Parent = hit
  1678.                                 game:GetService("Debris"):AddItem(rl, 0.5)
  1679.                               else
  1680.                                 do
  1681.                                   if Type == "Snare" then
  1682.                                     wait()
  1683.                                     bp = Instance.new("BodyPosition")
  1684.                                     bp.P = 2000
  1685.                                     bp.D = 100
  1686.                                     bp.maxForce = Vector3.new(math.huge, math.huge, math.huge)
  1687.                                     bp.position = hit.Parent.Torso.Position
  1688.                                     bp.Parent = hit.Parent.Torso
  1689.                                     game:GetService("Debris"):AddItem(bp, 1)
  1690.                                   else
  1691.                                     if Type == "Target" then
  1692.                                       so("http://www.roblox.com/asset/?id=199144144", hit, 1, math.random(150, 200) / 100)
  1693.                                       vp = Instance.new("BodyVelocity")
  1694.                                       vp.P = 500
  1695.                                       vp.maxForce = Vector3.new(math.huge, 0, math.huge)
  1696.                                       if KnockbackType == 1 then
  1697.                                         vp.velocity = Property.CFrame.lookVector * knockback + Property.Velocity / 1.05
  1698.                                       else
  1699.                                         if KnockbackType == 2 then
  1700.                                           vp.velocity = Property.CFrame.lookVector * knockback
  1701.                                         end
  1702.                                       end
  1703.                                       if knockback > 0 then
  1704.                                         vp.Parent = hit.Parent.Torso
  1705.                                       end
  1706.                                       game:GetService("Debris"):AddItem(vp, 0.5)
  1707.                                     end
  1708.                                   end
  1709.                                   debounce = Instance.new("BoolValue")
  1710.                                   debounce.Name = "DebounceHit"
  1711.                                   debounce.Parent = hit.Parent
  1712.                                   debounce.Value = true
  1713.                                   game:GetService("Debris"):AddItem(debounce, Delay)
  1714.                                   c = Instance.new("ObjectValue")
  1715.                                   c.Name = "creator"
  1716.                                   c.Value = Player
  1717.                                   c.Parent = h
  1718.                                   game:GetService("Debris"):AddItem(c, 0.5)
  1719.                                   CRIT = false
  1720.                                   hitDeb = true
  1721.                                   AttackPos = 6
  1722.                                 end
  1723.                               end
  1724.                             end
  1725.                           end
  1726.                         end
  1727.                       end
  1728.                     end
  1729.                   end
  1730.                 end
  1731.               end
  1732.             end
  1733.           end
  1734.         end
  1735.       end
  1736.     end
  1737.   end
  1738. end
  1739.  
  1740. MagniDamage = function(Part, magni, mindam, maxdam, knock, Type)
  1741.   for _,c in pairs(workspace:children()) do
  1742.     local hum = c:findFirstChild("Humanoid")
  1743.     if hum ~= nil then
  1744.       local head = c:findFirstChild("Torso")
  1745.       if head ~= nil then
  1746.         local targ = head.Position - Part.Position
  1747.         local mag = targ.magnitude
  1748.         if mag <= magni and c.Name ~= Player.Name then
  1749.           Damagefunc(head, mindam, maxdam, knock, Type, RootPart, 0.2, 1, 3, 1)
  1750.         end
  1751.       end
  1752.     end
  1753.   end
  1754. end
  1755.  
  1756. Lightning = function(p0, p1, tym, ofs, brickcolor, th, tra, last)
  1757.   local magz = p0 - p1.magnitude
  1758.   local curpos = p0
  1759.   local trz = {-ofs, ofs}
  1760.   for i = 1, tym do
  1761.     local li = Instance.new("Part", workspace)
  1762.     do
  1763.       li.TopSurface = 0
  1764.       li.BottomSurface = 0
  1765.       li.Anchored = true
  1766.       li.Transparency = tra or 0.4
  1767.       li.BrickColor = brickcolor
  1768.       li.formFactor = "Custom"
  1769.       li.CanCollide = false
  1770.       li.Size = Vector3.new(th, th, magz / tym)
  1771.       local ofz = Vector3.new(trz[math.random(1, 2)], trz[math.random(1, 2)], trz[math.random(1, 2)])
  1772.       local trolpos = CFrame.new(curpos, p1) * CFrame.new(0, 0, magz / tym).p + ofz
  1773.       if tym == i then
  1774.         local magz2 = curpos - p1.magnitude
  1775.         li.Size = Vector3.new(th, th, magz2)
  1776.         li.CFrame = CFrame.new(curpos, p1) * CFrame.new(0, 0, -magz2 / 2)
  1777.       else
  1778.         do
  1779.           do
  1780.             li.CFrame = CFrame.new(curpos, trolpos) * CFrame.new(0, 0, magz / tym / 2)
  1781.             curpos = li.CFrame * CFrame.new(0, 0, magz / tym / 2).p
  1782.             game.Debris:AddItem(li, last)
  1783.             coroutine.resume(coroutine.create(function()
  1784.     while li.Transparency ~= 1 do
  1785.       for i = 0, 1, last do
  1786.         fat.Event:wait()
  1787.         li.Transparency = li.Transparency + 0.1 / last
  1788.       end
  1789.     end
  1790.   end
  1791. ))
  1792.           end
  1793.           -- DECOMPILER ERROR at PC134: LeaveBlock: unexpected jumping out IF_ELSE_STMT
  1794.  
  1795.           -- DECOMPILER ERROR at PC134: LeaveBlock: unexpected jumping out IF_STMT
  1796.  
  1797.           -- DECOMPILER ERROR at PC134: LeaveBlock: unexpected jumping out DO_STMT
  1798.  
  1799.         end
  1800.       end
  1801.     end
  1802.   end
  1803. end
  1804.  
  1805. RainbowLightning = function(p0, p1, tym, ofs, th, tra, last)
  1806.   local rainbowcolor = BrickColor.new(0)
  1807.   local magz = p0 - p1.magnitude
  1808.   local curpos = p0
  1809.   local trz = {-ofs, ofs}
  1810.   for i = 1, tym do
  1811.     local li = Instance.new("Part", workspace)
  1812.     do
  1813.       li.TopSurface = 0
  1814.       li.BottomSurface = 0
  1815.       li.Anchored = true
  1816.       li.Transparency = tra or 0.4
  1817.       li.BrickColor = rainbowcolor
  1818.       li.Material = "Neon"
  1819.       li.formFactor = "Custom"
  1820.       li.CanCollide = false
  1821.       li.Size = Vector3.new(th, th, magz / tym)
  1822.       local ofz = Vector3.new(trz[math.random(1, 2)], trz[math.random(1, 2)], trz[math.random(1, 2)])
  1823.       local trolpos = CFrame.new(curpos, p1) * CFrame.new(0, 0, magz / tym).p + ofz
  1824.       if tym == i then
  1825.         local magz2 = curpos - p1.magnitude
  1826.         li.Size = Vector3.new(th, th, magz2)
  1827.         li.CFrame = CFrame.new(curpos, p1) * CFrame.new(-1.57, 0, -magz2 / 2)
  1828.       else
  1829.         do
  1830.           do
  1831.             li.CFrame = CFrame.new(curpos, trolpos) * CFrame.new(-1.57, 0, magz / tym / 2)
  1832.             curpos = li.CFrame * CFrame.new(0, 0, magz / tym / 2).p
  1833.             game.Debris:AddItem(li, last)
  1834.             coroutine.resume(coroutine.create(function()
  1835.     while li.Parent ~= nil do
  1836.       wait()
  1837.       rainbowcolor = BrickColor.new(23)
  1838.       wait()
  1839.       rainbowcolor = BrickColor.new(107)
  1840.       wait()
  1841.       rainbowcolor = BrickColor.new(37)
  1842.       wait()
  1843.       rainbowcolor = BrickColor.new(119)
  1844.       wait()
  1845.       rainbowcolor = BrickColor.new(24)
  1846.       wait()
  1847.       rainbowcolor = BrickColor.new(106)
  1848.       wait()
  1849.       rainbowcolor = BrickColor.new(21)
  1850.       wait()
  1851.       rainbowcolor = BrickColor.new(104)
  1852.     end
  1853.   end
  1854. ))
  1855.             coroutine.resume(coroutine.create(function()
  1856.     while li.Transparency ~= 1 do
  1857.       for i = 0, 1, last do
  1858.         fat.Event:wait()
  1859.         li.Transparency = li.Transparency + 0.1 / last
  1860.         li.BrickColor = rainbowcolor
  1861.       end
  1862.     end
  1863.     do
  1864.       li.Parent = nil
  1865.     end
  1866.   end
  1867. ))
  1868.           end
  1869.           -- DECOMPILER ERROR at PC149: LeaveBlock: unexpected jumping out IF_ELSE_STMT
  1870.  
  1871.           -- DECOMPILER ERROR at PC149: LeaveBlock: unexpected jumping out IF_STMT
  1872.  
  1873.           -- DECOMPILER ERROR at PC149: LeaveBlock: unexpected jumping out DO_STMT
  1874.  
  1875.         end
  1876.       end
  1877.     end
  1878.   end
  1879. end
  1880.  
  1881. JumpEffect = function(brickcolor, cframe, x1, y1, z1, x2, y2, z2, delay)
  1882.   local prt = part(3, workspace, "SmoothPlastic", 0, 0, brickcolor, "Effect", vt(0.5, 0.5, 0.5))
  1883.   prt.Anchored = true
  1884.   prt.CanCollide = false
  1885.   prt.CFrame = cframe * angles(math.rad(90), 0, 0)
  1886.   local msh = mesh("SpecialMesh", prt, "FileMesh", "http://www.roblox.com/asset/?id=3270017", vt(0, 0, 0), vt(x1, y1, z1))
  1887.   game:GetService("Debris"):AddItem(prt, 10)
  1888.   coroutine.resume(coroutine.create(function(Part, Mesh)
  1889.     for i = 0, 1, delay do
  1890.       fat.Event:wait()
  1891.       Part.CFrame = Part.CFrame
  1892.       Part.Transparency = i
  1893.       Mesh.Scale = Mesh.Scale + vt(x2, y2, z2)
  1894.     end
  1895.     Part:Destroy()
  1896.   end
  1897. ), prt, msh)
  1898. end
  1899.  
  1900. Shockwave2 = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  1901.   local prt = part(3, workspace, "SmoothPlastic", 0, 0, brickcolor, "Effect", vt(0.5, 0.5, 0.5))
  1902.   prt.Anchored = true
  1903.   prt.CFrame = cframe
  1904.   local msh = mesh("SpecialMesh", prt, "FileMesh", "http://www.roblox.com/asset/?id=20329976", vt(0, 0, 0), vt(x1, y1, z1))
  1905.   game:GetService("Debris"):AddItem(prt, 4)
  1906.   coroutine.resume(coroutine.create(function(Part, Mesh)
  1907.     for i = 0, 1, delay do
  1908.       fat.Event:wait()
  1909.       Part.CFrame = Part.CFrame
  1910.       Part.Transparency = i
  1911.       Mesh.Scale = Mesh.Scale + vt(x3, y3, z3)
  1912.     end
  1913.     Part:Destroy()
  1914.   end
  1915. ), prt, msh)
  1916. end
  1917.  
  1918. OrbEffect = function(brickcolor, cframe, x1, y1, z1, x2, y2, z2, delay)
  1919.   local prt = part(3, workspace, "SmoothPlastic", 0, 0, brickcolor, "Effect", vt(0.5, 0.5, 0.5))
  1920.   prt.Anchored = true
  1921.   prt.CanCollide = false
  1922.   prt.CFrame = cframe * angles(math.rad(math.random(-90, 90)), math.rad(math.random(-90, 90)), math.rad(math.random(-90, 90)))
  1923.   local msh = mesh("SpecialMesh", prt, "FileMesh", "http://www.roblox.com/asset/?id=3270017", vt(0, 0, 0), vt(x1, y1, z1))
  1924.   game:GetService("Debris"):AddItem(prt, 10)
  1925.   coroutine.resume(coroutine.create(function(Part, Mesh)
  1926.     for i = 0, 1, delay do
  1927.       fat.Event:wait()
  1928.       Part.CFrame = Part.CFrame
  1929.       Part.Transparency = i
  1930.       Mesh.Scale = Mesh.Scale + vt(x2, y2, z2)
  1931.     end
  1932.     Part:Destroy()
  1933.   end
  1934. ), prt, msh)
  1935. end
  1936.  
  1937. BlockShockwave = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  1938.   local prt = part(3, workspace, "SmoothPlastic", 0, 0, brickcolor, "Effect", vt(0.5, 0.5, 0.5))
  1939.   prt.Anchored = true
  1940.   prt.CFrame = cframe * angles(math.rad(math.random(-90, 90)), math.rad(math.random(-90, 90)), math.rad(math.random(-90, 90)))
  1941.   local msh = mesh("BlockMesh", prt, "", "", vt(0, 0, 0), vt(x1, y1, z1))
  1942.   game:GetService("Debris"):AddItem(prt, 10)
  1943.   coroutine.resume(coroutine.create(function(Part, Mesh)
  1944.     for i = 0, 1, delay do
  1945.       fat.Event:wait()
  1946.       Part.CFrame = Part.CFrame * angles(math.rad(math.random(-90, 90)), math.rad(math.random(-90, 90)), math.rad(math.random(-90, 90)))
  1947.       Part.Transparency = i
  1948.       Mesh.Scale = Mesh.Scale + vt(x3, y3, z3)
  1949.     end
  1950.     Part:Destroy()
  1951.   end
  1952. ), prt, msh)
  1953. end
  1954.  
  1955. RainbowBlockShockwave = function(cframe, x1, y1, z1, x3, y3, z3, delay)
  1956.   local rainbowcolor = BrickColor.new(0)
  1957.   local prt = part(3, workspace, "SmoothPlastic", 0, 0, rainbowcolor, "Effect", vt(0.5, 0.5, 0.5))
  1958.   prt.Anchored = true
  1959.   prt.CFrame = cframe * angles(math.rad(math.random(-90, 90)), math.rad(math.random(-90, 90)), math.rad(math.random(-90, 90)))
  1960.   prt.Material = "Neon"
  1961.   local msh = mesh("BlockMesh", prt, "", "", vt(0, 0, 0), vt(x1, y1, z1))
  1962.   game:GetService("Debris"):AddItem(prt, 5)
  1963.   coroutine.resume(coroutine.create(function()
  1964.     while prt.Parent ~= nil do
  1965.       wait()
  1966.       rainbowcolor = BrickColor.new(23)
  1967.       wait()
  1968.       rainbowcolor = BrickColor.new(107)
  1969.       wait()
  1970.       rainbowcolor = BrickColor.new(37)
  1971.       wait()
  1972.       rainbowcolor = BrickColor.new(119)
  1973.       wait()
  1974.       rainbowcolor = BrickColor.new(24)
  1975.       wait()
  1976.       rainbowcolor = BrickColor.new(106)
  1977.       wait()
  1978.       rainbowcolor = BrickColor.new(21)
  1979.       wait()
  1980.       rainbowcolor = BrickColor.new(104)
  1981.     end
  1982.   end
  1983. ))
  1984.   coroutine.resume(coroutine.create(function(Part, Mesh)
  1985.     for i = 0, 1, delay do
  1986.       fat.Event:wait()
  1987.       Part.CFrame = Part.CFrame * angles(math.rad(math.random(-90, 90)), math.rad(math.random(-90, 90)), math.rad(math.random(-90, 90)))
  1988.       Part.Transparency = i
  1989.       Part.BrickColor = rainbowcolor
  1990.       Mesh.Scale = Mesh.Scale + vt(x3, y3, z3)
  1991.     end
  1992.     Part:Destroy()
  1993.   end
  1994. ), prt, msh)
  1995. end
  1996.  
  1997. RainbowCylinderShockwave = function(cframe, x1, y1, z1, x3, y3, z3, delay)
  1998.   local rainbowcolor = BrickColor.new(0)
  1999.   local prt = part(3, workspace, "SmoothPlastic", 0, 0, brickcolor, "Effect", vt(0.5, 0.5, 0.5))
  2000.   prt.Anchored = true
  2001.   prt.CFrame = cframe
  2002.   prt.Material = "Neon"
  2003.   local msh = mesh("CylinderMesh", prt, "", "", vt(0, 0, 0), vt(x1, y1, z1))
  2004.   game:GetService("Debris"):AddItem(prt, 5)
  2005.   coroutine.resume(coroutine.create(function()
  2006.     while prt.Parent ~= nil do
  2007.       wait()
  2008.       rainbowcolor = BrickColor.new(23)
  2009.       wait()
  2010.       rainbowcolor = BrickColor.new(107)
  2011.       wait()
  2012.       rainbowcolor = BrickColor.new(37)
  2013.       wait()
  2014.       rainbowcolor = BrickColor.new(119)
  2015.       wait()
  2016.       rainbowcolor = BrickColor.new(24)
  2017.       wait()
  2018.       rainbowcolor = BrickColor.new(106)
  2019.       wait()
  2020.       rainbowcolor = BrickColor.new(21)
  2021.       wait()
  2022.       rainbowcolor = BrickColor.new(104)
  2023.     end
  2024.   end
  2025. ))
  2026.   coroutine.resume(coroutine.create(function(Part, Mesh)
  2027.     for i = 0, 1, delay do
  2028.       fat.Event:wait()
  2029.       Part.BrickColor = rainbowcolor
  2030.       Part.Transparency = i
  2031.       Mesh.Scale = Mesh.Scale + vt(x3, y3, z3)
  2032.     end
  2033.     Part:Destroy()
  2034.   end
  2035. ), prt, msh)
  2036. end
  2037.  
  2038. RainbowOrbEffect = function(cframe, x1, y1, z1, x2, y2, z2, delay)
  2039.   local rainbowcolor = BrickColor.new(0)
  2040.   local prt = part(3, workspace, "SmoothPlastic", 0, 0, brickcolor, "Effect", vt(0.5, 0.5, 0.5))
  2041.   prt.Anchored = true
  2042.   prt.CanCollide = false
  2043.   prt.CFrame = cframe * angles(math.rad(math.random(-90, 90)), math.rad(math.random(-90, 90)), math.rad(math.random(-90, 90)))
  2044.   local msh = mesh("SpecialMesh", prt, "FileMesh", "http://www.roblox.com/asset/?id=3270017", vt(0, 0, 0), vt(x1, y1, z1))
  2045.   game:GetService("Debris"):AddItem(prt, 5)
  2046.   coroutine.resume(coroutine.create(function()
  2047.     while prt.Parent ~= nil do
  2048.       wait()
  2049.       rainbowcolor = BrickColor.new(23)
  2050.       wait()
  2051.       rainbowcolor = BrickColor.new(107)
  2052.       wait()
  2053.       rainbowcolor = BrickColor.new(37)
  2054.       wait()
  2055.       rainbowcolor = BrickColor.new(119)
  2056.       wait()
  2057.       rainbowcolor = BrickColor.new(24)
  2058.       wait()
  2059.       rainbowcolor = BrickColor.new(106)
  2060.       wait()
  2061.       rainbowcolor = BrickColor.new(21)
  2062.       wait()
  2063.       rainbowcolor = BrickColor.new(104)
  2064.     end
  2065.   end
  2066. ))
  2067.   coroutine.resume(coroutine.create(function(Part, Mesh)
  2068.     for i = 0, 1, delay do
  2069.       fat.Event:wait()
  2070.       Part.CFrame = Part.CFrame
  2071.       Part.BrickColor = rainbowcolor
  2072.       Part.Transparency = i
  2073.       Mesh.Scale = Mesh.Scale + vt(x2, y2, z2)
  2074.     end
  2075.     Part:Destroy()
  2076.   end
  2077. ), prt, msh)
  2078. end
  2079.  
  2080. RainbowStar = function(cframe, x1, y1, z1, x2, y2, z2, delay)
  2081.   local rainbowcolor = BrickColor.new(23)
  2082.   local prt = part(3, workspace, "SmoothPlastic", 0, 0, brickcolor, "Effect", vt(0.5, 0.5, 0.5))
  2083.   prt.Anchored = true
  2084.   prt.CanCollide = false
  2085.   prt.CFrame = cframe
  2086.   local msh = mesh("SpecialMesh", prt, "FileMesh", "http://www.roblox.com/asset/?id=120647846", vt(0, 0, 0), vt(x1, y1, z1))
  2087.   game:GetService("Debris"):AddItem(prt, 5)
  2088.   coroutine.resume(coroutine.create(function()
  2089.     while prt.Parent ~= nil do
  2090.       wait()
  2091.       rainbowcolor = BrickColor.new(23)
  2092.       wait()
  2093.       rainbowcolor = BrickColor.new(107)
  2094.       wait()
  2095.       rainbowcolor = BrickColor.new(37)
  2096.       wait()
  2097.       rainbowcolor = BrickColor.new(119)
  2098.       wait()
  2099.       rainbowcolor = BrickColor.new(24)
  2100.       wait()
  2101.       rainbowcolor = BrickColor.new(106)
  2102.       wait()
  2103.       rainbowcolor = BrickColor.new(21)
  2104.       wait()
  2105.       rainbowcolor = BrickColor.new(104)
  2106.     end
  2107.   end
  2108. ))
  2109.   coroutine.resume(coroutine.create(function(Part, Mesh)
  2110.     for i = 0, 1, delay do
  2111.       fat.Event:wait()
  2112.       Part.CFrame = Part.CFrame
  2113.       Part.BrickColor = rainbowcolor
  2114.       Part.Transparency = i
  2115.       Mesh.Scale = Mesh.Scale + vt(x2, y2, z2)
  2116.     end
  2117.     Part:Destroy()
  2118.   end
  2119. ), prt, msh)
  2120. end
  2121.  
  2122. RainbowSphereShockwave = function(cframe, x1, y1, z1, x3, y3, z3, delay)
  2123.   local rainbowcolor = BrickColor.new(0)
  2124.   local prt = part(3, workspace, "SmoothPlastic", 0, 0, brickcolor, "Effect", vt(0.5, 0.5, 0.5))
  2125.   prt.Anchored = true
  2126.   prt.CFrame = cframe
  2127.   prt.Material = "Neon"
  2128.   local msh = mesh("SpecialMesh", prt, "Sphere", "", vt(0, 0, 0), vt(x1, y1, z1))
  2129.   game:GetService("Debris"):AddItem(prt, 5)
  2130.   coroutine.resume(coroutine.create(function()
  2131.     while prt.Parent ~= nil do
  2132.       wait()
  2133.       rainbowcolor = BrickColor.new(23)
  2134.       wait()
  2135.       rainbowcolor = BrickColor.new(107)
  2136.       wait()
  2137.       rainbowcolor = BrickColor.new(37)
  2138.       wait()
  2139.       rainbowcolor = BrickColor.new(119)
  2140.       wait()
  2141.       rainbowcolor = BrickColor.new(24)
  2142.       wait()
  2143.       rainbowcolor = BrickColor.new(106)
  2144.       wait()
  2145.       rainbowcolor = BrickColor.new(21)
  2146.       wait()
  2147.       rainbowcolor = BrickColor.new(104)
  2148.     end
  2149.   end
  2150. ))
  2151.   coroutine.resume(coroutine.create(function(Part, Mesh)
  2152.     for i = 0, 1, delay do
  2153.       fat.Event:wait()
  2154.       Part.BrickColor = rainbowcolor
  2155.       Part.Transparency = i
  2156.       Mesh.Scale = Mesh.Scale + vt(x3, y3, z3)
  2157.     end
  2158.     Part:Destroy()
  2159.   end
  2160. ), prt, msh)
  2161. end
  2162.  
  2163. CylinderShockwave = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  2164.   local prt = part(3, workspace, "SmoothPlastic", 0, 0, brickcolor, "Effect", vt(0.5, 0.5, 0.5))
  2165.   prt.Anchored = true
  2166.   prt.CFrame = cframe
  2167.   local msh = mesh("CylinderMesh", prt, "", "", vt(0, 0, 0), vt(x1, y1, z1))
  2168.   game:GetService("Debris"):AddItem(prt, 10)
  2169.   coroutine.resume(coroutine.create(function(Part, Mesh)
  2170.     for i = 0, 1, delay do
  2171.       fat.Event:wait()
  2172.       Part.Transparency = i
  2173.       Mesh.Scale = Mesh.Scale + vt(x3, y3, z3)
  2174.     end
  2175.     Part:Destroy()
  2176.   end
  2177. ), prt, msh)
  2178. end
  2179.  
  2180. Laser = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  2181.   local prt = part(3, workspace, "SmoothPlastic", 0, 0, brickcolor, "Effect", vt(0.5, 0.5, 0.5))
  2182.   prt.Anchored = true
  2183.   prt.CFrame = cframe
  2184.   prt.Material = "Neon"
  2185.   local msh = mesh("CylinderMesh", prt, "", "", vt(0, 0, 0), vt(x1, y1, z1))
  2186.   game:GetService("Debris"):AddItem(prt, 10)
  2187.   coroutine.resume(coroutine.create(function(Part, Mesh)
  2188.     for i = 0, 1, delay do
  2189.       fat.Event:wait()
  2190.       Part.Transparency = i
  2191.       Mesh.Scale = Mesh.Scale + vt(x3, y3, z3)
  2192.     end
  2193.     Part:Destroy()
  2194.   end
  2195. ), prt, msh)
  2196. end
  2197.  
  2198. Laser2 = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  2199.   local prt = part(3, workspace, "SmoothPlastic", 0, 0, brickcolor, "Effect", vt(0.5, 0.5, 0.5))
  2200.   prt.Anchored = true
  2201.   prt.CFrame = cframe
  2202.   prt.Material = "Neon"
  2203.   local msh = mesh("SpecialMesh", prt, "Sphere", "", vt(0, 0, 0), vt(x1, y1, z1))
  2204.   game:GetService("Debris"):AddItem(prt, 10)
  2205.   coroutine.resume(coroutine.create(function(Part, Mesh)
  2206.     for i = 0, 1, delay do
  2207.       fat.Event:wait()
  2208.       Part.Transparency = i
  2209.       Mesh.Scale = Mesh.Scale + vt(x3, y3, z3)
  2210.     end
  2211.     Part:Destroy()
  2212.   end
  2213. ), prt, msh)
  2214. end
  2215.  
  2216. Laser3 = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  2217.   local prt = part(3, workspace, "SmoothPlastic", 0, 0, brickcolor, "Effect", vt(0.5, 0.5, 0.5))
  2218.   prt.Anchored = true
  2219.   prt.CFrame = cframe
  2220.   prt.Material = "Neon"
  2221.   local msh = mesh("BlockMesh", prt, "", "", vt(0, 0, 0), vt(x1, y1, z1))
  2222.   game:GetService("Debris"):AddItem(prt, 10)
  2223.   coroutine.resume(coroutine.create(function(Part, Mesh)
  2224.     for i = 0, 1, delay do
  2225.       fat.Event:wait()
  2226.       Part.Transparency = i
  2227.       Mesh.Scale = Mesh.Scale + vt(x3, y3, z3)
  2228.     end
  2229.     Part:Destroy()
  2230.   end
  2231. ), prt, msh)
  2232. end
  2233.  
  2234. SphereShockwave = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  2235.   local prt = part(3, workspace, "SmoothPlastic", 0, 0, brickcolor, "Effect", vt(0.5, 0.5, 0.5))
  2236.   prt.Anchored = true
  2237.   prt.CFrame = cframe
  2238.   local msh = mesh("SpecialMesh", prt, "Sphere", "", vt(0, 0, 0), vt(x1, y1, z1))
  2239.   game:GetService("Debris"):AddItem(prt, 10)
  2240.   coroutine.resume(coroutine.create(function(Part, Mesh)
  2241.     for i = 0, 1, delay do
  2242.       fat.Event:wait()
  2243.       Part.Transparency = i
  2244.       Mesh.Scale = Mesh.Scale + vt(x3, y3, z3)
  2245.     end
  2246.     Part:Destroy()
  2247.   end
  2248. ), prt, msh)
  2249. end
  2250.  
  2251. SphereShockwave2 = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  2252.   local prt = part(3, workspace, "SmoothPlastic", 0, 0, brickcolor, "Effect", vt(0.5, 0.5, 0.5))
  2253.   prt.Anchored = true
  2254.   prt.CFrame = cframe * angles(math.rad(math.random(-90, 90)), math.rad(math.random(-90, 90)), math.rad(math.random(-90, 90)))
  2255.   local msh = mesh("SpecialMesh", prt, "Sphere", "", vt(0, 0, 0), vt(x1, y1, z1))
  2256.   game:GetService("Debris"):AddItem(prt, 10)
  2257.   coroutine.resume(coroutine.create(function(Part, Mesh)
  2258.     for i = 0, 1, delay do
  2259.       fat.Event:wait()
  2260.       Part.Transparency = i
  2261.       Mesh.Scale = Mesh.Scale + vt(x3, y3, z3)
  2262.     end
  2263.     Part:Destroy()
  2264.   end
  2265. ), prt, msh)
  2266. end
  2267.  
  2268. Shockwave = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  2269.   local prt = part(3, workspace, "SmoothPlastic", 0, 0, brickcolor, "Effect", vt(0.5, 0.5, 0.5))
  2270.   prt.Anchored = true
  2271.   prt.CFrame = cframe
  2272.   local msh = mesh("SpecialMesh", prt, "Sphere", "", vt(0, 0, 0), vt(x1, y1, z1))
  2273.   game:GetService("Debris"):AddItem(prt, 10)
  2274.   coroutine.resume(coroutine.create(function(Part, Mesh)
  2275.     for i = 0, 1, delay do
  2276.       fat.Event:wait()
  2277.       Part.CFrame = Part.CFrame
  2278.       Part.Transparency = i
  2279.       Mesh.Scale = Mesh.Scale + vt(x3, y3, z3)
  2280.     end
  2281.     Part:Destroy()
  2282.   end
  2283. ), prt, msh)
  2284. end
  2285.  
  2286. leftlegangle = 0
  2287. leftlegcframe = 0
  2288. leftlegcframe2 = 0
  2289. leftlegcframe3 = 0
  2290. rightlegangle = 0
  2291. rightlegcframe = 0
  2292. rightlegcframe2 = 0
  2293. rightlegcframe3 = 0
  2294. leftarmangle = 0
  2295. rightarmangle = 0
  2296. rightlegangle2 = 0
  2297. leftlegangle2 = 0
  2298. MMouse = mouse
  2299. canidle = true
  2300. canwalk = true
  2301. holdz = false
  2302. zshooting = false
  2303. gyroenabled = false
  2304. ShotTarget = RootPart
  2305. runningsound = Head.Running
  2306. local robloxidleanimation = Instance.new("Animation", Torso)
  2307. robloxidleanimation.Name = "robloxidleanimation"
  2308. robloxidleanimation.AnimationId = "http://www.roblox.com/asset/?id=180435571"
  2309. local floatingaura = Instance.new("Sound", Torso)
  2310. floatingaura.SoundId = "http://www.roblox.com/asset/?id=343063967"
  2311. floatingaura.Volume = 0.25
  2312. floatingaura.Pitch = 0.75
  2313. floatingaura.Looped = true
  2314. gyro = Instance.new("BodyGyro")
  2315. gyro.Parent = nil
  2316. gyro.P = 10000000
  2317. gyro.D = 1000
  2318. gyro.MaxTorque = Vector3.new(0, 10000000, 0)
  2319. Clone = function()
  2320.   for _,v in pairs(Torso.Parent:children()) do
  2321.     if v.className == "Part" and v.Name ~= "HumanoidRootPart" then
  2322.       local rainbowcolor = BrickColor.new(0)
  2323.       do
  2324.         n = v:clone()
  2325.         n:BreakJoints()
  2326.         n.archivable = true
  2327.         n.Anchored = true
  2328.         n.CanCollide = false
  2329.         n.TopSurface = "SmoothNoOutlines"
  2330.         n.BottomSurface = "SmoothNoOutlines"
  2331.         n.LeftSurface = "SmoothNoOutlines"
  2332.         n.RightSurface = "SmoothNoOutlines"
  2333.         n.FrontSurface = "SmoothNoOutlines"
  2334.         n.BackSurface = "SmoothNoOutlines"
  2335.         n.Name = "Trail"
  2336.         n.BrickColor = rainbowcolor
  2337.         n.Parent = workspace
  2338.         n.CFrame = v.CFrame
  2339.         for _,v in pairs(n:children()) do
  2340.           if v.Name == "face" then
  2341.             v:Destroy()
  2342.           end
  2343.         end
  2344.         game:GetService("Debris"):AddItem(n, 2)
  2345.         coroutine.resume(coroutine.create(function()
  2346.     while n.Parent ~= nil do
  2347.       wait()
  2348.       rainbowcolor = BrickColor.new(23)
  2349.       wait()
  2350.       rainbowcolor = BrickColor.new(107)
  2351.       wait()
  2352.       rainbowcolor = BrickColor.new(37)
  2353.       wait()
  2354.       rainbowcolor = BrickColor.new(119)
  2355.       wait()
  2356.       rainbowcolor = BrickColor.new(24)
  2357.       wait()
  2358.       rainbowcolor = BrickColor.new(106)
  2359.       wait()
  2360.       rainbowcolor = BrickColor.new(21)
  2361.       wait()
  2362.       rainbowcolor = BrickColor.new(104)
  2363.     end
  2364.   end
  2365. ))
  2366.         coroutine.resume(coroutine.create(function(ne)
  2367.     for i = 1, 80 do
  2368.       ne:BreakJoints()
  2369.       ne.Transparency = i / 80
  2370.       ne.BrickColor = rainbowcolor
  2371.       fat.Event:wait()
  2372.     end
  2373.     ne.Parent = nil
  2374.   end
  2375. ), n)
  2376.       end
  2377.     end
  2378.   end
  2379. end
  2380.  
  2381. equipanim = function()
  2382.   attack = true
  2383.   so("http://roblox.com/asset/?id=367850772", Torso, 1, 0.75)
  2384.   speed.Value = speed.Value - 0.4
  2385.   Humanoid.WalkSpeed = 16 * speed.Value
  2386.   runningsound.Volume = 0
  2387.   for i = 0, 1, 0.12 do
  2388.     fat.Event:wait()
  2389.     Humanoid.CameraOffset = Vector3.new(0, 0 + 3 * i, 0)
  2390.     RainbowBlockShockwave(LeftLeg.CFrame * cf(0, -1, 0), 2, 2, 2, 0.01, 0.01, 0.01, 0.1)
  2391.     RainbowBlockShockwave(RightLeg.CFrame * cf(0, -1, 0), 2, 2, 2, 0.01, 0.01, 0.01, 0.1)
  2392.     RainbowBlockShockwave(LeftArm.CFrame * cf(0, -1, 0), 1.5, 1.5, 1.5, 0.5, 0.5, 0.5, 0.1)
  2393.     RainbowBlockShockwave(RightArm.CFrame * cf(0, -1, 0), 1.5, 1.5, 1.5, 0.5, 0.5, 0.5, 0.1)
  2394.     RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 3) * angles(math.rad(0), math.rad(0), math.rad(0 - 360 * i)), 0.3)
  2395.     Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * cf(0, 0, 0) * angles(math.rad(-20), math.rad(0), math.rad(0)), 0.3)
  2396.     RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(135), math.rad(0), math.rad(45)), 0.3)
  2397.     LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(135), math.rad(0), math.rad(-45)), 0.3)
  2398.     RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(-20), math.rad(90), math.rad(0)) * angles(math.rad(-10), math.rad(0), math.rad(0)), 0.3)
  2399.     LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(-20), math.rad(-90), math.rad(0)) * angles(math.rad(-10), math.rad(0), math.rad(0)), 0.3)
  2400.   end
  2401.   Humanoid.CameraOffset = Vector3.new(0, 3, 0)
  2402.   for i = 0, 1, 0.12 do
  2403.     fat.Event:wait()
  2404.     RainbowBlockShockwave(LeftLeg.CFrame * cf(0, -1, 0), 2, 2, 2, 0.01, 0.01, 0.01, 0.1)
  2405.     RainbowBlockShockwave(RightLeg.CFrame * cf(0, -1, 0), 2, 2, 2, 0.01, 0.01, 0.01, 0.1)
  2406.     RainbowBlockShockwave(LeftArm.CFrame * cf(0, -1, 0), 1.5, 1.5, 1.5, 0.5, 0.5, 0.5, 0.1)
  2407.     RainbowBlockShockwave(RightArm.CFrame * cf(0, -1, 0), 1.5, 1.5, 1.5, 0.5, 0.5, 0.5, 0.1)
  2408.     RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 3) * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3)
  2409.     Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * cf(0, 0, 0) * angles(math.rad(-20), math.rad(0), math.rad(0)), 0.3)
  2410.     RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(135 - 45 * i), math.rad(0), math.rad(45)), 0.3)
  2411.     LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(135 - 45 * i), math.rad(0), math.rad(-45)), 0.3)
  2412.     RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(-20), math.rad(90), math.rad(0)) * angles(math.rad(-10), math.rad(0), math.rad(0)), 0.3)
  2413.     LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(-20), math.rad(-90), math.rad(0)) * angles(math.rad(-10), math.rad(0), math.rad(0)), 0.3)
  2414.   end
  2415.   for i = 0, 1, 0.18 do
  2416.     fat.Event:wait()
  2417.     RainbowBlockShockwave(LeftLeg.CFrame * cf(0, -1, 0), 2, 2, 2, 0.01, 0.01, 0.01, 0.1)
  2418.     RainbowBlockShockwave(RightLeg.CFrame * cf(0, -1, 0), 2, 2, 2, 0.01, 0.01, 0.01, 0.1)
  2419.     RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 3) * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3)
  2420.     Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * cf(0, 0, 0) * angles(math.rad(10), math.rad(0), math.rad(0)), 0.3)
  2421.     RW.C0 = clerp(RW.C0, CFrame.new(1, 0.5, -0.5) * angles(math.rad(90), math.rad(0), math.rad(-45)), 0.3)
  2422.     LW.C0 = clerp(LW.C0, CFrame.new(-1, 0.5, -0.5) * angles(math.rad(90), math.rad(0), math.rad(45)), 0.3)
  2423.     RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(-20), math.rad(90), math.rad(0)) * angles(math.rad(-10), math.rad(0), math.rad(0)), 0.3)
  2424.     LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(-20), math.rad(-90), math.rad(0)) * angles(math.rad(-10), math.rad(0), math.rad(0)), 0.3)
  2425.   end
  2426.   so("http://roblox.com/asset/?id=340722848", Torso, 0.5, 2)
  2427.   so("http://roblox.com/asset/?id=367850840", Torso, 0.75, 1.75)
  2428.   RainbowBlockShockwave(LeftArm.CFrame * cf(0, -1, 0), 1.5, 1.5, 1.5, 1, 1, 1, 0.05)
  2429.   RainbowBlockShockwave(RightArm.CFrame * cf(0, -1, 0), 1.5, 1.5, 1.5, 1, 1, 1, 0.05)
  2430.   for i = 0, 1, 0.06 do
  2431.     fat.Event:wait()
  2432.     RainbowBlockShockwave(LeftLeg.CFrame * cf(0, -1, 0), 2, 2, 2, 0.01, 0.01, 0.01, 0.1)
  2433.     RainbowBlockShockwave(RightLeg.CFrame * cf(0, -1, 0), 2, 2, 2, 0.01, 0.01, 0.01, 0.1)
  2434.     RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 3) * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3)
  2435.     Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * cf(0, 0, 0) * angles(math.rad(10), math.rad(0), math.rad(0)), 0.3)
  2436.     RW.C0 = clerp(RW.C0, CFrame.new(1, 0.5, -0.5) * angles(math.rad(90), math.rad(0), math.rad(-45)), 0.3)
  2437.     LW.C0 = clerp(LW.C0, CFrame.new(-1, 0.5, -0.5) * angles(math.rad(90), math.rad(0), math.rad(45)), 0.3)
  2438.     RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(-20), math.rad(90), math.rad(0)) * angles(math.rad(-10), math.rad(0), math.rad(0)), 0.3)
  2439.     LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(-20), math.rad(-90), math.rad(0)) * angles(math.rad(-10), math.rad(0), math.rad(0)), 0.3)
  2440.   end
  2441.   speed.Value = speed.Value + 0.3
  2442.   Humanoid.WalkSpeed = 16 * speed.Value
  2443.   floatingaura:Play()
  2444.   attack = false
  2445. end
  2446.  
  2447. unequipanim = function()
  2448.   attack = true
  2449.   gyro.Parent = nil
  2450.   gyroenabled = false
  2451.   so("http://roblox.com/asset/?id=367850772", Torso, 0.75, 1.25)
  2452.   speed.Value = speed.Value - 0.3
  2453.   Humanoid.WalkSpeed = 16 * speed.Value
  2454.   for i = 0, 1, 0.08 do
  2455.     fat.Event:wait()
  2456.     RainbowBlockShockwave(LeftLeg.CFrame * cf(0, -1, 0), 2, 2, 2, 0.01, 0.01, 0.01, 0.1)
  2457.     RainbowBlockShockwave(RightLeg.CFrame * cf(0, -1, 0), 2, 2, 2, 0.01, 0.01, 0.01, 0.1)
  2458.     RainbowBlockShockwave(LeftArm.CFrame * cf(0, -1, 0), 1.5, 1.5, 1.5, 0.5, 0.5, 0.5, 0.1)
  2459.     RainbowBlockShockwave(RightArm.CFrame * cf(0, -1, 0), 1.5, 1.5, 1.5, 0.5, 0.5, 0.5, 0.1)
  2460.     RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 3) * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3)
  2461.     Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * cf(0, 0, 0) * angles(math.rad(20), math.rad(0), math.rad(0)), 0.3)
  2462.     RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(20), math.rad(0), math.rad(90)), 0.3)
  2463.     LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(20), math.rad(0), math.rad(-90)), 0.3)
  2464.     RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(-20), math.rad(90), math.rad(0)) * angles(math.rad(-10), math.rad(0), math.rad(0)), 0.3)
  2465.     LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(-20), math.rad(-90), math.rad(0)) * angles(math.rad(-10), math.rad(0), math.rad(0)), 0.3)
  2466.   end
  2467.   so("http://roblox.com/asset/?id=367850840", Torso, 0.75, 0.75)
  2468.   for i = 0, 1, 0.06 do
  2469.     fat.Event:wait()
  2470.     Humanoid.CameraOffset = Vector3.new(0, 3 - 3 * i, 0)
  2471.     RainbowBlockShockwave(LeftLeg.CFrame * cf(0, -1, 0), 2, 2, 2, 0.01, 0.01, 0.01, 0.1)
  2472.     RainbowBlockShockwave(RightLeg.CFrame * cf(0, -1, 0), 2, 2, 2, 0.01, 0.01, 0.01, 0.1)
  2473.     RainbowBlockShockwave(LeftArm.CFrame * cf(0, -1, 0), 1.5, 1.5, 1.5, 0.5, 0.5, 0.5, 0.1)
  2474.     RainbowBlockShockwave(RightArm.CFrame * cf(0, -1, 0), 1.5, 1.5, 1.5, 0.5, 0.5, 0.5, 0.1)
  2475.     RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 3 - 3 * i) * angles(math.rad(0), math.rad(0), math.rad(0 + 360 * i)), 0.3)
  2476.     Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * cf(0, 0, 0) * angles(math.rad(20), math.rad(0), math.rad(0)), 0.3)
  2477.     RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(20), math.rad(0), math.rad(90 - 70 * i)), 0.3)
  2478.     LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(20), math.rad(0), math.rad(-90 + 70 * i)), 0.3)
  2479.     RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(-20), math.rad(90), math.rad(0)) * angles(math.rad(-10), math.rad(0), math.rad(0)), 0.3)
  2480.     LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(-20), math.rad(-90), math.rad(0)) * angles(math.rad(-10), math.rad(0), math.rad(0)), 0.3)
  2481.   end
  2482.   floatingaura:Stop()
  2483.   Humanoid.CameraOffset = Vector3.new(0, 0, 0)
  2484.   for i = 0, 1, 0.06 do
  2485.     fat.Event:wait()
  2486.     RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3)
  2487.     Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3)
  2488.     RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3)
  2489.     LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3)
  2490.     RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(0), math.rad(90), math.rad(0)) * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3)
  2491.     LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(0), math.rad(-90), math.rad(0)) * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3)
  2492.   end
  2493.   runningsound.Volume = 0.5
  2494.   speed.Value = speed.Value + 0.4
  2495.   Humanoid.WalkSpeed = 16 * speed.Value
  2496.   attack = false
  2497. end
  2498.  
  2499. attackone = function()
  2500.   attack = true
  2501.   so("http://roblox.com/asset/?id=367850840", Torso, 0.75, 1)
  2502.   for i = 0, 1, 0.2 do
  2503.     fat.Event:wait()
  2504.     RainbowBlockShockwave(RightArm.CFrame * cf(0, -1, 0), 3, 3, 3, 0.01, 0.01, 0.01, 0.075)
  2505.     RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 3) * angles(math.rad(0), math.rad(0), math.rad(60)), 0.3)
  2506.     Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * cf(0, 0, 0) * angles(math.rad(10), math.rad(0), math.rad(-60)), 0.3)
  2507.     RW.C0 = clerp(RW.C0, CFrame.new(1, 0.5, -0.5) * angles(math.rad(135), math.rad(0), math.rad(-45)), 0.3)
  2508.     LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-20), math.rad(0), math.rad(-20)), 0.3)
  2509.     RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(-5), math.rad(90), math.rad(0)) * angles(math.rad(-5), math.rad(0), math.rad(0)), 0.3)
  2510.     LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(-5), math.rad(-90), math.rad(0)) * angles(math.rad(-5), math.rad(0), math.rad(0)), 0.3)
  2511.   end
  2512.   so("http://roblox.com/asset/?id=340722848", Torso, 0.75, 1.75)
  2513.   RainbowBlockShockwave(RightArm.CFrame * cf(0, -1, 0), 5, 5, 5, 0.05, 0.05, 0.05, 0.05)
  2514.   local startingrefpart = part(3, workspace, "SmoothPlastic", 0, 1, BrickColor.new("Really black"), "Effect", vt())
  2515.   startingrefpart.Anchored = true
  2516.   startingrefpart.CFrame = RootPart.CFrame * cf(0, 3, -15)
  2517.   game:GetService("Debris"):AddItem(startingrefpart, 3)
  2518.   RainbowBlockShockwave(cf(startingrefpart.Position), 2, 2, 2, 2, 2, 2, 0.05)
  2519.   MagniDamage(startingrefpart, 20, 10, 15, 10, "Normal")
  2520.   for i = 1, math.random(2, 4) do
  2521.     RainbowOrbEffect(cf(startingrefpart.Position), 2, 2, 2, 2, 2, 2, 0.04)
  2522.   end
  2523.   for i = 0, 1, 0.2 do
  2524.     fat.Event:wait()
  2525.     RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 3) * angles(math.rad(0), math.rad(0), math.rad(-30)), 0.3)
  2526.     Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * cf(0, 0, 0) * angles(math.rad(10), math.rad(0), math.rad(30)), 0.3)
  2527.     RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(15), math.rad(0), math.rad(45)), 0.3)
  2528.     LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(20), math.rad(0), math.rad(-10)), 0.3)
  2529.     RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(-5), math.rad(90), math.rad(0)) * angles(math.rad(-5), math.rad(0), math.rad(0)), 0.3)
  2530.     LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(-5), math.rad(-90), math.rad(0)) * angles(math.rad(-5), math.rad(0), math.rad(0)), 0.3)
  2531.   end
  2532.   attack = false
  2533. end
  2534.  
  2535. attacktwo = function()
  2536.   attack = true
  2537.   so("http://roblox.com/asset/?id=367850840", Torso, 0.75, 1.25)
  2538.   for i = 0, 1, 0.2 do
  2539.     fat.Event:wait()
  2540.     RainbowBlockShockwave(LeftArm.CFrame * cf(0, -1, 0), 3, 3, 3, 0.01, 0.01, 0.01, 0.075)
  2541.     RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 3) * angles(math.rad(0), math.rad(0), math.rad(-60)), 0.3)
  2542.     Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * cf(0, 0, 0) * angles(math.rad(10), math.rad(0), math.rad(60)), 0.3)
  2543.     RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(-20), math.rad(0), math.rad(20)), 0.3)
  2544.     LW.C0 = clerp(LW.C0, CFrame.new(-1, 0.5, -0.5) * angles(math.rad(135), math.rad(0), math.rad(45)), 0.3)
  2545.     RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(-5), math.rad(90), math.rad(0)) * angles(math.rad(-5), math.rad(0), math.rad(0)), 0.3)
  2546.     LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(-5), math.rad(-90), math.rad(0)) * angles(math.rad(-5), math.rad(0), math.rad(0)), 0.3)
  2547.   end
  2548.   so("http://roblox.com/asset/?id=340722848", Torso, 0.75, 1.5)
  2549.   RainbowBlockShockwave(LeftArm.CFrame * cf(0, -1, 0), 5, 5, 5, 0.05, 0.05, 0.05, 0.05)
  2550.   local startingrefpart = part(3, workspace, "SmoothPlastic", 0, 1, BrickColor.new("Really black"), "Effect", vt())
  2551.   startingrefpart.Anchored = true
  2552.   startingrefpart.CFrame = RootPart.CFrame * cf(0, 3, -15)
  2553.   game:GetService("Debris"):AddItem(startingrefpart, 3)
  2554.   RainbowBlockShockwave(cf(startingrefpart.Position), 2, 2, 2, 2, 2, 2, 0.05)
  2555.   MagniDamage(startingrefpart, 20, 10, 15, 10, "Normal")
  2556.   for i = 1, math.random(2, 4) do
  2557.     RainbowOrbEffect(cf(startingrefpart.Position), 2, 2, 2, 2, 2, 2, 0.04)
  2558.   end
  2559.   for i = 0, 1, 0.2 do
  2560.     fat.Event:wait()
  2561.     RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 3) * angles(math.rad(0), math.rad(0), math.rad(30)), 0.3)
  2562.     Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * cf(0, 0, 0) * angles(math.rad(10), math.rad(0), math.rad(-30)), 0.3)
  2563.     RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(20), math.rad(0), math.rad(-10)), 0.3)
  2564.     LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(15), math.rad(0), math.rad(-45)), 0.3)
  2565.     RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(-5), math.rad(90), math.rad(0)) * angles(math.rad(-5), math.rad(0), math.rad(0)), 0.3)
  2566.     LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(-5), math.rad(-90), math.rad(0)) * angles(math.rad(-5), math.rad(0), math.rad(0)), 0.3)
  2567.   end
  2568.   attack = false
  2569. end
  2570.  
  2571. attackthree = function()
  2572.   attack = true
  2573.   so("http://roblox.com/asset/?id=367850840", Torso, 0.75, 0.75)
  2574.   for i = 0, 1, 0.2 do
  2575.     fat.Event:wait()
  2576.     RainbowBlockShockwave(RightArm.CFrame * cf(0, -1, 0), 3, 3, 3, 0.01, 0.01, 0.01, 0.075)
  2577.     RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 3) * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3)
  2578.     Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * cf(0, 0, 0) * angles(math.rad(10), math.rad(0), math.rad(0)), 0.3)
  2579.     RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(30), math.rad(0), math.rad(15)), 0.3)
  2580.     LW.C0 = clerp(LW.C0, CFrame.new(-1.25, 0.5, 0.25) * angles(math.rad(-45), math.rad(0), math.rad(45)), 0.3)
  2581.     RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(-5), math.rad(90), math.rad(0)) * angles(math.rad(-5), math.rad(0), math.rad(0)), 0.3)
  2582.     LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(-5), math.rad(-90), math.rad(0)) * angles(math.rad(-5), math.rad(0), math.rad(0)), 0.3)
  2583.   end
  2584.   for i = 0, 1, 0.2 do
  2585.     fat.Event:wait()
  2586.     RainbowBlockShockwave(RightArm.CFrame * cf(0, -1, 0), 3, 3, 3, 0.01, 0.01, 0.01, 0.075)
  2587.     RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 3) * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3)
  2588.     Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * cf(0, 0, 0) * angles(math.rad(-10), math.rad(0), math.rad(0)), 0.3)
  2589.     RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(165), math.rad(0), math.rad(5)), 0.3)
  2590.     LW.C0 = clerp(LW.C0, CFrame.new(-1.25, 0.5, 0.25) * angles(math.rad(-45), math.rad(0), math.rad(45)), 0.3)
  2591.     RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(-5), math.rad(90), math.rad(0)) * angles(math.rad(-5), math.rad(0), math.rad(0)), 0.3)
  2592.     LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(-5), math.rad(-90), math.rad(0)) * angles(math.rad(-5), math.rad(0), math.rad(0)), 0.3)
  2593.   end
  2594.   for i = 1, 2 do
  2595.     RainbowBlockShockwave(RightArm.CFrame * cf(0, -1, 0), 3, 3, 3, 0.01, 0.01, 0.01, 0.075)
  2596.     local startingrefpart = part(3, workspace, "SmoothPlastic", 0, 1, BrickColor.new("Really black"), "Effect", vt())
  2597.     startingrefpart.Anchored = true
  2598.     startingrefpart.CFrame = RootPart.CFrame * cf(math.random(-10, 10), 400, -20 + math.random(-10, 10))
  2599.     game:GetService("Debris"):AddItem(startingrefpart, 3)
  2600.     local hit, pos = rayCast(startingrefpart.Position, CFrame.new(startingrefpart.Position, startingrefpart.Position - Vector3.new(0, 1, 0)).lookVector, 500, Character)
  2601.     if hit ~= nil then
  2602.       floor = true
  2603.       refpart = part(3, workspace, "SmoothPlastic", 0, 1, BrickColor.new("Really black"), "Effect", vt())
  2604.       refpart.Anchored = true
  2605.       refpart.CFrame = cf(pos)
  2606.       game:GetService("Debris"):AddItem(refpart, 3)
  2607.       MagniDamage(refpart, 10, 10, 15, 0, "Normal")
  2608.       so("http://roblox.com/asset/?id=367932544", refpart, 0.5, 1)
  2609.       RainbowCylinderShockwave(cf(refpart.Position), 0.1, 0.01, 0.1, 3, 0.01, 3, 0.05)
  2610.       for i = 1, math.random(5, 10) do
  2611.         RainbowLightning(startingrefpart.Position, refpart.Position, 5, math.random(5, 10), 0.5, 0.5, 2)
  2612.       end
  2613.     end
  2614.     do
  2615.       for i = 0, 1, 0.08 do
  2616.         fat.Event:wait()
  2617.         local lv = RootPart.CFrame:pointToObjectSpace(RootPart.Velocity + RootPart.Position)
  2618.         RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 3) * angles(math.rad(-lv.z / 1), math.rad(-lv.x / 1), math.rad(0)), 0.3)
  2619.         Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * cf(0, 0, 0) * angles(math.rad(-10), math.rad(0), math.rad(0)), 0.3)
  2620.         RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(165), math.rad(0), math.rad(5)), 0.3)
  2621.         LW.C0 = clerp(LW.C0, CFrame.new(-1.25, 0.5, 0.25) * angles(math.rad(-45), math.rad(0), math.rad(45)), 0.3)
  2622.         RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(-5), math.rad(90), math.rad(0)) * angles(math.rad(-5), math.rad(0), math.rad(0)), 0.3)
  2623.         LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(-5), math.rad(-90), math.rad(0)) * angles(math.rad(-5), math.rad(0), math.rad(0)), 0.3)
  2624.       end
  2625.       -- DECOMPILER ERROR at PC846: LeaveBlock: unexpected jumping out DO_STMT
  2626.  
  2627.     end
  2628.   end
  2629.   attack = false
  2630. end
  2631.  
  2632. ChangeMode = function()
  2633.   attack = true
  2634.   so("http://roblox.com/asset/?id=367850772", Torso, 0.75, math.random(80, 120) / 100)
  2635.   for i = 0, 1, 0.06 do
  2636.     fat.Event:wait()
  2637.     RainbowBlockShockwave(LeftArm.CFrame * cf(0, -1, 0), 3, 3, 3, 0.01, 0.01, 0.01, 0.075)
  2638.     RainbowBlockShockwave(RightArm.CFrame * cf(0, -1, 0), 3, 3, 3, 0.01, 0.01, 0.01, 0.075)
  2639.     RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 3) * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3)
  2640.     Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * cf(0, 0, 0) * angles(math.rad(10), math.rad(0), math.rad(0)), 0.3)
  2641.     RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(15), math.rad(0), math.rad(75)), 0.3)
  2642.     LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(15), math.rad(0), math.rad(-75)), 0.3)
  2643.     RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(-5), math.rad(90), math.rad(0)) * angles(math.rad(-5), math.rad(0), math.rad(0)), 0.3)
  2644.     LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(-5), math.rad(-90), math.rad(0)) * angles(math.rad(-5), math.rad(0), math.rad(0)), 0.3)
  2645.   end
  2646.   attack = false
  2647. end
  2648.  
  2649. canlaser = true
  2650. canrainstar = true
  2651. LaserShot = function()
  2652.   canlaser = false
  2653.   local theactualstartingrefpart = part(3, workspace, "SmoothPlastic", 0, 1, BrickColor.new("Really black"), "Effect", vt())
  2654.   theactualstartingrefpart.Anchored = true
  2655.   theactualstartingrefpart.CFrame = RootPart.CFrame * cf(0, 1000, 0)
  2656.   game:GetService("Debris"):AddItem(theactualstartingrefpart, 0.1)
  2657.   local spread = Vector3.new(math.random(-10, 10), 0, math.random(-10, 10))
  2658.   local MainPos = theactualstartingrefpart.Position
  2659.   local MainPos2 = MMouse.Hit.p + spread
  2660.   local MouseLook = cf((MainPos + MainPos2) / 2, MainPos2)
  2661.   local hit, pos = rayCast(MainPos, MouseLook.lookVector, 10000, ShotTarget.Parent)
  2662.   if hit ~= nil then
  2663.     local actualstartingrefpart = part(3, workspace, "SmoothPlastic", 0, 1, BrickColor.new("Really black"), "Effect", vt())
  2664.     actualstartingrefpart.Anchored = true
  2665.     actualstartingrefpart.CFrame = cf(pos)
  2666.     game:GetService("Debris"):AddItem(actualstartingrefpart, 0.1)
  2667.     local startingrefpart = part(3, workspace, "SmoothPlastic", 0, 1, BrickColor.new("Really black"), "Effect", vt())
  2668.     startingrefpart.Anchored = true
  2669.     startingrefpart.CFrame = actualstartingrefpart.CFrame * cf(0, 400, 0)
  2670.     game:GetService("Debris"):AddItem(startingrefpart, 0.1)
  2671.     local hit, pos = rayCast(startingrefpart.Position, CFrame.new(startingrefpart.Position, startingrefpart.Position - Vector3.new(0, 1, 0)).lookVector, 500, Character)
  2672.     if hit ~= nil then
  2673.       floor = true
  2674.       refpart = part(3, workspace, "SmoothPlastic", 0, 1, BrickColor.new("Really black"), "Effect", vt())
  2675.       refpart.Anchored = true
  2676.       refpart.CFrame = cf(pos)
  2677.       game:GetService("Debris"):AddItem(refpart, 0.1)
  2678.       MagniDamage(refpart, 10, 20, 30, 0, "Normal")
  2679.       so("http://roblox.com/asset/?id=367932544", refpart, 0.5, math.random(80, 120) / 100)
  2680.       RainbowCylinderShockwave(cf(refpart.Position), 18, 0.01, 18, 1, 0.01, 1, 0.05)
  2681.       RainbowLightning(startingrefpart.Position, refpart.Position, 5, math.random(5, 10), 6, 0.5, 10)
  2682.     end
  2683.   end
  2684.   do
  2685.     wait(0.25)
  2686.     canlaser = true
  2687.   end
  2688. end
  2689.  
  2690. starcount = 0
  2691. StarRain = function()
  2692.   canrainstar = false
  2693.   starcount = math.random(1, 8)
  2694.   if starcount == 1 or starcount == 2 or starcount == 3 or starcount == 4 or starcount == 5 or starcount == 6 or starcount == 7 then
  2695.     startingrefpart = part(3, workspace, "SmoothPlastic", 0, 1, BrickColor.new("Really black"), "Effect", vt())
  2696.     startingrefpart.Anchored = true
  2697.     startingrefpart.CFrame = RootPart.CFrame * cf(math.random(-20, 20), math.random(30, 40), math.random(-20, 20))
  2698.     game:GetService("Debris"):AddItem(startingrefpart, 2)
  2699.     so("http://roblox.com/asset/?id=367850840", startingrefpart, 0.75, math.random(75, 125) / 100)
  2700.     local spread = Vector3.new(math.random(-2, 2), math.random(-2, 2), math.random(-2, 2))
  2701.     do
  2702.       local MainPos = startingrefpart.Position
  2703.       local MainPos2 = MMouse.Hit.p + spread
  2704.       local MouseLook = cf((MainPos + MainPos2) / 2, MainPos2)
  2705.       local speed = 0.01
  2706.       local num = 300
  2707.       local rotation = 0
  2708.       coroutine.resume(coroutine.create(function()
  2709.     repeat
  2710.       swait(1)
  2711.       local hit, pos = rayCast(MainPos, MouseLook.lookVector, speed, ShotTarget.Parent)
  2712.       local mag = MainPos - pos.magnitude
  2713.       RainbowStar(CFrame.new((MainPos + pos) / 2, pos) * angles(1.57, math.rad(-90), math.rad(rotation)), 10, 10, 10, 0.01, 0.01, 0.01, 0.125)
  2714.       MainPos = MainPos + MouseLook.lookVector * speed
  2715.       num = num - 1
  2716.       rotation = rotation - 5
  2717.       coroutine.resume(coroutine.create(function()
  2718.       wait(0.25)
  2719.       speed = 2
  2720.     end
  2721. ))
  2722.       if hit ~= nil then
  2723.         num = 0
  2724.         refpart = part(3, workspace, "SmoothPlastic", 0, 1, BrickColor.new("Really black"), "Effect", vt())
  2725.         refpart.Anchored = true
  2726.         refpart.CFrame = cf(pos)
  2727.         game:GetService("Debris"):AddItem(refpart, 2)
  2728.         RainbowSphereShockwave(cf(refpart.Position), 50, 50, 50, 0.1, 0.1, 0.1, 0.075)
  2729.         MagniDamage(refpart, 15, 20, 30, 0, "Normal")
  2730.         so("http://roblox.com/asset/?id=367850772", refpart, 1, math.random(100, 150) / 100)
  2731.         so("http://roblox.com/asset/?id=340722848", refpart, 0.5, math.random(100, 150) / 100)
  2732.       end
  2733.       if num <= 0 then
  2734.         refpart = part(3, workspace, "SmoothPlastic", 0, 1, BrickColor.new("Really black"), "Effect", vt())
  2735.         refpart.Anchored = true
  2736.         refpart.CFrame = cf(pos)
  2737.         game:GetService("Debris"):AddItem(refpart, 2)
  2738.         RainbowSphereShockwave(cf(refpart.Position), 50, 50, 50, 0.1, 0.1, 0.1, 0.075)
  2739.         MagniDamage(refpart, 15, 20, 30, 0, "Normal")
  2740.         so("http://roblox.com/asset/?id=367850772", refpart, 1, math.random(100, 150) / 100)
  2741.         so("http://roblox.com/asset/?id=340722848", refpart, 0.5, math.random(100, 150) / 100)
  2742.       end
  2743.     until num <= 0
  2744.   end
  2745. ))
  2746.     end
  2747.   else
  2748.     do
  2749.       if starcount == 8 then
  2750.         startingrefpart = part(3, workspace, "SmoothPlastic", 0, 1, BrickColor.new("Really black"), "Effect", vt())
  2751.         startingrefpart.Anchored = true
  2752.         startingrefpart.CFrame = RootPart.CFrame * cf(math.random(-20, 20), math.random(30, 40), math.random(-20, 20))
  2753.         game:GetService("Debris"):AddItem(startingrefpart, 2)
  2754.         so("http://roblox.com/asset/?id=367850840", startingrefpart, 0.75, math.random(45, 55) / 100)
  2755.         local spread = Vector3.new(math.random(-2, 2), math.random(-2, 2), math.random(-2, 2))
  2756.         local MainPos = startingrefpart.Position
  2757.         local MainPos2 = MMouse.Hit.p + spread
  2758.         local MouseLook = cf((MainPos + MainPos2) / 2, MainPos2)
  2759.         local speed = 0.01
  2760.         local num = 300
  2761.         local rotation = 0
  2762.         coroutine.resume(coroutine.create(function()
  2763.     repeat
  2764.       swait(1)
  2765.       local hit, pos = rayCast(MainPos, MouseLook.lookVector, speed, ShotTarget.Parent)
  2766.       local mag = MainPos - pos.magnitude
  2767.       RainbowStar(CFrame.new((MainPos + pos) / 2, pos) * angles(1.57, math.rad(-90), math.rad(rotation)), 20, 20, 20, 0.01, 0.01, 0.01, 0.125)
  2768.       MainPos = MainPos + MouseLook.lookVector * speed
  2769.       num = num - 1
  2770.       rotation = rotation - 5
  2771.       coroutine.resume(coroutine.create(function()
  2772.       wait(0.25)
  2773.       speed = 1
  2774.     end
  2775. ))
  2776.       if hit ~= nil then
  2777.         num = 0
  2778.         refpart = part(3, workspace, "SmoothPlastic", 0, 1, BrickColor.new("Really black"), "Effect", vt())
  2779.         refpart.Anchored = true
  2780.         refpart.CFrame = cf(pos)
  2781.         game:GetService("Debris"):AddItem(refpart, 2)
  2782.         RainbowSphereShockwave(cf(refpart.Position), 100, 100, 100, 0.1, 0.1, 0.1, 0.075)
  2783.         MagniDamage(refpart, 27.5, 40, 60, 0, "Normal")
  2784.         so("http://roblox.com/asset/?id=367850772", refpart, 1, math.random(50, 100) / 100)
  2785.         so("http://roblox.com/asset/?id=340722848", refpart, 0.5, math.random(50, 100) / 100)
  2786.       end
  2787.       if num <= 0 then
  2788.         refpart = part(3, workspace, "SmoothPlastic", 0, 1, BrickColor.new("Really black"), "Effect", vt())
  2789.         refpart.Anchored = true
  2790.         refpart.CFrame = cf(pos)
  2791.         game:GetService("Debris"):AddItem(refpart, 2)
  2792.         RainbowSphereShockwave(cf(refpart.Position), 100, 100, 100, 0.1, 0.1, 0.1, 0.075)
  2793.         MagniDamage(refpart, 27.5, 40, 60, 0, "Normal")
  2794.         so("http://roblox.com/asset/?id=367850772", refpart, 1, math.random(50, 100) / 100)
  2795.         so("http://roblox.com/asset/?id=340722848", refpart, 0.5, math.random(50, 100) / 100)
  2796.       end
  2797.     until num <= 0
  2798.   end
  2799. ))
  2800.       end
  2801.       do
  2802.         wait(math.random(80, 140) / 100)
  2803.         canrainstar = true
  2804.       end
  2805.     end
  2806.   end
  2807. end
  2808.  
  2809. LasersandStars = function()
  2810.   holdz = true
  2811.   attack = true
  2812.   so("http://roblox.com/asset/?id=367850772", Torso, 0.75, math.random(80, 120) / 100)
  2813.   speed.Value = speed.Value - 0.5
  2814.   Humanoid.WalkSpeed = 16 * speed.Value
  2815.   for i = 0, 1, 0.06 do
  2816.     fat.Event:wait()
  2817.     RainbowBlockShockwave(LeftArm.CFrame * cf(0, -1, 0), 3, 3, 3, 0.01, 0.01, 0.01, 0.075)
  2818.     RainbowBlockShockwave(RightArm.CFrame * cf(0, -1, 0), 3, 3, 3, 0.01, 0.01, 0.01, 0.075)
  2819.     RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 5) * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3)
  2820.     Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * cf(0, 0, 0) * angles(math.rad(10), math.rad(0), math.rad(0)), 0.3)
  2821.     RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(90), math.rad(0), math.rad(75)), 0.3)
  2822.     LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(90), math.rad(0), math.rad(-75)), 0.3)
  2823.     RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(-5), math.rad(90), math.rad(0)) * angles(math.rad(-5), math.rad(0), math.rad(0)), 0.3)
  2824.     LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(-5), math.rad(-90), math.rad(0)) * angles(math.rad(-5), math.rad(0), math.rad(0)), 0.3)
  2825.   end
  2826.   do
  2827.     while holdz == true do
  2828.       for i = 0, 1, 0.5 do
  2829.         fat.Event:wait()
  2830.         local lv = RootPart.CFrame:pointToObjectSpace(RootPart.Velocity + RootPart.Position)
  2831.         RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 5) * angles(math.rad(-lv.z / 1), math.rad(-lv.x / 1), math.rad(0)), 0.3)
  2832.         Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * cf(0, 0, 0) * angles(math.rad(10), math.rad(0), math.rad(0)), 0.3)
  2833.         RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(90), math.rad(0), math.rad(75)), 0.3)
  2834.         LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(90), math.rad(0), math.rad(-75)), 0.3)
  2835.         RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(-5), math.rad(90), math.rad(0)) * angles(math.rad(-5), math.rad(0), math.rad(0)), 0.3)
  2836.         LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(-5), math.rad(-90), math.rad(0)) * angles(math.rad(-5), math.rad(0), math.rad(0)), 0.3)
  2837.       end
  2838.       if holdz == false then
  2839.         speed.Value = speed.Value + 0.5
  2840.         Humanoid.WalkSpeed = 16 * speed.Value
  2841.         break
  2842.       end
  2843.     end
  2844.     attack = false
  2845.   end
  2846. end
  2847.  
  2848. Teleport = function()
  2849.   refpart = part(3, workspace, "SmoothPlastic", 0, 1, BrickColor.new("Really black"), "Effect", vt())
  2850.   refpart.Anchored = true
  2851.   refpart.CFrame = Torso.CFrame
  2852.   game:GetService("Debris"):AddItem(refpart, 1)
  2853.   so("http://roblox.com/asset/?id=367932544", refpart, 0.5, 0.75)
  2854.   RainbowBlockShockwave(refpart.CFrame, 2, 2, 2, 2, 2, 2, 0.1)
  2855.   Character:MoveTo(MMouse.Hit.p)
  2856.   wait()
  2857.   so("http://roblox.com/asset/?id=367932544", Torso, 0.5, 1.25)
  2858.   RainbowBlockShockwave(Torso.CFrame, 2, 2, 2, 2, 2, 2, 0.1)
  2859. end
  2860.  
  2861. hold = false
  2862. holdx = false
  2863. laserhold = false
  2864. ob1d = function(mouse)
  2865.   if attack == false and equipped == true and gyroenabled == true then
  2866.     if attack == false and attacktype == 1 then
  2867.       attacktype = 2
  2868.       attackone()
  2869.     else
  2870.       if attack == false and attacktype == 2 then
  2871.         attacktype = 3
  2872.         attacktwo()
  2873.       else
  2874.         if attack == false and attacktype == 3 then
  2875.           attacktype = 1
  2876.           attackthree()
  2877.         end
  2878.       end
  2879.     end
  2880.   end
  2881.   if holdz == true and equipped == true and gyroenabled == true and canlaser == true then
  2882.     laserhold = true
  2883.     while laserhold == true do
  2884.       LaserShot()
  2885.     end
  2886.   end
  2887. end
  2888.  
  2889. ob1u = function(mouse)
  2890.   if laserhold == true then
  2891.     laserhold = false
  2892.   end
  2893. end
  2894.  
  2895. k = function(k)
  2896.   if k == "f" and attack == false then
  2897.     if equipped == false then
  2898.       equipped = true
  2899.       RSH.Parent = nil
  2900.       LSH.Parent = nil
  2901.       RW.Parent = ch.Torso
  2902.       LW.Parent = ch.Torso
  2903.       animate.Disabled = true
  2904.       local idleanimation = Humanoid:LoadAnimation(Torso.robloxidleanimation)
  2905.       idleanimation:Play()
  2906.       equipanim()
  2907.       coroutine.resume(coroutine.create(function()
  2908.     while equipped == true do
  2909.       wait(0.1)
  2910.       RainbowBlockShockwave(LeftLeg.CFrame * cf(0, -1, 0), 2, 2, 2, 0.1, 0.1, 0.1, 0.1)
  2911.       RainbowBlockShockwave(RightLeg.CFrame * cf(0, -1, 0), 2, 2, 2, 0.1, 0.1, 0.1, 0.1)
  2912.     end
  2913.   end
  2914. ))
  2915.     else
  2916.       do
  2917.         if equipped == true then
  2918.           equipped = false
  2919.           unequipanim()
  2920.           swait(0)
  2921.           animate.Disabled = false
  2922.           RW.Parent = nil
  2923.           LW.Parent = nil
  2924.           RSH.Parent = player.Character.Torso
  2925.           LSH.Parent = player.Character.Torso
  2926.         end
  2927.         if k == "e" and attack == false and equipped == true then
  2928.           if gyro.Parent == RootPart then
  2929.             ChangeMode()
  2930.             gyro.Parent = nil
  2931.             gyroenabled = false
  2932.           else
  2933.             if gyro.Parent == nil then
  2934.               ChangeMode()
  2935.               gyro.Parent = RootPart
  2936.               gyroenabled = true
  2937.               coroutine.resume(coroutine.create(function()
  2938.     while gyroenabled == true do
  2939.       wait(0.1)
  2940.       RainbowBlockShockwave(LeftArm.CFrame * cf(0, -1, 0), 2, 2, 2, 0.1, 0.1, 0.1, 0.1)
  2941.       RainbowBlockShockwave(RightArm.CFrame * cf(0, -1, 0), 2, 2, 2, 0.1, 0.1, 0.1, 0.1)
  2942.     end
  2943.   end
  2944. ))
  2945.             end
  2946.           end
  2947.         end
  2948.         if k == "z" and attack == false and gyroenabled == true then
  2949.           LasersandStars()
  2950.         end
  2951.         if k == "z" and holdz == true and gyroenabled == true then
  2952.           holdz = false
  2953.         end
  2954.         if k == "x" and holdz == true and canrainstar == true then
  2955.           holdx = true
  2956.           while holdx == true do
  2957.             StarRain()
  2958.           end
  2959.         end
  2960.         if k == "c" and attack == false and gyroenabled == true and holdz == false then
  2961.           Teleport()
  2962.         end
  2963.       end
  2964.     end
  2965.   end
  2966. end
  2967.  
  2968. k2 = function(k)
  2969.   if k == "x" and equipped == true then
  2970.     holdx = false
  2971.   end
  2972. end
  2973.  
  2974. s = function(mouse)
  2975.   mouse.Button1Down:connect(function()
  2976.     ob1d(mouse)
  2977.   end
  2978. )
  2979.   mouse.Button1Up:connect(function()
  2980.     ob1u(mouse)
  2981.   end
  2982. )
  2983.   mouse.KeyDown:connect(k)
  2984.   mouse.KeyUp:connect(k2)
  2985.   player = Player
  2986.   ch = Character
  2987.   MMouse = mouse
  2988. end
  2989.  
  2990. ds = function(mouse)
  2991. end
  2992.  
  2993. Bin.Selected:connect(s)
  2994. Bin.Deselected:connect(ds)
  2995. local donum = 0
  2996. local sine = 0
  2997. local change = 1
  2998. local val = 0
  2999. fat.Event:connect(function()
  3000.   ammolabel.Text = "Speed [" .. speed.Value .. "]"
  3001.   ammolabel2.Text = "Damage [" .. damagea.Value .. "]"
  3002.   ammolabel3.Text = "Defense [" .. defense.Value .. "]"
  3003.   gyro.CFrame = CFrame.new(Vector3.new(1, 0, 1), cam.CoordinateFrame.p - RootPart.CFrame.p.unit * -100)
  3004.   sine = sine + change
  3005.   local torvel = RootPart.Velocity * Vector3.new(1, 0, 1).magnitude
  3006.   local velderp = RootPart.Velocity.y
  3007.   hitfloor = rayCast(RootPart.Position, CFrame.new(RootPart.Position, RootPart.Position - Vector3.new(0, 1, 0)).lookVector, 4, Character)
  3008.   if donum >= 0.5 then
  3009.     handidle = true
  3010.   else
  3011.     if donum <= 0 then
  3012.       handidle = false
  3013.     end
  3014.   end
  3015.   if handidle == false then
  3016.     donum = donum + 0.003
  3017.   else
  3018.     donum = donum - 0.003
  3019.   end
  3020.   if equipped == true or equipped == false then
  3021.     if attack == false then
  3022.       idle = idle + 1
  3023.     else
  3024.       idle = 0
  3025.     end
  3026.     if ((idle >= 500 and attack ~= false) or RootPart.Velocity.y > 1) and hitfloor == nil then
  3027.       Anim = "Jump"
  3028.       if attack == false and equipped == true and gyroenabled == false then
  3029.         fat.Event:wait()
  3030.         Humanoid.WalkSpeed = 16 * speed.Value
  3031.       else
  3032.         if attack == false and equipped == true and gyroenabled == true then
  3033.           fat.Event:wait()
  3034.           Humanoid.WalkSpeed = 16 * speed.Value
  3035.         end
  3036.       end
  3037.     else
  3038.       if RootPart.Velocity.y < -1 and hitfloor == nil then
  3039.         Anim = "Fall"
  3040.         if attack == false and equipped == true and gyroenabled == false then
  3041.           fat.Event:wait()
  3042.           Humanoid.WalkSpeed = 16 * speed.Value
  3043.         else
  3044.           if attack == false and equipped == true and gyroenabled == true then
  3045.             fat.Event:wait()
  3046.             Humanoid.WalkSpeed = 16 * speed.Value
  3047.           end
  3048.         end
  3049.       else
  3050.         if torvel.x < 1 and torvel.z < 1 and hit ~= nil then
  3051.           Anim = "Idle"
  3052.           if attack == false and equipped == true and gyroenabled == false then
  3053.             fat.Event:wait()
  3054.             Humanoid.WalkSpeed = 16 * speed.Value
  3055.             RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 3 - 0.25 * math.cos(sine / 20) + -math.sin(sine / 20) / 5) * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3)
  3056.             Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * cf(0, 0, 0) * angles(math.rad(-5 * math.cos(sine / 20)), math.rad(0), math.rad(0)), 0.3)
  3057.             RW.C0 = clerp(RW.C0, CFrame.new(0.75, 0.5 - 0.1 * math.cos(sine / 20), -0.35) * angles(math.rad(0), math.rad(90), math.rad(0)) * angles(math.rad(0), math.rad(70), math.rad(80)), 0.3)
  3058.             LW.C0 = clerp(LW.C0, CFrame.new(-1, 0.5 - 0.1 * math.cos(sine / 20), -0.45) * angles(math.rad(0), math.rad(-90), math.rad(0)) * angles(math.rad(0), math.rad(-60), math.rad(-90)), 0.3)
  3059.             RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(-5), math.rad(90), math.rad(0)) * angles(math.rad(-5 - 2.5 * math.cos(sine / 20)), math.rad(0), math.rad(0)), 0.3)
  3060.             LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(-5), math.rad(-90), math.rad(0)) * angles(math.rad(-5 - 2.5 * math.cos(sine / 20)), math.rad(0), math.rad(0)), 0.3)
  3061.           else
  3062.             if attack == false and equipped == true and gyroenabled == true then
  3063.               fat.Event:wait()
  3064.               Humanoid.WalkSpeed = 16 * speed.Value
  3065.               RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 3 - 0.25 * math.cos(sine / 20) + -math.sin(sine / 20) / 5) * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3)
  3066.               Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * cf(0, 0, 0) * angles(math.rad(-5 * math.cos(sine / 20)), math.rad(0), math.rad(0)), 0.3)
  3067.               RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(15 + 5 * math.cos(sine / 20)), math.rad(-15), math.rad(30 + 5 * math.cos(sine / 20))), 0.3)
  3068.               LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(15 + 5 * math.cos(sine / 20)), math.rad(15), math.rad(-30 - 5 * math.cos(sine / 20))), 0.3)
  3069.               RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(-5), math.rad(90), math.rad(0)) * angles(math.rad(-5 - 2.5 * math.cos(sine / 20)), math.rad(0), math.rad(0)), 0.3)
  3070.               LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(-5), math.rad(-90), math.rad(0)) * angles(math.rad(-5 - 2.5 * math.cos(sine / 20)), math.rad(0), math.rad(0)), 0.3)
  3071.             end
  3072.           end
  3073.         else
  3074.           if torvel.x < 2 and torvel.z < 2 and hit ~= nil then
  3075.             Anim = "Walk"
  3076.             if attack == false and equipped == true and gyroenabled == false then
  3077.               fat.Event:wait()
  3078.               local lv = RootPart.CFrame:pointToObjectSpace(RootPart.Velocity + RootPart.Position)
  3079.               Humanoid.WalkSpeed = 16 * speed.Value
  3080.               RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 3 - 0.25 * math.cos(sine / 20) + -math.sin(sine / 20) / 5) * angles(math.rad(20 * speed.Value), math.rad(0) + RootPart.RotVelocity.Y / 30, math.rad(0)), 0.3)
  3081.               Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * cf(0, 0, 0) * angles(math.rad(-10), math.rad(0), math.rad(0) + Head.RotVelocity.Y / 15), 0.3)
  3082.               RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(-20 * speed.Value), math.rad(0), math.rad(20)), 0.3)
  3083.               LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-20 * speed.Value), math.rad(0), math.rad(-20)), 0.3)
  3084.               RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(-20 * speed.Value), math.rad(90), math.rad(0)) * angles(math.rad(-10), math.rad(0), math.rad(0)), 0.3)
  3085.               LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(-20 * speed.Value), math.rad(-90), math.rad(0)) * angles(math.rad(-10), math.rad(0), math.rad(0)), 0.3)
  3086.             else
  3087.               do
  3088.                 if attack == false and equipped == true and gyroenabled == true then
  3089.                   fat.Event:wait()
  3090.                   local lv = RootPart.CFrame:pointToObjectSpace(RootPart.Velocity + RootPart.Position)
  3091.                   Humanoid.WalkSpeed = 16 * speed.Value
  3092.                   RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 3 - 0.25 * math.cos(sine / 20) + -math.sin(sine / 20) / 5) * angles(math.rad(-lv.z / 1), math.rad(-lv.x / 1), math.rad(0)), 0.3)
  3093.                   Torso.Neck.C0 = clerp(Torso.Neck.C0, necko * cf(0, 0, 0) * angles(math.rad(lv.z / 1), math.rad(lv.x / 1), math.rad(0)), 0.3)
  3094.                   RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(lv.z / 1), math.rad(0), math.rad(10 + -lv.x / 1)), 0.3)
  3095.                   LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(lv.z / 1), math.rad(0), math.rad(-10 + -lv.x / 1)), 0.3)
  3096.                   RH.C0 = clerp(RH.C0, cf(1, -1, 0) * angles(math.rad(lv.z / 1), math.rad(90), math.rad(0)) * angles(math.rad(-5 + lv.x / 1), math.rad(0), math.rad(0)), 0.3)
  3097.                   LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * angles(math.rad(lv.z / 1), math.rad(-90), math.rad(0)) * angles(math.rad(-5 + -lv.x / 1), math.rad(0), math.rad(0)), 0.3)
  3098.                 end
  3099.               end
  3100.             end
  3101.           end
  3102.         end
  3103.       end
  3104.     end
  3105.   end
  3106. end
  3107. )
RAW Paste Data
Top