Advertisement
Guest User

Untitled

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