Xnatee

FE Scripts Gui (Replication UI)

Apr 12th, 2022 (edited)
778
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 12.05 KB | None | 0 0
  1. local screenGui = game:GetObjects("rbxassetid://3546404827")[1]
  2. local mainFrame = screenGui.Frame
  3. local pages = mainFrame.Pages
  4. local pageLayout = pages.UIPageLayout
  5. local pageScripts = pages.Scripts
  6. local interactiveButton = pageScripts.Character.Elements.TextButton
  7. local utility = pageScripts.Utility
  8. local utilityElements = utility.Elements
  9. local pageOptions = pages.Options
  10. local titleFrame = mainFrame.Title
  11. local toolbar = mainFrame.Toolbar
  12.  
  13. screenGui.LocalScript:Destroy()
  14. screenGui.Parent = game:GetService("CoreGui")
  15. interactiveButton.Parent = nil
  16. mainFrame.Visible = true
  17.  
  18. gripCenter = CFrame.new(0, 0, 1) * CFrame.Angles(math.rad(90), 0, 0)
  19. offset = CFrame.Angles(0, 0, 0)
  20.  
  21. _player = {
  22. p = game:GetService("Players").LocalPlayer;
  23. b = function()
  24. return _player.p:FindFirstChild("Backpack")
  25. end;
  26. c = function()
  27. return _player.p.Character
  28. end;
  29. }
  30. _functions = {
  31. respawn = function()
  32. local c = _player.c()
  33. if workspace:FindFirstChild(_player.p.Name) then
  34. spawn(function()
  35. wait(.5)
  36. if _player.c() ~= workspace:FindFirstChild(_player.p.Name) then
  37. workspace:FindFirstChild(_player.p.Name):BreakJoints()
  38. end
  39. end)
  40. end
  41. if c then
  42. c:BreakJoints()
  43. c:ClearAllChildren()
  44. end
  45. local newChar = Instance.new("Model", workspace)
  46. local hum = Instance.new("Humanoid", newChar)
  47. local torso = Instance.new("Part", newChar)
  48. newChar.Name = "respawn_"
  49. torso.Name = "Torso"
  50. torso.Transparency = 1
  51. _player.p.Character = newChar
  52. torso.Name = ""
  53. torso.CanCollide = false
  54. newChar:MoveTo(Vector3.new(999999, 999999, 999999))
  55. end;
  56. tools = function(int)
  57. local toolamount = int or 200
  58.  
  59. local LocalPlayer = game:GetService("Players").LocalPlayer
  60. local runservice = game:GetService("RunService")
  61. LocalPlayer.Character:FindFirstChild("Humanoid"):UnequipTools()
  62. local currentamount = #LocalPlayer.Backpack:GetChildren()
  63. LocalPlayer.Character.Archivable = true
  64. local tempchar = LocalPlayer.Character:Clone()
  65. local lastchar = nil
  66. tempchar.Parent = workspace
  67. local savepos = LocalPlayer.Character:FindFirstChild("HumanoidRootPart").CFrame
  68. local renderstepped = runservice.RenderStepped:Connect(function()
  69. workspace.CurrentCamera.CameraSubject = tempchar:FindFirstChild("Humanoid")
  70. for _, tool in pairs(LocalPlayer.Backpack:GetChildren()) do
  71. if tool:IsA("Tool") then
  72. tool.Parent = LocalPlayer
  73. end
  74. end
  75. for _, char in pairs(workspace:GetChildren()) do
  76. if char.Name == LocalPlayer.Name and char:FindFirstChildWhichIsA("Humanoid") then
  77. char.Humanoid.Health = 0
  78. end
  79. end
  80. LocalPlayer.Character:ClearAllChildren()
  81. local char = Instance.new("Model", workspace)
  82. Instance.new("Humanoid", char)
  83. LocalPlayer.Character = char
  84. if lastchar ~= nil then
  85. lastchar:Destroy()
  86. end
  87. repeat runservice.RenderStepped:Wait() until LocalPlayer.Character ~= nil
  88. lastchar = char
  89. end)
  90. repeat runservice.RenderStepped:Wait() until #LocalPlayer:GetChildren() - 3 - currentamount >= toolamount
  91. renderstepped:Disconnect()
  92. repeat runservice.RenderStepped:Wait() until LocalPlayer.Character:FindFirstChild("HumanoidRootPart") ~= nil
  93. lastchar:Destroy()
  94.  
  95. utilityElements.Tools.Text = "Done respawning?"
  96. repeat runservice.RenderStepped:Wait() until utilityElements.Tools.Text == "Load Tools"
  97.  
  98. for _, tool in pairs(LocalPlayer:GetChildren()) do
  99. if tool:IsA("Tool") then
  100. tool.Parent = LocalPlayer.Backpack
  101. end
  102. end
  103. LocalPlayer.Character:FindFirstChild("HumanoidRootPart").CFrame = savepos
  104. tempchar:Destroy()
  105. end;
  106. load = function()
  107. local b = _player.b()
  108. local c = _player.c()
  109. local grip = function(tool, cf)
  110. local origin = CFrame.new(cf.p)
  111. local x, y, z = cf:toEulerAnglesXYZ()
  112. local new = CFrame.Angles(x, y, z)
  113. local grip = (origin * new):inverse()
  114. tool.Grip = grip
  115. end
  116. local model = c:WaitForChild("gay") -- stupid name choice from what a few months ago?? i have nothing against it i swear
  117. local parts = {}
  118. wait(1)
  119.  
  120. for i, Model in pairs(c:GetChildren()) do
  121. if Model:IsA("Model") and Model.Name == "gay" then
  122. for i, v in pairs(Model:GetDescendants()) do
  123. if v:IsA("BasePart") then
  124. v.LocalTransparencyModifier = 1
  125. if v.Name ~= "Ignore" then
  126. table.insert(parts, v)
  127. end
  128. end
  129. if not v:IsA("BasePart") and not v:IsA("JointInstance") and not v:IsA("BodyMover") and not v:isA("Humanoid") and not v:IsA("Model") then
  130. v:Remove()
  131. end
  132. end
  133. Model.ChildAdded:Connect(function(c)
  134. c.Parent = nil
  135. end)
  136. end
  137. end
  138.  
  139. for _, part in pairs(parts) do
  140. local m = Instance.new("BlockMesh", part)
  141. m.Scale = Vector3.new(0, 0, 0)
  142. end
  143.  
  144. local tools = b:GetChildren()
  145. for i, tool in pairs(tools) do
  146. if tool.Parent then
  147. wrap(function()
  148. tool.Parent = c
  149. for i, v in pairs(tool:GetDescendants()) do
  150. if v:IsA("Sound") or v:IsA("TouchTransmitter") then
  151. v:Destroy()
  152. elseif v:IsA("BasePart") then
  153. v.Massless = true
  154. v.CanCollide = false
  155. elseif v:IsA("LocalScript") or v:IsA("Script") then
  156. v:Destroy()
  157. end
  158. end
  159.  
  160. if tool:FindFirstChild("Handle") then
  161. local handle = tool.Handle
  162. local fakeHandle = handle:Clone()
  163. fakeHandle.Name = "FakeHandle"
  164. fakeHandle.Parent = tool
  165. local w = Instance.new("Weld", handle)
  166. w.Part0 = fakeHandle
  167. w.Part1 = handle
  168. handle.Size = Vector3.new(0, 0, 0)
  169. end
  170.  
  171. tool.Parent = b
  172. end)
  173. end
  174. if (not parts[i]) then
  175. tools[i] = nil
  176. tool:Destroy()
  177. end
  178. end
  179.  
  180. wait(.2)
  181. local amt = #tools
  182.  
  183. wrap(function()
  184. local connection1
  185.  
  186. connection1 = game:GetService("RunService").RenderStepped:Connect(function(step)
  187. for i = 1, amt do
  188. local tool = tools[i]
  189. if parts[i] then
  190. tool.Parent = b
  191. tool.Parent = c
  192. end
  193. end
  194.  
  195. if _player.c() ~= c or c:FindFirstChildWhichIsA("Humanoid").Health == 0 then
  196. connection1:Disconnect()
  197. end
  198.  
  199. utilityElements.Replicate.Text = ("Replicate (%dfps)"):format(1/step)
  200. end)
  201. end)
  202.  
  203. local connection2
  204. connection2 = game:GetService("RunService").Heartbeat:Connect(function()
  205. for i = 1, amt do
  206. local tool = tools[i]
  207. if parts[i] then
  208. if parts[i].Transparency ~= 1 then
  209. local p = _cframe.toWorldPoint(parts[i].CFrame) * offset
  210. grip(tool, p)
  211. else
  212. local p = _cframe.toWorldPoint(CFrame.new(0, -250, 0))
  213. grip(tool, p)
  214. end
  215. end
  216. end
  217. if _player.c() ~= c or c:FindFirstChildWhichIsA("Humanoid").Health == 0 then
  218. connection2:Disconnect()
  219. end
  220. end)
  221. end;
  222. }
  223. _cframe = {
  224. diff = function(a, b)
  225. return (a:Inverse() * b)
  226. end;
  227. toWorldPoint = function(a)
  228. local arm = _player.c():FindFirstChild('Right Arm') or _player.c():FindFirstChild('RightHand')
  229. local off = arm.CFrame * gripCenter:Inverse()
  230. if arm.Name == "RightHand" then
  231. off = arm.CFrame * CFrame.Angles(math.rad(-90), 0, 0)
  232. end
  233. return _cframe.diff(off, a)
  234. end;
  235. tween = function(object,style,direction,t,goal)
  236. local tweenservice = game:GetService("TweenService")
  237. local tweenInfo = TweenInfo.new(t,Enum.EasingStyle[style],Enum.EasingDirection[direction])
  238. local tween = tweenservice:Create(object,tweenInfo,goal)
  239. tween:Play()
  240. return tween
  241. end;
  242. }
  243. scriptList = {
  244. Character = {
  245. ['Titan'] = {"rbxassetid://3600286284", "rbxassetid://3070358214"};
  246. ['Winged Titan'] = {"rbxassetid://3593786550", "rbxassetid://3070358214"};
  247. ['Part Surround'] = {"rbxassetid://3546680077", "rbxassetid://3546673786"};
  248. },
  249. Mechanical = {
  250. ['Spiderbot'] = {"rbxassetid://3040869607", "rbxassetid://3070355648"};
  251. ['Drone'] = {"rbxassetid://3074236927", "rbxassetid://3074245958"};
  252. ['Noise'] = {"rbxassetid://3193712297", "rbxassetid://3070358314"};
  253. },
  254. Aesthetic = {
  255. ['Wings'] = {"rbxassetid://3040946714", "rbxassetid://3070358381"};
  256. ['Tail'] = {"rbxassetid://3041387168", "rbxassetid://3070358314"};
  257. ['Star Glitcher'] = {"rbxassetid://3074734519", "rbxassetid://3074751071"};
  258. ['Tentacles'] = {"rbxassetid://3074817074", "rbxassetid://3074820325"};
  259. },
  260. Weapon = {
  261. ['Master Hand'] = {"rbxassetid://3040943596", "rbxassetid://3070358267"};
  262. ['Ravenger'] = {"rbxassetid://3040945482", "rbxassetid://3070358154"};
  263. },
  264. }
  265. wrap = function(f)
  266. return coroutine.wrap(f)()
  267. end
  268.  
  269. if game:GetService("RunService"):IsStudio() then
  270. guiLib = require(screenGui.GuiLib)
  271. else
  272. guiLib = loadstring(screenGui.GuiLib.Source)()
  273. end
  274.  
  275. for title, tbl in pairs(scriptList) do
  276. local frame = pageScripts[title]
  277. for name, info in pairs(tbl) do
  278. local btn = interactiveButton:Clone()
  279. btn.Name = name
  280. btn.Text = name
  281. btn.Parent = frame.Elements
  282. btn.Icon.Image = info[2]
  283.  
  284. guiLib.circleInteractive(btn)
  285. guiLib.colorInteractive(btn)
  286.  
  287. btn.MouseButton1Click:Connect(function()
  288. local scr = game:GetObjects(info[1])[1]
  289. local source = scr.Source
  290.  
  291. if game:GetService("RunService"):IsStudio() == false then
  292. for i, v in pairs(scr:GetChildren()) do
  293. v.Parent = script
  294. end
  295. wrap(function()
  296. local func = loadstring(source)
  297. spawn(func)
  298. end)
  299. else
  300. scr.Disabled = true
  301. scr.Parent = _player.c()
  302. wait(.1)
  303. scr.Disabled = false
  304. end
  305. end)
  306. end
  307. end
  308.  
  309. repeat wait() until pageLayout.CurrentPage
  310.  
  311. guiLib.draggable(mainFrame, titleFrame)
  312. for i, v in pairs(toolbar:GetChildren()) do
  313. if v:IsA("TextButton") then
  314. guiLib.circleInteractive(v, 2, 1)
  315. v.MouseButton1Click:Connect(function()
  316. pageLayout:JumpTo(pages[v.Name])
  317. end)
  318. pageLayout.Changed:Connect(function(p)
  319. if pageLayout.CurrentPage.Name == v.Name then
  320. guiLib.tween(v, "Sine", "Out", .5, {BackgroundColor3 = Color3.fromRGB(255, 118, 26)})
  321. else
  322. guiLib.tween(v, "Sine", "Out", .5, {BackgroundColor3 = Color3.fromRGB(236, 109, 17)})
  323. end
  324. end)
  325. end
  326. end
  327.  
  328. for i, v in pairs(utilityElements:GetChildren()) do
  329. if v:IsA("TextButton") then
  330. guiLib.circleInteractive(v)
  331. guiLib.colorInteractive(v)
  332. end
  333. end
  334.  
  335. utilityElements.Reset.MouseButton1Click:Connect(function()
  336. local c = _player.c()
  337. c.Humanoid.Health = 0
  338. wait(.55)
  339. for i, v in pairs(c:GetChildren()) do
  340. if v:IsA("BackpackItem") then
  341. v.Parent = _player.b()
  342. v.Parent = _player.p
  343. end
  344. end
  345. repeat wait() until _player.c() ~= c
  346. _player.c():WaitForChild("Right Arm")
  347. wait(.25)
  348. for i, v in pairs(_player.p:GetChildren()) do
  349. if v:IsA("Tool") then
  350. v.Parent = _player.b()
  351. end
  352. end
  353. end)
  354.  
  355. utilityElements.Block.MouseButton1Click:Connect(function()
  356. local c = _player.c()
  357. for _, v in pairs(c:GetChildren()) do
  358. if v:IsA("BackpackItem") then
  359. for _, m in pairs(v:GetDescendants()) do
  360. if m:IsA("DataModelMesh") then
  361. m:Destroy()
  362. end
  363. end
  364. end
  365. end
  366. end)
  367.  
  368. local noclip = false
  369. utilityElements.Noclip.MouseButton1Click:Connect(function()
  370. noclip = not noclip
  371. end)
  372.  
  373. utilityElements.Tools.MouseButton1Click:Connect(function()
  374. if utilityElements.Tools.Text == "Load Tools" then
  375. _functions.tools(120)
  376. else
  377. utilityElements.Tools.Text = "Load Tools"
  378. end
  379. end)
  380.  
  381. utilityElements.Replicate.MouseButton1Click:Connect(function()
  382. _functions.load()
  383. end)
  384.  
  385. local flipped = 0
  386. utilityElements.Flip.MouseButton1Click:Connect(function()
  387. flipped = (flipped + 1) % 4
  388. if flipped == 0 then
  389. offset = CFrame.Angles(0, 0, 0)
  390. elseif flipped == 1 then
  391. offset = CFrame.Angles(math.rad(90), 0, 0)
  392. elseif flipped == 2 then
  393. offset = CFrame.Angles(0, math.rad(90), 0)
  394. elseif flipped == 3 then
  395. offset = CFrame.Angles(0, 0, math.rad(90))
  396. end
  397. end)
  398.  
  399. game:GetService("RunService").Stepped:Connect(function()
  400. local c = _player.c()
  401. if noclip then
  402. local descendants = c:GetDescendants()
  403. for i = 1, #descendants do
  404. local v = descendants[i]
  405. if v:IsA("BasePart") and v.Name ~= "HumanoidRootPart" then
  406. v.CanCollide = false
  407. end
  408. end
  409. end
  410. end)
  411.  
  412. workspace:WaitForChild("S")
Add Comment
Please, Sign In to add comment