Advertisement
sIendytubble

noot noot FE

Apr 17th, 2020
412
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.65 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.  
  86. local h,t
  87. --Give the server mouse data every second frame, but only if the values changed
  88. --If player is not moving their mouse, client won't fire events
  89. local HB = game:GetService("RunService").Heartbeat
  90. while true do
  91. if h~=Mouse.Hit or t~=Mouse.Target then
  92. h,t=Mouse.Hit,Mouse.Target
  93. Event:FireServer({isMouse=true,Target=t,Hit=h})
  94. end
  95. --Wait 2 frames
  96. for i=1,2 do
  97. HB:Wait()
  98. end
  99. end]==],script)
  100.  
  101. ----Sandboxed game object that allows the usage of client-side methods and services
  102. --Real game object
  103. local RealGame = game
  104.  
  105. --Metatable for fake service
  106. local FakeService_Metatable = {
  107. __index = function(self,k)
  108. local s = rawget(self,"_RealService")
  109. if s then
  110. return typeof(s[k])=="function"
  111. and function(_,...)return s[k](s,...)end or s[k]
  112. end
  113. end,
  114. __newindex = function(self,k,v)
  115. local s = rawget(self,"_RealService")
  116. if s then s[k]=v end
  117. end
  118. }
  119. local function FakeService(t,RealService)
  120. t._RealService = typeof(RealService)=="string" and RealGame:GetService(RealService) or RealService
  121. return setmetatable(t,FakeService_Metatable)
  122. end
  123.  
  124. --Fake game object
  125. local FakeGame = {
  126. GetService = function(self,s)
  127. return rawget(self,s) or RealGame:GetService(s)
  128. end,
  129. Players = FakeService({
  130. LocalPlayer = FakeService({GetMouse=function(self)return FakeMouse end},Player)
  131. },"Players"),
  132. UserInputService = FakeService(UIS,"UserInputService"),
  133. ContextActionService = FakeService(CAS,"ContextActionService"),
  134. RunService = FakeService({
  135. _btrs = {},
  136. RenderStepped = RealGame:GetService("RunService").Heartbeat,
  137. BindToRenderStep = function(self,name,_,fun)
  138. self._btrs[name] = self.Heartbeat:Connect(fun)
  139. end,
  140. UnbindFromRenderStep = function(self,name)
  141. self._btrs[name]:Disconnect()
  142. end,
  143. },"RunService")
  144. }
  145. rawset(FakeGame.Players,"localPlayer",FakeGame.Players.LocalPlayer)
  146. FakeGame.service = FakeGame.GetService
  147. FakeService(FakeGame,game)
  148. --Changing owner to fake player object to support owner:GetMouse()
  149. game,owner = FakeGame,FakeGame.Players.LocalPlayer
  150. end
  151.  
  152. pingudecal = "http://www.roblox.com/asset/?id=382332426"
  153.  
  154. local didpingu = false
  155.  
  156. local ScreenGui = Instance.new("ScreenGui",owner.PlayerGui)
  157.  
  158. ScreenGui.Name = "nooties"
  159.  
  160. local asd = Instance.new("TextButton",ScreenGui)
  161.  
  162. asd.BackgroundColor3 = Color3.new(0,0,0)
  163.  
  164. asd.BorderColor3 = Color3.new(0,0,0)
  165.  
  166. asd.Name = "nooties"
  167.  
  168. asd.Position = UDim2.new(1,-150,1,-90)
  169.  
  170. asd.Size = UDim2.new(0,150,0,45)
  171.  
  172. asd.Font = "SourceSansBold"
  173.  
  174. asd.FontSize = "Size32"
  175.  
  176. asd.Text = "Noot Noot!"
  177.  
  178. asd.TextColor3 = Color3.new(255,255,255)
  179.  
  180. asd.MouseButton1Down:connect(function()
  181.  
  182. if didpingu == false then
  183.  
  184. didpingu = true
  185.  
  186. for i,v in pairs(game.Players:GetChildren()) do
  187.  
  188. if v:IsA("Player") then
  189.  
  190. local nooties = Instance.new("Sound",workspace)
  191.  
  192. nooties.SoundId = "http://www.roblox.com/asset/?id=142912516"
  193.  
  194. nooties.Volume = 1
  195.  
  196. nooties.Looped = true
  197.  
  198. nooties:Play()
  199.  
  200. end
  201.  
  202. end
  203.  
  204. wait(12)
  205.  
  206. local Sky = Instance.new("Sky",game.Lighting)
  207.  
  208. Sky.SkyboxBk = pingudecal
  209.  
  210. Sky.SkyboxDn = pingudecal
  211.  
  212. Sky.SkyboxFt = pingudecal
  213.  
  214. Sky.SkyboxLf = pingudecal
  215.  
  216. Sky.SkyboxRt = pingudecal
  217.  
  218. Sky.SkyboxUp = pingudecal
  219.  
  220. local function modelasd()
  221.  
  222. for i,v in pairs(workspace:GetChildren()) do
  223.  
  224. if v:IsA("Model") then
  225.  
  226. for i,a in pairs(v:GetChildren()) do
  227.  
  228. local top = Instance.new("Decal",a)
  229.  
  230. top.Face = "Top"
  231.  
  232. top.Texture = pingudecal
  233.  
  234. local btm = Instance.new("Decal",a)
  235.  
  236. btm.Face = "Bottom"
  237.  
  238. btm.Texture = pingudecal
  239.  
  240. local lft = Instance.new("Decal",a)
  241.  
  242. lft.Face = "Left"
  243.  
  244. lft.Texture = pingudecal
  245.  
  246. local rft = Instance.new("Decal",a)
  247.  
  248. rft.Face = "Right"
  249.  
  250. rft.Texture = pingudecal
  251.  
  252. local frnt = Instance.new("Decal",a)
  253.  
  254. frnt.Face = "Front"
  255.  
  256. frnt.Texture = pingudecal
  257.  
  258. local bk = Instance.new("Decal",a)
  259.  
  260. bk.Face = "Back"
  261.  
  262. bk.Texture = pingudecal
  263.  
  264. local VTest = Instance.new("ParticleEmitter")
  265.  
  266. VTest.Parent = a
  267.  
  268. VTest.Texture = pingudecal
  269.  
  270. VTest.Speed = NumberRange.new(200)
  271.  
  272. VTest.Rate = 200
  273.  
  274. VTest.Size = NumberSequence.new(10000,10000)
  275.  
  276. VTest.Lifetime = NumberRange.new(1000)
  277.  
  278. local pepe = coroutine.create(function()
  279.  
  280. while wait() do
  281.  
  282. local Explosion = Instance.new("Explosion",a)
  283.  
  284. Explosion.BlastRadius = 10000
  285.  
  286. end
  287.  
  288. end)
  289.  
  290. coroutine.resume(pepe)
  291.  
  292. end
  293.  
  294. end
  295.  
  296. end
  297.  
  298. end
  299.  
  300. local function partasd()
  301.  
  302. for i,a in pairs(workspace:GetChildren()) do
  303.  
  304. local top = Instance.new("Decal",a)
  305.  
  306. top.Face = "Top"
  307.  
  308. top.Texture = pingudecal
  309.  
  310. local btm = Instance.new("Decal",a)
  311.  
  312. btm.Face = "Bottom"
  313.  
  314. btm.Texture = pingudecal
  315.  
  316. local lft = Instance.new("Decal",a)
  317.  
  318. lft.Face = "Left"
  319.  
  320. lft.Texture = pingudecal
  321.  
  322. local rft = Instance.new("Decal",a)
  323.  
  324. rft.Face = "Right"
  325.  
  326. rft.Texture = pingudecal
  327.  
  328. local frnt = Instance.new("Decal",a)
  329.  
  330. frnt.Face = "Front"
  331.  
  332. frnt.Texture = pingudecal
  333.  
  334. local bk = Instance.new("Decal",a)
  335.  
  336. bk.Face = "Back"
  337.  
  338. bk.Texture = pingudecal
  339.  
  340. local VTest = Instance.new("ParticleEmitter")
  341.  
  342. VTest.Parent = a
  343.  
  344. VTest.Texture = pingudecal
  345.  
  346. VTest.Speed = NumberRange.new(200)
  347.  
  348. VTest.Rate = 200
  349.  
  350. VTest.Lifetime = NumberRange.new(1000)
  351.  
  352. VTest.Size = NumberSequence.new(10000,10000)
  353.  
  354. local pepe = coroutine.create(function()
  355.  
  356. while wait() do
  357.  
  358. if a.Name ~= "Head" or "Torso" or "Left Arm" or "Right Arm" or "Left Leg" or "Right Leg" then
  359.  
  360. local Explosion = Instance.new("Explosion",a)
  361.  
  362. Explosion.BlastRadius = 10000
  363.  
  364. end
  365.  
  366. end
  367.  
  368. end)
  369.  
  370. coroutine.resume(pepe)
  371.  
  372. end
  373.  
  374. end
  375.  
  376. partasd()
  377.  
  378. modelasd()
  379.  
  380. else
  381.  
  382. warn("Already Ran! Did not execute the script!")
  383.  
  384. end
  385. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement