Advertisement
Luiswhut

Helicopter mod

Jul 9th, 2016
327
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. --[[Helicopter - Made 100% by EthanComputerMad - Prototype
  2. THIS IS A LOCALSCRIPT
  3. COMMANDS:
  4. SAY EJECT TO EJECT YOUR PASSENGER
  5. SAY LEAVE TO GET OUT
  6. TO GET IN OR LET A PASSENGER IN APPROACH THE MIDDLE OF THE HELICOPTER
  7. ]]
  8. wait(1)
  9. speed = 3
  10. turnspeed = math.pi / 90
  11. vspeed = 1
  12. isinheli = true
  13. function loadheli()
  14. p = Instance.new("Part", game.Workspace)
  15. p.Name = game.Players.LocalPlayer.Name .. "Heli"
  16. p.Anchored = true
  17. p.CFrame = CFrame.new(game.Players.LocalPlayer.Character.Torso.CFrame.X, game.Players.LocalPlayer.Character.Torso.CFrame.Y, game.Players.LocalPlayer.Character.Torso.CFrame.Z) + Vector3.new(0, 30, 0)
  18. p.Size = Vector3.new(6, 2.4, 5)
  19. m = Instance.new("SpecialMesh", p)
  20. m.MeshType = Enum.MeshType.FileMesh
  21. m.MeshId = "http://www.roblox.com/asset/?id=430342962"
  22. m.Scale = Vector3.new(1, 1, 1)
  23. m.TextureId = "http://www.roblox.com/asset/?id=102396382"
  24. return p
  25. end
  26. pl = game.Players.LocalPlayer
  27. cam = game.Workspace.CurrentCamera
  28. mouse = pl:GetMouse()
  29. pcall(function() game.Workspace[pl.Name .. "Heli"]:Destroy() end)
  30. loadheli()
  31. heli = game.Workspace[pl.Name .. "Heli"]
  32. mf = false
  33. mb = false
  34. tl = false
  35. tr = false
  36. gu = false
  37. gd = false
  38. movement = coroutine.create(function(h) while true do wait() if isinheli == true then if mf == true then h.CFrame = h.CFrame * CFrame.new(0, 0, 0 - speed) end
  39. if mb == true then h.CFrame = h.CFrame * CFrame.new(0, 0, speed) end
  40. if tl == true then h.CFrame = h.CFrame * CFrame.Angles(0, turnspeed, 0) end
  41. if tr == true then h.CFrame = h.CFrame * CFrame.Angles(0, 0 - turnspeed, 0) end
  42. if gu == true then h.CFrame = h.CFrame + Vector3.new(0, vspeed, 0) end
  43. if gd == true then h.CFrame = h.CFrame + Vector3.new(0, 0 - vspeed, 0) end
  44. end
  45. end
  46. end)
  47. coroutine.resume(movement, heli)
  48. h = Instance.new("Hint", game.Workspace)
  49. h.Text = ""
  50. candosmoke = false
  51. spos = nil
  52. spos3 = nil
  53. pcall(function() spos = game.Workspace.Base.CFrame spos3 = game.Workspace.Base.Position base = game.Workspace.Base candosmoke = true end)
  54. if spos == nil then pcall(function() spos = game.Workspace["CLWorldFile - Really dont remove"].Base.CFrame spos3 = game.Workspace["CLWorldFile - Really dont remove"].Base.Position base = game.Workspace["CLWorldFile - Really dont remove"].Base candosmoke = true end) end
  55.  
  56. if candosmoke == false then else
  57. smoke = coroutine.create(function(h, b)
  58. for i= 1, 8 do p = Instance.new("Part", h) p.Anchored = true p.CanCollide = false p.Transparency = 1 p.Name = i .. "s" s = Instance.new("Smoke", p) s.Enabled = false s.RiseVelocity = 5 s.Opacity = 0.3 s.Color = Color3.new(153 / 255, 102 / 255, 51 / 255) s.Name = "S" end
  59. while true do wait() for i= 1, 8 do h[i .. "s"].CFrame = CFrame.new(Vector3.new(h.Position.x, b.Position.y, h.Position.z)) * CFrame.Angles(math.pi / 2, 0, math.pi / 4 * (i - 1)) end
  60. if h.Position.y < spos3.y + 15 then
  61. for i= 1, 8 do wait() h[i .. "s"]:GetChildren()[1].Enabled = true end else
  62. for i= 1, 8 do wait() h[i .. "s"]:GetChildren()[1].Enabled = false end end
  63. end end)
  64. coroutine.resume(smoke, heli, base)
  65. end
  66. mchar = coroutine.create(function(c)
  67. while true do wait() if isinheli == true then pcall(function()
  68. c.Torso.Anchored = true
  69. c.Torso.CFrame = heli.CFrame * CFrame.new(0, -1.8, -8)
  70. end) end end end)
  71. coroutine.resume(mchar, pl.Character)
  72. dawooh = coroutine.create(function()
  73. while true do wait() if isinheli == true then else
  74. mf = false
  75. mb = false
  76. tl = false
  77. tr = false
  78. gu = false
  79. gd = false
  80. ucs = false end end end)
  81. coroutine.resume(dawooh)
  82. cam.CameraSubject = heli
  83. cam.CameraType = Enum.CameraType.Track
  84. cam.FieldOfView = 80
  85. mouse.KeyDown:connect(function(key)
  86. k = string.byte(key)
  87. if k == 17 then --[[Up arrow]]
  88. mf = true
  89. end
  90. if k == 18 then --[[Down arrow]]
  91. mb = true
  92. end
  93. if k == 20 then --[[Left arrow]]
  94. tl = true
  95. end
  96. if k == 19 then --[[Right arrow]]
  97. tr = true
  98. end
  99. if key == "w" then
  100. gu = true
  101. end
  102. if key == "s" then
  103. gd = true
  104. end
  105. end)
  106.  
  107. mouse.KeyUp:connect(function(key)
  108. k = string.byte(key)
  109. if k == 17 then --[[Up arrow]]
  110. mf = false
  111. end
  112. if k == 18 then --[[Down arrow]]
  113. mb = false
  114. end
  115. if k == 20 then --[[Left arrow]]
  116. tl = false
  117. end
  118. if k == 19 then --[[Right arrow]]
  119. tr = false
  120. end
  121. if key == "w" then
  122. gu = false
  123. end
  124. if key == "s" then
  125. gd = false
  126. end
  127. end)
  128. occupied = false
  129. ucs = false
  130. heli.Touched:connect(function(c)
  131. if c.Parent.Name == pl.Name then
  132. isinheli = true
  133. else
  134. if occupied == false then else return end
  135. if c.Parent:FindFirstChild("Humanoid") ~= nil then else return end
  136. occupied = true
  137. ucs = true
  138. while ucs == true do wait()
  139. pcall(function() c.Parent.Torso.Anchored = true c.Parent.Torso.CFrame = heli.CFrame end) end
  140. pcall(function()
  141. c.Parent.Torso.CFrame = c.Parent.Torso.CFrame * CFrame.Angles(0, math.pi / 2, 0)
  142. c.Parent.Torso.CFrame = c.Parent.Torso.CFrame * CFrame.new(0, 0, 0 - 7)
  143. c.Parent.Torso.Anchored = false
  144. occupied = false
  145. end)
  146. end
  147. end)
  148.  
  149. pl.Chatted:connect(function(msg)
  150. lmsg = string.lower(msg)
  151. if lmsg == "eject" then ucs = false end
  152. if lmsg == "leave" then isinheli = false pl.Character.Torso.CFrame = pl.Character.Torso.CFrame * CFrame.Angles(0, math.pi / 2, 0) pl.Character.Torso.CFrame = pl.Character.Torso.CFrame * CFrame.new(0, 0, 0 - 5) pl.Character.Torso.Anchored = false
  153. cam.CameraSubject = pl.Character.Head
  154. cam.CameraType = Enum.CameraType.Track end
  155. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement