Advertisement
samuelrichter66

computador

May 29th, 2019
230
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 79.33 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,game,owner = owner,game
  4. local RealPlayer = Player
  5. do
  6. print("FE Compatibility code V2 by Mokiros")
  7. local RealPlayer = RealPlayer
  8. script.Parent = RealPlayer.Character
  9.  
  10. --Fake event to make stuff like Mouse.KeyDown work
  11. local Disconnect_Function = function(this)
  12. this[1].Functions[this[2]] = nil
  13. end
  14. local Disconnect_Metatable = {__index={disconnect=Disconnect_Function,Disconnect=Disconnect_Function}}
  15. local FakeEvent_Metatable = {__index={
  16. Connect = function(this,f)
  17. local i = tostring(math.random(0,10000))
  18. while this.Functions[i] do
  19. i = tostring(math.random(0,10000))
  20. end
  21. this.Functions[i] = f
  22. return setmetatable({this,i},Disconnect_Metatable)
  23. end
  24. }}
  25. FakeEvent_Metatable.__index.connect = FakeEvent_Metatable.__index.Connect
  26. local function fakeEvent()
  27. return setmetatable({Functions={}},FakeEvent_Metatable)
  28. end
  29.  
  30. --Creating fake input objects with fake variables
  31. local FakeMouse = {Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent(),Button2Up=fakeEvent(),Button2Down=fakeEvent()}
  32. FakeMouse.keyUp = FakeMouse.KeyUp
  33. FakeMouse.keyDown = FakeMouse.KeyDown
  34. local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
  35. local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
  36. CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
  37. end}
  38. --Merged 2 functions into one by checking amount of arguments
  39. CAS.UnbindAction = CAS.BindAction
  40.  
  41. --This function will trigger the events that have been :Connect()'ed
  42. local function TriggerEvent(self,ev,...)
  43. for _,f in pairs(self[ev].Functions) do
  44. f(...)
  45. end
  46. end
  47. FakeMouse.TriggerEvent = TriggerEvent
  48. UIS.TriggerEvent = TriggerEvent
  49.  
  50. --Client communication
  51. local Event = Instance.new("RemoteEvent")
  52. Event.Name = "UserInput_Event"
  53. Event.OnServerEvent:Connect(function(plr,io)
  54. if plr~=RealPlayer then return end
  55. FakeMouse.Target = io.Target
  56. FakeMouse.Hit = io.Hit
  57. if not io.isMouse then
  58. local b = io.UserInputState == Enum.UserInputState.Begin
  59. if io.UserInputType == Enum.UserInputType.MouseButton1 then
  60. return FakeMouse:TriggerEvent(b and "Button1Down" or "Button1Up")
  61. end
  62. if io.UserInputType == Enum.UserInputType.MouseButton2 then
  63. return FakeMouse:TriggerEvent(b and "Button2Down" or "Button2Up")
  64. end
  65. for _,t in pairs(CAS.Actions) do
  66. for _,k in pairs(t.Keys) do
  67. if k==io.KeyCode then
  68. t.Function(t.Name,io.UserInputState,io)
  69. end
  70. end
  71. end
  72. FakeMouse:TriggerEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
  73. UIS:TriggerEvent(b and "InputBegan" or "InputEnded",io,false)
  74. end
  75. end)
  76. Event.Parent = NLS([==[local Event = script:WaitForChild("UserInput_Event")
  77. local Mouse = owner:GetMouse()
  78. local UIS = game:GetService("UserInputService")
  79. local input = function(io,RobloxHandled)
  80. if RobloxHandled then return end
  81. --Since InputObject is a client-side instance, we create and pass table instead
  82. Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
  83. end
  84. UIS.InputBegan:Connect(input)
  85. UIS.InputEnded:Connect(input)
  86.  
  87. local h,t
  88. --Give the server mouse data every second frame, but only if the values changed
  89. --If player is not moving their mouse, client won't fire events
  90. local HB = game:GetService("RunService").Heartbeat
  91. while true do
  92. if h~=Mouse.Hit or t~=Mouse.Target then
  93. h,t=Mouse.Hit,Mouse.Target
  94. Event:FireServer({isMouse=true,Target=t,Hit=h})
  95. end
  96. --Wait 2 frames
  97. for i=1,2 do
  98. HB:Wait()
  99. end
  100. end]==],script)
  101.  
  102. ----Sandboxed game object that allows the usage of client-side methods and services
  103. --Real game object
  104. local RealGame = game
  105.  
  106. --Metatable for fake service
  107. local FakeService_Metatable = {
  108. __index = function(self,k)
  109. local s = rawget(self,"_RealService")
  110. if s then
  111. return typeof(s[k])=="function"
  112. and function(_,...)return s[k](s,...)end or s[k]
  113. end
  114. end,
  115. __newindex = function(self,k,v)
  116. local s = rawget(self,"_RealService")
  117. if s then s[k]=v end
  118. end
  119. }
  120. local function FakeService(t,RealService)
  121. t._RealService = typeof(RealService)=="string" and RealGame:GetService(RealService) or RealService
  122. return setmetatable(t,FakeService_Metatable)
  123. end
  124.  
  125. --Fake game object
  126. local FakeGame = {
  127. GetService = function(self,s)
  128. return rawget(self,s) or RealGame:GetService(s)
  129. end,
  130. Players = FakeService({
  131. LocalPlayer = FakeService({GetMouse=function(self)return FakeMouse end},Player)
  132. },"Players"),
  133. UserInputService = FakeService(UIS,"UserInputService"),
  134. ContextActionService = FakeService(CAS,"ContextActionService"),
  135. RunService = FakeService({
  136. _btrs = {},
  137. RenderStepped = RealGame:GetService("RunService").Heartbeat,
  138. BindToRenderStep = function(self,name,_,fun)
  139. self._btrs[name] = self.Heartbeat:Connect(fun)
  140. end,
  141. UnbindFromRenderStep = function(self,name)
  142. self._btrs[name]:Disconnect()
  143. end,
  144. },"RunService")
  145. }
  146. rawset(FakeGame.Players,"localPlayer",FakeGame.Players.LocalPlayer)
  147. FakeGame.service = FakeGame.GetService
  148. FakeService(FakeGame,game)
  149. --Changing owner to fake player object to support owner:GetMouse()
  150. game,owner = FakeGame,FakeGame.Players.LocalPlayer
  151. end
  152.  
  153.  
  154. --// SaviOS by SavageMunkey
  155.  
  156. local Host = game:service'Players'.LocalPlayer
  157. local PlayerMouse = Host:GetMouse()
  158. local Character = Host.Character
  159.  
  160. pcall(function()
  161. Character.Humanoid['SaviOS'..Host.Name].Disabled=true
  162. Character.Humanoid['SaviOS'..Host.Name]:Destroy()
  163. end)
  164. script.Name='SaviOS'..Host.Name
  165.  
  166. local lrs = game:service'RunService'.RenderStepped
  167. local ud,c3 = UDim2.new,Color3.new
  168.  
  169. local OS
  170. OS = {
  171. Backgrounds={263065080,122603145,510593355,167312453,119945204,38397690,167312682,192050536,152026398,167312652,120582545,167493039,274050234,454292754,466900315,177053058,229293848,122646263,159102803,321434238,120214481,120480107,129805827,251350099,134993390,294851220,91427420,159103087,161729354,451983167,111563465,224033486,159103552,490565976,419023708,159111488,254890271,72090809,148038665,201380429,235907960,118966085,184001465,158549839,135040161,569012987,124111954,617785055,127976057,157765107,172813012,261956734,229544221,381428334,141204418,130675970,114611763,569627808,165460147,165460277,123128917,65246335,113000488,210624979,86219936,542893768,485873381,133109970,147298379,147297851,133461415,248254225,542822127,536363798,167312652,542895503,89552732,65151650,101805028,103684980,385601310,57939071,304922993,13511519,473575489,256418140,136004272,46076174,497195310,28143702,158772801,557860938,483527125,125134380,129296064,436986440,331063936,162704842,108531974,156021502,546688542,192509200,193859832,78289792,339807971,156513166,305407040,363144648,60043055,621825797,621828236,179089950,501279669,403674379,275918945,247421728,126655771,478203228,25719408,50358414,7460070,415408253,91215756,85243064,135112694,161131570,684101235,467373053,65891746,24960278,318592132,424415675,17266396,64198567,230444445,156269405,179089950,248285466,202899851,156314932,151133945,514648696,};
  172. Properties = {'AllowClientInsertModels','BrickColor','Color','ShowDevelopmentGui','ResetPlayerGuiOnSpawn','Parent','CustomPhysicalProperties','WaterColor','WaterTransparency','WaterWaveSize','WaterWaveSpeed','AllowThirdPartySales','FilteringEnabled','StreamingEnabled','Gravity','FallenPartsDestroyHeight','Archivable','AbsolutePosition','AbsoluteSize','AccountAge','AccountAgeReplicate','Active','Adornee','AllowAmbientOcclusion','AllowTeamChangeOnTouch','AluminumQuality','AlwaysOnTop','Ambient','AmbientReverb','Anchored','Angularvelocity','AnimationId','Archivable','AreHingesDetected','AttachmentForward','AttachmentPoint','AttachmentPos','AttachmentRight','AttachmentUp','AutoAssignable','AutoButtonColor','AutoColorCharacters','AvailablePhysicalMemory','Axes','BackgroundColor','BackgroundColor3','BackgroundTransparency','BackSurface','BaseTextureId','BaseUrl','Bevel','Roundness','BinType','BlastPressure','BlastRadius','C0','C1','HeadColor','LeftArmColor','RightArmColor','LeftLegColor','RightLegColor','HumanoidRootPartColor','BodyColor','BodyPart','BorderColor','BorderColor3','BorderSizePixel','BottomSurface','BrickColor','Brightness','Browsable','BubbleChat','BubbleChatLifetime','BubbleChatMaxBubbles','Bulge','Button1DownConnectionCount','Button1UpConnectionCount','Button2DownConnectionCount','Button2UpConnectionCount','C0','C1','CameraMode','CameraSubject','CameraType','CanBeDropped','CanCollide','CartoonFactor','CastShadows','CelestialBodiesShown','CFrame','Cframe','Character','CharacterAppearance','CharacterAutoLoads','ChatScrollLength','ClassicChat','ClassName','ClearTextOnFocus','ClipsDescendants','CollisionSoundEnabled','CollisionSoundVolume','Color','ColorShift_Top','ColorShift_Bottom','Bottom','Top','ConstrainedValue','Contro'..'llingHumanoid','ControlMode','ConversationDistance','CoordinateFrame','CorrodedMetalQuality','CPU','CpuCount','CpuSpeed','CreatorId','CreatorType','CurrentAngle','CurrentCamera','CycleOffset','D','DataCap','DataComplexity','DataComplexityLimit','DataCost','DataReady','Deprecated','DeselectedConnectionCount','DesiredAngle','DiamondPlateQuality','Disabled','DistanceFactor','DistributedGameTime','DopplerScale','Draggable','DraggingV1','Duration','EditorFont','EditorFontSize','EditorTabWidth','ElapsedTime','Elasticity','Enabled','ExplosionType','ExtentsOffset','F0','F1','F2','F3','Face','FaceId','Faces','FieldOfView','Focus','FogColor','FogEnd','FogStart','Font','FontSize','Force','FormFactor','Friction','From','FrontSurface','GearGenreSetting','Genre','GeographicLatitude','GfxCard', 'GlobalShadows','Graphic','GrassQuality','Grip','GripForward','GripPos','GripRight','GripUp','Guest','HeadsUpDisplay','Health','Heat','Hit','Humanoid','IceQuality','Icon','IdleConnectionCount','Image','InitialPrompt','InOut','InUse','IsPaused','IsPlaying','JobId','Jump','KeyDownConnectionCount','KeyUpConnectionCount','LeftLeg','LeftRight','LeftSurface','LinkedSource','LocalPlayer','Location','Locked','LODX','LODY','Looped','Material','MaxActivationDistance','MaxCollisionSounds','MaxExtents','MaxForce','MaxHealth','MaxItems','MaxPlayers','MaxSpeed','MaxThrust','MaxTorque','MaxValue','MaxVelocity','MembershipType','MembershipTypeReplicate','MeshId','MeshType','MinValue','Modal','MouseButton1ClickConnectionCount','MouseButton1DownConnectionCount','MouseButton1UpConnectionCount','MouseButton2ClickConnectionCount','MouseButton2DownConnectionCount','MouseButton2UpConnectionCount','MouseDelta','MouseDragConnectionCount','MouseEnterConnectionCount','MouseHit','MouseLeaveConnectionCount','MouseLock','MouseMovedConnectionCount','MouseTarget','MouseTargetFilter','MouseTargetSurface','MoveConnectionCount','MoveState','MultiLine','Name','NameOcclusion','NetworkOw'..'ner','Neutral','NumPlayers','Offset','Opacity','Origin','OsPlatform','OsVer','OutdoorAmbient','OverlayTextureId','P','PantsTemplate','ParamA','ParamB','Parent','PrimaryPart','Part','Part0','Part1','Pitch','PixelShaderModel','PlaceId','PlasticQuality','PlatformStand','PlayCount','PlayerToHideFrom','PlayOnRemove','Point','Port','Position','Preliminary','PrimaryPart','PrivateWorkingSetBytes','Purpose','RAM','Reflectance','ReplicatedSelectedConnectionCount','ResizeableFaces','ResizeIncrement','Resolution','ResponseDialog','RightLeg','RightSurface','RiseVelocity','RobloxLocked','RobloxVersion','RolloffScale','RotVelocity','Scale','Score','ScriptsDisabled','SecondaryColor','Selected','ShadowColor','Shape','Shiny','ShirtTemplate','ShowDeprecatedObjects','ShowDevelopmentGui','ShowPreliminaryObjects','Sides','Sit','Size','SizeConstraint','SizeOffset','SkinColor','SkyboxBk','SkyboxDn','SkyboxFt','SkyboxLf','SkyboxRt','SkyboxUp','SlateQuality','SoundId','Source','SparkleColor','Specular','StarCount','Steer','StickyWheels','StudsBetweenTextures','StudsOffset','StudsPerTileU','StudsPerTileV','Style','Summary','SuperSa'..'feChatReplicate','Surface','Surface0','Surface1','SurfaceInput','Target','TargetFilter','TargetOffset','TargetPoint','TargetRadius','TargetSurface','TeamColor','Terrain','Text','TextBounds','TextColor','TextColor3','TextFits','TextScaled','TextStrokeColor3','TextStrokeTransparency','TextTransparency','Texture','TextureId','TextureSize','TextWrap','TextWrapped','TextXAlignment','TextYAlignment','Throttle','ThrustD','ThrustP','Ticket','Time','TimeOfDay','To','Tone','ToolTip','TopBottom','TopSurface','Torque','HumanoidRootPart','Transparency','TrussDetail','TurnD','TurnP','TurnSpeed','UnitRay','UserDialog','UserId','Value','Version','VertexColor','VideoCaptureEnabled','VideoMemory','VideoQuality','ViewSizeX','ViewSizeY','Visible','Volume','WalkDirection','WalkSpeed','WalkToPart','WalkToPoint','WheelBackwardConnectionCount','WheelForwardConnectionCount','WindowSize','WireRadius','WoodQuality','X','Y','Z'};
  173. DecalAssets={200182847};
  174. --//49,51,51,55,115,97,118
  175. Sounds = {
  176. 319758951,485859421,191035676,142312040,165065112,166471137,208240682,226788368,193399717,
  177. 274427825,155949200,209864226,211626338,232560219,172427188,180115728,170968526,
  178. 148492408,177956804,132399469,218530627,234627720,182411115,188712851,176454530,
  179. 685204898,736225554,267915404,180795185,263998927,181428192,266427268,215974232,
  180. 177297354,248794208,262158959,282890395,252612142,252614631,252613867,203275374,
  181. 244763119,169898604,173060483,181065299,294185225,657230380,574818336,
  182. };
  183. RecentlyUsedPrograms={};
  184. UIs={};
  185. Logins={
  186. {'SavageMunkey','abcd12',Color3.new(.1,.1,.1),Color3.new(1,1,1),497195310};--167312453};
  187. {'Artiecsal','sookithearth',c3(0,0,0),c3(1,1,1),122646263},
  188. {'Luke_Ames','xXfatphonesXx',c3(.5,0,0),c3(1,1,1),621828236},
  189. {'Lord_Azure','AzureIsGay',c3(.3,0,0),c3(1,1,1),215152878},
  190. };
  191. Administrators={
  192. 'SavageMunkey',
  193. 'Aeodile',
  194. };
  195. Effects={};
  196. Functions={};
  197. Assets={};
  198. Apps={
  199. Qeued={};
  200. Generated={};
  201. Open={};
  202. };
  203. Settings={
  204. Fonts = {
  205. Header = 'Code',
  206. Sub_Header = 'Highway',
  207. };
  208. };
  209. };
  210.  
  211. Functions = OS.Functions
  212. Effects = OS.Effects
  213.  
  214. OS.GenCode = math.random()*9e5
  215.  
  216. local CurrentPlayerData=nil
  217. local Official=true
  218.  
  219. function Functions:ConvertColor3(r,g,b)
  220. return c3(1-(1/r),1-(10/g),1-(10/b)) --//derped
  221. end
  222.  
  223. function Functions:ReturnObjectProperties(Object)
  224. assert(pcall(function()
  225. assert(game.IsA(Object,'Instance'))
  226. end),'Should be ROBLOX instance')
  227. local Returns = {}
  228. for _, Value in next, OS.Properties do
  229. if pcall(function() return Object[Value] end) and (type(Object[Value]) ~= 'userdata' or not Object:FindFirstChild(Value)) then
  230. Returns[Value] = Object[Value]
  231. end
  232. end
  233. return Returns
  234. end;
  235.  
  236. --print(Functions:ConvertColor3(170, 0, 255))
  237.  
  238. function Functions:GrabHostData()
  239. local PlayerData=nil
  240. local Found=0
  241. for Index, Data in next, OS.Logins do
  242. if Data[1] == tostring(Host) then
  243. PlayerData=Data
  244. Found=Found+1
  245. end
  246. end
  247. if PlayerData then
  248. CurrentPlayerData=PlayerData
  249. else
  250. Official=false
  251. CurrentPlayerData={Host.Name,Host.Name:lower():sub(0,5)..'12'..math.random(-50,50),c3(.25,.25,.25),c3(1,1,1),OS.Backgrounds[math.random(1,#OS.Backgrounds)]};
  252. script:Destroy()
  253. end
  254. if Found > 1 then
  255. error('Found more than one('..Found..') data tables for '..Host.Name,2)
  256. end
  257. end
  258.  
  259. Functions:GrabHostData()
  260.  
  261. table.foreach(CurrentPlayerData,print)
  262.  
  263. function Functions:GetPlayerImg(User)
  264. local ID = 'http://www.roblox.com/Thumbs/Avatar.ashx?x=150&y=200&Format=Png&username='..tostring(User)
  265. return ID
  266. end
  267.  
  268. ypcall(function()
  269. --workspace['mon-mon']:Destroy()
  270. end)
  271.  
  272. local Monitor, G, MainFrame
  273. function Functions:MakeMonitor()
  274. pcall(function() workspace['mon-mon'..Host.Name]:Destroy() end)
  275. local sc=Instance.new('Script', workspace)
  276. sc.Name='mon-mon'..Host.Name
  277. OS.Assets.FScript=sc
  278. Monitor = Instance.new('Part', sc)
  279. Monitor.Size = Vector3.new(24,14,.1)
  280. Monitor.Anchored = true
  281. Monitor.Locked=true
  282. Monitor.Transparency=0
  283. Monitor.Color=Color3.new(1,1,1)
  284. Monitor.Material='Neon'
  285. Monitor.Name='mon-mon'
  286. Instance.new('SurfaceLight',Monitor).Face='Back'
  287. Monitor.CanCollide = false
  288. Monitor.TopSurface,Monitor.BottomSurface=0,0
  289. local Flat = Instance.new('BlockMesh', Monitor)
  290. Flat.Scale = Vector3.new(1,1,0)
  291. spawn(function()
  292. for i = 0,1.025,.025 do
  293. --Monitor.Transparency = 1.3-i
  294. lrs:wait()
  295. end
  296. end)
  297. end
  298.  
  299. function Functions:MakeNewUi(Type)
  300. local Ui = Instance.new(Type)
  301.  
  302. local function TypeIsA(Table, Goal)
  303. for i,v in next, Table do
  304. if v:lower()==Type:lower() then
  305. Goal(Ui)
  306. end
  307. end
  308. end
  309.  
  310. Ui.ClipsDescendants = true
  311. Ui.Size = ud(1,0,1,0)
  312. Ui.BackgroundTransparency = 1
  313. TypeIsA({'TextButton'}, function(tUi)
  314. Ui.AutoButtonColor = false
  315. end)
  316. Ui.BackgroundColor3 = CurrentPlayerData[3]
  317. Ui.BorderSizePixel = 0
  318. TypeIsA({'ImageLabel','ImageButton'}, function(tUi)
  319.  
  320. end)
  321. TypeIsA({'TextButton','TextLabel','TextBox'}, function(tUi)
  322. tUi.TextColor3 = CurrentPlayerData[4]
  323. tUi.Font = OS.Settings.Fonts.Header
  324. tUi.Text=''
  325. tUi.FontSize = Enum.FontSize.Size18
  326. end)
  327. delay(.1,function()
  328. OS.UIs[Ui.Name]={Ui,true}
  329. local oUi=Ui
  330. spawn(function()
  331. repeat lrs:wait() until Ui.Parent == nil
  332. OS.UIs[oUi.Name]={nil,false}
  333. end)
  334. end)
  335. Ui.ZIndex=7
  336. return Ui
  337. end
  338.  
  339. function Functions:Center(Ui)
  340. local co={Ui.Size.X.Offset/2,
  341. Ui.Size.Y.Offset/2};
  342. return ud(.5,-co[1],.5,-co[2])
  343. end
  344.  
  345. function Functions:CenterOffset(Ui, Offset)
  346. local co={Ui.Size.X.Scale,
  347. Ui.Size.X.Offset/2,
  348. Ui.Size.Y.Scale,
  349. Ui.Size.Y.Offset/2
  350. };
  351. return ud(.5+Offset.X.Scale,-co[2]+Offset.X.Offset,.5+Offset.Y.Scale,-co[4]+Offset.Y.Offset)
  352. end
  353.  
  354. local TypeDebs={};
  355. function Effects:Type(Ui, Text, Type, Delay)
  356. TypeDebs[Ui]=false
  357. if Type == 'In' then
  358. local Continue = true
  359. for i = 0,#Text do
  360. if TypeDebs[Ui] then
  361. Continue = false
  362. return
  363. end
  364. if not Continue then
  365. return
  366. end
  367. Ui.Text = Text:sub(0,i)..'|'
  368. wait(Delay)
  369. end
  370. Ui.Text = Text
  371. elseif Type == 'Out' then
  372. local Continue = true
  373. for i = 0,#Text do
  374. if TypeDebs[Ui] then
  375. Continue = false
  376. return
  377. end
  378. if not Continue then
  379. return
  380. end
  381. Ui.Text = Text:sub(0,1-i)..'|'
  382. wait(Delay)
  383. end
  384. Ui.Text = Text
  385. else
  386. error'Please enter a TransitionType (Out, In)'
  387. end
  388. end
  389.  
  390. function Functions:Sound(Id ,Rmv)
  391. local snd=Instance.new('Sound', Character:WaitForChild'Head' or Monitor or workspace)
  392. if Rmv then
  393. for index,o in next, snd.Parent:children() do
  394. if o:IsA'Sound' and o ~= snd then
  395. o:Stop()
  396. o:Destroy()
  397. end
  398. end
  399. end
  400. snd.EmitterSize=20
  401. snd.SoundId=Functions:Asset(Id)
  402. snd.Volume=.6
  403. delay(8,function()
  404. if not snd.Looped and snd.IsPlaying==false then
  405. snd:Stop()
  406. snd:Destroy()
  407. end
  408. end)
  409. return snd
  410. end
  411.  
  412. function Effects:Underline(Ui, YOffset, XThickness, YThickness, Color, Fade)
  413. local Label = Functions:MakeNewUi('TextLabel')
  414. Label.BackgroundColor3 = Color
  415. Label.BackgroundTransparency=.2
  416. Label.Size = ud(0,0,0,YThickness)
  417. Label.Position = Functions:CenterOffset(Label, ud(0,0,0,YOffset))
  418. Label.Parent = Ui
  419. Label.ZIndex = 9
  420. if Fade then
  421. Label.BackgroundTransparency = 1
  422. delay(.5,function()
  423. Label:TweenSizeAndPosition(ud(0,XThickness,0,YThickness),Functions:CenterOffset(Label,ud(0,-XThickness/2,0,YOffset)),'Out','Back',1,true)
  424. end)
  425. for i = 0,1.025,.025 do
  426. Label.BackgroundTransparency = (1.2 - i)
  427. lrs:wait()
  428. end
  429. else
  430. Label.Size = ud(0,XThickness,0,YThickness)
  431. Label.Position = Functions:CenterOffset(Label, ud(0,0,0,YOffset))
  432. end
  433. return Label
  434. end
  435.  
  436. function Functions:Asset(Id)
  437. return 'rbxassetid://'..Id
  438. end
  439.  
  440. function Functions:PlayerImage(User)
  441. return 'http://www.roblox.com/Thumbs/Avatar.ashx?x=150&y=200&Format=Png&username='..tostring(User)
  442. end
  443.  
  444. function Functions:LoginScreenGui(Size,ltbl,Fade)
  445. if Host.PlayerGui:FindFirstChild'nomnompw' then
  446. end
  447. local limit=16
  448. local SGui = Instance.new('ScreenGui', Host.PlayerGui)
  449. SGui.Name='nomnompw'
  450. local Box = Functions:MakeNewUi('TextBox')
  451. Box.ClearTextOnFocus=true
  452. Box.TextColor3 = CurrentPlayerData[3]
  453. Box.TextStrokeTransparency=.9
  454. Box.Size=Size
  455. Box.Text = 'Enter your Password'
  456. Box.Position=Functions:Center(Box)
  457. Box.BackgroundTransparency=1
  458. Box.TextStrokeColor3=CurrentPlayerData[3]
  459. Box.Parent=SGui
  460. Box.BackgroundColor3 = CurrentPlayerData[4]
  461. local enabled=true
  462. if Fade then
  463. Box.Position = Functions:CenterOffset(Box,ud(0,0,-.4,0))
  464. for i = 0,1,.05 do
  465. Box.BackgroundTransparency=1-i
  466. lrs:wait()
  467. end
  468. Box:CaptureFocus()
  469. end
  470. local ev
  471. ev=Box.Focused:connect(function()
  472. --ev:disconnect()
  473. Box.ClearTextOnFocus=false
  474. end)
  475. local ev2
  476. local lt=''
  477. ev2=Box.FocusLost:connect(function()
  478. if #Box.Text < 1 or Box.Text == 'Enter your Password' then
  479. Box.Text='Enter your Password'
  480. Box.ClearTextOnFocus=true
  481. end
  482. if Box.Text==CurrentPlayerData[2] then
  483. ev:disconnect()
  484. ev2:disconnect()
  485. Box.Active=false
  486. Box:TweenPosition(Functions:CenterOffset(Box,ud(0,0,-.55,0)),'Out','Linear',.5,true)
  487. Box.TextStrokeTransparency=1
  488. for i = 0,1,.05 do
  489. Box.BackgroundTransparency=i
  490. Box.TextTransparency=i
  491. lrs:wait()
  492. end
  493. lt=Box.Text
  494. SGui:Destroy()
  495. end
  496. end)
  497. Box.BackgroundTransparency=0
  498. if ltbl.loop then
  499. while SGui.Parent and enabled do
  500. lt=Box.Text
  501. if #Box.Text>limit and Box.Text ~= 'Enter your Password' then
  502. Box:ReleaseFocus()
  503. Box.Active=false
  504. local bft=Box.Text
  505. Box.Text='Password '..limit..' character limit.'
  506. wait(2)
  507. Box.Text=bft:sub(0,limit)
  508. Box.Active=true
  509. Box:CaptureFocus()
  510. end
  511. if #Box.Text>1 and Box.Text ~= 'Enter your Password' then
  512. local nt=''
  513. ltbl.ui.Text=nt
  514. for i = 1,#Box.Text do
  515. nt=nt..'*'
  516. end
  517. ltbl.ui.Text=nt
  518. elseif #Box.Text==0 then
  519. if Box.Text ~= 'Enter your Password' then
  520. Box.Text='Enter your Password'
  521. ltbl.ui.Text='Enter your Password'
  522. Box:ReleaseFocus()
  523. Box.ClearTextOnFocus=true
  524. end
  525. end
  526. lrs:wait()
  527. end
  528. end
  529. return lt
  530. end
  531.  
  532. function Functions:IfRegistered(Player, Function)
  533. local Bool = false
  534. for Index, Data in next, OS.Logins do
  535. local user=Data[1]
  536. local pass=Data[2]
  537. if user == tostring(Player) then
  538. Bool = true
  539. end
  540. end
  541. Function(Bool)
  542. end
  543.  
  544. function Functions:CreateProgram(Name, Id, Nick, Description, Click)
  545. table.insert(OS.Apps.Qeued,{tostring(Name), tonumber(Id), tostring(NickName), tostring(Description), Click})
  546. end;
  547.  
  548. local Search
  549. function Functions:Search(Parent, Function)
  550. for Index, Object in next, Parent:children() do
  551. pcall(function()
  552. Function(Object)
  553. end)
  554. Functions:Search(Object, Function)
  555. end
  556. end
  557.  
  558. function Functions:ShowChar()
  559. OS.Functions:Search(Character, function(Object)
  560. if (Object:IsA'BasePart' or Object:IsA'Decal') and Object.Name ~='HumanoidRootPart' then
  561. Object.Transparency = 0
  562. end
  563. end)
  564. end
  565.  
  566. function Functions:HideChar()
  567. OS.Functions:Search(Character, function(Object)
  568. if (Object:IsA'BasePart' or Object:IsA'Decal') and Object.Name ~='HumanoidRootPart' then
  569. Object.Transparency = 1
  570. end
  571. end)
  572. end
  573.  
  574. local Notes={};
  575. Functions:CreateProgram('Notepad++', 43360681, 'N++', 'Notepad for your... "personal" needs?', function(HF,TF,CF)
  576. local tb = Functions:MakeNewUi('TextButton')
  577. tb.Parent=CF
  578. tb.TextWrapped=true
  579. table.insert(Notes,tb)
  580. tb.Text = 'Notepad; '..#Notes
  581. tb.TextColor3=CurrentPlayerData[3]
  582. tb.BackgroundColor3=CurrentPlayerData[4]
  583. tb.Font=OS.Settings.Fonts.Sub_Header
  584. tb.TextStrokeTransparency=.9
  585. tb.TextStrokeColor3=CurrentPlayerData[3]
  586. tb.TextXAlignment='Left'
  587. tb.TextYAlignment='Top'
  588. local SGui
  589. tb.MouseButton1Click:connect(function()
  590. pcall(function()
  591. SGui:Destroy()
  592. end)
  593. if Host.PlayerGui:FindFirstChild'nomnoemnp' then Host.PlayerGui:FindFirstChild'nomnoemnp':Destroy() end
  594. SGui = Instance.new('ScreenGui', Host.PlayerGui)
  595. SGui.Name='nomnoemnp'
  596. local Box = Functions:MakeNewUi('TextBox')
  597. Box.ClearTextOnFocus=false
  598. Box.TextColor3 = CurrentPlayerData[3]
  599. Box.TextStrokeTransparency=.9
  600. Box.Size=ud(1,0,1,0)
  601. Box.Position=ud(-1,0,0,0)
  602. Box.Text = tb.Text
  603. Box.Visible = false
  604. Box.TextXAlignment='Left'
  605. --Box.MultiLine=true
  606. Box.TextYAlignment='Top'
  607. Box.BackgroundTransparency=1
  608. Box.TextStrokeColor3=CurrentPlayerData[3]
  609. Box.Parent=SGui
  610. Box.BackgroundColor3 = CurrentPlayerData[4]
  611. Box:CaptureFocus()
  612. Box.FocusLost:connect(function()
  613. SGui:Destroy()
  614. end)
  615. local isub = '|'
  616. local l=false
  617. spawn(function()
  618. if tb.Text:sub(#tb.Text,#tb.Text)=='|' then
  619. tb.Text=tb.Text:sub(1,#tb.Text-1)
  620. end
  621. local canc = false
  622. spawn(function()
  623. while not canc do
  624. wait(.6)
  625. l=not l
  626. if l == true then
  627. isub='|'
  628. else
  629. isub=''
  630. end
  631. end
  632. end)
  633. repeat
  634. tb.Text=Box.Text..isub
  635. lrs:wait()
  636. until SGui.Parent ~= Host.PlayerGui
  637. if l then
  638. tb.Text=tb.Text:sub(1,#tb.Text-1)
  639. end
  640. --print'canc'
  641. canc=true
  642. SGui=nil
  643. end)
  644. end)
  645. end)
  646. --script.Parent=Host.PlayerGui
  647.  
  648. Functions:CreateProgram('Calculator', 45545182, 'Calc', 'Math stuff man', function(HF,TF,CF)
  649. HF.Size = UDim2.new(0,150,0,300)
  650. end)
  651.  
  652. local osEVENT = game:service'SoundService':FindFirstChild'osEVENT'
  653. if osEVENT==nil then
  654. osEVENT = Instance.new('RemoteEvent',game:service'SoundService')
  655. osEVENT.Name='osEVENT'
  656. end
  657.  
  658. if game.PlaceId == 691043264 then
  659. Functions:CreateProgram('Lua', 71157241, 'LUA', 'Execute stuff...', function(HF,TF,CF)
  660. local tb = Functions:MakeNewUi('TextButton')
  661. tb.Parent=CF
  662. tb.TextWrapped=true
  663. tb.Text = ''
  664. tb.TextColor3=CurrentPlayerData[3]
  665. tb.BackgroundColor3=CurrentPlayerData[4]
  666. tb.Font=OS.Settings.Fonts.Sub_Header
  667. tb.Size=ud(.6,0,.9,0)
  668. tb.TextXAlignment='Left'
  669. tb.TextYAlignment='Top'
  670.  
  671. local run = Functions:MakeNewUi('TextButton')
  672. run.Parent=CF
  673. run.Text = 'Run Script'
  674. run.BackgroundTransparency=0
  675. run.TextColor3=CurrentPlayerData[4]
  676. run.BackgroundColor3=CurrentPlayerData[3]
  677. run.Font=OS.Settings.Fonts.Header
  678. run.Position=ud(0,0,.95,0)
  679. run.TextSize=11
  680. run.Size=ud(.6,0,.05,0)
  681.  
  682. local cleartb = Functions:MakeNewUi('TextButton')
  683. cleartb.Parent=CF
  684. cleartb.Text = 'Clear Text'
  685. cleartb.BackgroundTransparency=0
  686. cleartb.TextColor3=CurrentPlayerData[4]
  687. cleartb.BackgroundColor3=CurrentPlayerData[3]
  688. cleartb.Font=OS.Settings.Fonts.Header
  689. cleartb.Position=ud(0,0,.9,0)
  690. cleartb.TextSize=11
  691. cleartb.Size=ud(.6,0,.05,0)
  692.  
  693. local ipos = 0
  694. local timefromlast=0
  695. local longestx=0
  696.  
  697. local clear = Functions:MakeNewUi('TextButton')
  698. clear.Parent=CF
  699. clear.Text = 'Clear Output'
  700. clear.BackgroundTransparency=0
  701. clear.TextColor3=CurrentPlayerData[4]
  702. clear.BackgroundColor3=CurrentPlayerData[3]
  703. clear.Font=OS.Settings.Fonts.Header
  704. clear.Position=ud(.6,0,.95,0)
  705. clear.TextSize=11
  706. clear.Size=ud(.4,0,.05,0)
  707.  
  708. local output = Functions:MakeNewUi('ScrollingFrame')
  709. output.Parent=CF
  710. output.BackgroundColor3=CurrentPlayerData[3]
  711. output.Position=ud(.6,0,0,0)
  712. output.BackgroundTransparency=0
  713. output.Size=ud(.4,0,.95,0)
  714.  
  715. function op(argz)
  716. local txt,code,clr = argz[1],argz[2],argz[3]
  717. clr=clr or Color3.new(1,1,1)
  718. txt=' > '..txt or 'NO_TEXT'
  719. --print(txt,code,clr)
  720. local is = (tostring(code)==tostring(OS.GenCode))
  721. if is then
  722. timefromlast=0
  723. local lbl = Functions:MakeNewUi('TextLabel')
  724. lbl.Parent=output
  725. lbl.Position=ud(0,0,0,ipos)
  726. lbl.TextSize=10
  727. if #txt > longestx then
  728. longextx=#txt
  729. end
  730. --txt=txt:gsub('\n','')
  731. lbl.TextColor3 = clr
  732. lbl.TextWrapped=true
  733. local count=0
  734. local notting=true
  735. lbl.TextXAlignment='Left'
  736. lbl.Text = txt
  737. lbl.BackgroundTransparency=1
  738. lbl.Size=ud(33,0,0,lbl.TextBounds.Y+5)
  739. ipos=ipos+lbl.TextBounds.Y+2
  740. spawn(function()
  741. while notting do
  742. lrs:wait()
  743. count=count+1
  744. local asx=output.AbsoluteSize.X
  745. local tbx=lbl.TextBounds.X
  746. --print(tbx,asx)
  747. if tbx > asx then
  748. lbl.Text=lbl.Text:sub(1+(asx*(count-1)),asx*count)..'\n'..lbl.Text:sub((asx*count)+1)
  749. else
  750. notting=false
  751. end
  752. end
  753. end)
  754. lbl.Size=ud(1,0,0,lbl.TextBounds.Y+5)
  755. end
  756. end
  757.  
  758. op({'Hello world!', OS.GenCode, Color3.new(1,1,1)})
  759.  
  760. clear.MouseButton1Click:connect(function()
  761. output:ClearAllChildren()
  762. ipos=0
  763. longestx=0
  764. timefromlast=0
  765. op({'Cleared output', OS.GenCode, BrickColor.new'Dark green'.Color})
  766. end)
  767.  
  768. cleartb.MouseButton1Click:connect(function()
  769. tb.Text=''
  770. pcall(function()
  771. SGui.Text=''
  772. end)
  773. end)
  774.  
  775. local oev = osEVENT.OnClientEvent:connect(function(Argz)
  776. op(Argz)
  777. end)
  778.  
  779. spawn(function()
  780. local ii=0
  781. repeat lrs:wait()
  782. timefromlast=timefromlast+.05
  783. ii=Functions:IntegerLerp(ii,ipos,.15)
  784. if timefromlast < 5 then
  785. output.CanvasSize=ud(0,longestx,0,ii)
  786. output.CanvasPosition=Vector2.new(0,ii)
  787. end
  788. until run.Parent ~= CF
  789. oev:disconnect()
  790. --print'dis'
  791. end)
  792.  
  793. run.MouseButton1Click:connect(function()
  794. local lscode = [[
  795. local owner = game:service'Players':WaitForChild(']]..Host.Name..[[')
  796. local event = game:service'SoundService':WaitForChild'osEVENT'
  797. local code = ]]..OS.GenCode..[[
  798. function print(...)
  799. local Data, Return = {...}, ""
  800. for Index,Value in pairs(Data) do
  801. Return = Return .. tostring(Value) .. (Index < #Data and ", " or "")
  802. end
  803. event:FireClient(owner,{Return,code,Color3.new(1,1,1)})
  804. end
  805. function warn(...)
  806. local Data, Return = {...}, ""
  807. for Index,Value in pairs(Data) do
  808. Return = Return .. tostring(Value) .. (Index < #Data and ", " or "")
  809. end
  810. event:FireClient(owner,{Return,code,Color3.new(1,.5,0)})
  811. end
  812. function ferror(...)
  813. local Data, Return = {...}, ""
  814. for Index,Value in pairs(Data) do
  815. Return = Return .. tostring(Value) .. (Index < #Data and ", " or "")
  816. end
  817. event:FireClient(owner,{Return,code,Color3.new(.8,0,0)})
  818. end
  819. delay(20,function()
  820. event:FireClient(owner,{'Auto removed script - delay ; 20',code,BrickColor.new'Dark green'.Color})
  821. script:Destroy()
  822. end)
  823. local script = workspace:WaitForChild(']]..tostring(OS.Assets.FScript.Name)..[[')
  824. ]]
  825. local formattedcode = [[
  826. pcall(function()
  827. local Success, Error = pcall(function()
  828. ]]..tb.Text..[[
  829. end)
  830. if not Success then
  831. local err = Error
  832. err=err:gsub('ScriptBuilderScript','OS.sb')
  833. err=err:gsub('544','1')
  834. ferror(err)
  835. local stacks = debug.traceback()
  836. stacks=stacks:gsub('ScriptBuilderScript','OS.sb')
  837. event:FireClient(owner,{stacks,code,BrickColor.new'Bright blue'.Color})
  838. else
  839. event:FireClient(owner,{'Ran script',code,BrickColor.new'Bright blue'.Color})
  840. end
  841. end)
  842. ]]
  843. NS(lscode..'\n\n'..formattedcode, workspace)
  844. end)
  845.  
  846. local SGui
  847. tb.MouseButton1Click:connect(function()
  848. pcall(function()
  849. SGui:Destroy()
  850. end)
  851. if Host.PlayerGui:FindFirstChild'nomnoemnp' then Host.PlayerGui:FindFirstChild'nomnoemnp':Destroy() end
  852. SGui = Instance.new('ScreenGui', Host.PlayerGui)
  853. SGui.Name='nomnoemnp'
  854. local Box = Functions:MakeNewUi('TextBox')
  855. Box.ClearTextOnFocus=false
  856. Box.TextColor3 = CurrentPlayerData[3]
  857. Box.TextStrokeTransparency=.9
  858. Box.Size=ud(1,0,1,0)
  859. Box.Position=ud(-1,0,0,0)
  860. Box.Text = tb.Text
  861. Box.Visible = false
  862. Box.TextXAlignment='Left'
  863. --Box.MultiLine=true
  864. Box.TextYAlignment='Top'
  865. Box.BackgroundTransparency=1
  866. Box.TextStrokeColor3=CurrentPlayerData[3]
  867. Box.Parent=SGui
  868. Box.BackgroundColor3 = CurrentPlayerData[4]
  869. Box:CaptureFocus()
  870. Box.FocusLost:connect(function()
  871. SGui:Destroy()
  872. end)
  873. local isub = '|'
  874. local l=false
  875. spawn(function()
  876. if tb.Text:sub(#tb.Text,#tb.Text)=='|' then
  877. tb.Text=tb.Text:sub(1,#tb.Text-1)
  878. end
  879. local canc = false
  880. spawn(function()
  881. while not canc do
  882. wait(.6)
  883. l=not l
  884. if l == true then
  885. isub='|'
  886. else
  887. isub=''
  888. end
  889. end
  890. end)
  891. repeat
  892. tb.Text=Box.Text..isub
  893. lrs:wait()
  894. until SGui.Parent ~= Host.PlayerGui
  895. if l then
  896. tb.Text=tb.Text:sub(1,#tb.Text-1)
  897. end
  898. canc=true
  899. SGui=nil
  900. end)
  901. end)
  902. end)
  903. end
  904.  
  905. Functions:CreateProgram('Settings',485882401,'Sett','Also self explanitory...',function(HF,TF,CF)
  906. end)
  907.  
  908. spawn(function()
  909. local nw={};
  910. for i,v in next, OS.Backgrounds do
  911. delay(math.random()*5,function()
  912. nw[#nw+1]=v
  913. end)
  914. end
  915. repeat wait() until #nw==#OS.Backgrounds
  916. wait(.5)
  917. OS.Backgrounds=nw
  918. Functions:Notification('Formatted OS.Backgrounds', 4)
  919. end)
  920.  
  921. spawn(function()
  922. local nw={};
  923. for i,v in next, OS.Sounds do
  924. delay(math.random()*5,function()
  925. nw[#nw+1]=v
  926. end)
  927. end
  928. repeat wait() until #nw==#OS.Sounds
  929. wait(.5)
  930. OS.Sounds=nw
  931. Functions:Notification('Formatted OS.Sounds', 4)
  932. end)
  933.  
  934. Functions:CreateProgram('Gallery', 152445445, 'Images', 'View your favorite, saved, and default images', function(HF,TF,CF)
  935. local title = Functions:MakeNewUi('TextLabel')
  936. title.TextColor3 = CurrentPlayerData[3]
  937. title.TextStrokeTransparency=1
  938. title.Size=ud(1,0,.1,0)
  939. title.Text = 'Gallery - '..#OS.Backgrounds..' assets total'
  940. title.TextXAlignment='Center'
  941. title.TextYAlignment='Center'
  942. title.Font = OS.Settings.Fonts.Header
  943. title.BackgroundTransparency=1
  944. title.Parent=CF
  945. title.BackgroundColor3 = CurrentPlayerData[4]
  946.  
  947. spawn(function()
  948. wait(1)
  949. Effects:Underline(title, 15, 300, 2, CurrentPlayerData[3], true)
  950. end)
  951.  
  952. local scroll = Functions:MakeNewUi('ScrollingFrame')
  953. scroll.Size=ud(1,0,.9,0)
  954. scroll.Position = ud(0,0,.1,0)
  955. scroll.BackgroundTransparency=0
  956. scroll.TopImage=Functions:Asset(317839361)
  957. scroll.MidImage=Functions:Asset(317839361)
  958. scroll.BottomImage=Functions:Asset(317839361)
  959. scroll.ScrollBarThickness = 5
  960. scroll.Parent=CF
  961. scroll.BackgroundColor3 = CurrentPlayerData[4]
  962.  
  963. local Loaded = 0
  964. local o,d = 0,0
  965. local curbg = nil
  966. local bgs={};
  967. for i, Id in next, OS.Backgrounds do
  968. --local Market = game:service'MarketplaceService'
  969. --local Asset = Market:GetProductInfo(Id)
  970.  
  971. local Img = Functions:MakeNewUi('ImageButton')
  972. Img.Image = Functions:Asset(Id)
  973. local scl = 2
  974. local add = .005
  975. local sx,sy=(.089*scl),(.05*scl)
  976. Img.Size=ud(sx,0,0,34*2)
  977. Img.Position = ud(((sx+add)*o)+.05,0,0,((36*2)*d))
  978. o=o+1
  979. game:service'RunService'.RenderStepped:wait()
  980. if sx*(o+1) >= 1 then
  981. d=d+1
  982. o=0
  983. scroll.CanvasSize=ud(0,0,0,((36*2)*d))
  984. end
  985. Img.BackgroundColor3 = scroll.BackgroundColor3
  986. Img.BorderColor3 = CurrentPlayerData[3]
  987. Img.ImageTransparency=1
  988. Img.MouseButton1Down:connect(function()
  989. curbg = Img
  990. OS.Assets.Background.Image=Functions:Asset(Id)
  991. end)
  992. Img.Parent=scroll
  993.  
  994. spawn(function()
  995. for i = 0,1.05,.05 do
  996. Img.ImageTransparency=1-i
  997. game:service'RunService'.RenderStepped:wait()
  998. end
  999. end)
  1000. bgs[#bgs+1]=Img
  1001. end
  1002. while #bgs > 0 do
  1003. lrs:wait()
  1004. for i,Img in next, bgs do
  1005. if Img == nil or Img.Parent == nil then
  1006. table.remove(bgs,i)
  1007. else
  1008. if curbg == Img then
  1009. Img.BorderSizePixel = 2
  1010. else
  1011. Img.BorderSizePixel=0
  1012. end
  1013. end
  1014. end
  1015. end
  1016. end)
  1017.  
  1018. Functions:CreateProgram('Explorer', 27854793, 'Expl', 'Explore the game\'s children', function(HF,TF,CF)
  1019. local funcs = {};
  1020. local title = Functions:MakeNewUi('TextLabel')
  1021. title.TextColor3 = CurrentPlayerData[3]
  1022. title.TextStrokeTransparency=1
  1023. title.Size=ud(1,0,.2,0)
  1024. title.Text = 'Services'
  1025. title.TextXAlignment='Center'
  1026. title.TextYAlignment='Center'
  1027. title.BackgroundTransparency=1
  1028. title.Parent=CF
  1029. title.BackgroundColor3 = CurrentPlayerData[4]
  1030.  
  1031. spawn(function()
  1032. wait(1)
  1033. Effects:Underline(title, 15, 80, 2, CurrentPlayerData[3], true)
  1034. end)
  1035.  
  1036. local scroll = Functions:MakeNewUi('ScrollingFrame')
  1037. scroll.Size=ud(.8,0,.8,0)
  1038. scroll.Position = ud(.1,0,.2,0)
  1039. scroll.BackgroundTransparency=1
  1040. scroll.TopImage=Functions:Asset(317839361)
  1041. scroll.MidImage=Functions:Asset(317839361)
  1042. scroll.BottomImage=Functions:Asset(317839361)
  1043. scroll.ScrollBarThickness = 5
  1044. scroll.Parent=CF
  1045. scroll.BackgroundColor3 = CurrentPlayerData[4]
  1046.  
  1047. function funcs:w()
  1048. return wait(.05)
  1049. end
  1050.  
  1051. local buttons={};
  1052. local t = 0
  1053. function funcs:clearscroll()
  1054. t=t+1
  1055. buttons={};
  1056. for i,v in next, scroll:children() do
  1057. --funcs:w()
  1058. pcall(function()
  1059. spawn(function()
  1060. v:TweenPosition(ud(1,0,v.Position.Y.Scale,v.Position.Y.Offset),'Out','Quint',2,true)
  1061. for i = 0,1.05,.05 do
  1062. pcall(function()
  1063. v.TextTransparency=v.TextTransparency+.05
  1064. end)
  1065. pcall(function()
  1066. v.BackgroundTransparency=v.BackgroundTransparency+.05
  1067. end)
  1068. pcall(function()
  1069. v.TextStrokeTransparency=v.TextStrokeTransparency+.05
  1070. end)
  1071. lrs:wait()
  1072. end
  1073. v:Destroy()
  1074. end)
  1075. end)
  1076. end
  1077. wait(2)
  1078. end
  1079.  
  1080. function funcs:bt(i,txt,func)
  1081. delay(0,function()
  1082. if t == i then
  1083. --funcs:w()
  1084. local button = Functions:MakeNewUi('TextButton')
  1085. local index = #buttons
  1086. buttons[index+1]=button
  1087. local y = 22*(index)
  1088. scroll.CanvasSize=ud(0,0,0,y)
  1089. button.TextColor3 = CurrentPlayerData[3]
  1090. button.TextStrokeTransparency=.9
  1091. button.Size=ud(1,0,0,20)
  1092. button.Position=ud(1,0,0,y)
  1093. button.Text = txt
  1094. button.TextXAlignment='Left'
  1095. button.TextTransparency=1
  1096. button.TextSize = 12
  1097. button.Font=OS.Settings.Fonts.Header
  1098. --button.TextYAlignment='Top'
  1099. button.BackgroundTransparency=.6
  1100. button.TextStrokeColor3=CurrentPlayerData[3]
  1101. button.Parent=scroll
  1102. button.BackgroundColor3 = CurrentPlayerData[4]
  1103. spawn(function()
  1104. button:TweenPosition(ud(0,0,0,y),'Out','Quint',.5,true)
  1105. for i = 0,1.05,.05 do
  1106. button.TextTransparency=1-i
  1107. lrs:wait()
  1108. end
  1109. end)
  1110. local ev
  1111. ev=button.MouseButton1Click:connect(function()
  1112. ev:disconnect()
  1113. func(button)
  1114. end)
  1115. return button
  1116. else
  1117. return nil
  1118. end
  1119. end)
  1120. end
  1121.  
  1122. function funcs:showoptions(obj)
  1123. funcs:clearscroll()
  1124. local st = t
  1125. if obj:IsA'Instance' then
  1126. title.Text = obj:GetFullName()
  1127. if #obj:children() > 0 then
  1128. local expl=funcs:bt(st,'Explore',function()
  1129. funcs:showchildren(obj)
  1130. end)
  1131. end
  1132. pcall(function()
  1133. if obj ~= game and obj.Parent ~= game then
  1134. local expl=funcs:bt(st,'Destroy',function()
  1135. local par = obj.Parent
  1136. local pn = obj.Name
  1137. pcall(function()
  1138. obj:Destroy()
  1139. end)
  1140. funcs:clearscroll()
  1141. local nst = t
  1142. funcs:bt(nst,'Return to '..pn..'\'s parent object',function()
  1143. funcs:showchildren(par)
  1144. end)
  1145. funcs:bt(nst,'Destroyed '..pn,function()
  1146. end)
  1147. end)
  1148. end
  1149. end)
  1150. if obj ~= game then
  1151. local tag = 'Return to '..obj.Parent.Name..'\'s children'
  1152. if obj.Parent==game then
  1153. tag='Return to explorable services'
  1154. end
  1155. local ret=funcs:bt(st,tag,function()
  1156. funcs:showchildren(obj.Parent)
  1157. end)
  1158. elseif obj.Parent == game then
  1159. funcs:showservs()
  1160. end
  1161. local sprops=funcs:bt(st,'Show Properties',function()
  1162. funcs:clearscroll()
  1163. local st2 = t
  1164. local rett=funcs:bt(st2,'Return to options for '..obj.Name,function()
  1165. funcs:showoptions(obj)
  1166. end)
  1167. local Props = Functions:ReturnObjectProperties(obj)
  1168. Props['Children'] = #obj:children()
  1169. for index, value in next, Props do
  1170. local prop=funcs:bt(st2,tostring(index)..': '..tostring(value),function()
  1171. end)
  1172. end
  1173. end)
  1174. end
  1175. end
  1176.  
  1177. function funcs:showchildren(prnt)
  1178. funcs:clearscroll()
  1179. local st = t
  1180. if prnt:IsA'Instance' then
  1181. local back=funcs:bt(st,'Show me options for '..prnt.Name,function()
  1182. funcs:showoptions(prnt)
  1183. end)
  1184. for i,v in next, prnt:children() do
  1185. pcall(function()
  1186. if prnt:IsA'Instance' then
  1187. local sub=' - '..v.ClassName
  1188. pcall(function()
  1189. if prnt==game then
  1190. sub=''
  1191. end
  1192. end)
  1193. local child=funcs:bt(st,v.Name..sub,function()
  1194. funcs:showoptions(v)
  1195. end)
  1196. end
  1197. end)
  1198. end
  1199. end
  1200. end
  1201. function funcs:showservs()
  1202. funcs:clearscroll()
  1203. local st = t
  1204. local servs = {};
  1205. for i,v in next, game:children() do
  1206. pcall(function()
  1207. if #v:children() > 0 then
  1208. table.insert(servs,v)
  1209. end
  1210. end)
  1211. end
  1212. local child=funcs:bt(st,'SHOW ME ALL THE DAMN SERVICES!',function()
  1213. funcs:showoptions(game)
  1214. end)
  1215. for i,v in next, servs do
  1216. local child = funcs:bt(st,v.Name,function()
  1217. funcs:showoptions(v)
  1218. end)
  1219. end
  1220. end
  1221. funcs:showservs()
  1222. end)
  1223.  
  1224. local Audios={};
  1225. local CurrentPlaying = nil
  1226. function Functions:AddSound(Id)
  1227. for Index, Sound in next, Audios do
  1228. if Sound:IsA'Sound' then
  1229. Sound:Stop()
  1230. Sound.PlayOnRemove=false
  1231. end
  1232. end
  1233. local Sound = Instance.new('Sound', Monitor)
  1234. Sound.SoundId=Functions:Asset(Id)
  1235. Sound.Volume=.9
  1236. CurrentPlaying = Sound
  1237. table.insert(Audios, Sound)
  1238. return Sound
  1239. end
  1240.  
  1241. function Functions:IntegerLerp(a,b,c)
  1242. return a + (b - a) * c;
  1243. end
  1244.  
  1245. Functions:CreateProgram('Messenger',485845332,'MGR','Self explanitory... idiot', function(HF,TF,CF)
  1246. end)
  1247.  
  1248. local cur = nil
  1249. local curSound = nil
  1250. Functions:CreateProgram('SmAudio', 64646186, 'SmA', 'An archive of selected music just for you ;) with extra features as well', function(HF,TF,CF)
  1251. local title = Functions:MakeNewUi('TextLabel')
  1252. title.TextColor3 = CurrentPlayerData[3]
  1253. title.TextStrokeTransparency=1
  1254. title.Size=ud(1,0,.2,0)
  1255. title.Text = 'SmAudio Alpha'
  1256. title.TextXAlignment='Center'
  1257. title.TextYAlignment='Center'
  1258. title.Font = OS.Settings.Fonts.Header
  1259. title.BackgroundTransparency=1
  1260. title.Parent=CF
  1261. title.BackgroundColor3 = CurrentPlayerData[4]
  1262.  
  1263. spawn(function()
  1264. wait(1)
  1265. Effects:Underline(title, 15, 80, 2, CurrentPlayerData[3], true)
  1266. end)
  1267.  
  1268. local scroll = Functions:MakeNewUi('ScrollingFrame')
  1269. scroll.Size=ud(.8,0,.8,0)
  1270. scroll.Position = ud(.1,0,.2,0)
  1271. scroll.BackgroundTransparency=0
  1272. scroll.TopImage=Functions:Asset(317839361)
  1273. scroll.MidImage=Functions:Asset(317839361)
  1274. scroll.BottomImage=Functions:Asset(317839361)
  1275. scroll.ScrollBarThickness = 5
  1276. scroll.Parent=CF
  1277. scroll.BackgroundColor3 = CurrentPlayerData[4]
  1278.  
  1279. local max = 0
  1280. spawn(function()
  1281. local y = 0
  1282. repeat game:service'RunService'.RenderStepped:wait()
  1283. y=Functions:IntegerLerp(y,max,.02)
  1284. --print(max)
  1285. --print(y)
  1286. --scroll.CanvasSize=ud(0,0,0,y)
  1287. until CF.Parent == nil
  1288. end)
  1289.  
  1290. local play,pause,sound = Functions:Asset(745599404),Functions:Asset(745599001),Functions:Asset(176572847)
  1291.  
  1292. local Loaded = 0
  1293. for i, Id in next, OS.Sounds do
  1294. delay((math.random()/(math.random()+.2))*3, function()
  1295. local Market = game:service'MarketplaceService'
  1296. local Asset = Market:GetProductInfo(Id)
  1297.  
  1298. local Song = Functions:MakeNewUi('ImageButton')
  1299. Song.Parent=scroll
  1300. Song.Image = play
  1301. local clr=CurrentPlayerData[3]
  1302. local clr2=CurrentPlayerData[4]
  1303. Song.BackgroundColor3=clr
  1304. Song.Size=ud(0,45,0,45)
  1305. Song.BackgroundTransparency=1
  1306.  
  1307. local y = (Song.Size.Y.Offset+2)*(i-1)
  1308. max=max+(Song.Size.Y.Offset+2)
  1309. local x = Song.Size.X.Offset
  1310.  
  1311. local author = Functions:MakeNewUi('TextLabel')
  1312. author.TextColor3 = CurrentPlayerData[3]
  1313. author.Size=ud(1,-x+10,0,20)
  1314. author.Position = ud(0,x+10,0,y)
  1315. author.Text = 'Author '..Asset.Creator.Name..' ; '..Asset.Creator.Id
  1316. author.TextXAlignment='Left'
  1317. author.TextYAlignment='Center'
  1318. author.TextSize = 16
  1319. author.Font = OS.Settings.Fonts.Header
  1320. author.BackgroundTransparency=1
  1321. author.TextTransparency=1
  1322. author.Parent=scroll
  1323. author.BackgroundColor3 = CurrentPlayerData[3]
  1324.  
  1325. local name = Functions:MakeNewUi('TextLabel')
  1326. name.TextColor3 = CurrentPlayerData[3]
  1327. name.Size=ud(1,-x+10,0,20)
  1328. name.Position = ud(0,x+10,0,y+(author.TextSize+2))
  1329. name.Text = 'Name '..Asset.Name
  1330. name.TextXAlignment='Left'
  1331. name.TextYAlignment='Center'
  1332. name.TextSize = 12
  1333. name.TextTransparency=1
  1334. name.Font = OS.Settings.Fonts.Header
  1335. name.BackgroundTransparency=1
  1336. name.Parent=scroll
  1337. name.BackgroundColor3 = CurrentPlayerData[3]
  1338.  
  1339. local desc = Functions:MakeNewUi('TextLabel')
  1340. desc.TextColor3 = CurrentPlayerData[3]
  1341. local alg = (((name.TextBounds.X+author.TextBounds.X)/1.5)+(10+(author.TextSize+name.TextSize)))
  1342. desc.Size=ud(1,-x-(alg+scroll.ScrollBarThickness),0,46)
  1343. desc.Position = ud(1,0,0,y-1)
  1344. desc.Text = Asset.Creator.Name..': '..Asset.Description
  1345. desc.BorderSizePixel=0
  1346. desc.BorderColor3 = CurrentPlayerData[3]
  1347. desc.TextWrapped=true
  1348. desc.TextXAlignment='Left'
  1349. desc.TextTransparency=1
  1350. desc.TextYAlignment='Top'
  1351. desc.TextSize = 12
  1352. desc.Font = OS.Settings.Fonts.Header
  1353. desc.BackgroundTransparency=1
  1354. desc.Parent=scroll
  1355. desc.BackgroundColor3 = scroll.BackgroundColor3
  1356. desc.ClipsDescendants=false
  1357.  
  1358. local line = Functions:MakeNewUi('TextLabel')
  1359. line.TextColor3 = CurrentPlayerData[3]
  1360. line.Size=ud(0,1,1,0)
  1361. line.Position = ud(0,-4,0,0)
  1362. line.Text = ''
  1363. line.BackgroundTransparency=0
  1364. line.BackgroundColor3 = CurrentPlayerData[3]
  1365. line.Parent=desc
  1366.  
  1367. if Asset.Description=='Audio' or Asset.Description=='RenderMesh' then
  1368. desc:Destroy()
  1369. else
  1370. desc:TweenPosition(ud(0,x+alg,0,y-1),'Out','Quint',1,true)
  1371. end
  1372.  
  1373. Song.Position = ud(0,-x,0,y)
  1374.  
  1375. Song.ZIndex=8
  1376. Song.MouseEnter:connect(function()
  1377. local t=clr2
  1378. local tt=.15
  1379. clr=c3(t.r-tt,t.b-tt,t.g-tt)
  1380. clr2=CurrentPlayerData[3]
  1381. end)
  1382. Song.MouseLeave:connect(function()
  1383. clr=CurrentPlayerData[3]
  1384. clr2=CurrentPlayerData[4]
  1385. end)
  1386.  
  1387. Song.MouseButton1Click:connect(function()
  1388. if cur == Song then
  1389. curSound:Pause()
  1390. cur=nil
  1391. else
  1392. cur=Song
  1393. curSound = Functions:AddSound(Id)
  1394. curSound.Looped = true
  1395. curSound:Play()
  1396. clr=CurrentPlayerData[3]
  1397. clr2=CurrentPlayerData[4]
  1398. end
  1399. end)
  1400.  
  1401. spawn(function()
  1402. for i = 0,1.05,.05 do
  1403. desc.TextTransparency=1-i
  1404. desc.BackgroundTransparency=1-i
  1405. name.TextTransparency=1-i
  1406. author.TextTransparency=1-i
  1407. game:service'RunService'.RenderStepped:wait()
  1408. end
  1409. end)
  1410.  
  1411. spawn(function()
  1412. repeat game:service'RunService'.RenderStepped:wait()
  1413. if cur == Song then
  1414. Song.Image = pause
  1415. else
  1416. Song.Image = play
  1417. end
  1418. Song.BackgroundColor3=Song.BackgroundColor3:lerp(clr,.25)
  1419. Song.ImageColor3=Song.ImageColor3:lerp(clr2,.25)
  1420. until CF.Parent == nil
  1421. end)
  1422. Song:TweenPosition(ud(0,0,0,y),'Out','Quint',.5,true)
  1423. Loaded = Loaded + 1
  1424. end)
  1425. end
  1426. local ii=0
  1427. repeat
  1428. wait()
  1429. title.Text = 'Loading Assets #'..Loaded
  1430. ii=Functions:IntegerLerp(ii,max+10,.04)
  1431. scroll.CanvasSize=ud(0,0,0,ii)
  1432. scroll.CanvasPosition=Vector2.new(0,ii)
  1433. until Loaded == #OS.Sounds
  1434. title.Text = 'SmAudio Beta'
  1435. end)
  1436.  
  1437. function Functions:GeneratePrograms(Distance)
  1438. --print'k'
  1439. local Over, Down=0,0
  1440. for Index, Data in next, OS.Apps.Qeued do
  1441. if Down > 7 then
  1442. return
  1443. end
  1444. local maximized,ump,ums
  1445. lrs:wait()
  1446. local Icon = Functions:MakeNewUi('ImageButton')
  1447. Icon.Image=Functions:PlayerImage(Host)
  1448. Icon.Parent=MainFrame
  1449. Icon.BackgroundColor3=CurrentPlayerData[4]
  1450. Icon.Image=Functions:Asset(Data[2])
  1451. Icon.Size=ud(0,50,0,50)
  1452. Icon.ZIndex=2
  1453. Icon.ImageTransparency=0
  1454. local IconName = Functions:MakeNewUi('TextLabel')
  1455. IconName.Font=OS.Settings.Fonts.Header
  1456. IconName.Parent=Icon
  1457. IconName.TextYAlignment='Bottom'
  1458. IconName.TextSize = 10
  1459. IconName.Text= Data[1]
  1460. IconName.Size=ud(1,0,0,20)
  1461. IconName.Position=ud(0,0,1,-20)
  1462. IconName.ZIndex=2
  1463. local bgtp = 1
  1464. Icon.MouseEnter:connect(function()
  1465. bgtp=.5
  1466. end)
  1467. Icon.MouseLeave:connect(function()
  1468. bgtp=1
  1469. end)
  1470. local oi = bgtp
  1471. lrs:connect(function()
  1472. oi=Functions:IntegerLerp(oi,bgtp,.3)
  1473. Icon.BackgroundTransparency=oi
  1474. end)
  1475. OS.Apps.Generated[Data[1]]=Icon
  1476. if Over >= 13 then
  1477. Down = Down + 1
  1478. Over = 0
  1479. end
  1480. Icon.Position=ud(0,15+(60*(Over)),0,15+(60*(Down)))
  1481. Over = Over + 1
  1482. Icon.ZIndex=2
  1483. local oic
  1484. oic=Icon.MouseButton1Click:connect(function()
  1485. local AlreadyOpen=false
  1486. for Index, Ting in next, OS.Apps.Open do
  1487. for i = 1,#Ting do
  1488. if Data[i] == Ting[i] then
  1489. AlreadyOpen=true
  1490. end
  1491. end
  1492. end
  1493. if AlreadyOpen then
  1494. warn'nop'
  1495. return
  1496. end
  1497. table.insert(OS.Apps.Open,{Data[1],Data[2],Data[3]})
  1498. OS.RecentlyUsedPrograms[Data[4]]=Data
  1499. local HolderFrame = Functions:MakeNewUi('Frame')
  1500. HolderFrame.ZIndex=3
  1501. HolderFrame.BackgroundTransparency=0
  1502. HolderFrame.BorderSizePixel=.1
  1503. HolderFrame.BorderColor3=CurrentPlayerData[3]
  1504. HolderFrame.Size=ud(0,600,0,400)
  1505. HolderFrame.Name='HF'
  1506. HolderFrame.BackgroundColor3=CurrentPlayerData[3]
  1507. HolderFrame.Position = Functions:Center(HolderFrame)
  1508. HolderFrame.Parent = MainFrame
  1509. maximized,ump,ums=false,HolderFrame.Position,HolderFrame.Size
  1510. local function Enable()
  1511. for i,gui in next, MainFrame:children() do
  1512. if gui:IsA'ImageButton' then
  1513. gui.Visible=true
  1514. end
  1515. end
  1516. end
  1517. local function Disable()
  1518. for i,gui in next, MainFrame:children() do
  1519. if gui:IsA'ImageButton' then
  1520. gui.Visible=false
  1521. end
  1522. end
  1523. end
  1524.  
  1525. local ev1
  1526. ev1=HolderFrame.MouseEnter:connect(function()
  1527. --print'k1'
  1528. Disable()
  1529. end)
  1530. local ev2
  1531. ev2=HolderFrame.MouseLeave:connect(function()
  1532. --print'k2'
  1533. Enable()
  1534. end)
  1535. local InfoFrame = Functions:MakeNewUi('Frame')
  1536. InfoFrame.ZIndex=4
  1537. InfoFrame.BackgroundTransparency=0
  1538. InfoFrame.Size=ud(1,0,0,15)
  1539. InfoFrame.Name='TF'
  1540. InfoFrame.BackgroundColor3=CurrentPlayerData[3]
  1541. for i = 1,3 do
  1542. i=i
  1543. local CButt = Functions:MakeNewUi('ImageButton')
  1544. CButt.Image=Functions:Asset(625953771)
  1545. CButt.Parent=InfoFrame
  1546. CButt.ImageTransparency=.15
  1547. local OCF
  1548. --505680534
  1549. spawn(function()
  1550. local up=.75
  1551. local r,g,b=0,0,0
  1552. if (i==1) then
  1553. r,g,b=.8,.01,.01
  1554. elseif (i==2) then
  1555. r,g,b=.95,.95,0
  1556. elseif (i==3) then
  1557. r,g,b=0,.7,0
  1558. end
  1559. CButt.ImageColor3 = c3(r,g,b)
  1560. CButt.MouseEnter:connect(function()
  1561. for i = 0,1,.1 do
  1562. CButt.ImageColor3 = CButt.ImageColor3:lerp(c3(r+up,g+up,b+up),.13)
  1563. lrs:wait()
  1564. end
  1565. end)
  1566. CButt.MouseLeave:connect(function()
  1567. for i = 0,1,.1 do
  1568. CButt.ImageColor3 = CButt.ImageColor3:lerp(c3(r,g,b),.13)
  1569. lrs:wait()
  1570. end
  1571. end)
  1572. end)
  1573. --if not OCF then OCF=function()print'missing func'end;end
  1574. if (i==1) then
  1575. r,g,b=.8,.01,.01
  1576. local evv
  1577. ev1:disconnect()
  1578. ev2:disconnect()
  1579. evv=CButt.MouseButton1Click:connect(function()
  1580. for Index, Ting in next, OS.Apps.Open do
  1581. if Data[1] == Ting[1] then
  1582. table.remove(OS.Apps.Open, Index)
  1583. end
  1584. end
  1585. evv:disconnect()
  1586. local pos = HolderFrame.Position
  1587. HolderFrame.Active=false
  1588. HolderFrame:Destroy()
  1589. end)
  1590. elseif (i==2) then
  1591. r,g,b=.95,.95,0
  1592. local evv
  1593. evv=CButt.MouseButton1Click:connect(function()
  1594. if maximized then
  1595. HolderFrame:TweenSizeAndPosition(ums,ump,'Out','Sine',.3,true)
  1596. maximized=false
  1597. else
  1598. HolderFrame:TweenSizeAndPosition(ud(1,2,1,-50),ud(0,-1,0,-1),'Out','Quint',.3,true)
  1599. maximized=true
  1600. end
  1601. end)
  1602. elseif (i==3) then
  1603. r,g,b=0,.7,0
  1604. local evv
  1605. ev1:disconnect()
  1606. ev2:disconnect()
  1607. for Index, Ting in next, OS.Apps.Open do
  1608. if Data[1] == Ting[1] then
  1609. table.remove(OS.Apps.Open, Index)
  1610. end
  1611. end
  1612. evv=CButt.MouseButton1Click:connect(function()
  1613. evv:disconnect()
  1614. HolderFrame:TweenSizeAndPosition(ud(0,50,0,50),Icon.Position,'Out','Quint',.5,true)
  1615. wait(.2)
  1616. HolderFrame:Destroy()
  1617. end)
  1618. --Functions:AddToTaskBar(Data[1],Data[2],{ump,ums})
  1619. end
  1620. --CButt.MouseButton1Click:connect(OCF)
  1621. CButt.Size=ud(0,12,0,12)
  1622. CButt.Position=Functions:CenterOffset(CButt,ud(.5,-(15*i),0,0))
  1623. --CButt:TweenPosition(Functions:CenterOffset(CButt,ud(0,0,0,-50),'Out','Back',1,true))
  1624. end
  1625. InfoFrame.Parent = HolderFrame
  1626. local InfoIcon = Functions:MakeNewUi('ImageButton')
  1627. InfoIcon.Parent=InfoFrame
  1628. InfoIcon.Image=Functions:Asset(Data[2])
  1629. InfoIcon.Size=ud(0,12,0,12)
  1630. InfoIcon.ImageTransparency=0
  1631. InfoIcon.Position=ud(0,2,0,3)
  1632. InfoIcon.ZIndex=4
  1633. local InfoText = Functions:MakeNewUi('TextButton')
  1634. InfoText.BackgroundTransparency=.5
  1635. InfoText.FontSize='Size12'
  1636. InfoText.Parent=InfoFrame
  1637. InfoText.TextXAlignment='Left'
  1638. InfoText.Text= Data[1]--..' \ '..Data[4]--'*C:\Users\\'..Host.Name..''
  1639. InfoText.Size=ud(1,-40,1,0)
  1640. InfoText.Position=ud(0,16,0,0)
  1641. InfoText.ZIndex=4
  1642.  
  1643. local md=false
  1644. InfoText.MouseButton1Down:connect(function()
  1645. md=true
  1646. local origp=HolderFrame.Position
  1647. local origs=ud(0,600,0,15)
  1648. local origmp=OS.Assets.Mouse.Position
  1649. HolderFrame.Size = ud(0,600,0,400)
  1650. maximized=false
  1651. spawn(function()
  1652. repeat wait() until OS.MouseDown == false
  1653. md=false
  1654. end)
  1655. while md do
  1656. local mp={OS.Assets.Mouse.Position.X.Scale,OS.Assets.Mouse.Position.X.Offset,OS.Assets.Mouse.Position.Y.Scale,OS.Assets.Mouse.Position.Y.Offset};
  1657. local fs={origs.X.Scale,origs.X.Offset,origs.Y.Scale,origs.Y.Offset};
  1658. local fp={origp.X.Scale,origp.X.Offset,origp.Y.Scale,origp.Y.Offset};
  1659. --local a,b=
  1660. local x,y=mp[2]-(fs[2]/2),mp[4]-(fs[4]/2)
  1661. --print(x,y)
  1662. HolderFrame.Position=ud(0,x,0,y)
  1663. lrs:wait()
  1664. end
  1665. end)
  1666. InfoText.MouseButton1Up:connect(function()
  1667. --md=false
  1668. end)
  1669. local ContentFrame = Functions:MakeNewUi('Frame')
  1670. ContentFrame.ZIndex=4
  1671. ContentFrame.BackgroundTransparency=.1
  1672. ContentFrame.Size=ud(1,-2,1,-17)
  1673. ContentFrame.Position=ud(0,1,0,16)
  1674. ContentFrame.Name='CF'
  1675. ContentFrame.BackgroundColor3=CurrentPlayerData[4]
  1676. ContentFrame.Parent = HolderFrame
  1677. Data[5](HolderFrame, TitleFrame, ContentFrame)
  1678. end)
  1679. end
  1680. end
  1681.  
  1682. local AtMainScreen=false
  1683. function Functions:MakeHomeScreen()
  1684. local Background_id = CurrentPlayerData[5]
  1685. local BackgroundImg = Functions:MakeNewUi('ImageLabel')
  1686. BackgroundImg.Image=Functions:Asset(Background_id)
  1687. BackgroundImg.Name='Background'
  1688. BackgroundImg.BackgroundTransparency=1
  1689. BackgroundImg.ImageTransparency = .1
  1690. BackgroundImg.Parent=MainFrame
  1691. BackgroundImg.ZIndex=1
  1692. BackgroundImg.Size=ud(1,0,1,0)
  1693. OS.Assets.Background = BackgroundImg
  1694. for i = 0,1.025,.025 do
  1695. MainFrame.BackgroundTransparency=i
  1696. lrs:wait()
  1697. end
  1698. local TskBar = Functions:MakeNewUi('TextLabel')
  1699. TskBar.Size = ud(1,0,0,52)
  1700. TskBar.Parent = MainFrame
  1701. TskBar.BackgroundColor3 = CurrentPlayerData[3]
  1702. TskBar.BackgroundTransparency = .5
  1703. TskBar.Position = ud(0,0,1,0)
  1704. TskBar.ZIndex = 9
  1705. TskBar:TweenPosition(ud(0,0,1,-52.5),'Out','Quint',1.2,true)
  1706. for i = 0,.15,.05 do
  1707. local TskBarShader = Functions:MakeNewUi('TextLabel')
  1708. TskBarShader.BackgroundTransparency = .8
  1709. TskBarShader.BackgroundColor3 = CurrentPlayerData[4]
  1710. TskBarShader.BorderSizePixel = 0
  1711. TskBarShader.Size = ud(1,0,.05,0)
  1712. TskBarShader.Position = ud(0,0,-i,0)
  1713. delay(.2,function()
  1714. TskBarShader:TweenPosition(ud(0,0,i+5,0),'Out','Quint',.5,true)
  1715. end)
  1716. TskBarShader.ZIndex = 9
  1717. TskBarShader.Name = 'shd'..i
  1718. --TskBar:ClearAllChildren()
  1719. TskBarShader.Parent = TskBar
  1720. end
  1721. --//tem\\
  1722. local TimeLabel = Instance.new'TextLabel'
  1723. TimeLabel.BackgroundTransparency = 1
  1724. TimeLabel.BackgroundColor3 = c3(255,255,255)
  1725. TimeLabel.BorderSizePixel = 0
  1726. TimeLabel.ZIndex = 9
  1727. TimeLabel.TextColor3 = CurrentPlayerData[4]
  1728. TimeLabel.Font = OS.Settings.Fonts.Sub_Header
  1729. TimeLabel.TextScaled = true
  1730. TimeLabel.Name = 'TimeLabel'
  1731. TimeLabel.TextWrapped = true
  1732. TimeLabel.TextStrokeTransparency = .9
  1733. TimeLabel.Text = '00:00:00 PM'
  1734. TimeLabel.Parent = TskBar
  1735. TimeLabel.Size = ud(.08,0,.3,0)
  1736. TimeLabel.Position = ud(.92,-10,0,6)
  1737.  
  1738. local DateLabel = Instance.new'TextLabel'
  1739. DateLabel.BackgroundTransparency = 1
  1740. DateLabel.BackgroundColor3 = c3(255,255,255)
  1741. DateLabel.BorderSizePixel = 0
  1742. DateLabel.ZIndex = 9
  1743. DateLabel.TextColor3 = CurrentPlayerData[4]
  1744. DateLabel.Font = OS.Settings.Fonts.Sub_Header
  1745. DateLabel.TextScaled = true
  1746. DateLabel.Name = 'DateLabel'
  1747. DateLabel.TextWrapped = true
  1748. DateLabel.TextStrokeTransparency = .9
  1749. DateLabel.Text = '00/00/0000'
  1750. DateLabel.Parent = TskBar
  1751. DateLabel.Size = ud(.08,0,.3,0)
  1752. DateLabel.Position = ud(.92,-10,.6,-6)
  1753.  
  1754. local Logo = Functions:MakeNewUi'ImageButton'
  1755. Logo.BackgroundTransparency = 1
  1756. Logo.BackgroundColor3 = CurrentPlayerData[3]
  1757. Logo.BorderSizePixel = 0
  1758. Logo.ZIndex = 10
  1759. Logo.Image = Functions:Asset(265489553)
  1760. --Logo.TextColor3 = CurrentPlayerData[4]
  1761. --Logo.Font = 'Cartoon'
  1762. --Logo.FontSize='Size36'
  1763. Logo.Name = 'Logo'
  1764. --Logo.TextStrokeTransparency = .9
  1765. --Logo.Text = '¶Y'
  1766. Logo.Parent = TskBar
  1767. Logo.Size = ud(0,40,0,50)
  1768. Logo.Position = ud(0,1,0,1)
  1769. local clrcancel=false
  1770. local igc,bgc=CurrentPlayerData[4],CurrentPlayerData[3]
  1771. Logo.MouseEnter:connect(function()
  1772. local continue=true
  1773. clrcancel=true
  1774. clrcancel=false
  1775. spawn(function()
  1776. for i = 0,.57,.07 do
  1777. Logo.BackgroundTransparency=1-i
  1778. lrs:wait()
  1779. end
  1780. end)
  1781. igc,bgc=CurrentPlayerData[3],CurrentPlayerData[4]
  1782. end)
  1783. Logo.MouseLeave:connect(function()
  1784. local continue=true
  1785. clrcancel=true
  1786. clrcancel=false
  1787. spawn(function()
  1788. for i = 0,.57,.07 do
  1789. Logo.BackgroundTransparency=.5+i
  1790. lrs:wait()
  1791. end
  1792. end)
  1793. igc,bgc=CurrentPlayerData[4],CurrentPlayerData[3]
  1794. end)
  1795. local StartFrameHolder = Functions:MakeNewUi('Frame')
  1796. StartFrameHolder.ZIndex=5
  1797. StartFrameHolder.BackgroundTransparency=1
  1798. StartFrameHolder.Size=ud(0,200,.6,0)
  1799. StartFrameHolder.Position = ud(0,0,.4,-52)
  1800. StartFrameHolder.Parent = MainFrame
  1801. local StartFrame = Functions:MakeNewUi('Frame')
  1802. StartFrame.ZIndex=9
  1803. StartFrame.BackgroundTransparency=.5
  1804. StartFrame.Size=ud(1,0,1,0)
  1805. StartFrame.BorderSizePixel=2
  1806. StartFrame.Name='SF'
  1807. StartFrame.BorderColor3=CurrentPlayerData[4]
  1808. StartFrame.Position = ud(0,0,1,0)
  1809. StartFrame.Parent = StartFrameHolder
  1810.  
  1811. local TestButton = Functions:MakeNewUi('TextButton')
  1812. TestButton.ZIndex=6
  1813. TestButton.BackgroundTransparency=.7
  1814. TestButton.Size=ud(1,-6,0,50)
  1815. TestButton.Position = ud(0,3,0,3)
  1816. TestButton.Text='TEST NOTIFICATIONS'
  1817. TestButton.Parent = StartFrame
  1818. TestButton.MouseButton1Click:connect(function()
  1819. Functions:Notification('Just testing the dank re-alignment and stuff, kek.')
  1820. end)
  1821.  
  1822. local sfcc,detection=false,false
  1823. StartFrame.MouseEnter:connect(function()
  1824. detection=false
  1825. sfcc=false
  1826. end)
  1827. StartFrame.MouseLeave:connect(function()
  1828. detection=true
  1829. sfcc=true
  1830. end)
  1831.  
  1832. local Extended=false
  1833. local function Open(trans)
  1834. StartFrame:TweenPosition(ud(0,0,0,0),'Out','Sine',.5,true)
  1835. for i = 0,1.05,.05 do
  1836. for a,b in next, StartFrame:children() do
  1837. if b.Name ~= 'SF' then
  1838. pcall(function()
  1839. b.TextTransparency=b.TextTransparency-.05
  1840. end)
  1841. pcall(function()
  1842. b.BackgroundTransparency=bBackgroundTransparency-.05
  1843. end)
  1844. pcall(function()
  1845. b.ImageTransparency=b.ImageTransparency-.05
  1846. end)
  1847. end
  1848. end
  1849. StartFrame.BackgroundTransparency=1-.05
  1850. lrs:wait()
  1851. end
  1852. StartFrame.BackgroundTransparency=trans
  1853. Extended=true
  1854. end
  1855. local function Close(trans)
  1856. StartFrame:TweenPosition(ud(0,0,1,0),'Out','Sine',.5,true)
  1857. for i = 0,1,.05 do
  1858. for a,b in next, StartFrame:children() do
  1859. if b.Name ~= 'SF' then
  1860. pcall(function()
  1861. b.TextTransparency=b.TextTransparency+.05
  1862. end)
  1863. pcall(function()
  1864. b.BackgroundTransparency=bBackgroundTransparency+.05
  1865. end)
  1866. pcall(function()
  1867. b.ImageTransparency=b.ImageTransparency+.05
  1868. end)
  1869. end
  1870. end
  1871. StartFrame.BackgroundTransparency=trans+.05
  1872. lrs:wait()
  1873. end
  1874. StartFrame.BackgroundTransparency=1
  1875. Extended=false
  1876. end
  1877. local trans=.45
  1878. PlayerMouse.Button1Down:connect(function()
  1879. if sfcc and Extended then
  1880. detection=false
  1881. Close(trans)
  1882. end
  1883. end)
  1884. PlayerMouse.Button2Down:connect(function()
  1885. if sfcc and Extended then
  1886. detection=false
  1887. Close(trans)
  1888. end
  1889. end)
  1890. Logo.MouseButton1Down:connect(function(x,y)
  1891. if Extended then
  1892. Close(trans)
  1893. else
  1894. Open(trans)
  1895. end
  1896. end)
  1897. local Months = {
  1898. "January", "Febreuary", "March", "April", "May", "June",
  1899. "July", "August", "September", "October", "November", "December"
  1900. }
  1901. local MonthDays = {
  1902. 31, 28, 31, 30, 31, 30,
  1903. 31, 31, 30, 31, 30, 31
  1904. }
  1905.  
  1906. function getDay(Date, year)
  1907. local month, date = Date:match("(%a+)%s*(%d+)")
  1908. local DAYS = tonumber(date)
  1909. local leaps = math.floor( (year-2011)/4 - .25 ) + 1
  1910. local Days = {"Saturday", "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday"}
  1911. for _, v in ipairs(MonthDays) do
  1912. if Months[_] == month then break end
  1913. DAYS = DAYS + v
  1914. end
  1915. DAYS = math.floor( DAYS + (year-2017) * 365 ) + leaps
  1916. return Days[ (DAYS%7 == 0 and 7 or DAYS%7) ]
  1917. end
  1918.  
  1919. function getMonthAndDate(days, year)
  1920. local leap = year%4 == 0 and 1 or 0
  1921. local month;
  1922. for _, v in ipairs(MonthDays) do
  1923. if (days-v) < 1 then
  1924. month = Months[_]
  1925. break
  1926. end
  1927. days = days - v
  1928. end
  1929. return month, days
  1930. end
  1931. local LTime,LDate = '',''
  1932. local M = ''
  1933. Time = function()
  1934. local secondsInDay = 60*60*24
  1935. local time = tick()
  1936. local year = math.floor(1970 + time/(365.25*86400))
  1937. local days = math.ceil(((time % (86400*365.25)) )/86400 + 0.25)
  1938. local month, date = getMonthAndDate(days, year)
  1939. local day = getDay(month..date, year)
  1940. local tick = math.fmod(tick(),secondsInDay)
  1941. local hour = math.floor(tick/3600) + 5 + -5
  1942. local minute = math.floor(tick/60 - 60*hour)
  1943. local seconds = math.floor(math.fmod(tick,60))
  1944. if (hour > 12) then
  1945. M = ' PM' hour = hour - 12
  1946. else
  1947. M = ' AM'
  1948. end
  1949. if hour == 0 then
  1950. hour = 12
  1951. end
  1952. if hour == 24 then
  1953. hour = 1
  1954. end
  1955. LTime = string.format("%2.0f:%02.0f",hour,minute)
  1956. local MonthNums = {
  1957. ["January"]=1, ["February"]=2, ["March"]=3, ["April"]=4, ["May"]=5, ["June"]=6,
  1958. ["July"]=7, ["August"]=8, ["September"]=9, ["October"]=10, ["November"]=11, ["December"]=12
  1959. }
  1960. month=MonthNums[month]
  1961. LDate = month..'/'..(days-1)..'/'..year
  1962. TimeLabel.Text = LTime..M
  1963. DateLabel.Text = LDate
  1964. Logo.ImageColor3 = Logo.ImageColor3:lerp(igc,.2)
  1965. Logo.BackgroundColor3 = Logo.BackgroundColor3:lerp(bgc,.2)
  1966. end
  1967. game:service'RunService'.Heartbeat:connect(Time)
  1968. AtMainScreen=true
  1969. local txt=''
  1970. if Official then
  1971. txt='Welcome back, '..CurrentPlayerData[1]..', your last session\'s saved data has been loaded'
  1972. else
  1973. txt='Hello, '..CurrentPlayerData[1]..'. Your data will be saved at the end of this session'
  1974. end
  1975. delay(math.random(1,4),function()
  1976. delay(.3,function()
  1977. Functions:PlayerImgNotification('SavageMunkey', 'Creator & Founder of ¶YaviOS - SavageMunkey')
  1978. end)
  1979. local fr,tl = Functions:Notification(txt,6)
  1980. end)
  1981. Functions:GeneratePrograms({25,20})
  1982. AtMainScreen=true
  1983. return warn'Homescreen Loaded'
  1984. end
  1985.  
  1986. function Functions:PlayerImgNotification(Plr, Type)
  1987. if not AtMainScreen then return end
  1988. local sz=50
  1989. if Type=='join' then
  1990. local fr,tl=Functions:Notification('New Player has joined, '..tostring(Plr)..'.', 4)
  1991. tl.Size=ud(1,-(sz+5),1,0)
  1992. tl.Position=ud(0,sz+5,0,0)
  1993. local UserImage = Functions:MakeNewUi('ImageLabel')
  1994. UserImage.Image=Functions:PlayerImage(tostring(Plr))
  1995. UserImage.Parent=fr
  1996. UserImage.Size=ud(0,sz,1,0)
  1997. UserImage.ImageTransparency=0
  1998. UserImage.Position=ud(0,4,0,0)
  1999. UserImage.ZIndex=8
  2000. wait(4*1.5)
  2001. for i = 0,1.05,.05 do UserImage.ImageTransparency=i lrs:wait() end
  2002. elseif Type=='rmv' then
  2003. local fr,tl=Functions:Notification('Player has left, '..tostring(Plr)..'.', 4)
  2004. tl.Size=ud(1,-(sz+5),1,0)
  2005. tl.Position=ud(0,sz+5,0,0)
  2006. local UserImage = Functions:MakeNewUi('ImageLabel')
  2007. UserImage.Image=Functions:PlayerImage(tostring(Plr))
  2008. UserImage.Parent=fr
  2009. UserImage.Size=ud(0,sz,1,0)
  2010. UserImage.ImageTransparency=0
  2011. UserImage.Position=ud(0,4,0,0)
  2012. UserImage.ZIndex=8
  2013. wait(4*1.5)
  2014. for i = 0,1.05,.05 do UserImage.ImageTransparency=i lrs:wait() end
  2015. else
  2016. local fr,tl=Functions:Notification(Type, 4)
  2017. tl.Size=ud(1,-(sz+5),1,0)
  2018. tl.Position=ud(0,sz+5,0,0)
  2019. local UserImage = Functions:MakeNewUi('ImageLabel')
  2020. UserImage.Image=Functions:PlayerImage(tostring(Plr))
  2021. UserImage.Parent=fr
  2022. UserImage.Size=ud(0,sz,1,0)
  2023. UserImage.ImageTransparency=0
  2024. UserImage.Position=ud(0,4,0,0)
  2025. UserImage.ZIndex=8
  2026. wait(4*1.5)
  2027. for i = 0,1.05,.05 do UserImage.ImageTransparency=i lrs:wait() end
  2028. end
  2029. end
  2030.  
  2031. local Notifications={};
  2032. local Notifs=0
  2033.  
  2034. function Functions:AdjustNotifPositions()
  2035. local upv=0
  2036. for i, data in next, Notifications do
  2037. --warn('('..tostring(ud(1,-200,.8,-(60*upv)))..')',#Notifications)
  2038. pcall(function()
  2039. data[1]:TweenPosition(ud(1,-200,.8,-(60*upv)),'Out','Back',.5,true)
  2040. end)
  2041. upv=upv+1
  2042. wait(.1)
  2043. end
  2044. end
  2045.  
  2046. function Functions:Notification(Text, ExitDelay)
  2047. if not ExitDelay then ExitDelay=4 end
  2048. if not AtMainScreen then return end
  2049. local v=false
  2050. local Frame = Functions:MakeNewUi('Frame')
  2051. Frame.ZIndex=8
  2052. Frame.BackgroundTransparency=.25
  2053. Frame.Size=ud(0,200,0,55)
  2054. Frame.BackgroundColor3=CurrentPlayerData[4]
  2055. Frame.Position = ud(1,0,.8,-(60*Notifs))
  2056. Frame.Parent=MainFrame
  2057. Frame:TweenPosition(ud(1,-200,.8,-(60*Notifs)),'Out','Sine',2,true)
  2058. table.insert(Notifications,{Frame,ud(1,-200,.8,-(60*Notifs))})
  2059. local Shader1 = Functions:MakeNewUi('Frame')
  2060. Shader1.ZIndex=9
  2061. Shader1.BackgroundTransparency=.9
  2062. Shader1.Size=ud(0,2,1,0)
  2063. Shader1.BackgroundColor3=CurrentPlayerData[4]
  2064. Shader1.Position = ud(0,-2,0,0)
  2065. Shader1.Parent=Frame
  2066. local Shader2 = Functions:MakeNewUi('Frame')
  2067. Shader2.ZIndex=9
  2068. Shader2.BackgroundTransparency=.8
  2069. Shader2.Size=ud(0,1,1,0)
  2070. Shader2.BackgroundColor3=CurrentPlayerData[4]
  2071. Shader2.Position = ud(0,-1,0,0)
  2072. Shader2.Parent=Frame
  2073. spawn(function()
  2074. Shader1:TweenPosition(ud(0,0,0,0),'Out','Linear',.4,true)
  2075. wait(.1)
  2076. Shader2:TweenPosition(ud(0,1,0,0),'Out','Linear',.4,true)
  2077. end)
  2078. local TLabel = Functions:MakeNewUi('TextButton')
  2079. TLabel.TextColor3=CurrentPlayerData[4]
  2080. TLabel.Position=ud(0,4,0,0)
  2081. TLabel.ZIndex=9
  2082. TLabel.Active=true
  2083. TLabel.BackgroundTransparency=.98
  2084. TLabel.TextWrapped=true
  2085. TLabel.Size=ud(1,-4,1,0)
  2086. TLabel.TextXAlignment='Left'
  2087. --TLabel.TextYAlignment='Top'
  2088. TLabel.Font=OS.Settings.Fonts.Sub_Header
  2089. TLabel.FontSize='Size12'
  2090. TLabel.TextStrokeColor3=CurrentPlayerData[4]
  2091. TLabel.TextStrokeTransparency=1
  2092. TLabel.TextTransparency=1
  2093. TLabel.Parent=Frame
  2094. Notifs=Notifs+1
  2095. local tic = Functions:Sound(230336790,false)
  2096. tic:Play()
  2097. for i = 0,1.02,.02 do
  2098. Frame.BackgroundColor3=Frame.BackgroundColor3:lerp(CurrentPlayerData[3],.2)
  2099. Frame.BackgroundTransparency=1.5-i
  2100. TLabel.TextStrokeTransparency=1.9-i
  2101. TLabel.TextTransparency=1-i
  2102. lrs:wait()
  2103. end
  2104. local cc=true
  2105. local function Close()
  2106. if (not cc) then return end
  2107. --print'3'
  2108. Frame:TweenPosition(ud(1,0,.8,Frame.Position.Y.Offset),'Out','Sine',3,true)
  2109. for i = 0,1.015,.02 do
  2110. --Frame.BackgroundColor3=Frame.BackgroundColor3:lerp(c3(0,0,0),.2)
  2111. Frame.BackgroundTransparency=.5+i
  2112. Shader1.BackgroundTransparency=.9+i
  2113. Shader2.BackgroundTransparency=.8+i
  2114. TLabel.TextStrokeTransparency=.9+i
  2115. TLabel.TextTransparency=i
  2116. lrs:wait()
  2117. end
  2118. val=true
  2119. Frame:Destroy()
  2120. for i,v in next, Notifications do
  2121. if v[1]==Frame then
  2122. table.remove(Notifications,i)
  2123. end
  2124. end
  2125. Notifs=Notifs-1
  2126. Functions:AdjustNotifPositions()
  2127. end
  2128. local ev
  2129. ev=TLabel.MouseButton1Click:connect(function()
  2130. --print'k'
  2131. spawn(Close)
  2132. wait()
  2133. cc=false
  2134. ev:disconnect()
  2135. end)
  2136. spawn(function()
  2137. if cc then
  2138. Effects:Type(TLabel, Text, 'In',.01)
  2139. wait(ExitDelay*1.2)
  2140. --print'k2'
  2141. spawn(Close)
  2142. wait()
  2143. cc=false
  2144. ev:disconnect()
  2145. end
  2146. end)
  2147. return Frame, TLabel
  2148. end
  2149.  
  2150. function Functions:CreateLogin()
  2151. local BFrame = Functions:MakeNewUi('Frame')
  2152. BFrame.ZIndex=4
  2153. BFrame.BackgroundTransparency=1
  2154. BFrame.Size=ud(1,0,1,0)
  2155. BFrame.Position = ud(0,0,0,0)
  2156. BFrame.Parent=MainFrame
  2157. local TransFrame = Functions:MakeNewUi('Frame')
  2158. TransFrame.ZIndex=8
  2159. TransFrame.BackgroundTransparency=1
  2160. TransFrame.Parent=MainFrame
  2161. local Start = Functions:MakeNewUi('TextButton')
  2162. local txt='Welcome to SaviOS, '..Host.Name..'.'
  2163. Start.Text=txt
  2164. Start.Font=OS.Settings.Fonts.Header
  2165. Start.TextColor3=CurrentPlayerData[4]
  2166. Start.Position=ud(0,0,0,-18)
  2167. Start.BackgroundTransparency=1
  2168. Start.TextTransparency=1
  2169. Start.Parent=BFrame
  2170. local Sub = Functions:MakeNewUi('TextLabel')
  2171. Sub.Parent=BFrame
  2172. Sub.TextColor3=CurrentPlayerData[4]
  2173. Sub.Text='Loading Decal and Sound Assets.'
  2174. Sub.Position=ud(0,0,0,25-18)
  2175. Sub.BackgroundTransparency=1
  2176. Sub.TextTransparency=1
  2177. Sub.ZIndex=6
  2178. local Circ = Functions:MakeNewUi('ImageLabel')
  2179. Circ.Image=Functions:Asset(502107146)
  2180. Circ.Parent=BFrame
  2181. Circ.ImageTransparency=0
  2182. Circ.ImageColor3 = CurrentPlayerData[3]
  2183. Circ.Size=ud(0,350,0,400)
  2184. Circ.Position=Functions:CenterOffset(Circ,ud(0,0,0,0))
  2185. Circ.ZIndex=5
  2186. local con=false
  2187. spawn(function()
  2188. Effects:Type(Start, txt, 'In',.06)
  2189. local nspd=.5
  2190. repeat wait(nspd)
  2191. --Start.Text=txt
  2192. Circ:TweenSizeAndPosition(ud(0,450,0,500),ud(.5,-450/2,.5,-250),'In','Back',nspd,true)
  2193. wait(nspd)
  2194. Circ:TweenSizeAndPosition(ud(0,350,0,400),ud(.5,-350/2,.5,-200),'Out','Quint',nspd,true)
  2195. --Start.Text=txt..'|'
  2196. until con
  2197. end)
  2198. for i = 0,1.025,.025 do
  2199. Start.TextTransparency = 1-i
  2200. MainFrame.BackgroundTransparency = 1-i
  2201. lrs:wait()
  2202. end
  2203. local function finish_Load()
  2204. Particles=false
  2205. Effects:Type(Start, txt, 'Out',.02)
  2206. Start.Text=''
  2207. Circ:TweenSizeAndPosition(ud(0,15,0,20),ud(.5,-15/2,.5,-10),'In','Quint',2,true)
  2208. wait(2)
  2209. Circ:TweenSizeAndPosition(ud(0,950,0,1000),ud(.5,-950/2,.5,-500),'In','Back',1,true)
  2210. wait(.2)
  2211. for i = 0,1.025,.025 do
  2212. Sub.TextTransparency = i
  2213. Circ.ImageTransparency=i
  2214. lrs:wait()
  2215. end
  2216. Circ:Destroy()
  2217. BFrame.Size = ud(0,400,0,210)
  2218. BFrame.Position = Functions:Center(BFrame)
  2219. spawn(function()
  2220. for i = 0,20,.1 do
  2221. MainFrame.BackgroundColor3 = MainFrame.BackgroundColor3:lerp(CurrentPlayerData[3],.1)
  2222. lrs:wait()
  2223. end
  2224. end)
  2225. Sub.Text='Assets['..(#OS.Backgrounds+#OS.Sounds)..'] Loaded.'
  2226. delay(.5,function()
  2227. txt='Click here to begin'
  2228. Effects:Type(Start, txt, 'In',.05)
  2229. delay(.6,function()
  2230. Start.Text=txt
  2231. end)
  2232. end)
  2233. for i = 0,1.025,.025 do
  2234. Sub.TextTransparency = 1-i
  2235. lrs:wait()
  2236. end
  2237. end
  2238. local con2=false
  2239. delay(1,function()
  2240. for i = 0,1.025,.025 do
  2241. Sub.TextTransparency = 1-i
  2242. lrs:wait()
  2243. end
  2244. delay(2,function()
  2245. local tbl1={};
  2246. local tbl2={OS.Backgrounds,OS.Sounds,OS.DecalAssets}
  2247. for _,__ in next, tbl2 do
  2248. for i, Id in next, __ do
  2249. table.insert(tbl1, Id)
  2250. end
  2251. end
  2252. for i,v in next, tbl1 do lrs:wait() end
  2253. con=true
  2254. finish_Load()
  2255. con2=true
  2256. end)
  2257. end)
  2258. repeat lrs:wait() until con2
  2259. Start.TextTransparency = 0
  2260. --MainFrame.Transparency = 0
  2261. local LoginScreen
  2262. local sclick
  2263. sclick=Start.MouseButton1Down:connect(function()
  2264. Sub:TweenPosition(ud(0,0,1,50),'In','Quint',1,true)
  2265. delay(1, function()
  2266. LoginScreen(false)
  2267. end)
  2268. sclick:disconnect()
  2269. end)
  2270. function LoginScreen(NewFrame)
  2271. OS['Login']=LoginScreen
  2272. if NewFrame then
  2273. BFrame = Functions:MakeNewUi('Frame')
  2274. BFrame.ZIndex=4
  2275. BFrame.BackgroundTransparency=1
  2276. BFrame.Size = ud(0,400,0,210)
  2277. BFrame.Position = Functions:Center(BFrame)
  2278. BFrame.Parent=MainFrame
  2279. end
  2280. pcall(function()
  2281. Sub:Destroy()
  2282. for i = 0,1.025,.025 do
  2283. Start.TextTransparency = i
  2284. lrs:wait()
  2285. end
  2286. Start.Parent=nil
  2287. end)
  2288. local UserImage = Functions:MakeNewUi('ImageLabel')
  2289. UserImage.Image=Functions:PlayerImage(Host)
  2290. UserImage.Parent=BFrame
  2291. UserImage.Size=ud(0,100,0,100)
  2292. UserImage.ImageTransparency=1
  2293. UserImage.Position=Functions:CenterOffset(UserImage,ud(0,0,-1,0))
  2294. UserImage:TweenPosition(Functions:CenterOffset(UserImage,ud(0,0,0,-50),'Out','Back',1,true))
  2295. UserImage.ZIndex=8
  2296. local UserImgFrame = Functions:MakeNewUi('ImageLabel')
  2297. UserImgFrame.Image=Functions:Asset(502107146)
  2298. UserImgFrame.Parent=BFrame
  2299. UserImgFrame.ImageTransparency=0
  2300. --UserImgFrame.ImageColor3 = c3(Monitor.Color.r+.2,Monitor.Color.g+.2,Monitor.Color.b+.2)
  2301. UserImgFrame.Size=ud(0,100,0,100)
  2302. UserImgFrame.Position=Functions:CenterOffset(UserImgFrame,ud(0,0,-1,0))
  2303. UserImgFrame:TweenPosition(Functions:CenterOffset(UserImgFrame,ud(0,0,0,-50),'Out','Back',1,true))
  2304. local Username = Functions:MakeNewUi('TextLabel')
  2305. Username.Text = Host.Name
  2306. Username.Parent = BFrame
  2307. Username.TextTransparency=.9
  2308. Username.Position=ud(0,0,1,0)
  2309. Username.ZIndex=9
  2310. Username:TweenPosition(ud(0,0,0,15),'Out','Quint',1,true)
  2311. local Password = Functions:MakeNewUi('TextButton')
  2312. Password.TextTransparency=1
  2313. Password.Parent=BFrame
  2314. Password.Position=ud(0,0,1,0)
  2315. Password.Font=OS.Settings.Fonts.Sub_Header
  2316. Password.TextStrokeColor3 = Password.TextColor3
  2317. Password.MouseEnter:connect(function()
  2318. Password.TextStrokeTransparency=.9
  2319. end)
  2320. Password.MouseLeave:connect(function()
  2321. Password.TextStrokeTransparency=1
  2322. end)
  2323. local canclick=false
  2324. Password.MouseButton1Down:connect(function(x,y)
  2325. if not canclick then
  2326. return
  2327. end
  2328. canclick=false
  2329. --Effects:Particles(x,y)
  2330. local val = Functions:LoginScreenGui(ud(0,400,0,28),{loop=true,ui=Password},true)
  2331. print('dun',val)
  2332. local ss
  2333. ss=function(pp)
  2334. num=0
  2335. for i,v in next,pp:children() do
  2336. num=num+1
  2337. pcall(function()
  2338. spawn(function()
  2339. for i = 0,1.025,.025 do
  2340. if v:IsA'TextButton' or v:IsA'TextBox' or v:IsA'TextLabel' then
  2341. v.TextTransparency = i
  2342. lrs:wait()
  2343. end
  2344. end
  2345. end)
  2346. end)
  2347. pcall(function()
  2348. spawn(function()
  2349. for i = 0,1.025,.025 do
  2350. if v:IsA'ImageLabel' then
  2351. v.ImageTransparency = i
  2352. lrs:wait()
  2353. end
  2354. end
  2355. end)
  2356. end)
  2357. pcall(function()
  2358. v:TweenPosition(ud(2,v.Position.X.Offset,v.Position.Y.Scale,v.Position.Y.Offset),'In','Sine',1,true)
  2359. end)
  2360. wait(.1)
  2361. ss(v)
  2362. end
  2363. return num
  2364. end
  2365. ss(BFrame)
  2366. wait((num+1.5)-(.4*num))
  2367. BFrame:Destroy()
  2368. Functions:MakeHomeScreen()
  2369. return {}
  2370. --canclick=true
  2371. --Gui:Destroy()
  2372. end)
  2373. delay(.1,function()
  2374. Password:TweenPosition(ud(0,0,0,45),'Out','Quint',1,true)
  2375. end)
  2376. spawn(function()
  2377. Effects:Type(Password, 'Enter your Password', 'In',.03)
  2378. canclick=true
  2379. end)
  2380. wait(.3)
  2381. spawn(function()
  2382. Effects:Underline(Username, 20, 70, 2, CurrentPlayerData[4], true)
  2383. end)
  2384. for i = 0,1.025,.01 do
  2385. --UserName.TextTransparency = 1-i
  2386. Password.TextTransparency = 1-i
  2387. Username.TextTransparency = 1-i
  2388. UserImage.ImageTransparency = 1-i
  2389. lrs:wait()
  2390. end
  2391. Functions:IfRegistered(Host.Name, function(bool)
  2392. if bool==true then
  2393. for i = 0,20 do
  2394. UserImgFrame.ImageColor3 = UserImgFrame.ImageColor3:lerp(c3(.25,1,.25),.1)
  2395. lrs:wait()
  2396. end
  2397. elseif bool and not Official then
  2398. for i = 0,20 do
  2399. UserImgFrame.ImageColor3 = UserImgFrame.ImageColor3:lerp(c3(1,.25,.25),.1)
  2400. lrs:wait()
  2401. end
  2402. else
  2403. for i = 0,20 do
  2404. UserImgFrame.ImageColor3 = UserImgFrame.ImageColor3:lerp(c3(.4,0,0),.1)
  2405. lrs:wait()
  2406. end
  2407. end
  2408. end)
  2409. end
  2410. end
  2411.  
  2412. function Functions:Lerp(Speed)
  2413. if Monitor and Monitor.Parent~=nil then
  2414. ypcall(function()
  2415. Monitor.CFrame = Monitor.CFrame:lerp(
  2416. Host.Character.HumanoidRootPart.CFrame *
  2417. CFrame.new(0,5.5,-6.5) *
  2418. CFrame.Angles(-math.rad(12),0,0)
  2419. , Speed)
  2420. end)
  2421. end
  2422. end
  2423.  
  2424. function Functions:Boot()
  2425. script:ClearAllChildren()
  2426. Functions:MakeMonitor()
  2427. G = Instance.new('SurfaceGui', Monitor)
  2428. G.Adornee = Monitor
  2429. G.Face = Enum.NormalId.Back
  2430. MainFrame = Functions:MakeNewUi('Frame')
  2431. MainFrame.ZIndex=1
  2432. MainFrame.BackgroundTransparency=.3
  2433. MainFrame.BackgroundColor3 = CurrentPlayerData[3]
  2434. MainFrame.Parent=G
  2435. spawn(function()
  2436. --wait(2)
  2437. for i = 0,20,.1 do
  2438. MainFrame.BackgroundColor3 = MainFrame.BackgroundColor3:lerp(CurrentPlayerData[4],.1)
  2439. lrs:wait()
  2440. end
  2441. end)
  2442. local MouseFrame = Instance.new('TextLabel', MainFrame)
  2443. MouseFrame.Size = ud(0,5,0,5)
  2444. MouseFrame.BackgroundTransparency = 1
  2445. MouseFrame.Text = ''
  2446. MouseFrame.ZIndex = 9
  2447. MouseFrame.BackgroundColor3=c3(-1,-1,-1)
  2448. MainFrame.MouseMoved:connect(function(x,y)
  2449. if MouseFrame.Parent ~= nil then
  2450. MouseFrame.Position = ud(0,x+3,0,y+6)
  2451. end
  2452. end)
  2453. --200182847
  2454. local MouseInner = Instance.new('ImageLabel', MouseFrame)
  2455. OS.Assets.Mouse=MouseFrame
  2456. MouseInner.Size = ud(0,5,0,5)
  2457. MouseInner.Position = ud(0,-5,0,-7)
  2458. MouseInner.ImageColor3 = CurrentPlayerData[3]
  2459. MouseInner.Image = Functions:Asset(284205403)
  2460. MouseInner.Name = 'AFriendlyMouse1'
  2461. MouseInner.BackgroundTransparency = 1
  2462. MouseInner.ZIndex = 10
  2463. local MouseOuter = Instance.new('ImageLabel', MouseFrame)
  2464. MouseOuter.Size = ud(0,7,0,7)
  2465. MouseOuter.Position = ud(0,-6,0,-8)
  2466. MouseOuter.ImageColor3 = CurrentPlayerData[4]
  2467. MouseOuter.Image = Functions:Asset(284205403)
  2468. MouseOuter.Name = 'AFriendlyMouse2'
  2469. MouseOuter.BackgroundTransparency = 1
  2470. MouseOuter.ZIndex = 9
  2471. local sx,sy=90,100
  2472. local mouseactive=true
  2473. PlayerMouse.Button1Down:connect(function()
  2474. OS.MouseDown = true
  2475. if not mouseactive then return end
  2476. local mus=Functions:Sound(341225236)
  2477. mus.Pitch=3
  2478. mus:Play()
  2479. end)
  2480. PlayerMouse.Button1Up:connect(function()
  2481. OS.MouseDown = false
  2482. if not mouseactive then return end
  2483. local mds=Functions:Sound(341225236)
  2484. mds.Pitch=2.5
  2485. mds:Play()
  2486. local RelativeUi=MouseFrame
  2487. local x,y=RelativeUi.Position.X.Offset,RelativeUi.Position.Y.Offset
  2488. local Circ = Functions:MakeNewUi('ImageLabel')
  2489. Circ.Image=Functions:Asset(284205403)
  2490. Circ.Parent=MainFrame
  2491. Circ.ImageTransparency=0
  2492. Circ.ImageColor3 = CurrentPlayerData[4]
  2493. Circ.Size=ud(0,5,0,5)
  2494. local backx,backy=5,6
  2495. Circ.Position=ud(0,x-backx,0,y-backy)
  2496. Circ.ZIndex=10
  2497. spawn(function()
  2498. Circ:TweenSizeAndPosition(ud(0,sx,0,sy),ud(0,(x-backx)-(sx/2),0,(y-backy)-(sy/2)),'Out','Sine',1,true)
  2499. for i = 0,1.05,.05 do
  2500. Circ.ImageTransparency=i
  2501. lrs:wait()
  2502. end
  2503. Circ:Destroy()
  2504. end)
  2505. end)
  2506. MainFrame.MouseEnter:connect(function(x,y)
  2507. mouseactive=true
  2508. game:service'UserInputService'.MouseIconEnabled=false
  2509. OS.Functions:HideChar()
  2510. end)
  2511. MainFrame.MouseLeave:connect(function(x,y)
  2512. mouseactive=false
  2513. game:service'UserInputService'.MouseIconEnabled=true
  2514. OS.Functions:ShowChar()
  2515. end)
  2516. --Functions:CreateLogin()
  2517. Functions:MakeHomeScreen()
  2518. end
  2519.  
  2520. lrs:connect(function()
  2521. Functions:Lerp(.2)
  2522. end)
  2523.  
  2524. Character.Humanoid.Died:connect(function()
  2525. Monitor.Parent:Destroy()
  2526. game:service'UserInputService'.MouseIconEnabled=true
  2527. script:Destroy()
  2528. end)
  2529.  
  2530. Host.Chatted:connect(function(msg)
  2531. if msg=='g/r' then
  2532. Monitor:Destroy()
  2533. game:service'UserInputService'.MouseIconEnabled=true
  2534. script:Destroy()
  2535. end
  2536. end)
  2537.  
  2538. local plrz=game:service'Players'
  2539.  
  2540. plrz.PlayerAdded:connect(function(Plr)
  2541. Functions:PlayerImgNotification(Plr, 'join')
  2542. end)
  2543.  
  2544. plrz.PlayerRemoving:connect(function(Plr)
  2545. Functions:PlayerImgNotification(Plr, 'rmv')
  2546. end)
  2547.  
  2548. Functions:Boot()
  2549.  
  2550. Host.Chatted:connect(function(msg)
  2551. if msg:lower()=='!reboot' then
  2552. Functions:Boot()
  2553. elseif msg:lower():sub(0,#'!background') == '!background' then
  2554. local id = msg:lower():sub(#'!background'+2)
  2555. OS.UIs['Background'][1].Image=Functions:Asset(tonumber(id))
  2556. end
  2557. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement