bot.addListener("notice", function(nick, to, text, message) { if (/credits/.test(text)) { plus_lb.score(nick, function(err, score) { bot.notice(nick, score.toString()); }); } });
bot.addListener("join", function(channel, who) { users.push(who); plus_lb.score(who, function(err, score) { if (score === -1) { plus_lb.add(who, 15); } }); });
bot.addListener("nick", function(oldnick, newnick, channels, message) { plus_lb.score(newnick, function(err, score) { if (score === -1) { plus_lb.add(newnick, 15); } }); users.push(newnick); var index = users.indexOf(oldnick); if (index > -1) { users.splice(index, 1); } });
plus_lb.score(nick, function(err, score) { if (score - numCredits >= 0) { plus_lb.score(plusReceiver, function(err, p_score) { if (p_score < 0) { plus_lb.add(plusReceiver, 15 + numCredits); } else { plus_lb.incr(plusReceiver, numCredits); } }); plus_lb.incr(nick, -numCredits); bot.say(to, "Credits transferred from " + nick + " to " + plusReceiver + ": " + numCredits); } else { bot.say(to, "Sorry " + nick + ", but you don't have enough credits."); } });
bot.addListener("message", function(nick, to, text, message) { var words = text.replace(/[^\w\d-+=]/, "").split(" "); var credits = words[0].split("+="); var numCredits = parseInt(credits[1]); var plusReceiver; if (!isNaN(numCredits) && numCredits > 0) { console.log("credits[0]: " + credits[0]); for (var i = users.length - 1; i >= 0; --i) { console.log("users[i]: " + users[i]); if (credits[0] === users[i] && credits[0] !== nick) { plusReceiver = users[i]; console.log("plusReceiver: " + plusReceiver); break; } } } if (typeof plusReceiver !== 'undefined') { plus_lb.score(nick, function(err, score) { if (score - numCredits >= 0) { plus_lb.score(plusReceiver, function(err, p_score) { if (p_score < 0) { plus_lb.add(plusReceiver, 15 + numCredits); } else { plus_lb.incr(plusReceiver, numCredits); } }); plus_lb.incr(nick, -numCredits); bot.say(to, "Credits transferred from " + nick + " to " + plusReceiver + ": " + numCredits); } else { bot.say(to, "Sorry " + nick + ", but you don't have enough credits."); } }); } if (words[0] === config.botName && typeof words[1] !== 'undefined') { if (words[1].indexOf("help") >= 0) { bot.say(to, "\"<nick>+=X\" will transfer X credits to <nick>. \"/msg credits-bot credits\" will show you how many credits you have."); } } });