PersonsadminTeam

Mortadex v1 (ESP, Chams, BigHead, etc) (Phantom Forces)

Mar 30th, 2017
246
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 17.47 KB | None | 0 0
  1.  
  2. -- MORTADEX
  3. -- WRITTEN BY LOUKA @ V3RMILLION
  4. -- DON'T JEW THE LOCALSCRIPT IF YOU DON'T KNOW HOW TO SCRIPT
  5.  
  6. local Mortadex = {}
  7. Mortadex.Version = "1"
  8. Mortadex.Modules = {}
  9. Mortadex.ModuleCount = 0
  10. Mortadex.ModuleSelection = 1
  11.  
  12. Mortadex.Stealth = true -- this will just remove print messages
  13. Mortadex.Debug = false
  14. Mortadex.FreeForAll = false
  15. Mortadex.Studio = false
  16.  
  17. function Mortadex:RegisterModule(name, onrender, norender)
  18.     if Mortadex.Modules[name] then
  19.         return error("Module \""..name.."\" already registered!")
  20.     else
  21.         Mortadex:FLog("Registering module \"%s\"", name)
  22.         Mortadex.Modules[name] = {OnRender = onrender, NoRender = norender, Scratchpad = {}, Enabled = false, Order = Mortadex.ModuleCount}
  23.         Mortadex.ModuleCount = Mortadex.ModuleCount + 1
  24.     end
  25. end
  26.  
  27. function Mortadex:Log(...)
  28.     if Mortadex.Stealth then return end
  29.     return print("[- MORTADEX -] ", ...)
  30. end
  31.  
  32. function Mortadex:FLog(o, ...)
  33.     return Mortadex:Log(o:format(...))
  34. end
  35.  
  36. local getrawmetatable = getrawmetatable
  37.  
  38. ---------------------------------------------------------------
  39.  
  40. Mortadex:Log("Loading core utilities...")
  41.  
  42. Mortadex.HookManager = {IdxHooks = {}, NIdxHooks = {}}
  43. Mortadex.Utilities = {}
  44. Mortadex.Services = {
  45.     Players = game:GetService("Players"),
  46.     Lighting = game:GetService("Lighting"),
  47.     RunService = game:GetService("RunService"),
  48.     UserInputService = game:GetService("UserInputService")
  49. }
  50. Mortadex.Instances = {
  51.     LocalPlayer = Mortadex.Services.Players.LocalPlayer,
  52.     LocalCharacter = Mortadex.Services.Players.LocalPlayer.Character,
  53.     LocalCamera = workspace.CurrentCamera,
  54.     LocalMouse = Mortadex.Services.Players.LocalPlayer:GetMouse()
  55. }
  56.  
  57. function Mortadex.HookManager:Init()
  58.     if getrawmetatable then
  59.         local ObjectMt = getrawmetatable(game)
  60.         Mortadex.OriginalIndex = ObjectMt.__index
  61.         Mortadex.OriginalNewIndex = ObjectMt.__newindex
  62.        
  63.         ObjectMt.__index = function(self, key)
  64.             local Hook = Mortadex.HookManager:LookupIndexHook(self, key)
  65.             if Hook then
  66.                 return Hook(self)
  67.             else
  68.                 return Mortadex.OriginalIndex(self, key)
  69.             end
  70.         end
  71.        
  72.         ObjectMt.__newindex = function(self, key, value)
  73.             local Hook = Mortadex.HookManager:LookupNewIndexHook(self, key)
  74.             if Hook then
  75.                 return Hook(self, value)
  76.             else
  77.                 return Mortadex.OriginalNewIndex(self, key, value)
  78.             end
  79.         end
  80.        
  81.         return true
  82.     end
  83. end
  84.  
  85. function Mortadex.HookManager:LookupIndexHook(inst, key)
  86.     for _, Hook in next, Mortadex.HookManager.IdxHooks do
  87.         if Mortadex.OriginalIndex(inst, "IsA")(inst, Hook.AffectedClass) and Hook.Property == key then
  88.             return Hook.HookFunction
  89.         end
  90.     end
  91. end
  92.  
  93. function Mortadex.HookManager:LookupNewIndexHook(inst, key)
  94.     for _, Hook in next, Mortadex.HookManager.NIdxHooks do
  95.         if Mortadex.OriginalIndex(inst, "IsA")(inst, Hook.AffectedClass) and Hook.Property == key then
  96.             return Hook.HookFunction
  97.         end
  98.     end
  99. end
  100.  
  101. function Mortadex.HookManager:HookIndex(class, prop, f)
  102.     return table.insert(Mortadex.HookManager.IdxHooks, {AffectedClass = class, Property = prop, HookFunction = f})
  103. end
  104.  
  105. function Mortadex.HookManager:HookNewIndex(class, prop, f)
  106.     return table.insert(Mortadex.HookManager.NIdxHooks, {AffectedClass = class, Property = prop, HookFunction = f})
  107. end
  108.  
  109. function Mortadex.Utilities:WorldToScreenPoint(...)
  110.     return Mortadex.Instances.LocalCamera:WorldToScreenPoint(...)
  111. end
  112.  
  113. function Mortadex.Utilities:PathObstructed(p1, p2, ...)
  114.     local ray = Ray.new(p1, (p2 - p1).unit * 500)
  115.     local haspart, hitpos = workspace:FindPartOnRayWithIgnoreList(ray, {...})
  116.     if haspart then return true, hitpos else return false end
  117. end
  118.  
  119. function Mortadex.Utilities:GetReplicator()
  120.     return game:FindFirstChild("ClientReplicator", true)
  121. end
  122.  
  123. function Mortadex.Utilities:GetSize(i)
  124.     if i:IsA("BasePart") then
  125.         return i.Size
  126.     elseif i:IsA("Model") then
  127.         return i:GetExtentsSize()
  128.     end
  129. end
  130.  
  131. function Mortadex.Utilities:GetPlayers(mode)
  132.     local Result = {}
  133.     for _,player in next, Mortadex.Services.Players:GetPlayers() do
  134.         if mode == 0 then -- exclude players in current team
  135.             if (player ~= Mortadex.Instances.LocalPlayer and (Mortadex.Instances.LocalPlayer.TeamColor ~= player.TeamColor or (FreeForAll or DEBUG))) then
  136.                 table.insert(Result, player)
  137.             end
  138.         else -- include everyone
  139.             table.insert(Result, player)
  140.         end
  141.     end
  142.     return Result
  143. end
  144.  
  145. function Mortadex.Utilities:GetNearestPlayer()
  146.     if not Mortadex.Instances.LocalPlayer.Character then return end
  147.     local Players = Mortadex.Utilities:GetPlayers(0)
  148.     local SelectedPlayer, SelectedPlayerPrevDistance = nil, 25000
  149.     for i,v in next, Players do
  150.         if v.Character and v.Character:FindFirstChild("HumanoidRootPart") then
  151.             local Distance = Mortadex.Utilities:GetDistance(Mortadex.Instances.LocalPlayer.Character.HumanoidRootPart.Position, v.Character.HumanoidRootPart.Position)
  152.             if Distance < SelectedPlayerPrevDistance then
  153.                 SelectedPlayer = v
  154.                 SelectedPlayerPrevDistance = Distance
  155.             end
  156.         end
  157.     end
  158.     return SelectedPlayer
  159. end
  160.  
  161. function Mortadex.Utilities:GetDistance(v1, v2)
  162.     return (v1 - v2).magnitude
  163. end
  164.  
  165. function Mortadex.Utilities:GetCanvas()
  166.     if not Mortadex.Canvas then
  167.         if getrawmetatable then
  168.             Mortadex.Canvas = Instance.new("ScreenGui", game:GetService("CoreGui"))
  169.         else
  170.             Mortadex.Canvas = Instance.new("ScreenGui", Mortadex.Services.Players.LocalPlayer.PlayerGui)
  171.         end
  172.     end
  173.     return Mortadex.Canvas
  174. end
  175.  
  176. Mortadex.EmptyVector3 = Vector3.new()
  177. Mortadex.EmptyCFrame = CFrame.new()
  178.  
  179. ---------------------------------------------------------------
  180.  
  181. --> ESP
  182. Mortadex:RegisterModule("ESP", function(Storage)
  183.     local Canvas = Mortadex.Utilities:GetCanvas()
  184.     local Root = Canvas:FindFirstChild("ESP")
  185.     if not Root then
  186.         Root = Instance.new("Frame")
  187.         Root.Name = "ESP"
  188.         Root.Size = UDim2.new(1, 0, 1, 0)
  189.         Root.BackgroundTransparency = 1
  190.     end
  191.    
  192.     Root:ClearAllChildren()
  193.     for _, Player in next, Mortadex.Utilities:GetPlayers(0) do
  194.         if Player.Character and Player.Character:FindFirstChild("Torso") then
  195.             local Locator = Instance.new("Frame")
  196.             Locator.BackgroundColor = Player.TeamColor
  197.             Locator.BackgroundTransparency = .5
  198.             local VPos, VVis =  Mortadex.Utilities:WorldToScreenPoint(Player.Character.Torso.Position)
  199.             if VVis then
  200.                 Locator.Size = UDim2.new(0, -2800 / VPos.z, 0, -4300 / VPos.z)
  201.                 Locator.Position = UDim2.new(0, VPos.x - Locator.Size.X.Offset / 2, 0, VPos.y - Locator.Size.Y.Offset / 2)
  202.                 local Name = Instance.new("TextLabel")
  203.                 Name.TextColor3 = Color3.new(1,1,1)
  204.                 Name.Size = UDim2.new(1,0,0, Locator.Size.Y.Offset / 5)
  205.                 Name.BackgroundTransparency = 1
  206.                 Name.TextScaled = true
  207.                 Name.FontSize = 'Size24'
  208.                 Name.Text = Player.Name
  209.                 Name.TextStrokeTransparency = .3
  210.                 Name.Font = 'SourceSansLight'
  211.                 Name.TextXAlignment = 'Left'
  212.                 Name.Parent = Locator
  213.                 Locator.Parent = Root
  214.             else
  215.                 Locator:Destroy()
  216.             end
  217.         end
  218.     end
  219.    
  220.     if not Root.Parent then
  221.         Root.Parent = Canvas
  222.     end
  223. end)
  224.  
  225. --> FreeForAll
  226. Mortadex:RegisterModule("FreeForAll", function(Storage)
  227.     FreeForAll = true
  228. end, function(Storage) FreeForAll = false end)
  229.  
  230. --> Chams
  231. Mortadex:RegisterModule("Chams", function(Storage)
  232.     for i, Cham in next, Storage do
  233.         if Cham.Name:find("Cham") then
  234.             Cham:Destroy()
  235.             Storage[i] = nil
  236.         end
  237.     end
  238.    
  239.     for _, Player in next, Mortadex.Utilities:GetPlayers(0) do
  240.         if Player.Character and Player.Character:FindFirstChild("Torso") then
  241.             for _, Part in next, Player.Character:GetChildren() do
  242.                 if Part:IsA("PVInstance") then
  243.                     local Box = Instance.new("BoxHandleAdornment")
  244.                     Box.Size = Mortadex.Utilities:GetSize(Part) + Vector3.new(.2, .2, .2)
  245.                     Box.Name = "Cham" .. Player.Name
  246.                     Box.Color3 = Player.TeamColor.Color
  247.                     Box.Adornee = Part
  248.                     Box.AlwaysOnTop = true
  249.                     Box.ZIndex = 5
  250.                     Box.Transparency = .1
  251.                     table.insert(Storage, Box)
  252.                     Box.Parent = Mortadex.Utilities:GetCanvas()
  253.                 end
  254.             end
  255.         end
  256.     end
  257. end)
  258.  
  259. --> LagSwitch
  260. Mortadex:RegisterModule("LagSwitch", function(Storage)
  261.     if not Storage.State then
  262.         Storage.State = true
  263.         local Replicator = Mortadex.Utilities:GetReplicator()
  264.         if Replicator then
  265.             Replicator:DisableProcessPackets()
  266.         end
  267.     end
  268. end,
  269.  
  270. function(Storage)
  271.     if Storage.State then
  272.         Storage.State = false
  273.         local Replicator = Mortadex.Utilities:GetReplicator()
  274.         if Replicator then
  275.             Replicator:EnableProcessPackets()
  276.         end
  277.     end
  278. end)
  279.  
  280. --> IronSight
  281. Mortadex:RegisterModule("IronSight", function(Storage) 
  282.     local Sight = Instance.new("Frame")
  283.     Sight.Size = UDim2.new(0, 5, 0, 5)
  284.     Sight.BackgroundTransparency = .5
  285.     Sight.BackgroundColor3 = Color3.new(1, 1, 1)
  286.     Sight.Position = UDim2.new(0, Mortadex.Instances.LocalMouse.X, 0, Mortadex.Instances.LocalMouse.Y)
  287.     Sight.Parent = Mortadex.Utilities:GetCanvas()
  288. end)
  289.  
  290. --> KnifeMaster
  291. Mortadex:RegisterModule("KnifeMaster", function(Storage)
  292.     if not Mortadex.Instances.LocalPlayer.Character then
  293.         return
  294.     end
  295.     local Pl = Mortadex.Utilities:GetNearestPlayer()
  296.     if Pl and Pl.Character and Mortadex.Utilities:GetDistance(Pl.Character.Torso.Position, Mortadex.Instances.LocalPlayer.Character.HumanoidRootPart.Position) < 150 then
  297.         Mortadex.Instances.LocalPlayer.Character.HumanoidRootPart.CFrame = Pl.Character.Torso.CFrame * CFrame.new(0,0,3)
  298.     end
  299. end)
  300.  
  301. --> BigHead
  302. Mortadex:RegisterModule("BigHead", function(Storage)
  303.     for _, v in next, Mortadex.Utilities:GetPlayers(0) do
  304.         if v.Character then
  305.             if not Storage[v.Name] then
  306.                 Storage[v.Name] = { v.Character.Head.Size,  v.Character.Head.CFrame }
  307.             end
  308.             v.Character.Head.CanCollide = false
  309.             v.Character.Head.Size = Vector3.new(40, 40, 40)
  310.             v.Character.Head.CFrame = v.Character.Torso.CFrame * CFrame.new(0, 20, 0)
  311.             v.Character.Head.Transparency = .3
  312.         end
  313.     end
  314. end,
  315.  
  316. function(Storage)
  317.     if not Storage.NormalSize then
  318.         Storage.NormalSize = Vector3.new(2, 1, 1)
  319.     end
  320.    
  321.     for _, v in next, Mortadex.Utilities:GetPlayers(0) do
  322.         if v.Character then
  323.             v.Character.Head.CanCollide = true
  324.             v.Character.Head.Size = Storage.NormalSize
  325.         end
  326.     end
  327. end)
  328.  
  329. ---------------------------------------------------------------
  330.  
  331. Mortadex:Log("Loading UI...")
  332.  
  333. function Mortadex:CreateWindow(name, size, timed_close, tween)
  334.     local TopBar = Instance.new("TextLabel")
  335.     TopBar.Name = "NO_CLEAR"
  336.     TopBar.Size = UDim2.new(size.X.Scale, size.X.Offset, 0, 20)
  337.     TopBar.BorderSizePixel = 0
  338.     TopBar.BackgroundColor3 = Color3.new(1, 0, 0)
  339.     TopBar.Text = name
  340.     TopBar.TextXAlignment = Enum.TextXAlignment.Left
  341.     TopBar.TextScaled = true
  342.     TopBar.Font = Enum.Font.Code
  343.     TopBar.TextColor3 = Color3.new(0, 0, 0)
  344.     TopBar.Position = UDim2.new(.5, -(size.X.Offset/2), .5, -(size.Y.Offset/2))
  345.     TopBar.Draggable = true
  346.     TopBar.Active = true
  347.    
  348.     local Window = Instance.new("Frame")
  349.     Window.Name = "Content"
  350.     Window.Size = size
  351.     Window.BackgroundColor3 = Color3.new(0, 0, 0)
  352.     Window.Position = UDim2.new(0, 0, 0, 20)
  353.     Window.BackgroundTransparency = .3
  354.     Window.BorderSizePixel = 0
  355.    
  356.     if not timed_close then
  357.         local CloseBtn = Instance.new("TextButton", TopBar)
  358.         CloseBtn.Position = UDim2.new(1, -20, 0, 0)
  359.         CloseBtn.Size = UDim2.new(0, 20, 1, 0)
  360.         CloseBtn.BorderSizePixel = 0
  361.         CloseBtn.Name = "CloseBtn"
  362.         CloseBtn.BackgroundColor3 = Color3.new(0,0,0)
  363.         CloseBtn.TextColor3 = Color3.new(1, 0, 0)
  364.         CloseBtn.Text = "X"
  365.         CloseBtn.MouseButton1Click:connect(function()
  366.             TopBar:Destroy()
  367.         end)
  368.     else
  369.         local Countdown = Instance.new("TextLabel", TopBar)
  370.         Countdown.Position = UDim2.new(1, -20, 0, 0)
  371.         Countdown.Size = UDim2.new(0, 20, 1, 0)
  372.         Countdown.BackgroundTransparency = 1
  373.         Countdown.TextColor3 = Color3.new(0, 0, 0)
  374.         Countdown.Text = tostring(timed_close)
  375.         local BackPos
  376.         if tween then
  377.             BackPos = TopBar.Position
  378.             TopBar.Position = UDim2.new(.5, -(size.X.Offset/2), 1, 0)
  379.         end
  380.         spawn(function()
  381.             if tween then
  382.                 TopBar:TweenPosition(BackPos, "Out", "Quad", .3, true)
  383.             end
  384.             for i = timed_close-1, 0, -1 do
  385.                 wait(1)
  386.                 Countdown.Text = tostring(i)
  387.             end
  388.             if not tween then
  389.                 TopBar:Destroy()
  390.             else
  391.                 TopBar:TweenPosition(UDim2.new(.5, -(size.X.Offset/2), 1, 0), "Out", "Sine", .3, true)
  392.                 wait(.3)
  393.                 TopBar:Destroy()
  394.             end
  395.         end)
  396.     end
  397.    
  398.     Window.Parent = TopBar
  399.     TopBar.Parent = Mortadex.Utilities:GetCanvas()
  400.     return TopBar
  401. end
  402.  
  403.  
  404. ---------------------------------------------------------------
  405.  
  406. if not script then script = Instance.new("LocalScript") end
  407. Mortadex.UpvalScript = script
  408.  
  409. Mortadex:Log("Hooking functions...")
  410. Mortadex.HookManager:Init()
  411. Mortadex.HookManager:HookIndex("Player", "Kick", error)
  412. Mortadex.HookManager:HookIndex("BasePart", "Size", function(Part)
  413.     local caller_env = getfenv(1)
  414.     if caller_env.script ~= Mortadex.UpvalScript and caller_env.script.ClassName ~= "CoreScript" then
  415.         if Part.Name == "Head" then
  416.             return Mortadex.EmptyVector3
  417.         end
  418.     end
  419.     return Mortadex.OriginalIndex(Part, "Size")
  420. end)
  421.  
  422. Mortadex.HookManager:HookIndex("BasePart", "CFrame", function(Part)
  423.     local caller_env = getfenv(1)
  424.     if caller_env.script ~= Mortadex.UpvalScript and caller_env.script.ClassName ~= "CoreScript" then
  425.         if Part.Name == "Head" then
  426.             return Mortadex.EmptyCFrame
  427.         end
  428.     end
  429.     return Mortadex.OriginalIndex(Part, "CFrame")
  430. end)
  431.  
  432. Mortadex.HookManager:HookIndex("BasePart", "Transparency", function(Part)
  433.     local caller_env = getfenv(1)
  434.     if caller_env.script ~= Mortadex.UpvalScript and caller_env.script.ClassName ~= "CoreScript" then
  435.         if Part.Name == "Head" then
  436.             return 0
  437.         end
  438.     end
  439.     return Mortadex.OriginalIndex(Part, "Transparency")
  440. end)
  441.  
  442. Mortadex:Log("Creating menu...")
  443. Mortadex.SelectionMenu = Mortadex:CreateWindow("Mortadex v"..Mortadex.Version, UDim2.new(0, 250, 0, 20 * Mortadex.ModuleCount))
  444. Mortadex.SelectionMenu.Position = UDim2.new(0, 10, 0, 10)
  445. Mortadex.SelectionMenu.CloseBtn:Destroy()
  446.  
  447. for ModuleName, Module in next, Mortadex.Modules do
  448.     local Entry = Instance.new("TextLabel")
  449.     Entry.BackgroundTransparency = 1
  450.     Entry.BackgroundColor3 = Color3.new(1,1,1)
  451.     Entry.TextColor3 = Color3.new(1, 1, 1)
  452.     Entry.TextScaled = true
  453.     Entry.Font = "Code"
  454.     Entry.TextXAlignment = "Left"
  455.     Entry.Text = ModuleName
  456.     Entry.Position = UDim2.new(0, 0, 0, 20 * Module.Order)
  457.     Entry.Size = UDim2.new(1, 0, 0, 20)
  458.     Entry.Name = tostring(Module.Order)
  459.     Entry.Parent = Mortadex.SelectionMenu.Content
  460.     Entry.BorderSizePixel = 0
  461.    
  462.     local Status = Instance.new("Frame")
  463.     Status.BorderSizePixel = 0
  464.     Status.BackgroundColor3 = Color3.new(1, 0, 0)
  465.     Status.Size = UDim2.new(0, 5, 0, 5)
  466.     Status.Position = UDim2.new(1, -10, 0, 8)
  467.     Status.Name = "Status"
  468.     Status.Parent = Entry
  469. end
  470.  
  471. Mortadex:Log("Connecting UI renderer...")
  472. Mortadex.Services.RunService:BindToRenderStep("Mortadex", Enum.RenderPriority.Last.Value + 1, function()
  473.     for _, Object in next, Mortadex.Utilities:GetCanvas():GetChildren() do
  474.         if not Object.Name:find("NO_CLEAR") then
  475.             Object:Destroy()
  476.         end
  477.     end
  478.    
  479.     for i, Module in next, Mortadex.Modules do
  480.         if Module.Enabled and Module.OnRender then
  481.             local Success, ErrMsg = pcall(Module.OnRender, Module.Scratchpad)
  482.             if not Success then
  483.                 Mortadex:FLog("Panic during execution of \"%s\"::OnRender: %s", i, ErrMsg)
  484.             end
  485.         elseif not Module.Enabled and Module.NoRender then
  486.             local Success, ErrMsg = pcall(Module.NoRender, Module.Scratchpad)
  487.             if not Success then
  488.                 Mortadex:FLog("Panic during execution of \"%s\"::NoRender: %s", i, ErrMsg)
  489.             end
  490.         end
  491.     end
  492. end)
  493.  
  494. Mortadex:Log("Attaching controls...")
  495. Mortadex.Services.UserInputService.InputBegan:connect(function(InputObject)
  496.     local PreviousSelection = Mortadex.SelectionMenu.Content:FindFirstChild(tostring(Mortadex.ModuleSelection))
  497.     if PreviousSelection then
  498.         PreviousSelection.BackgroundTransparency = 1
  499.         PreviousSelection.TextColor3 = Color3.new(1, 1, 1)
  500.     end
  501.     if InputObject.KeyCode.Name == "J" then
  502.         Mortadex.ModuleSelection = Mortadex.ModuleSelection - 1
  503.         if Mortadex.ModuleSelection < 0 then
  504.             Mortadex.ModuleSelection = Mortadex.ModuleCount - 1
  505.         end
  506.     elseif InputObject.KeyCode.Name == "K" then
  507.         Mortadex.ModuleSelection = Mortadex.ModuleSelection + 1
  508.         if Mortadex.ModuleSelection > Mortadex.ModuleCount-1 then
  509.             Mortadex.ModuleSelection = 0
  510.         end
  511.     elseif InputObject.KeyCode.Name == "L" then
  512.         local EntryLabel = Mortadex.SelectionMenu.Content:FindFirstChild(tostring(Mortadex.ModuleSelection))
  513.         if EntryLabel then
  514.             local ModuleEntry = Mortadex.Modules[EntryLabel.Text]
  515.             if ModuleEntry then
  516.                 ModuleEntry.Enabled = not ModuleEntry.Enabled
  517.                 if ModuleEntry.Enabled then
  518.                     EntryLabel.Status.BackgroundColor3 = Color3.new(0, 1, 0)
  519.                 else
  520.                     EntryLabel.Status.BackgroundColor3 = Color3.new(1, 0, 0)
  521.                 end
  522.             end
  523.         end
  524.     elseif InputObject.KeyCode.Name == "P" then
  525.         Mortadex.SelectionMenu.Position = UDim2.new(1, -270, 0, 10)
  526.     end
  527.     local EntryLabel = Mortadex.SelectionMenu.Content:FindFirstChild(tostring(Mortadex.ModuleSelection))
  528.     if EntryLabel then
  529.         EntryLabel.BackgroundTransparency = .3
  530.         EntryLabel.TextColor3 = Color3.new(0, 0, 0)
  531.     end
  532. end)
  533.  
  534. Mortadex:Log("Finishing up...")
  535. local IntroWindow = Mortadex:CreateWindow("Mortadex", UDim2.new(0, 350, 0, 200), 5, true)
  536. local IntroLabel = Instance.new("TextLabel")
  537. IntroLabel.Font = "Code"
  538. IntroLabel.TextWrapped = true
  539. IntroLabel.FontSize = "Size24"
  540. IntroLabel.TextColor3 = Color3.new(1, 1, 1)
  541. IntroLabel.BackgroundTransparency = 1
  542. IntroLabel.Text = "Welcome to Mortadex! If you need to change the menu's placement, simply drag the window around the screen. Press P to dock the window to the right side of the screen in case the chat blocks the menu."
  543. IntroLabel.Parent = IntroWindow.Content
  544. IntroLabel.Size = UDim2.new(1, 0, 1, 0)
  545.  
  546. Mortadex:Log("Initialization complete!")
Add Comment
Please, Sign In to add comment