Melvor Notification Ding

Plays a ding sound when a notification is displayed for farming or slayer.

이 스크립트를 설치하려면 Tampermonkey, Greasemonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램을 설치해야 합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Userscripts와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 유저 스크립트 관리자 확장 프로그램이 필요합니다.

(이미 유저 스크립트 관리자가 설치되어 있습니다. 설치를 진행합니다!)

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

(이미 유저 스타일 관리자가 설치되어 있습니다. 설치를 진행합니다!)

// ==UserScript==
// @name         Melvor Notification Ding
// @namespace    http://tampermonkey.net/
// @version      0.2
// @description  Plays a ding sound when a notification is displayed for farming or slayer.
// @author       Krosis
// @match        https://*.melvoridle.com/*
// @grant        none
// ==/UserScript==
// jshint esversion: 6

(function() {
    'use strict';
    // Save off the default notify function.
    var origNotify = window.notifyPlayer;
    var ding = new Audio("https://www.myinstants.com/media/sounds/ding-sound-effect.mp3");
    ding.volume = 0.5;
    var lastDing = -1;
    function newNotify(skill, ...args) {
        // Pass through arguments to the original notify function.
        origNotify(skill, ...args);
        if ((skill == CONSTANTS.skill.Farming) || (skill == CONSTANTS.skill.Slayer)) {
            // Only ding at most every 20 seconds. This reduces spam when farming tasks complete.
            var now = Date.now();
            if (now - lastDing >= 20000) {
                ding.play();
                lastDing = now;
            }
        }
    }
    // Use this custom function in game.
    window.notifyPlayer = newNotify;
})();