Advertisement
Guest User

V2

a guest
Mar 23rd, 2018
164
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 67.03 KB | None | 0 0
  1. -- Objects
  2.  
  3. local ScreenGui = Instance.new("ScreenGui")
  4. local Scripts = Instance.new("Frame")
  5. local Frame = Instance.new("Frame")
  6. local Frame_2 = Instance.new("Frame")
  7. local Title = Instance.new("TextLabel")
  8. local ThomasTheDankEngine = Instance.new("TextButton")
  9. local Anthro = Instance.new("TextButton")
  10. local ForceField = Instance.new("TextButton")
  11. local Dance = Instance.new("TextButton")
  12. local Tails = Instance.new("TextButton")
  13. local Lightning = Instance.new("TextButton")
  14. local ExecutorOpener = Instance.new("TextButton")
  15. local Executor = Instance.new("Frame")
  16. local Frame_3 = Instance.new("Frame")
  17. local ScrollingFrame = Instance.new("ScrollingFrame")
  18. local input = Instance.new("TextBox")
  19. local Execute = Instance.new("TextButton")
  20. local Clear = Instance.new("TextButton")
  21. local TextButton = Instance.new("TextButton")
  22.  
  23. -- Properties
  24.  
  25. ScreenGui.Parent = game.Players.LocalPlayer.PlayerGui
  26.  
  27. Scripts.Name = "Scripts"
  28. Scripts.Parent = ScreenGui
  29. Scripts.BackgroundColor3 = Color3.new(0.196078, 0.196078, 0.196078)
  30. Scripts.BorderColor3 = Color3.new(0, 0, 0)
  31. Scripts.BorderSizePixel = 5
  32. Scripts.Position = UDim2.new(0, 0, 0, 214)
  33. Scripts.Size = UDim2.new(0, 321, 0, 323)
  34.  
  35. Frame.Parent = Scripts
  36. Frame.BackgroundColor3 = Color3.new(0, 0, 0)
  37. Frame.BorderSizePixel = 0
  38. Frame.Size = UDim2.new(0, 321, 0, 35)
  39.  
  40. Frame_2.Parent = Scripts
  41. Frame_2.BackgroundColor3 = Color3.new(1, 1, 1)
  42. Frame_2.Position = UDim2.new(0, 21, 0, 91)
  43. Frame_2.Size = UDim2.new(0, 279, 0, -1)
  44.  
  45. Title.Name = "Title"
  46. Title.Parent = Scripts
  47. Title.BackgroundColor3 = Color3.new(1, 1, 1)
  48. Title.BackgroundTransparency = 1
  49. Title.Position = UDim2.new(0, 23, 0, 46)
  50. Title.Size = UDim2.new(0, 275, 0, 50)
  51. Title.Font = Enum.Font.SourceSans
  52. Title.Text = "Void Exploit"
  53. Title.TextColor3 = Color3.new(1, 1, 1)
  54. Title.TextScaled = true
  55. Title.TextSize = 14
  56. Title.TextWrapped = true
  57.  
  58. ThomasTheDankEngine.Name = "Thomas The Dank Engine"
  59. ThomasTheDankEngine.Parent = Scripts
  60. ThomasTheDankEngine.BackgroundColor3 = Color3.new(0.117647, 0.117647, 0.117647)
  61. ThomasTheDankEngine.BorderColor3 = Color3.new(0, 0, 0)
  62. ThomasTheDankEngine.BorderSizePixel = 5
  63. ThomasTheDankEngine.Position = UDim2.new(0, 0, 0, 128)
  64. ThomasTheDankEngine.Size = UDim2.new(0, 70, 0, 34)
  65. ThomasTheDankEngine.Font = Enum.Font.SourceSans
  66. ThomasTheDankEngine.Text = "Thomas The Dank Engine"
  67. ThomasTheDankEngine.TextColor3 = Color3.new(1, 1, 1)
  68. ThomasTheDankEngine.TextScaled = true
  69. ThomasTheDankEngine.TextSize = 25
  70. ThomasTheDankEngine.TextWrapped = true
  71.  
  72. ThomasTheDankEngine.MouseButton1Down:connect(function()
  73. -- ty krystalburger
  74. --[[
  75. Thomas The Dank Engine:
  76. By: KrystalTeam
  77. Features: Being a dank engine that kill people
  78. Version: 1.0.0.2
  79. --]]
  80.  
  81. local p = game.Players.LocalPlayer.Character
  82. local weld = Instance.new("Weld",p.Torso)
  83. weld.Part0 = p.Torso
  84.  
  85. local train = Instance.new("Part",p.Torso)
  86. train.Anchored = true
  87. train.CanCollide = false
  88. train.Size = Vector3.new(3,2,6)
  89. train.CustomPhysicalProperties = PhysicalProperties.new(0,0,0,0,0)
  90. weld.Part1 = train
  91. weld.C1 = CFrame.new(0,0,0) * CFrame.Angles(0,math.rad(180),0)
  92. train.Anchored = false
  93. local TrainMesh = Instance.new("SpecialMesh",train)
  94. TrainMesh.MeshType = Enum.MeshType.FileMesh
  95. TrainMesh.Scale = Vector3.new(0.020,0.020,0.015)
  96. TrainMesh.MeshId = "rbxassetid://431017802"
  97. TrainMesh.TextureId = "rbxassetid://431017809"
  98.  
  99.  
  100. local weld2 = Instance.new("Weld",p.Torso)
  101. weld2.Part0 = p.Torso
  102. local Smoke = Instance.new("Part",p.Torso)
  103. Smoke.Anchored = true
  104. Smoke.CanCollide = false
  105. Smoke.Size = Vector3.new(1,1,1)
  106. Smoke.CustomPhysicalProperties = PhysicalProperties.new(0,0,0,0,0)
  107. weld2.Part1 = Smoke
  108. weld2.C1 = CFrame.new(0,-4,3.5)-- * CFrame.Angles(0,math.rad(180),0)
  109. Smoke.Anchored = false
  110. Smoke.Transparency = 1;
  111.  
  112. local Particle = Instance.new("ParticleEmitter",Smoke)
  113. Particle.Rate = 50;
  114. Particle.Speed = NumberRange.new(30,60);
  115. Particle.VelocitySpread = 4;
  116. Particle.Texture = "rbxassetid://133619974"
  117.  
  118. local Light = Instance.new("SpotLight",train)
  119. Light.Angle = 45;
  120. Light.Brightness = 100;
  121. Light.Face = Enum.NormalId.Back;
  122. Light.Range = 30;
  123.  
  124. p.Humanoid.WalkSpeed = 60;
  125.  
  126.  
  127. for i,v in pairs(p:GetChildren()) do
  128. if v:IsA("Part") then
  129. v.Transparency = 1;
  130. elseif v:IsA("Hat") then
  131. v:Destroy()
  132. elseif v:IsA("Model") then
  133. v:Destroy()
  134. end
  135. end
  136.  
  137. local function SFX(id) local s=Instance.new("Sound",p.Torso); s.SoundId = "rbxassetid://"..id; s.Volume = 1; return s; end
  138. train.Touched:connect(function(p)
  139. if p.Parent then
  140. if p.Parent:IsA("Model") then
  141. if game.Players:FindFirstChild(p.Parent.Name) then
  142. if p.Parent.Name ~= game.Players.LocalPlayer.Name then
  143. game.Players:FindFirstChild(p.Parent.Name).Character:BreakJoints()
  144. local Whistle = SFX(475073913)
  145. Whistle:Play()
  146. end
  147. end
  148. end
  149. end
  150. end)
  151.  
  152. local Music = SFX(190819252)
  153. Music.Looped = true;
  154. wait(1)
  155. Music:Play();
  156. -- ~CL 2016
  157. end)
  158.  
  159. Anthro.Name = "Anthro"
  160. Anthro.Parent = Scripts
  161. Anthro.BackgroundColor3 = Color3.new(0.117647, 0.117647, 0.117647)
  162. Anthro.BorderColor3 = Color3.new(0, 0, 0)
  163. Anthro.BorderSizePixel = 5
  164. Anthro.Position = UDim2.new(0, 104, 0, 127)
  165. Anthro.Size = UDim2.new(0, 81, 0, 34)
  166. Anthro.Font = Enum.Font.SourceSans
  167. Anthro.Text = "LazerGun"
  168. Anthro.TextColor3 = Color3.new(1, 1, 1)
  169. Anthro.TextScaled = true
  170. Anthro.TextSize = 25
  171. Anthro.TextWrapped = true
  172.  
  173. Anthro.MouseButton1Down:connect(function()
  174. ----------------------------------------
  175. -- Originally made by Alfederate :D --
  176. ----------------------------------------
  177.  
  178. -- there's no time to explain! --
  179.  
  180. local new=Instance.new
  181. local rad=math.rad
  182. local cf=CFrame.new
  183. local v3=Vector3.new
  184. local ang=function(x,y,z)
  185. return CFrame.Angles(rad(x),rad(y),rad(z))
  186. end
  187. local player=game:service'Players'.LocalPlayer
  188. local char=player.Character
  189. local cam=workspace.Camera
  190. local mouse=player:GetMouse()
  191. local weld=function(a,b,c0,c1)
  192. m=Instance.new('Motor',a)
  193. m.Part0=a
  194. m.Part1=b
  195. m.C0=c0
  196. m.C1=c1
  197. return m
  198. end
  199.  
  200. snd='rbxassetid://306197164'
  201. beamm=Instance.new('Model',workspace)
  202. beamm.Name='beam'
  203.  
  204. laser=false
  205.  
  206. rs=Instance.new('Part',char)
  207. rs.Transparency=1
  208. rs.CanCollide=false
  209. rs.TopSurface,rs.BottomSurface=0,0
  210. rs.FormFactor=3
  211. rs.Size=Vector3.new(.5,.5,.5)
  212.  
  213. ls=rs:Clone()
  214. ls.Parent=char
  215.  
  216. rsw=weld(rs,char.Torso,cf(-1,-.5,0),cf())
  217. lsw=weld(ls,char.Torso,cf(1,-.5,0),cf())
  218. raw=weld(char['Right Arm'],rs,cf(-.5,.6,-.14),ang(90,0,-8))
  219. law=weld(char['Left Arm'],ls,cf(-.3,1.5,-.14),ang(90,0,43))
  220.  
  221. s1=Instance.new('Sound',char)
  222. s1.Volume=1
  223. s1.Pitch=1
  224. s1.Looped=true
  225. s1.SoundId=snd
  226.  
  227. particles={}
  228.  
  229. local wep=new('Part',char)
  230. wep.FormFactor=3
  231. wep.CanCollide=false
  232. wep.Size=v3(1,3,1)
  233. wep.TopSurface,wep.BottomSurface=0,0
  234. local wepw=weld(wep,char['Right Arm'],cf(.26,.4,.7),ang(0,0,8))
  235.  
  236. local beam=wep:Clone()
  237. beam:ClearAllChildren()
  238. beam.Material='Neon'
  239. beam.BrickColor=BrickColor.new('Toothpaste')
  240. beam.Size=Vector3.new(3,3,1)
  241. beam.Transparency=.5
  242. beam.Anchored=true
  243. local ms=Instance.new('BlockMesh',beam)
  244. local inner=beam:Clone()
  245. inner.Transparency=0
  246. inner.Material='SmoothPlastic'
  247. inner.BrickColor=BrickColor.new('Navy blue')
  248. local ms2=inner.Mesh
  249.  
  250. local expl=inner:Clone()
  251. expl.Mesh:Destroy()
  252. expl.Material='Neon'
  253. expl.BrickColor=BrickColor.new('Toothpaste')
  254. expl.Size=Vector3.new(11,11,11)
  255. expl.Transparency=.55
  256. pl=Instance.new('PointLight',expl)
  257. pl.Color=expl.BrickColor.Color
  258. pl.Range=pl.Range*2
  259. pl.Name='light'
  260. local br=pl.Range
  261.  
  262. local exa=expl:Clone()
  263. exa.Size=Vector3.new(4,4,4)
  264. pl2=exa.light
  265.  
  266. local part=exa:Clone()
  267. part.Size=Vector3.new(1.5,1.5,1.5)
  268. pl3=part.light
  269. pms=Instance.new('BlockMesh',part)
  270.  
  271. char.Humanoid.Died:connect(function()
  272. laser=false
  273. beam.Parent=nil
  274. inner.Parent=nil
  275. expl.Parent=nil
  276. exa.Parent=nil
  277. s1:stop()
  278. end)
  279.  
  280. mouse.Button1Down:connect(function() if char.Humanoid.Health~=0 then
  281. laser=true
  282. s1.Volume=1
  283. s1:play()
  284. end end)
  285. mouse.Button1Up:connect(function()
  286. laser=false
  287. beam.Parent=nil
  288. inner.Parent=nil
  289. expl.Parent=nil
  290. exa.Parent=nil
  291. s1:stop()
  292. end)
  293.  
  294. parti=0
  295. game:service'RunService'.Stepped:connect(function()
  296. parti=parti+1
  297. for i,v in pairs(particles) do
  298. v.CFrame=v.CFrame*CFrame.new(0,0,-.3)
  299. v.Transparency=v.Transparency+.08
  300. if v.Transparency >= 1 then
  301. v:Destroy()
  302. table.remove(particles,i)
  303. else
  304. v.Parent=beamm
  305. end
  306. end
  307. a=cam.CoordinateFrame.p
  308. b=mouse.Hit.p
  309. mhitr=Ray.new(a,(b-a).unit*999)
  310. mhit,ps=workspace:FindPartOnRayWithIgnoreList(mhitr,{char,beamm})
  311. raw.C1=ang(90+(mouse.Hit.lookVector.y*90),0,-8)
  312. law.C1=ang(90+(mouse.Hit.lookVector.y*90),0,43)
  313. if not char.Humanoid.Sit and not char.Humanoid.PlatformStand then
  314. char.Torso.CFrame=CFrame.new(char.Torso.CFrame.p,Vector3.new(ps.x,char.Torso.CFrame.p.y,ps.z))
  315. end
  316. if laser then
  317. beamm.Parent=workspace
  318. beam.Parent=beamm
  319. inner.Parent=beamm
  320. expl.Parent=beamm
  321. exa.Parent=beamm
  322. s1.Volume=s1.Volume-.002
  323.  
  324. ray=Ray.new((wep.CFrame*cf(0,-1.5,0)).p,((wep.CFrame*cf(0,-10,0)).p-(wep.CFrame*cf(0,-1.5,0)).p).unit*999)
  325. hit,pos=workspace:FindPartOnRayWithIgnoreList(ray,{char,beamm})
  326.  
  327. if hit and hit.Parent:findFirstChild('Humanoid') and s1.Volume > .3 and parti/8==math.floor(parti/8) then
  328. Instance.new('Explosion',workspace).Position=pos
  329. end
  330. if hit and hit.Parent==workspace.Terrain or hit==workspace.Terrain and parti/8==math.floor(parti/8) then
  331. e=Instance.new('Explosion',workspace)
  332. e.Position=pos
  333. e.BlastRadius=14
  334. e.BlastPressure=1e4
  335. end
  336. if hit and not hit.Anchored and not (hit:GetMass()>1e4) then
  337. hit.Velocity=hit.Velocity+beam.CFrame.lookVector*(1*s1.Volume*hit:GetMass())
  338. end
  339.  
  340. if parti==math.floor(parti) then
  341. par=part:Clone()
  342. table.insert(particles,par)
  343. par.Parent=beamm
  344. par.Transparency=1-s1.Volume
  345. par.light.Range=br*s1.Volume
  346. par.CFrame=cf(pos)*ang(math.random(-180,180),math.random(-180,180),math.random(-180,180))*cf(0,0,-10)
  347. end
  348.  
  349. mag=((wep.CFrame*cf(0,-1.5,0)).p-pos).magnitude
  350. ms.Scale=v3(s1.Volume,s1.Volume,mag)
  351. ms2.Scale=v3(ms.Scale.x/2,ms.Scale.y/2,mag-(.1/mag))
  352. beam.CFrame=cf((wep.CFrame*cf(0,-1.5,0)).p,pos)*cf(0,0,-mag/2)*ang(0,0,math.random(0,180))
  353. inner.CFrame=beam.CFrame
  354. pl.Range=br*s1.Volume
  355. pl2.Range=br*s1.Volume
  356. expl.Size=v3(math.random(9,13),math.random(9,13),math.random(9,13))*s1.Volume
  357. expl.Transparency=math.random(40,60)/100
  358. expl.CFrame=cf(pos)*ang(math.random(0,180),math.random(0,180),math.random(0,180))
  359. exa.Size=v3(4,4,4)*s1.Volume
  360. exa.CFrame=wep.CFrame*cf(0,-1.5,0)*ang(math.random(0,180),math.random(0,180),math.random(0,180))
  361. char.Torso.Velocity=char.Torso.Velocity-beam.CFrame.lookVector*(7*s1.Volume)
  362. end
  363. end)
  364. end)
  365.  
  366. ForceField.Name = "ForceField"
  367. ForceField.Parent = Scripts
  368. ForceField.BackgroundColor3 = Color3.new(0.117647, 0.117647, 0.117647)
  369. ForceField.BorderColor3 = Color3.new(0, 0, 0)
  370. ForceField.BorderSizePixel = 5
  371. ForceField.Position = UDim2.new(0, 213, 0, 127)
  372. ForceField.Size = UDim2.new(0, 84, 0, 34)
  373. ForceField.Font = Enum.Font.SourceSans
  374. ForceField.Text = "ForceField"
  375. ForceField.TextColor3 = Color3.new(1, 1, 1)
  376. ForceField.TextScaled = true
  377. ForceField.TextSize = 25
  378. ForceField.TextWrapped = true
  379.  
  380. ForceField.MouseButton1Down:connect(function()
  381. local p = game.Players.LocalPlayer
  382. local char = p.Character
  383. local size = 8
  384. part = function()
  385.  
  386. local a = Instance.new("Part", script)
  387. a.Anchored = true
  388. a.CanCollide = true
  389. a.CFrame = char.Torso.CFrame
  390. a.Size = Vector3.new(size, 0.2, 0.2)
  391. a.Transparency = 1
  392. return a
  393. end
  394.  
  395. part2 = function()
  396.  
  397. local a = Instance.new("Part", script)
  398. a.Anchored = true
  399. a.CanCollide = true
  400. a.CFrame = char.Torso.CFrame
  401. a.Size = Vector3.new(0.2, size, 0.2)
  402. a.Transparency = 1
  403. return a
  404. end
  405.  
  406. part3 = function()
  407.  
  408. local a = Instance.new("Part", script)
  409. a.Anchored = true
  410. a.CanCollide = false
  411. a.Size = Vector3.new(size, size, 1)
  412. a.Transparency = 0.7
  413. a.Material = "Neon"
  414. a.BrickColor = BrickColor.new("Really red")
  415. local b = Instance.new("BlockMesh", a)
  416. b.Scale = Vector3.new(1, 1, 0)
  417. return a
  418. end
  419.  
  420. local replicating = false
  421. local root, a, b, c, d, a2, b2, c2, d2, aa, bb, cc, dd, z, x, c, v, b, n = nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil
  422. replicate = function()
  423.  
  424. replicating = true
  425. script:ClearAllChildren()
  426. root = part()
  427. root.Transparency = 1
  428. root.Size = Vector3.new(0.2, 0.2, 0.2)
  429. root.CanCollide = false
  430. a = part()
  431. b = part()
  432. c = part()
  433. d = part()
  434. a2 = part()
  435. b2 = part()
  436. c2 = part()
  437. d2 = part()
  438. aa = part2()
  439. bb = part2()
  440. cc = part2()
  441. dd = part2()
  442. z = part3()
  443. x = part3()
  444. c = part3()
  445. v = part3()
  446. b = part3()
  447. n = part3()
  448. replicating = false
  449. end
  450.  
  451. script.ChildRemoved:connect(function(a)
  452.  
  453. if a.ClassName == "Part" and replicating == false then
  454. replicate()
  455. end
  456. end
  457. )
  458. replicate()
  459. local tick = 0
  460. CreateRegion3FromLocAndSize = function(Position, Size)
  461.  
  462. local SizeOffset = Size / 2
  463. local Point1 = Position - SizeOffset
  464. local Point2 = Position + SizeOffset
  465. return Region3.new(Point1, Point2)
  466. end
  467.  
  468. local set = false
  469. local whitelist = {"Hieroku", "PPATTA", "DevGamerzz", "I kill U", "kash5", "ZeroCrimson", "Zaidia", "tsup2", "PointCoded", "CLarramore", "Suzuuki", "", "", ""}
  470. p.Chatted:connect(function(ms)
  471.  
  472. if ms:sub(1, 5) == "size-" then
  473. size = tonumber(ms:sub(6))
  474. replicate()
  475. else
  476. if ms:sub(1, 4) == "set-" then
  477. set = true
  478. z.CanCollide = false
  479. x.CanCollide = false
  480. c.CanCollide = false
  481. v.CanCollide = false
  482. b.CanCollide = false
  483. n.CanCollide = false
  484. else
  485. if ms:sub(1, 6) == "unset-" then
  486. set = false
  487. z.CanCollide = false
  488. x.CanCollide = false
  489. c.CanCollide = false
  490. v.CanCollide = false
  491. b.CanCollide = false
  492. n.CanCollide = false
  493. else
  494. if ms:sub(1, 10) == "whitelist-" then
  495. table.insert(whitelist, ms:sub(11))
  496. else
  497. if ms:sub(1, 12) == "unwhitelist-" then
  498. for i,v in pairs(whitelist) do
  499. if ms:sub(13) == v then
  500. table.remove(whitelist, i)
  501. break
  502. end
  503. end
  504. end
  505. end
  506. end
  507. end
  508. end
  509. end
  510. )
  511. local magicpos = nil
  512. game:GetService("RunService").Heartbeat:connect(function()
  513.  
  514. pcall(function()
  515.  
  516. local void = char:GetChildren()
  517. for _,pl in pairs(whitelist) do
  518. if game.Players:FindFirstChild(pl) ~= nil and game.Players:FindFirstChild(pl).Character ~= nil then
  519. for i,v in pairs(game.Players[pl].Character:GetChildren()) do
  520. table.insert(void, v)
  521. end
  522. end
  523. end
  524. for i,v in pairs(game.Players:GetPlayers()) do
  525. if v.Character:isDescendantOf(char) and not v.Name == "FangxWulf" then
  526. v:LoadCharacter()
  527. end
  528. end
  529. char.Humanoid.Health = math.huge
  530. tick = tick + 0.01
  531. if not set then
  532. root.CFrame = root.CFrame:lerp(CFrame.new(char.Torso.CFrame.p) * CFrame.Angles(math.sin(tick) * 100 / 30 / (size / 2), math.cos(tick) * 100 / 30 / (size / 2), math.cos(tick) * 100 / 30 / (size / 2)), 0.1)
  533. magicpos = char.Torso.CFrame
  534. else
  535. root.CFrame = root.CFrame:lerp(CFrame.new(magicpos.p) * CFrame.Angles(0, 0, 0), 0.05)
  536. end
  537. local reg = CreateRegion3FromLocAndSize(root.CFrame.p, Vector3.new(size, size, size))
  538. for i,v in pairs(game.Workspace:FindPartsInRegion3WithIgnoreList(reg, void, 100)) do
  539. if v.Name ~= "Base" then
  540. v:Destroy()
  541. end
  542. end
  543. a.CFrame = root.CFrame * CFrame.new(size / 2, size / 2, 0) * CFrame.Angles(0, math.rad(90), 0)
  544. b.CFrame = root.CFrame * CFrame.new(-size / 2, size / 2, 0) * CFrame.Angles(0, math.rad(90), 0)
  545. c.CFrame = root.CFrame * CFrame.new(0, size / 2, size / 2)
  546. d.CFrame = root.CFrame * CFrame.new(0, size / 2, -size / 2)
  547. a2.CFrame = root.CFrame * CFrame.new(size / 2, -size / 2, 0) * CFrame.Angles(0, math.rad(90), 0)
  548. b2.CFrame = root.CFrame * CFrame.new(-size / 2, -size / 2, 0) * CFrame.Angles(0, math.rad(90), 0)
  549. c2.CFrame = root.CFrame * CFrame.new(0, -size / 2, size / 2)
  550. d2.CFrame = root.CFrame * CFrame.new(0, -size / 2, -size / 2)
  551. aa.CFrame = root.CFrame * CFrame.new(size / 2, 0, size / 2)
  552. bb.CFrame = root.CFrame * CFrame.new(-size / 2, 0, size / 2)
  553. cc.CFrame = root.CFrame * CFrame.new(-size / 2, 0, -size / 2)
  554. dd.CFrame = root.CFrame * CFrame.new(size / 2, 0, -size / 2)
  555. z.CFrame = root.CFrame * CFrame.new(size / 2, 0, 0) * CFrame.Angles(0, math.rad(90), 0)
  556. x.CFrame = root.CFrame * CFrame.new(-size / 2, 0, 0) * CFrame.Angles(0, math.rad(90), 0)
  557. c.CFrame = root.CFrame * CFrame.new(0, 0, size / 2) * CFrame.Angles(0, 0, math.rad(90))
  558. v.CFrame = root.CFrame * CFrame.new(0, 0, -size / 2) * CFrame.Angles(0, 0, math.rad(90))
  559. b.CFrame = root.CFrame * CFrame.new(0, size / 2, 0) * CFrame.Angles(math.rad(90), 0, 0)
  560. n.CFrame = root.CFrame * CFrame.new(0, -size / 2, 0) * CFrame.Angles(math.rad(90), 0, 0)
  561. end
  562. )
  563. end
  564. )
  565. end)
  566.  
  567. Dance.Name = "Dance"
  568. Dance.Parent = Scripts
  569. Dance.BackgroundColor3 = Color3.new(0.117647, 0.117647, 0.117647)
  570. Dance.BorderColor3 = Color3.new(0, 0, 0)
  571. Dance.BorderSizePixel = 5
  572. Dance.Position = UDim2.new(0, 0, 0, 192)
  573. Dance.Size = UDim2.new(0, 68, 0, 34)
  574. Dance.Font = Enum.Font.SourceSans
  575. Dance.Text = "Dance"
  576. Dance.TextColor3 = Color3.new(1, 1, 1)
  577. Dance.TextScaled = true
  578. Dance.TextSize = 25
  579. Dance.TextWrapped = true
  580.  
  581. Dance.MouseButton1Down:connect(function()
  582. -----------------------------------------------
  583. --DANCE TO THE BEAT, WAVE YOUR HANDS TOGETHER--
  584. ------------------------------------------------
  585. --I wanted to make something like Heavy Dance.--
  586. -- ~Sugarie --
  587. ------------------------------------------------
  588.  
  589. wait(1/60)
  590. Effects = { }
  591. local Player = game:service'Players'.localPlayer
  592. local chara = Player.Character
  593. local Humanoid = chara:FindFirstChildOfClass("Humanoid")
  594. local Mouse = Player:GetMouse()
  595. local LeftArm = chara["Left Arm"]
  596. local RightArm = chara["Right Arm"]
  597. local LeftLeg = chara["Left Leg"]
  598. local RightLeg = chara["Right Leg"]
  599. local Head = chara.Head
  600. local Torso = chara.Torso
  601. local Camera = game.Workspace.CurrentCamera
  602. local RootPart = chara.HumanoidRootPart
  603. local RootJoint = RootPart.RootJoint
  604. local attack = false
  605. local Anim = 'Idle'
  606. local attacktype = 1
  607. local delays = false
  608. local play = true
  609. local targetted = nil
  610. local Torsovelocity = (RootPart.Velocity * Vector3.new(1, 0, 1)).magnitude
  611. local velocity = RootPart.Velocity.y
  612. local sine = 0
  613. local change = 1
  614. local doe = 0
  615. local Create = LoadLibrary("RbxUtility").Create
  616. Humanoid.WalkSpeed = 2
  617.  
  618. Humanoid.Animator.Parent = nil
  619. chara.Animate.Parent = nil
  620.  
  621. local newMotor = function(part0, part1, c0, c1)
  622. local w = Create('Motor'){
  623. Parent = part0,
  624. Part0 = part0,
  625. Part1 = part1,
  626. C0 = c0,
  627. C1 = c1,
  628. }
  629. return w
  630. end
  631.  
  632. function clerp(a, b, t)
  633. return a:lerp(b, t)
  634. end
  635.  
  636. RootCF = CFrame.fromEulerAnglesXYZ(-1.57, 0, 3.14)
  637. NeckCF = CFrame.new(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
  638.  
  639. local RW = newMotor(Torso, RightArm, CFrame.new(1.5, 0, 0), CFrame.new(0, 0, 0))
  640. local LW = newMotor(Torso, LeftArm, CFrame.new(-1.5, 0, 0), CFrame.new(0, 0, 0))
  641. local RH = newMotor(Torso, RightLeg, CFrame.new(.5, -2, 0), CFrame.new(0, 0, 0))
  642. local LH = newMotor(Torso, LeftLeg, CFrame.new(-.5, -2, 0), CFrame.new(0, 0, 0))
  643. RootJoint.C1 = CFrame.new(0, 0, 0)
  644. RootJoint.C0 = CFrame.new(0, 0, 0)
  645. Torso.Neck.C1 = CFrame.new(0, 0, 0)
  646. Torso.Neck.C0 = CFrame.new(0, 1.5, 0)
  647.  
  648. local rarmc1 = RW.C1
  649. local larmc1 = LW.C1
  650. local rlegc1 = RH.C1
  651. local llegc1 = LH.C1
  652.  
  653. local resetc1 = false
  654.  
  655. function PlayAnimationFromTable(table, speed, bool)
  656. RootJoint.C0 = clerp(RootJoint.C0, table[1], speed)
  657. Torso.Neck.C0 = clerp(Torso.Neck.C0, table[2], speed)
  658. RW.C0 = clerp(RW.C0, table[3], speed)
  659. LW.C0 = clerp(LW.C0, table[4], speed)
  660. RH.C0 = clerp(RH.C0, table[5], speed)
  661. LH.C0 = clerp(LH.C0, table[6], speed)
  662. if bool == true then
  663. if resetc1 == false then
  664. resetc1 = true
  665. RootJoint.C1 = RootJoint.C1
  666. Torso.Neck.C1 = Torso.Neck.C1
  667. RW.C1 = rarmc1
  668. LW.C1 = larmc1
  669. RH.C1 = rlegc1
  670. LH.C1 = llegc1
  671. end
  672. end
  673. end
  674.  
  675. ArtificialHB = Instance.new("BindableEvent", script)
  676. ArtificialHB.Name = "Heartbeat"
  677. script:WaitForChild("Heartbeat")
  678. frame = 0.03333333333333
  679. tf = 0
  680. allowframeloss = false
  681. tossremainder = false
  682. lastframe = tick()
  683. script.Heartbeat:Fire()
  684. game:GetService("RunService").Heartbeat:connect(function(s, p)
  685. tf = tf + s
  686. if tf >= frame then
  687. if allowframeloss then
  688. script.Heartbeat:Fire()
  689. lastframe = tick()
  690. else
  691. for i = 1, math.floor(tf / frame) do
  692. script.Heartbeat:Fire()
  693. end
  694. lastframe = tick()
  695. end
  696. if tossremainder then
  697. tf = 0
  698. else
  699. tf = tf - frame * math.floor(tf / frame)
  700. end
  701. end
  702. end)
  703. function swait(num)
  704. if num == 0 or num == nil then
  705. ArtificialHB.Event:wait()
  706. else
  707. for i = 0, num do
  708. ArtificialHB.Event:wait()
  709. end
  710. end
  711. end
  712.  
  713. function RemoveOutlines(part)
  714. part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10
  715. end
  716.  
  717. sndid = "rbxassetid://176322684"
  718. sndpi = .7
  719. saun = Instance.new("Sound",Head)
  720. saun.Volume = 1
  721. saun.Pitch = sndpi
  722. saun.SoundId = sndid
  723. saun.Name = "a"
  724. saun.Looped = true
  725. saun:Play()
  726.  
  727. dant = 0
  728.  
  729. Mouse.KeyDown:connect(function(key)
  730. key=key:lower()
  731. if key=="e" then
  732. if dant == 0 then
  733. dant = 1
  734. sndid = "rbxassetid://448668887"
  735. sndpi = 1
  736. elseif dant == 1 then
  737. dant = 0
  738. sndid = "rbxassetid://176322684"
  739. sndpi = .7
  740. end
  741. saun.Pitch = sndpi
  742. saun.SoundId = sndid
  743. saun:Play()
  744. end
  745. end)
  746.  
  747. while true do
  748. if Head:FindFirstChild("a")==nil then
  749. saun = Instance.new("Sound",Head)
  750. saun.Volume = 1
  751. saun.Pitch = sndpi
  752. saun.SoundId = sndid
  753. saun.Name = "a"
  754. saun.Looped = true
  755. saun:Play()
  756. end
  757. if dant == 0 then
  758. for i = 0, 1, 0.25 do
  759. swait()
  760. PlayAnimationFromTable({
  761. CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),
  762. CFrame.new(0, 1.4999938, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),
  763. CFrame.new(0.833580494, 1.12330246, 6.2584877e-07, -0.342020094, -1.63087847e-07, 0.939692676, 0.321394086, -0.939692557, 0.116977669, 0.883022249, 0.342020333, 0.321393758),
  764. CFrame.new(-0.833579302, 1.12330115, -1.49011612e-07, -0.342019886, 4.07719511e-08, -0.939692736, -0.321392894, -0.939693034, 0.116977319, -0.883022726, 0.342019141, 0.321393728),
  765. CFrame.new(0.5, -2, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),
  766. CFrame.new(-0.5, -2, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),
  767. }, .5, false)
  768. end
  769. for i = 0, 1, 0.25 do
  770. swait()
  771. PlayAnimationFromTable({
  772. CFrame.new(-0.268402338, -0.187939167, 0, 0.939692736, 0.342019886, 0, -0.342019916, 0.939692736, 0, 0, 0, 1),
  773. CFrame.new(-0.409892142, 1.36144388, 0, 0.766044796, -0.642787218, 0, 0.642787218, 0.766044855, 0, 0, 0, 1),
  774. CFrame.new(0.535924554, 1.16478181, 3.87430191e-07, -0.431316972, 0.32139343, 0.843013644, 0.185034022, -0.883022308, 0.431316644, 0.883022249, 0.342020333, 0.321393758),
  775. CFrame.new(-1.03069234, 0.594579875, -2.38418579e-07, -0.211470842, 0.321393758, -0.923030972, -0.418988168, -0.883022726, -0.211470872, -0.883022726, 0.342019141, 0.321393728),
  776. CFrame.new(0.951213062, -1.54518354, 0, 0.866025686, -0.499999642, 0, 0.499999642, 0.866025686, 0, 0, 0, 1),
  777. CFrame.new(0.214191973, -1.8503952, 0, 0.766044796, -0.642787218, 0, 0.642787218, 0.766044855, 0, 0, 0, 1),
  778. }, .5, false)
  779. end
  780. for i = 0, 1, 0.25 do
  781. swait()
  782. PlayAnimationFromTable({
  783. CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),
  784. CFrame.new(0, 1.4999938, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),
  785. CFrame.new(0.833580494, 1.12330246, 6.2584877e-07, -0.342020094, -1.63087847e-07, 0.939692676, 0.321394086, -0.939692557, 0.116977669, 0.883022249, 0.342020333, 0.321393758),
  786. CFrame.new(-0.833579302, 1.12330115, -1.49011612e-07, -0.342019886, 4.07719511e-08, -0.939692736, -0.321392894, -0.939693034, 0.116977319, -0.883022726, 0.342019141, 0.321393728),
  787. CFrame.new(0.5, -2, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),
  788. CFrame.new(-0.5, -2, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),
  789. }, .5, false)
  790. end
  791. for i = 0, 1, 0.25 do
  792. swait()
  793. PlayAnimationFromTable({
  794. CFrame.new(0.268400908, -0.187940732, 0, 0.939692855, -0.342019945, 0, 0.342019975, 0.939692795, 0, 0, 0, 1),
  795. CFrame.new(0.409947664, 1.36144304, 0, 0.766039729, 0.642798781, 0, -0.642787337, 0.766043961, 0, 0, 0, 1),
  796. CFrame.new(1.03070939, 0.594575524, -2.2649765e-06, -0.21146287, -0.321413547, 0.923025966, 0.418989599, -0.883016884, -0.21149224, 0.883023918, 0.342015505, 0.321394145),
  797. CFrame.new(-0.535904408, 1.16477537, -3.27825546e-07, -0.431322306, -0.321409196, -0.843005002, -0.185032129, -0.883013964, 0.431334615, -0.883019984, 0.342027217, 0.321392536),
  798. CFrame.new(-0.214235365, -1.8503921, 0, 0.766041398, 0.64279145, 0, -0.64279151, 0.766041279, 0, 0, 0, 1),
  799. CFrame.new(-0.965987146, -1.57677674, 0, 0.866024733, 0.500001609, 0, -0.500001609, 0.866024613, 0, 0, 0, 1),
  800. }, .5, false)
  801. end
  802. elseif dant == 1 then
  803. for i = 0, 1, 0.1 do
  804. swait()
  805. PlayAnimationFromTable({
  806. CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),
  807. CFrame.new(0, 1.5, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),
  808. CFrame.new(1.09999847, 1.1920929e-07, -0.600001514, 0, 0, 1, 0.173647985, 0.984807849, 0, -0.984807849, 0.173647985, 0),
  809. CFrame.new(-1.09999847, 1.1920929e-07, -0.600001514, 0, 0, -1, -0.173647985, 0.984807849, 0, 0.984807849, 0.173647985, 0),
  810. CFrame.new(0.5, -1.99999881, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),
  811. CFrame.new(-0.5, -1.99999881, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),
  812. }, .2, false)
  813. end
  814. for i = 0, 1, 0.1 do
  815. swait()
  816. PlayAnimationFromTable({
  817. CFrame.new(-0.0436433926, 0, -0.113613628, 0.64278698, 0, -0.766044974, 0, 1, 0, 0.766044974, 0, 0.64278698),
  818. CFrame.new(0, 1.49999809, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),
  819. CFrame.new(1.09998989, 1, -0.599998474, 0, 0, 1, 1, 0, 0, 0, 1, 0),
  820. CFrame.new(-1.10000229, 1, -0.599998474, 0, 0, -1, -1, 0, 0, 0, 1, 0),
  821. CFrame.new(0.499988556, -1.99999797, -3.81469727e-06, 1, 0, 0, 0, 1, 0, 0, 0, 1),
  822. CFrame.new(-0.500012398, -1.78038144, -0.819608092, 1, 0, 1.49011612e-08, 0, 0.499999046, -0.866025984, 0, 0.866026044, 0.499999046),
  823. }, .2, false)
  824. end
  825. for i = 0, 1, 0.1 do
  826. swait()
  827. PlayAnimationFromTable({
  828. CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),
  829. CFrame.new(0, 1.5, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),
  830. CFrame.new(1.09999847, 1.1920929e-07, -0.600001514, 0, 0, 1, 0.173647985, 0.984807849, 0, -0.984807849, 0.173647985, 0),
  831. CFrame.new(-1.09999847, 1.1920929e-07, -0.600001514, 0, 0, -1, -0.173647985, 0.984807849, 0, 0.984807849, 0.173647985, 0),
  832. CFrame.new(0.5, -1.99999881, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),
  833. CFrame.new(-0.5, -1.99999881, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),
  834. }, .2, false)
  835. end
  836. for i = 0, 1, 0.1 do
  837. swait()
  838. PlayAnimationFromTable({
  839. CFrame.new(0.261404335, 0, -0.167939946, 0.76604414, 0, 0.642788053, 0, 1, 0, -0.642788053, 0, 0.76604414),
  840. CFrame.new(0, 1.49999285, 0, 1.00000012, 0, 0, 0, 1, 0, 0, 0, 1.00000012),
  841. CFrame.new(1.10000622, 0.999999046, -0.599996626, 0, 0, 1.00000012, 1, 0, 0, 0, 1.00000012, 0),
  842. CFrame.new(-1.09999859, 0.999999046, -0.59999758, 0, 0, -1.00000012, -1, 0, 0, 0, 1.00000012, 0),
  843. CFrame.new(0.500000179, -1.78038287, -0.81961149, 1.00000012, -2.98023224e-08, 2.98023224e-08, 0, 0.499999046, -0.866025925, 0, 0.866025984, 0.499999106),
  844. CFrame.new(-0.500003874, -1.99999893, 3.81469772e-06, 1.00000012, 0, 0, 0, 1, 0, 0, 0, 1.00000012),
  845. }, .2, false)
  846. end
  847. end
  848. end
  849. end)
  850.  
  851. Tails.Name = "Tails"
  852. Tails.Parent = Scripts
  853. Tails.BackgroundColor3 = Color3.new(0.117647, 0.117647, 0.117647)
  854. Tails.BorderColor3 = Color3.new(0, 0, 0)
  855. Tails.BorderSizePixel = 5
  856. Tails.Position = UDim2.new(0, 101, 0, 191)
  857. Tails.Size = UDim2.new(0, 83, 0, 34)
  858. Tails.Font = Enum.Font.SourceSans
  859. Tails.Text = "Tails"
  860. Tails.TextColor3 = Color3.new(1, 1, 1)
  861. Tails.TextScaled = true
  862. Tails.TextSize = 25
  863. Tails.TextWrapped = true
  864.  
  865. Tails.MouseButton1Down:connect(function()
  866. wait(0)
  867. local Parts = {
  868. game.Players.LocalPlayer.Character.Torso
  869. }
  870. local w = {}
  871. for i = 2, 24 do
  872. Parts[i] = Instance.new("Part", game.Players.LocalPlayer.Character)
  873. Parts[i].BrickColor = BrickColor.Black()
  874. Parts[i].Material = "Granite"
  875. Parts[i].CanCollide = false
  876. Parts[i].Locked = false
  877. Parts[i].formFactor = "Symmetric"
  878. Parts[i].Size = Vector3.new(1.5, 3, 3)
  879. function onTouched(part)
  880. local h = Parts[i].Parent:findFirstChild("Humanoid")
  881. if h ~= nil then
  882. h.Health = h.Health - 0
  883. wait(0)
  884. end
  885. end
  886. Parts[i].Touched:connect(onTouched)
  887. Mesh = Instance.new("BlockMesh", Parts[i])
  888. Mesh.Name = "Mesh"
  889. if i > 75 then
  890. mult = (i - 25) / 1
  891. else
  892. mult = 0
  893. end
  894. Mesh.Scale = Vector3.new(math.abs(0.5 - (i - 0) / 50) + 0 + mult, 0.3 - (i - 0.15) / 69, 0.6)
  895. w[i - 1] = Instance.new("Weld", Parts[i])
  896. w[i - 1].Part0 = Parts[i - 1]
  897. w[i - 1].Part1 = Parts[i]
  898. w[i - 1].C0 = CFrame.new(0, 0, 0.75)
  899. w[i - 1].C1 = CFrame.new(0, 0, -0.75)
  900. end
  901. w[1].C0 = CFrame.new(0, -0.35, 0)
  902. function Smooth(WhereTo0, Welds)
  903. local CR0 = CFrame.new(Welds[1].C1:toEulerAnglesXYZ()).p
  904. local CR1 = CFrame.new(WhereTo0).p
  905. local AddTo0 = (CR1 - CR0) / 6.9
  906. for a = 1, #Welds do
  907. Welds[a].C1 = Welds[a].C1 * CFrame.fromEulerAnglesXYZ(AddTo0.x, AddTo0.y, AddTo0.z)
  908. end
  909. end
  910. local scr = Instance.new("ScreenGui", game.Players.LocalPlayer.PlayerGui)
  911. local absx = scr.AbsoluteSize.X
  912. local absy = scr.AbsoluteSize.Y
  913. scr:Destroy()
  914. local mouse = game.Players.LocalPlayer:GetMouse()
  915. game:GetService("RunService").RenderStepped:connect(function()
  916. local r = CFrame.new(Vector3.new((mouse.Y - absy / 2) / absy, (mouse.X - absx / 2) / absx, 0.025)).p
  917. local y = r.y
  918. local x = r.x
  919. local z = r.z
  920. Smooth(Vector3.new(y, x, -z), w)
  921. end)
  922. wait(0)
  923. local Parts = {
  924. game.Players.LocalPlayer.Character.Torso
  925. }
  926. local w = {}
  927. for i = 2, 24 do
  928. Parts[i] = Instance.new("Part", game.Players.LocalPlayer.Character)
  929. Parts[i].BrickColor = BrickColor.Black()
  930. Parts[i].Material = "Granite"
  931. Parts[i].CanCollide = false
  932. Parts[i].Locked = false
  933. Parts[i].formFactor = "Symmetric"
  934. Parts[i].Size = Vector3.new(1.1, 0.9, 2.5)
  935. function onTouched(part)
  936. local h = Parts[i].Parent:findFirstChild("Humanoid")
  937. if h ~= nil then
  938. h.Health = h.Health - 0
  939. wait(0)
  940. end
  941. end
  942. Parts[i].Touched:connect(onTouched)
  943. Mesh = Instance.new("BlockMesh", Parts[i])
  944. Mesh.Name = "Mesh"
  945. if i > 75 then
  946. mult = (i - 25) / 1
  947. else
  948. mult = 0
  949. end
  950. Mesh.Scale = Vector3.new(math.abs(0.5 - (i - 0) / 50) + 0 + mult, 0.3 - (i - 0.15) / 99, 0.6)
  951. w[i - 1] = Instance.new("Weld", Parts[i])
  952. w[i - 1].Part0 = Parts[i - 1]
  953. w[i - 1].Part1 = Parts[i]
  954. w[i - 1].C0 = CFrame.new(0, 0, 0.69)
  955. w[i - 1].C1 = CFrame.new(0, 0, -0.69)
  956. end
  957. w[1].C0 = CFrame.new(0, -0.35, 0)
  958. function Smooth(WhereTo0, Welds)
  959. local CR0 = CFrame.new(Welds[1].C1:toEulerAnglesXYZ()).p
  960. local CR1 = CFrame.new(WhereTo0).p
  961. local AddTo0 = (CR1 - CR0) / 6.9
  962. for a = 1, #Welds do
  963. Welds[a].C1 = Welds[a].C1 * CFrame.fromEulerAnglesXYZ(AddTo0.x, AddTo0.y, AddTo0.z)
  964. end
  965. end
  966. local scr = Instance.new("ScreenGui", game.Players.LocalPlayer.PlayerGui)
  967. local absx = scr.AbsoluteSize.X
  968. local absy = scr.AbsoluteSize.Y
  969. scr:Destroy()
  970. local mouse = game.Players.LocalPlayer:GetMouse()
  971. game:GetService("RunService").RenderStepped:connect(function()
  972. local r = CFrame.new(Vector3.new((mouse.Y - absy / 2) / absy, (mouse.X - absx / 2) / absx, 0.025)).p
  973. local y = r.y
  974. local x = r.x
  975. local z = r.z
  976. Smooth(Vector3.new(y, x, -z), w)
  977. end)
  978. end)
  979.  
  980. Lightning.Name = "Lightning"
  981. Lightning.Parent = Scripts
  982. Lightning.BackgroundColor3 = Color3.new(0.117647, 0.117647, 0.117647)
  983. Lightning.BorderColor3 = Color3.new(0, 0, 0)
  984. Lightning.BorderSizePixel = 5
  985. Lightning.Position = UDim2.new(0, 212, 0, 189)
  986. Lightning.Size = UDim2.new(0, 85, 0, 34)
  987. Lightning.Font = Enum.Font.SourceSans
  988. Lightning.Text = "Lightning"
  989. Lightning.TextColor3 = Color3.new(1, 1, 1)
  990. Lightning.TextScaled = true
  991. Lightning.TextSize = 25
  992. Lightning.TextWrapped = true
  993.  
  994. Lightning.MouseButton1Down:connect(function()
  995. local isScriptNil = false
  996.  
  997. local PlrName = "xExplicitCass"
  998. local Plrs = game:GetService("Players")
  999. local RunService = game:GetService("RunService")
  1000. local Content = game:GetService("ContentProvider")
  1001. local LP = Plrs.LocalPlayer
  1002. local Char = LP.Character
  1003. local PlrGui = LP.PlayerGui
  1004. local Backpack = LP.Backpack
  1005. local Mouse = LP:GetMouse()
  1006.  
  1007. local Camera = Workspace.CurrentCamera
  1008. local LastCamCF = Camera.CoordinateFrame
  1009. local AnimJoints = {}
  1010. local Cons = {}
  1011. local mDown = false
  1012. local Multi = false
  1013. local Grabbing = false
  1014. local Current = {}
  1015. local Alpha = 1
  1016. local LightNum = 1
  1017.  
  1018. Current.Part = nil
  1019. Current.BP = nil
  1020. Current.BA = nil
  1021. Current.Mass = nil
  1022.  
  1023. local LastPart = nil
  1024.  
  1025. local Head = Char["Head"]
  1026. local Torso = Char["Torso"]
  1027. local Humanoid = Char["Humanoid"]
  1028. local LA = Char["Left Arm"]
  1029. local RA = Char["Right Arm"]
  1030. local LL = Char["Left Leg"]
  1031. local RL = Char["Right Leg"]
  1032.  
  1033. local LS, RS;
  1034.  
  1035. local OrigLS = Torso["Left Shoulder"]
  1036. local OrigRS = Torso["Right Shoulder"]
  1037.  
  1038. for _,v in pairs(Char:GetChildren()) do
  1039. if v.Name == ModID then
  1040. v:Destroy()
  1041. end
  1042. end
  1043.  
  1044. for _,v in pairs(PlrGui:GetChildren()) do
  1045. if v.Name == "PadsGui" then
  1046. v:Destroy()
  1047. end
  1048. end
  1049.  
  1050. local ModID = "Pads"
  1051. local Objects = {}
  1052. local Grav = 196.2
  1053.  
  1054. local sin=math.sin
  1055. local cos=math.cos
  1056. local max=math.max
  1057. local min=math.min
  1058. local atan2=math.atan2
  1059. local random=math.random
  1060. local tau = 2 * math.pi
  1061.  
  1062. local BodyObjects = {
  1063. ["BodyVelocity"] = true;
  1064. ["BodyAngularVelocity"] = true;
  1065. ["BodyForce"] = true;
  1066. ["BodyThrust"] = true;
  1067. ["BodyPosition"] = true;
  1068. ["RocketPropulsion"] = true;
  1069. }
  1070.  
  1071. if LP.Name == PlrName and isScriptNil then
  1072. script.Parent = nil
  1073. end
  1074.  
  1075. LP.CameraMode = "Classic"
  1076.  
  1077. local Assets = {
  1078. }
  1079.  
  1080. local LS0, LS1 = OrigLS.C0, OrigLS.C1
  1081. local RS0, RS1 = OrigRS.C0, OrigRS.C1
  1082.  
  1083. for i,v in pairs(Assets) do
  1084. local ID = tostring(Assets[i])
  1085. Assets[i] = "http://www.roblox.com/asset/?id=" .. ID
  1086. Content:Preload("http://www.roblox.com/asset/?id=" .. ID)
  1087. end
  1088.  
  1089. function QuaternionFromCFrame(cf)
  1090. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components();
  1091. local trace = m00 + m11 + m22 if trace > 0 then
  1092. local s = math.sqrt(1 + trace);
  1093. local recip = 0.5/s;
  1094. return (m21-m12)*recip, (m02-m20)*recip, (m10-m01)*recip, s*0.5;
  1095. else
  1096. local i = 0;
  1097. if m11 > m00 then
  1098. i = 1;
  1099. end;
  1100. if m22 > (i == 0 and m00 or m11) then
  1101. i = 2 end if i == 0 then
  1102. local s = math.sqrt(m00-m11-m22+1);
  1103. local recip = 0.5/s return 0.5*s, (m10+m01)*recip, (m20+m02)*recip, (m21-m12)*recip;
  1104. elseif i == 1 then
  1105. local s = math.sqrt(m11-m22-m00+1);
  1106. local recip = 0.5/s;
  1107. return (m01+m10)*recip, 0.5*s, (m21+m12)*recip, (m02-m20)*recip ;
  1108. elseif i == 2 then
  1109. local s = math.sqrt(m22-m00-m11+1);
  1110. local recip = 0.5/s;
  1111. return (m02+m20)*recip, (m12+m21)*recip, 0.5*s, (m10-m01)*recip;
  1112. end;
  1113. end;
  1114. end;
  1115.  
  1116. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  1117. local xs, ys, zs = x + x, y + y, z + z;
  1118. local wx, wy, wz = w*xs, w*ys, w*zs;
  1119. local xx = x*xs;
  1120. local xy = x*ys;
  1121. local xz = x*zs;
  1122. local yy = y*ys;
  1123. local yz = y*zs;
  1124. local zz = z*zs;
  1125. 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))
  1126. end;
  1127.  
  1128. function QuaternionSlerp(a, b, t)
  1129. local cosTheta = a[1]*b[1] + a[2]*b[2] + a[3]*b[3] + a[4]*b[4];
  1130. local startInterp, finishInterp;
  1131. if cosTheta >= 0.0001 then
  1132. if (1 - cosTheta) > 0.0001 then
  1133. local theta = math.acos(cosTheta);
  1134. local invSinTheta = 1/math.sin(theta);
  1135. startInterp = math.sin((1-t)*theta)*invSinTheta;
  1136. finishInterp = math.sin(t*theta)*invSinTheta;
  1137. else
  1138. startInterp = 1-t finishInterp = t;
  1139. end;
  1140. else
  1141. if (1+cosTheta) > 0.0001 then
  1142. local theta = math.acos(-cosTheta);
  1143. local invSinTheta = 1/math.sin(theta);
  1144. startInterp = math.sin((t-1)*theta)*invSinTheta;
  1145. finishInterp = math.sin(t*theta)*invSinTheta;
  1146. else startInterp = t-1 finishInterp = t;
  1147. end;
  1148. end;
  1149. 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;
  1150. end;
  1151.  
  1152. function CLerp(a,b,t)
  1153. local qa={QuaternionFromCFrame(a)};
  1154. local qb={QuaternionFromCFrame(b)};
  1155. local ax,ay,az=a.x,a.y,a.z;
  1156. local bx,by,bz=b.x,b.y,b.z;
  1157. local _t=1-t;
  1158. return QuaternionToCFrame(_t*ax+t*bx,_t*ay+t*by,_t*az+t*bz,QuaternionSlerp(qa, qb, t));
  1159. end
  1160.  
  1161. function GetWeld(weld)
  1162. local obj
  1163. for i, v in pairs(AnimJoints) do
  1164. if v[1] == weld then
  1165. obj = v
  1166. break
  1167. end
  1168. end
  1169. if not obj then
  1170. obj = {weld,NV}
  1171. table.insert(AnimJoints,obj)
  1172. end
  1173. return weld.C0.p, obj[2]
  1174. end
  1175.  
  1176. function SetWeld(weld, i, loops, origpos, origangle, nextpos, nextangle, override, overrideLower, smooth)
  1177. smooth = smooth or 1
  1178. local obj
  1179. for i, v in pairs(AnimJoints) do
  1180. if v[1] == weld then
  1181. obj = v
  1182. break
  1183. end
  1184. end
  1185. if not obj then
  1186. obj = {weld,NV}
  1187. table.insert(AnimJoints,obj)
  1188. end
  1189.  
  1190. local perc = (smooth == 1 and math.sin((math.pi/2)/loops*i)) or i/loops
  1191.  
  1192. local tox,toy,toz = 0,0,0
  1193. tox = math.abs(origangle.x - nextangle.x) *perc
  1194. toy = math.abs(origangle.y - nextangle.y) *perc
  1195. toz = math.abs(origangle.z - nextangle.z) *perc
  1196. tox = ((origangle.x > nextangle.x and -tox) or tox)
  1197. toy = ((origangle.y > nextangle.y and -toy) or toy)
  1198. toz = ((origangle.z > nextangle.z and -toz) or toz)
  1199.  
  1200. local tox2,toy2,toz2 = 0,0,0
  1201. tox2 = math.abs(origpos.x - nextpos.x) *perc
  1202. toy2 = math.abs(origpos.y - nextpos.y) *perc
  1203. toz2 = math.abs(origpos.z - nextpos.z) *perc
  1204. tox2 = (origpos.x > nextpos.x and -tox2) or tox2
  1205. toy2 = (origpos.y > nextpos.y and -toy2) or toy2
  1206. toz2 = (origpos.z > nextpos.z and -toz2) or toz2
  1207.  
  1208. obj[2] = Vector3.new(origangle.x + tox, origangle.y + toy, origangle.z + toz)
  1209. weld.C0 = CFrame.new(origpos.x + tox2,origpos.y + toy2,origpos.z + toz2) * CFrame.Angles(origangle.x + tox,origangle.y + toy,origangle.z + toz)
  1210. end
  1211.  
  1212. function RotateCamera(x, y)
  1213. Camera.CoordinateFrame = CFrame.new(Camera.Focus.p) * (Camera.CoordinateFrame - Camera.CoordinateFrame.p) * CFrame.Angles(x, y, 0) * CFrame.new(0, 0, (Camera.CoordinateFrame.p - Camera.Focus.p).magnitude)
  1214. end
  1215.  
  1216. function GetAngles(cf)
  1217. local lv = cf.lookVector
  1218. return -math.asin(lv.y), math.atan2(lv.x, -lv.z)
  1219. end
  1220.  
  1221. local LastCamCF = Camera.CoordinateFrame
  1222.  
  1223. function Look()
  1224. if AlphaOn == true then
  1225. local x, y = GetAngles(LastCamCF:toObjectSpace(Camera.CoordinateFrame))
  1226. Camera.CoordinateFrame = LastCamCF
  1227. RotateCamera(x * -(Alpha), y * -(Alpha))
  1228. LastCamCF = Camera.CoordinateFrame
  1229. end
  1230. end
  1231.  
  1232. function Cor(Func)
  1233. local Ok, Err = coroutine.resume(coroutine.create(Func))
  1234. if not Ok then
  1235. print(Err)
  1236. end
  1237. end
  1238.  
  1239. function Cor2(Func)
  1240. local Ok, Err = ypcall(Func)
  1241. if not Ok then
  1242. print(Err)
  1243. end
  1244. end
  1245.  
  1246. function MakePads()
  1247. -- 1 - VTelekinesis
  1248. P1 = Instance.new("Model")
  1249. P1.Name = ModID
  1250.  
  1251. -- 2 - RBase
  1252. P2 = Instance.new("Part")
  1253. P2.CFrame = CFrame.new(Vector3.new(21.100008, 1.95000589, 11.899971)) * CFrame.Angles(-0, 0, -0)
  1254. P2.FormFactor = Enum.FormFactor.Custom
  1255. P2.Size = Vector3.new(0.799999952, 0.200000003, 0.800000012)
  1256. P2.Anchored = true
  1257. P2.BrickColor = BrickColor.new("White")
  1258. P2.Friction = 0.30000001192093
  1259. P2.Shape = Enum.PartType.Block
  1260. P2.Name = "RBase"
  1261. P2.Parent = P1
  1262. P2.Transparency = 1
  1263. -- 3 - Mesh
  1264. P3 = Instance.new("CylinderMesh")
  1265. P3.Scale = Vector3.new(1, 0.5, 1)
  1266. P3.Parent = P2
  1267.  
  1268. -- 4 - LBase
  1269. P4 = Instance.new("Part")
  1270. P4.CFrame = CFrame.new(Vector3.new(18.100008, 1.95000589, 11.899971)) * CFrame.Angles(-0, 0, -0)
  1271. P4.FormFactor = Enum.FormFactor.Custom
  1272. P4.Size = Vector3.new(0.799999952, 0.200000003, 0.800000012)
  1273. P4.Anchored = true
  1274. P4.BrickColor = BrickColor.new("White")
  1275. P4.Friction = 0.30000001192093
  1276. P4.Shape = Enum.PartType.Block
  1277. P4.Name = "LBase"
  1278. P4.Parent = P1
  1279. P4.Transparency = 1
  1280. -- 5 - Mesh
  1281. P5 = Instance.new("CylinderMesh")
  1282. P5.Scale = Vector3.new(1, 0.5, 1)
  1283. P5.Parent = P4
  1284.  
  1285. -- 7 - Mesh
  1286. P7 = Instance.new("CylinderMesh")
  1287. P7.Scale = Vector3.new(1, 0.5, 1)
  1288. P7.Parent = P6
  1289.  
  1290.  
  1291.  
  1292. -- 9 - Mesh
  1293. P9 = Instance.new("CylinderMesh")
  1294. P9.Scale = Vector3.new(1, 0.5, 1)
  1295. P9.Parent = P8
  1296.  
  1297.  
  1298.  
  1299. -- 11 - Mesh
  1300. P11 = Instance.new("CylinderMesh")
  1301. P11.Scale = Vector3.new(1, 0.5, 1)
  1302. P11.Parent = P10
  1303.  
  1304.  
  1305. -- 13 - Mesh
  1306. P13 = Instance.new("CylinderMesh")
  1307. P13.Scale = Vector3.new(1, 0.5, 1)
  1308. P13.Parent = P12
  1309.  
  1310.  
  1311. -- 15 - Mesh
  1312. P15 = Instance.new("CylinderMesh")
  1313. P15.Scale = Vector3.new(1, 0.5, 1)
  1314. P15.Parent = P14
  1315.  
  1316. -- 17 - Mesh
  1317. P17 = Instance.new("CylinderMesh")
  1318. P17.Scale = Vector3.new(1, 0.5, 1)
  1319. P17.Parent = P16
  1320.  
  1321. P1.Parent = LP.Character
  1322. P1:MakeJoints()
  1323. return P1
  1324. end
  1325.  
  1326. weldModel = function(model, unanchor, rooty)
  1327. local parts = {}
  1328. local function recurse(object)
  1329. if object:IsA("BasePart") then
  1330. table.insert(parts, object)
  1331. end
  1332. for _,child in pairs(object:GetChildren()) do
  1333. recurse(child)
  1334. end
  1335. end
  1336. recurse(model)
  1337.  
  1338. local rootPart = rooty or parts[1]
  1339. for _, part in pairs(parts) do
  1340. local cframe = rootPart.CFrame:toObjectSpace(part.CFrame)
  1341. local weld = Instance.new("Weld")
  1342. weld.Part0 = rootPart
  1343. weld.Part1 = part
  1344. weld.C0 = cframe
  1345. weld.Parent = rootPart
  1346. end
  1347.  
  1348. if unanchor then
  1349. for _, part in pairs(parts) do
  1350. part.Anchored = false
  1351. part.CanCollide = false
  1352. end
  1353. end
  1354. end
  1355.  
  1356. weldItem = function(rootPart, Item, TheC0, unanchor, ParentItem)
  1357. local cframe = TheC0 or rootPart.CFrame:toObjectSpace(Item.CFrame)
  1358. local weld = Instance.new("Weld")
  1359. weld.Name = "Weld"
  1360. weld.Part0 = rootPart
  1361. weld.Part1 = Item
  1362. weld.C0 = cframe
  1363. weld.Parent = ParentItem and Item or rootPart
  1364.  
  1365. if unanchor then
  1366. Item.Anchored = false
  1367. end
  1368. return weld, cframe
  1369. end
  1370.  
  1371. scaleModel = function(model, scale)
  1372. local parts = {}
  1373. local function recurse(object)
  1374. if object:IsA("BasePart") then
  1375. table.insert(parts, object)
  1376. end
  1377. for _,child in pairs(object:GetChildren()) do
  1378. recurse(child)
  1379. end
  1380. end
  1381. recurse(model)
  1382.  
  1383. local top, bottom, left, right, back, front
  1384. for _, part in pairs(parts) do
  1385. if top == nil or top < part.Position.y then top = part.Position.y end
  1386. if bottom == nil or bottom > part.Position.y then bottom = part.Position.y end
  1387. if left == nil or left > part.Position.x then left = part.Position.x end
  1388. if right == nil or right < part.Position.x then right = part.Position.x end
  1389. if back == nil or back > part.Position.z then back = part.Position.z end
  1390. if front == nil or front < part.Position.z then front = part.Position.z end
  1391. end
  1392.  
  1393. local middle = Vector3.new( left+right, top+bottom, back+front )/2
  1394. local minSize = Vector3.new(0.2, 0.2, 0.2)
  1395.  
  1396. for _, part in pairs(parts) do
  1397. local foo = part.CFrame.p - middle
  1398. local rotation = part.CFrame - part.CFrame.p
  1399. local newSize = part.Size*scale
  1400. part.FormFactor = "Custom"
  1401. part.Size = newSize
  1402. part.CFrame = CFrame.new( middle + foo*scale ) * rotation
  1403.  
  1404. if newSize.x < minSize.x or newSize.y < minSize.y or newSize.z < minSize.z then
  1405. local mesh
  1406. for _, child in pairs(part:GetChildren()) do
  1407. if child:IsA("DataModelMesh") then
  1408. mesh = child
  1409. break
  1410. end
  1411. end
  1412.  
  1413. if mesh == nil then
  1414. mesh = Instance.new("BlockMesh", part)
  1415. end
  1416.  
  1417. local oScale = mesh.Scale
  1418. local newScale = newSize/minSize * oScale
  1419. if 0.2 < newSize.x then newScale = Vector3.new(1 * oScale.x, newScale.y, newScale.z) end
  1420. if 0.2 < newSize.y then newScale = Vector3.new(newScale.x, 1 * oScale.y, newScale.z) end
  1421. if 0.2 < newSize.z then newScale = Vector3.new(newScale.x, newScale.y, 1 * oScale.z) end
  1422.  
  1423. mesh.Scale = newScale
  1424. end
  1425. end
  1426. end
  1427.  
  1428. function getMass(Obj, Total)
  1429. local newTotal = Total
  1430. local returnTotal = 0
  1431.  
  1432. if Obj:IsA("BasePart") then
  1433. newTotal = newTotal + Objects[Obj]
  1434. elseif BodyObjects[Obj.ClassName] then
  1435. Obj:Destroy()
  1436. end
  1437.  
  1438. if Obj:GetChildren() and #Obj:GetChildren() > 0 then
  1439. for _,v in pairs(Obj:GetChildren()) do
  1440. returnTotal = returnTotal + getMass(v, newTotal)
  1441. end
  1442. else
  1443. returnTotal = newTotal
  1444. end
  1445.  
  1446. return returnTotal
  1447. end
  1448.  
  1449. function getTargFromCurrent()
  1450. local Current = Current.Part
  1451. if Current:IsA("BasePart") then
  1452. return Current
  1453. elseif Current:findFirstChild("Torso") then
  1454. return Current.Torso
  1455. else
  1456. for _,v in pairs(Current:GetChildren()) do
  1457. if v:IsA("BasePart") then
  1458. return v
  1459. end
  1460. end
  1461. end
  1462. end
  1463.  
  1464. function Fire(Part, Vec, Inv)
  1465. pcall(function()
  1466. Current.BP:Destroy()
  1467. Current.BP = nil
  1468. end)
  1469. pcall(function()
  1470. Current.BA:Destroy()
  1471. Current.BA = nil
  1472. end)
  1473. pcall(function()
  1474. if Inv then
  1475. Part.Velocity = -((Vec - Torso.Position).unit * Grav * 1.1)
  1476. else
  1477. Part.Velocity = ((Vec - Camera.CoordinateFrame.p).unit * Grav * 1.1)
  1478. end
  1479. Current.Mass = nil
  1480. end)
  1481. Reset()
  1482. end
  1483.  
  1484. function Reset()
  1485. LS.Parent = nil
  1486. RS.Parent = nil
  1487.  
  1488. OrigLS.Parent = Torso
  1489. OrigRS.Parent = Torso
  1490.  
  1491. OrigLS.C0 = LS0
  1492. OrigRS.C0 = RS0
  1493. end
  1494.  
  1495. function Start()
  1496. Cor(function()
  1497. repeat wait(1/30) until LP.Character and LP.Character.Parent == Workspace and LP.Character:findFirstChild("Torso")
  1498. Char = LP.Character
  1499. PlrGui = LP.PlayerGui
  1500. Backpack = LP.Backpack
  1501. Mouse = LP:GetMouse()
  1502.  
  1503. for _,v in pairs(Cons) do
  1504. v:disconnect()
  1505. end
  1506. Cons = {}
  1507.  
  1508. Camera = Workspace.CurrentCamera
  1509. LastCamCF = Camera.CoordinateFrame
  1510. AnimJoints = {}
  1511. mDown = false
  1512. Multi = false
  1513. Grabbing = false
  1514. Current = {}
  1515. Alpha = 1
  1516.  
  1517. Head = Char["Head"]
  1518. Torso = Char["Torso"]
  1519. Humanoid = Char["Humanoid"]
  1520. LA = Char["Left Arm"]
  1521. RA = Char["Right Arm"]
  1522. LL = Char["Left Leg"]
  1523. RL = Char["Right Leg"]
  1524.  
  1525. OrigLS = Torso["Left Shoulder"]
  1526. OrigRS = Torso["Right Shoulder"]
  1527.  
  1528. for _,v in pairs(Char:GetChildren()) do
  1529. if v.Name == ModID then
  1530. v:Destroy()
  1531. end
  1532. end
  1533.  
  1534. for _,v in pairs(PlrGui:GetChildren()) do
  1535. if v.Name == "PadsGui" then
  1536. v:Destroy()
  1537. end
  1538. end
  1539.  
  1540. LS = Instance.new("Weld")
  1541. RS = Instance.new("Weld")
  1542.  
  1543. LS.Name = OrigLS.Name
  1544. LS.Part0 = Torso
  1545. LS.Part1 = LA
  1546. LS.C0 = LS0
  1547. LS.C1 = CFrame.new(0, 0.5, 0, 1, 0, 0, 0, 0, 1, 0, -1, 0)
  1548.  
  1549. RS.Name = OrigRS.Name
  1550. RS.Part0 = Torso
  1551. RS.Part1 = RA
  1552. RS.C0 = RS0
  1553. RS.C1 = CFrame.new(0, 0.5, 0, 1, 0, 0, 0, 0, 1, 0, -1, 0)
  1554.  
  1555. local Pads = MakePads()
  1556. local LPad = Pads.LBase
  1557. local RPad = Pads.RBase
  1558.  
  1559. weldModel(LPad, true, LPad)
  1560. weldModel(RPad, true, RPad)
  1561.  
  1562. local GripWeldL = Instance.new("Weld")
  1563. GripWeldL.Name = "GripWeldL"
  1564. GripWeldL.Part0 = LA
  1565. GripWeldL.Part1 = LPad
  1566. GripWeldL.C0 = CFrame.new(0, -1.05, 0) * CFrame.Angles(0, math.rad(180), 0)
  1567. GripWeldL.Parent = LA
  1568.  
  1569. local GripWeldR = Instance.new("Weld")
  1570. GripWeldR.Name = "GripWeldR"
  1571. GripWeldR.Part0 = RA
  1572. GripWeldR.Part1 = RPad
  1573. GripWeldR.C0 = CFrame.new(0, -1.05, 0) * CFrame.Angles(0, math.rad(180), 0)
  1574. GripWeldR.Parent = RA
  1575.  
  1576. local isParts = false
  1577.  
  1578. table.insert(Cons, Mouse.KeyDown:connect(function(Key)
  1579. Key = Key:lower()
  1580. if Key == "z" then
  1581. --Stuff
  1582. elseif Key == "f" then
  1583. local Current = Current.Part
  1584. if Current and Current.Parent ~= nil and not Multi then
  1585. Current:BreakJoints()
  1586. end
  1587. elseif Key == "q" then
  1588. if isParts then
  1589. isParts = false
  1590. for _,v in pairs(Workspace:GetChildren()) do
  1591. if v.Name == "MyPartV" and v:IsA("BasePart") then
  1592. v:Destroy()
  1593. end
  1594. end
  1595. else
  1596. isParts = true
  1597. for i = 1, 50 do
  1598. local Part = Instance.new("Part")
  1599. Part.Color = Color3.new(math.random(), math.random(), math.random())
  1600. Part.Transparency = 0
  1601. Part.Size = Vector3.new(math.random(1, 3), math.random(1, 3), math.random(1, 3))
  1602. Part.Archivable = true
  1603. Part.CanCollide = false
  1604. Part.Material = "Neon"
  1605. Part.Locked = false
  1606. Part.CFrame = Torso.CFrame * CFrame.new(math.random(-15, 15), -1, math.random(-15, 15))
  1607. Part.Anchored = true
  1608. Part.Name = "MyPartV"
  1609. Part.TopSurface = "Smooth"
  1610. Part.BottomSurface = "Smooth"
  1611. Part.Parent = Workspace
  1612. end
  1613. end
  1614. elseif Key == "e" then
  1615. local Targ;
  1616. if Current.Part and Current.Part ~= nil then
  1617. Targ = getTargFromCurrent()
  1618. else
  1619. Targ = LastPart
  1620. end
  1621. if Targ and Targ.Parent ~= nil and not Multi then
  1622. local Ex = Instance.new("Explosion", Workspace)
  1623. Ex.Position = Targ.CFrame.p
  1624. Ex.BlastRadius = 16
  1625. Ex.DestroyJointRadiusPercent = 0.5
  1626. end
  1627. elseif Key == "c" then
  1628. if Current.Part and Current.Part.Parent ~= nil and not Multi then
  1629. local Part = getTargFromCurrent()
  1630. if Part then
  1631. Grabbing = false
  1632. if Mouse.Hit then
  1633. local TargPos = CFrame.new(Camera.CoordinateFrame.p, Mouse.Hit.p) * CFrame.new(0, 0, -1000)
  1634. Fire(Part, TargPos.p)
  1635. else
  1636. Fire(Part, Mouse.Origin.p + Mouse.UnitRay.Direction, true)
  1637. end
  1638. end
  1639. end
  1640. end
  1641. end))
  1642.  
  1643. table.insert(Cons, Mouse.Button1Up:connect(function()
  1644. mDown = false
  1645. if Grabbing == true and Multi == false then
  1646. Grabbing = false
  1647. Reset()
  1648. end
  1649. if Current.Part ~= nil then
  1650. LastPart = getTargFromCurrent()
  1651. Current = {}
  1652. end
  1653. end))
  1654.  
  1655. local function makeLightning(Par, Start, End, Width, Length, RandomScale, ArcScale, Num1)
  1656. local oldParts = {}
  1657. for _,v in pairs(Par:GetChildren()) do
  1658. v.CFrame = CFrame.new(5e5, 5e5, 5e5)
  1659. table.insert(oldParts, v)
  1660. end
  1661. local Distance = (Start-End).Magnitude
  1662. local ArcScale = ArcScale or 1
  1663. local RandomScale = RandomScale or 0
  1664. local Last = Start
  1665. local IterNum = 0
  1666.  
  1667. while Par.Parent do
  1668. IterNum = IterNum + 1
  1669. local New = nil
  1670. if (Last-End).Magnitude < Length then
  1671. New = CFrame.new(End)
  1672. else
  1673. if (End-Last).Magnitude < Length*2 then
  1674. RandomScale = RandomScale*0.5
  1675. ArcScale = ArcScale*0.5
  1676. end
  1677. local Direct = CFrame.new(Last,End)
  1678. New = Direct*CFrame.Angles(math.rad(math.random(-RandomScale/4,RandomScale*ArcScale)),math.rad(math.random(-RandomScale,RandomScale)),math.rad(math.random(-RandomScale,RandomScale)))
  1679. New = New*CFrame.new(0,0,-Length)
  1680. end
  1681. local Trail = nil
  1682. if oldParts[IterNum] then
  1683. Trail = oldParts[IterNum]
  1684. Trail.BrickColor = ((Num1 % 2 == 0) and BrickColor.new("White")) or BrickColor.new("Cyan")
  1685. Trail.Size = Vector3.new(Width, (Last-New.p).Magnitude, Width)
  1686. Trail.CFrame = CFrame.new(New.p, Last)*CFrame.Angles(math.rad(90),0,0)*CFrame.new(0, -(Last-New.p).Magnitude/2, 0)
  1687. oldParts[IterNum] = nil
  1688. else
  1689. Trail = Instance.new("Part")
  1690. Trail.Name = "Part"
  1691. Trail.FormFactor = "Custom"
  1692. Trail.BrickColor = ((Num1 % 2 == 0) and BrickColor.new("White")) or BrickColor.new("White")
  1693. Trail.Transparency = 0
  1694. Trail.Anchored = true
  1695. Trail.CanCollide = false
  1696. Trail.Locked = true
  1697. Trail.BackSurface = "SmoothNoOutlines"
  1698. Trail.BottomSurface = "SmoothNoOutlines"
  1699. Trail.FrontSurface = "SmoothNoOutlines"
  1700. Trail.LeftSurface = "SmoothNoOutlines"
  1701. Trail.RightSurface = "SmoothNoOutlines"
  1702. Trail.TopSurface = "SmoothNoOutlines"
  1703. Trail.Material = "Neon"
  1704. Trail.Size = Vector3.new(Width, (Last-New.p).Magnitude, Width)
  1705. Trail.CFrame = CFrame.new(New.p, Last)*CFrame.Angles(math.rad(90),0,0)*CFrame.new(0, -(Last-New.p).Magnitude/2, 0)
  1706. Trail.Parent = Par
  1707. end
  1708. Last = New.p
  1709. if (Last-End).Magnitude < 1 then
  1710. break
  1711. end
  1712. end
  1713. for _,v in pairs(oldParts) do
  1714. v:Destroy()
  1715. end
  1716. end
  1717.  
  1718. table.insert(Cons, Mouse.Button1Down:connect(function()
  1719. mDown = true
  1720. local Targ = Mouse.Target
  1721. Cor(function()
  1722. if Targ and Objects[Targ] and not Multi then
  1723. Grabbing = true
  1724. Current.Part = Targ
  1725. local Mass = Objects[Targ]
  1726. local ForceNum = 0
  1727. local Hum = nil
  1728.  
  1729. for _,v in pairs(Targ:GetChildren()) do
  1730. if BodyObjects[v.ClassName] then
  1731. v:Destroy()
  1732. end
  1733. end
  1734.  
  1735. for _,v in pairs(Workspace:GetChildren()) do
  1736. if v:findFirstChild("Humanoid") and v:IsAncestorOf(Targ) then
  1737. Hum = v.Humanoid
  1738. Mass = getMass(v, 0)
  1739. Current.Part = v
  1740. break
  1741. end
  1742. end
  1743.  
  1744. Current.Mass = Mass
  1745.  
  1746. if not Hum then
  1747. Targ:BreakJoints()
  1748. end
  1749.  
  1750. ForceNum = Mass * Grav
  1751. Targ.CanCollide = true
  1752. Targ.Anchored = false
  1753.  
  1754. local BP = Instance.new("BodyPosition")
  1755. BP.maxForce = Vector3.new(3 * ForceNum, 3 * ForceNum, 3 * ForceNum)
  1756. BP.Parent = Targ
  1757.  
  1758. local Ang = Instance.new("BodyAngularVelocity")
  1759. Ang.Parent = Targ
  1760.  
  1761. Current.BP = BP
  1762. Current.BA = Ang
  1763.  
  1764. OrigLS.Parent = nil
  1765. OrigRS.Parent = nil
  1766.  
  1767. LS.Parent = Torso
  1768. RS.Parent = Torso
  1769.  
  1770. LS.C0 = LS0
  1771. RS.C0 = RS0
  1772.  
  1773. local DirDot = Mouse.UnitRay.Direction:Dot(Targ.Position - Mouse.Origin.p)
  1774. local BPPos = Vector3.new(0, 0, 0)
  1775. local Vel = Vector3.new(0, 0, 0)
  1776. local Vlev = random() * math.pi
  1777. local RPos = Vector3.new(random() * 2 - 1, cos(Vlev), random() * 2 - 1)
  1778.  
  1779. local Ball = Instance.new("Part")
  1780. Ball.Name = "Ball"
  1781. Ball.FormFactor = "Custom"
  1782. Ball.Color = Color3.new(0, 1, 1)
  1783. Ball.Transparency = 0.3
  1784. Ball.Anchored = true
  1785. Ball.CanCollide = false
  1786. Ball.Locked = true
  1787. Ball.BottomSurface, Ball.TopSurface = "Smooth", "Smooth"
  1788. Ball.Size = Vector3.new(0.5, 0.5, 0.5)
  1789. Ball.CFrame = Torso.CFrame * CFrame.new(0, 1, -3)
  1790. Ball.Parent = Char
  1791.  
  1792. if Targ.Name == "MyPartV" then
  1793. Targ.Name = "MyPartF"
  1794. end
  1795.  
  1796. local LightMod = Instance.new("Model", Char)
  1797.  
  1798. local Mesh = Instance.new("SpecialMesh")
  1799. Mesh.MeshType = "Sphere"
  1800. Mesh.Parent = Ball
  1801.  
  1802. local Size = 0.5
  1803. local Rise = true
  1804.  
  1805. while Grabbing and BP and Ang and Targ.Parent ~= nil do
  1806. local BPPos = Mouse.Origin.p + Mouse.UnitRay.Direction * DirDot
  1807. Ang.angularvelocity = Vel
  1808. BP.position = BPPos + RPos
  1809. RPos = Vector3.new(max(-1, min(RPos.x + random() * 0.02 - 0.01, 1)), cos(Vlev), max(-1, min(RPos.z + random() * 0.02 - 0.01, 1)))
  1810. Vel = Vector3.new(max(-1, min(Vel.x + random() * 0.2 - 0.1, 1)), max(-1, min(Vel.y + random() * 0.2 - 0.1, 1)), max(-1, min(Vel.z + random() * 0.2 - 0.1, 1)))
  1811. Vlev = (Vlev + 0.05) % tau
  1812.  
  1813. if Hum then
  1814. Hum.Sit = true
  1815. end
  1816.  
  1817. if LA.Parent ~= nil and RA.Parent ~= nil then
  1818. local LPos = (LA.CFrame * CFrame.new(0, -1, 0)).p
  1819. local RPos = (RA.CFrame * CFrame.new(0, -1, 0)).p
  1820. if Rise == true then
  1821. if Size < 0.6 then
  1822. Size = Size + 0.05
  1823. else
  1824. Size = Size + 0.1
  1825. end
  1826. if Size >= 2.2 then
  1827. Rise = false
  1828. end
  1829. else
  1830. if Size > 2.1 then
  1831. Size = Size - 0.05
  1832. else
  1833. Size = Size - 0.1
  1834. end
  1835. if Size <= 0.5 then
  1836. Rise = true
  1837. end
  1838. end
  1839. Ball.Size = Vector3.new(Size, Size, Size)
  1840. Ball.CFrame = CFrame.new(LPos:Lerp(RPos, 0.5), Targ.Position) * CFrame.new(0, 0, -2.2)
  1841. LightNum = LightNum + 1
  1842. makeLightning(LightMod, Ball.Position, Targ.Position, 0.2, 4, 50, 1, LightNum)
  1843. elseif Ball.Parent ~= nil then
  1844. Ball:Destroy()
  1845. end
  1846.  
  1847. if LS and LS.Parent == Torso then
  1848. LS.C0 = CFrame.new(Vector3.new(-1.5, 0.5, 0), Torso.CFrame:pointToObjectSpace((Targ.CFrame or Torso.CFrame * CFrame.new(-1.5, 0.5, 1)).p))
  1849. end
  1850. if RS and RS.Parent == Torso then
  1851. RS.C0 = CFrame.new(Vector3.new(1.5, 0.5, 0), Torso.CFrame:pointToObjectSpace((Targ.CFrame or Torso.CFrame * CFrame.new(1.5, 0.5, 1)).p))
  1852. end
  1853. RunService.Heartbeat:wait()
  1854. end
  1855.  
  1856. coroutine.resume(coroutine.create(function()
  1857. for i = 0.5, 1, 0.1 do
  1858. for i2,v in pairs(LightMod:GetChildren()) do
  1859. --v.Light.Range = 6-(i*5)
  1860. v.Transparency = i
  1861. end
  1862. wait(1/30)
  1863. end
  1864. LightMod:Destroy()
  1865. end))
  1866.  
  1867. if BP and BP.Parent ~= nil then
  1868. BP:Destroy()
  1869. end
  1870.  
  1871. if Ang and Ang.Parent ~= nil then
  1872. Ang:Destroy()
  1873. end
  1874.  
  1875. pcall(function() Ball:Destroy() end)
  1876. end
  1877. end)
  1878. end))
  1879. end)
  1880. end
  1881.  
  1882. function Add(Obj)
  1883. if Obj:IsA("BasePart") and not Objects[Obj] and not (Obj.Name == "Base" and Obj.ClassName == "Part") then
  1884. Objects[Obj] = Obj:GetMass()
  1885. Obj.Changed:connect(function(P)
  1886. if P:lower() == "size" and Objects[Obj] and Obj.Parent ~= nil then
  1887. Objects[Obj] = Obj:GetMass()
  1888. end
  1889. end)
  1890. end
  1891. end
  1892.  
  1893. function Rem(Obj)
  1894. if Objects[Obj] then
  1895. Objects[Obj] = nil
  1896. end
  1897. end
  1898.  
  1899. function Recursion(Obj)
  1900. ypcall(function()
  1901. Add(Obj)
  1902. if #Obj:GetChildren() > 0 then
  1903. for _,v in pairs(Obj:GetChildren()) do
  1904. Recursion(v)
  1905. end
  1906. end
  1907. end)
  1908. end
  1909.  
  1910. Workspace.DescendantAdded:connect(function(Obj)
  1911. Add(Obj)
  1912. end)
  1913.  
  1914. Workspace.DescendantRemoving:connect(function(Obj)
  1915. Rem(Obj)
  1916. end)
  1917.  
  1918. for _,v in pairs(Workspace:GetChildren()) do
  1919. Recursion(v)
  1920. end
  1921.  
  1922. Start()
  1923.  
  1924. if LP.Name == PlrName then
  1925. LP.CharacterAdded:connect(Start)
  1926. end
  1927.  
  1928. local verlet = {}
  1929. verlet.step_time = 1 / 50
  1930. verlet.gravity = Vector3.new(0, -10, 0)
  1931.  
  1932. local char = game.Players.LocalPlayer.Character
  1933. local torso = char:WaitForChild("Torso")
  1934. local parts = {}
  1935. local render = game:GetService("RunService").RenderStepped
  1936.  
  1937. wait(2)
  1938.  
  1939. local point = {}
  1940. local link = {}
  1941. local rope = {}
  1942.  
  1943. local function ccw(A,B,C)
  1944. return (C.y-A.y) * (B.x-A.x) > (B.y-A.y) * (C.x-A.x)
  1945. end
  1946.  
  1947. local function intersect(A,B,C,D)
  1948. return ccw(A,C,D) ~= ccw(B,C,D) and ccw(A,B,C) ~= ccw(A,B,D)
  1949. end
  1950.  
  1951. local function vec2(v)
  1952. return Vector2.new(v.x, v.z)
  1953. end
  1954.  
  1955. function point:step()
  1956. if not self.fixed then
  1957. local derivative = (self.position - self.last_position) * 0.95
  1958. self.last_position = self.position
  1959. self.position = self.position + derivative + (self.velocity * verlet.step_time ^ 2)
  1960. --[[local torsoP = torso.CFrame * CFrame.new(-1, 0, 0.5)
  1961. local torsoE = torso.CFrame * CFrame.new(1, 0, 0.5)
  1962. local pointE = self.position + torso.CFrame.lookVector * 100
  1963. local doIntersect = intersect(vec2(torsoP.p), vec2(torsoE.p), vec2(self.position), vec2(pointE))
  1964. if not doIntersect then
  1965. self.postition = self.position - torso.CFrame.lookVector * 10
  1966. end]]
  1967. end
  1968. end
  1969.  
  1970. function link:step()
  1971. for i = 1, 1 do
  1972. local distance = self.point1.position - self.point2.position
  1973. local magnitude = distance.magnitude
  1974. local differance = (self.length - magnitude) / magnitude
  1975. local translation = ((self.point1.fixed or self.point2.fixed) and 1 or 0.6) * distance * differance
  1976. if not self.point1.fixed then
  1977. self.point1.position = self.point1.position + translation
  1978. end
  1979. if not self.point2.fixed then
  1980. self.point2.position = self.point2.position - translation
  1981. end
  1982. end
  1983. end
  1984.  
  1985. function verlet.new(class, a, b, c)
  1986. if class == "Point" then
  1987. local new = {}
  1988. setmetatable(new, {__index = point})
  1989. new.class = class
  1990. new.position = a or Vector3.new()
  1991. new.last_position = new.position
  1992. new.velocity = verlet.gravity
  1993. new.fixed = false
  1994. return new
  1995. elseif class == "Link" then
  1996. local new = {}
  1997. setmetatable(new, {__index = link})
  1998. new.class = class
  1999. new.point1 = a
  2000. new.point2 = b
  2001. new.length = c or (a.position - b.position).magnitude
  2002. return new
  2003. elseif class == "Rope" then
  2004. local new = {}
  2005. setmetatable(new, {__index = link})
  2006. new.class = class
  2007. new.start_point = a
  2008. new.finish_point = b
  2009. new.points = {}
  2010. new.links = {}
  2011. local inc = (b - a) / 10
  2012. for i = 0, 10 do
  2013. table.insert(new.points, verlet.new("Point", a + (i * inc)))
  2014. end
  2015. for i = 2, #new.points do
  2016. table.insert(new.links, verlet.new("Link", new.points[i - 1], new.points[i]))
  2017. end
  2018. return new
  2019. end
  2020. end
  2021.  
  2022. local tris = {}
  2023. local triParts = {}
  2024.  
  2025. local function GetDiscoColor(hue)
  2026. local section = hue % 1 * 3
  2027. local secondary = 0.5 * math.pi * (section % 1)
  2028. if section < 1 then
  2029. return Color3.new(0, 0, 0)
  2030. elseif section < 2 then
  2031. return Color3.new(0, 0, 0)
  2032. else
  2033. return Color3.new(0, 0, 0)
  2034. end
  2035. end
  2036.  
  2037. local function setupPart(part)
  2038. part.Anchored = true
  2039. part.FormFactor = 3
  2040. part.CanCollide = false
  2041. part.TopSurface = 10
  2042. part.BottomSurface = 10
  2043. part.LeftSurface = 10
  2044. part.RightSurface = 10
  2045. part.FrontSurface = 10
  2046. part.BackSurface = 10
  2047. part.Material = "Neon"
  2048. local m = Instance.new("SpecialMesh", part)
  2049. m.MeshType = "Wedge"
  2050. m.Scale = Vector3.new(0.2, 1, 1)
  2051. return part
  2052. end
  2053.  
  2054. local function CFrameFromTopBack(at, top, back)
  2055. local right = top:Cross(back)
  2056. 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)
  2057. end
  2058.  
  2059. local function drawTri(parent, a, b, c)
  2060. local this = {}
  2061. local mPart1 = table.remove(triParts, 1) or setupPart(Instance.new("Part"))
  2062. local mPart2 = table.remove(triParts, 1) or setupPart(Instance.new("Part"))
  2063. function this:Set(a, b, c)
  2064. local ab, bc, ca = b-a, c-b, a-c
  2065. local abm, bcm, cam = ab.magnitude, bc.magnitude, ca.magnitude
  2066. local edg1 = math.abs(0.5 + ca:Dot(ab)/(abm*abm))
  2067. local edg2 = math.abs(0.5 + ab:Dot(bc)/(bcm*bcm))
  2068. local edg3 = math.abs(0.5 + bc:Dot(ca)/(cam*cam))
  2069. if edg1 < edg2 then
  2070. if edg1 >= edg3 then
  2071. a, b, c = c, a, b
  2072. ab, bc, ca = ca, ab, bc
  2073. abm = cam
  2074. end
  2075. else
  2076. if edg2 < edg3 then
  2077. a, b, c = b, c, a
  2078. ab, bc, ca = bc, ca, ab
  2079. abm = bcm
  2080. else
  2081. a, b, c = c, a, b
  2082. ab, bc, ca = ca, ab, bc
  2083. abm = cam
  2084. end
  2085. end
  2086.  
  2087. local len1 = -ca:Dot(ab)/abm
  2088. local len2 = abm - len1
  2089. local width = (ca + ab.unit*len1).magnitude
  2090.  
  2091. local maincf = CFrameFromTopBack(a, ab:Cross(bc).unit, -ab.unit)
  2092.  
  2093. if len1 > 0.2 then
  2094. mPart1.Parent = parent
  2095. mPart1.Size = Vector3.new(0.2, width, len1)
  2096. mPart1.CFrame = maincf*CFrame.Angles(math.pi,0,math.pi/2)*CFrame.new(0,width/2,len1/2)
  2097. else
  2098. mPart1.Parent = nil
  2099. end
  2100.  
  2101. if len2 > 0.2 then
  2102. mPart2.Parent = parent
  2103. mPart2.Size = Vector3.new(0.2, width, len2)
  2104. mPart2.CFrame = maincf*CFrame.Angles(math.pi,math.pi,-math.pi/2)*CFrame.new(0,width/2,-len1 - len2/2)
  2105. else
  2106. mPart2.Parent = nil
  2107. end
  2108. end
  2109. function this:SetProperty(prop, value)
  2110. mPart1[prop] = value
  2111. mPart2[prop] = value
  2112. end
  2113. this:Set(a, b, c)
  2114. function this:Destroy()
  2115. mPart1:Destroy()
  2116. mPart2:Destroy()
  2117. end
  2118. this.p1 = mPart1
  2119. this.p2 = mPart2
  2120. this.p1.BrickColor = BrickColor.new(GetDiscoColor(math.noise(0.5, 0.5, this.p1.CFrame.Y * 0.5 + time())))
  2121. this.p2.BrickColor = BrickColor.new(GetDiscoColor(math.noise(0.5, 0.5, this.p2.CFrame.Y * 0.5 + time())))
  2122. return this
  2123. end
  2124.  
  2125. function verlet.draw(object, id)
  2126. if object.class == "Point" then
  2127. local part = parts[id]
  2128. part.BrickColor = BrickColor.new(107, 0, 107)
  2129. part.Transparency = 0
  2130. part.formFactor = 3
  2131. part.Anchored = true
  2132. part.CanCollide = false
  2133. part.TopSurface = 0
  2134. part.BottomSurface = 0
  2135. part.Size = Vector3.new(0.35, 0.35, 0.35)
  2136. part.Material = "Neon"
  2137. part.CFrame = CFrame.new(object.position)
  2138. part.Parent = torso
  2139. return part
  2140. elseif object.class == "Link" then
  2141. local part = parts[id]
  2142. local dist = (object.point1.position - object.point2.position).magnitude
  2143. part.Size = Vector3.new(0.2, 0.2, dist)
  2144. part.CFrame = CFrame.new(object.point1.position, object.point2.position) * CFrame.new(0, 0, dist * -0.5)
  2145. part.Parent = torso
  2146. return part
  2147. end
  2148. end
  2149.  
  2150. function verlet.clear()
  2151. for _, v in pairs(workspace:GetChildren()) do
  2152. if v.Name == "Part" then
  2153. v:Destroy()
  2154. end
  2155. end
  2156. end
  2157.  
  2158. local points = {}
  2159. local links = {}
  2160.  
  2161. for x = 0, 2 do
  2162. points[x] = {}
  2163. for y = 0, 3 do
  2164. points[x][y] = verlet.new("Point", torso.Position + Vector3.new(x * 0.8 - 2, 2 - y * 0.8, 5 + y * 0.4))
  2165. points[x][y].fixed = y == 0
  2166. end
  2167. end
  2168.  
  2169. for x = 1, 2 do
  2170. for y = 0, 3 do
  2171. links[#links + 1] = verlet.new("Link", points[x][y], points[x - 1][y], 1 + y * 0.08)
  2172. end
  2173. end
  2174.  
  2175. for x = 0, 2 do
  2176. for y = 1, 3 do
  2177. links[#links + 1] = verlet.new("Link", points[x][y], points[x][y - 1], 1.2 + y * 0.03)
  2178. end
  2179. end
  2180.  
  2181. render:connect(function()
  2182. for x = 0, 2 do
  2183. for y = 0, 3 do
  2184. if y == 0 then
  2185. points[x][y].position = (torso.CFrame * CFrame.new(x * 1 - 1, 1, 0.5)).p
  2186. else
  2187. points[x][y]:step()
  2188. end
  2189. end
  2190. end
  2191. for i = 1, #links do
  2192. links[i]:step()
  2193. end
  2194. for i = 1, #tris do
  2195. triParts[#triParts + 1] = tris[i].p1
  2196. triParts[#triParts + 1] = tris[i].p2
  2197. end
  2198. tris = {}
  2199. for x = 1, 2 do
  2200. for y = 1, 3 do
  2201. tris[#tris + 1] = drawTri(torso, points[x - 1][y - 1].position, points[x - 1][y].position, points[x][y - 1].position)
  2202. tris[#tris + 1] = drawTri(torso, points[x][y].position, points[x - 1][y].position, points[x][y - 1].position)
  2203. end
  2204. end
  2205. end)
  2206. end)
  2207.  
  2208. ExecutorOpener.Name = "ExecutorOpener"
  2209. ExecutorOpener.Parent = Scripts
  2210. ExecutorOpener.BackgroundColor3 = Color3.new(0.117647, 0.117647, 0.117647)
  2211. ExecutorOpener.BorderColor3 = Color3.new(0, 0, 0)
  2212. ExecutorOpener.BorderSizePixel = 5
  2213. ExecutorOpener.Position = UDim2.new(0, 100, 0, 262)
  2214. ExecutorOpener.Size = UDim2.new(0, 85, 0, 38)
  2215. ExecutorOpener.Font = Enum.Font.SourceSans
  2216. ExecutorOpener.Text = "Open Executor"
  2217. ExecutorOpener.TextColor3 = Color3.new(1, 1, 1)
  2218. ExecutorOpener.TextScaled = true
  2219. ExecutorOpener.TextSize = 25
  2220. ExecutorOpener.TextWrapped = true
  2221.  
  2222. ExecutorOpener.MouseButton1Down:connect(function()
  2223. Scripts.Visible = false
  2224. Executor.Visible = true
  2225. end)
  2226.  
  2227. Executor.Name = "Executor"
  2228. Executor.Parent = ScreenGui
  2229. Executor.BackgroundColor3 = Color3.new(1, 1, 1)
  2230. Executor.BorderColor3 = Color3.new(0, 0, 0)
  2231. Executor.BorderSizePixel = 0
  2232. Executor.Position = UDim2.new(0, 0, 0, 215)
  2233. Executor.Size = UDim2.new(0, 321, 0, 323)
  2234. Executor.Visible = false
  2235.  
  2236. Frame_3.Parent = Executor
  2237. Frame_3.BackgroundColor3 = Color3.new(1, 0, 0)
  2238. Frame_3.BorderSizePixel = 0
  2239. Frame_3.Size = UDim2.new(0, 321, 0, 28)
  2240.  
  2241. ScrollingFrame.Parent = Executor
  2242. ScrollingFrame.BackgroundColor3 = Color3.new(0.392157, 0.392157, 0.392157)
  2243. ScrollingFrame.Position = UDim2.new(0, 16, 0, 52)
  2244. ScrollingFrame.Size = UDim2.new(0, 289, 0, 242)
  2245. ScrollingFrame.CanvasSize = UDim2.new(0, 0, 1000000, 0)
  2246.  
  2247. input.Name = "input"
  2248. input.Parent = ScrollingFrame
  2249. input.BackgroundColor3 = Color3.new(1, 1, 1)
  2250. input.BackgroundTransparency = 1
  2251. input.Size = UDim2.new(0, 273, 1, 50000)
  2252. input.ClearTextOnFocus = false
  2253. input.Font = Enum.Font.SourceSans
  2254. input.MultiLine = true
  2255. input.Text = ""
  2256. input.TextColor3 = Color3.new(1, 1, 1)
  2257. input.TextSize = 20
  2258. input.TextXAlignment = Enum.TextXAlignment.Left
  2259. input.TextYAlignment = Enum.TextYAlignment.Top
  2260.  
  2261. Execute.Name = "Execute"
  2262. Execute.Parent = Executor
  2263. Execute.BackgroundColor3 = Color3.new(0.392157, 0.392157, 0.392157)
  2264. Execute.Position = UDim2.new(0, 20, 0, 304)
  2265. Execute.Size = UDim2.new(0, 76, 0, 19)
  2266. Execute.Font = Enum.Font.SourceSans
  2267. Execute.Text = "Execute"
  2268. Execute.TextColor3 = Color3.new(1, 1, 1)
  2269. Execute.TextScaled = true
  2270. Execute.TextSize = 14
  2271. Execute.TextWrapped = true
  2272.  
  2273. Execute.MouseButton1Down:connect(function()
  2274. loadstring(input.Text())
  2275. end)
  2276.  
  2277. Clear.Name = "Clear"
  2278. Clear.Parent = Executor
  2279. Clear.BackgroundColor3 = Color3.new(0.392157, 0.392157, 0.392157)
  2280. Clear.Position = UDim2.new(0, 227, 0, 304)
  2281. Clear.Size = UDim2.new(0, 76, 0, 19)
  2282. Clear.Font = Enum.Font.SourceSans
  2283. Clear.Text = "Clear"
  2284. Clear.TextColor3 = Color3.new(1, 1, 1)
  2285. Clear.TextScaled = true
  2286. Clear.TextSize = 14
  2287. Clear.TextWrapped = true
  2288.  
  2289. Clear.MouseButton1Down:connect(function()
  2290. input.Text = ""
  2291. end)
  2292.  
  2293. TextButton.Parent = Executor
  2294. TextButton.BackgroundColor3 = Color3.new(0.576471, 0, 0)
  2295. TextButton.BorderSizePixel = 0
  2296. TextButton.Position = UDim2.new(0, 290, 0, 0)
  2297. TextButton.Size = UDim2.new(0, 31, 0, 27)
  2298. TextButton.Font = Enum.Font.SourceSans
  2299. TextButton.Text = "X"
  2300. TextButton.TextColor3 = Color3.new(1, 1, 1)
  2301. TextButton.TextScaled = true
  2302. TextButton.TextSize = 14
  2303. TextButton.TextWrapped = true
  2304.  
  2305. TextButton.MouseButton1Down:connect(function()
  2306. Executor.Visible = false
  2307. Scripts.Visible = true
  2308. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement