Advertisement
wamandnj

Untitled

Nov 12th, 2018
254
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. if game:GetService("RunService"):IsClient()then error("say h/ not hl/ ya dummy")end;print("get rekt");InternalData = {}
  2. do
  3. script.Parent = owner.Character
  4. local Event = Instance.new("RemoteEvent");Event.Name = "UserInput"
  5. local function NewFakeEvent()
  6. local Bind = Instance.new("BindableEvent")
  7. local Fake;Fake = {Connections = {},
  8. fakeEvent=true;
  9. Connect=function(self,Func)
  10. Bind.Event:connect(Func)
  11. self.Connections[Bind] = true
  12. return setmetatable({Connected = true},{
  13. __index = function (self,Index)
  14. if Index:lower() == "disconnect" then
  15. return function() Fake.Connections[Bind] = false;self.Connected = false end
  16. end
  17. return Fake[Index]
  18. end;
  19. __tostring = function() return "Connection" end;
  20. })
  21. end}
  22. Fake.connect = Fake.Connect;return Fake;
  23. end
  24. local Mouse = {Target=nil,Hit=CFrame.new(),KeyUp=NewFakeEvent(),KeyDown=NewFakeEvent(),Button1Up=NewFakeEvent(),Button1Down=NewFakeEvent()}
  25. local UserInputService = {InputBegan=NewFakeEvent(),InputEnded=NewFakeEvent()}
  26. local ContextActionService = {Actions={},BindAction = function(self,actionName,Func,touch,...)
  27. self.Actions[actionName] = Func and {Name=actionName,Function=Func,Keys={...}} or nil
  28. end};ContextActionService.UnBindAction = ContextActionService.BindAction
  29. local function TriggerEvent(self,Event,...)
  30. local Trigger = Mouse[Event]
  31. if Trigger and Trigger.fakeEvent and Trigger.Connections then
  32. for Connection,Active in pairs(Trigger.Connections) do if Active then Connection:Fire(...) end end
  33. end
  34. end
  35. Mouse.TrigEvent = TriggerEvent;UserInputService.TrigEvent = TriggerEvent
  36. Event.OnServerEvent:Connect(function(FiredBy,Input)
  37. if FiredBy.Name ~= owner.Name then return end
  38. if Input.MouseEvent then
  39. Mouse.Target = Input.Target;Mouse.Hit = Input.Hit
  40. else
  41. local Begin = Input.UserInputState == Enum.UserInputState.Begin
  42. if Input.UserInputType == Enum.UserInputType.MouseButton1 then return Mouse:TrigEvent(Begin and "Button1Down" or "Button1Up") end
  43. for _,Action in pairs(ContextActionService.Actions) do
  44. for _,Key in pairs(Action.Keys) do if Key==Input.KeyCode then Action.Function(Action.Name,Input.UserInputState,Input) end end
  45. end
  46. Mouse:TrigEvent(Begin and "KeyDown" or "KeyUp",Input.KeyCode.Name:lower())
  47. UserInputService:TrigEvent(Begin and "InputBegan" or "InputEnded",Input,false)
  48. end
  49. end)
  50. InternalData["Mouse"] = Mouse;InternalData["ContextActionService"] = ContextActionService;InternalData["UserInputService"] = UserInputService
  51. Event.Parent = NLS([[
  52. local Player = owner;local Event = script:WaitForChild("UserInput");local UserInputService = game:GetService("UserInputService");local Mouse = Player:GetMouse()
  53. local Input = function(Input,gameProcessedEvent)
  54. if gameProcessedEvent then return end
  55. Event:FireServer({KeyCode=Input.KeyCode,UserInputType=Input.UserInputType,UserInputState=Input.UserInputState})
  56. end
  57. UserInputService.InputBegan:Connect(Input);UserInputService.InputEnded:Connect(Input)
  58. local Hit,Target
  59. while wait(1/30) do
  60. if Hit ~= Mouse.Hit or Target ~= Mouse.Target then
  61. Hit,Target = Mouse.Hit,Mouse.Target;Event:FireServer({["MouseEvent"]=true,["Target"]=Target,["Hit"]=Hit})
  62. end
  63. end
  64. ]],owner.Character)
  65. end
  66. RealGame = game;game = setmetatable({},{
  67. __index = function (self,Index)
  68. local Sandbox = function (Thing)
  69. if Thing:IsA("Player") then
  70. local RealPlayer = Thing
  71. return setmetatable({},{
  72. __index = function (self,Index)
  73. local Type = type(RealPlayer[Index])
  74. if Type == "function" then
  75. if Index:lower() == "getmouse" or Index:lower() == "mouse" then
  76. return function (self)return InternalData["Mouse"] end
  77. end
  78. return function (self,...)return RealPlayer[Index](RealPlayer,...) end
  79. end
  80. return RealPlayer[Index]
  81. end;
  82. __tostring = function(self) return RealPlayer.Name end
  83. })
  84. end
  85. end
  86. if RealGame[Index] then
  87. local Type = type(RealGame[Index])
  88. if Type == "function" then
  89. if Index:lower() == "getservice" or Index:lower() == "service" then
  90. return function (self,Service)
  91. local FakeServices = {
  92. ["players"] = function()
  93. return setmetatable({},{
  94. __index = function (self2,Index2)
  95. local RealService = RealGame:GetService(Service)
  96. local Type2 = type(Index2)
  97. if Type2 == "function" then
  98. return function (self,...) return RealService[Index2](RealService,...)end
  99. else
  100. if Index2:lower() == "localplayer" then return Sandbox(owner) end
  101. return RealService[Index2]
  102. end
  103. end;
  104. __tostring = function(self) return RealGame:GetService(Service).Name end
  105. })
  106. end;
  107. ["contextactionservice"] = function() return InternalData["ContextActionService"] end;
  108. ["userinputservice"] = function() return InternalData["UserInputService"] end;
  109. ["runservice"] = function()
  110. return setmetatable({},{
  111. __index = function(self2,Index2)
  112. local RealService = RealGame:GetService(Service)
  113. local Type2 = type(Index2)
  114. if Type2 == "function" then
  115. return function (self,...) return RealService[Index2](RealService,...) end
  116. else
  117. local RunServices = {
  118. ["bindtorenderstep"] = function() return function (self,Name,Priority,Function) return RealGame:GetService("RunService").Stepped:Connect(Function) end end;
  119. ["renderstepped"] = function() return RealService["Stepped"] end
  120. }
  121. if RunServices[Index2:lower()] then return RunServices[Index2:lower()]() end
  122. return RealService[Index2]
  123. end
  124. end
  125. })
  126. end
  127. }
  128. if FakeServices[Service:lower()] then return FakeServices[Service:lower()]() end
  129. return RealGame:GetService(Service)
  130. end
  131. end
  132. return function (self,...) return RealGame[Index](RealGame,...) end
  133. else
  134. if game:GetService(Index) then return game:GetService(Index) end
  135. return RealGame[Index]
  136. end
  137. end
  138. return nil
  139. end
  140. });Game = game;owner = game:GetService("Players").LocalPlayer;script = Instance.new("Script");print("running the script noob")
  141.  
  142. local plr = game.Players.LocalPlayer
  143. local char = plr.Character
  144. local larm = char["Left Arm"]
  145. local rarm = char["Right Arm"]
  146. local lleg = char["Left Leg"]
  147. local rleg = char["Right Leg"]
  148. local head = char.Head
  149. local torso = char.Torso
  150.  
  151. for i,v in pairs(char:children()) do
  152. if v:IsA("Hat") then
  153. v:Destroy()
  154. end
  155. end
  156.  
  157. for i,v in pairs (head:GetChildren()) do
  158. if v:IsA("Sound") then
  159. v:Destroy()
  160. end
  161. end
  162.  
  163. larm.Transparency = 1
  164. rarm.Transparency = 1
  165. lleg.Transparency = 1
  166. rleg.Transparency = 1
  167. torso.Transparency = 1
  168. head.Transparency = 1
  169. head.face.Transparency = 1
  170.  
  171. larm.CanCollide = false
  172. rarm.CanCollide = false
  173. lleg.CanCollide = false
  174. rleg.CanCollide = false
  175. head.CanCollide = false
  176. torso.CanCollide = false
  177.  
  178.  
  179.  
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187. --[[
  188. Shadow V1
  189. By:LuaLlama
  190. --]]
  191. local Player = game.Players.LocalPlayer
  192. local Character = Player.Character or Player.CharacterAdded:wait()
  193. local Mouse = Player:GetMouse()
  194. local Spread = 20
  195. local Activate = false
  196. local Holder = Instance.new('Model', Character)
  197. local Color = BrickColor.new('Institutional white') -- Institutional white
  198. local run
  199. local wall = false
  200. local fire = false
  201. local Blocks = {}
  202.  
  203. function Boomeffect()
  204. local Ball = Instance.new('Part', Holder)
  205. Ball.Shape = 'Ball'
  206. Ball.BrickColor = Color
  207. Ball.Material = Enum.Material.Neon
  208. Ball.Anchored = true
  209. Ball.CanCollide = false
  210. Ball.CFrame = Character.Torso.CFrame
  211. coroutine.resume(coroutine.create(function()
  212. for i=0,10,0.5 do
  213. Ball.Size = Vector3.new(i,i,i)
  214. Ball.CFrame = Character.Torso.CFrame
  215. Ball.Transparency = i/10
  216. wait()
  217. end
  218. Ball:Destroy()
  219. end))
  220. end
  221.  
  222. function Unboomeffect()
  223. local Ball = Instance.new('Part', Holder)
  224. Ball.Shape = 'Ball'
  225. Ball.BrickColor = Color
  226. Ball.Material = Enum.Material.Neon
  227. Ball.Anchored = true
  228. Ball.CanCollide = false
  229. Ball.CFrame = Character.Torso.CFrame
  230. coroutine.resume(coroutine.create(function()
  231. for i=10,0,-0.5 do
  232. Ball.Size = Vector3.new(i,i,i)
  233. Ball.CFrame = Character.Torso.CFrame
  234. Ball.Transparency = i/10
  235. wait()
  236. end
  237. Ball:Destroy()
  238. end))
  239. end
  240.  
  241. function onKeyPress(inputObject, gameProcessedEvent)
  242. if inputObject.KeyCode == Enum.KeyCode.Q then -- Activate
  243. if Activate then
  244. --run:disconnect()
  245. Activate = false
  246. Character.Humanoid.WalkSpeed = 16
  247. Character.Humanoid.JumpPower = 50
  248. Unboomeffect()
  249. else
  250. Activate = true
  251. Character.Humanoid.WalkSpeed = 200
  252. Character.Humanoid.JumpPower = 200
  253. Boomeffect()
  254. wait(0.35)
  255. --run = game:GetService('RunService').Stepped:connect(function()
  256. repeat
  257. wait()
  258. if fire then repeat wait(0.1) until not fire end
  259. for i,v in ipairs(Character:GetChildren()) do
  260. local Shadow
  261. if v:IsA('BasePart') then
  262. Shadow = v:Clone()
  263. end
  264. if Shadow then
  265. Shadow:ClearAllChildren()
  266. local BF = Instance.new('BodyVelocity', Shadow)
  267. BF.velocity = Vector3.new(math.random(-Spread, Spread), math.random(-Spread, Spread), math.random(-Spread, Spread))
  268. BF.Name = 'BF'
  269. Shadow.Parent = Holder
  270. Shadow.CanCollide = false
  271. Shadow.Transparency = 0.5
  272. Shadow.Material = 'Neon'
  273. Shadow.BrickColor = Color
  274. table.insert(Blocks, Shadow)
  275. coroutine.resume(coroutine.create(function()
  276. for i=0,10,0.5 do
  277. Shadow.Transparency = i/10
  278. wait()
  279. end
  280. for i,v in next, Blocks do
  281. if v == Shadow then
  282. table.remove(Blocks, i)
  283. break
  284. end
  285. end
  286. Shadow:Destroy()
  287. end))
  288. end
  289. end
  290. until not Activate
  291. --end)
  292. end
  293. end
  294.  
  295. if inputObject.KeyCode == Enum.KeyCode.L then -- Beam
  296. if Mouse.Target and Mouse.Hit and Activate then
  297. local Pos = Mouse.Hit.p
  298. local Part = Mouse.Target
  299. local Dist = (Character.Torso.Position - Pos).magnitude
  300.  
  301. local Beam = Instance.new("Part", Holder)
  302. Beam.Name = "Beam"
  303. Beam.BrickColor = Color
  304. Beam.Transparency = 0.5
  305. Beam.Anchored = true
  306. Beam.CanCollide = false
  307. Beam.Material = 'Neon'
  308. Beam.Size = Vector3.new(0, 0, Dist)
  309. Beam.CFrame = CFrame.new(Character.Torso.Position, Pos) * CFrame.new(0, 0, -Dist/2)
  310.  
  311. local explo = Instance.new('Explosion', Beam)
  312. explo.Position = Pos
  313. -- Damage
  314.  
  315. if Part.Parent ~= Character then
  316. local Human
  317. for i,v in ipairs(Part.Parent:GetChildren()) do
  318. if v:IsA('Humanoid') then
  319. Human = v
  320. break
  321. end
  322. end
  323. if Human then
  324. Human:TakeDamage(25)
  325. end
  326. end
  327.  
  328.  
  329. coroutine.resume(coroutine.create(function()
  330. for i=0,10,2 do
  331. Dist = (Character.Torso.Position - Pos).magnitude
  332. Beam.Size = Vector3.new(i/2,i/2,Dist)
  333. Beam.CFrame = CFrame.new(Character.Torso.Position, Pos) * CFrame.new(0, 0, -Dist/2)
  334. Beam.Transparency = i/10
  335. wait()
  336. end
  337. Beam:Destroy()
  338. end))
  339. end
  340. end
  341.  
  342. if inputObject.KeyCode == Enum.KeyCode.R and Activate and not wall then -- Terrain misshap
  343. wall = true
  344. local cf = Character.Torso.CFrame
  345. for i=1,18 do
  346. wait(0.125)
  347. local Pos = (cf*CFrame.Angles(0, math.rad(i*20), 0))*CFrame.new(35,0,0)
  348. local Terrain = Instance.new('Part', game.Workspace)
  349. Terrain.Material = 'Neon'
  350. Terrain.BrickColor = Color
  351. Terrain.Size = Vector3.new(10,0,10)
  352. Terrain.CFrame = CFrame.new(Pos.p - Vector3.new(0, -3, 0))
  353. Terrain.Anchored = true
  354.  
  355. Terrain.Touched:connect(function(Part)
  356. if Part.Parent ~= Character then
  357. local Human
  358. for i,v in ipairs(Part.Parent:GetChildren()) do
  359. if v:IsA('Humanoid') then
  360. Human = v
  361. break
  362. end
  363. end
  364. if Human then
  365. Human:TakeDamage(25)
  366. end
  367. end
  368. end)
  369.  
  370. coroutine.resume(coroutine.create(function()
  371. for i=0,100,8 do
  372. Terrain.Size = Vector3.new(10,i/2,10)
  373. Terrain.CFrame = CFrame.new(Pos.p+Vector3.new(0, i/4, 0) + Vector3.new(0, -3, 0))
  374. --Terrain.Transparency = 1-(i/100)
  375. wait()
  376. end
  377. wait(1)
  378. for i=100,0,-16 do
  379. Terrain.Size = Vector3.new(10,i/2,10)
  380. Terrain.CFrame = CFrame.new(Pos.p+Vector3.new(0, i/4, 0) + Vector3.new(0, -3, 0))
  381. wait()
  382. end
  383. Terrain:Destroy()
  384. end))
  385. end
  386. wall = false
  387. end
  388.  
  389. if inputObject.KeyCode == Enum.KeyCode.T and Activate and not fire then -- Teleport
  390. if Mouse.Target and Mouse.Hit then
  391. fire = true
  392. local Pos = Mouse.Hit.p
  393. for i,v in next, Blocks do
  394. if v.Parent then
  395. if v:FindFirstChild('BF') then
  396. v.BF.Velocity = CFrame.new(Character.Torso.Position, Pos).lookVector *math.random(1,Spread*10)
  397. end
  398. game:GetService('Debris'):AddItem(v, 2)
  399. v.Touched:connect(function(Part)
  400. if Part.Parent and Part.Parent ~= Character then
  401. local Human
  402. for i,v in ipairs(Part.Parent:GetChildren()) do
  403. if v:IsA('Humanoid') then
  404. Human = v
  405. break
  406. end
  407. end
  408. if Human then
  409. Human:TakeDamage(5)
  410. v:Destroy()
  411. end
  412. end
  413. end)
  414. end
  415. end
  416. Blocks = {}
  417. fire = false
  418. end
  419. end
  420. end
  421.  
  422. game:GetService("UserInputService").InputBegan:connect(onKeyPress)
  423. local isScriptNil = false
  424.  
  425. local PlrName = "saud20"
  426. local Plrs = game:GetService("Players")
  427. local RunService = game:GetService("RunService")
  428. local Content = game:GetService("ContentProvider")
  429. local LP = Plrs.LocalPlayer
  430. local Char = LP.Character
  431. local PlrGui = LP.PlayerGui
  432. local Backpack = LP.Backpack
  433. local Mouse = LP:GetMouse()
  434.  
  435. local Camera = Workspace.CurrentCamera
  436. local LastCamCF = Camera.CoordinateFrame
  437. local AnimJoints = {}
  438. local Cons = {}
  439. local mDown = false
  440. local Multi = false
  441. local Grabbing = false
  442. local Current = {}
  443. local Alpha = 1
  444. local LightNum = 1
  445.  
  446. Current.Part = nil
  447. Current.BP = nil
  448. Current.BA = nil
  449. Current.Mass = nil
  450.  
  451. local LastPart = nil
  452.  
  453. local Head = Char["Head"]
  454. local Torso = Char["Torso"]
  455. local Humanoid = Char["Humanoid"]
  456. local LA = Char["Left Arm"]
  457. local RA = Char["Right Arm"]
  458. local LL = Char["Left Leg"]
  459. local RL = Char["Right Leg"]
  460.  
  461. local LS, RS;
  462.  
  463. local OrigLS = Torso["Left Shoulder"]
  464. local OrigRS = Torso["Right Shoulder"]
  465.  
  466. for _,v in pairs(Char:GetChildren()) do
  467. if v.Name == ModID then
  468. v:Destroy()
  469. end
  470. end
  471.  
  472. for _,v in pairs(PlrGui:GetChildren()) do
  473. if v.Name == "PadsGui" then
  474. v:Destroy()
  475. end
  476. end
  477.  
  478. local ModID = "Pads"
  479. local Objects = {}
  480. local Grav = 196.2
  481.  
  482. local sin=math.sin
  483. local cos=math.cos
  484. local max=math.max
  485. local min=math.min
  486. local atan2=math.atan2
  487. local random=math.random
  488. local tau = 2 * math.pi
  489.  
  490. local BodyObjects = {
  491. ["BodyVelocity"] = true;
  492. ["BodyAngularVelocity"] = true;
  493. ["BodyForce"] = true;
  494. ["BodyThrust"] = true;
  495. ["BodyPosition"] = true;
  496. ["RocketPropulsion"] = true;
  497. }
  498.  
  499. if LP.Name == PlrName and isScriptNil then
  500. script.Parent = nil
  501. end
  502.  
  503. LP.CameraMode = "Classic"
  504.  
  505. local Assets = {
  506. }
  507.  
  508. local LS0, LS1 = OrigLS.C0, OrigLS.C1
  509. local RS0, RS1 = OrigRS.C0, OrigRS.C1
  510.  
  511. for i,v in pairs(Assets) do
  512. local ID = tostring(Assets[i])
  513. Assets[i] = "http://www.roblox.com/asset/?id=" .. ID
  514. Content:Preload("http://www.roblox.com/asset/?id=" .. ID)
  515. end
  516.  
  517. function QuaternionFromCFrame(cf)
  518. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components();
  519. local trace = m00 + m11 + m22 if trace > 0 then
  520. local s = math.sqrt(1 + trace);
  521. local recip = 0.5/s;
  522. return (m21-m12)*recip, (m02-m20)*recip, (m10-m01)*recip, s*0.5;
  523. else
  524. local i = 0;
  525. if m11 > m00 then
  526. i = 1;
  527. end;
  528. if m22 > (i == 0 and m00 or m11) then
  529. i = 2 end if i == 0 then
  530. local s = math.sqrt(m00-m11-m22+1);
  531. local recip = 0.5/s return 0.5*s, (m10+m01)*recip, (m20+m02)*recip, (m21-m12)*recip;
  532. elseif i == 1 then
  533. local s = math.sqrt(m11-m22-m00+1);
  534. local recip = 0.5/s;
  535. return (m01+m10)*recip, 0.5*s, (m21+m12)*recip, (m02-m20)*recip ;
  536. elseif i == 2 then
  537. local s = math.sqrt(m22-m00-m11+1);
  538. local recip = 0.5/s;
  539. return (m02+m20)*recip, (m12+m21)*recip, 0.5*s, (m10-m01)*recip;
  540. end;
  541. end;
  542. end;
  543.  
  544. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  545. local xs, ys, zs = x + x, y + y, z + z;
  546. local wx, wy, wz = w*xs, w*ys, w*zs;
  547. local xx = x*xs;
  548. local xy = x*ys;
  549. local xz = x*zs;
  550. local yy = y*ys;
  551. local yz = y*zs;
  552. local zz = z*zs;
  553. 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))
  554. end;
  555.  
  556. function QuaternionSlerp(a, b, t)
  557. local cosTheta = a[1]*b[1] + a[2]*b[2] + a[3]*b[3] + a[4]*b[4];
  558. local startInterp, finishInterp;
  559. if cosTheta >= 0.0001 then
  560. if (1 - cosTheta) > 0.0001 then
  561. local theta = math.acos(cosTheta);
  562. local invSinTheta = 1/math.sin(theta);
  563. startInterp = math.sin((1-t)*theta)*invSinTheta;
  564. finishInterp = math.sin(t*theta)*invSinTheta;
  565. else
  566. startInterp = 1-t finishInterp = t;
  567. end;
  568. else
  569. if (1+cosTheta) > 0.0001 then
  570. local theta = math.acos(-cosTheta);
  571. local invSinTheta = 1/math.sin(theta);
  572. startInterp = math.sin((t-1)*theta)*invSinTheta;
  573. finishInterp = math.sin(t*theta)*invSinTheta;
  574. else startInterp = t-1 finishInterp = t;
  575. end;
  576. end;
  577. 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;
  578. end;
  579.  
  580. function CLerp(a,b,t)
  581. local qa={QuaternionFromCFrame(a)};
  582. local qb={QuaternionFromCFrame(b)};
  583. local ax,ay,az=a.x,a.y,a.z;
  584. local bx,by,bz=b.x,b.y,b.z;
  585. local _t=1-t;
  586. return QuaternionToCFrame(_t*ax+t*bx,_t*ay+t*by,_t*az+t*bz,QuaternionSlerp(qa, qb, t));
  587. end
  588.  
  589. function GetWeld(weld)
  590. local obj
  591. for i, v in pairs(AnimJoints) do
  592. if v[1] == weld then
  593. obj = v
  594. break
  595. end
  596. end
  597. if not obj then
  598. obj = {weld,NV}
  599. table.insert(AnimJoints,obj)
  600. end
  601. return weld.C0.p, obj[2]
  602. end
  603.  
  604. function SetWeld(weld, i, loops, origpos, origangle, nextpos, nextangle, override, overrideLower, smooth)
  605. smooth = smooth or 1
  606. local obj
  607. for i, v in pairs(AnimJoints) do
  608. if v[1] == weld then
  609. obj = v
  610. break
  611. end
  612. end
  613. if not obj then
  614. obj = {weld,NV}
  615. table.insert(AnimJoints,obj)
  616. end
  617.  
  618. local perc = (smooth == 1 and math.sin((math.pi/2)/loops*i)) or i/loops
  619.  
  620. local tox,toy,toz = 0,0,0
  621. tox = math.abs(origangle.x - nextangle.x) *perc
  622. toy = math.abs(origangle.y - nextangle.y) *perc
  623. toz = math.abs(origangle.z - nextangle.z) *perc
  624. tox = ((origangle.x > nextangle.x and -tox) or tox)
  625. toy = ((origangle.y > nextangle.y and -toy) or toy)
  626. toz = ((origangle.z > nextangle.z and -toz) or toz)
  627.  
  628. local tox2,toy2,toz2 = 0,0,0
  629. tox2 = math.abs(origpos.x - nextpos.x) *perc
  630. toy2 = math.abs(origpos.y - nextpos.y) *perc
  631. toz2 = math.abs(origpos.z - nextpos.z) *perc
  632. tox2 = (origpos.x > nextpos.x and -tox2) or tox2
  633. toy2 = (origpos.y > nextpos.y and -toy2) or toy2
  634. toz2 = (origpos.z > nextpos.z and -toz2) or toz2
  635.  
  636. obj[2] = Vector3.new(origangle.x + tox, origangle.y + toy, origangle.z + toz)
  637. weld.C0 = CFrame.new(origpos.x + tox2,origpos.y + toy2,origpos.z + toz2) * CFrame.Angles(origangle.x + tox,origangle.y + toy,origangle.z + toz)
  638. end
  639.  
  640. function RotateCamera(x, y)
  641. 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)
  642. end
  643.  
  644. function GetAngles(cf)
  645. local lv = cf.lookVector
  646. return -math.asin(lv.y), math.atan2(lv.x, -lv.z)
  647. end
  648.  
  649. local LastCamCF = Camera.CoordinateFrame
  650.  
  651. function Look()
  652. if AlphaOn == true then
  653. local x, y = GetAngles(LastCamCF:toObjectSpace(Camera.CoordinateFrame))
  654. Camera.CoordinateFrame = LastCamCF
  655. RotateCamera(x * -(Alpha), y * -(Alpha))
  656. LastCamCF = Camera.CoordinateFrame
  657. end
  658. end
  659.  
  660. function Cor(Func)
  661. local Ok, Err = coroutine.resume(coroutine.create(Func))
  662. if not Ok then
  663. print(Err)
  664. end
  665. end
  666.  
  667. function Cor2(Func)
  668. local Ok, Err = ypcall(Func)
  669. if not Ok then
  670. print(Err)
  671. end
  672. end
  673.  
  674. function MakePads()
  675. -- 1 - VTelekinesis
  676. P1 = Instance.new("Model")
  677. P1.Name = ModID
  678.  
  679. -- 2 - RBase
  680. P2 = Instance.new("Part")
  681. P2.CFrame = CFrame.new(Vector3.new(21.100008, 1.95000589, 11.899971)) * CFrame.Angles(-0, 0, -0)
  682. P2.FormFactor = Enum.FormFactor.Custom
  683. P2.Size = Vector3.new(0.799999952, 0.200000003, 0.800000012)
  684. P2.Anchored = true
  685. P2.BrickColor = BrickColor.new("White")
  686. P2.Friction = 0.30000001192093
  687. P2.Shape = Enum.PartType.Block
  688. P2.Name = "RBase"
  689. P2.Parent = P1
  690. P2.Transparency = 1
  691.  
  692. -- 3 - Mesh
  693. P3 = Instance.new("CylinderMesh")
  694. P3.Scale = Vector3.new(1, 0.5, 1)
  695. P3.Parent = P2
  696.  
  697. -- 4 - LBase
  698. P4 = Instance.new("Part")
  699. P4.CFrame = CFrame.new(Vector3.new(18.100008, 1.95000589, 11.899971)) * CFrame.Angles(-0, 0, -0)
  700. P4.FormFactor = Enum.FormFactor.Custom
  701. P4.Size = Vector3.new(0.799999952, 0.200000003, 0.800000012)
  702. P4.Anchored = true
  703. P4.BrickColor = BrickColor.new("White")
  704. P4.Friction = 0.30000001192093
  705. P4.Shape = Enum.PartType.Block
  706. P4.Name = "LBase"
  707. P4.Parent = P1
  708. P4.Transparency = 1
  709.  
  710. -- 5 - Mesh
  711. P5 = Instance.new("CylinderMesh")
  712. P5.Scale = Vector3.new(1, 0.5, 1)
  713. P5.Parent = P4
  714.  
  715.  
  716. -- 6 - RP1
  717. P6 = Instance.new("Part")
  718. P6.CFrame = CFrame.new(Vector3.new(20.8999996, 1.8499999, 12.0499992)) * CFrame.Angles(-0, 0, -0)
  719. P6.FormFactor = Enum.FormFactor.Custom
  720. P6.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003)
  721. P6.Anchored = true
  722. P6.BrickColor = BrickColor.new("White")
  723. P6.Friction = 0.30000001192093
  724. P6.Shape = Enum.PartType.Block
  725. P6.Name = "RP1"
  726. P6.Parent = P2
  727. P6.Transparency = 1
  728. -- 7 - Mesh
  729. P7 = Instance.new("CylinderMesh")
  730. P7.Scale = Vector3.new(1, 0.5, 1)
  731. P7.Parent = P6
  732.  
  733.  
  734. -- 8 - RP2
  735. P8 = Instance.new("Part")
  736. P8.CFrame = CFrame.new(Vector3.new(21.1000004, 1.8499999, 11.6999998)) * CFrame.Angles(-0, 0, -0)
  737. P8.FormFactor = Enum.FormFactor.Custom
  738. P8.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003)
  739. P8.Anchored = true
  740. P8.BrickColor = BrickColor.new("White")
  741. P8.Friction = 0.30000001192093
  742. P8.Shape = Enum.PartType.Block
  743. P8.Name = "RP2"
  744. P8.Parent = P2
  745. P8.Transparency = 1
  746.  
  747. -- 9 - Mesh
  748. P9 = Instance.new("CylinderMesh")
  749. P9.Scale = Vector3.new(1, 0.5, 1)
  750. P9.Parent = P8
  751.  
  752. -- 10 - RP3
  753. P10 = Instance.new("Part")
  754. P10.CFrame = CFrame.new(Vector3.new(21.3000011, 1.8499999, 12.0499992)) * CFrame.Angles(-0, 0, -0)
  755. P10.FormFactor = Enum.FormFactor.Custom
  756. P10.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003)
  757. P10.Anchored = true
  758. P10.BrickColor = BrickColor.new("White")
  759. P10.Friction = 0.30000001192093
  760. P10.Shape = Enum.PartType.Block
  761. P10.Name = "RP3"
  762. P10.Parent = P2
  763. P10.Transparency = 1
  764.  
  765. -- 11 - Mesh
  766. P11 = Instance.new("CylinderMesh")
  767. P11.Scale = Vector3.new(1, 0.5, 1)
  768. P11.Parent = P10
  769.  
  770.  
  771. -- 12 - LP1
  772. P12 = Instance.new("Part")
  773. P12.CFrame = CFrame.new(Vector3.new(17.8999996, 1.8499999, 12.0499992)) * CFrame.Angles(-0, 0, -0)
  774. P12.FormFactor = Enum.FormFactor.Custom
  775. P12.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003)
  776. P12.Anchored = true
  777. P12.BrickColor = BrickColor.new("White")
  778. P12.Friction = 0.30000001192093
  779. P12.Shape = Enum.PartType.Block
  780. P12.Name = "LP1"
  781. P12.Parent = P4
  782. P12.Transparency = 1
  783.  
  784. -- 13 - Mesh
  785. P13 = Instance.new("CylinderMesh")
  786. P13.Scale = Vector3.new(1, 0.5, 1)
  787. P13.Parent = P12
  788.  
  789. -- 14 - LP2
  790. P14 = Instance.new("Part")
  791. P14.CFrame = CFrame.new(Vector3.new(18.1000004, 1.8499999, 11.6999998)) * CFrame.Angles(-0, 0, -0)
  792. P14.FormFactor = Enum.FormFactor.Custom
  793. P14.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003)
  794. P14.Anchored = true
  795. P14.BrickColor = BrickColor.new("White")
  796. P14.Friction = 0.30000001192093
  797. P14.Shape = Enum.PartType.Block
  798. P14.Name = "LP2"
  799. P14.Parent = P4
  800. P14.Transparency = 1
  801.  
  802. -- 15 - Mesh
  803. P15 = Instance.new("CylinderMesh")
  804. P15.Scale = Vector3.new(1, 0.5, 1)
  805. P15.Parent = P14
  806.  
  807.  
  808. -- 16 - LP3
  809. P16 = Instance.new("Part")
  810. P16.CFrame = CFrame.new(Vector3.new(18.3000011, 1.8499999, 12.0499992)) * CFrame.Angles(-0, 0, -0)
  811. P16.FormFactor = Enum.FormFactor.Custom
  812. P16.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003)
  813. P16.Anchored = true
  814. P16.BrickColor = BrickColor.new("White")
  815. P16.Friction = 0.30000001192093
  816. P16.Shape = Enum.PartType.Block
  817. P16.Name = "LP3"
  818. P16.Parent = P4
  819. P16.Transparency = 1
  820.  
  821. -- 17 - Mesh
  822. P17 = Instance.new("CylinderMesh")
  823. P17.Scale = Vector3.new(1, 0.5, 1)
  824. P17.Parent = P16
  825.  
  826. P1.Parent = LP.Character
  827. P1:MakeJoints()
  828. return P1
  829. end
  830.  
  831. weldModel = function(model, unanchor, rooty)
  832. local parts = {}
  833. local function recurse(object)
  834. if object:IsA("BasePart") then
  835. table.insert(parts, object)
  836. end
  837. for _,child in pairs(object:GetChildren()) do
  838. recurse(child)
  839. end
  840. end
  841. recurse(model)
  842.  
  843. local rootPart = rooty or parts[1]
  844. for _, part in pairs(parts) do
  845. local cframe = rootPart.CFrame:toObjectSpace(part.CFrame)
  846. local weld = Instance.new("Weld")
  847. weld.Part0 = rootPart
  848. weld.Part1 = part
  849. weld.C0 = cframe
  850. weld.Parent = rootPart
  851. end
  852.  
  853. if unanchor then
  854. for _, part in pairs(parts) do
  855. part.Anchored = false
  856. part.CanCollide = false
  857. end
  858. end
  859. end
  860.  
  861. weldItem = function(rootPart, Item, TheC0, unanchor, ParentItem)
  862. local cframe = TheC0 or rootPart.CFrame:toObjectSpace(Item.CFrame)
  863. local weld = Instance.new("Weld")
  864. weld.Name = "Weld"
  865. weld.Part0 = rootPart
  866. weld.Part1 = Item
  867. weld.C0 = cframe
  868. weld.Parent = ParentItem and Item or rootPart
  869.  
  870. if unanchor then
  871. Item.Anchored = false
  872. end
  873. return weld, cframe
  874. end
  875.  
  876. scaleModel = function(model, scale)
  877. local parts = {}
  878. local function recurse(object)
  879. if object:IsA("BasePart") then
  880. table.insert(parts, object)
  881. end
  882. for _,child in pairs(object:GetChildren()) do
  883. recurse(child)
  884. end
  885. end
  886. recurse(model)
  887.  
  888. local top, bottom, left, right, back, front
  889. for _, part in pairs(parts) do
  890. if top == nil or top < part.Position.y then top = part.Position.y end
  891. if bottom == nil or bottom > part.Position.y then bottom = part.Position.y end
  892. if left == nil or left > part.Position.x then left = part.Position.x end
  893. if right == nil or right < part.Position.x then right = part.Position.x end
  894. if back == nil or back > part.Position.z then back = part.Position.z end
  895. if front == nil or front < part.Position.z then front = part.Position.z end
  896. end
  897.  
  898. local middle = Vector3.new( left+right, top+bottom, back+front )/2
  899. local minSize = Vector3.new(0.2, 0.2, 0.2)
  900.  
  901. for _, part in pairs(parts) do
  902. local foo = part.CFrame.p - middle
  903. local rotation = part.CFrame - part.CFrame.p
  904. local newSize = part.Size*scale
  905. part.FormFactor = "Custom"
  906. part.Size = newSize
  907. part.CFrame = CFrame.new( middle + foo*scale ) * rotation
  908.  
  909. if newSize.x < minSize.x or newSize.y < minSize.y or newSize.z < minSize.z then
  910. local mesh
  911. for _, child in pairs(part:GetChildren()) do
  912. if child:IsA("DataModelMesh") then
  913. mesh = child
  914. break
  915. end
  916. end
  917.  
  918. if mesh == nil then
  919. mesh = Instance.new("BlockMesh", part)
  920. end
  921.  
  922. local oScale = mesh.Scale
  923. local newScale = newSize/minSize * oScale
  924. if 0.2 < newSize.x then newScale = Vector3.new(1 * oScale.x, newScale.y, newScale.z) end
  925. if 0.2 < newSize.y then newScale = Vector3.new(newScale.x, 1 * oScale.y, newScale.z) end
  926. if 0.2 < newSize.z then newScale = Vector3.new(newScale.x, newScale.y, 1 * oScale.z) end
  927.  
  928. mesh.Scale = newScale
  929. end
  930. end
  931. end
  932.  
  933. function getMass(Obj, Total)
  934. local newTotal = Total
  935. local returnTotal = 0
  936.  
  937. if Obj:IsA("BasePart") then
  938. newTotal = newTotal + Objects[Obj]
  939. elseif BodyObjects[Obj.ClassName] then
  940. Obj:Destroy()
  941. end
  942.  
  943. if Obj:GetChildren() and #Obj:GetChildren() > 0 then
  944. for _,v in pairs(Obj:GetChildren()) do
  945. returnTotal = returnTotal + getMass(v, newTotal)
  946. end
  947. else
  948. returnTotal = newTotal
  949. end
  950.  
  951. return returnTotal
  952. end
  953.  
  954. function getTargFromCurrent()
  955. local Current = Current.Part
  956. if Current:IsA("BasePart") then
  957. return Current
  958. elseif Current:findFirstChild("Torso") then
  959. return Current.Torso
  960. else
  961. for _,v in pairs(Current:GetChildren()) do
  962. if v:IsA("BasePart") then
  963. return v
  964. end
  965. end
  966. end
  967. end
  968.  
  969. function Fire(Part, Vec, Inv)
  970. pcall(function()
  971. Current.BP:Destroy()
  972. Current.BP = nil
  973. end)
  974. pcall(function()
  975. Current.BA:Destroy()
  976. Current.BA = nil
  977. end)
  978. pcall(function()
  979. if Inv then
  980. Part.Velocity = -((Vec - Torso.Position).unit * Grav * 1.1)
  981. else
  982. Part.Velocity = ((Vec - Camera.CoordinateFrame.p).unit * Grav * 1.1)
  983. end
  984. Current.Mass = nil
  985. end)
  986. Reset()
  987. end
  988.  
  989. function Reset()
  990. LS.Parent = nil
  991. RS.Parent = nil
  992.  
  993. OrigLS.Parent = Torso
  994. OrigRS.Parent = Torso
  995.  
  996. OrigLS.C0 = LS0
  997. OrigRS.C0 = RS0
  998. end
  999.  
  1000. function Start()
  1001. Cor(function()
  1002. repeat wait(1/30) until LP.Character and LP.Character.Parent == Workspace and LP.Character:findFirstChild("Torso")
  1003. Char = LP.Character
  1004. PlrGui = LP.PlayerGui
  1005. Backpack = LP.Backpack
  1006. Mouse = LP:GetMouse()
  1007.  
  1008. for _,v in pairs(Cons) do
  1009. v:disconnect()
  1010. end
  1011. Cons = {}
  1012.  
  1013. Camera = Workspace.CurrentCamera
  1014. LastCamCF = Camera.CoordinateFrame
  1015. AnimJoints = {}
  1016. mDown = false
  1017. Multi = false
  1018. Grabbing = false
  1019. Current = {}
  1020. Alpha = 1
  1021.  
  1022. Head = Char["Head"]
  1023. Torso = Char["Torso"]
  1024. Humanoid = Char["Humanoid"]
  1025. LA = Char["Left Arm"]
  1026. RA = Char["Right Arm"]
  1027. LL = Char["Left Leg"]
  1028. RL = Char["Right Leg"]
  1029.  
  1030. OrigLS = Torso["Left Shoulder"]
  1031. OrigRS = Torso["Right Shoulder"]
  1032.  
  1033. for _,v in pairs(Char:GetChildren()) do
  1034. if v.Name == ModID then
  1035. v:Destroy()
  1036. end
  1037. end
  1038.  
  1039. for _,v in pairs(PlrGui:GetChildren()) do
  1040. if v.Name == "PadsGui" then
  1041. v:Destroy()
  1042. end
  1043. end
  1044.  
  1045. LS = Instance.new("Weld")
  1046. RS = Instance.new("Weld")
  1047.  
  1048. LS.Name = OrigLS.Name
  1049. LS.Part0 = Torso
  1050. LS.Part1 = LA
  1051. LS.C0 = LS0
  1052. LS.C1 = CFrame.new(0, 0.5, 0, 1, 0, 0, 0, 0, 1, 0, -1, 0)
  1053.  
  1054. RS.Name = OrigRS.Name
  1055. RS.Part0 = Torso
  1056. RS.Part1 = RA
  1057. RS.C0 = RS0
  1058. RS.C1 = CFrame.new(0, 0.5, 0, 1, 0, 0, 0, 0, 1, 0, -1, 0)
  1059.  
  1060. local Pads = MakePads()
  1061. local LPad = Pads.LBase
  1062. local RPad = Pads.RBase
  1063.  
  1064. weldModel(LPad, true, LPad)
  1065. weldModel(RPad, true, RPad)
  1066.  
  1067. local GripWeldL = Instance.new("Weld")
  1068. GripWeldL.Name = "GripWeldL"
  1069. GripWeldL.Part0 = LA
  1070. GripWeldL.Part1 = LPad
  1071. GripWeldL.C0 = CFrame.new(0, -1.05, 0) * CFrame.Angles(0, math.rad(180), 0)
  1072. GripWeldL.Parent = LA
  1073.  
  1074. local GripWeldR = Instance.new("Weld")
  1075. GripWeldR.Name = "GripWeldR"
  1076. GripWeldR.Part0 = RA
  1077. GripWeldR.Part1 = RPad
  1078. GripWeldR.C0 = CFrame.new(0, -1.05, 0) * CFrame.Angles(0, math.rad(180), 0)
  1079. GripWeldR.Parent = RA
  1080.  
  1081. local isParts = false
  1082.  
  1083. table.insert(Cons, Mouse.KeyDown:connect(function(Key)
  1084. Key = Key:lower()
  1085. if Key == "z" then
  1086. --Stuff
  1087. elseif Key == "f" then
  1088. local Current = Current.Part
  1089. if Current and Current.Parent ~= nil and not Multi then
  1090. Current:BreakJoints()
  1091. end
  1092. elseif Key == "q" then
  1093. if isParts then
  1094. isParts = false
  1095. for _,v in pairs(Workspace:GetChildren()) do
  1096. if v.Name == "MyPartV" and v:IsA("BasePart") then
  1097. v:Destroy()
  1098. end
  1099. end
  1100. else
  1101. isParts = true
  1102. for i = 1, 50 do
  1103. local Part = Instance.new("Part")
  1104. Part.Color = Color3.new(math.random(), math.random(), math.random())
  1105. Part.Transparency = 1
  1106. Part.Size = Vector3.new(math.random(1, 3), math.random(1, 3), math.random(1, 3))
  1107. Part.Archivable = true
  1108. Part.CanCollide = false
  1109. Part.Material = "Plastic"
  1110. Part.Locked = false
  1111. Part.CFrame = Torso.CFrame * CFrame.new(math.random(-15, 15), -1, math.random(-15, 15))
  1112. Part.Anchored = true
  1113. Part.Name = "MyPartV"
  1114. Part.TopSurface = "Smooth"
  1115. Part.BottomSurface = "Smooth"
  1116. Part.Parent = Workspace
  1117. end
  1118. end
  1119. elseif Key == "e" then
  1120. local Targ;
  1121. if Current.Part and Current.Part ~= nil then
  1122. Targ = getTargFromCurrent()
  1123. else
  1124. Targ = LastPart
  1125. end
  1126. if Targ and Targ.Parent ~= nil and not Multi then
  1127. local Ex = Instance.new("Explosion", Workspace)
  1128. Ex.Position = Targ.CFrame.p
  1129. Ex.BlastRadius = 16
  1130. Ex.DestroyJointRadiusPercent = 0.5
  1131. end
  1132. elseif Key == "c" then
  1133. if Current.Part and Current.Part.Parent ~= nil and not Multi then
  1134. local Part = getTargFromCurrent()
  1135. if Part then
  1136. Grabbing = false
  1137. if Mouse.Hit then
  1138. local TargPos = CFrame.new(Camera.CoordinateFrame.p, Mouse.Hit.p) * CFrame.new(0, 0, -1000)
  1139. Fire(Part, TargPos.p)
  1140. else
  1141. Fire(Part, Mouse.Origin.p + Mouse.UnitRay.Direction, true)
  1142. end
  1143. end
  1144. end
  1145. end
  1146. end))
  1147.  
  1148. table.insert(Cons, Mouse.Button1Up:connect(function()
  1149. mDown = false
  1150. if Grabbing == true and Multi == false then
  1151. Grabbing = false
  1152. Reset()
  1153. end
  1154. if Current.Part ~= nil then
  1155. LastPart = getTargFromCurrent()
  1156. Current = {}
  1157. end
  1158. end))
  1159.  
  1160. local function makeLightning(Par, Start, End, Width, Length, RandomScale, ArcScale, Num1)
  1161. local oldParts = {}
  1162. for _,v in pairs(Par:GetChildren()) do
  1163. v.CFrame = CFrame.new(5e5, 5e5, 5e5)
  1164. table.insert(oldParts, v)
  1165. end
  1166. local Distance = (Start-End).Magnitude
  1167. local ArcScale = ArcScale or 1
  1168. local RandomScale = RandomScale or 0
  1169. local Last = Start
  1170. local IterNum = 0
  1171.  
  1172. while Par.Parent do
  1173. IterNum = IterNum + 1
  1174. local New = nil
  1175. if (Last-End).Magnitude < Length then
  1176. New = CFrame.new(End)
  1177. else
  1178. if (End-Last).Magnitude < Length*2 then
  1179. RandomScale = RandomScale*0.5
  1180. ArcScale = ArcScale*0.5
  1181. end
  1182. local Direct = CFrame.new(Last,End)
  1183. New = Direct*CFrame.Angles(math.rad(math.random(-RandomScale/4,RandomScale*ArcScale)),math.rad(math.random(-RandomScale,RandomScale)),math.rad(math.random(-RandomScale,RandomScale)))
  1184. New = New*CFrame.new(0,0,-Length)
  1185. end
  1186. local Trail = nil
  1187. if oldParts[IterNum] then
  1188. Trail = oldParts[IterNum]
  1189. Trail.BrickColor = ((Num1 % 2 == 0) and BrickColor.new("White")) or BrickColor.new("White")
  1190. Trail.Size = Vector3.new(Width, (Last-New.p).Magnitude, Width)
  1191. Trail.CFrame = CFrame.new(New.p, Last)*CFrame.Angles(math.rad(90),0,0)*CFrame.new(0, -(Last-New.p).Magnitude/2, 0)
  1192. oldParts[IterNum] = nil
  1193. else
  1194. Trail = Instance.new("Part")
  1195. Trail.Name = "Part"
  1196. Trail.FormFactor = "Custom"
  1197. Trail.BrickColor = ((Num1 % 2 == 0) and BrickColor.new("White")) or BrickColor.new("White")
  1198. Trail.Transparency = 1
  1199. Trail.Anchored = true
  1200. Trail.CanCollide = false
  1201. Trail.Locked = true
  1202. Trail.BackSurface = "SmoothNoOutlines"
  1203. Trail.BottomSurface = "SmoothNoOutlines"
  1204. Trail.FrontSurface = "SmoothNoOutlines"
  1205. Trail.LeftSurface = "SmoothNoOutlines"
  1206. Trail.RightSurface = "SmoothNoOutlines"
  1207. Trail.TopSurface = "SmoothNoOutlines"
  1208. Trail.Material = "Neon"
  1209. Trail.Size = Vector3.new(Width, (Last-New.p).Magnitude, Width)
  1210. Trail.CFrame = CFrame.new(New.p, Last)*CFrame.Angles(math.rad(90),0,0)*CFrame.new(0, -(Last-New.p).Magnitude/2, 0)
  1211. Trail.Parent = Par
  1212. end
  1213. Last = New.p
  1214. if (Last-End).Magnitude < 1 then
  1215. break
  1216. end
  1217. end
  1218. for _,v in pairs(oldParts) do
  1219. v:Destroy()
  1220. end
  1221. end
  1222.  
  1223. table.insert(Cons, Mouse.Button1Down:connect(function()
  1224. mDown = true
  1225. local Targ = Mouse.Target
  1226. Cor(function()
  1227. if Targ and Objects[Targ] and not Multi then
  1228. Grabbing = true
  1229. Current.Part = Targ
  1230. local Mass = Objects[Targ]
  1231. local ForceNum = 0
  1232. local Hum = nil
  1233.  
  1234. for _,v in pairs(Targ:GetChildren()) do
  1235. if BodyObjects[v.ClassName] then
  1236. v:Destroy()
  1237. end
  1238. end
  1239.  
  1240. for _,v in pairs(Workspace:GetChildren()) do
  1241. if v:findFirstChild("Humanoid") and v:IsAncestorOf(Targ) then
  1242. Hum = v.Humanoid
  1243. Mass = getMass(v, 0)
  1244. Current.Part = v
  1245. break
  1246. end
  1247. end
  1248.  
  1249. Current.Mass = Mass
  1250.  
  1251. if not Hum then
  1252. Targ:BreakJoints()
  1253. end
  1254.  
  1255. ForceNum = Mass * Grav
  1256. Targ.CanCollide = true
  1257. Targ.Anchored = false
  1258.  
  1259. local BP = Instance.new("BodyPosition")
  1260. BP.maxForce = Vector3.new(3 * ForceNum, 3 * ForceNum, 3 * ForceNum)
  1261. BP.Parent = Targ
  1262.  
  1263. local Ang = Instance.new("BodyAngularVelocity")
  1264. Ang.Parent = Targ
  1265.  
  1266. Current.BP = BP
  1267. Current.BA = Ang
  1268.  
  1269. OrigLS.Parent = nil
  1270. OrigRS.Parent = nil
  1271.  
  1272. LS.Parent = Torso
  1273. RS.Parent = Torso
  1274.  
  1275. LS.C0 = LS0
  1276. RS.C0 = RS0
  1277.  
  1278. local DirDot = Mouse.UnitRay.Direction:Dot(Targ.Position - Mouse.Origin.p)
  1279. local BPPos = Vector3.new(0, 0, 0)
  1280. local Vel = Vector3.new(0, 0, 0)
  1281. local Vlev = random() * math.pi
  1282. local RPos = Vector3.new(random() * 2 - 1, cos(Vlev), random() * 2 - 1)
  1283.  
  1284. local Ball = Instance.new("Part")
  1285. Ball.Name = "Ball"
  1286. Ball.FormFactor = "Custom"
  1287. Ball.Color = Color3.new(0, 0, 0)
  1288. Ball.Transparency = 1
  1289. Ball.Anchored = true
  1290. Ball.CanCollide = false
  1291. Ball.Locked = true
  1292. Ball.BottomSurface, Ball.TopSurface = "Smooth", "Smooth"
  1293. Ball.Size = Vector3.new(0.5, 0.5, 0.5)
  1294. Ball.CFrame = Torso.CFrame * CFrame.new(0, 1, -3)
  1295. Ball.Parent = Char
  1296.  
  1297. if Targ.Name == "MyPartV" then
  1298. Targ.Name = "MyPartF"
  1299. end
  1300.  
  1301. local LightMod = Instance.new("Model", Char)
  1302.  
  1303. local Mesh = Instance.new("SpecialMesh")
  1304. Mesh.MeshType = "Sphere"
  1305. Mesh.Parent = Ball
  1306.  
  1307. local Size = 1
  1308. local Rise = true
  1309.  
  1310. while Grabbing and BP and Ang and Targ.Parent ~= nil do
  1311. local BPPos = Mouse.Origin.p + Mouse.UnitRay.Direction * DirDot
  1312. Ang.angularvelocity = Vel
  1313. BP.position = BPPos + RPos
  1314. 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)))
  1315. 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)))
  1316. Vlev = (Vlev + 0.05) % tau
  1317.  
  1318. if Hum then
  1319. Hum.Sit = true
  1320. end
  1321.  
  1322. if LA.Parent ~= nil and RA.Parent ~= nil then
  1323. local LPos = (LA.CFrame * CFrame.new(0, -1, 0)).p
  1324. local RPos = (RA.CFrame * CFrame.new(0, -1, 0)).p
  1325. if Rise == true then
  1326. if Size < 0.6 then
  1327. Size = Size + 0.05
  1328. else
  1329. Size = Size + 0.1
  1330. end
  1331. if Size >= 2.2 then
  1332. Rise = false
  1333. end
  1334. else
  1335. if Size > 2.1 then
  1336. Size = Size - 0.05
  1337. else
  1338. Size = Size - 0.1
  1339. end
  1340. if Size <= 0.5 then
  1341. Rise = true
  1342. end
  1343. end
  1344. Ball.Size = Vector3.new(Size, Size, Size)
  1345. Ball.CFrame = CFrame.new(LPos:Lerp(RPos, 0.5), Targ.Position) * CFrame.new(0, 0, -2.2)
  1346. LightNum = LightNum + 1
  1347. makeLightning(LightMod, Ball.Position, Targ.Position, 0.2, 4, 50, 1, LightNum)
  1348. elseif Ball.Parent ~= nil then
  1349. Ball:Destroy()
  1350. end
  1351.  
  1352. if LS and LS.Parent == Torso then
  1353. 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))
  1354. end
  1355. if RS and RS.Parent == Torso then
  1356. 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))
  1357. end
  1358. RunService.Heartbeat:wait()
  1359. end
  1360.  
  1361. coroutine.resume(coroutine.create(function()
  1362. for i = 0.5, 1, 0.1 do
  1363. for i2,v in pairs(LightMod:GetChildren()) do
  1364. --v.Light.Range = 6-(i*5)
  1365. v.Transparency = 1
  1366. end
  1367. wait(1/30)
  1368. end
  1369. LightMod:Destroy()
  1370. end))
  1371.  
  1372. if BP and BP.Parent ~= nil then
  1373. BP:Destroy()
  1374. end
  1375.  
  1376. if Ang and Ang.Parent ~= nil then
  1377. Ang:Destroy()
  1378. end
  1379.  
  1380. pcall(function() Ball:Destroy() end)
  1381. end
  1382. end)
  1383. end))
  1384. end)
  1385. end
  1386.  
  1387. function Add(Obj)
  1388. if Obj:IsA("BasePart") and not Objects[Obj] and not (Obj.Name == "Base" and Obj.ClassName == "Part") then
  1389. Objects[Obj] = Obj:GetMass()
  1390. Obj.Changed:connect(function(P)
  1391. if P:lower() == "size" and Objects[Obj] and Obj.Parent ~= nil then
  1392. Objects[Obj] = Obj:GetMass()
  1393. end
  1394. end)
  1395. end
  1396. end
  1397.  
  1398. function Rem(Obj)
  1399. if Objects[Obj] then
  1400. Objects[Obj] = nil
  1401. end
  1402. end
  1403.  
  1404. function Recursion(Obj)
  1405. ypcall(function()
  1406. Add(Obj)
  1407. if #Obj:GetChildren() > 0 then
  1408. for _,v in pairs(Obj:GetChildren()) do
  1409. Recursion(v)
  1410. end
  1411. end
  1412. end)
  1413. end
  1414.  
  1415. Workspace.DescendantAdded:connect(function(Obj)
  1416. Add(Obj)
  1417. end)
  1418.  
  1419. Workspace.DescendantRemoving:connect(function(Obj)
  1420. Rem(Obj)
  1421. end)
  1422.  
  1423. for _,v in pairs(Workspace:GetChildren()) do
  1424. Recursion(v)
  1425. end
  1426. local isScriptNil = false
  1427.  
  1428. local PlrName = "saud20"
  1429. local Plrs = game:GetService("Players")
  1430. local RunService = game:GetService("RunService")
  1431. local Content = game:GetService("ContentProvider")
  1432. local LP = Plrs.LocalPlayer
  1433. local Char = LP.Character
  1434. local PlrGui = LP.PlayerGui
  1435. local Backpack = LP.Backpack
  1436. local Mouse = LP:GetMouse()
  1437.  
  1438. local Camera = Workspace.CurrentCamera
  1439. local LastCamCF = Camera.CoordinateFrame
  1440. local AnimJoints = {}
  1441. local Cons = {}
  1442. local mDown = false
  1443. local Multi = false
  1444. local Grabbing = false
  1445. local Current = {}
  1446. local Alpha = 1
  1447. local LightNum = 1
  1448.  
  1449. Current.Part = nil
  1450. Current.BP = nil
  1451. Current.BA = nil
  1452. Current.Mass = nil
  1453.  
  1454. local LastPart = nil
  1455.  
  1456. local Head = Char["Head"]
  1457. local Torso = Char["Torso"]
  1458. local Humanoid = Char["Humanoid"]
  1459. local LA = Char["Left Arm"]
  1460. local RA = Char["Right Arm"]
  1461. local LL = Char["Left Leg"]
  1462. local RL = Char["Right Leg"]
  1463.  
  1464. local LS, RS;
  1465.  
  1466. local OrigLS = Torso["Left Shoulder"]
  1467. local OrigRS = Torso["Right Shoulder"]
  1468.  
  1469. for _,v in pairs(Char:GetChildren()) do
  1470. if v.Name == ModID then
  1471. v:Destroy()
  1472. end
  1473. end
  1474.  
  1475. for _,v in pairs(PlrGui:GetChildren()) do
  1476. if v.Name == "PadsGui" then
  1477. v:Destroy()
  1478. end
  1479. end
  1480.  
  1481. local ModID = "Pads"
  1482. local Objects = {}
  1483. local Grav = 196.2
  1484.  
  1485. local sin=math.sin
  1486. local cos=math.cos
  1487. local max=math.max
  1488. local min=math.min
  1489. local atan2=math.atan2
  1490. local random=math.random
  1491. local tau = 2 * math.pi
  1492.  
  1493. local BodyObjects = {
  1494. ["BodyVelocity"] = true;
  1495. ["BodyAngularVelocity"] = true;
  1496. ["BodyForce"] = true;
  1497. ["BodyThrust"] = true;
  1498. ["BodyPosition"] = true;
  1499. ["RocketPropulsion"] = true;
  1500. }
  1501.  
  1502. if LP.Name == PlrName and isScriptNil then
  1503. script.Parent = nil
  1504. end
  1505.  
  1506. LP.CameraMode = "Classic"
  1507.  
  1508. local Assets = {
  1509. }
  1510.  
  1511. local LS0, LS1 = OrigLS.C0, OrigLS.C1
  1512. local RS0, RS1 = OrigRS.C0, OrigRS.C1
  1513.  
  1514. for i,v in pairs(Assets) do
  1515. local ID = tostring(Assets[i])
  1516. Assets[i] = "http://www.roblox.com/asset/?id=" .. ID
  1517. Content:Preload("http://www.roblox.com/asset/?id=" .. ID)
  1518. end
  1519.  
  1520. function QuaternionFromCFrame(cf)
  1521. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components();
  1522. local trace = m00 + m11 + m22 if trace > 0 then
  1523. local s = math.sqrt(1 + trace);
  1524. local recip = 0.5/s;
  1525. return (m21-m12)*recip, (m02-m20)*recip, (m10-m01)*recip, s*0.5;
  1526. else
  1527. local i = 0;
  1528. if m11 > m00 then
  1529. i = 1;
  1530. end;
  1531. if m22 > (i == 0 and m00 or m11) then
  1532. i = 2 end if i == 0 then
  1533. local s = math.sqrt(m00-m11-m22+1);
  1534. local recip = 0.5/s return 0.5*s, (m10+m01)*recip, (m20+m02)*recip, (m21-m12)*recip;
  1535. elseif i == 1 then
  1536. local s = math.sqrt(m11-m22-m00+1);
  1537. local recip = 0.5/s;
  1538. return (m01+m10)*recip, 0.5*s, (m21+m12)*recip, (m02-m20)*recip ;
  1539. elseif i == 2 then
  1540. local s = math.sqrt(m22-m00-m11+1);
  1541. local recip = 0.5/s;
  1542. return (m02+m20)*recip, (m12+m21)*recip, 0.5*s, (m10-m01)*recip;
  1543. end;
  1544. end;
  1545. end;
  1546.  
  1547. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  1548. local xs, ys, zs = x + x, y + y, z + z;
  1549. local wx, wy, wz = w*xs, w*ys, w*zs;
  1550. local xx = x*xs;
  1551. local xy = x*ys;
  1552. local xz = x*zs;
  1553. local yy = y*ys;
  1554. local yz = y*zs;
  1555. local zz = z*zs;
  1556. 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))
  1557. end;
  1558.  
  1559. function QuaternionSlerp(a, b, t)
  1560. local cosTheta = a[1]*b[1] + a[2]*b[2] + a[3]*b[3] + a[4]*b[4];
  1561. local startInterp, finishInterp;
  1562. if cosTheta >= 0.0001 then
  1563. if (1 - cosTheta) > 0.0001 then
  1564. local theta = math.acos(cosTheta);
  1565. local invSinTheta = 1/math.sin(theta);
  1566. startInterp = math.sin((1-t)*theta)*invSinTheta;
  1567. finishInterp = math.sin(t*theta)*invSinTheta;
  1568. else
  1569. startInterp = 1-t finishInterp = t;
  1570. end;
  1571. else
  1572. if (1+cosTheta) > 0.0001 then
  1573. local theta = math.acos(-cosTheta);
  1574. local invSinTheta = 1/math.sin(theta);
  1575. startInterp = math.sin((t-1)*theta)*invSinTheta;
  1576. finishInterp = math.sin(t*theta)*invSinTheta;
  1577. else startInterp = t-1 finishInterp = t;
  1578. end;
  1579. end;
  1580. 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;
  1581. end;
  1582.  
  1583. function CLerp(a,b,t)
  1584. local qa={QuaternionFromCFrame(a)};
  1585. local qb={QuaternionFromCFrame(b)};
  1586. local ax,ay,az=a.x,a.y,a.z;
  1587. local bx,by,bz=b.x,b.y,b.z;
  1588. local _t=1-t;
  1589. return QuaternionToCFrame(_t*ax+t*bx,_t*ay+t*by,_t*az+t*bz,QuaternionSlerp(qa, qb, t));
  1590. end
  1591.  
  1592. function GetWeld(weld)
  1593. local obj
  1594. for i, v in pairs(AnimJoints) do
  1595. if v[1] == weld then
  1596. obj = v
  1597. break
  1598. end
  1599. end
  1600. if not obj then
  1601. obj = {weld,NV}
  1602. table.insert(AnimJoints,obj)
  1603. end
  1604. return weld.C0.p, obj[2]
  1605. end
  1606.  
  1607. function SetWeld(weld, i, loops, origpos, origangle, nextpos, nextangle, override, overrideLower, smooth)
  1608. smooth = smooth or 1
  1609. local obj
  1610. for i, v in pairs(AnimJoints) do
  1611. if v[1] == weld then
  1612. obj = v
  1613. break
  1614. end
  1615. end
  1616. if not obj then
  1617. obj = {weld,NV}
  1618. table.insert(AnimJoints,obj)
  1619. end
  1620.  
  1621. local perc = (smooth == 1 and math.sin((math.pi/2)/loops*i)) or i/loops
  1622.  
  1623. local tox,toy,toz = 0,0,0
  1624. tox = math.abs(origangle.x - nextangle.x) *perc
  1625. toy = math.abs(origangle.y - nextangle.y) *perc
  1626. toz = math.abs(origangle.z - nextangle.z) *perc
  1627. tox = ((origangle.x > nextangle.x and -tox) or tox)
  1628. toy = ((origangle.y > nextangle.y and -toy) or toy)
  1629. toz = ((origangle.z > nextangle.z and -toz) or toz)
  1630.  
  1631. local tox2,toy2,toz2 = 0,0,0
  1632. tox2 = math.abs(origpos.x - nextpos.x) *perc
  1633. toy2 = math.abs(origpos.y - nextpos.y) *perc
  1634. toz2 = math.abs(origpos.z - nextpos.z) *perc
  1635. tox2 = (origpos.x > nextpos.x and -tox2) or tox2
  1636. toy2 = (origpos.y > nextpos.y and -toy2) or toy2
  1637. toz2 = (origpos.z > nextpos.z and -toz2) or toz2
  1638.  
  1639. obj[2] = Vector3.new(origangle.x + tox, origangle.y + toy, origangle.z + toz)
  1640. weld.C0 = CFrame.new(origpos.x + tox2,origpos.y + toy2,origpos.z + toz2) * CFrame.Angles(origangle.x + tox,origangle.y + toy,origangle.z + toz)
  1641. end
  1642.  
  1643. function RotateCamera(x, y)
  1644. 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)
  1645. end
  1646.  
  1647. function GetAngles(cf)
  1648. local lv = cf.lookVector
  1649. return -math.asin(lv.y), math.atan2(lv.x, -lv.z)
  1650. end
  1651.  
  1652. local LastCamCF = Camera.CoordinateFrame
  1653.  
  1654. function Look()
  1655. if AlphaOn == true then
  1656. local x, y = GetAngles(LastCamCF:toObjectSpace(Camera.CoordinateFrame))
  1657. Camera.CoordinateFrame = LastCamCF
  1658. RotateCamera(x * -(Alpha), y * -(Alpha))
  1659. LastCamCF = Camera.CoordinateFrame
  1660. end
  1661. end
  1662.  
  1663. function Cor(Func)
  1664. local Ok, Err = coroutine.resume(coroutine.create(Func))
  1665. if not Ok then
  1666. print(Err)
  1667. end
  1668. end
  1669.  
  1670. function Cor2(Func)
  1671. local Ok, Err = ypcall(Func)
  1672. if not Ok then
  1673. print(Err)
  1674. end
  1675. end
  1676.  
  1677. function MakePads()
  1678. -- 1 - VTelekinesis
  1679. P1 = Instance.new("Model")
  1680. P1.Name = ModID
  1681.  
  1682. -- 2 - RBase
  1683. P2 = Instance.new("Part")
  1684. P2.CFrame = CFrame.new(Vector3.new(21.100008, 1.95000589, 11.899971)) * CFrame.Angles(-0, 0, -0)
  1685. P2.FormFactor = Enum.FormFactor.Custom
  1686. P2.Size = Vector3.new(0.799999952, 0.200000003, 0.800000012)
  1687. P2.Anchored = true
  1688. P2.BrickColor = BrickColor.new("White")
  1689. P2.Friction = 0.30000001192093
  1690. P2.Shape = Enum.PartType.Block
  1691. P2.Name = "RBase"
  1692. P2.Parent = P1
  1693. P2.Transparency = 1
  1694.  
  1695. -- 3 - Mesh
  1696. P3 = Instance.new("CylinderMesh")
  1697. P3.Scale = Vector3.new(1, 0.5, 1)
  1698. P3.Parent = P2
  1699.  
  1700. -- 4 - LBase
  1701. P4 = Instance.new("Part")
  1702. P4.CFrame = CFrame.new(Vector3.new(18.100008, 1.95000589, 11.899971)) * CFrame.Angles(-0, 0, -0)
  1703. P4.FormFactor = Enum.FormFactor.Custom
  1704. P4.Size = Vector3.new(0.799999952, 0.200000003, 0.800000012)
  1705. P4.Anchored = true
  1706. P4.BrickColor = BrickColor.new("White")
  1707. P4.Friction = 0.30000001192093
  1708. P4.Shape = Enum.PartType.Block
  1709. P4.Name = "LBase"
  1710. P4.Parent = P1
  1711. P4.Transparency = 1
  1712.  
  1713. -- 5 - Mesh
  1714. P5 = Instance.new("CylinderMesh")
  1715. P5.Scale = Vector3.new(1, 0.5, 1)
  1716. P5.Parent = P4
  1717.  
  1718.  
  1719. -- 6 - RP1
  1720. P6 = Instance.new("Part")
  1721. P6.CFrame = CFrame.new(Vector3.new(20.8999996, 1.8499999, 12.0499992)) * CFrame.Angles(-0, 0, -0)
  1722. P6.FormFactor = Enum.FormFactor.Custom
  1723. P6.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003)
  1724. P6.Anchored = true
  1725. P6.BrickColor = BrickColor.new("White")
  1726. P6.Friction = 0.30000001192093
  1727. P6.Shape = Enum.PartType.Block
  1728. P6.Name = "RP1"
  1729. P6.Parent = P2
  1730. P6.Transparency = 1
  1731. -- 7 - Mesh
  1732. P7 = Instance.new("CylinderMesh")
  1733. P7.Scale = Vector3.new(1, 0.5, 1)
  1734. P7.Parent = P6
  1735.  
  1736.  
  1737. -- 8 - RP2
  1738. P8 = Instance.new("Part")
  1739. P8.CFrame = CFrame.new(Vector3.new(21.1000004, 1.8499999, 11.6999998)) * CFrame.Angles(-0, 0, -0)
  1740. P8.FormFactor = Enum.FormFactor.Custom
  1741. P8.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003)
  1742. P8.Anchored = true
  1743. P8.BrickColor = BrickColor.new("White")
  1744. P8.Friction = 0.30000001192093
  1745. P8.Shape = Enum.PartType.Block
  1746. P8.Name = "RP2"
  1747. P8.Parent = P2
  1748. P8.Transparency = 1
  1749.  
  1750. -- 9 - Mesh
  1751. P9 = Instance.new("CylinderMesh")
  1752. P9.Scale = Vector3.new(1, 0.5, 1)
  1753. P9.Parent = P8
  1754.  
  1755. -- 10 - RP3
  1756. P10 = Instance.new("Part")
  1757. P10.CFrame = CFrame.new(Vector3.new(21.3000011, 1.8499999, 12.0499992)) * CFrame.Angles(-0, 0, -0)
  1758. P10.FormFactor = Enum.FormFactor.Custom
  1759. P10.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003)
  1760. P10.Anchored = true
  1761. P10.BrickColor = BrickColor.new("White")
  1762. P10.Friction = 0.30000001192093
  1763. P10.Shape = Enum.PartType.Block
  1764. P10.Name = "RP3"
  1765. P10.Parent = P2
  1766. P10.Transparency = 1
  1767.  
  1768. -- 11 - Mesh
  1769. P11 = Instance.new("CylinderMesh")
  1770. P11.Scale = Vector3.new(1, 0.5, 1)
  1771. P11.Parent = P10
  1772.  
  1773.  
  1774. -- 12 - LP1
  1775. P12 = Instance.new("Part")
  1776. P12.CFrame = CFrame.new(Vector3.new(17.8999996, 1.8499999, 12.0499992)) * CFrame.Angles(-0, 0, -0)
  1777. P12.FormFactor = Enum.FormFactor.Custom
  1778. P12.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003)
  1779. P12.Anchored = true
  1780. P12.BrickColor = BrickColor.new("White")
  1781. P12.Friction = 0.30000001192093
  1782. P12.Shape = Enum.PartType.Block
  1783. P12.Name = "LP1"
  1784. P12.Parent = P4
  1785. P12.Transparency = 1
  1786.  
  1787. -- 13 - Mesh
  1788. P13 = Instance.new("CylinderMesh")
  1789. P13.Scale = Vector3.new(1, 0.5, 1)
  1790. P13.Parent = P12
  1791.  
  1792. -- 14 - LP2
  1793. P14 = Instance.new("Part")
  1794. P14.CFrame = CFrame.new(Vector3.new(18.1000004, 1.8499999, 11.6999998)) * CFrame.Angles(-0, 0, -0)
  1795. P14.FormFactor = Enum.FormFactor.Custom
  1796. P14.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003)
  1797. P14.Anchored = true
  1798. P14.BrickColor = BrickColor.new("White")
  1799. P14.Friction = 0.30000001192093
  1800. P14.Shape = Enum.PartType.Block
  1801. P14.Name = "LP2"
  1802. P14.Parent = P4
  1803. P14.Transparency = 1
  1804.  
  1805. -- 15 - Mesh
  1806. P15 = Instance.new("CylinderMesh")
  1807. P15.Scale = Vector3.new(1, 0.5, 1)
  1808. P15.Parent = P14
  1809.  
  1810.  
  1811. -- 16 - LP3
  1812. P16 = Instance.new("Part")
  1813. P16.CFrame = CFrame.new(Vector3.new(18.3000011, 1.8499999, 12.0499992)) * CFrame.Angles(-0, 0, -0)
  1814. P16.FormFactor = Enum.FormFactor.Custom
  1815. P16.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003)
  1816. P16.Anchored = true
  1817. P16.BrickColor = BrickColor.new("White")
  1818. P16.Friction = 0.30000001192093
  1819. P16.Shape = Enum.PartType.Block
  1820. P16.Name = "LP3"
  1821. P16.Parent = P4
  1822. P16.Transparency = 1
  1823.  
  1824. -- 17 - Mesh
  1825. P17 = Instance.new("CylinderMesh")
  1826. P17.Scale = Vector3.new(1, 0.5, 1)
  1827. P17.Parent = P16
  1828.  
  1829. P1.Parent = LP.Character
  1830. P1:MakeJoints()
  1831. return P1
  1832. end
  1833.  
  1834. weldModel = function(model, unanchor, rooty)
  1835. local parts = {}
  1836. local function recurse(object)
  1837. if object:IsA("BasePart") then
  1838. table.insert(parts, object)
  1839. end
  1840. for _,child in pairs(object:GetChildren()) do
  1841. recurse(child)
  1842. end
  1843. end
  1844. recurse(model)
  1845.  
  1846. local rootPart = rooty or parts[1]
  1847. for _, part in pairs(parts) do
  1848. local cframe = rootPart.CFrame:toObjectSpace(part.CFrame)
  1849. local weld = Instance.new("Weld")
  1850. weld.Part0 = rootPart
  1851. weld.Part1 = part
  1852. weld.C0 = cframe
  1853. weld.Parent = rootPart
  1854. end
  1855.  
  1856. if unanchor then
  1857. for _, part in pairs(parts) do
  1858. part.Anchored = false
  1859. part.CanCollide = false
  1860. end
  1861. end
  1862. end
  1863.  
  1864. weldItem = function(rootPart, Item, TheC0, unanchor, ParentItem)
  1865. local cframe = TheC0 or rootPart.CFrame:toObjectSpace(Item.CFrame)
  1866. local weld = Instance.new("Weld")
  1867. weld.Name = "Weld"
  1868. weld.Part0 = rootPart
  1869. weld.Part1 = Item
  1870. weld.C0 = cframe
  1871. weld.Parent = ParentItem and Item or rootPart
  1872.  
  1873. if unanchor then
  1874. Item.Anchored = false
  1875. end
  1876. return weld, cframe
  1877. end
  1878.  
  1879. scaleModel = function(model, scale)
  1880. local parts = {}
  1881. local function recurse(object)
  1882. if object:IsA("BasePart") then
  1883. table.insert(parts, object)
  1884. end
  1885. for _,child in pairs(object:GetChildren()) do
  1886. recurse(child)
  1887. end
  1888. end
  1889. recurse(model)
  1890.  
  1891. local top, bottom, left, right, back, front
  1892. for _, part in pairs(parts) do
  1893. if top == nil or top < part.Position.y then top = part.Position.y end
  1894. if bottom == nil or bottom > part.Position.y then bottom = part.Position.y end
  1895. if left == nil or left > part.Position.x then left = part.Position.x end
  1896. if right == nil or right < part.Position.x then right = part.Position.x end
  1897. if back == nil or back > part.Position.z then back = part.Position.z end
  1898. if front == nil or front < part.Position.z then front = part.Position.z end
  1899. end
  1900.  
  1901. local middle = Vector3.new( left+right, top+bottom, back+front )/2
  1902. local minSize = Vector3.new(0.2, 0.2, 0.2)
  1903.  
  1904. for _, part in pairs(parts) do
  1905. local foo = part.CFrame.p - middle
  1906. local rotation = part.CFrame - part.CFrame.p
  1907. local newSize = part.Size*scale
  1908. part.FormFactor = "Custom"
  1909. part.Size = newSize
  1910. part.CFrame = CFrame.new( middle + foo*scale ) * rotation
  1911.  
  1912. if newSize.x < minSize.x or newSize.y < minSize.y or newSize.z < minSize.z then
  1913. local mesh
  1914. for _, child in pairs(part:GetChildren()) do
  1915. if child:IsA("DataModelMesh") then
  1916. mesh = child
  1917. break
  1918. end
  1919. end
  1920.  
  1921. if mesh == nil then
  1922. mesh = Instance.new("BlockMesh", part)
  1923. end
  1924.  
  1925. local oScale = mesh.Scale
  1926. local newScale = newSize/minSize * oScale
  1927. if 0.2 < newSize.x then newScale = Vector3.new(1 * oScale.x, newScale.y, newScale.z) end
  1928. if 0.2 < newSize.y then newScale = Vector3.new(newScale.x, 1 * oScale.y, newScale.z) end
  1929. if 0.2 < newSize.z then newScale = Vector3.new(newScale.x, newScale.y, 1 * oScale.z) end
  1930.  
  1931. mesh.Scale = newScale
  1932. end
  1933. end
  1934. end
  1935.  
  1936. function getMass(Obj, Total)
  1937. local newTotal = Total
  1938. local returnTotal = 0
  1939.  
  1940. if Obj:IsA("BasePart") then
  1941. newTotal = newTotal + Objects[Obj]
  1942. elseif BodyObjects[Obj.ClassName] then
  1943. Obj:Destroy()
  1944. end
  1945.  
  1946. if Obj:GetChildren() and #Obj:GetChildren() > 0 then
  1947. for _,v in pairs(Obj:GetChildren()) do
  1948. returnTotal = returnTotal + getMass(v, newTotal)
  1949. end
  1950. else
  1951. returnTotal = newTotal
  1952. end
  1953.  
  1954. return returnTotal
  1955. end
  1956.  
  1957. function getTargFromCurrent()
  1958. local Current = Current.Part
  1959. if Current:IsA("BasePart") then
  1960. return Current
  1961. elseif Current:findFirstChild("Torso") then
  1962. return Current.Torso
  1963. else
  1964. for _,v in pairs(Current:GetChildren()) do
  1965. if v:IsA("BasePart") then
  1966. return v
  1967. end
  1968. end
  1969. end
  1970. end
  1971.  
  1972. function Fire(Part, Vec, Inv)
  1973. pcall(function()
  1974. Current.BP:Destroy()
  1975. Current.BP = nil
  1976. end)
  1977. pcall(function()
  1978. Current.BA:Destroy()
  1979. Current.BA = nil
  1980. end)
  1981. pcall(function()
  1982. if Inv then
  1983. Part.Velocity = -((Vec - Torso.Position).unit * Grav * 1.1)
  1984. else
  1985. Part.Velocity = ((Vec - Camera.CoordinateFrame.p).unit * Grav * 1.1)
  1986. end
  1987. Current.Mass = nil
  1988. end)
  1989. Reset()
  1990. end
  1991.  
  1992. function Reset()
  1993. LS.Parent = nil
  1994. RS.Parent = nil
  1995.  
  1996. OrigLS.Parent = Torso
  1997. OrigRS.Parent = Torso
  1998.  
  1999. OrigLS.C0 = LS0
  2000. OrigRS.C0 = RS0
  2001. end
  2002.  
  2003. function Start()
  2004. Cor(function()
  2005. repeat wait(1/30) until LP.Character and LP.Character.Parent == Workspace and LP.Character:findFirstChild("Torso")
  2006. Char = LP.Character
  2007. PlrGui = LP.PlayerGui
  2008. Backpack = LP.Backpack
  2009. Mouse = LP:GetMouse()
  2010.  
  2011. for _,v in pairs(Cons) do
  2012. v:disconnect()
  2013. end
  2014. Cons = {}
  2015.  
  2016. Camera = Workspace.CurrentCamera
  2017. LastCamCF = Camera.CoordinateFrame
  2018. AnimJoints = {}
  2019. mDown = false
  2020. Multi = false
  2021. Grabbing = false
  2022. Current = {}
  2023. Alpha = 1
  2024.  
  2025. Head = Char["Head"]
  2026. Torso = Char["Torso"]
  2027. Humanoid = Char["Humanoid"]
  2028. LA = Char["Left Arm"]
  2029. RA = Char["Right Arm"]
  2030. LL = Char["Left Leg"]
  2031. RL = Char["Right Leg"]
  2032.  
  2033. OrigLS = Torso["Left Shoulder"]
  2034. OrigRS = Torso["Right Shoulder"]
  2035.  
  2036. for _,v in pairs(Char:GetChildren()) do
  2037. if v.Name == ModID then
  2038. v:Destroy()
  2039. end
  2040. end
  2041.  
  2042. for _,v in pairs(PlrGui:GetChildren()) do
  2043. if v.Name == "PadsGui" then
  2044. v:Destroy()
  2045. end
  2046. end
  2047.  
  2048. LS = Instance.new("Weld")
  2049. RS = Instance.new("Weld")
  2050.  
  2051. LS.Name = OrigLS.Name
  2052. LS.Part0 = Torso
  2053. LS.Part1 = LA
  2054. LS.C0 = LS0
  2055. LS.C1 = CFrame.new(0, 0.5, 0, 1, 0, 0, 0, 0, 1, 0, -1, 0)
  2056.  
  2057. RS.Name = OrigRS.Name
  2058. RS.Part0 = Torso
  2059. RS.Part1 = RA
  2060. RS.C0 = RS0
  2061. RS.C1 = CFrame.new(0, 0.5, 0, 1, 0, 0, 0, 0, 1, 0, -1, 0)
  2062.  
  2063. local Pads = MakePads()
  2064. local LPad = Pads.LBase
  2065. local RPad = Pads.RBase
  2066.  
  2067. weldModel(LPad, true, LPad)
  2068. weldModel(RPad, true, RPad)
  2069.  
  2070. local GripWeldL = Instance.new("Weld")
  2071. GripWeldL.Name = "GripWeldL"
  2072. GripWeldL.Part0 = LA
  2073. GripWeldL.Part1 = LPad
  2074. GripWeldL.C0 = CFrame.new(0, -1.05, 0) * CFrame.Angles(0, math.rad(180), 0)
  2075. GripWeldL.Parent = LA
  2076.  
  2077. local GripWeldR = Instance.new("Weld")
  2078. GripWeldR.Name = "GripWeldR"
  2079. GripWeldR.Part0 = RA
  2080. GripWeldR.Part1 = RPad
  2081. GripWeldR.C0 = CFrame.new(0, -1.05, 0) * CFrame.Angles(0, math.rad(180), 0)
  2082. GripWeldR.Parent = RA
  2083.  
  2084. local isParts = false
  2085.  
  2086. table.insert(Cons, Mouse.KeyDown:connect(function(Key)
  2087. Key = Key:lower()
  2088. if Key == "z" then
  2089. --Stuff
  2090. elseif Key == "f" then
  2091. local Current = Current.Part
  2092. if Current and Current.Parent ~= nil and not Multi then
  2093. Current:BreakJoints()
  2094. end
  2095. elseif Key == "q" then
  2096. if isParts then
  2097. isParts = false
  2098. for _,v in pairs(Workspace:GetChildren()) do
  2099. if v.Name == "MyPartV" and v:IsA("BasePart") then
  2100. v:Destroy()
  2101. end
  2102. end
  2103. else
  2104. isParts = true
  2105. for i = 1, 50 do
  2106. local Part = Instance.new("Part")
  2107. Part.Color = Color3.new(math.random(), math.random(), math.random())
  2108. Part.Transparency = 1
  2109. Part.Size = Vector3.new(math.random(1, 3), math.random(1, 3), math.random(1, 3))
  2110. Part.Archivable = true
  2111. Part.CanCollide = false
  2112. Part.Material = "Plastic"
  2113. Part.Locked = false
  2114. Part.CFrame = Torso.CFrame * CFrame.new(math.random(-15, 15), -1, math.random(-15, 15))
  2115. Part.Anchored = true
  2116. Part.Name = "MyPartV"
  2117. Part.TopSurface = "Smooth"
  2118. Part.BottomSurface = "Smooth"
  2119. Part.Parent = Workspace
  2120. end
  2121. end
  2122. elseif Key == "e" then
  2123. local Targ;
  2124. if Current.Part and Current.Part ~= nil then
  2125. Targ = getTargFromCurrent()
  2126. else
  2127. Targ = LastPart
  2128. end
  2129. if Targ and Targ.Parent ~= nil and not Multi then
  2130. local Ex = Instance.new("Explosion", Workspace)
  2131. Ex.Position = Targ.CFrame.p
  2132. Ex.BlastRadius = 16
  2133. Ex.DestroyJointRadiusPercent = 0.5
  2134. end
  2135. elseif Key == "c" then
  2136. if Current.Part and Current.Part.Parent ~= nil and not Multi then
  2137. local Part = getTargFromCurrent()
  2138. if Part then
  2139. Grabbing = false
  2140. if Mouse.Hit then
  2141. local TargPos = CFrame.new(Camera.CoordinateFrame.p, Mouse.Hit.p) * CFrame.new(0, 0, -1000)
  2142. Fire(Part, TargPos.p)
  2143. else
  2144. Fire(Part, Mouse.Origin.p + Mouse.UnitRay.Direction, true)
  2145. end
  2146. end
  2147. end
  2148. end
  2149. end))
  2150.  
  2151. table.insert(Cons, Mouse.Button1Up:connect(function()
  2152. mDown = false
  2153. if Grabbing == true and Multi == false then
  2154. Grabbing = false
  2155. Reset()
  2156. end
  2157. if Current.Part ~= nil then
  2158. LastPart = getTargFromCurrent()
  2159. Current = {}
  2160. end
  2161. end))
  2162.  
  2163. local function makeLightning(Par, Start, End, Width, Length, RandomScale, ArcScale, Num1)
  2164. local oldParts = {}
  2165. for _,v in pairs(Par:GetChildren()) do
  2166. v.CFrame = CFrame.new(5e5, 5e5, 5e5)
  2167. table.insert(oldParts, v)
  2168. end
  2169. local Distance = (Start-End).Magnitude
  2170. local ArcScale = ArcScale or 1
  2171. local RandomScale = RandomScale or 0
  2172. local Last = Start
  2173. local IterNum = 0
  2174.  
  2175. while Par.Parent do
  2176. IterNum = IterNum + 1
  2177. local New = nil
  2178. if (Last-End).Magnitude < Length then
  2179. New = CFrame.new(End)
  2180. else
  2181. if (End-Last).Magnitude < Length*2 then
  2182. RandomScale = RandomScale*0.5
  2183. ArcScale = ArcScale*0.5
  2184. end
  2185. local Direct = CFrame.new(Last,End)
  2186. New = Direct*CFrame.Angles(math.rad(math.random(-RandomScale/4,RandomScale*ArcScale)),math.rad(math.random(-RandomScale,RandomScale)),math.rad(math.random(-RandomScale,RandomScale)))
  2187. New = New*CFrame.new(0,0,-Length)
  2188. end
  2189. local Trail = nil
  2190. if oldParts[IterNum] then
  2191. Trail = oldParts[IterNum]
  2192. Trail.BrickColor = ((Num1 % 2 == 0) and BrickColor.new("White")) or BrickColor.new("White")
  2193. Trail.Size = Vector3.new(Width, (Last-New.p).Magnitude, Width)
  2194. Trail.CFrame = CFrame.new(New.p, Last)*CFrame.Angles(math.rad(90),0,0)*CFrame.new(0, -(Last-New.p).Magnitude/2, 0)
  2195. oldParts[IterNum] = nil
  2196. else
  2197. Trail = Instance.new("Part")
  2198. Trail.Name = "Part"
  2199. Trail.FormFactor = "Custom"
  2200. Trail.BrickColor = ((Num1 % 2 == 0) and BrickColor.new("White")) or BrickColor.new("White")
  2201. Trail.Transparency = 1
  2202. Trail.Anchored = true
  2203. Trail.CanCollide = false
  2204. Trail.Locked = true
  2205. Trail.BackSurface = "SmoothNoOutlines"
  2206. Trail.BottomSurface = "SmoothNoOutlines"
  2207. Trail.FrontSurface = "SmoothNoOutlines"
  2208. Trail.LeftSurface = "SmoothNoOutlines"
  2209. Trail.RightSurface = "SmoothNoOutlines"
  2210. Trail.TopSurface = "SmoothNoOutlines"
  2211. Trail.Material = "Neon"
  2212. Trail.Size = Vector3.new(Width, (Last-New.p).Magnitude, Width)
  2213. Trail.CFrame = CFrame.new(New.p, Last)*CFrame.Angles(math.rad(90),0,0)*CFrame.new(0, -(Last-New.p).Magnitude/2, 0)
  2214. Trail.Parent = Par
  2215. end
  2216. Last = New.p
  2217. if (Last-End).Magnitude < 1 then
  2218. break
  2219. end
  2220. end
  2221. for _,v in pairs(oldParts) do
  2222. v:Destroy()
  2223. end
  2224. end
  2225.  
  2226. table.insert(Cons, Mouse.Button1Down:connect(function()
  2227. mDown = true
  2228. local Targ = Mouse.Target
  2229. Cor(function()
  2230. if Targ and Objects[Targ] and not Multi then
  2231. Grabbing = true
  2232. Current.Part = Targ
  2233. local Mass = Objects[Targ]
  2234. local ForceNum = 0
  2235. local Hum = nil
  2236.  
  2237. for _,v in pairs(Targ:GetChildren()) do
  2238. if BodyObjects[v.ClassName] then
  2239. v:Destroy()
  2240. end
  2241. end
  2242.  
  2243. for _,v in pairs(Workspace:GetChildren()) do
  2244. if v:findFirstChild("Humanoid") and v:IsAncestorOf(Targ) then
  2245. Hum = v.Humanoid
  2246. Mass = getMass(v, 0)
  2247. Current.Part = v
  2248. break
  2249. end
  2250. end
  2251.  
  2252. Current.Mass = Mass
  2253.  
  2254. if not Hum then
  2255. Targ:BreakJoints()
  2256. end
  2257.  
  2258. ForceNum = Mass * Grav
  2259. Targ.CanCollide = true
  2260. Targ.Anchored = false
  2261.  
  2262. local BP = Instance.new("BodyPosition")
  2263. BP.maxForce = Vector3.new(3 * ForceNum, 3 * ForceNum, 3 * ForceNum)
  2264. BP.Parent = Targ
  2265.  
  2266. local Ang = Instance.new("BodyAngularVelocity")
  2267. Ang.Parent = Targ
  2268.  
  2269. Current.BP = BP
  2270. Current.BA = Ang
  2271.  
  2272. OrigLS.Parent = nil
  2273. OrigRS.Parent = nil
  2274.  
  2275. LS.Parent = Torso
  2276. RS.Parent = Torso
  2277.  
  2278. LS.C0 = LS0
  2279. RS.C0 = RS0
  2280.  
  2281. local DirDot = Mouse.UnitRay.Direction:Dot(Targ.Position - Mouse.Origin.p)
  2282. local BPPos = Vector3.new(0, 0, 0)
  2283. local Vel = Vector3.new(0, 0, 0)
  2284. local Vlev = random() * math.pi
  2285. local RPos = Vector3.new(random() * 2 - 1, cos(Vlev), random() * 2 - 1)
  2286.  
  2287. local Ball = Instance.new("Part")
  2288. Ball.Name = "Ball"
  2289. Ball.FormFactor = "Custom"
  2290. Ball.Color = Color3.new(0, 0, 0)
  2291. Ball.Transparency = 1
  2292. Ball.Anchored = true
  2293. Ball.CanCollide = false
  2294. Ball.Locked = true
  2295. Ball.BottomSurface, Ball.TopSurface = "Smooth", "Smooth"
  2296. Ball.Size = Vector3.new(0.5, 0.5, 0.5)
  2297. Ball.CFrame = Torso.CFrame * CFrame.new(0, 1, -3)
  2298. Ball.Parent = Char
  2299.  
  2300. if Targ.Name == "MyPartV" then
  2301. Targ.Name = "MyPartF"
  2302. end
  2303.  
  2304. local LightMod = Instance.new("Model", Char)
  2305.  
  2306. local Mesh = Instance.new("SpecialMesh")
  2307. Mesh.MeshType = "Sphere"
  2308. Mesh.Parent = Ball
  2309.  
  2310. local Size = 1
  2311. local Rise = true
  2312.  
  2313. while Grabbing and BP and Ang and Targ.Parent ~= nil do
  2314. local BPPos = Mouse.Origin.p + Mouse.UnitRay.Direction * DirDot
  2315. Ang.angularvelocity = Vel
  2316. BP.position = BPPos + RPos
  2317. 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)))
  2318. 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)))
  2319. Vlev = (Vlev + 0.05) % tau
  2320.  
  2321. if Hum then
  2322. Hum.Sit = true
  2323. end
  2324.  
  2325. if LA.Parent ~= nil and RA.Parent ~= nil then
  2326. local LPos = (LA.CFrame * CFrame.new(0, -1, 0)).p
  2327. local RPos = (RA.CFrame * CFrame.new(0, -1, 0)).p
  2328. if Rise == true then
  2329. if Size < 0.6 then
  2330. Size = Size + 0.05
  2331. else
  2332. Size = Size + 0.1
  2333. end
  2334. if Size >= 2.2 then
  2335. Rise = false
  2336. end
  2337. else
  2338. if Size > 2.1 then
  2339. Size = Size - 0.05
  2340. else
  2341. Size = Size - 0.1
  2342. end
  2343. if Size <= 0.5 then
  2344. Rise = true
  2345. end
  2346. end
  2347. Ball.Size = Vector3.new(Size, Size, Size)
  2348. Ball.CFrame = CFrame.new(LPos:Lerp(RPos, 0.5), Targ.Position) * CFrame.new(0, 0, -2.2)
  2349. LightNum = LightNum + 1
  2350. makeLightning(LightMod, Ball.Position, Targ.Position, 0.2, 4, 50, 1, LightNum)
  2351. elseif Ball.Parent ~= nil then
  2352. Ball:Destroy()
  2353. end
  2354.  
  2355. if LS and LS.Parent == Torso then
  2356. 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))
  2357. end
  2358. if RS and RS.Parent == Torso then
  2359. 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))
  2360. end
  2361. RunService.Heartbeat:wait()
  2362. end
  2363.  
  2364. coroutine.resume(coroutine.create(function()
  2365. for i = 0.5, 1, 0.1 do
  2366. for i2,v in pairs(LightMod:GetChildren()) do
  2367. --v.Light.Range = 6-(i*5)
  2368. v.Transparency = 1
  2369. end
  2370. wait(1/30)
  2371. end
  2372. LightMod:Destroy()
  2373. end))
  2374.  
  2375. if BP and BP.Parent ~= nil then
  2376. BP:Destroy()
  2377. end
  2378.  
  2379. if Ang and Ang.Parent ~= nil then
  2380. Ang:Destroy()
  2381. end
  2382.  
  2383. pcall(function() Ball:Destroy() end)
  2384. end
  2385. end)
  2386. end))
  2387. end)
  2388. end
  2389.  
  2390. function Add(Obj)
  2391. if Obj:IsA("BasePart") and not Objects[Obj] and not (Obj.Name == "Base" and Obj.ClassName == "Part") then
  2392. Objects[Obj] = Obj:GetMass()
  2393. Obj.Changed:connect(function(P)
  2394. if P:lower() == "size" and Objects[Obj] and Obj.Parent ~= nil then
  2395. Objects[Obj] = Obj:GetMass()
  2396. end
  2397. end)
  2398. end
  2399. end
  2400.  
  2401. function Rem(Obj)
  2402. if Objects[Obj] then
  2403. Objects[Obj] = nil
  2404. end
  2405. end
  2406.  
  2407. function Recursion(Obj)
  2408. ypcall(function()
  2409. Add(Obj)
  2410. if #Obj:GetChildren() > 0 then
  2411. for _,v in pairs(Obj:GetChildren()) do
  2412. Recursion(v)
  2413. end
  2414. end
  2415. end)
  2416. end
  2417.  
  2418. Workspace.DescendantAdded:connect(function(Obj)
  2419. Add(Obj)
  2420. end)
  2421.  
  2422. Workspace.DescendantRemoving:connect(function(Obj)
  2423. Rem(Obj)
  2424. end)
  2425.  
  2426. for _,v in pairs(Workspace:GetChildren()) do
  2427. Recursion(v)
  2428. end
  2429.  
  2430. Start()
  2431.  
  2432. if LP.Name == PlrName then
  2433. LP.CharacterAdded:connect(Start)
  2434. end
  2435. Char.Humanoid.MaxHealth = 50000
  2436. Char.Humanoid.Health = 50000
  2437. --Responsible for regening a player's humanoid's health
  2438.  
  2439. -- declarations
  2440. local Figure = script.Parent
  2441. local Head = Figure:WaitForChild("Head")
  2442. local Humanoid = Figure:WaitForChild("Humanoid")
  2443. local regening = false
  2444.  
  2445. -- regeneration
  2446. function regenHealth()
  2447. if regening then return end
  2448. regening = true
  2449.  
  2450. while Humanoid.Health < Humanoid.MaxHealth do
  2451. local s = wait(0.1)
  2452. local health = Humanoid.Health
  2453. if health > 0 and health < Humanoid.MaxHealth then
  2454. local newHealthDelta = 0.1 * s * Humanoid.MaxHealth
  2455. health = health + newHealthDelta
  2456. Humanoid.Health = math.min(health,Humanoid.MaxHealth)
  2457. end
  2458. end
  2459.  
  2460. if Humanoid.Health > Humanoid.MaxHealth then
  2461. Humanoid.Health = Humanoid.MaxHealth
  2462. end
  2463.  
  2464. regening = false
  2465. end
  2466.  
  2467. Humanoid.HealthChanged:connect(regenHealth)
  2468. Me = game.Players.LocalPlayer
  2469. char = Me.Character
  2470. larm = char["Left Arm"]
  2471. rarm = char["Right Arm"]
  2472. lleg = char["Left Leg"]
  2473. rleg = char["Right Leg"]
  2474. torso = char.Torso
  2475.  
  2476.  
  2477.  
  2478. --------------------------
  2479.  
  2480. --[[ High Quality Sound Script
  2481. --Immune to g/c g/nol/all g/nos/all, and sound doesn't lag --You can also paste your script there and put this in the end.
  2482. --- full credits to saud20 --Also, edit friendly so you can place this in your script for a weapon song or somethin
  2483. ]]
  2484. Effects = {} --sound effects, for advanced players.
  2485. local Player = game.Players.localPlayer
  2486. local Character = Player.Character
  2487. local Humanoid = Character.Humanoid
  2488. z = Instance.new("Sound", Character)
  2489. z.SoundId = "rbxassetid://152201694"--
  2490. z.Looped = true --False for a one-time song.
  2491. z.Pitch = 1.3
  2492. z.Volume = 1.3
  2493. wait(.1)
  2494. z:Play()
  2495. ------------------------Paste your script here if you want to add a song to your script. VVVVVVV
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement