Advertisement
Guest User

Untitled

a guest
Sep 28th, 2017
621
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.04 KB | None | 0 0
  1. SteamUser = require 'steam-user'
  2. SteamTotp = require 'steam-totp'
  3. inquirer = require 'inquirer'
  4. jsonfile = require 'jsonfile'
  5. jsonfile.spaces = 2
  6.  
  7. try
  8. database = jsonfile.readFileSync 'database.json'
  9. catch e
  10. database = {}
  11. secret = null
  12.  
  13. promptGames =
  14. type: 'checkbox'
  15. name: 'games'
  16. message: 'Wybierz gierki do boosta:'
  17. choices: [
  18. {value: 393420, name: 'hurtworlde', checked: true}
  19. {value: 730, name: 'CS:GO', checked: true}
  20. {value: 570, name: 'DOTA2'}
  21. {value: 394690, name: 'towereunite', checked: true}
  22. {value: 440, name: 'tf2', checked: true}
  23. {value: 242760, name: 'theforest'}
  24. {value: 252950, name: 'liga rokiet', checked: true}
  25. {value: 444090, name: 'paladins', checked: true}
  26. {value: 433850, name: 'hizi'}
  27. ]
  28.  
  29. inquirer.prompt [
  30. {name: 'username', message: 'Login:'}
  31. {name: 'password', message: 'Haselko:', type: 'password'}
  32. ]
  33. .then ({username, password}) ->
  34. database[username] = {}
  35. client = new SteamUser
  36. client.setOption 'promptSteamGuardCode', false
  37. client.setOption 'dataDirectory', null
  38. client.logOn
  39. accountName: username,
  40. password: password,
  41.  
  42. client.on 'steamGuard', (domain, callback) ->
  43. if domain
  44. inquirer.prompt [name: 'code', message: "Steam guard code (#{domain}):"]
  45. .then ({code}) -> callback code
  46. else
  47. inquirer.prompt [name: 'secret', message: 'Two-factor shared secret:']
  48. .then ({secret}) ->
  49. SteamTotp.generateAuthCode secret, (err, code) ->
  50. database[username].secret = secret
  51. callback code
  52.  
  53. client.on 'sentry', (sentry) ->
  54. database[username].sentry = sentry.toString('base64')
  55. jsonfile.writeFileSync 'database.json', database
  56.  
  57. client.on 'loggedOn', (details) ->
  58. database[username].password = password
  59. inquirer.prompt promptGames
  60. .then ({games}) ->
  61. database[username].games = games
  62. jsonfile.writeFileSync 'database.json', database
  63. process.exit 0
  64.  
  65. client.on 'error', (err) ->
  66. console.log "Error: #{err}"
  67. process.exit 1
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement