copra50

cube

Jun 25th, 2017
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.93 KB | None | 0 0
  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,Mouse,mouse,UserInputService,ContextActionService = owner
  4. local RealPlayer = Player
  5. do print("FE Compatibility code by Mokiros")local a=RealPlayer;script.Parent=a.Character;local b=Instance.new("RemoteEvent")b.Name="UserInput_Event"local function c()local d={_fakeEvent=true,Functions={},Connect=function(self,e)table.insert(self.Functions,e)end}d.connect=d.Connect;return d end;local f={Target=nil,Hit=CFrame.new(),KeyUp=c(),KeyDown=c(),Button1Up=c(),Button1Down=c(),Button2Up=c(),Button2Down=c()}local g={InputBegan=c(),InputEnded=c()}local CAS={Actions={},BindAction=function(self,h,i,j,...)CAS.Actions[h]=i and{Name=h,Function=i,Keys={...}}or nil end}CAS.UnbindAction=CAS.BindAction;local function k(self,l,...)local d=f[l]if d and d._fakeEvent then for m,e in pairs(d.Functions)do e(...)end end end;f.TrigEvent=k;g.TrigEvent=k;b.OnServerEvent:Connect(function(n,o)if n~=a then return end;f.Target=o.Target;f.Hit=o.Hit;if not o.isMouse then local p=o.UserInputState==Enum.UserInputState.Begin;if o.UserInputType==Enum.UserInputType.MouseButton1 then return f:TrigEvent(p and"Button1Down"or"Button1Up")end;if o.UserInputType==Enum.UserInputType.MouseButton2 then return f:TrigEvent(p and"Button2Down"or"Button2Up")end;for m,d in pairs(CAS.Actions)do for m,q in pairs(d.Keys)do if q==o.KeyCode then d.Function(d.Name,o.UserInputState,o)end end end;f:TrigEvent(p and"KeyDown"or"KeyUp",o.KeyCode.Name:lower())g:TrigEvent(p and"InputBegan"or"InputEnded",o,false)end end)b.Parent=NLS([==[local a=game:GetService("Players").LocalPlayer;local b=script:WaitForChild("UserInput_Event")local c=a:GetMouse()local d=game:GetService("UserInputService")local e=function(f,g)if g then return end;b:FireServer({KeyCode=f.KeyCode,UserInputType=f.UserInputType,UserInputState=f.UserInputState,Hit=c.Hit,Target=c.Target})end;d.InputBegan:Connect(e)d.InputEnded:Connect(e)local h,i;while wait(1/30)do if h~=c.Hit or i~=c.Target then h,i=c.Hit,c.Target;b:FireServer({isMouse=true,Target=i,Hit=h})end end]==],Player.Character)local r=game;local s={__index=function(self,q)local t=rawget(self,"_RealService")if t then return typeof(t[q])=="function"and function(m,...)return t[q](t,...)end or t[q]end end,__newindex=function(self,q,u)local t=rawget(self,"_RealService")if t then t[q]=u end end}local function v(d,w)d._RealService=typeof(w)=="string"and r:GetService(w)or w;return setmetatable(d,s)end;local x={GetService=function(self,t)return rawget(self,t)or r:GetService(t)end,Players=v({LocalPlayer=v({GetMouse=function(self)return f end},Player)},"Players"),UserInputService=v(g,"UserInputService"),ContextActionService=v(CAS,"ContextActionService"),RunService=v({_btrs={},RenderStepped=r:GetService("RunService").Heartbeat,BindToRenderStep=function(self,h,m,i)self._btrs[h]=self.Heartbeat:Connect(i)end,UnbindFromRenderStep=function(self,h)self._btrs[h]:Disconnect()end},"RunService")}rawset(x.Players,"localPlayer",x.Players.LocalPlayer)x.service=x.GetService;v(x,game)game,owner=x,x.Players.LocalPlayer end
  6.  
  7. wait(1)
  8.  
  9. local p = game.Players.LocalPlayer
  10. local char = p.Character
  11. local size = 8
  12. part = function()
  13.  
  14. local a = Instance.new("Part", script)
  15. a.Anchored = true
  16. a.CanCollide = true
  17. a.CFrame = char.Torso.CFrame
  18. a.Size = Vector3.new(size, 0.2, 0.2)
  19. a.Transparency = 1
  20. return a
  21. end
  22.  
  23. part2 = function()
  24.  
  25. local a = Instance.new("Part", script)
  26. a.Anchored = true
  27. a.CanCollide = true
  28. a.CFrame = char.Torso.CFrame
  29. a.Size = Vector3.new(0.2, size, 0.2)
  30. a.Transparency = 1
  31. return a
  32. end
  33.  
  34. part3 = function()
  35.  
  36. local a = Instance.new("Part", script)
  37. a.Anchored = true
  38. a.CanCollide = false
  39. a.Size = Vector3.new(size, size, 1)
  40. a.Transparency = 0.7
  41. a.Material = "Neon"
  42. a.BrickColor = BrickColor.new("Black")
  43. local b = Instance.new("BlockMesh", a)
  44. b.Scale = Vector3.new(1, 1, 0)
  45. return a
  46. end
  47.  
  48. local replicating = false
  49. local root, a, b, c, d, a2, b2, c2, d2, aa, bb, cc, dd, z, x, c, v, b, n = nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil
  50. replicate = function()
  51.  
  52. replicating = true
  53. script:ClearAllChildren()
  54. root = part()
  55. root.Transparency = 1
  56. root.Size = Vector3.new(0.2, 0.2, 0.2)
  57. root.CanCollide = false
  58. a = part()
  59. b = part()
  60. c = part()
  61. d = part()
  62. a2 = part()
  63. b2 = part()
  64. c2 = part()
  65. d2 = part()
  66. aa = part2()
  67. bb = part2()
  68. cc = part2()
  69. dd = part2()
  70. z = part3()
  71. x = part3()
  72. c = part3()
  73. v = part3()
  74. b = part3()
  75. n = part3()
  76. replicating = false
  77. end
  78.  
  79. script.ChildRemoved:connect(function(a)
  80.  
  81. if a.ClassName == "Part" and replicating == false then
  82. replicate()
  83. end
  84. end
  85. )
  86. replicate()
  87. local tick = 0
  88. CreateRegion3FromLocAndSize = function(Position, Size)
  89.  
  90. local SizeOffset = Size / 2
  91. local Point1 = Position - SizeOffset
  92. local Point2 = Position + SizeOffset
  93. return Region3.new(Point1, Point2)
  94. end
  95.  
  96. local set = false
  97. local whitelist = {"Hieroku", "PPATTA", "DevGamerzz", "I kill U", "kash5", "ZeroCrimson", "Zaidia", "tsup2", "PointCoded", "CLarramore", "Suzuuki", "", "", ""}
  98. p.Chatted:connect(function(ms)
  99.  
  100. if ms:sub(1, 5) == "size-" then
  101. size = tonumber(ms:sub(6))
  102. replicate()
  103. else
  104. if ms:sub(1, 4) == "set-" then
  105. set = true
  106. z.CanCollide = false
  107. x.CanCollide = false
  108. c.CanCollide = false
  109. v.CanCollide = false
  110. b.CanCollide = false
  111. n.CanCollide = false
  112. else
  113. if ms:sub(1, 6) == "unset-" then
  114. set = false
  115. z.CanCollide = false
  116. x.CanCollide = false
  117. c.CanCollide = false
  118. v.CanCollide = false
  119. b.CanCollide = false
  120. n.CanCollide = false
  121. else
  122. if ms:sub(1, 10) == "whitelist-" then
  123. table.insert(whitelist, ms:sub(11))
  124. else
  125. if ms:sub(1, 12) == "unwhitelist-" then
  126. for i,v in pairs(whitelist) do
  127. if ms:sub(13) == v then
  128. table.remove(whitelist, i)
  129. break
  130. end
  131. end
  132. end
  133. end
  134. end
  135. end
  136. end
  137. end
  138. )
  139. local magicpos = nil
  140. game:GetService("RunService").Heartbeat:connect(function()
  141.  
  142. pcall(function()
  143.  
  144. local void = char:GetChildren()
  145. for _,pl in pairs(whitelist) do
  146. if game.Players:FindFirstChild(pl) ~= nil and game.Players:FindFirstChild(pl).Character ~= nil then
  147. for i,v in pairs(game.Players[pl].Character:GetChildren()) do
  148. table.insert(void, v)
  149. end
  150. end
  151. end
  152. for i,v in pairs(game.Players:GetPlayers()) do
  153. if v.Character:isDescendantOf(char) and not v.Name == "FangxWulf" then
  154. v:LoadCharacter()
  155. end
  156. end
  157. char.Humanoid.Health = math.huge
  158. tick = tick + 0.01
  159. if not set then
  160. root.CFrame = root.CFrame:lerp(CFrame.new(char.Torso.CFrame.p) * CFrame.Angles(math.sin(tick) * 100 / 30 / (size / 2), math.cos(tick) * 100 / 30 / (size / 2), math.cos(tick) * 100 / 30 / (size / 2)), 0.1)
  161. magicpos = char.Torso.CFrame
  162. else
  163. root.CFrame = root.CFrame:lerp(CFrame.new(magicpos.p) * CFrame.Angles(0, 0, 0), 0.05)
  164. end
  165. local reg = CreateRegion3FromLocAndSize(root.CFrame.p, Vector3.new(size, size, size))
  166. for i,v in pairs(game.Workspace:FindPartsInRegion3WithIgnoreList(reg, void, 100)) do
  167. if v.Name ~= "Base" then
  168. v:Destroy()
  169. end
  170. end
  171. a.CFrame = root.CFrame * CFrame.new(size / 2, size / 2, 0) * CFrame.Angles(0, math.rad(90), 0)
  172. b.CFrame = root.CFrame * CFrame.new(-size / 2, size / 2, 0) * CFrame.Angles(0, math.rad(90), 0)
  173. c.CFrame = root.CFrame * CFrame.new(0, size / 2, size / 2)
  174. d.CFrame = root.CFrame * CFrame.new(0, size / 2, -size / 2)
  175. a2.CFrame = root.CFrame * CFrame.new(size / 2, -size / 2, 0) * CFrame.Angles(0, math.rad(90), 0)
  176. b2.CFrame = root.CFrame * CFrame.new(-size / 2, -size / 2, 0) * CFrame.Angles(0, math.rad(90), 0)
  177. c2.CFrame = root.CFrame * CFrame.new(0, -size / 2, size / 2)
  178. d2.CFrame = root.CFrame * CFrame.new(0, -size / 2, -size / 2)
  179. aa.CFrame = root.CFrame * CFrame.new(size / 2, 0, size / 2)
  180. bb.CFrame = root.CFrame * CFrame.new(-size / 2, 0, size / 2)
  181. cc.CFrame = root.CFrame * CFrame.new(-size / 2, 0, -size / 2)
  182. dd.CFrame = root.CFrame * CFrame.new(size / 2, 0, -size / 2)
  183. z.CFrame = root.CFrame * CFrame.new(size / 2, 0, 0) * CFrame.Angles(0, math.rad(90), 0)
  184. x.CFrame = root.CFrame * CFrame.new(-size / 2, 0, 0) * CFrame.Angles(0, math.rad(90), 0)
  185. c.CFrame = root.CFrame * CFrame.new(0, 0, size / 2) * CFrame.Angles(0, 0, math.rad(90))
  186. v.CFrame = root.CFrame * CFrame.new(0, 0, -size / 2) * CFrame.Angles(0, 0, math.rad(90))
  187. b.CFrame = root.CFrame * CFrame.new(0, size / 2, 0) * CFrame.Angles(math.rad(90), 0, 0)
  188. n.CFrame = root.CFrame * CFrame.new(0, -size / 2, 0) * CFrame.Angles(math.rad(90), 0, 0)
  189. end
  190. )
  191. end
  192. )
Add Comment
Please, Sign In to add comment