Advertisement
Guest User

Untitled

a guest
Jan 8th, 2016
212
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. var steam = require("steam"),
  2.     dota2 = require("../"),
  3.     steamClient = new steam.SteamClient(),
  4.     steamUser = new steam.SteamUser(steamClient),
  5.     Dota2 = new dota2.Dota2Client(steamClient, true, true);
  6.  
  7. // App states, will be used to delay certain tests until conditions are met.
  8. var connectedToSteam = false,
  9.     loggedInToSteam = false,
  10.     loggedInToSteamFailed = false,
  11.     connectedToDota2 = false;
  12.  
  13. // Delays for certain states
  14. var beConnectedToSteam = function(done) {
  15.     if (connectedToSteam) {
  16.         return done();
  17.     }
  18.  
  19.     setTimeout(function() {
  20.         beConnectedToSteam(done);
  21.     }, 1000);
  22. }
  23.  
  24. var beLoggedInToSteam = function(done) {
  25.     if (loggedInToSteam) {
  26.         return done();
  27.     }
  28.  
  29.     setTimeout(function() {
  30.         beLoggedInToSteam(done);
  31.     }, 1000);
  32. };
  33.  
  34. var beConnectedToDota2 = function(done) {
  35.     if (connectedToDota2) {
  36.         return done();
  37.     }
  38.  
  39.     setTimeout(function() {
  40.         beConnectedToDota2(done);
  41.     }, 1000);
  42. }
  43.  
  44. // Test functions
  45. var connectToSteam = function(done) {
  46.     steamClient.connect();
  47.     steamClient.on('connected', function() {
  48.         connectedToSteam = true;
  49.         done();
  50.     });
  51. };
  52.  
  53. var loginToSteam = function(done) {
  54.     if(connectedToSteam){
  55.         console.log("Connected to steam!");
  56.         steamUser.logOn({
  57.         "account_name": process.env.STEAM_USERNAME,
  58.         "password": process.env.STEAM_PASSWORD,
  59.         });
  60.  
  61.         steamClient.on('logOnResponse', function onSteamLogOn(logonResp) {
  62.         if (logonResp.eresult == steam.EResult.OK) {
  63.             loggedInToSteam = true;
  64.             done();
  65.         } else {
  66.             console.log(logonResp);
  67.         }
  68.         });
  69.     }else{
  70.             console.log("Not connected to steam yet!");
  71.         setTimeout(function(){
  72.             loginToSteam(done);
  73.         },1000);
  74.     }
  75. };
  76.  
  77. var connectToDota2 = function(done) {
  78.     if(loggedInToSteam){
  79.         console.log("Logged in to steam!");
  80.         Dota2.launch();
  81.         Dota2.on("ready", function() {
  82.             connectedToDota2 = true;
  83.             done();
  84.         });
  85.     }else{
  86.         setTimeout(function(){
  87.             connectToDota2(done);
  88.             console.log("Not logged to steam yet!");
  89.         },1000);
  90.     }
  91. };
  92.  
  93.  
  94. connectToSteam;
  95. console.log("Connecting to steam!");
  96. loginToSteam;
  97. console.log("Logging to steam");
  98. connectToDota2;
  99. console.log("Connecting to dota!");
  100. var getMatchDetails = function(done){
  101.     if(connectedToDota2){
  102.         console.log("Connected to dota!");
  103.         Dota2.requestMatchDetails(process.env.MATCH_ID, function(err, details){
  104.             console.log(details.match.cluster);
  105.             done(err);
  106.  
  107.  
  108.         });
  109.     }else{
  110.         setTimeout(function(){getMatchDetails(done)},1000);
  111.     }
  112. }
  113. getMatchDetails;
  114. console.log("Got match details!");
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement