LNK_clanEvent

проверка клановых игроков в парном ивенте

  1. // ==UserScript==
  2. // @name LNK_clanEvent
  3. // @namespace http://tampermonkey.net/
  4. // @version 0.1
  5. // @description проверка клановых игроков в парном ивенте
  6. // @author LNK
  7. // @include *heroeswm.ru/tj_event2.php*
  8. // @grant none
  9. // ==/UserScript==
  10.  
  11. (function() {
  12. 'use strict';
  13.  
  14. function notifyMes(title,mes) {
  15. if (!("Notification" in window)) {alert("Ваш браузер не поддерживает сообщения на рабочий стол!"); return false;}
  16. if (title == undefined) {title = "Some message from HWM!";}
  17. if (Notification.permission === "granted") {var notification = new Notification(title, {body : mes});}
  18. else {
  19. Notification.requestPermission(function (permission) {
  20. if (permission === "granted") {var notification = new Notification(title, {body : mes});}
  21. });
  22. }
  23. } // notifyMes
  24.  
  25. function beep(duration, frequency, delay, gain) {
  26. var context = new (window.AudioContext || window.webkitAudioContext)();
  27. var gainNode = context.createGain();
  28. if (gain == undefined) {gain = 0.05;}
  29. gainNode.connect(context.destination);
  30. gainNode.gain.value = gain;
  31. var osc = context.createOscillator();
  32. osc.connect(gainNode);
  33. osc.type = 'square';
  34. if (frequency == undefined) {frequency = 350;}
  35. osc.frequency.value = frequency;
  36. if (delay == undefined) {delay = 50;}
  37. if (duration == undefined) {duration = 200;}
  38. setTimeout(function() { osc.start(); setTimeout(function () { osc.stop(); }, duration); }, delay);
  39. return osc;
  40. } // beep
  41.  
  42. var page = document.body.innerHTML;
  43.  
  44. function checkMail() {
  45. page = document.body.innerHTML;
  46. var n = page.indexOf('Вступить к клану');
  47. if (n < 0) return false;
  48. beep(500);
  49. setTimeout(() => notifyMes('Event clan vacancy'), 1000);
  50. } //checkMail
  51. // setInterval(function() { page = document.body.innerHTML; alert(page.indexOf('Входящие'));}, 3000);
  52. setInterval(checkMail, 30000);
  53. })();