Advertisement
lafur

Untitled

Feb 8th, 2019
180
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. --https://github.com/Mokiros/roblox-FE-compatibility
  2. if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
  3. local Player,game,owner = owner,game
  4. local RealPlayer = Player
  5. do print("FE Compatibility code V2 by Mokiros")local RealPlayer=RealPlayer;script.Parent=RealPlayer.Character;local a=function(b)b[1].f[b[2]]=nil end;local c={__index={disconnect=a,Disconnect=a}}local d={__index={Connect=function(b,e)local f=tostring(math.random(0,10000))while b.f[f]do f=tostring(math.random(0,10000))end;b.f[f]=e;return setmetatable({b,f},c)end}}d.__index.connect=d.__index.Connect;local function g()return setmetatable({f={}},d)end;local h={Hit=CFrame.new(),KeyUp=g(),KeyDown=g(),Button1Up=g(),Button1Down=g(),Button2Up=g(),Button2Down=g()}h.keyUp=h.KeyUp;h.keyDown=h.KeyDown;local i={InputBegan=g(),InputEnded=g()}local CAS={Actions={},BindAction=function(self,j,k,l,...)CAS.Actions[j]=k and{Name=j,Function=k,Keys={...}}or nil end}CAS.UnbindAction=CAS.BindAction;local function m(self,n,...)for o,e in pairs(self[n].f)do e(...)end end;h.T=m;i.T=m;local p=Instance.new("RemoteEvent")p.Name="UserInput_Event"p.OnServerEvent:Connect(function(q,r)if q~=RealPlayer then return end;h.Target=r.e;h.Hit=r.d;if not r.f then local s=r.c==Enum.UserInputState.Begin;if r.b==Enum.UserInputType.MouseButton1 then return h:T(s and"Button1Down"or"Button1Up")end;if r.b==Enum.UserInputType.MouseButton2 then return h:T(s and"Button2Down"or"Button2Up")end;for o,t in pairs(CAS.Actions)do for o,u in pairs(t.Keys)do if u==r.a then t.Function(t.Name,r.c,r)end end end;h:T(s and"KeyDown"or"KeyUp",r.a.Name:lower())i:T(s and"InputBegan"or"InputEnded",r,false)end end)p.Parent=NLS([==[local a=script:WaitForChild("UserInput_Event")local b=owner:GetMouse()local c=game:GetService("UserInputService")local d=function(e,f)if f then return end;a:FireServer({a=e.KeyCode,b=e.UserInputType,c=e.UserInputState,d=b.Hit,e=b.Target})end;c.InputBegan:Connect(d)c.InputEnded:Connect(d)local g,h;local i=game:GetService("RunService").Heartbeat;while true do if g~=b.Hit or h~=b.Target then g,h=b.Hit,b.Target;a:FireServer({f=1,Target=h,d=g})end;for j=1,2 do i:Wait()end end]==],script)local v=game;local w={__index=function(self,u)local x=rawget(self,"_RealService")if x then return typeof(x[u])=="function"and function(o,...)return x[u](x,...)end or x[u]end end,__newindex=function(self,u,y)local x=rawget(self,"_RealService")if x then x[u]=y end end}local function z(t,A)t._RealService=typeof(A)=="string"and v:GetService(A)or A;return setmetatable(t,w)end;local B={GetService=function(self,x)return rawget(self,x)or v:GetService(x)end,Players=z({LocalPlayer=z({GetMouse=function(self)return h end},Player)},"Players"),UserInputService=z(i,"UserInputService"),ContextActionService=z(CAS,"ContextActionService"),RunService=z({_btrs={},RenderStepped=v:GetService("RunService").Heartbeat,BindToRenderStep=function(self,j,o,k)self._btrs[j]=self.Heartbeat:Connect(k)end,UnbindFromRenderStep=function(self,j)self._btrs[j]:Disconnect()end},"RunService")}rawset(B.Players,"localPlayer",B.Players.LocalPlayer)B.service=B.GetService;z(B,game)game,owner=B,B.Players.LocalPlayer end plr = game.Players.LocalPlayer
  6. repeat wait() until plr.Character
  7. char = plr.Character
  8.  
  9. BRICKC = BrickColor.new
  10. inthenether = false
  11.  
  12. function createimage(Type, Parent, Face, ID)
  13. local image = Instance.new(Type,Parent)
  14. image.Face = Face
  15. image.Texture = ID
  16. end
  17. function createtexture(Parent, Face, ID, StudsU, StudsV, Transparency)
  18. local image = Instance.new("Texture",Parent)
  19. image.Face = Face
  20. image.Texture = ID
  21. image.StudsPerTileU = StudsU
  22. image.StudsPerTileV = StudsV
  23. image.Transparency = Transparency
  24. end
  25. function createpart(Parent, Material, BrickC, Anchored, CF, Name, Size, Collide, Orientation)
  26. local part = Instance.new("Part",Parent)
  27. part.Material = Material
  28. part.BrickColor = BRICKC(tostring(BrickC))
  29. part.Anchored = Anchored
  30. part.CFrame = CF
  31. part.Name = Name
  32. part.Size = Size
  33. part.CanCollide = Collide
  34. part.Orientation = Orientation
  35. end
  36. function createimageonallsides(ID, Parent)
  37. createimage("Decal", Parent, "Top", ID)
  38. createimage("Decal", Parent, "Bottom", ID)
  39. createimage("Decal", Parent, "Left", ID)
  40. createimage("Decal", Parent, "Right", ID)
  41. createimage("Decal",Parent, "Front", ID)
  42. createimage("Decal", Parent, "Back", ID)
  43. end
  44.  
  45. local NetherPortal = Instance.new("Model",workspace)
  46. NetherPortal.Name = "Portal"
  47.  
  48. local Nether = Instance.new("Model",char)
  49. Nether.Parent = nil
  50. Nether.Name = "Nether"
  51.  
  52.  
  53. function createportal()
  54. local part1 = createpart(NetherPortal, "Slate", BRICKC("Really black"), true, CFrame.new(-0.19, 18, -11.43),"Part1", Vector3.new(4,4,4), true, Vector3.new(0,0,0))
  55. local part2 = createpart(NetherPortal, "Slate", BRICKC("Really black"), true, CFrame.new(-12.19, 14, -11.43),"Part2", Vector3.new(4,4,4), true, Vector3.new(0,0,0))
  56. local part3 = createpart(NetherPortal, "Slate", BRICKC("Really black"), true, CFrame.new(-8.19, 18, -11.43),"Part3", Vector3.new(4,4,4), true, Vector3.new(0,0,0))
  57. local part4 = createpart(NetherPortal, "Slate", BRICKC("Really black"), true, CFrame.new(-4.19, 18, -11.43), "Part4", Vector3.new(4,4,4), true, Vector3.new(0,0,0))
  58. local part5 = createpart(NetherPortal, "Slate", BRICKC'Really black', true, CFrame.new(-0.19, 14, -11.43), "Part5", Vector3.new(4,4,4),true, Vector3.new(0,0,0))
  59. local part6 = createpart(NetherPortal, "Slate", BRICKC'Really black', true, CFrame.new(-12.19, 10, -11.43), "Part6", Vector3.new(4,4,4), true, Vector3.new(0,0,0))
  60. local part7 = createpart(NetherPortal, "Slate", BRICKC'Really black', true, CFrame.new(-12.19, 18, -11.43), "Part7", Vector3.new(4,4,4), true, Vector3.new(0,0,0))
  61. local part8 = createpart(NetherPortal, "Slate", BRICKC'Bright violet', true, CFrame.new(-6.142, 10, -11.466), "Part8", Vector3.new(8, 1.6, 12), false, Vector3.new(90,0,0))
  62. local part9 = createpart(NetherPortal, "Slate", BRICKC'Really black', true, CFrame.new(-0.19, 10, -11.43), "Part9", Vector3.new(4,4,4), true, Vector3.new(0,0,0))
  63. local part10 = createpart(NetherPortal, "Slate", BRICKC'Really black', true, CFrame.new(-12.19, 6, -11.43), "Part10", Vector3.new(4,4,4), true , Vector3.new(0,0,0))
  64. local part11 = createpart(NetherPortal, "Slate", BRICKC'Really black', true, CFrame.new(-12.19, 2, -11.43), "Part11", Vector3.new(4,4,4), true, Vector3.new(0,0,0))
  65. local part12 = createpart(NetherPortal, "Slate", BRICKC'Really black', true, CFrame.new(-4.19, 2, -11.43), "Part12", Vector3.new(4,4,4), true, Vector3.new(0,0,0))
  66. local part13 = createpart(NetherPortal, "Slate", BRICKC'Really black', true, CFrame.new(-0.19, 6, -11.43), "Part13", Vector3.new(4,4,4), true, Vector3.new(0,0,0))
  67. local part14 = createpart(NetherPortal, "Slate", BRICKC'Really black', true, CFrame.new(-8.19, 2, -11.43), "Part14", Vector3.new(4,4,4), true, Vector3.new(0,0,0))
  68. local part15 = createpart(NetherPortal, "Slate", BRICKC'Really black', true, CFrame.new(-0.19, 2, -11.43), "Part15", Vector3.new(4,4,4), true, Vector3.new(0,0,0))
  69. end
  70.  
  71. createportal()
  72.  
  73.  
  74. function generatenether()
  75. local base = createpart(Nether, "Plastic", BRICKC'Bright green', true, CFrame.new(-11.935, 5000, -45.017), "Base", Vector3.new(377.7, 399.93, 2),true, Vector3.new(90,0,0))
  76. local wall1 = createpart(Nether, "Plastic", BRICKC'Bright green', true, CFrame.new(-191.117, 5212.282, -43.413), "Wall1", Vector3.new(404.32, 421.87, 4),true, Vector3.new(0, -90, 0))
  77. local wall2 = createpart(Nether, "Plastic", BRICKC'Bright green', true, CFrame.new(178.849, 5212.282, -43.413), "Wall2", Vector3.new(404.32, 421.87, 4),true, Vector3.new(0, 90, 0))
  78. local wall3 = createpart(Nether, "Plastic", BRICKC'Bright green', true, CFrame.new(-8.58, 5212.282, -244.122), "Wall3", Vector3.new(370.83, 421.87, 4), true, Vector3.new(0, 180, 180))
  79. local wall4 = createpart(Nether, "Plastic", BRICKC'Bright green', true, CFrame.new(-8.58, 5212.282, 155.843), "Wall4", Vector3.new(370.83, 421.87, 4), true, Vector3.new(0, 180, 180))
  80. local roof = createpart(Nether, "Plastic", BRICKC'Bright green', true, CFrame.new(-11.935, 5415.161, -45.017), "Roof", Vector3.new(370.83, 421.87, 4), true, Vector3.new(-90, 0, 0))
  81. end
  82.  
  83.  
  84. for i,v in pairs(NetherPortal:GetChildren()) do
  85. if v.Name ~= "Part8" then
  86.  
  87. end
  88. if v.Name == "Part8" then
  89. createtexture(v, "Top", "http://www.roblox.com/asset/?id=77399998", 4 , 4, 0.1)
  90. createtexture(v, "Bottom", "http://www.roblox.com/asset/?id=77399998", 4, 4, 0.1)
  91. v.Transparency = 0.7
  92. end
  93. end
  94. timer = 50
  95. generatenether()
  96. local NetherTheme = Instance.new("Sound",char)
  97. NetherTheme.SoundId = "rbxassetid://169283546"
  98. NetherTheme.Volume = 4
  99. NetherTheme.Looped = true
  100. for i,v in pairs(Nether:GetChildren()) do
  101. if v.Name ~= "Base" then
  102. createtexture(v, "Front", "rbxassetid://75881126", 4, 4, 0)
  103. end
  104. if v.Name == "Base" and v.Name ~= "Wall4" then
  105. createtexture(v, "Front", "rbxassetid://42112689", 4, 4, 0)
  106. end
  107. if v.Name == "Wall4" then
  108. createtexture(v, "Back", "rbxassetid://75881126", 4, 4, 0)
  109. end
  110. v.Anchored = true
  111. v.CanCollide = true
  112. end
  113.  
  114.  
  115.  
  116.  
  117. screen = Instance.new("ScreenGui")
  118. frame = Instance.new("Frame", screen)
  119. frame.Size = UDim2.new(1,0 , 1,0)
  120. frame.BackgroundTransparency = 1
  121. frame.BackgroundColor3 = BRICKC'Royal purple'.Color
  122.  
  123. local idle = Instance.new("Sound",NetherPortal)
  124. idle.SoundId = "rbxassetid://144392025"
  125. idle.Volume = 4
  126. NetherPortal.Part8.Touched:connect(function(part)
  127. local human = part.Parent:FindFirstChildOfClass("Humanoid")
  128. if human then
  129. screen.Parent = game.Players[human.Parent.Name].PlayerGui
  130. for i = 1,timer do
  131. wait()
  132. frame.BackgroundTransparency = frame.BackgroundTransparency - 0.0005
  133. end
  134. Nether.Parent = char
  135. human.Parent.Torso.CFrame = Nether.Base.CFrame + Vector3.new(0, 5, 0)
  136. NetherTheme:Play()
  137. screen.Parent = nil
  138. inthenether = true
  139. end
  140. end)
  141. while true do
  142. wait()
  143. if not inthenether then
  144. wait(math.random(1,5))
  145. idle:Play()
  146. repeat wait() until idle.IsPlaying == false
  147. end
  148. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement