Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ==UserScript==
- // @run-at document-end
- // @name EM Role Tagger
- // @namespace http://tampermonkey.net/
- // @version 1.0
- // @description Tag a role by using $Role!
- // @author Shwartz99
- // @contributor nearbeer
- // @match https://epicmafia.com/game*
- // @grant none
- // ==/UserScript==
- var roles = {};
- var intervalID; //the ID of the 2 second interval
- (function() {
- 'use strict';
- $.get("https://epicmafia.com/role/suggested?display=grid&page=1&sortby=votes&type=all", function(data) {
- console.log(role_data);
- roles = data.data;
- roleDescriptor();
- intervalID = window.setInterval(roleDescriptor,2000); //iterate every 2 seconds
- });
- })();
- function roleDescriptor() {
- try {
- document.querySelectorAll(".msg:not(.quote), .log").forEach(function(p) {
- if(!p.emrd) {
- var message = p.innerHTML;
- var tokens = message.split(/[ /[.,\/#!%\^&\*;:{}=\-_`~()\]?]/).filter(c => c.length > 0);
- var delims = message.split(/[^ /[.,\/#!%\^&\*;:{}=\-_`~()\]?]/).filter(c => c.length > 0);
- if(/[ /[.,\/#!%\^&\*;:{}=\-_`~()\]?]/.test(message[0])) tokens = [""].concat(tokens);
- delims[delims.length] = "";
- //console.log(message);
- //console.log(tokens);
- //console.log(delims);
- var rebuiltStr = "";
- var i = 0;
- tokens.forEach(function(token) {
- if(token.startsWith("$")) {
- var ltoken = token.slice(1).toLowerCase();
- //console.log(ltoken);
- var tag = null;
- roles.forEach(function(role) {
- if(role.roleid === ltoken) {
- tag = role.id;
- }
- });
- }
- if(tag) {
- rebuiltStr += "<span class=\"rolecont toggleroles tt roleimg role-"+ltoken+"\" data-rid="+tag+" data-type=\"roleinfo\" style=\"display:inline-block\"><a href=\"https://epicmafia.com/role/"+tag+"\" target=\"_blank\"></a></span>"+delims[i];
- } else {
- rebuiltStr += token+delims[i];
- }
- i++;
- });
- p.innerHTML = rebuiltStr;
- p.emrd = true;
- }
- });
- }
- catch(e) {
- alert(e);
- clearInterval(intervalID);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement