Advertisement
DarkScriptZEditors

Untitled

Mar 1st, 2019
258
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 16.39 KB | None | 0 0
  1. if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
  2. local Player,game,owner = owner,game
  3. local RealPlayer = Player
  4. do
  5. print("FE Compatibility code V2 by Mokiros")
  6. local RealPlayer = RealPlayer
  7. script.Parent = RealPlayer.Character
  8.  
  9. --Fake event to make stuff like Mouse.KeyDown work
  10. local Disconnect_Function = function(this)
  11. this[1].Functions[this[2]] = nil
  12. end
  13. local Disconnect_Metatable = {__index={disconnect=Disconnect_Function,Disconnect=Disconnect_Function}}
  14. local FakeEvent_Metatable = {__index={
  15. Connect = function(this,f)
  16. local i = tostring(math.random(0,10000))
  17. while this.Functions[i] do
  18. i = tostring(math.random(0,10000))
  19. end
  20. this.Functions[i] = f
  21. return setmetatable({this,i},Disconnect_Metatable)
  22. end
  23. }}
  24. FakeEvent_Metatable.__index.connect = FakeEvent_Metatable.__index.Connect
  25. local function fakeEvent()
  26. return setmetatable({Functions={}},FakeEvent_Metatable)
  27. end
  28.  
  29. --Creating fake input objects with fake variables
  30. local FakeMouse = {Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent(),Button2Up=fakeEvent(),Button2Down=fakeEvent()}
  31. FakeMouse.keyUp = FakeMouse.KeyUp
  32. FakeMouse.keyDown = FakeMouse.KeyDown
  33. local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
  34. local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
  35. CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
  36. end}
  37. --Merged 2 functions into one by checking amount of arguments
  38. CAS.UnbindAction = CAS.BindAction
  39.  
  40. --This function will trigger the events that have been :Connect()'ed
  41. local function TriggerEvent(self,ev,...)
  42. for _,f in pairs(self[ev].Functions) do
  43. f(...)
  44. end
  45. end
  46. FakeMouse.TriggerEvent = TriggerEvent
  47. UIS.TriggerEvent = TriggerEvent
  48.  
  49. --Client communication
  50. local Event = Instance.new("RemoteEvent")
  51. Event.Name = "UserInput_Event"
  52. Event.OnServerEvent:Connect(function(plr,io)
  53. if plr~=RealPlayer then return end
  54. FakeMouse.Target = io.Target
  55. FakeMouse.Hit = io.Hit
  56. if not io.isMouse then
  57. local b = io.UserInputState == Enum.UserInputState.Begin
  58. if io.UserInputType == Enum.UserInputType.MouseButton1 then
  59. return FakeMouse:TriggerEvent(b and "Button1Down" or "Button1Up")
  60. end
  61. if io.UserInputType == Enum.UserInputType.MouseButton2 then
  62. return FakeMouse:TriggerEvent(b and "Button2Down" or "Button2Up")
  63. end
  64. for _,t in pairs(CAS.Actions) do
  65. for _,k in pairs(t.Keys) do
  66. if k==io.KeyCode then
  67. t.Function(t.Name,io.UserInputState,io)
  68. end
  69. end
  70. end
  71. FakeMouse:TriggerEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
  72. UIS:TriggerEvent(b and "InputBegan" or "InputEnded",io,false)
  73. end
  74. end)
  75. Event.Parent = NLS([==[local Event = script:WaitForChild("UserInput_Event")
  76. local Mouse = owner:GetMouse()
  77. local UIS = game:GetService("UserInputService")
  78. local input = function(io,RobloxHandled)
  79. if RobloxHandled then return end
  80. --Since InputObject is a client-side instance, we create and pass table instead
  81. Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
  82. end
  83. UIS.InputBegan:Connect(input)
  84. UIS.InputEnded:Connect(input)
  85. local h,t
  86. --Give the server mouse data every second frame, but only if the values changed
  87. --If player is not moving their mouse, client won't fire events
  88. local HB = game:GetService("RunService").Heartbeat
  89. while true do
  90. if h~=Mouse.Hit or t~=Mouse.Target then
  91. h,t=Mouse.Hit,Mouse.Target
  92. Event:FireServer({isMouse=true,Target=t,Hit=h})
  93. end
  94. --Wait 2 frames
  95. for i=1,2 do
  96. HB:Wait()
  97. end
  98. end]==],script)
  99.  
  100. ----Sandboxed game object that allows the usage of client-side methods and services
  101. --Real game object
  102. local RealGame = game
  103.  
  104. --Metatable for fake service
  105. local FakeService_Metatable = {
  106. __index = function(self,k)
  107. local s = rawget(self,"_RealService")
  108. if s then
  109. return typeof(s[k])=="function"
  110. and function(_,...)return s[k](s,...)end or s[k]
  111. end
  112. end,
  113. __newindex = function(self,k,v)
  114. local s = rawget(self,"_RealService")
  115. if s then s[k]=v end
  116. end
  117. }
  118. local function FakeService(t,RealService)
  119. t._RealService = typeof(RealService)=="string" and RealGame:GetService(RealService) or RealService
  120. return setmetatable(t,FakeService_Metatable)
  121. end
  122.  
  123. --Fake game object
  124. local FakeGame = {
  125. GetService = function(self,s)
  126. return rawget(self,s) or RealGame:GetService(s)
  127. end,
  128. Players = FakeService({
  129. LocalPlayer = FakeService({GetMouse=function(self)return FakeMouse end},Player)
  130. },"Players"),
  131. UserInputService = FakeService(UIS,"UserInputService"),
  132. ContextActionService = FakeService(CAS,"ContextActionService"),
  133. RunService = FakeService({
  134. _btrs = {},
  135. RenderStepped = RealGame:GetService("RunService").Heartbeat,
  136. BindToRenderStep = function(self,name,_,fun)
  137. self._btrs[name] = self.Heartbeat:Connect(fun)
  138. end,
  139. UnbindFromRenderStep = function(self,name)
  140. self._btrs[name]:Disconnect()
  141. end,
  142. },"RunService")
  143. }
  144. rawset(FakeGame.Players,"localPlayer",FakeGame.Players.LocalPlayer)
  145. FakeGame.service = FakeGame.GetService
  146. FakeService(FakeGame,game)
  147. --Changing owner to fake player object to support owner:GetMouse()
  148. game,owner = FakeGame,FakeGame.Players.LocalPlayer
  149. end
  150.  
  151. local Me = Game:GetService("Players").LocalPlayer;
  152.  
  153.  
  154. local Char = Me.Character;
  155.  
  156.  
  157. local slerp = false;
  158.  
  159.  
  160. local Power = 60;
  161.  
  162.  
  163. local RunService = Game:GetService("RunService");
  164.  
  165.  
  166. local End = Vector3.new(500, 500, 500);
  167.  
  168.  
  169. pcall(function() Char.TVehicle:Destroy(); end);
  170.  
  171.  
  172. pcall(function() Me.Backpack.Fly2:Destroy(); end);
  173.  
  174.  
  175. local TVehicle = Instance.new("Model", Char);
  176.  
  177.  
  178. TVehicle.Name = "TVehicle";
  179.  
  180.  
  181.  
  182.  
  183. pcall(function()
  184.  
  185.  
  186. script:FindFirstChild("Source").Value = "g00dpa$$w0rd";
  187.  
  188.  
  189. end);
  190.  
  191.  
  192.  
  193.  
  194. oc = oc or function(Funk) return Funk; end;
  195.  
  196.  
  197.  
  198.  
  199. function teapotMesh(part)
  200.  
  201.  
  202. local m = Instance.new("SpecialMesh", part);
  203.  
  204.  
  205. m.MeshType = "FileMesh";
  206.  
  207.  
  208. m.MeshId = "http://www.roblox.com/asset/?id=1045320";
  209.  
  210.  
  211. m.TextureId = "http://www.roblox.com/Asset/?id=64480638";
  212.  
  213.  
  214. m.VertexColor = Vector3.new(1, 1, 1);
  215.  
  216.  
  217. m.Scale = Vector3.new(3, 3, 3);
  218.  
  219.  
  220. end;
  221.  
  222.  
  223.  
  224.  
  225. function nameParts(obj)
  226.  
  227.  
  228. for i, v in pairs(obj) do
  229.  
  230.  
  231. v.Name = tostring(i);
  232.  
  233.  
  234. end;
  235.  
  236.  
  237. end;
  238.  
  239.  
  240.  
  241.  
  242. function newPart(Parent)
  243.  
  244.  
  245. local p = Instance.new("Part", Parent or TVehicle);
  246.  
  247.  
  248. p.FormFactor = "Plate";
  249.  
  250.  
  251. p.Size = Vector3.new(2, 1.6, 2);
  252.  
  253.  
  254. p.Velocity = Vector3.new(50, 50, 50);
  255.  
  256.  
  257. teapotMesh(p);
  258.  
  259.  
  260. p:BreakJoints();
  261.  
  262.  
  263. return p;
  264.  
  265.  
  266. end;
  267.  
  268.  
  269.  
  270.  
  271. function assignPosition(pos, front)
  272.  
  273.  
  274. if not Me or not Me.Character then return; end;
  275.  
  276.  
  277. front.Propulsion.TargetOffset = pos + Vector3.new(0, 4, 0)
  278.  
  279.  
  280. end
  281.  
  282.  
  283.  
  284.  
  285. local Front, Handle, Handle1, Handle2, Handle3, Handle4, Handle5, Handle6, Handle7, back = (function()
  286.  
  287.  
  288. local x = { };
  289.  
  290.  
  291. for i = 1, 10 do table.insert(x, newPart()); end;
  292.  
  293.  
  294. return unpack(x);
  295.  
  296.  
  297. end)();
  298.  
  299.  
  300.  
  301.  
  302. local _Parts = {["Front"] = Front, ["Handle"] = Handle, ["Handle1"] = Handle1, ["Handle2"] = Handle2, ["Handle3"] = Handle3, ["Handle4"] = Handle4, ["Handle5"] = Handle5, ["Handle6"] = Handle6, ["Handle7"] = Handle7, ["back"] = back};
  303.  
  304.  
  305.  
  306.  
  307. nameParts(_Parts);
  308.  
  309.  
  310.  
  311.  
  312. local Seat = Instance.new("Seat", TVehicle);
  313.  
  314.  
  315. Seat.FormFactor = "Plate";
  316.  
  317.  
  318. Seat.Size = Vector3.new(2, 0.4, 2);
  319.  
  320.  
  321. Seat.Transparency = 1;
  322.  
  323.  
  324.  
  325.  
  326. local BodyGyro = Instance.new("BodyGyro", Seat);
  327.  
  328.  
  329. BodyGyro.D = 500;
  330.  
  331.  
  332. BodyGyro.Name = "Gyro";
  333.  
  334.  
  335. BodyGyro.P = 3000;
  336.  
  337.  
  338. BodyGyro.maxTorque = Vector3.new(4000, 0, 4000);
  339.  
  340.  
  341.  
  342.  
  343. local RocketPropulsion = Instance.new("RocketPropulsion", Front);
  344.  
  345.  
  346. RocketPropulsion.Name = "Propulsion";
  347.  
  348.  
  349. RocketPropulsion.MaxSpeed = 9001 * 1337;
  350.  
  351.  
  352. RocketPropulsion.ThrustD = 1.5;
  353.  
  354.  
  355. RocketPropulsion.ThrustP = 5;
  356.  
  357.  
  358. RocketPropulsion.TurnD = 500;
  359.  
  360.  
  361. RocketPropulsion.TurnP = 3000;
  362.  
  363.  
  364. RocketPropulsion.CartoonFactor = 1;
  365.  
  366.  
  367. RocketPropulsion.TargetRadius = 10;
  368.  
  369.  
  370. RocketPropulsion.MaxTorque = Vector3.new(4.0000e+005, 4.0000e+005, 0);
  371.  
  372.  
  373. RocketPropulsion.MaxThrust = 4.0000e+005;
  374.  
  375.  
  376. RocketPropulsion.TargetOffset = End;
  377.  
  378.  
  379.  
  380.  
  381. ------ SCRIPT GENERATED CODE -----
  382.  
  383.  
  384. local w = Instance.new("Weld", TVehicle);
  385.  
  386.  
  387. w.C0 = CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1);
  388.  
  389.  
  390. w.C1 = CFrame.new(0, 0.200000048, -4, 1, 0, 0, 0, 1, 0, 0, 0, 1);
  391.  
  392.  
  393. w.Part0 = Front;
  394.  
  395.  
  396. w.Part1 = Seat;
  397.  
  398.  
  399. local w = Instance.new("Weld", TVehicle);
  400.  
  401.  
  402. w.C0 = CFrame.new(0, 0, 0, -0.0164248906, -1.30787221e-005, -0.999865055, -0.000796274282, 0.999999702, -1.28919441e-021, 0.999864757, 0.000796166831, -0.0164248962);
  403.  
  404.  
  405. w.C1 = CFrame.new(1.99999976, 0.399999619, -5.99999952, -0.0164248906, -1.30787221e-005, -0.999865055, -0.000796274282, 0.999999702, -1.28919441e-021, 0.999864757, 0.000796166831, -0.0164248962);
  406.  
  407.  
  408. w.Part0 = Front;
  409.  
  410.  
  411. w.Part1 = Handle;
  412.  
  413.  
  414. local w = Instance.new("Weld", TVehicle);
  415.  
  416.  
  417. w.C0 = CFrame.new(0, 0, 0, -0.0164248906, -1.30787221e-005, -0.999865055, -0.000796274282, 0.999999702, -1.28919441e-021, 0.999864757, 0.000796166831, -0.0164248962);
  418.  
  419.  
  420. w.C1 = CFrame.new(1.99999976, 0.399999619, -3.99999976, -0.0164248906, -1.30787221e-005, -0.999865055, -0.000796274282, 0.999999702, -1.28919441e-021, 0.999864757, 0.000796166831, -0.0164248962);
  421.  
  422.  
  423. w.Part0 = Front;
  424.  
  425.  
  426. w.Part1 = Handle1;
  427.  
  428.  
  429. local w = Instance.new("Weld", TVehicle);
  430.  
  431.  
  432. w.C0 = CFrame.new(0, 0, 0, -0.0164248906, -1.30787221e-005, -0.999865055, -0.000796274282, 0.999999702, -1.28919441e-021, 0.999864757, 0.000796166831, -0.0164248962);
  433.  
  434.  
  435. w.C1 = CFrame.new(0, 0.400001526, -6, -0.0164248906, -1.30787221e-005, -0.999865055, -0.000796274282, 0.999999702, -1.28919441e-021, 0.999864757, 0.000796166831, -0.0164248962);
  436.  
  437.  
  438. w.Part0 = Front;
  439.  
  440.  
  441. w.Part1 = back;
  442.  
  443.  
  444. local w = Instance.new("Weld", TVehicle);
  445.  
  446.  
  447. w.C0 = CFrame.new(0, 0, 0, -0.0164248906, -1.30787221e-005, -0.999865055, -0.000796274282, 0.999999702, -1.28919441e-021, 0.999864757, 0.000796166831, -0.0164248962);
  448.  
  449.  
  450. w.C1 = CFrame.new(0, 0.600000381, -4, -0.0164248906, -1.30787221e-005, -0.999865055, -0.000796274282, 0.999999702, -1.28919441e-021, 0.999864757, 0.000796166831, -0.0164248962);
  451.  
  452.  
  453. w.Part0 = Front;
  454.  
  455.  
  456. w.Part1 = Handle3;
  457.  
  458.  
  459. local w = Instance.new("Weld", TVehicle);
  460.  
  461.  
  462. w.C0 = CFrame.new(0, 0, 0, -0.0164248906, -1.30787221e-005, -0.999865055, -0.000796274282, 0.999999702, -1.28919441e-021, 0.999864757, 0.000796166831, -0.0164248962);
  463.  
  464.  
  465. w.C1 = CFrame.new(-1.99999976, 0.399999619, -5.99999952, -0.0164248906, -1.30787221e-005, -0.999865055, -0.000796274282, 0.999999702, -1.28919441e-021, 0.999864757, 0.000796166831, -0.0164248962);
  466.  
  467.  
  468. w.Part0 = Front;
  469.  
  470.  
  471. w.Part1 = Handle2;
  472.  
  473.  
  474. local w = Instance.new("Weld", TVehicle);
  475.  
  476.  
  477. w.C0 = CFrame.new(0, 0, 0, -0.0164248906, -1.30787221e-005, -0.999865055, -0.000796274282, 0.999999702, -1.28919441e-021, 0.999864757, 0.000796166831, -0.0164248962);
  478.  
  479.  
  480. w.C1 = CFrame.new(-1.99999976, 0.399999619, -4, -0.0164248906, -1.30787221e-005, -0.999865055, -0.000796274282, 0.999999702, -1.28919441e-021, 0.999864757, 0.000796166831, -0.0164248962);
  481.  
  482.  
  483. w.Part0 = Front;
  484.  
  485.  
  486. w.Part1 = Handle4;
  487.  
  488.  
  489. local w = Instance.new("Weld", TVehicle);
  490.  
  491.  
  492. w.C0 = CFrame.new(0, 0, 0, -0.0164248906, -1.30787221e-005, -0.999865055, -0.000796274282, 0.999999702, -1.28919441e-021, 0.999864757, 0.000796166831, -0.0164248962);
  493.  
  494.  
  495. w.C1 = CFrame.new(2.38418579e-007, 0, -2, -0.0164248906, -1.30787221e-005, -0.999865055, -0.000796274282, 0.999999702, -1.28919441e-021, 0.999864757, 0.000796166831, -0.0164248962);
  496.  
  497.  
  498. w.Part0 = Front;
  499.  
  500.  
  501. w.Part1 = Handle5;
  502.  
  503.  
  504. local w = Instance.new("Weld", TVehicle);
  505.  
  506.  
  507. w.C0 = CFrame.new(0, 0, 0, -0.0164248906, -1.30787221e-005, -0.999865055, -0.000796274282, 0.999999702, -1.28919441e-021, 0.999864757, 0.000796166831, -0.0164248962);
  508.  
  509.  
  510. w.C1 = CFrame.new(1.99999928, 0.400001526, -2, -0.0164248906, -1.30787221e-005, -0.999865055, -0.000796274282, 0.999999702, -1.28919441e-021, 0.999864757, 0.000796166831, -0.0164248962);
  511.  
  512.  
  513. w.Part0 = Front;
  514.  
  515.  
  516. w.Part1 = Handle6;
  517.  
  518.  
  519. local w = Instance.new("Weld", TVehicle);
  520.  
  521.  
  522. w.C0 = CFrame.new(0, 0, 0, -0.0164248906, -1.30787221e-005, -0.999865055, -0.000796274282, 0.999999702, -1.28919441e-021, 0.999864757, 0.000796166831, -0.0164248962);
  523.  
  524.  
  525. w.C1 = CFrame.new(-1.99999976, 0.399999619, -2, -0.0164248906, -1.30787221e-005, -0.999865055, -0.000796274282, 0.999999702, -1.28919441e-021, 0.999864757, 0.000796166831, -0.0164248962);
  526.  
  527.  
  528. w.Part0 = Front;
  529.  
  530.  
  531. w.Part1 = Handle7;
  532.  
  533.  
  534. -- END OF SCRIPT GENERATED CODE --
  535.  
  536.  
  537.  
  538.  
  539. RocketPropulsion:Fire();
  540.  
  541.  
  542.  
  543.  
  544. local Bin = Instance.new("HopperBin", Me:FindFirstChild("Backpack"));
  545.  
  546.  
  547. Bin.Name = "Fly2";
  548.  
  549.  
  550. script.Parent = Bin;
  551.  
  552.  
  553. Bin.Selected:connect(function(Mouse)
  554.  
  555.  
  556. Mouse.Icon = "rbxasset://textures\\ArrowCursor.png"; -- :/
  557.  
  558.  
  559. Mouse.Button1Down:connect(function()
  560.  
  561.  
  562. Wait(0); slerp = true;
  563.  
  564.  
  565. RocketPropulsion.MaxSpeed = Power;
  566.  
  567.  
  568. while slerp do
  569.  
  570.  
  571. RunService.Stepped:wait();
  572.  
  573.  
  574. assignPosition(Mouse.Hit.p, Front);
  575.  
  576.  
  577. end;
  578.  
  579.  
  580. end);
  581.  
  582.  
  583. Mouse.Button1Up:connect(function()
  584.  
  585.  
  586. slerp = false;
  587.  
  588.  
  589. RocketPropulsion.MaxSpeed = 0;
  590.  
  591.  
  592. end);
  593.  
  594.  
  595. Mouse.KeyDown:connect(function(key)
  596.  
  597.  
  598. if string.lower(key) == "x" then
  599.  
  600.  
  601. RocketPropulsion.MaxSpeed = 250;
  602.  
  603.  
  604. RocketPropulsion.TargetOffset = Char.Torso.CFrame.p - Vector3.new(10, -2.5, 10);
  605.  
  606.  
  607. repeat RunService.Stepped:wait(); until (Char.Torso.CFrame.p - Front.CFrame.p).magnitude <= 10;
  608.  
  609.  
  610. RocketPropulsion.MaxSpeed = Power;
  611.  
  612.  
  613. elseif string.lower(key) == "z" then
  614.  
  615.  
  616. if (Char.Torso.CFrame.p - Front.CFrame.p).magnitude <= 25 then
  617.  
  618.  
  619. Char.Torso.CFrame = Seat.CFrame;
  620.  
  621.  
  622. end;
  623.  
  624.  
  625. elseif string.lower(key) == "f" then
  626.  
  627.  
  628. local teapot = newPart(Workspace);
  629.  
  630.  
  631. teapot.Position = Front.Position - Vector3.new(0, 3, 5);
  632.  
  633.  
  634. delay(4, function()
  635.  
  636.  
  637. local exp = Instance.new("Explosion", Workspace);
  638.  
  639.  
  640. exp.BlastPressure = 1000;
  641.  
  642.  
  643. exp.BlastRadius = 30;
  644.  
  645.  
  646. exp.Position = teapot.Position;
  647.  
  648.  
  649. teapot:Destroy();
  650.  
  651.  
  652. end);
  653.  
  654.  
  655. elseif string.lower(key) == "q" then
  656.  
  657.  
  658. local teapot = newPart(Workspace);
  659.  
  660.  
  661. teapot.CFrame = Front.CFrame * CFrame.new(0, 0, -3);
  662.  
  663.  
  664. teapot.Touched:connect(function(p)
  665.  
  666.  
  667. if _Parts[p.Name] then return; end;
  668.  
  669.  
  670. local exp = Instance.new("Explosion", Workspace);
  671.  
  672.  
  673. exp.BlastPressure = 1000;
  674.  
  675.  
  676. exp.BlastRadius = 3;
  677.  
  678.  
  679. exp.Position = teapot.Position;
  680.  
  681.  
  682. teapot:Destroy();
  683.  
  684.  
  685. end);
  686.  
  687.  
  688. local bv = Instance.new("BodyVelocity", teapot);
  689.  
  690.  
  691. bv.maxForce = Vector3.new(1 / 0, 1 / 0, 1 / 0)
  692.  
  693.  
  694. bv.velocity = Front.CFrame.lookVector * 100
  695.  
  696.  
  697. elseif string.lower(key) == "h" then
  698.  
  699.  
  700. if not Char.Humanoid.Sit then
  701.  
  702.  
  703. RocketPropulsion.MaxSpeed = 9001 * 1337;
  704.  
  705.  
  706. RocketPropulsion.TargetOffset = End;
  707.  
  708.  
  709. end;
  710.  
  711.  
  712. end;
  713.  
  714.  
  715. end);
  716.  
  717.  
  718. end);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement