Guest User

Untitled

a guest
Nov 19th, 2018
128
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.66 KB | None | 0 0
  1. function fewestMovesWin(userID, moves, gameRedisNum, leaderboardTimestamp, callback)
  2. {
  3. Step(
  4. function checkFewestMovesWin()
  5. {
  6. var multi = redis.multi();
  7. multi.zscore("leaderboard_fewest_moves_win", userID + "_" + gameRedisNum, this.parallel());
  8. multi.zscore("game_leaderboard_fewest_moves_win_" + gameRedisNum, userID, this.parallel());
  9. multi.exec();
  10. },
  11. function saveFewestMovesWin(err, existingFewestMovesWin, existingGameFewestMovesWin)
  12. {
  13. if(err)
  14. throw err;
  15.  
  16. existingFewestMovesWin = (+existingFewestMovesWin || 0); // Converts to number or defaults to zero
  17. existingGameFewestMovesWin = (+existingGameFewestMovesWin || 0);
  18.  
  19. var multi = redis.multi();
  20.  
  21. // Combines the number of moves made with when when it took place into a single number (npm info number_smusher)
  22. var smushed = number_smusher.smush(moves, leaderboardTimestamp);
  23.  
  24. if(!existingFewestMovesWin || smushed<existingFewestMovesWin)
  25. {
  26. multi.zadd("leaderboard_fewest_moves_win", smushed, userID + "_" + gameRedisNum, this.parallel());
  27. multi.zremrangebyrank("leaderboard_fewest_moves_win", 500, -1, this.parallel());
  28. }
  29.  
  30. if(!existingGameFewestMovesWin || smushed<existingGameFewestMovesWin)
  31. {
  32. multi.zadd("game_leaderboard_fewest_moves_win_" + gameRedisNum, smushed, userID, this.parallel());
  33. multi.zremrangebyrank("game_leaderboard_fewest_moves_win_" + gameRedisNum, 500, -1, this.parallel());
  34. }
  35.  
  36. multi.exec(this.parallel());
  37.  
  38. },
  39. function finish(err)
  40. {
  41. callback(err);
  42. }
  43. );
  44. }
Add Comment
Please, Sign In to add comment