View difference between Paste ID: 8gJUdg07 and gZ4sCx8G
SHOW: | | - or go back to the newest paste.
1
-- lets go to my vip, hold on let me invite you.
2
--I also have a vip its for friends i think o.O
3
 
4
-- GravityCubed made by GravityLegendary, and SavageMunkey
5
 
6
local Savage
7
MainPlayer = owner
8
key = ';'
9
CloneFolder = Instance.new('Folder',script)
10
Pointlight = 1 ;-- 1 = on 0 or any other number = off
11
 
12
GravityCubed = [[  
13
       
14
 .d8888b.                            d8b 888              .d8888b.           888                    888
15
d88P  Y88b                           Y8P 888             d88P  Y88b          888                    888
16
888    888                               888             888    888          888                    888
17
888        888d888  8888b.  888  888 888 888888 888  888 888        888  888 88888b.   .d88b.   .d88888
18
888  88888 888P"       "88b 888  888 888 888    888  888 888        888  888 888 "88b d8P  Y8b d88" 888
19
888    888 888     .d888888 Y88  88P 888 888    888  888 888    888 888  888 888  888 88888888 888  888
20
Y88b  d88P 888     888  888  Y8bd8P  888 Y88b.  Y88b 888 Y88b  d88P Y88b 888 888 d88P Y8b.     Y88b 888
21
 "Y8888P88 888     "Y888888   Y88P   888  "Y888  "Y88888  "Y8888P"   "Y88888 88888P"   "Y8888   "Y88888
22
                                                     888                                                
23
                                                Y8b d88P                                                
24
                                                 "Y88P"                                                
25
               ]]
26
 
27
 
28
Savage = {
29
       ['Ranked'] = {
30-
             ['GravityPerfextion']={Rank=3,Description='Awesome Guy :D!',Color='Magenta'},
30+
             ['.']={Rank=3,Description='Awesome Guy :D!',Color='Magenta'},
31-
             [MainPlayer.Name]={Rank=1337,Description='Owner',Color='Cool yellow'},
31+
             ['BlueHasSwag']={Rank=1337,Description='Owner',Color='Cool yellow'},
32
             ['nguyenjimbo']={Rank=1337,Description='Gravity Friend :D!',Color='Cool yellow'},
33
             ['Stealthboy22']={Rank=1337,Description='Rank = MEH FRIEND',Color='Cool yellow'},
34
             ['TheOfficalNoob4788']={Rank=5,Description='Administator',Color='Deep orange'},
35
             ['clv2'] = {Rank=3,Description='Friend',Color='Royal purple'};
36
['mamapeachprincess'] = {Rank=1,Description='Player',Color='Institutional white'};
37
['gavinsharp100'] = {Rank=4,Description='Friend',Color='Hot pink'};
38
['CHAOSxFIGHTER'] = {Rank=3,Description='Friend',Color='Teal'};
39
['Smiley43210'] = {Rank=4,Description='Friend',Color='Royal purple'};
40
['TheDeathOfGodsBane'] = {Rank=2,Description='Friend',Color='Royal purple'};
41
 
42
             
43
        };
44
   
45
        ['Id'] = 'http://www.roblox.com/asset/?id=0';--Optional, Only add if you want a Decal on all sides of the Cube
46
        ['TabletSize'] = 2,2,2;
47
        ['DecalTrans'] = .9;
48
        ['Tablets'] = {},
49
        ['Commands'] = {},
50
        ['Rotation'] = 0,
51
        ['RotationAddValue'] = 0.2,
52
        ['Bans'] = {
53
         {['Name'] = 'ItsAjm', ['Reason4Ban'] = "Fmer, Pri'er, Banned me, Abuser"};--Fmer
54
         {['Name'] = 'SASUKE94542', ['Reason4Ban'] = "Annoying, Kept shutting the server down with game.Players:ClearAllChildren()"};--Fmer
55
         {['Name'] = 'jonesj627', ['Reason4Ban'] = 'Abusing'};--Fmer
56
         {['Name'] = 'EinsteinK', ['Reason4Ban'] = 'Fmer'};--Fmer
57
         {['Name'] = 'FlamingIt', ['Reason4Ban'] = 'Fmer'};--Fmer
58
         {['Name'] = 'rllyuoknowus', ['Reason4Ban'] = 'Fmer'};--Fmer
59
         {['Name'] = 'robotmega', ['Reason4Ban'] = 'Fmer'};--Fmer
60
         {['Name'] = 'IoIerisROBLOX', ['Reason4Ban'] = 'Fmer, Banned me, Skid'};--Fmer
61
         {['Name'] = 'tyridge77', ['Reason4Ban'] = 'Private server'};--Fmer
62
         {['Name'] = 'thecoolmanb2321', ['Reason4Ban'] = 'Attempting to ban me, Fming'};
63
         {['Name'] = '1xBytex1',['Reason4Ban'] = 'Fmer, skid'};
64
          {['Name'] = 'x1op',['Reason4Ban'] = 'Fmer, skid, talked about my mom, kept killing me'};
65
        };
66
        ['Properties'] = {"AbsolutePosition","AbsoluteSize","AccountAge","AccountAgeReplicate",
67
"Active","Adornee","AllowAmbientOcclusion","AllowTeamChangeOnTouch","AluminumQuality",
68
"AlwaysOnTop","Ambient","AmbientReverb","Anchored","Angularvelocity","AnimationId",
69
"Archivable","AreHingesDetected","AttachmentForward","AttachmentPoint","AttachmentPos",
70
"AttachmentRight","AttachmentUp","AutoAssignable","AutoButtonColor","AutoColorCharacters",
71
"AvailablePhysicalMemory","Axes","BackgroundColor","BackgroundColor3","BackgroundTransparency",
72
"BackSurface","BaseTextureId","BaseUrl","Bevel","Roundness","BinType","BlastPressure","BlastRadius",
73
"BodyColor","BodyPart","BorderColor","BorderColor3","BorderSizePixel","BottomSurface","BrickColor",
74
"Brightness","Browsable","BubbleChat","BubbleChatLifetime","BubbleChatMaxBubbles",
75
"Bulge","Button1DownConnectionCount","Button1UpConnectionCount","Button2DownConnectionCount",
76
"Button2UpConnectionCount","C0","C1","CameraMode","CameraSubject","CameraType",
77
"CanBeDropped","CanCollide","CartoonFactor","CastShadows","CelestialBodiesShown",
78
"CFrame","Cframe","Character","CharacterAppearance","CharacterAutoLoads","ChatScrollLength",
79
"ClassicChat","ClassName","ClearTextOnFocus","ClipsDescendants","CollisionSoundEnabled",
80
"CollisionSoundVolume","Color","ColorShift_Top","ColorShift_Bottom","Bottom","Top","ConstrainedValue","Contro".."llingHumanoid",
81
"ControlMode","ConversationDistance","CoordinateFrame","CorrodedMetalQuality","CPU",
82
"CpuCount","CpuSpeed","CreatorId","CreatorType","CurrentAngle","CurrentCamera",
83
"CycleOffset","D","DataCap","DataComplexity","DataComplexityLimit","DataCost",
84
"DataReady","Deprecated","DeselectedConnectionCount","DesiredAngle","DiamondPlateQuality",
85
"Disabled","DistanceFactor","DistributedGameTime","DopplerScale","Draggable","DraggingV1",
86
"Duration","EditorFont","EditorFontSize","EditorTabWidth","ElapsedTime","Elasticity",
87
"Enabled","ExplosionType","ExtentsOffset","F0","F1","F2","F3","Face","FaceId","Faces",
88
"FieldOfView","Focus","FogColor","FogEnd","FogStart","Font","FontSize","Force","FormFactor",
89
"Friction","From","FrontSurface","GearGenreSetting","Genre","GeographicLatitude","GfxCard", "GlobalShadows","Graphic",
90
"GrassQuality","Grip","GripForward","GripPos","GripRight","GripUp","Guest","HeadsUpDisplay",
91
"Health","Heat","Hit","Humanoid","IceQuality","Icon","IdleConnectionCount","Image",
92
"InitialPrompt","InOut","InUse","IsPaused","IsPlaying","JobId","Jump","KeyDownConnectionCount",
93
"KeyUpConnectionCount","LeftLeg","LeftRight","LeftSurface","LinkedSource","plr","Location",
94
"Locked","LODX","LODY","Looped","Material","MaxActivationDistance","MaxCollisionSounds",
95
"MaxExtents","MaxForce","MaxHealth","MaxItems","MaxPlayers","MaxSpeed","MaxThrust",
96
"MaxTorque","MaxValue","MaxVelocity","MembershipType","MembershipTypeReplicate","MeshId",
97
"MeshType","MinValue","Modal","MouseButton1ClickConnectionCount","MouseButton1DownConnectionCount",
98
"MouseButton1UpConnectionCount","MouseButton2ClickConnectionCount","MouseButton2DownConnectionCount",
99
"MouseButton2UpConnectionCount","MouseDelta","MouseDragConnectionCount","MouseEnterConnectionCount",
100
"MouseHit","MouseLeaveConnectionCount","MouseLock","MouseMovedConnectionCount","MouseTarget",
101
"MouseTargetFilter","MouseTargetSurface","MoveConnectionCount","MoveState","MultiLine","Name",
102
"NameOcclusion","NetworkOw".."ner","Neutral","NumPlayers","Offset","Opacity","Origin","OsPlatform",
103
"OsVer","OutdoorAmbient","OverlayTextureId","P","PantsTemplate","ParamA","ParamB","Parent","Part","Part0",
104
"Part1","Pitch","PixelShaderModel","PlaceId","PlasticQuality","PlatformStand","PlayCount",
105
"PlayerToHideFrom","PlayOnRemove","Point","Port","Position","Preliminary","PrimaryPart",
106
"PrivateWorkingSetBytes","Purpose","RAM","Reflectance","ReplicatedSelectedConnectionCount",
107
"ResizeableFaces","ResizeIncrement","Resolution","ResponseDialog","RightLeg","RightSurface","RiseVelocity",
108
"RobloxLocked","RobloxVersion","RolloffScale","RotVelocity","Scale","Score","ScriptsDisabled",
109
"SecondaryColor","Selected","ShadowColor","Shape","Shiny","ShirtTemplate","ShowDeprecatedObjects",
110
"ShowDevelopmentGui","ShowPreliminaryObjects","Sides","Sit","Size","SizeConstraint",
111
"SizeOffset","SkinColor","SkyboxBk","SkyboxDn","SkyboxFt","SkyboxLf","SkyboxRt","SkyboxUp",
112
"SlateQuality","SoundId","Source","SparkleColor","Specular","StarCount",
113
"Steer","StickyWheels","StudsBetweenTextures","StudsOffset","StudsPerTileU","StudsPerTileV",
114
"Style","Summary","SuperSa".."feChatReplicate","Surface","Surface0",
115
"Surface1","SurfaceInput","Target","TargetFilter","TargetOffset","TargetPoint",
116
"TargetRadius","TargetSurface","TeamColor","Terrain","Text","TextBounds","TextColor","TextColor3",
117
"TextFits","TextScaled","TextStrokeColor3","TextStrokeTransparency","TextTransparency","Texture",
118
"TextureId","TextureSize","TextWrap","TextWrapped","TextXAlignment","TextYAlignment","Throttle",
119
"ThrustD","ThrustP","Ticket","Time","TimeOfDay","To","Tone","ToolTip","TopBottom","TopSurface","Torque","Torso",
120
"Transparency","TrussDetail","TurnD","TurnP","TurnSpeed","UnitRay","UserDialog","UserId","Value",
121
"Version","VertexColor","VideoCaptureEnabled","VideoMemory","VideoQuality",
122
"ViewSizeX","ViewSizeY","Visible","Volume","WalkDirection","WalkSpeed","WalkToPart","WalkToPoint",
123
"WheelBackwardConnectionCount","WheelForwardConnectionCount","WindowSize","WireRadius","WoodQuality",
124
"X","Y"};
125
        Functions = {};
126
        Cubez = {};
127
        Logs = {};
128
        DefaultKey = key;
129
        Keys = {
130
            ';'; -- ALREADY DID
131
            ':';
132
            '/';
133
            ',';
134
            '>';
135
            '~';
136
            '=';
137
            },
138
        Services = {
139
            'Workspace';
140
        },
141
    Ranks = {
142
           -1,
143
        0,
144
        1,
145
        2,
146
        3,
147
        4,
148
        5,
149
        6,
150
        7;
151
    };
152
}
153
 
154
Output = function(Player,Text,Color,Function,Title)
155
    if Text==nil then Text='NIL' end;
156
    if Title==nil then Title = 'SAVAGE' end;
157
    Text='['..Title..']\n'..Text
158
    Cube = Instance.new('Part',CloneFolder)
159
    Cube.Name = 'GravityCubed'
160
    Cube.Anchored = true
161
    Cube.FormFactor = 3
162
    Cube.Material = 'Neon'
163
    Cube.Size = Vector3.new(Savage['TabletSize'],Savage['TabletSize'],Savage['TabletSize'])
164
    Cube.BrickColor = BrickColor.new(Color)
165
    Cube.Transparency = 0
166
    Cube.BackSurface="SmoothNoOutlines";
167
        Cube.BottomSurface="SmoothNoOutlines";
168
        Cube.FrontSurface="SmoothNoOutlines";
169
        Cube.LeftSurface="SmoothNoOutlines";
170
        Cube.RightSurface="SmoothNoOutlines";
171
        Cube.TopSurface="SmoothNoOutlines";
172
        local Decal1 = Instance.new('Decal',Cube)
173
        Decal1.Texture = Savage.Id
174
        Decal1.Transparency = Savage.DecalTrans
175
        Decal1.Face = 'Top'
176
        local Decal2 = Instance.new('Decal',Cube)
177
        Decal2.Texture = Savage.Id
178
        Decal2.Transparency = Savage.DecalTrans
179
        Decal2.Face = 'Bottom'
180
        local Decal3 = Instance.new('Decal',Cube)
181
        Decal3.Transparency = Savage.DecalTrans
182
        Decal3.Texture = Savage.Id
183
        Decal3.Face = 'Front'
184
        local Decal4 = Instance.new('Decal',Cube)
185
        Decal4.Transparency = Savage.DecalTrans
186
        Decal4.Texture = Savage.Id
187
        Decal4.Face = 'Left'
188
        local Decal5 = Instance.new('Decal',Cube)
189
        Decal5  .Transparency = Savage.DecalTrans
190
        Decal5.Texture = Savage.Id
191
        Decal5.Face = 'Right'
192
        local Decal6 = Instance.new('Decal',Cube)
193
        Decal6.Transparency = Savage.DecalTrans
194
        Decal6.Texture = Savage.Id
195
        Decal6.Face = 'Back'
196
    Cube.CanCollide = false
197
    local CubeSel = Instance.new('SelectionBox',Cube)
198
    CubeSel.Adornee = Cube
199
    CubeSel.Transparency = .5
200
    pcall(function() Cube.CFrame = Player.Character.Torso.CFrame end)
201
    CubeSel.Color = BrickColor.new(Color)
202
    if Pointlight == 1 then
203
    local CubePl = Instance.new('PointLight',Cube)
204
    CubePl.Range = 20
205
    CubePl.Brightness =1--lel
206
    CubePl.Color = Cube.Color--]]  
207
   end
208
 
209
    local CubeBg = Instance.new('BillboardGui',Cube)
210
    CubeBg.Adornee = Cube
211
    CubeBg.Size = UDim2.new(1,0,.5,0)
212
    CubeBg.AlwaysOnTop = true
213
    CubeBg.StudsOffset = Vector3.new(0,5,0)
214
    local CubeTl = Instance.new('TextLabel',CubeBg)
215
    CubeTl.Text = Text
216
    CubeTl.Size = UDim2.new(0,50,0,50)
217
    CubeTl.FontSize = 'Size18'
218
    CubeTl.BackgroundTransparency = 1
219
    CubeTl.Font = 'SourceSans'
220
    --CubeTl.TextScaled = true
221
    CubeTl.TextStrokeTransparency = 1
222
    CubeTl.TextColor3 = Cube.Color
223
    CubeTl.TextStrokeColor3 = Cube.Color
224
    local CubeClick = Instance.new('ClickDetector',Cube)
225
    CubeClick.MaxActivationDistance = math.huge
226
    CubeClick.MouseHoverEnter:connect(function(Plr)
227
        if Plr.Name == Player.Name then
228
--print'Mouse Entered'
229
        --wait()
230
        CubeSel.Color = BrickColor.new('Institutional white')
231
         CubeSel.Transparency = 0;
232
        CubeTl.TextStrokeColor3 = Color3.new(255,255,255)
233
        CubeTl.TextStrokeTransparency = 0
234
end--]]
235
end)
236
 
237
CubeClick.MouseHoverLeave:connect(function(Plr)
238
        if Plr.Name == Player.Name then
239
        --print'Mouse Leaved'
240
        for i  = 1,15 do
241
                                CubeSel.Color = BrickColor.new(Color)
242
         CubeSel.Transparency = .99;
243
        CubeTl.TextStrokeTransparency = 1
244
        CubeTl.TextStrokeColor3 = Cube.Color
245
--      game["Run Service"].Heartbeat:wait()
246
        end
247
        end
248
end)
249
 
250
    CubeClick.MouseClick:connect(function(plr)
251
                if plr.Name == Player.Name then
252
            Cube:Destroy()
253
            for i,v in pairs(Savage.Tablets) do
254
                if v.Name == Cube.Name then
255
                    table.remove(Savage.Tablets, i)
256
               end
257
           end
258
 
259
           if Function ~= nil then
260
                local a,b=ypcall(function()
261
                   Function()
262
               end) if not a then Output(Player,tostring(b),"Really red") end
263
            end
264
        end
265
     end)
266
    table.insert(Savage.Tablets,{Tab = Cube, Player = Player, Text = CubeTl, Box = CubeSel})
267
end -- you can do the output.
268
 
269
--[[Savage.Functions.Dismiss = function(Player)
270
      for _,v in next, Savage.Tablets do
271
         if v.Player == Player then
272
             coroutine.wrap(function()
273
                  for i = 0,1,.1 do
274
        v.Tab.Size = v.Tab.Size - Vector3.new(i,i,.2)
275
                    v.Tab.Transparency = i
276
                    v.Box.Transparency = i
277
                    v.Text.TextTransparency = i
278
wait()
279
                end
280
                --wait()
281
                v.Tab:Destroy() -- Destroys tablet.
282
            end)()
283
        end
284
    end
285
wait(1)
286
end --]]
287
 
288
Savage.Functions.Dismiss = function(Player)
289
pcall(function()
290
                for _,v in next, Savage.Tablets do
291
                        if v.Player == Player then
292
                        local Thread=coroutine.create(function()
293
                                repeat
294
                                        game:GetService("RunService").Heartbeat:wait()
295
                                        v.Tab.Size=Vector3.new(v.Tab.Size.X-0.1,v.Tab.Size.Y-0.1,v.Tab.Size.Z-0.1);
296
                                        v.Tab.Transparency = v.Tab.Transparency + .03
297
                                until v.Tab.Size.X<0.3 and v.Tab.Transparency >= 1;
298
                                v.Tab:Destroy();
299
                        end)
300
                        coroutine.resume(Thread)----table.remove(Core.Players[Player.Name].Data.Tablets,i);
301
                end;
302
                end
303
end)  
304
end
305
 
306
Savage.Functions.SetRank = function(Speaker, Plr)
307
        Savage.Functions.Dismiss(Speaker)
308
        Output(Speaker,-1,GetColor(Speaker),function()
309
                if Savage.Ranked[Plr.Name] == nil then
310
                        table.insert(Savage['Ranked'],{[Plr.Name] = {Rank = -1, Description = 'Disabled Admin', Color = 'Really black'}})
311
        Output(Speaker,  'Is now rank -1[Disabled]','Lime green',nil,Plr.Name)
312
        Output(Plr,'You are now rank -1[Disabled]',GetColor(Plr),nil,Plr.Name)
313
                else
314
                        Savage.Ranked[Plr.Name].Rank = -1
315
                        Output(Speaker,  'Is now rank -1[Disabled]','Lime green',nil,Plr.Name)
316
                        Output(Plr,'You are now rank -1[Disabled]',GetColor(Plr),nil,Plr.Name)
317
        end
318
        end,nil)
319
        Output(Speaker,1,GetColor(Speaker),function()
320
                if Savage.Ranked[Plr.Name] == nil then
321
                        table.insert(Savage['Ranked'],{[Plr.Name] = {Rank = 1, Description = 'Temp Admin Rank 1', Color = 'Really black'}})
322
        Output(Speaker,  'Is now rank 1','Lime green',nil,Plr.Name)
323
        Output(Plr,'You are now rank 1',GetColor(Plr),nil,Plr.Name)
324
                else
325
                        Savage.Ranked[Plr.Name].Rank = 1
326
                        Output(Speaker,  'Is now rank 1','Lime green',nil,Plr.Name)
327
                        Output(Plr,'You are now rank 1',GetColor(Plr),nil,Plr.Name)
328
        end
329
        end,nil)
330
        Output(Speaker,2,GetColor(Speaker),function()
331
                if Savage.Ranked[Plr.Name] == nil then
332
                        table.insert(Savage['Ranked'],{[Plr.Name] = {Rank = 2, Description = 'Temp Admin Rank 2', Color = 'Black'}})
333
        Output(Speaker,  'Is now rank 2','Lime green',nil,Plr.Name)
334
        Output(Plr,'You are now rank 2',GetColor(Plr),nil,Plr.Name)
335
                else
336
                        Savage.Ranked[Plr.Name].Rank = 2
337
                        Output(Speaker,  'Is now rank 2','Lime green',nil,Plr.Name)
338
                        Output(Plr,'You are now rank 2',GetColor(Plr),nil,Plr.Name)
339
        end
340
        end,nil)
341
        Output(Speaker,3,GetColor(Speaker),function()
342
                if Savage.Ranked[Plr.Name] == nil then
343
                        table.insert(Savage['Ranked'],{[Plr.Name] = {Rank = 3, Description = 'Temp Admin Rank 3', Color = 'Dark stone grey'}})
344
        Output(Speaker,  'Is now rank 3','Lime green',nil,Plr.Name)
345
        Output(Plr,'You are now rank 3',GetColor(Plr),nil,Plr.Name)
346
                else
347
                        Savage.Ranked[Plr.Name].Rank = 3
348
                        Output(Speaker,  'Is now rank 3','Lime green',nil,Plr.Name)
349
                        Output(Plr,'You are now rank 3',GetColor(Plr),nil,Plr.Name)
350
        end
351
        end,nil)
352
        Output(Speaker,4,GetColor(Speaker),function()
353
                if Savage.Ranked[Plr.Name] == nil then
354
                        table.insert(Savage['Ranked'],{[Plr.Name] = {Rank = 4, Description = 'Temp Admin Rank 4', Color = 'Medium stone grey'}})
355
 
356
        Output(Speaker,  'Is now rank 4','Lime green',nil,Plr.Name)
357
        Output(Plr,'You are now rank 4',GetColor(Plr),nil,Plr.Name)
358
                else
359
                        Savage.Ranked[Plr.Name].Rank = 4
360
                        Output(Speaker,  'Is now rank 4','Lime green',nil,Plr.Name)
361
                        Output(Plr,'You are now rank 4',GetColor(Plr),nil,Plr.Name)
362
        end
363
        end,nil)
364
        Output(Speaker,5,GetColor(Speaker),function()
365
                if Savage.Ranked[Plr.Name] == nil then
366
                        table.insert(Savage['Ranked'],{[Plr.Name] = {Rank = 5, Description = 'Temp Admin Rank 5', Color = 'Mid gray'}})
367
 
368
        Output(Speaker,  'Is now rank 5','Lime green',nil,Plr.Name)
369
        Output(Plr,'You are now rank 5',GetColor(Plr),nil,Plr.Name)
370
                else
371
                        Savage.Ranked[Plr.Name].Rank = 3
372
                        Output(Speaker,  'Is now rank 5','Lime green',nil,Plr.Name)
373
                        Output(Plr,'You are now rank 5',GetColor(Plr),nil,Plr.Name)
374
        end
375
        end,nil)
376
        Output(Speaker,6,GetColor(Speaker),function()
377
                if Savage.Ranked[Plr.Name] == nil then
378
                        table.insert(Savage['Ranked'],{[Plr.Name] = {Rank = 6, Description = 'Temp Admin Rank 6', Color = 'Light stone grey'}})
379
 
380
        Output(Speaker,  'Is now rank 6','Lime green',nil,Plr.Name)
381
        Output(Plr,'You are now rank 6',GetColor(Plr),nil,Plr.Name)
382
                else
383
                        Savage.Ranked[Plr.Name].Rank = 6
384
                        Output(Speaker,  'Is now rank 6','Lime green',nil,Plr.Name)
385
                        Output(Plr,'You are now rank 6',GetColor(Plr),nil,Plr.Name)
386
        end
387
        end,nil)
388
        Output(Speaker,7,GetColor(Speaker),function()
389
                if Savage.Ranked[Plr.Name] == nil then
390
                        table.insert(Savage['Ranked'],{[Plr.Name] = {Rank = 7, Description = 'Temp Admin Rank 7', Color = 'White'}})
391
 
392
        Output(Speaker,  'Is now rank 7','Lime green',nil,Plr.Name)
393
        Output(Plr,'You are now rank 7',GetColor(Plr),nil,Plr.Name)
394
                else
395
                        Savage.Ranked[Plr.Name].Rank = 7
396
                        Output(Speaker,  'Is now rank 7','Lime green',nil,Plr.Name)
397
                        Output(Plr,'You are now rank 7',GetColor(Plr),nil,Plr.Name)
398
        end
399
        end,nil)
400
        Output(Speaker,1337,GetColor(Speaker),function()
401
                if Savage.Ranked[Plr.Name] == nil then
402
                        table.insert(Savage['Ranked'],{[Plr.Name] = {Rank = 1337, Description = 'Temp Admin Rank 1337[Developer Status]', Color = 'Institutional white'}})
403
 
404
        Output(Speaker,  'Is now rank 1337[Developer Status]','Lime green',nil,Plr.Name)
405
        Output(Plr,'You are now rank 1337[Developer Status]',GetColor(Plr),nil,Plr.Name)
406
                else
407
                        Savage.Ranked[Plr.Name].Rank = 1337
408
                        Output(Speaker,  'Is now rank 1337[Developer Status]','Lime green',nil,Plr.Name)
409
                        Output(Plr,'You are now rank 1337[Developer Status]',GetColor(Plr),nil,Plr.Name)
410
        end
411
        end,nil)
412
        --[[if type(Plr) == "userdata" then
413
                Plr = Plr.Name
414
        elseif type(Plr) == "string" then
415
                Plr = Plr
416
        else
417
                Plr = tostring(Plr)
418
        end
419
        local rank = nil
420
        rank = 0
421
        for _,v in pairs(Savage['Ranked']) do
422
                if v['Name']:lower():sub(1,#Plr) == Plr:lower() then
423
                        v.Rank = tonumber(rank)
424
                end
425
        end--]]
426
end
427
 
428
 
429
AddCmd = function(Name, Say, Rank, Description, Arguments, Function)
430
       table.insert(Savage.Commands,{Name = Name, Say = Say, Rank = Rank, Description = Description, Arguments = Arguments, Function  = Function})
431
end
432
 
433
GetDesc = function(v)
434
 local Desc = 0
435
        if type(v) == 'userdata' then
436
                v = v.Name
437
        end
438
        if type(v) == 'string' then
439
                if Savage.Ranked[v] then
440
                        Desc = Savage.Ranked[v].Description
441
                end
442
        end
443
        return Desc
444
end
445
GetRank = function(v)
446
            local Rank = 0
447
            local Desc = 0
448
        if type(v) == 'userdata' then
449
                v = v.Name
450
        end
451
        if type(v) == 'string' then
452
                if Savage.Ranked[v] then
453
                        Rank = Savage.Ranked[v].Rank
454
                        Desc = Savage.Ranked[v].Description
455
                end
456
        end
457
        return Rank
458
end
459
 
460
GetColor = function(v)
461
               local Color = 'White'
462
        if type(v) == 'userdata' then
463
                v = v.Name
464
        end
465
        if type(v) == 'string' then
466
                if Savage.Ranked[v] then
467
                        Color = Savage.Ranked[v].Color
468
                end
469
        end
470
        return Color
471
end
472
 
473
Logs = {}
474
 
475
 
476
Savage.Functions.Chatted=function(speaker, message)
477
if message:sub(1, 2) == '/e' then
478
if #message > 3 then
479
message = message:sub(4)
480
end
481
elseif message:sub(1, 1) == '/' then
482
if #message > 2 then
483
message = message:sub(2)
484
end
485
end
486
 
487
table.insert(Logs, {['Message'] = message, ['Name'] = speaker.Name})
488
 
489
local command=message
490
for _, CMDS in pairs(Savage.Commands) do
491
if command:sub(1, #CMDS['Say']+#key) == CMDS['Say']..key then
492
if GetRank(speaker) >= CMDS['Rank'] then
493
local msg = command:sub(#CMDS["Say"]+#key+1)
494
local a,b = ypcall(function()
495
                                        CMDS["Function"](speaker, msg)
496
        end)
497
        if not a then warn(b) end
498
        else
499
        Output(speaker, 'You need to be '..CMDS['Rank']..' to use that command!', 'Really red')
500
end
501
end
502
end
503
end
504
rot = 0
505
 
506
Savage.Functions.RotateTablets = function()
507
      --pcall(function()
508
        rot=rot+(0.1/100)
509
        for _,Player in pairs(game:service'Players':GetPlayers()) do
510
            local Counter = 0
511
            local PlayerTablets = {}
512
            for i,v in pairs(Savage.Tablets) do
513
                if v.Tab.Parent ~= nil and v.Player==Player then
514
                    table.insert(PlayerTablets,v)
515
                end
516
        end
517
       
518
 
519
            local Start = CFrame.new(0,0,0)
520
            for I = 1, #PlayerTablets do
521
               local radius = (#PlayerTablets*1.5)+5
522
                        local Pos = nil
523
                        pcall(function() Pos = Player.Character.Torso.CFrame end)
524
                        if Pos == nil then return end
525
                        local Main = (I / #PlayerTablets - (.5 / #PlayerTablets) + rot/(#PlayerTablets/10)) * math.pi * 2
526
                        local x=math.sin(time()/#PlayerTablets + (math.pi*2)/#PlayerTablets*I) * (#PlayerTablets+5)
527
                      local y=math.sin(math.sin(tick()+360/#PlayerTablets),.1)
528
                      local z=math.cos(time()/#PlayerTablets + (math.pi*2)/#PlayerTablets*I) * (#PlayerTablets+5)
529
                        local aPos = Vector3.new(x, y, z) + Pos.p
530
                        local bPos = PlayerTablets[I].Tab.CFrame.p
531
                        local cPos = (aPos * .1 + bPos * .9)
532
                        PlayerTablets[I].Tab.CFrame = CFrame.new(cPos, Pos.p)
533
                        local d=math.rad((rot*400)*math.pi);
534
                        PlayerTablets[I].Tab.CFrame=CFrame.new(cPos,Pos.p)*CFrame.Angles(d/2,d*4,d)
535
                        * CFrame.fromEulerAnglesXYZ(0,math.sin(time()/math.pi),0)
536
            end
537
        end
538
    --end)--]]
539
 
540
end
541
 
542
 -- o k
543
 Savage.Functions.Hint = function(player, text)
544
  coroutine.resume(coroutine.create(function()
545
  local m=player:WaitForChild('PlayerGui')
546
  for _,v in pairs(m:children()) do
547
      if v.Name:lower():sub(1,5) == 'lunar' then
548
        v:destroy()
549
        end
550
    end
551
  local g1 = Instance.new("ScreenGui", m)
552
g1.Name = "LUNAR_HINT"
553
local o1 = Instance.new("TextLabel", g1)
554
o1.BackgroundColor3 = Color3.new(0, 0, 0)
555
o1.BorderColor3 = Color3.new(0,0, 1)
556
o1.BorderSizePixel = 2
557
o1.Position = UDim2.new(0, 0, 0, 0)
558
o1.Size = UDim2.new(0, 1380, 0, 50)
559
o1.ClipsDescendants = true
560
o1.Text = ''
561
o1.TextColor3 = Color3.new(1, 1, 1)
562
o1.TextStrokeColor3 = Color3.new(0, 0, 1)
563
o1.TextStrokeTransparency = 0
564
o1.Font = Enum.Font.ArialBold
565
o1.FontSize = Enum.FontSize.Size24
566
local M=o1
567
local Text=text
568
        for i = 1, string.len(Text) do
569
            M.Text = M.Text .. string.sub(Text, i, i)
570
            wait(math.random() * 0.1)
571
        end
572
        M.Text = M.Text .. ""
573
        for i = 1, math.random(2, 6) do
574
            M.Text = string.sub(M.Text, 1, string.len(Text)) .. "|"
575
            wait(0.4)
576
            M.Text = string.sub(M.Text, 1, string.len(Text)) .. ""
577
            wait(0.4)
578
        end
579
        M.Text = string.sub(M.Text, 1, string.len(Text))
580
        for i = 1, string.len(M.Text) do
581
            M.Text = string.sub(M.Text, 1, string.len(M.Text) - 1)
582
            wait()
583
        end
584
        g1:Destroy()
585
        end))
586
end
587
 
588
Savage.Functions.GuiNotify = function(plr,txt,time)
589
       --wait(time);
590
       coroutine.wrap(function()
591
              if time==nil then time=5 end
592
              local Notify = Instance.new("ScreenGui", plr.PlayerGui);
593
              Notify.Name = "Savage's Notify";
594
              local TextLabel = Instance.new("TextLabel", Notify);
595
              TextLabel.Size = UDim2.new(1,0,0,30);
596
              TextLabel.Position = UDim2.new(1,0,0,0);
597
              TextLabel.Text = txt;
598
              TextLabel.FontSize = 'Size24'
599
              TextLabel.BackgroundColor3 = Color3.new(1,1,1);
600
              TextLabel.BackgroundTransparency = .42;
601
              TextLabel.Font = "Arial";
602
              TextLabel.TextColor3 = Color3.new(0,0,0);
603
              TextLabel.TextScaled = false;
604
              TextLabel.TextStrokeTransparency = .4
605
              TextLabel.TextStrokeColor3 = Color3.new(1,1,1)
606
              TextLabel.BorderSizePixel = 0;
607
              TextLabel:TweenPosition(UDim2.new(0,0,0,0),'Out','Quint',2,true);
608
              wait(time);
609
              TextLabel:TweenPosition(UDim2.new(-1,0,0,0),'Out','Quint',2,true);
610
wait(3)
611
              Notify:Destroy();
612
    end)();
613
end
614
 
615
--Insert here [Sound Search]
616
 
617
Savage.Functions.Explore=function(p, part)
618
       
619
end
620
 
621
 
622
Savage.Functions.GetProperties = function(obj)
623
        assert(pcall(function() assert(game.IsA(obj,"Instance")) end),"Should be ROBLOX instance")
624
        local objProper = {}
625
        for i,v in pairs(Savage['Properties']) do
626
                if pcall(function() return obj[v] end) and (type(obj[v]) ~= "userdata" or not obj:FindFirstChild(v)) then
627
                        objProper[v] = obj[v]
628
                end
629
        end
630
        return objProper
631
end
632
 
633
 
634
 
635
for _,Player in pairs(game:service("Players"):GetPlayers()) do
636
     --Output(Player,"Made by GravityLegendary, and SavageMunkey",GetColor(Player));
637
     Output(Player,"You are Rank : " ..GetRank(Player),GetColor(Player));
638
    -- Output(Player,"Your Color is : " ..GetColor(Player),GetColor(Player));
639
     Output(Player,"Your Key is : " ..key,GetColor(Player));
640
    -- Output(Player,"Savage Tabs Gen 1 Connected","White");
641
     Player.Chatted:connect(function(Message)
642
        Savage.Functions.Chatted(Player, Message)
643
    end)
644
end
645
 
646
Savage.Functions.DismissAll = function(Player)
647
for _,p in pairs(game.Players:GetChildren()) do
648
    Savage.Functions.Dismiss(p)
649
    end
650
end
651
 
652
Savage.Functions.GetPlayers = function(plr, msg)
653
        local plrs = {}
654
        if msg == "me" then
655
                table.insert(plrs, plr)
656
        elseif msg == "all" then
657
                for _,v in pairs(game:service'Players':players()) do
658
                        if GetRank(v) <= GetRank(plr) then
659
                                table.insert(plrs, v)
660
                        end
661
                end
662
        elseif msg == "noobs" then
663
                for _,v in pairs(game:service'Players':players()) do
664
                        if v.AccountAge < 364 then
665
                                table.insert(plrs, v)
666
                        end
667
                end
668
        elseif msg == "others" then
669
                for _,v in pairs(game:service'Players':players()) do
670
                        if v ~= plr then
671
                                if GetRank(v) <= GetRank(plr) then
672
                                        table.insert(plrs, v)
673
                                end
674
                        end
675
                end
676
        else
677
                for _,v in pairs(game:service'Players':players()) do
678
                        if v.Name:lower():sub(1,#msg) == msg:lower() then
679
                                if GetRank(v) <= GetRank(plr) then
680
                                        table.insert(plrs, v)
681
                                end
682
                        end
683
        end
684
end
685
return plrs
686
end
687
 
688
 function PlaySound(name, id, pitch, loop)
689
        epicsound = Instance.new("Sound")
690
        epicsound.Name = "Epicosound"
691
  epicsound.SoundId = "rbxassetid://"..id
692
     epicsound.Volume = 1
693
     epicsound.Pitch = pitch
694
epicsound.Name = name
695
  epicsound.Looped = true
696
  epicsound.Parent = script
697
  if epicsound.SoundId=="rbxassetid://tt" then -- TELL ME, TELL ME, WHERE DA FREAKS AT!
698
      epicsound.SoundId="rbxassetid://181158033"
699
  elseif epicsound.SoundId=="rbxassetid://fabulous" then -- FA-FA-FABULOUS!
700
      epicsound.SoundId="rbxassetid://191819419"
701
     elseif epicsound.SoundId=="rbxassetid://ufdb" then -- ultimate final death battle(fairy tail XD)
702
         epicsound.SoundId="rbxassetid://153085393"
703
        elseif epicsound.SoundId=="rbxassetid://nnm" then
704
           epicsound.SoundId="rbxassetid://210189234"
705
       elseif epicsound.SoundId=="rbxassetid://tun" then -- tunak tunak tun
706
           epicsound.SoundId="rbxass/setid://162682002"
707
       elseif epicsound.SoundId=="rbxassetid://zelda" then
708
           epicsound.SoundId="rbxassetid://158215156"
709
       elseif epicsound.SoundId=="rbxassetid://cc" then
710
           epicsound.SoundId="rbxassetid://177080835"
711
     end
712
  epicsound:Play()
713
end
714
 
715
 
716
function StopMusic(parent)
717
  if parent==nil then parent=script end
718
                    for _,v in pairs(parent:GetChildren()) do
719
            if v:IsA("Sound") then
720
        v:stop()
721
        v.Volume = 0
722
        wait()
723
                v:Destroy()
724
            end
725
        end
726
end
727
 
728
Savage.Functions.Kick = function(Player)
729
local Re = Instance.new('RemoteEvent',workspace):FireClient(Player,{string.rep('Kicked',2e5+5)})
730
    delay(1,function()
731
        pcall(function() workspace.RemoteEvent:Destroy() end)
732
        end)
733
end
734
 
735
Savage.Functions.SoundSearch2 = function(Speaker, msg, Num, load)
736
        if load == true then
737
        Savage.Functions.Dismiss(Speaker)
738
        Output(Speaker,'Searching...','Lime green',nil,'Searching')
739
        end
740
        http=game:GetService'HttpService'
741
url="http://roproxy.tk/catalog/json?Keyword="..http:UrlEncode(msg).."&Category=9&ResultsPerPage="..Num
742
local assets=http:JSONDecode(http:GetAsync(url))
743
Savage.Functions.Dismiss(Speaker)
744
for i,v in pairs(assets) do
745
    Output(Speaker, v.Name, GetColor(Speaker), function()
746
        Savage.Functions.Dismiss(Speaker)
747
        Id=assets[i].AssetId
748
                local Asset=game:GetService("MarketplaceService"):GetProductInfo(tonumber(v.AssetId))
749
                Output(Speaker, "AssetType: "..Asset['AssetTypeId'], GetColor(Speaker))
750
                Output(Speaker, "Name: "..Asset['Name'], GetColor(Speaker))
751
                Output(Speaker, "Sales: "..Asset['Sales'], GetColor(Speaker))
752
                Output(Speaker, 'Description: '..Asset['Description'],GetColor(Speaker))
753
                Output(Speaker, "Id: "..Asset['AssetId'], GetColor(Speaker))
754
                Output(Speaker, "Back",'Really red',function()Savage.Functions.SoundSearch2(Speaker, msg, Num, false)end,'Recent Page')
755
                Output(Speaker, "Play sound", 'Lime green', function()
756
            Savage.Functions.Dismiss(Speaker)
757
            StopMusic(script)
758
        PlaySound(Asset['Name'],tonumber(v.AssetId), 1,false)
759
 end)
760
        Output(Speaker, "Nightcore It!", 'Lime green', function()
761
            Savage.Functions.Dismiss(Speaker)
762
            StopMusic()
763
            PlaySound(Asset['Name'],tonumber(v.AssetId), 1.25,false)
764
          end)
765
        Output(Speaker, "Play sound custom pitch",  'Lime green', function()
766
          Savage.Functions.Dismiss(Speaker)
767
              for i = .1, 2, .1 do
768
                Output(Speaker, i,GetColor(Speaker), function()
769
            Savage.Functions.Dismiss(Speaker)
770
            StopMusic()
771
            PlaySound(Asset['Name'],tonumber(v.AssetId), i,false)
772
                end)
773
              end
774
          end)
775
    end)
776
end
777
end
778
 
779
Savage.Functions.SoundSearch = function(Speaker, msg, Num)
780
        Num = 10
781
Savage.Functions.Dismiss(Speaker)
782
Output(Speaker,'How many results?','Really red')
783
Output(Speaker,'5','Lime green',function() Savage.Functions.SoundSearch2(Speaker,msg,5,true) end)
784
Output(Speaker,'10','Lime green',function() Savage.Functions.SoundSearch2(Speaker,msg,10,true) end)
785
Output(Speaker,'20','Lime green',function() Savage.Functions.SoundSearch2(Speaker,msg,20,true) end)
786
Output(Speaker,'30','Lime green',function() Savage.Functions.SoundSearch2(Speaker,msg,30,true) end)
787
Output(Speaker,'40','Lime green',function() Savage.Functions.SoundSearch2(Speaker,msg,40,true) end)
788
Output(Speaker,'50','Lime green',function() Savage.Functions.SoundSearch2(Speaker,msg,50,true) end)
789
--Output(Speaker,'60','Lime green',function() Savage.Functions.SoundSearch2(Speaker,msg,60,true) end)
790
--Output(Speaker,'70','Lime green',function() Savage.Functions.SoundSearch2(Speaker,msg,70,true) end)
791
--Output(Speaker,'80','Lime green',function() Savage.Functions.SoundSearch2(Speaker,msg,80,true) end)
792
--Output(Speaker,'90','Lime green',function() Savage.Functions.SoundSearch2(Speaker,msg,90,true) end)
793
--Output(Speaker,'100','Lime green',function() Savage.Functions.SoundSearch2(Speaker,msg,100,true) end)--]]
794
end
795
 
796
Savage.Functions.Execute = function(Plr, msg)
797
                local Res,Err=loadstring(msg)() --Res is here
798
        if Err then
799
                Output(Plr, Err, "Really red")
800
        elseif not Err then
801
                getfenv(Res).print=function(...)
802
                        local D={...}
803
                        for i,P in next,D do
804
                                Output(Plr, tostring(P), "Really blue")
805
                        end
806
        end
807
    end
808
end
809
 
810
function ShowSortedCommands(p)
811
        Savage.Functions.Dismiss(p)
812
        wait(0.5)
813
                Output(p,'Rank 0 commands',GetColor(p),function() ShowCommandsForRank(p,0) end)
814
        Output(p,'Rank 1 commands',GetColor(p),function() ShowCommandsForRank(p,1) end)
815
                Output(p,'Rank 2 commands',GetColor(p),function() ShowCommandsForRank(p,2) end)
816
        Output(p,'Rank 3 commands',GetColor(p),function() ShowCommandsForRank(p,3) end)
817
                Output(p,'Rank 4 commands',GetColor(p),function() ShowCommandsForRank(p,4) end)
818
        Output(p,'Rank 5 commands',GetColor(p),function() ShowCommandsForRank(p,5) end)
819
                Output(p,'Rank 6 commands',GetColor(p),function() ShowCommandsForRank(p,6) end)
820
                        Output(p,'Rank 7 commands',     GetColor(p), function() ShowCommandsForRank(p,7) end)
821
        Output(p,'All commands',GetColor(p),function() ShowCommandsForRank(p,5) end)
822
                Output(p,'Commands for your rank ('..GetRank(p)..')','Lime green',function() ShowCommandsForRank(p,GetRank(p)) end)
823
                Output(p,'Dismiss','Really red',function() Savage.Functions.Dismiss(p) end)
824
end
825
 
826
Savage.Functions.ShowMusic = function(Speaker)
827
        Savage.Functions.Dismiss(Speaker)
828
        for _,a in pairs(script:GetChildren()) do
829
                if a:IsA('Sound') then
830
                        Output(Speaker,a['Name'],GetColor(Speaker),function()
831
                                Output(Speaker,'Destroy '..a['Name'],'Really red',function()
832
                                        for i = 1,20 do
833
                                                a.Volume = a.Volume - .05
834
                                                wait()
835
                                        end
836
                                        Savage.Functions.ShowMusic(Speaker)
837
                                        a:Destroy()
838
                                end)
839
                                if a.IsPlaying ==  false then
840
                                Output(Speaker,'Play','Lime green',function()
841
                                        a:play()
842
                                        Savage.Functions.ShowMusic(Speaker)
843
                                end)
844
                                end
845
                                if a.IsPlaying == true then
846
                                        Output(Speaker,'Pause','Really red',function()
847
                                        a:stop()
848
                                        Savage.Functions.ShowMusic(Speaker)
849
                                end)
850
                                end
851
                                Output(Speaker, 'Restart','Really red',function()a:Play()end)
852
                               
853
                                Output(Speaker,a['SoundId'],GetColor(Speaker),nil,'Sound Id')
854
                                --Output(Speaker,a.Parent,GetColor(Speaker),nil,'Parent')
855
                                Output(Speaker,a['Volume'],GetColor(Speaker),nil,'Volume')
856
                                Output(Speaker,a['Pitch'],GetColor(Speaker),nil,'Pitch')
857
                                Output(Speaker,a['Name'],GetColor(Speaker),nil,'Name')
858
                                Output(Speaker,'Change Pitch',GetColor(Speaker),function()
859
                                        Savage.Functions.Dismiss(Speaker)
860
                                for i = .1, 2, .1 do
861
                Output(Speaker, i,GetColor(Speaker), function()
862
            Savage.Functions.ShowMusic(Speaker)
863
a.Pitch = i
864
end)
865
end
866
 
867
                                end)    Output(Speaker,'Change Volume',GetColor(Speaker),function()
868
                                        Savage.Functions.Dismiss(Speaker)
869
                                for i = .1, 2, .1 do
870
                Output(Speaker, i,GetColor(Speaker), function()
871
            Savage.Functions.ShowMusic(Speaker)
872
a.Volume = i
873
end)
874
end
875
 
876
                                end)
877
                                end)
878
                end
879
                end
880
end
881
 
882
Savage.Functions.Bland = function(Speaker)
883
                Savage.Functions.Dismiss(Speaker)
884
        for _,Player in pairs(Savage.Bans) do
885
                        --pcall(function()
886
                Output(Speaker,Player['Name'],GetColor(Speaker),function()
887
                        Savage.Functions.Dismiss(Speaker)
888
                        Output(Speaker,'Reason for ban: '..Player.Reason4Ban,GetColor(Speaker))
889
                        Output(Speaker,'Back','Really red',function()Savage.Functions.Bland(Speaker)end)
890
                        Output(Speaker,'Name: '..Player['Name'],GetColor(Speaker))
891
                        Output(Speaker,'Unban','Lime green',function()
892
                                Savage.Bans[Player['Name']] = nil
893
                                Savage.Bans[Player['Reason4Ban']] = nil
894
                                Savage.Functions.Bland(Speaker) end)
895
                end)
896
                        --end)
897
end
898
end
899
 
900
Savage.Functions.MakeLogs = function(Speaker)
901
    Savage.Functions.Dismiss(Speaker)
902
    Output(Speaker,'Back','Really red',function()Savage.Functions.ShowLogs(Speaker)end)
903
         Output(Speaker,'Refresh','Lime green',function()
904
             --Savage.Functions.Dismiss(Speaker)
905
Savage.Functions.MakeLogs(Speaker)
906
end) -- fixed I think
907
 
908
     table.foreach(Logs,function(i,v)
909
         Output(Speaker, '['..v['Name'].. ']: ' ..v['Message'], GetColor(Speaker), function()end)
910
  -- fixed I think
911
 
912
             end)
913
 
914
        --Output(Speaker, v, GetColor(v), function() Savage.Functions.Dismiss(Speaker)
915
    end
916
 
917
Savage.Functions.ShowLogs = function(Speaker)    
918
    Savage.Functions.Dismiss(Speaker)
919
    Output(Speaker,'View Logs','Lime green',function()Savage.Functions.MakeLogs(Speaker)end)
920
     Output(Speaker,'Clear logs','Really red',function()
921
         --Savage.Functions.Dismiss(Speaker)
922
         Output(Speaker,'Cleared Logs','Lime green',function()end)
923
         Logs = {}
924
     end)
925
end
926
function ShowCommandsForRank(p,rank)
927
        if rank==nil then rank=0 end
928
                Savage.Functions.Dismiss(p)
929
        wait(0.5)
930
        coroutine.resume(coroutine.create(function()
931
                for _,cmd in next,Savage.Commands do
932
                        if cmd.Rank<=rank then
933
                                Output(p,cmd.Name..'['..cmd.Rank..']',GetColor(p),function()
934
                                        Savage.Functions.Dismiss(p)
935
                                        wait(0.5)
936
                                        Output(p,'Name : ' ..cmd.Name,GetColor(p))
937
                                        Output(p,'Description : ' ..cmd.Description,GetColor(p))
938
                                        Output(p,'Usage: '..cmd.Say..key,       GetColor(p))
939
                                    Output(p,'Rank needed: '..cmd.Rank,GetColor(p))
940
                                    Output(p,'Back','Lime green',function() ShowCommandsForRank(p,rank) end)
941
                                        Output(p,'Dismiss','Really red',function() Savage.Functions.Dismiss(p) end)
942
                                end)
943
                        end
944
                end
945
                        Output(p,'Back','Lime green',function()Savage.Functions.Dismiss(p) ShowSortedCommands(p) end)
946
                        Output(p,'Dismiss','Really red',function()      Savage.Functions.Dismiss(p) end)
947
        end))
948
end
949
 
950
Savage.Functions.Networkplrs = function(Speaker)
951
        Savage.Functions.Dismiss(Speaker)
952
     for i,v in ipairs(game:FindService("NetworkServer"):GetChildren()) do
953
                                local Players=v:GetPlayer();
954
                                if(not Players.Parent) then
955
Output(Speaker,Players.Name..' | Nil',GetColor(Speaker),function()
956
        Savage.Functions.Dismiss(Speaker)
957
        if(not Players.Parent) then
958
Output(Speaker,'Parent: Nil',GetColor(Speaker),function()end)
959
        elseif (Players.Parent) then
960
        Output(Speaker,'Parent: Players',GetColor(Speaker),function()end)
961
end
962
Output(Speaker,'Name: '..Players.Name,GetColor(Speaker),function()end)
963
Output(Speaker,'Kick','Really red',function()
964
        Savage.Functions.Kick(Players)
965
end)
966
Output(Speaker,'Back','Lime green',function()
967
        Savage.Functions.Networkplrs(Speaker)
968
end)
969
end)
970
        elseif (Players.Parent) then
971
                Output(Speaker,Players.Name..' | Players',GetColor(Speaker),function()
972
                        Savage.Functions.Dismiss(Speaker)
973
        if(not Players.Parent) then
974
Output(Speaker,'Parent: Nil',GetColor(Speaker),function()end)
975
        elseif (Players.Parent) then
976
        Output(Speaker,'Parent: Players',GetColor(Speaker),function()end)
977
end
978
Output(Speaker,'Name: '..Players.Name,GetColor(Speaker),function()end)
979
Output(Speaker,'Kick','Really red',function()
980
        Savage.Functions.Kick(Players)
981
end)
982
Output(Speaker,'Back','Lime green',function()
983
        Savage.Functions.Networkplrs(Speaker)
984
end)
985
end)
986
                                end
987
                                end
988
        end
989
 
990
function GetChildNum(of)
991
local Object = #of:GetChildren()
992
return Object
993
end
994
 
995
Savage.Functions.PenPistol = function(Plr)
996
    plr = Plr
997
bp = plr.Backpack
998
Rool = Instance.new("Tool",bp)
999
Rool.Name = 'Pen Pistol'
1000
Rool.ToolTip = 'A Class - A PenPistol [SavageScripts]'
1001
bulcount = 0
1002
Part = Instance.new("Part",bp['Pen Pistol'])
1003
--mesh = Instance.new('BlockMesh',Part)
1004
--mesh.Offset = Vector3.new(-1,2,-1)
1005
Part.FormFactor = 'Custom'
1006
Part.Position = Vector3.new(-1,2,-2)
1007
Part.Rotation = Vector3.new(0,0,90)
1008
Part.Size = Vector3.new(.2,.2,1)
1009
Part.Name = "Handle"
1010
local user = plr
1011
TriggerDown = false
1012
local tool = bp['Pen Pistol']
1013
tool.Equipped:connect(function(mouse)
1014
user = tool.Parent
1015
mouse.Button1Down:connect(function()
1016
        local c = Instance.new('Sound',Part)
1017
c.Pitch = 2.3
1018
c.Volume = 3
1019
c.SoundId = 'http://www.roblox.com/asset/?id=25270310'
1020
c:play()
1021
        local ray = Ray.new(tool.Handle.CFrame.p, (mouse.Hit.p - tool.Handle.CFrame.p).unit*300)
1022
       
1023
local hit, position = game.Workspace:FindPartOnRay(ray, user)
1024
local distance = (position - tool.Handle.CFrame.p).magnitude
1025
local rayPart = Instance.new("Part", workspace)
1026
rayPart.BottomSurface = 'Smooth'
1027
 rayPart.Size = Vector3.new(0.2, 0.2, distance)
1028
 rayPart.formFactor = Enum.FormFactor.Custom
1029
 rayPart.CFrame = CFrame.new(position, tool.Handle.CFrame.p) * CFrame.new(0, 0, -distance/2)
1030
rayPart.Name = "raypart"
1031
 rayPart.FormFactor = 'Custom'
1032
 rayPart.BrickColor = BrickColor.Yellow()
1033
 rayPart.TopSurface = 'Smooth'
1034
rayPart.Anchored = true
1035
rayPart.CanCollide = false
1036
local humanoid = hit
1037
 if humanoid then
1038
        if humanoid ~= rayPart then
1039
                if humanoid.Name ~= 'Base' then
1040
        humanoid.BrickColor = BrickColor.Red()
1041
        for i = 1,20 do
1042
                humanoid.Transparency = humanoid.Transparency + .05
1043
                wait()
1044
        end
1045
        humanoid:Destroy()
1046
        end
1047
        end
1048
 end
1049
--[[local part  =Instance.new('Part',user)
1050
part.Anchored = true
1051
part.BrickColor = BrickColor.Black()
1052
part.CFrame = CFrame.new(position, tool.Handle.CFrame.p) * CFrame.new(0, 0, -distance/2)
1053
part.Name = 'hitpart'
1054
part.FormFactor = 'Custom'
1055
part.CanCollide = false
1056
part.Size = Vector3.new(.2,.2,.2)
1057
game.Debris:AddItem(part, 2)--]]
1058
--[[local m = Instance.new('Explosion',workspace)
1059
m.BlastRadius = 1
1060
m.Position = mouse.Hit.p--]]
1061
 rayPart.Anchored = true
1062
bulcount = bulcount + 1
1063
print(bulcount..' Bullets fired')
1064
game.Debris:AddItem(rayPart, .1)
1065
end)
1066
end)
1067
 
1068
game:GetService('RunService').Heartbeat:connect(function()
1069
        if plr.Character.Humanoid.Health <= 1 then
1070
                --Rool:Destroy()
1071
                plr.Character.Humanoid:Destroy()
1072
                e = Instance.new('Humanoid',plr.Character)
1073
                --plr:MakeJoints()
1074
        end
1075
end)
1076
user.ChildAdded:connect(function(p)
1077
        if p.Name == 'raypart' then
1078
game.Debris:AddItem(p,4)
1079
end
1080
end)
1081
end
1082
 
1083
--[[m = Instance.new('Script',CloneFolder)
1084
m.Name = 'Nothing to clone'
1085
Savage.Functions.Expl = function(Speaker, item)
1086
item = {}
1087
Savage.Functions.Dismiss(Speaker)
1088
Output(Speaker,'Dismiss','Really red',function()Savage.Functions.Dismiss(Speaker)end)
1089
Output(Speaker,'ClassName: ',GetColor(Speaker),nil)
1090
Output(Speaker,'Exploreable Children: '..GetChildNum(game),GetColor(Speaker),nil)
1091
Output(Speaker,'Explore Game','Lime green',function()
1092
        Savage.Functions.Dismiss(Speaker)
1093
        Output(Speaker,'Getting Objects','Lime green',nil,'Searching...')
1094
        wait(math.random(GetChildNum(game)/10/math.random(1,3)))
1095
        Savage.Functions.Dismiss(Speaker)
1096
for _,Item in pairs(game:GetChildren()) do
1097
        if Item:IsA('Instance') then end
1098
        if Item then
1099
        Output(Speaker,Item.Name,GetColor(Speaker),nil)
1100
        end
1101
end
1102
end)
1103
end--]]
1104
 
1105
--[[Output = function(Player,Text,Color,Function,Title)
1106
    if Text==nil then Text='NIL' end;
1107
    if Title==nil then Title = 'SAVAGE' end;
1108
    Text='['..Title..']\n'..Text--]]
1109
 
1110
Savage.Functions.MakeBase = function()
1111
       
1112
        local base = Instance.new('Part',workspace)
1113
base.CFrame = CFrame.new(0,-0.6,0)
1114
base.FormFactor = 'Custom'
1115
base.Name = 'Base'
1116
base.BrickColor = BrickColor.new('Bright green')
1117
base.TopSurface = 'Smooth'
1118
base.BottomSurface = 'Smooth'
1119
base.Anchored = true
1120
base.Material = 'Grass'
1121
base.Size = Vector3.new(700,1.2,700)
1122
base.Locked = true
1123
 
1124
end
1125
 
1126
Savage.Functions.Clean = function(Speaker)
1127
    Output(Speaker,'Are you sure, this wll also disable your script',GetColor(Speaker),nil,'Positive?')
1128
    Output(Speaker,'Yes','Lime green',function()
1129
        local e = Instance.new('Message',workspace)
1130
e.Text = 'Cleaning'
1131
e.Name = 'Cleaning Message'
1132
for _,item in pairs(game.Workspace:GetChildren()) do
1133
        if item then
1134
        if item.Name ~= 'Terrain' then
1135
                if item.Name ~= 'Base' then
1136
                        if item.Name ~= 'Cleaning Message' then
1137
        item:Destroy()
1138
        end end
1139
end end end
1140
e.Text = 'Cleaned'
1141
Savage.Functions.MakeBase()
1142
for _,v in pairs(game.Players:GetChildren()) do
1143
        if v:IsA('Player') then
1144
                v:LoadCharacter()
1145
                wait()
1146
        end
1147
end
1148
wait(1.5)
1149
e:Destroy()--]]
1150
end)
1151
Output(Speaker,'No','Really red',function()
1152
    Savage.Functions.Dismiss(Speaker)
1153
    end)
1154
end
1155
 
1156
Savage.Functions.IsInstance = function(Object)
1157
        if pcall(function() local test = Object.ClassName end) then
1158
                return true
1159
        end
1160
        return false
1161
end
1162
 
1163
Savage.Functions.ExplInstance = function(Speaker, Object)
1164
        Savage.Functions.Dismiss(Speaker)
1165
        if not Savage.Functions.IsInstance(Object) then
1166
                Output(Speaker,'That object cannot be explored!','Really red',nil,"Explorer")
1167
                return
1168
        end
1169
        Output(Speaker,Object.Name,'Really red',function()Object:Destroy()end,'Destroy')
1170
        Output(Speaker,"Explore children",GetColor(Speaker),function()
1171
      Savage.Functions.ExplChildren(Speaker, Object)
1172
        end, "Explorer")
1173
end
1174
 
1175
Savage.Functions.ExplChildren = function(Speaker, Object)
1176
        Savage.Functions.Dismiss(Speaker)
1177
        if not Savage.Functions.IsInstance(Object) then
1178
                Output(Speaker,'That object cannot be explored!','Really red',nil,"Explorer")
1179
                return
1180
        end
1181
        Output(Speaker,Object.Name,GetColor(Speaker),nil,'Currently Exploring')
1182
        for _,Item in ipairs(Object:GetChildren()) do
1183
                if Savage.Functions.IsInstance(Item) then
1184
                        Output(Speaker,Item.Name,GetColor(Speaker),function()
1185
                                Savage.Functions.ExplInstance(Speaker,Item)
1186
                        end,"Explorer")
1187
                end
1188
        end
1189
end
1190
 
1191
Savage.Functions.OxChat = function(Speaker, Plr)
1192
        Plr = Plr--//Ur name pls
1193
--13 = Enter key
1194
local Name
1195
local SV
1196
a = Instance.new('ScreenGui',Plr.PlayerGui)
1197
b = Instance.new('TextBox',a)
1198
b.Draggable = false
1199
b.MultiLine = true
1200
b.ClearTextOnFocus = true
1201
b.Size = UDim2.new(0,300,0,140)
1202
b.FontSize = 'Size18'
1203
b.Font = 'Arial'
1204
b.Position = UDim2.new(0,20,0,440)
1205
b.Active = true
1206
b.Text = 'Custom Text'
1207
ba = Instance.new('TextBox',a)
1208
ba.Draggable = false
1209
ba.MultiLine = true
1210
ba.ClearTextOnFocus = true
1211
ba.Size = UDim2.new(0,300,0,20)
1212
ba.FontSize = 'Size18'
1213
ba.Font = 'Arial'
1214
ba.Position = UDim2.new(0,20,0,420)
1215
ba.Active = true
1216
ba.Text = 'Custom Name'
1217
local bb = Instance.new('TextButton',a)
1218
bb.Draggable = false
1219
bb.Size = UDim2.new(0,300,0,20)
1220
bb.FontSize = 'Size18'
1221
bb.Font = 'ArialBold'
1222
bb.Position = UDim2.new(0,20,0,400)
1223
bb.Active = true
1224
bb.Text = 'Enter Text!'
1225
for _,mk in pairs(game.Players:GetPlayers()) do
1226
local SV1 = Instance.new('StringValue')
1227
SV1.Parent = mk
1228
SV1.Name = 'SB_Chat'
1229
SV1.Value = "[Server]/"..Plr.Name.." has recieved an oxchat gui from "..Speaker.Name
1230
game.Debris:AddItem(SV1, 2)
1231
end
1232
bb.MouseButton1Click:connect(function()
1233
for _,v in pairs(game.Players:GetPlayers()) do
1234
SV = Instance.new('StringValue')
1235
SV.Parent = v
1236
SV.Name = 'SB_Chat'
1237
SV.Value = ""..ba.Text.."/"..b.Text..""
1238
game.Debris:AddItem(SV, .1)
1239
end
1240
end)
1241
end
1242
 
1243
 
1244
Savage.Functions.Expl = function(Speaker, item)
1245
        Savage.Functions.ExplChildren(Speaker, game)
1246
end
1247
 
1248
Savage.Functions.PriBase = function()
1249
local base = Instance.new('Part',script)
1250
base.CFrame = CFrame.new(0,7000,0)
1251
base.FormFactor = 'Custom'
1252
base.Name = 'Private Base'
1253
base.BrickColor = BrickColor.new('Bright green')
1254
base.TopSurface = 'Smooth'
1255
base.BottomSurface = 'Smooth'
1256
base.Anchored = true
1257
base.Material = 'Grass'
1258
base.Size = Vector3.new(2048,.2,2048)
1259
base.Locked = true
1260
end
1261
 
1262
Savage.Functions.TpBase = function(plr)
1263
        if script:FindFirstChild('Private Base') then
1264
local   PlayerTorso = plr.Character.Torso
1265
        PlayerTorso.Position = script['Private Base'].Position + Vector3.new(0,5,0)
1266
end
1267
end
1268
 
1269
Savage.Functions.TpHome = function(plr)
1270
        if workspace.Base then
1271
local   PlayerTorso = plr.Character.Torso
1272
        PlayerTorso.Position = workspace.Base.Position + Vector3.new(0,5,0)
1273
end
1274
end
1275
 
1276
AddCmd('Pri Base ','pb',2,'Make a private base.','No arguments',function(Speaker, msg)
1277
            Savage.Functions.PriBase()
1278
              Output(Speaker,'Created a base',GetColor(Speaker),nil,'Success!')
1279
end)
1280
 
1281
AddCmd('Pri Base Teleport','tpb',2,'Teleport a player to you private base.',{'others'},function(Speaker, msg)
1282
             for _,Player in next,(Savage.Functions.GetPlayers(Speaker,msg)) do
1283
          if Player.Character.Torso then
1284
            Savage.Functions.TpBase(Player)
1285
              Output(Speaker,Player.Name..' Is now at your Private Base',GetColor(Speaker),nil,'Success!')
1286
        end
1287
    end
1288
end)
1289
 
1290
--[[AddCmd('Pen Pistol','gun',3,'Give a player a custom made Pen Pistol.',{'others', 'all'},function(Speaker, msg)
1291
             for _,Player in next,(Savage.Functions.GetPlayers(Speaker,msg)) do
1292
          if Player.Backpack and Player.Character then
1293
            Savage.Functions.PenPistol(Player)
1294
              Output(Speaker,Player.Name..' Recieved a Pen Pistol',GetColor(Speaker),nil,'Success!')
1295
        end
1296
    end
1297
end)--]]--Not working cuz its not a local script...
1298
 
1299
AddCmd('Base Teleport','tph',2,'Teleport a player to the main base.',{'others'},function(Speaker, msg)
1300
             for _,Player in next,(Savage.Functions.GetPlayers(Speaker,msg)) do
1301
          if Player.Character.Torso then
1302
            Savage.Functions.TpHome(Player)
1303
              Output(Speaker,Player.Name..' Is now at the home base',GetColor(Speaker),nil,'Success!')
1304
        end
1305
    end
1306
end)
1307
 
1308
AddCmd('View Commands','cmds',0,'View all the commands','No arguments',function(plr, msg)
1309
          ShowSortedCommands(plr)    
1310
end)
1311
 
1312
AddCmd('Explore','explore',3,'Explore the game.','No arguments',function(plr, msg)
1313
          Savage.Functions.Expl(plr, msg)    
1314
end)
1315
 
1316
AddCmd('Workspace','workspace',3,'Explore the workspace.','No arguments',function(plr, msg)
1317
          Savage.Functions.ExplChildren(plr, workspace)    
1318
end)
1319
 
1320
 
1321
AddCmd('Dismiss all','dta',5,'Dismiss everyones tablet.','No arguments',function(plr,msg)
1322
      Savage.Functions.DismissAll(plr)
1323
end)
1324
 
1325
AddCmd('Playing music','mymusic',2,'Shows your music.','mym',function(plr,msg)
1326
      Savage.Functions.ShowMusic(plr)
1327
end)
1328
 
1329
AddCmd('Kill','kill',2,'Kill a player.',{'others'},function(Speaker, msg)
1330
             for _,Player in next,(Savage.Functions.GetPlayers(Speaker,msg)) do
1331
          if Player then
1332
              Player.Character:BreakJoints() -- o shiz  
1333
              Output(Speaker,'Killed '..Player.Name,GetColor(Speaker),nil,'Success!')
1334
        end
1335
    end
1336
end)--foreach--lel
1337
 
1338
AddCmd('Kick','kick',3,'Kick a player.',{'others'},function(Speaker, msg)
1339
      for _,Player in next,(Savage.Functions.GetPlayers(Speaker,msg)) do
1340
          if Player then
1341
             Savage.Functions.Kick(Player)  
1342
             Output(Speaker,'Kicked '..Player.Name,GetColor(Speaker),nil,'Success!')
1343
        end
1344
    end
1345
end)
1346
 
1347
AddCmd('Ban','ban',5,'Ban a player.',{'others'},function(Speaker, msg)
1348
 
1349
      for _,Player in next,(Savage.Functions.GetPlayers(Speaker,msg)) do
1350
          if Player then
1351
        Savage.Functions.Kick(Player)
1352
        Output(Speaker,'Would you like to set a reason for '..Player.Name..'\'s ban?',GetColor(Speaker),nil,'Set Reason4Ban?')
1353
        Output(Speaker,'No','Really red',function()
1354
                reason = 'Not specified'
1355
                 table.insert(Savage.Bans, {['Name'] = Player.Name, ['Reason4Ban'] = reason})  
1356
                Output(Speaker,'Banned '..Player.Name,GetColor(Speaker),nil,'Success!')
1357
        end,
1358
        'Not Really')
1359
             Output(Speaker,'Yes','Lime green',function()
1360
                Output(Speaker,'Trash talking','Really red',function()
1361
                        reason = 'Trash talking'
1362
                        table.insert(Savage.Bans, {['Name'] = Player.Name, ['Reason4Ban'] = reason})  
1363
                Output(Speaker,'Banned '..Player.Name,GetColor(Speaker),nil,'Success!')
1364
                 end)
1365
                Output(Speaker,'Abusing','Really red',function()
1366
                        reason = 'Abusing'
1367
                        table.insert(Savage.Bans, {['Name'] = Player.Name, ['Reason4Ban'] = reason})  
1368
                Output(Speaker,'Banned '..Player.Name,GetColor(Speaker),nil,'Success!')
1369
                 end)
1370
                Output(Speaker,'Fming','Really red',function()
1371
                        reason = 'Fming'
1372
                        table.insert(Savage.Bans, {['Name'] = Player.Name, ['Reason4Ban'] = reason})  
1373
                Output(Speaker,'Banned '..Player.Name,GetColor(Speaker),nil,'Success!')
1374
                 end)
1375
                Output(Speaker,'Skid','Really red',function()
1376
                        reason = 'Skid'
1377
                        table.insert(Savage.Bans, {['Name'] = Player.Name, ['Reason4Ban'] = reason})  
1378
                Output(Speaker,'Banned '..Player.Name,GetColor(Speaker),nil,'Success!')
1379
                 end)
1380
        end,
1381
        'Why not :3')
1382
        end
1383
    end
1384
end)
1385
 
1386
AddCmd('Reset','reset',3,'Load a player.',{'others'},function(Speaker, msg)
1387
 for _,Player in next,(Savage.Functions.GetPlayers(Speaker, msg)) do
1388
          if Player then
1389
             Player:LoadCharacter();
1390
             Output(Speaker,'Reset '..Player.Name,GetColor(Speaker),nil,'Success!')
1391
     
1392
end
1393
    end
1394
end)
1395
 
1396
AddCmd('Set Rank','srank',1337,'Set a players rank.','No Arguments',function(Speaker, msg)
1397
 for _,Player in next,(Savage.Functions.GetPlayers(Speaker, msg)) do
1398
          if Player then
1399
            Savage.Functions.SetRank(Speaker, Player)
1400
     
1401
end
1402
    end
1403
end)
1404
 
1405
AddCmd('BSOD','bsod',6,'Bsod a player.','Not args',function(plr, msg)
1406
for _,Plr in next,(Savage.Functions.GetPlayers(plr, msg)) do
1407
if Plr then
1408
    for i = 0,28000 do
1409
        Instance.new("Message",Plr:FindFirstChild('PlayerGui')).Text='Your banned btw...'
1410
end
1411
    end
1412
    Plr.CameraMode = 'LockFirstPerson'
1413
end
1414
end)
1415
 
1416
AddCmd('Dismiss','dt',-1,'Dismiss a tablet.','No arguments',function(plr, msg)
1417
     Savage.Functions.Dismiss(plr)
1418
end)
1419
 
1420
AddCmd('Ping','ping',0,'Output a message.','No arguments',function(plr, msg)
1421
      Output(plr, msg,GetColor(plr),nil,'Ping!')
1422
end)
1423
 
1424
AddCmd('Afk','afk',-1,'Away from keyboard.','No arguments',function(Speaker, msg)
1425
        local afktime = -1
1426
        local afk = true
1427
        Speaker.Chatted:connect(function()
1428
                afk = false
1429
        end)
1430
        posz = Speaker.Character.Torso.CFrame.Z
1431
        posx = Speaker.Character.Torso.CFrame.X
1432
game["Run Service"].Heartbeat:connect(function()
1433
       
1434
        if Speaker.Character.Torso.CFrame.Z ~= posz then
1435
                if Speaker.Character.Torso.CFrame.X ~= posx then
1436
                afk = false
1437
        end
1438
        end
1439
end)
1440
     repeat afktime = afktime + 2
1441
        Savage.Functions.Dismiss(Speaker)
1442
        Output(Speaker,afktime..' Seconds',GetColor(plr),nil,'Afk for...')
1443
        wait(2)
1444
        Savage.Functions.Dismiss(Speaker)
1445
until afk == false
1446
afktime = -1
1447
Output(Speaker,Speaker.Name,'Lime green',nil,'Welcome back!')
1448
end)
1449
 
1450
AddCmd('Show banland','bland',2,'Shows a banlist of players','no args',function(Speaker, msg)
1451
        Savage.Functions.Bland(Speaker)
1452
end)
1453
 
1454
AddCmd('Set Key','keyset',5,'Set the key to your liking','no args',function(Speaker, msg)
1455
        if #msg>5 then
1456
            Output(Speaker,'Key is too long! [5 Characters or less]','Really red',nil,'Notice!')
1457
           else
1458
        key = msg
1459
wait()
1460
        Output(Speaker,'The main key has been set to '..key,'Lime green',nil,'Notice!')
1461
            end
1462
end)
1463
 
1464
AddCmd('Clean','clean',3,'Clean the workspace.','no args',function(Speaker, msg)
1465
        Savage.Functions.Clean(Speaker)
1466
end)
1467
 
1468
AddCmd('Base','base',2,'Make a base.','no args',function(Speaker, msg)
1469
        Savage.Functions.MakeBase()
1470
end)
1471
 
1472
AddCmd('Get Rank','grank',2,'Show the rank of a player.','no args',function(Speaker, msg)
1473
        for _,Plr in next,(Savage.Functions.GetPlayers(Speaker, msg)) do
1474
                Output(Speaker,GetRank(Plr),GetColor(Plr),nil,'Rank')
1475
                Output(Speaker,GetDesc(Plr),GetColor(Plr),nil,'Description')
1476
                Output(Speaker,GetColor(Plr),GetColor(Plr),nil,'Color')
1477
        end
1478
end)
1479
 
1480
AddCmd('Stop Music','nm',4,'Stop all music','No Arguments',function(Speaker, Msg)
1481
StopMusic(workspace)
1482
StopMusic(workspace.Base)
1483
StopMusic(script)
1484
for _,v in pairs(workspace:GetChildren()) do
1485
        if v:IsA('Script') then
1486
                for _,b in pairs(v:GetChildren()) do
1487
                        if b:IsA('Sound') then
1488
                                b:Destroy()
1489
                        end
1490
                end
1491
        end
1492
end
1493
end)
1494
 
1495
AddCmd('Color','colors',1,'Set your color','No arguments',function(plr, msg)
1496
        Savage.Functions.Dismiss(plr)
1497
      Output(plr,'Red','Really red',function()
1498
        for _,Plr in next,(Savage.Ranked) do
1499
        if Plr['Name'] == plr.Name then
1500
        Plr.Color = 'Really red'
1501
end
1502
        end    
1503
end)
1504
Output(plr,'Orange','Deep orange')
1505
Output(plr,'Blue','Really blue')
1506
Output(plr,'Lime Green','Lime green')
1507
Output(plr,'Purple','Royal purple')
1508
Output(plr,'Black','Black')
1509
Output(plr,'White','White')
1510
Output(plr,'Teal','Toothpaste')
1511
Output(plr,'Pink','Hot pink')
1512
Output(plr,'Your color \n'..GetColor(plr),GetColor(plr))
1513
end)
1514
 
1515
AddCmd("Execute","exe",2,"Exectue a message","No arguments",function(Speaker, Msg)
1516
      Savage.Functions.Execute(Speaker, Msg) -- FIXED
1517
end)
1518
 
1519
AddCmd('Sound search','sm',3,'Sound search music','No arguments',function(Speaker, Msg)
1520
      Savage.Functions.SoundSearch(Speaker, Msg)
1521
end)
1522
 
1523
AddCmd('Logs','logs',4,'Show player chat logs.','No args',function(Speaker, Msg)
1524
     Savage.Functions.ShowLogs(Speaker)
1525
end)
1526
 
1527
AddCmd('Network','net',2,'Show NetworkServer.','No args',function(Speaker, Msg)
1528
        Savage.Functions.Networkplrs(Speaker)
1529
end)
1530
 
1531
AddCmd('Ask for a rank up','rankpls',0,'Ask '..MainPlayer.Name..' for a Rank up','No args',function(Speaker, Msg)
1532
        Output(MainPlayer,Speaker.Name..' Asks for a rank up',GetColor(MainPlayer))
1533
        print(Speaker.Name..' Asks for a rank up')
1534
end)
1535
 
1536
AddCmd('New Server','newserver',6,'Create a new server','No args',function(Speaker, Msg)
1537
Output(Speaker,'Creating a new server','Lime green',nil,'Please wait...')
1538
local Result = game:GetService('HttpService'):GetAsync('http://roproxy.tk/Game/PlaceLauncher.ashx?request=RequestGame&placeId='..tonumber(game.PlaceId),true)
1539
repeat wait(.3)
1540
until Result
1541
Output(Speaker,'Server created', 'Lime green',nil,'Success!')
1542
end)
1543
 
1544
AddCmd('Disable','disable',1337,'Disable the script','No args',function(Speaker, Msg)
1545
        Output(Speaker,'Are you sure you want to disable the script?',GetColor(Speaker),nil,'Positive?')
1546
        Output(Speaker,'Yes','Really red',function()
1547
            Savage.Functions.Dismiss(Speaker)
1548
                            Output(Speaker,'Disabling script...','Really red',nil,'Please wait...')
1549
            for _,v in pairs(game.Players:GetPlayers()) do
1550
                if v:IsA('Player') then
1551
                    --Savage.Functions.Kick(v)
1552
                    Savage.Functions.Dismiss(v)
1553
               
1554
        end
1555
        wait(2)
1556
            script.Disabled = true
1557
        end
1558
end,'Go ahead, no ones stopping you.')
1559
    Output(Speaker,'No','Lime green',Savage.Functions.Dismiss(),'Suggested choice')
1560
end)
1561
 
1562
AddCmd('Message','msg',1,'Sends a Message Like Gui to all players.',{'all','others','noobs'},function(Speaker,Msg)
1563
        for _,Player in pairs(game:service("Players"):GetPlayers()) do
1564
      Savage.Functions.GuiNotify(Player,"["..Speaker.Name.."]: "..Msg);
1565
end--]]
1566
end)
1567
 
1568
AddCmd('God','god',2,'Make a player practically invincible.',{'all','others','noobs'},function(Speaker,Msg)
1569
        for _,Player in pairs(game:service("Players"):GetPlayers()) do
1570
      Player.Character.Humanoid.Health = math.huge * math.pi
1571
Output(Speaker,'Made '..Player.Name..' nearly invincible','Lime green',nil,'Success!')
1572
 
1573
end--]]
1574
end)
1575
 
1576
AddCmd('FF','ff',1,'Give a player a forcefield.',{'all','others','noobs'},function(Speaker,Msg)
1577
        for _,Player in next,(Savage.Functions.GetPlayers(Speaker, Msg)) do
1578
      m = Instance.new('ForceField',Player.Character)
1579
Output(Speaker,'Gave '..Player.Name..' a ForceField','Lime green',nil,'Success!')
1580
end--]]
1581
end)
1582
 
1583
AddCmd('Ungod','nogod',1,'Make a player mortal once again.',{'all','others','noobs'},function(Speaker,Msg)
1584
        for _,Player in next,(Savage.Functions.GetPlayers(Speaker, Msg)) do
1585
      Player.Character.Humanoid.Health = 100
1586
Output(Speaker,'Made '..Player.Name..' mortal once again.','Really red',nil,'Success!')
1587
end--]]
1588
end)
1589
 
1590
AddCmd('Unff','noff',1,'Remove a players forcefield.',{'all','others','noobs'},function(Speaker,Msg)
1591
        for _,Player in next,(Savage.Functions.GetPlayers(Speaker, Msg)) do
1592
      if Player.Character:FindFirstChild('ForceField') then
1593
repeat
1594
        Player.Character:FindFirstChild('ForceField'):Destroy()
1595
until not Player.Character:FindFirstChild('ForceField')
1596
        Output(Speaker,'Removed '..Player.Name..'\'s ForceField','Really red',nil,'Success!')
1597
end
1598
end--]]
1599
end)
1600
 
1601
AddCmd('TabSize','newtabs',5,'Resize the admins cubes','No args',function(Speaker,Msg)
1602
        Savage.Functions.DismissAll()
1603
        for _,Player in pairs(game.Players:GetPlayers()) do
1604
        Output(Player,'Tabs are undergoing resizing, please wait before opening your tabs.','Really red',nil,'Notice!')
1605
        end
1606
        wait(math.random(2,5))
1607
        Savage.Functions.DismissAll()
1608
        wait(.1)
1609
        Savage['TabletSize'] = Msg
1610
        Output(Speaker,'New tab size - '..Savage['TabletSize'],'Lime green',nil,'Success!')
1611
 
1612
end)
1613
 
1614
AddCmd('DecalTrans','newdecalt',5,'Change the admins decal transparency','No args',function(Speaker,Msg)
1615
        Savage.Functions.DismissAll()
1616
        for _,Player in pairs(game.Players:GetPlayers()) do
1617
        Output(Player,'The Cube Decal transparency has been changed please, if you were using the admin, Continue.','Really red',nil,'Notice!')
1618
        end
1619
        wait(math.random(2,5))
1620
        Savage.Functions.DismissAll()
1621
        Savage['DecalTrans'] = Msg
1622
 
1623
end)
1624
 
1625
AddCmd('Ox Chat','goxchat',1337,'Give someone a gui to access oxchat','No args',function(Speaker, Msg)
1626
        for _,Player in next,(Savage.Functions.GetPlayers(Speaker, Msg)) do
1627
                Savage.Functions.OxChat(Speaker, Player)
1628
                Output(Speaker,'Gave an OxChat gui to '..Player.Name,'Lime green',nil,'Success!')
1629
        end
1630
end)
1631
 
1632
AddCmd('Decal','newdecal',5,'Change the admins decal','No args',function(Speaker,Msg)
1633
        Savage.Functions.DismissAll()
1634
        for _,Player in pairs(game.Players:GetPlayers()) do
1635
        Output(Player,'The Cube Decal has been changed please, if you were using the admin, Continue.','Really red',nil,'Notice!')
1636
        end
1637
        wait(math.random(2,5))
1638
        Savage.Functions.DismissAll()
1639
        Savage['Id'] = Msg
1640
 
1641
end)
1642
 
1643
AddCmd('Default Decal','defdecal',5,'Change the admins decal to default','No args',function(Speaker,Msg)
1644
        Savage.Functions.DismissAll()
1645
        for _,Player in pairs(game.Players:GetPlayers()) do
1646
        Output(Player,'The Cube Decal has been changed please, if you were using the admin, Continue.','Really red',nil,'Notice!')
1647
        end
1648
        wait(math.random(2,5))
1649
        Savage.Functions.DismissAll()
1650
        Savage['Id'] = 'http://www.roblox.com/asset/?id=159102550'
1651
 
1652
end)
1653
   
1654
AddCmd('Ping To','pingt',2,'Ping a message to a player',{'all','others','noobs'},function(Speaker,Msg)
1655
        Output(Speaker,Msg,GetColor(Speaker),nil,'To whom would you like to ping this message to?')
1656
        for _,v in pairs(game.Players:GetPlayers()) do
1657
                Output(Speaker,v.Name,'Lime green',function()
1658
                        Output(v,Msg,GetColor(Speaker),nil,'Message from: '..Speaker.Name)
1659
                end,'Pick me!')
1660
        end
1661
end)
1662
 
1663
AddCmd('Shut down','sd',4,'Shut down the game via FireClient','No args',function(Speaker, Msg)
1664
        Output(Speaker,'Are you sure?',GetColor(Speaker))
1665
        Output(Speaker,'Yes','Really red',function()
1666
Savage.Functions.Dismiss(Speaker)              
1667
                for _,Plr in pairs(game.Players:GetPlayers()) do
1668
                        if Plr.Name ~= Speaker.Name then
1669
                        Savage.Functions.Kick(Plr)
1670
                        end
1671
                end
1672
                Output(Speaker,'Kicking yourself','Really red')
1673
                wait(1)
1674
                for _,Plr in pairs(game.Players:GetPlayers()) do
1675
                        Savage.Functions.Kick(Plr)
1676
                end
1677
        end)
1678
        Output(Speaker,'No','Lime green',function()
1679
                Savage.Functions.Dismiss(Speaker)
1680
        end)   
1681
end)
1682
 
1683
game:GetService("Players").PlayerAdded:connect(function(Player)
1684
     Output(Player,"GravityCubed Made by GravityLegendary, and SavageMunkey",GetColor(Player),nil,'Welcome '..Player.Name..'!');
1685
     Output(Player,"You are Rank : " ..GetRank(Player),GetColor(Player),nil,'Welcome '..Player.Name..'!');
1686
     Output(Player,"Your Color is : " ..GetColor(Player),GetColor(Player),nil,'Welcome '..Player.Name..'!');
1687
     Output(Player,"GravityCloud Enabled:S","White");
1688
     Player.Chatted:connect(function(Message)
1689
        Savage.Functions.Chatted(Player, Message)
1690
    end)
1691
    Player.Chatted:connect(function(msg)
1692
table.insert(Logs, {['Name'] = Player.Name, ['Message'] = msg})
1693
    end)
1694
end)
1695
 
1696
--[[game:GetService('Players').ChildAdded:connect(function(Plr)
1697
for Plar,Rank in pairs(Savage.Ranked) do
1698
    Output(Player,Plr.Name..' Connected',GetColor(Player))
1699
    end
1700
        if GetRank(Plr) < 0 then
1701
        Savage.Functions.Kick(Plr)
1702
    end
1703
end)
1704
 
1705
game:GetService('Players').ChildRemoved:connect(function(Plr)
1706
for Plar,Rank in pairs(Savage.Ranked) do
1707
    Output(Player,Plr.Name..' Disconnected',GetColor(Player))
1708
    end
1709
end)--]]
1710
 
1711
game:GetService("RunService").Heartbeat:connect(Savage.Functions.RotateTablets)
1712
 
1713
game["Run Service"].Heartbeat:connect(function()
1714
for _,Playername in pairs(Savage.Bans) do
1715
        wait()
1716
        if game.Players:FindFirstChild(Playername['Name']) then
1717
        Savage.Functions.Kick(game.Players[Playername['Name']])
1718
        end
1719
    end
1720
end)
1721
 
1722
--[[game['Run Service'].Stepped:connect(function()
1723
        pcall(function()
1724
                for _,v in next, Savage.Tablets do
1725
                        local Thread=coroutine.create(function()
1726
                                repeat
1727
                                        game:GetService("RunService").Heartbeat:wait()
1728
                                        v.Tab.Size=Vector3.new(v.Tab.Size.X-0.01,v.Tab.Size.Y-0.01,v.Tab.Size.Z-0.01);
1729
                                until v.Tab.Size.Y < 1.7
1730
                                wait(2)
1731
                                repeat
1732
                                        game:GetService("RunService").Heartbeat:wait()
1733
                                        v.Tab.Size=Vector3.new(v.Tab.Size.X+0.01,v.Tab.Size.Y+0.01,v.Tab.Size.Z+0.01);
1734
                                until v.Tab.Size.Y > Savage['TabletSize'];
1735
                        end)
1736
                        coroutine.resume(Thread)
1737
                end;
1738
end)
1739
end)--]]
1740
 
1741
for _,Player in pairs(game:service("Players"):GetPlayers()) do
1742
      Savage.Functions.GuiNotify(Player,"Welcome to GravityCubed: By, GravityLegendary, SavageMunkey. The Key is [ "..key.." ].");
1743
end--]]