Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var steam = require("steam"),
- util = require("util"),
- fs = require("fs"),
- crypto = require("crypto"),
- dota2 = require("../"),
- steamClient = new steam.SteamClient(),
- steamUser = new steam.SteamUser(steamClient),
- steamFriends = new steam.SteamFriends(steamClient),
- Dota2 = new dota2.Dota2Client(steamClient, true);
- // Load config
- global.config = require("./config");
- /* Steam logic */
- var onSteamLogOn = function onSteamLogOn(logonResp) {
- if (logonResp.eresult == steam.EResult.OK) {
- steamFriends.setPersonaState(steam.EPersonaState.Busy); // to display your steamClient's status as "Online"
- steamFriends.setPersonaName(global.config.steam_name); // to change its nickname
- util.log('Logged on with id = '+Dota2.ToAccountID(Dota2._client.steamID));
- Dota2.launch();
- Dota2.on("ready", function() {
- console.log("Node-dota2 ready.");
- /* Note: Should not declare new event listeners nested inside of
- 'ready', else you could end up with duplicated handlers if 'ready'
- is fired multiple times. Exception is made within this test file
- for the same of keeping relevant samples together. */
- Dota2.on("playerCardsData", function(result, response) {
- console.log(response);
- });
- setTimeout(function() {
- Dota2.requestFantasyRoster(4664,1470150000, function(err, response){
- console.log(response.player_card_item_id[0]+"");
- Dota2.requestFantasyCards(Dota2.ToAccountID(Dota2._client.steamID), response.player_card_item_id);
- });
- }, 5000);
- });
- Dota2.on("unready", function onUnready() {
- console.log("Node-dota2 unready.");
- });
- Dota2.on("unhandled", function(kMsg) {
- util.log("UNHANDLED MESSAGE " + dota2._getMessageName(kMsg));
- });
- // setTimeout(function(){ Dota2.exit(); }, 5000);
- }
- },
- onSteamServers = function onSteamServers(servers) {
- util.log("Received servers.");
- fs.writeFile('servers', JSON.stringify(servers));
- },
- onSteamLogOff = function onSteamLogOff(eresult) {
- util.log("Logged off from Steam.");
- },
- onSteamError = function onSteamError(error) {
- util.log("Connection closed by server.");
- };
- steamUser.on('updateMachineAuth', function(sentry, callback) {
- var hashedSentry = crypto.createHash('sha1').update(sentry.bytes).digest();
- fs.writeFileSync('sentry', hashedSentry)
- util.log("sentryfile saved");
- callback({
- sha_file: hashedSentry
- });
- });
- // Login, only passing authCode if it exists
- var logOnDetails = {
- "account_name": global.config.steam_user,
- "password": global.config.steam_pass,
- };
- if (global.config.steam_guard_code) logOnDetails.auth_code = global.config.steam_guard_code;
- try {
- var sentry = fs.readFileSync('sentry');
- if (sentry.length) logOnDetails.sha_sentryfile = sentry;
- } catch (beef) {
- util.log("Cannae load the sentry. " + beef);
- }
- steamClient.connect();
- steamClient.on('connected', function() {
- steamUser.logOn(logOnDetails);
- });
- steamClient.on('logOnResponse', onSteamLogOn);
- steamClient.on('loggedOff', onSteamLogOff);
- steamClient.on('error', onSteamError);
- steamClient.on('servers', onSteamServers);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement