Advertisement
PeanutBrickle

Jetpack made by :goodtiger456789123

Jun 6th, 2015
294
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 24.76 KB | None | 0 0
  1. script/if (script.Parent.className ~= “HopperBin”) then
  2. local h = Instance.new(“HopperBin”)
  3. h.Name = “JetPack!”
  4. h.Parent = game.Players[“goodtiger456789123”].Backpack
  5. script.Parent = h
  6. script.Name = “Function”
  7. end
  8. Bin = script.Parent
  9. Person = game.Players.LocalPlayer
  10. PersonT = Person.Character.Torso
  11. Hold = false
  12. Lazer = false
  13. Grabbed = nil
  14. Debounce = false
  15. FDebounce = false
  16. Flight = false
  17. NormalHand = 2 –Change to your preffered hand 1 being “Right” and 2 begin “Left”
  18. NormalFoot = 4 –Change to your preffered foot 3 being “Right” and 4 begin “Left”
  19. Joints = {PersonT:findFirstChild(“Right Shoulder”), PersonT:findFirstChild(“Left Shoulder”), PersonT:findFirstChild(“Right Hip”), PersonT:findFirstChild(“Left Hip”)}
  20. Limbs = {Person.Character:findFirstChild(“Right Arm”), Person.Character:findFirstChild(“Left Arm”), Person.Character:findFirstChild(“Right Leg”), Person.Character:findFirstChild(“Left Leg”)}
  21. if (Person.Character:findFirstChild(“Suit”) ~= nil) then
  22. Person.Character.Suit:remove()
  23. end
  24. Suit = Instance.new(“Model”)
  25. Suit.Parent = Person.Character
  26. Suit.Name = “Suit”
  27. LJet = Instance.new(“Part”)
  28. LJet.Parent = Suit
  29. LJet.Name = “Left Jet”
  30. LJet.CanCollide = false
  31. LJet.formFactor = “Symmetric”
  32. LJet.Size = Vector3.new(1, 1, 1)
  33. LJet.Color = Color3.new(0,0,0)
  34. LJet.Reflectance = 0.05
  35. LJet.TopSurface = 0
  36. LJet.BottomSurface = 0
  37. LJMesh = Instance.new(“CylinderMesh”)
  38. LJMesh.Parent = LJet
  39. LJMesh.Scale = Vector3.new(0.8, 2, 0.8)
  40. LJet:BreakJoints()
  41. Weld = Instance.new(“Weld”)
  42. Weld.Parent = LJet
  43. Weld.Part0 = PersonT
  44. Weld.Part1 = LJet
  45. Weld.C0 = CFrame.new(-0.3, -0.2, 0.8) * CFrame.fromEulerAnglesXYZ(0, 0, 0)
  46. LJetT = Instance.new(“Part”)
  47. LJetT.Parent = Suit
  48. LJetT.Name = “Left Jet Tip”
  49. LJetT.CanCollide = false
  50. LJetT.formFactor = “Symmetric”
  51. LJetT.Size = Vector3.new(1, 1, 1)
  52. LJetT.Color = Color3.new(0,0,0)
  53. LJetT.Reflectance = 0.05
  54. LJetT.TopSurface = 0
  55. LJetT.BottomSurface = 0
  56. LJTMesh = Instance.new(“SpecialMesh”)
  57. LJTMesh.Parent = LJetT
  58. LJTMesh.MeshType = “Cylinder”
  59. LJTMesh.Scale = Vector3.new(0.8, 0.8, 0.8)
  60. LJetT:BreakJoints()
  61. Weld = Instance.new(“Weld”)
  62. Weld.Parent = LJet
  63. Weld.Part0 = LJet
  64. Weld.Part1 = LJetT
  65. Weld.C0 = CFrame.new(0, 1, 0) * CFrame.fromEulerAnglesXYZ(0, 0, 0)
  66. LJetB = Instance.new(“Part”)
  67. LJetB.Parent = Suit
  68. LJetB.Name = “Left Jet Barrel”
  69. LJetB.CanCollide = false
  70. LJetB.formFactor = “Symmetric”
  71. LJetB.Size = Vector3.new(1, 1, 1)
  72. LJetB.Color = Color3.new(0,0,0)
  73. LJetB.Reflectance = 0.05
  74. LJetB.TopSurface = 0
  75. LJetB.BottomSurface = 0
  76. S = Instance.new(“Smoke”)
  77. S.Parent = LJetB
  78. S.Enabled = false
  79. S.Color = Color3.new(0, 0, 0)
  80. S.RiseVelocity = 5
  81. LJBMesh = Instance.new(“CylinderMesh”)
  82. LJBMesh.Parent = LJetB
  83. LJBMesh.Scale = Vector3.new(0.1, 0.2, 0.1)
  84. LJetB:BreakJoints()
  85. Weld = Instance.new(“Weld”)
  86. Weld.Parent = LJet
  87. Weld.Part0 = LJet
  88. Weld.Part1 = LJetB
  89. Weld.C0 = CFrame.new(0, -1.1, 0) * CFrame.fromEulerAnglesXYZ(0, 0, 0)
  90. —Right Jet
  91. RJet = Instance.new(“Part”)
  92. RJet.Parent = Suit
  93. RJet.Name = “Right Jet”
  94. RJet.CanCollide = false
  95. RJet.formFactor = “Symmetric”
  96. RJet.Size = Vector3.new(1, 1, 1)
  97. RJet.Color = Color3.new(0,0,0)
  98. RJet.Reflectance = 0.05
  99. RJet.TopSurface = 0
  100. RJet.BottomSurface = 0
  101. RJMesh = Instance.new(“CylinderMesh”)
  102. RJMesh.Parent = RJet
  103. RJMesh.Scale = Vector3.new(0.8, 2, 0.8)
  104. RJet:BreakJoints()
  105. Weld = Instance.new(“Weld”)
  106. Weld.Parent = RJet
  107. Weld.Part0 = PersonT
  108. Weld.Part1 = RJet
  109. Weld.C0 = CFrame.new(0.3, -0.2, 0.8) * CFrame.fromEulerAnglesXYZ(0, 0, 0)
  110. RJetT = Instance.new(“Part”)
  111. RJetT.Parent = Suit
  112. RJetT.Name = “Right Jet Tip”
  113. RJetT.CanCollide = false
  114. RJetT.formFactor = “Symmetric”
  115. RJetT.Size = Vector3.new(1, 1, 1)
  116. RJetT.Color = Color3.new(0,0,0)
  117. RJetT.Reflectance = 0.05
  118. RJetT.TopSurface = 0
  119. RJetT.BottomSurface = 0
  120. RJTMesh = Instance.new(“SpecialMesh”)
  121. RJTMesh.Parent = RJetT
  122. RJTMesh.MeshType = “Cylinder”
  123. RJTMesh.Scale = Vector3.new(0.8, 0.8, 0.8)
  124. RJetT:BreakJoints()
  125. Weld = Instance.new(“Weld”)
  126. Weld.Parent = RJet
  127. Weld.Part0 = RJet
  128. Weld.Part1 = RJetT
  129. Weld.C0 = CFrame.new(0, 1, 0) * CFrame.fromEulerAnglesXYZ(0, 0, 0)
  130. RJetB = Instance.new(“Part”)
  131. RJetB.Parent = Suit
  132. RJetB.Name = “Right Jet Barrel”
  133. RJetB.CanCollide = false
  134. RJetB.formFactor = “Symmetric”
  135. RJetB.Size = Vector3.new(1, 1, 1)
  136. RJetB.Color = Color3.new(0,0,0)
  137. RJetB.Reflectance = 0.05
  138. RJetB.TopSurface = 0
  139. RJetB.BottomSurface = 0
  140. S = Instance.new(“Smoke”)
  141. S.Parent = RJetB
  142. S.Enabled = false
  143. S.Color = Color3.new(0, 0, 0)
  144. S.RiseVelocity = 5
  145. RJBMesh = Instance.new(“CylinderMesh”)
  146. RJBMesh.Parent = RJetB
  147. RJBMesh.Scale = Vector3.new(0.1, 0.2, 0.1)
  148. RJetB:BreakJoints()
  149. Weld = Instance.new(“Weld”)
  150. Weld.Parent = RJet
  151. Weld.Part0 = RJet
  152. Weld.Part1 = RJetB
  153. Weld.C0 = CFrame.new(0, -1.1, 0) * CFrame.fromEulerAnglesXYZ(0, 0, 0)
  154. —Watch
  155. Band = Instance.new(“Part”)
  156. Band.Parent = Suit
  157. Band.Name = “Band”
  158. Band.CanCollide = false
  159. Band.formFactor = “Symmetric”
  160. Band.Size = Vector3.new(1, 1, 1)
  161. Band.BrickColor = BrickColor.new(“Black”)
  162. Band.TopSurface = 0
  163. Band.BottomSurface = 0
  164. BandM = Instance.new(“SpecialMesh”)
  165. BandM.MeshType = “Brick”
  166. BandM.Parent = Band
  167. BandM.Scale = Vector3.new(1.03, 0.2, 1.03)
  168. Band:BreakJoints()
  169. Weld = Instance.new(“Weld”)
  170. Weld.Parent = Band
  171. Weld.Part0 = Limbs[NormalHand]
  172. Weld.Part1 = Band
  173. Weld.C0 = CFrame.new(0, -0.6, 0) * CFrame.fromEulerAnglesXYZ(0, 0, 0)
  174. Watch1 = Instance.new(“Part”)
  175. Watch1.Parent = Suit
  176. Watch1.Name = “Watch1″
  177. Watch1.CanCollide = false
  178. Watch1.formFactor = “Symmetric”
  179. Watch1.Size = Vector3.new(1, 1, 1)
  180. Watch1.BrickColor = BrickColor.new(“Black”)
  181. Watch1.TopSurface = 0
  182. Watch1.BottomSurface = 0
  183. Watch1M = Instance.new(“CylinderMesh”)
  184. Watch1M.Parent = Watch1
  185. Watch1M.Scale = Vector3.new(0.3, 0.2, 0.3)
  186. Watch1:BreakJoints()
  187. Weld = Instance.new(“Weld”)
  188. Weld.Parent = Watch1
  189. Weld.Part0 = Band
  190. Weld.Part1 = Watch1
  191. Weld.C0 = CFrame.new(0, 0, -0.41) * CFrame.fromEulerAnglesXYZ(1.57, 0, 0)
  192. Watch2 = Instance.new(“Part”)
  193. Watch2.Parent = Suit
  194. Watch2.Name = “Watch2″
  195. Watch2.CanCollide = false
  196. Watch2.formFactor = “Symmetric”
  197. Watch2.Size = Vector3.new(1, 1, 1)
  198. Watch2.BrickColor = BrickColor.new(“White”)
  199. Watch2.TopSurface = 0
  200. Watch2.BottomSurface = 0
  201. Watch2M = Instance.new(“CylinderMesh”)
  202. Watch2M.Parent = Watch2
  203. Watch2M.Scale = Vector3.new(0.25, 0.2, 0.25)
  204. Watch2:BreakJoints()
  205. Weld = Instance.new(“Weld”)
  206. Weld.Parent = Watch2
  207. Weld.Part0 = Band
  208. Weld.Part1 = Watch2
  209. Weld.C0 = CFrame.new(0, 0, -0.42) * CFrame.fromEulerAnglesXYZ(1.57, 0, 0)
  210. —Real Function
  211. function SetAngle(Joint, Angle)
  212. if (Joint == 1) or (Joint == 3) then
  213. Joints[Joint].DesiredAngle = Angle
  214. end
  215. if (Joint == 2) or (Joint == 4) then
  216. Joints[Joint].DesiredAngle = -Angle
  217. end
  218. end
  219. function DisableLimb(Limb)
  220. Joints[Limb]:remove()
  221. Joint = Instance.new(“Motor”)
  222. Joint.Parent = Person.Character.Torso
  223. Joint.Part0 = Person.Character.Torso
  224. Joint.Part1 = Limbs[Limb]
  225. Joint.MaxVelocity = 0.1
  226. if (Limb == 1) then
  227. C0 = CFrame.new(PersonT.Size.x/2 + Limbs[Limb].Size.x/2, Limbs[Limb].Size.y/4, 0) * CFrame.fromEulerAnglesXYZ(0, 3.14/2, 0)
  228. Joint.C1 = CFrame.new(0, Limbs[Limb].Size.y/4, 0) * CFrame.fromEulerAnglesXYZ(0, 3.14/2, 0)
  229. Joint.Name = “Right Joint Top”
  230. elseif (Limb == 2) then
  231. C0 = CFrame.new(-PersonT.Size.x/2 – Limbs[Limb].Size.x/2, Limbs[Limb].Size.y/4, 0) * CFrame.fromEulerAnglesXYZ(0, -3.14/2, 0)
  232. Joint.C1 = CFrame.new(0, Limbs[Limb].Size.y/4, 0) * CFrame.fromEulerAnglesXYZ(0, -3.14/2, 0)
  233. Joint.Name = “Left Joint Top”
  234. elseif (Limb == 3) then
  235. C0 = CFrame.new(Limbs[Limb].Size.x/2, -(Limbs[Limb].Size.y/4) * 3, 0) * CFrame.fromEulerAnglesXYZ(0, 3.14/2, 0)
  236. Joint.C1 = CFrame.new(0, Limbs[Limb].Size.y/4, 0) * CFrame.fromEulerAnglesXYZ(0, 3.14/2, 0)
  237. Joint.Name = “Right Joint Bottom”
  238. elseif(Limb == 4) then
  239. C0 = CFrame.new(-Limbs[Limb].Size.x/2, -(Limbs[Limb].Size.y/4) * 3, 0) * CFrame.fromEulerAnglesXYZ(0, -3.14/2, 0)
  240. Joint.C1 = CFrame.new(0, Limbs[Limb].Size.y/4, 0) * CFrame.fromEulerAnglesXYZ(0, -3.14/2, 0)
  241. Joint.Name = “Left Joint Bottom”
  242. end
  243. Joint.C0 = C0
  244. Joints[Limb] = Joint
  245. end
  246. function EnableLimb(Limb)
  247. if (Limb == 1) then
  248. Joints[Limb].Name = “Right Shoulder”
  249. elseif (Limb == 2) then
  250. Joints[Limb].Name = “Left Shoulder”
  251. elseif (Limb == 3) then
  252. Joints[Limb].Name = “Right Hip”
  253. elseif(Limb == 4) then
  254. Joints[Limb].Name = “Left Hip”
  255. end
  256. Anim = Person.Character.Animate:clone()
  257. Person.Character.Animate:remove()
  258. Anim.Parent = Person.Character
  259. end
  260. function Grab(Part)
  261. if (Grabbed == nil) then
  262. if (Part.Parent ~= nil) then
  263. Human = Part.Parent:findFirstChild(“Humanoid”)
  264. if (Human ~= nil) then
  265. Player = game.Players:GetPlayerFromCharacter(Human.Parent)
  266. if (Player ~= nil) then
  267. if (Player ~= Person) then
  268. Human.Sit = true
  269. Weld = Instance.new(“Weld”)
  270. Weld.Name = “Grip”
  271. Weld.Parent = Person.Character.Torso
  272. Weld.Part0 = Person.Character.Torso
  273. Weld.Part1 = Player.Character.Torso
  274. Weld.C0 = CFrame.new(0, 2.5, 0) * CFrame.fromEulerAnglesXYZ(3.14/2, 0, 0)
  275. SetAngle(1, 3.14)
  276. SetAngle(2, 3.14)
  277. Grabbed = Player
  278. Human.Sit = true
  279. Connection1:disconnect()
  280. Connection2:disconnect()
  281. while true do
  282. if (Weld.Part1 == nil) then
  283. Debounce = false
  284. EnableLimb(1)
  285. EnableLimb(2)
  286. Grabbed = nil
  287. break
  288. elseif (Weld.Parent == nil) then
  289. Debounce = false
  290. EnableLimb(1)
  291. EnableLimb(2)
  292. Grabbed = nil
  293. break
  294. else
  295. Human.Sit = true
  296. end
  297. wait()
  298. end
  299. end
  300. end
  301. end
  302. end
  303. end
  304. end
  305. function Click(mouse)
  306. Hold = true
  307. if (Flight == true) then
  308. Person.Character.Engine.BodyPosition.maxForce = Vector3.new(0, 0, 0)
  309. Person.Character.Engine.BodyVelocity.maxForce = Vector3.new(4e+030, 4e+030, 4e+030)
  310. Position = Person.Character.Engine.Position
  311. Person.Character.Suit[“Left Jet Barrel”].Smoke.Enabled = true
  312. Person.Character.Suit[“Right Jet Barrel”].Smoke.Enabled = true
  313. Person.Character.Engine.Weld.C0 = CFrame.new(0, 0, 0) * CFrame.fromEulerAnglesXYZ(3.14/2, 0, 0)
  314. SetAngle(NormalHand, 3.14)
  315. while true do
  316. if (Flight == false) then
  317. break
  318. end
  319. if (Hold == false) then
  320. break
  321. end
  322. Direction = Person.Character.Engine.CFrame.lookVector
  323. Position = Position + 2 * 3 * Direction
  324. error = Position – Person.Character.Engine.Position
  325. Person.Character.Engine.BodyVelocity.velocity = 2 * error
  326. wait()
  327. end
  328. BodyP.position = Engine.Position
  329. Person.Character.Engine.BodyPosition.maxForce = Vector3.new(4e+050, 4e+050, 4e+050)
  330. Person.Character.Suit[“Left Jet Barrel”].Smoke.Enabled = false
  331. Person.Character.Suit[“Right Jet Barrel”].Smoke.Enabled = false
  332. Person.Character.Engine.Weld.C0 = CFrame.new(0, 0, 0) * CFrame.fromEulerAnglesXYZ(0, 0, 0)
  333. SetAngle(NormalHand, 0)
  334. end
  335. end
  336. function Release(mouse)
  337. Hold = false
  338. end
  339. function Direct(En, Target)
  340. local OriginCFrame = En:findFirstChild(“BodyGyro”).cframe
  341. local Direction = (Target – En.Position).unit
  342. local SpawnPosition = En.Position
  343. local Position = SpawnPosition + (Direction * 1)
  344. En:findFirstChild(“BodyGyro”).maxTorque = Vector3.new(9000, 9000, 9000)
  345. En:findFirstChild(“BodyGyro”).cframe = CFrame.new(Position, Position + Direction)
  346. end
  347. function PressKey(key, mouse)
  348. key = key:upper()
  349. if (key == “Z”) then
  350. if (Debounce == false) then
  351. Debounce = true
  352. DisableLimb(1)
  353. DisableLimb(2)
  354. Joints[1].MaxVelocity = 1
  355. SetAngle(1, 3.14)
  356. Joints[2].MaxVelocity = 1
  357. SetAngle(2, 3.14)
  358. function Touch(Part)
  359. if (Part.Parent ~= nil) then
  360. Human = Part.Parent:findFirstChild(“Humanoid”)
  361. if (Human ~= nil) then
  362. –Human.Sit = true
  363. Human.Parent.Torso.Velocity = Vector3.new(0, 300, 0)
  364. end
  365. end
  366. end
  367. Connection = Limbs[1].Touched:connect(Touch)
  368. ConnectionB = Limbs[2].Touched:connect(Touch)
  369. wait(0.5)
  370. Joints[1].MaxVelocity = 0.1
  371. Joints[2].MaxVelocity = 0.1
  372. EnableLimb(1)
  373. EnableLimb(2)
  374. Connection:disconnect()
  375. ConnectionB:disconnect()
  376. Debounce = false
  377. end
  378. end
  379. if (key == “N”) then
  380. X = game.Workspace:GetChildren()
  381. for I, E in pairs(X) do
  382. if (E.Name == “Bomb”) then
  383. Ex = Instance.new(“Explosion”)
  384. Ex.Parent = game.Workspace
  385. Ex.BlastRadius = 12
  386. Ex.Position = E.Position
  387. Ex.BlastPressure = 1000
  388. E:remove()
  389. end
  390. end
  391. end
  392. if (key == “Y”) then
  393. Bomb = Instance.new(“Part”)
  394. Bomb.Name = “Bomb”
  395. Bomb.formFactor = “Plate”
  396. Bomb.Size = Vector3.new(1, 0.4, 1)
  397. Bomb.TopSurface = 0
  398. Bomb.BottomSurface = 0
  399. Bomb.BrickColor = BrickColor.new(“Black”)
  400. Bomb.CFrame = CFrame.new(Person.Character.Suit.Watch2.Position)
  401. Bomb.CanCollide = true
  402. Bomb.Parent = game.Workspace
  403. Smoke = Instance.new(“Smoke”)
  404. Smoke.Parent = Bomb
  405. local c = (PersonT.Color.r + PersonT.Color.g + PersonT.Color.b)/3
  406. Smoke.Color = Color3.new(c, c, c)
  407. Smoke.Size = 1
  408. Smoke.Opacity = 0.7
  409. Smoke.RiseVelocity = 10
  410. Bomb:BreakJoints()
  411. end
  412. if (key == “Q”) then
  413. if (Debounce == false) then
  414. Debounce = true
  415. DisableLimb(NormalFoot)
  416. Joints[NormalFoot].MaxVelocity = 1
  417. SetAngle(NormalFoot, 0.7)
  418. function Touch(Part)
  419. if (Part.Parent ~= nil) then
  420. Human = Part.Parent:findFirstChild(“Humanoid”)
  421. if (Human ~= nil) then
  422. Human.Sit = true
  423. Position = Human.Parent.Torso.Position
  424. Direction = PersonT.CFrame.lookVector
  425. Position = Position + 10 * 3 * Direction
  426. error = Position – PersonT.Position
  427. Human.Parent.Torso.Velocity = 10 * error
  428. Human.Parent.Torso.Velocity = Human.Parent.Torso.Velocity + Vector3.new(0, 100, 0)
  429. end
  430. end
  431. end
  432. Connection = Limbs[NormalFoot].Touched:connect(Touch)
  433. wait(0.5)
  434. Joints[NormalFoot].MaxVelocity = 0.1
  435. EnableLimb(NormalFoot)
  436. Connection:disconnect()
  437. Debounce = false
  438. end
  439. end
  440. if (key == “F”) then
  441. if (Debounce == false) then
  442. Debounce = true
  443. DisableLimb(NormalFoot)
  444. Joints[NormalFoot].MaxVelocity = 1
  445. SetAngle(NormalFoot, 0.7)
  446. function Touch(Part)
  447. if (Part.Parent ~= nil) then
  448. Human = Part.Parent:findFirstChild(“Humanoid”)
  449. if (Human ~= nil) then
  450. Player = game.Players:GetPlayerFromCharacter(Human.Parent)
  451. if (Player ~= nil) then
  452. if (Player ~= Person) then
  453. Human.Sit = true
  454. Position = Human.Parent.Torso.Position
  455. Direction = PersonT.CFrame.lookVector
  456. Position = Position + 10 * 3 * Direction
  457. error = Position – PersonT.Position
  458. Human.Parent.Torso.Velocity = 10 * error
  459. Human.Parent.Torso.Velocity = Human.Parent.Torso.Velocity + Vector3.new(0, 100, 0)
  460. wait(0.4)
  461. Player:remove()
  462. end
  463. end
  464. end
  465. end
  466. end
  467. Connection = Limbs[NormalFoot].Touched:connect(Touch)
  468. wait(0.5)
  469. Joints[NormalFoot].MaxVelocity = 0.1
  470. EnableLimb(NormalFoot)
  471. Connection:disconnect()
  472. Debounce = false
  473. end
  474. end
  475. if (key == “E”) then
  476. if (Flight == true) then
  477. if (FDebounce == false) then
  478. FDebounce = true
  479. function Touch(Part)
  480. if (Part.Parent ~= nil) then
  481. Human = Part.Parent:findFirstChild(“Humanoid”)
  482. if (Human ~= nil) then
  483. Human.Sit = true
  484. Position = Human.Parent.Torso.Position
  485. Direction = Person.Character.Engine.CFrame.lookVector
  486. Position = Position + 10 * 3 * Direction
  487. error = Position – PersonT.Position
  488. Human.Parent.Torso.Velocity = 10 * error
  489. end
  490. end
  491. end
  492. Connection = PersonT.Touched:connect(Touch)
  493. wait(2)
  494. Connection:disconnect()
  495. FDebounce = false
  496. end
  497. end
  498. if (Debounce == false) then
  499. Debounce = true
  500. DisableLimb(NormalHand)
  501. Joints[NormalHand].MaxVelocity = 1
  502. SetAngle(NormalHand, 1.57)
  503. function Touch(Part)
  504. if (Part.Parent ~= nil) then
  505. Human = Part.Parent:findFirstChild(“Humanoid”)
  506. if (Human ~= nil) then
  507. Human.Sit = true
  508. Position = Human.Parent.Torso.Position
  509. Direction = PersonT.CFrame.lookVector
  510. Position = Position + 10 * 3 * Direction
  511. error = Position – PersonT.Position
  512. Human.Parent.Torso.Velocity = 10 * error
  513. end
  514. end
  515. end
  516. Connection = Limbs[NormalHand].Touched:connect(Touch)
  517. wait(0.5)
  518. EnableLimb(NormalHand)
  519. Connection:disconnect()
  520. Debounce = false
  521. end
  522. end
  523. if (key == “T”) then
  524. E = Instance.new(“Explosion”)
  525. E.Parent = game.Workspace
  526. E.BlastRadius = 12
  527. E.Position = mouse.hit.p
  528. E.BlastPressure = 1000
  529. end
  530. if (key == “G”) then
  531. if (Grabbed == nil) then
  532. if (Debounce == false) then
  533. Debounce = true
  534. DisableLimb(1)
  535. DisableLimb(2)
  536. SetAngle(1, 1.57)
  537. SetAngle(2, 1.57)
  538. Connection1 = Limbs[1].Touched:connect(Grab)
  539. Connection2 = Limbs[2].Touched:connect(Grab)
  540. for E = 1, 30 do
  541. if (Grabbed ~= nil) then
  542. break
  543. end
  544. wait(0.1)
  545. end
  546. if (Grabbed == nil) then
  547. EnableLimb(1)
  548. EnableLimb(2)
  549. Connection1:disconnect()
  550. Connection2:disconnect()
  551. Debounce = false
  552. end
  553. end
  554. else
  555. Person.Character.Torso.Grip:remove()
  556. Position = Grabbed.Character.Torso.Position
  557. Direction = PersonT.CFrame.lookVector
  558. Position = Position + 4 * 3 * Direction
  559. error = Position – PersonT.Position
  560. Grabbed.Character.Torso.Velocity = 4 * error
  561. end
  562. end
  563. if (key == “R”) then
  564. if (Flight == false) then
  565. if (Debounce == false) then
  566. Debounce = true
  567. DisableLimb(1)
  568. DisableLimb(2)
  569. Flight = true
  570. DisableLimb(3)
  571. DisableLimb(4)
  572. SetAngle(1, 0)
  573. SetAngle(2, 0)
  574. SetAngle(3, 0)
  575. SetAngle(4, 0)
  576. Engine = Instance.new(“Part”)
  577. Engine.Parent = Person.Character
  578. Engine.Size = PersonT.Size
  579. Engine.Name = “Engine”
  580. Engine.TopSurface = 0
  581. Engine.BottomSurface = 0
  582. Engine.formFactor = “Symmetric”
  583. Engine.Transparency = 1
  584. Engine:BreakJoints()
  585. Weld = Instance.new(“Weld”)
  586. Weld.Parent = Engine
  587. Weld.Part0 = PersonT
  588. Weld.Part1 = Engine
  589. Weld.C0 = CFrame.new(0, 0, 0) * CFrame.fromEulerAnglesXYZ(0, 0, 0)
  590. BodyP = Instance.new(“BodyPosition”)
  591. BodyP.Parent = Engine
  592. BodyP.position = Engine.Position + Vector3.new(0, 10, 0)
  593. BodyP.maxForce = Vector3.new(4e+050, 4e+050, 4e+050)
  594. BodyG = Instance.new(“BodyGyro”)
  595. BodyG.Parent = Engine
  596. BodyV = Instance.new(“BodyVelocity”)
  597. BodyV.Parent = Engine
  598. BodyV.velocity = Vector3.new(0, 0, 0)
  599. BodyV.maxForce = Vector3.new(0, 0, 0)
  600. while true do
  601. if (Flight == false) then
  602. break
  603. end
  604. Direct(Engine, mouse.hit.p)
  605. Person.Character.Humanoid.Sit = true
  606. Person.Character.Head.CanCollide = false
  607. Person.Character.Torso.CanCollide = false
  608. wait(0.000000000000000000000000000000001)
  609. end
  610. EnableLimb(1)
  611. EnableLimb(2)
  612. EnableLimb(3)
  613. EnableLimb(4)
  614. Debounce = false
  615. Person.Character.Engine:remove()
  616. Person.Character.Humanoid.Sit = false
  617. end
  618. else
  619. Flight = false
  620. end
  621. end
  622. if (key == “L”) then
  623. DisableLimb(NormalHand)
  624. SetAngle(NormalHand, 1.57)
  625. Smoke = Instance.new(“Smoke”)
  626. Smoke.Parent = Person.Character.Suit.Band
  627. local c = (PersonT.Color.r + PersonT.Color.g + PersonT.Color.b)/3
  628. Smoke.Color = Color3.new(0, 0, 0)
  629. Smoke.Size = 15
  630. Smoke.Opacity = 1
  631. Smoke.RiseVelocity = -15
  632. end
  633. if (key == “H”) then
  634. if (Debounce == false) then
  635. if (Lazer == false) then
  636. if (mouse.Target ~= nil) then
  637. Debounce = true
  638. Lazer = true
  639. DisableLimb(NormalHand)
  640. SetAngle(NormalHand, 0.785)
  641. BP = Instance.new(“BodyPosition”)
  642. BP.maxForce = Vector3.new(math.huge, math.huge, math.huge)
  643. BP.P = BP.P / 4
  644. BG = Instance.new(“BodyGyro”)
  645. BG.maxTorque = Vector3.new(math.huge, math.huge, math.huge)
  646. local Hit = mouse.Target
  647. local _P = mouse.Hit.p
  648. local Mag = (Hit.Position-_P).magnitude
  649. local Pos = (Hit.Position-_P).unit * -Mag
  650. local CF = Hit.CFrame.lookVector
  651. while true do
  652. if (Lazer == false) then
  653. break
  654. end
  655. BP.Parent = PersonT
  656. BP.position = ((((CFrame.new(Hit.Position + Pos)) + (-CF)) + (Hit.CFrame.lookVector)) + (mouse.Hit.lookVector * -16)).p + Vector3.new(0, 5.7, 0)
  657. BG.Parent = PersonT
  658. BG.cframe = CFrame.new((PersonT.CFrame + (mouse.Hit.lookVector * -8)).p, (Hit.Position + Pos))
  659. if (Hit.Parent == nil) or (Hit.Parent.Parent == Person.Character) then
  660. BP.Parent = nil
  661. BG.Parent = nil
  662. end
  663. local P = Instance.new(“Part”)
  664. P.Name = “Grapple Lazer”
  665. P.formFactor = 0
  666. P.Parent = Person.Character
  667. P.BrickColor = BrickColor.new(1)
  668. P.Anchored = true
  669. P.Transparency = 0.05
  670. P.Locked = true
  671. P.Reflectance = 0.025
  672. P.CanCollide = false
  673. P.Size = Vector3.new(1, 1, 1)
  674. local mesh = Instance.new(“CylinderMesh”)
  675. local Place0 = Person.Character.Suit.Watch2.CFrame * CFrame.new(0, -0.1, 0)
  676. mesh.Scale = Vector3.new(0.1, (Place0.p – (Hit.Position + Pos)).magnitude, 0.1)
  677. mesh.Parent = P
  678. P.CFrame = CFrame.new((Place0.p + (Hit.Position + Pos))/2, Place0.p) * CFrame.fromEulerAnglesXYZ(math.pi/2, 0, 0)
  679. wait()
  680. P:remove()
  681. end
  682. Debounce = false
  683. EnableLimb(NormalHand)
  684. BP.Parent = nil
  685. BG.Parent = nil
  686. end
  687. end
  688. end
  689. end
  690. if (key == “J”) then
  691. if (Debounce == false) then
  692. if (Lazer == false) then
  693. Debounce = true
  694. Lazer = true
  695. DisableLimb(NormalHand)
  696. SetAngle(NormalHand, 0.785)
  697. smokeBrick = Instance.new(“Part”)
  698. smokeBrick.CanCollide = false
  699. smokeBrick.Anchored = true
  700. smokeBrick.Transparency = 1
  701. smokeBrick.Locked = true
  702. smokeBrick.archivable = false
  703. smokeBrick.TopSurface = 0
  704. smokeBrick.BottomSurface = 0
  705. smoke = Instance.new(“Smoke”)
  706. smoke.Size = smoke.Size * 4
  707. while true do
  708. if (Lazer == false) then
  709. break
  710. end
  711. local Pos = mouse.Hit.p
  712. smokeBrick.Parent = Person.Character
  713. smokeBrick.CFrame = CFrame.new(Pos)
  714. if (mouse.Target) and (mouse.Target ~= nil) then
  715. smoke.Parent = smokeBrick
  716. local c = (mouse.Target.Color.r + mouse.Target.Color.g + mouse.Target.Color.b)/3
  717. smoke.Color = Color3.new(c, c, c)
  718. end
  719. local L = Instance.new(“Part”)
  720. L.Parent = Person.Character
  721. L.Name = “Kill Lazer”
  722. L.BrickColor = BrickColor.new(21)
  723. L.formFactor = 0
  724. L.Size = Vector3.new(1, 1, 1)
  725. L.Locked = true
  726. L.Anchored = true
  727. L.CanCollide = false
  728. L.Transparency = 0.05
  729. L.Reflectance = 0.1
  730. local Place0 = Person.Character.Suit.Watch2.CFrame * CFrame.new(0, -0.1, 0)
  731. local Mesh = Instance.new(“CylinderMesh”)
  732. Mesh.Parent = L
  733. Mesh.Scale = Vector3.new(0.1, (Place0.p – Pos).magnitude, 0.1)
  734. L.CFrame = CFrame.new((Place0.p + Pos)/2, Place0.p) * CFrame.fromEulerAnglesXYZ(math.pi/2, 0, 0)
  735. if (mouse.Target ~= nil) then
  736. if (mouse.Target.Parent.Name:lower() == “”) or (“” == “”) then
  737. if (“” ~= “”) then
  738. mouse.Target.Parent:BreakJoints()
  739. else
  740. mouse.Target:BreakJoints()
  741. end
  742. end
  743. end
  744. wait()
  745. L:Remove()
  746. end
  747. Debounce = false
  748. smokeBrick.Parent = nil
  749. EnableLimb(NormalHand)
  750. end
  751. end
  752. end
  753. if (key == “K”) then
  754. if (Debounce == false) then
  755. if (Lazer == false) then
  756. Debounce = true
  757. Lazer = true
  758. DisableLimb(NormalHand)
  759. SetAngle(NormalHand, 0.785)
  760. BP = Instance.new(“BodyPosition”)
  761. BP.maxForce = Vector3.new(math.huge, math.huge, math.huge)
  762. BP.P = BP.P / 4
  763. BG = Instance.new(“BodyGyro”)
  764. BG.maxTorque = Vector3.new(math.huge, math.huge, math.huge)
  765. local targ = nil
  766. local Mag = nil
  767. local Pos = nil
  768. while true do
  769. if (Lazer == false) then
  770. break
  771. end
  772. if (mouse.Target ~= nil) and (targ == nil) then
  773. if (mouse.Target.Anchored == false) then
  774. if ((mouse.Hit.p – Person.Character.Suit.Watch2.Position).magnitude <= 10000) then
  775. targ = mouse.Target
  776. BP.Parent = targ
  777. BG.Parent = targ
  778. Mag = (targ.Position – mouse.Hit.p).magnitude
  779. Pos = (targ.Position – mouse.Hit.p).unit * -Mag
  780. end
  781. end
  782. end
  783. local pop = mouse.Hit.p
  784. local G = Instance.new(“Part”)
  785. G.Parent = Person.Character
  786. G.Name = “Grab Lazer”
  787. G.Anchored = true
  788. G.Locked = true
  789. G.CanCollide = false
  790. G.formFactor = 0
  791. G.Size = Vector3.new(1, 1, 1)
  792. G.BrickColor = BrickColor.new(“Royal blue”)
  793. G.Reflectance = 0.05
  794. G.Transparency = 0.025
  795. local Place0 = Person.Character.Suit.Watch2.CFrame * CFrame.new(0, -0.1, 0)
  796. local MeAsh = Instance.new(“CylinderMesh”)
  797. MeAsh.Parent = G
  798. if (targ == nil) or (targ.Anchored == true) then
  799. MeAsh.Scale = Vector3.new(0.1, (Place0.p-pop).magnitude, 0.1)
  800. G.CFrame = CFrame.new((Place0.p + pop)/2, Place0.p) * CFrame.fromEulerAnglesXYZ(math.pi/2, 0, 0)
  801. else
  802. BP.Parent = targ
  803. BP.position = (PersonT.CFrame + (mouse.Hit.lookVector * 8) + Pos).p + Vector3.new(0, 5.7, 0)
  804. BG.Parent = targ
  805. BG.cframe = CFrame.new(targ.Position, PersonT.Position)
  806. if (targ.Parent == nil) or (targ.Parent.Parent == Person.Character) then
  807. BP.Parent = nil
  808. BG.Parent = nil
  809. end
  810. MeAsh.Scale = Vector3.new(0.1, (Place0.p – targ.Position).magnitude, 0.1)
  811. G.CFrame = CFrame.new((Place0.p + (targ.Position + Pos))/2, Place0.p) * CFrame.fromEulerAnglesXYZ(math.pi/2, 0, 0)
  812. end
  813. wait()
  814. G:Remove()
  815. end
  816. Debounce = false
  817. EnableLimb(NormalHand)
  818. BP.Parent = nil
  819. BG.Parent = nil
  820. end
  821. end
  822. end
  823. end
  824. function LiftKey(key, mouse)
  825. key = key:upper()
  826. if (key == “L”) then
  827. if (Person.Character.Suit.Band:findFirstChild(“Smoke”) ~= nil) then
  828. Person.Character.Suit.Band.Smoke:remove()
  829. EnableLimb(NormalHand)
  830. end
  831. end
  832. if (key == “H”) then
  833. if (Person.Character:findFirstChild(“Grapple Lazer”) ~= nil) then
  834. Lazer = false
  835. end
  836. end
  837. if (key == “J”) then
  838. if (Person.Character:findFirstChild(“Kill Lazer”) ~= nil) then
  839. Lazer = false
  840. end
  841. end
  842. if (key == “K”) then
  843. if (Person.Character:findFirstChild(“Grab Lazer”) ~= nil) then
  844. Lazer = false
  845. end
  846. end
  847. if (key == “X”) then
  848. if (Person.Character:findFirstChild(” Lazer”) ~= nil) then
  849. Lazer = false
  850. end
  851. end
  852. end
  853. function Select(mouse)
  854. mouse.Button1Down:connect(function() Click(mouse) end)
  855. mouse.Button1Up:connect(function() Release(mouse) end)
  856. mouse.KeyDown:connect(function(key) PressKey(key, mouse) end)
  857. mouse.KeyUp:connect(function(key) LiftKey(key, mouse) end)
  858. end
  859. function Deselect(mouse)
  860. Hold = false
  861. Lazer = false
  862. Flight = false
  863. end
  864. Bin.Selected:connect(Select)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement