Advertisement
Guest User

Untitled

a guest
Jan 30th, 2017
461
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.35 KB | None | 0 0
  1. /*
  2. * © by Denis 'QWER' Granec (Patchwerk)
  3. */
  4.  
  5. var config = require('./steambot.config.js');
  6. var helper = require('./helper.js');
  7.  
  8. var mysql = require('mysql');
  9. var fs = require('fs');
  10. var request = require('request');
  11. var crypto = require('crypto');
  12. var xss = require('xss');
  13. //var Q = require('q');
  14.  
  15. var io = require('socket.io').listen(config.port);
  16.  
  17. var SteamUser = require('steam-user');
  18. var SteamCommunity = require("steamcommunity");
  19. var SteamTotp = require('steam-totp');
  20. var offers = require('steam-tradeoffer-manager');
  21.  
  22. var client = new SteamUser(); // steam-user
  23.  
  24. var steam = new SteamCommunity({
  25. // request: proxifiedRequest
  26. });
  27.  
  28. var manager = new offers({
  29. // "community": steam,
  30. "domain": config.sitename,
  31. "language": "en", // We want English item descriptions
  32. "pollInterval": 1000 // We want to poll every 2 seconds since we don't have Steam notifying us of offers
  33. });
  34.  
  35.  
  36. // Variables
  37. var g_userCount = 0; // online info
  38.  
  39. var g_userItemsCount = []; // user items limit
  40. var g_currentGameItems = [];
  41. var g_players = [];
  42. var g_playersUnique = {};
  43. var g_uniquePlayers = [];
  44.  
  45. var g_cache_userItemsCount = [];
  46. var g_cache_currentGameItems = [];
  47. var g_cache_players = [];
  48. var g_cache_playersUnique = {};
  49. var g_cache_uniquePlayers = [];
  50. var g_cache_totalPrice = 0;
  51.  
  52. var g_itemPrice = [];
  53.  
  54. var g_lastWinner = [];
  55. var g_timerID = -1;
  56.  
  57. var winPer = Math.random().toFixed(2);
  58. var g_roundSecret = crypto.createHash('md5').update(makeid()).digest('hex');
  59. var g_roundHash = crypto.createHash('md5').update(g_roundSecret + "-" + winPer).digest('hex');
  60.  
  61. var g_winnerID = 0;
  62.  
  63. var g_gameID = 999;
  64. var g_totalPrice = 0;
  65.  
  66. var g_stucked = 0;
  67.  
  68. var g_Pause = false;
  69.  
  70. // MySQL
  71. var connection = mysql.createConnection({
  72. host: config.dbInfo["host"],
  73. user: config.dbInfo["user"],
  74. password: config.dbInfo["password"],
  75. database: config.dbInfo["database"]
  76. });
  77.  
  78. connection.connect(function(err) {
  79. if (err) {
  80. helper.msg('MySQL error connecting: ' + err.stack);
  81. return;
  82. }
  83.  
  84. helper.msg('MySQL connected as id ' + connection.threadId);
  85. // helper.msg('MySQL connected currentGame ' + currentGame);
  86. });
  87.  
  88. // Load files
  89. loadItemPrices();
  90.  
  91. // Show last winner
  92. var lastgame = fs.readFileSync('_LastWinner.txt');
  93. g_lastWinner = JSON.parse(lastgame);
  94. console.log(g_lastWinner);
  95. g_gameID = g_lastWinner["game"] + 1;
  96.  
  97. // Login Bots
  98. var logOnOptions = {
  99. "accountName": config.logOnOptions["accountName"],
  100. "password": config.logOnOptions["password"],
  101. "twoFactorCode": SteamTotp.generateAuthCode(config.logOnOptions['secret'])
  102. };
  103.  
  104. client.logOn(logOnOptions);
  105.  
  106. client.on('loggedOn', function() {
  107. console.log("Logged into Steam");
  108. client.setPersona(SteamUser.Steam.EPersonaState.Online);
  109. });
  110.  
  111.  
  112.  
  113. manager.on('pollData', function(pollData) {
  114. fs.writeFile('polldata.json', JSON.stringify(pollData));
  115. });
  116.  
  117.  
  118.  
  119. manager.on('receivedOfferChanged', function(offer, oldState) {
  120. console.log(`Offer #${offer.id} changed: ${offers.ETradeOfferState[oldState]} -> ${offers.ETradeOfferState[offer.state]}`);
  121.  
  122. console.log(offer.data('name'));
  123. console.log(offer.data('tradelink'));
  124. console.log(offer.data('avatar'));
  125. console.log(offer.data('steamid'));
  126. if( typeof offer.data('steamid') == 'undefined'){
  127. return;
  128. }
  129.  
  130. switch (offer.state) {
  131. case 2: // Active
  132. // offer.accept();
  133. break;
  134. case 3: // Accepted
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement