MuteCommands

Adds commands to mute and unmute people. /mute <username> /unmute <username> /ignore <username> /unignore <username> /mute all will mute all of chat until you type /unmute all

Terá de instalar uma extensão como Tampermonkey, Greasemonkey ou Violentmonkey para instalar este script.

You will need to install an extension such as Tampermonkey or Violentmonkey to install this script.

Terá de instalar uma extensão como Tampermonkey ou Violentmonkey para instalar este script.

Terá de instalar uma extensão como Tampermonkey ou Userscripts para instalar este script.

Terá de instalar uma extensão como Tampermonkey para instalar este script.

Terá de instalar uma extensão de gestão de scripts de utilizador para instalar este script.

(Já tenho um gestor de scripts de utilizador, deixe-me instalá-lo!)

Terá de instalar uma extensão como Stylus para instalar este estilo.

Terá de instalar uma extensão como Stylus para instalar este estilo.

Terá de instalar uma extensão como Stylus para instalar este estilo.

Terá de instalar uma extensão de gestão de estilos de utilizador para instalar este estilo.

Terá de instalar uma extensão de gestão de estilos de utilizador para instalar este estilo.

Terá de instalar uma extensão de gestão de estilos de utilizador para instalar este estilo.

(Já tenho um gestor de estilos de utilizador, deixe-me instalá-lo!)

// ==UserScript==
// @name            MuteCommands
// @namespace       skyboy@kongregate
// @author          skyboy
// @version         1.6.0
// @description     Adds commands to mute and unmute people. /mute <username> /unmute <username> /ignore <username> /unignore <username> /mute all will mute all of chat until you type /unmute all
// @include         http://www.kongregate.com/games/*/*
// @homepage        http://userscripts.org/scripts/show/73346
// ==/UserScript==
if (/^\/?games\/[^\/]+\/[^\/?]+(\?.*)?$/.test(window.location.pathname))
setTimeout(function() {
	window.location.assign("javascript:$$('head')[0].insert(\"<style>.mute_chat_icon{background-position:0px -69px;width:13px;height:11px;overflow:hidden;}.unmute_chat_icon{background-position:0px -84px!important;}#kong_game_ui .mute_room_container{float:left;padding:4px 10px 3px}</style>\");$$('#chat_window').each(function(e){e.down('.chat_actions_container').insert({before:new Element('div', {'class':'mute_room_container'}).update('<span class=\"spritegame spriteall mute_chat_icon\" title=\"Mute Chat\">Mute Chat</span><span class=\"spritegame spriteall mute_chat_icon unmute_chat_icon\" style=\"display: none;\" title=\"Unmute Chat\">Unmute Chat</span>')})});void(0)");
	window.location.assign("javascript:(function(){ChatRoom.prototype.isAdmin=function(b){var a=this.user(b);return a?a.variables.admin:!1;};})();(function(){ChatRoom.prototype.refreshUsers=function(e){var d=0,b,a=e.length;for(;d<a;d++){b=this.user(e[d]);if(!!b){this.userChanged({data:{user:b,force:true}});}}};})();(function(){ChatRoom.prototype.user=function(u){if(typeof u=='string'){var a=this._users,i;if(!!a[u])return a[u];u=u.toLowerCase();for(i in a){if(i.toLowerCase()==u){return a[i];}}}return!1;};})();void(0)");
	window.location.assign("javascript:(function(){window.deencode=function(a){return eval('(function(){'+Base64.decode(a)+'})');};})();(function(){window.skyWriteMutedArray=function(a){return(\"window.deencode('\"+(Base64.encode(('/*window.open(\"\", \"Mwnd\").close();*/var Mwnd = window.open(\"\", \"Mwnd\", \"status=0,toolbar=0,location=0,menubar=0,directories=0,resizable=1,scrollbars=0,height=\"+holodeck.height()+\",width=320\");var wnd=Mwnd.document;var MwndHTML1 = \"\\\\x3chtml>\\\\x3chead>\\\\x3ctitle>Kongregate Chat :: Muted Messages\\\\x3c/title>\" + $$(\"head\")[0].innerHTML.match(/script>s*(\\\\x3clink[^>]+)/i)[0] + \\'\\\\x3c/head>\\\\x3cbody style=\"overflow:hidden;\">\\\\x3cdiv id=\"kong_game_ui\" align=\"center\" style=\"position:fixed;top:0;left:0;background-color:#000;height:100%;width:100%;min-width:300px;min-height:300px;\">\\\\x3cdiv class=\"chat_room_template\" style=\"height:99%;width:98%;\">\\\\x3cdiv class=\"chat_message_window\" style=\"height:100%;overflow:auto\" id=\"wnd\">\\';var MwndHTML2 = \\'\\\\x3c/div>\\\\x3c/div>\\\\x3c/div>\\\\x3cscript type=\"text/javascript\">window.onresize = function (){document.getElementById(\"wnd\").style.height=(document.body.clientHeight-6)+\"px\";}\\\\x3c/script>\\\\x3c/body>\\\\x3c/html>\\';wnd.write(MwndHTML1 + \"'+(a.join('\\\\n').replace(/\"/g,'\\\\\"').replace(/\\x3c/g,\"\\\\x3c\"))+'\" + MwndHTML2);wnd.close();wnd.title=\"Kongregate Chat :: Muted Messages\";Mwnd.focus();')))+\"')\");};})();void(0)");
	window.location.assign("javascript:void(document.observe('holodeck:ready',function(){var o={r:/^\\/(?:un)?(?:mute|ignore)\\s*([a-z0-9_]{4,16}|all)/i,e:function(b){b.activeDialogue().kongBotMessage('Enter a username between four and sixteen characters long or \\\"all\\\".');},u:function(n,b){var g;b.chatWindow()._rooms.values().each(function(f){if(!g){g=f.user(n);if(g){g=g.username;throw $break;}}});if(!g){g=new Ajax.Request('/api/user_info.json?username='+n,{asynchronous:false,method:'get'}).transport.responseText;if(g){g=g.match(/\"username\":\"([a-zA-Z0-9_]+)\"/);if(g){g=g[1];}}if(!g){this.m(b,n+' does not exist or is permanently banned.');}}return g;},m:function(b,n){b.activeDialogue().displayUnsanitizedMessage('Kong Bot',n,{'class':'whisper received_whisper'},{'non_user':true});},url:function(b){return'/accounts/'+b.username()+'/muted_users';}},mute=(function(b,d){d=(d.match(this.r)||[0,0])[1];if(d!=0){if(d.toLowerCase()=='all'){if(!b.activeDialogue().hasOwnProperty('insert')){this.m(b,'Muted Room.');d=b.activeDialogue();d.mmsgs=[];b=new Element('div');d.insert=function(m){b.update('').insert(m);d.mmsgs.push(b.innerHTML);}}return!1;}d=this.u(d,b);if(d){b.addMuting(d);new Ajax.Request(this.url(b)+'?username='+d+'&from_chat=true',{asynchronous:true,evalScripts:true,method:'post'});this.m(b,'Muted '+d);}}else{this.e(b);}return!1;}).bind(o),umute=(function(b,d){d=(d.match(this.r)||[0,0])[1];if(d!=0){if(d.toLowerCase()=='all'){d=b.activeDialogue();if(d.hasOwnProperty('insert')){delete d.insert;this.m(b,'Unmuted Room. \\x3ca href=\\'javascript:void(0)\\' onclick=\\\"eval((this.onclick=\\'return false\\',this.href=\\'javascript:(\\' + '+window.skyWriteMutedArray(d.mmsgs)+'+\\')()\\'))\\\">Click here\\x3c/a> to view sent messages.');}return!1;}d=this.u(d,b);if(d){b.removeMuting(d);new Ajax.Request(this.url(b)+'/'+d+'?from_chat=true',{asynchronous:true,evalScripts:true,method:'delete'});this.m(b,'Unmuted '+d);}}else{this.e(b);}return!1;}).bind(o);var p=ChatDialogue.prototype,i=p.initialize;p.initialize=function(){var t=this;i.apply(t,arguments);var m='/mute all',mr=$('chat_window').down('.mute_room_container').childElements(),ur=mr[1];(mr=mr[0]).observe('click',function(){mute(t._holodeck,m);mr.hide();ur.show();});ur.observe('click',function(){umute(t._holodeck,m);ur.hide();mr.show();});};holodeck.addChatCommand('mute',mute);holodeck.addChatCommand('ignore',mute);holodeck.addChatCommand('unmute',umute);holodeck.addChatCommand('unignore',umute);}))");
}, 1250);