Advertisement
Guest User

Untitled

a guest
Dec 19th, 2014
157
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /*
  2. //  PD3 Faucet Timer
  3. //  Created by Serlite
  4. //
  5. //  (Hide using Ctrl + Alt + Z)
  6. */
  7.  
  8. var sinceLastClaim = 0;
  9. var $fTimer = null;
  10. var $fTimerWrapper = null;
  11. var fIntervalRef = null;
  12. var fTimerHider = {17: false, 18: false, 90:false};
  13.  
  14. initializeTimer();
  15.  
  16. // Creates GUI and begins timer countdown
  17. function initializeTimer(){
  18.  
  19.     if (!window.jQuery.ui){
  20.         $("body").append("<script src='//ajax.googleapis.com/ajax/libs/jqueryui/1.11.1/jquery-ui.js'></script>");
  21.     }
  22.  
  23.     // Delay to allow jQuery UI to load
  24.     setTimeout(function(){
  25.         $("body").append("<div class='faucet-timer' style='background:#FFF; border:2px solid #b4b9cd; position:fixed; z-index:9999; top:100px; left:200px; color:#6d738c; padding:15px; font-size:1em'><p style='margin-bottom:10px;'>Since last claim:</p><p><span class='time-counter' style='font-weight:bold;'>00:00</span></p></div>");
  26.  
  27.         // Caching reference
  28.         $fTimer = $(".faucet-timer .time-counter");
  29.         $fTimerWrapper = $(".faucet-timer");
  30.         $fTimerWrapper.draggable();
  31.  
  32.         fIntervalRef = setInterval(updateFaucetTime, 1000);
  33.  
  34.         // Reset timer if claim button is pressed
  35.         $(document).on("click", "button.btn.btn--primary.btn--huge.btn--block", function(){
  36.             if ($(this).text() == "Claim"){
  37.                 sinceLastClaim = 0;
  38.                 writeFaucetTime(formattedFaucetTime());
  39.                 setTimerCol();
  40.  
  41.                 // Reset interval ensure precision
  42.                 clearInterval(fIntervalRef);
  43.                 fIntervalRef = setInterval(updateFaucetTime, 1000);
  44.             }
  45.         });
  46.  
  47.         // Register key down in combo
  48.         $(document).keydown(function(e){
  49.             if (e.keyCode in fTimerHider){
  50.                 fTimerHider[e.keyCode] = true;
  51.  
  52.                 // Ctrl + Alt + Z, toggle visible
  53.                 if (fTimerHider[17] && fTimerHider[18] && fTimerHider[90]){
  54.                     $fTimerWrapper.toggle();
  55.                 }
  56.             }
  57.         });
  58.  
  59.         // Register key up in combo
  60.         $(document).keyup(function(e){
  61.             if (e.keyCode in fTimerHider){
  62.                 fTimerHider[e.keyCode] = false;
  63.             }
  64.         });
  65.  
  66.     }, 800);
  67. }
  68.  
  69. // Increment timer value
  70. function updateFaucetTime(){
  71.     sinceLastClaim++;
  72.     writeFaucetTime(formattedFaucetTime());
  73.     setTimerCol();
  74. }
  75.  
  76. // Format time into more readable string
  77. function formattedFaucetTime(){
  78.     var minutes = Math.floor(sinceLastClaim/60).toString();
  79.     var seconds = (sinceLastClaim%60).toString();
  80.  
  81.     // Adding leading zeroes
  82.     if (minutes.length == 1){
  83.         minutes = "0" + minutes;
  84.     }
  85.     if (seconds.length == 1){
  86.         seconds = "0" + seconds;
  87.     }
  88.  
  89.     return (minutes + ":" + seconds);
  90. }
  91.  
  92. // Change timer text
  93. function writeFaucetTime(faucetTime){
  94.     $fTimer.text(faucetTime);
  95. }
  96.  
  97. // Change colour according to time
  98. function setTimerCol(){
  99.     if (sinceLastClaim >= 180){
  100.         $fTimer.css("color","#5fb365");
  101.     }
  102.     else{
  103.         $fTimer.css("color","#6d738c");
  104.     }
  105. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement