Advertisement
bailme9

Untitled

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