Guest User

Untitled

a guest
Jul 5th, 2017
30
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.53 KB | None | 0 0
  1. const SteamUser = require('steam-user');
  2. const TradeOfferManager = require('steam-tradeoffer-manager');
  3. const SteamTotp = require('steam-totp');
  4. const SteamCommunity = require('steamcommunity');
  5. const config = require('./config.json');
  6. const winston = require('winston');
  7.  
  8. const community = new SteamCommunity();
  9. const client = new SteamUser();
  10. const manager = new TradeOfferManager({
  11. steam: client,
  12. domain: 'example.com',
  13. language: 'en'
  14. });
  15.  
  16. var TradesCompleted = 0;
  17.  
  18.  
  19.  
  20. winston.add(winston.transports.File, {
  21. filename: 'events.log'
  22. });
  23. winston.remove(winston.transports.Console);
  24.  
  25.  
  26.  
  27. const logOnOptions = {
  28. accountName: config.username,
  29. password: config.password,
  30. twoFactorCode: SteamTotp.generateAuthCode(config.sharedSecret)
  31. };
  32. //log on
  33. client.logOn(logOnOptions);
  34.  
  35. client.on('loggedOn', function(details) {
  36. console.log(`Logged into Steam as ${client.steamID.getSteam3RenderedID()}`); //online then play tf2
  37. client.setPersona(SteamUser.Steam.EPersonaState.Online);
  38. client.gamesPlayed([440])
  39. });
  40.  
  41. client.on('webSession', function(sessionID, cookies) {
  42. manager.setCookies(cookies, function(err) {
  43. if (err) return console.log(err);
  44. console.log(`Got API key: ${manager.apiKey}`);
  45. });
  46.  
  47. community.setCookies(cookies);
  48. community.startConfirmationChecker(10000, config.identitySecret);
  49. });
  50.  
  51.  
  52.  
  53.  
  54. function Get_Craft_Hats(offer, price) {
  55.  
  56. var Vaule = 0;
  57.  
  58. offer.forEach(function(item) {
  59. if (item.tags) {
  60. item.tags.forEach(function(tag) {
  61. if (tag.name && tag.name == "Trading Card") {
  62. Vaule += Math.round(price * 9);
  63. }
  64. });
  65. }
  66. });
  67. return Vaule;
  68. }
  69.  
  70.  
  71.  
  72. function Get_Metal(offer) {
  73.  
  74. var Vaule = 0;
  75.  
  76. for (i = 0; i < offer.length; i++) {
  77. if (offer[i].market_hash_name.includes('Refined Metal')) {
  78. Vaule+=9;
  79. } else {
  80. if (offer[i].market_hash_name.includes('Reclaimed Metal')) {
  81. Vaule+=3;
  82. } else {
  83. if (offer[i].market_hash_name.includes('Scrap Metal')) {
  84. Vaule++;
  85. }
  86. }
  87. }
  88. }
  89. return Vaule;
  90. }
  91.  
  92.  
  93.  
  94.  
  95. function acceptOffer(offer) {
  96. offer.accept((err) => {
  97. if (err) console.log(`Unable to accept offer: ${err.message}`);
  98. community.checkConfirmations();
  99. });
  100. }
  101.  
  102.  
  103.  
  104.  
  105. function declineOffer(offer) {
  106. offer.decline((err) => {
  107. if (err) return console.log(`Unable to decline offer: ${err.message}`);
  108. });
  109. }
  110.  
  111. function LogTradesCompleted(){
  112. winston.info("trades completed " + TradesCompleted + " we should make 60 a day to make profit.");
  113. }
  114.  
  115. setInterval(LogTradesCompleted, 1440 * 1000);
  116.  
  117.  
  118. manager.on('newOffer', function(offer) {
  119.  
  120. var partnerID = offer.partner.getSteamID64();
  121.  
  122.  
  123. var OurCraftHatsVaule = Get_Craft_Hats(offer.itemsToGive, config.CardSellPrice);
  124. var OurMetal = Get_Metal(offer.itemsToGive);
  125. var VauleToGive = OurCraftHatsVaule + OurMetal;
  126.  
  127. var ThereCraftHatsVaule = Get_Craft_Hats(offer.itemsToReceive,config.CardBuyPrice);
  128. var ThereMetal = Get_Metal(offer.itemsToReceive);
  129. var VauleToReceive = ThereCraftHatsVaule + ThereMetal;
  130.  
  131.  
  132. if(VauleToReceive >= VauleToGive) {
  133. acceptOffer(offer);
  134. winston.info("accepted offer from " + partnerID);
  135. TradesCompleted++;
  136. console.log(TradesCompleted);
  137. }else{
  138. declineOffer(offer);
  139. winston.info("declined offer we would have lost scrap (╯︵╰,)");
  140. }
  141. });
Add Comment
Please, Sign In to add comment