Bots Home
|
Create an App
King n Leaders
Author:
cachotest
Description
Source Code
Launch Bot
Current Users
Created by:
Cachotest
// Hearts for copy - paste in title bracers: ❤ 💙 💚 💛 ❤️ 💜 /******************************************\ King n Leaders bot ver 2.3 Author: cacho_gordo Date: 11/04/2017 (26/06/2017 ver 2.3) Based: (idea) Ultra Bot \******************************************/ "use strict";const version=["King n Leaders (c)2017 (11/04/17)","Version: v2.3 (26/06/2017)","Author: cacho_gordo (cachotest)"];cb.settings_choices=[{name:"kingMin",label:"Minimum tokens for a user to become King:",type:"int",minValue:20,maxValue:3000,defaultValue:25},{name:"kingTimer",label:"King announcement for interval (minutes):",type:"int",minValue:1,maxValue:60,defaultValue:5},{name:"tipTitles",label:"Do you want to display user's amount tipped in messages?",type:"choice",choice1:"Yes",choice2:"No",defaultValue:"Yes"},{name:"leaderBoard",label:"Would you like to use the Leader feature?",type:"choice",choice1:"Yes",choice2:"No",defaultValue:"Yes"},{name:"leaderBoardSpam",label:"Periodically announce Leaderboard top three tippers?",type:"choice",choice1:"Yes",choice2:"No",defaultValue:"Yes"},{name:"leaderTimer",label:"Leaderboard announcement for interval (minutes):",type:"int",minValue:1,maxValue:60,defaultValue:7},{name:"express_1",label:"Express message 1 (mnemo: message)",type:"str",minLength:10,maxLength:1000,required:false,defaultValue:"forwt: :tipnotegif Dont forget to write in the tip note for what did you tipped. :thxc"},{name:"express_2",label:"(You can edit/clear these examples) Express message 2",type:"str",minLength:10,maxLength:1000,required:false,defaultValue:"tipif: :tip :tipifyoulikeherbody5 :tipif11"},{name:"express_3",label:"Express message 3",type:"str",minLength:10,maxLength:1000,required:false,defaultValue:"jfc: :fanclubhelp Join my Fanclub now! · ♥ · Green username in my chat. · ♦ · Free snapchat · ♣ · Special Attention. · ♠ · Watch my photos and videos in my Bio free. :biogodown :buymyphotos"},{name:"express_4",label:"Express message 4",type:"str",minLength:10,maxLength:1000,required:false,defaultValue:"thx: :thxc Thank you for your nice company. :hearts :thanksfortipping"},{name:"express_5",label:"Express message 5",type:"str",minLength:10,maxLength:1000,required:false,defaultValue:"rules: RULES: • No spam. ♥ Do not insist that the camera host do what you want. ♠ No other rooms or websites that conflict with this room may be advertised. ♦ Avoid any argumentative and / or rude messages related to camera viewing. ♫ Do not try to publish your email address in public chat. :rules-cacho"},{name:"express_6",label:"Express message 6",type:"str",minLength:10,maxLength:1000,required:false,defaultValue:"bye: Bye guys, thank you. I had a good time and I love them :chao"},{name:"express_7",label:"Express message 7",type:"str",minLength:1,maxLength:1000,required:false},{name:"express_8",label:"Express message 8",type:"str",minLength:1,maxLength:1000,required:false},{name:"express_9",label:"Express message 9",type:"str",minLength:1,maxLength:1000,required:false},{name:"censorshipFor",label:"Wordlist and heuristics feature...... Censorship applies to",type:"choice",choice1:"Greys",choice2:"Everyone",choice3:"None",defaultValue:"Greys"},{name:"customWordlist",label:"Custom censored wordlist (separated by commas)",type:"str",minLength:10,maxLength:1000,defaultValue:"[Exact words or phrases]",required:false},{name:"bracer100",label:"Trailer version Plus ........... Title bracers: 50 - 99",type:"str",minLength:1,maxLength:8,required:false},{name:"bracer200",label:"Title bracers: < 200",type:"str",minLength:1,maxLength:8,required:false},{name:"bracer500",label:"Title bracers: < 500",type:"str",minLength:1,maxLength:8,required:false},{name:"bracer1000",label:"Title bracers: < 1000",type:"str",minLength:1,maxLength:8,required:false},{name:"bracer2000",label:"Title bracers: < 2000",type:"str",minLength:1,maxLength:8,required:false},{name:"bracer1M",label:"Title bracers: < infinite",type:"str",minLength:1,maxLength:8,required:false}];var initialize=false,censorFor=2;var leaderboardSpam=false,tipTitles=false,leaderBoard=false,kingTimer=0,leaderTimer=0;var tipperArray=[],leaderArray=[],currentKing="",kingGender="",kingTip=0;const MAX_TOP=50,NUM_MEX=9,MIN_SIGN=25,MIN_TITLE=10;var bullets=" \u2022 \u2022 \u2022 ",nbsp="\xa0";const crown=":smallCrownT-cacho",titcrown=":crownblue97x80",chicrown=":ktb_crown";var PIKE="\u2660",CLOVER="\u2663",HEART="\u2665",DIAMOND="\u2666",BSTAR="\u2605";var HEART_BLACK="\u2665",HEART_BLUE="\u1F499",HEART_GREEN="\u1F49A",HEART_YELLOW="\u1F49B",HEART_RED="\u2764",HEART_PURPLE="\u1F49C";const BAR_TOT="\u2502";const OPEN_TOT=BAR_TOT,CLOSE_TOT=BAR_TOT;var emoTitles;const purple="#B369B3",navy="#000080",red="#F00000",green="#00F000",blue="#00000F",white="#FFFFFF",backg="#89CFEF",colhast="#00FFFF",coltrec="#0000FF",colalot="#DDBBCC",coltons="#993377",colfan="#008000",colmods="#DC5500",colslug="#F04500",colnotice="#B22222",micolor="#2991f8";function findTipper(b){var c,a;for(c=0,a=tipperArray.length;c<a;c++){if(tipperArray[c][0]==b){return c}}tipperArray.push([b,0]);return c}function findTokens(b){for(var c=0,a=tipperArray.length;c<a;c++){if(tipperArray[c][0]==b){return tipperArray[c][1]}}return 0}function calcTotal(){var c=0;for(var b=0,a=tipperArray.length;b<a;b++){c+=tipperArray[b][1]}return c}function tips(b){var a=findTokens(b);var c=calcTotal();return b+": "+a+" / "+c+" ("+tipperArray.length+" tippers)"}function spaces(c){var b=nbsp;if(a>1){for(var a=1;a<c;a++){b+=nbsp}}return b}cb.onMessage(function(c){var g=c.user;var e=c.m.trim().split(/\s+/g);if(e[0].charAt(0)=="/"){c["X-Spam"]=true;if(g==cb.room_slug||c.is_mod){switch(e[0]){case"/help":if(e.length<2){cb.sendNotice(helpNotice(),g,"",micolor)}else{cb.sendNotice(helpNotice(e[1]),g,"",micolor)}break;case"/ttitles":if(e.length<2||g!==cb.room_slug){break}if(e[1]==="on"){tipTitles=true}else{if(e[1]==="off"){tipTitles=false}else{break}}cb.sendNotice("TipTitles: "+(tipTitles?"on":"off"),g,"",micolor);break;case"/tleaderf":if(e.length<2||g!==cb.room_slug){break}if(e[1]==="on"){leaderBoard=true}else{if(e[1]==="off"){leaderBoard=false}else{break}}cb.sendNotice("Leader feature: "+(leaderBoard?"on":"off"),g,"",micolor);break;case"/tlbspam":if(e.length<2||g!==cb.room_slug){break}if(e[1]==="on"){if(!leaderboardSpam){leaderboardSpam=true;leaderTimer=cb.settings.leaderTimer;leaderSpam()}}else{if(e[1]==="off"){leaderboardSpam=false}else{break}}cb.sendNotice("Leaderboard Spam: "+(leaderboardSpam?"on":"off"),g,"",micolor);break;case"/tocensor":if(e.length<2||g!==cb.room_slug){break}if(e[1]==="G"){censorFor=2}else{if(e[1]==="E"){censorFor=1}else{if(e[1]==="N"){censorFor=0}else{break}}}cb.sendNotice("Censorship to: "+(censorFor==0?"None":censorFor==1?"Everyone":"Greys"),g,"",micolor);break;case"/top":var b=3;if(!(typeof(e[1])==="undefined")){b=parseInt(e[1])}noticeLeaderBoard(g,b);break;case"/total":if(e.length<2){break}var k=tips(e[1]);cb.sendNotice(k,g,"",micolor,"bold");break;case"/ver":if(g==cb.room_slug||g=="cacho_gordo"){cb.sendNotice(version.join("\n"),g,"",micolor)}break;case"/poll":if(e.length<2){pollkey="";pollspy=false}else{pollspy=true;pollkey=e[1].replace("*","");c.m+=" Ok"}break;case"/notice":if(e.length<2){break}e.splice(0,1);var h=e.join(" ").replace(/<cr>/g,"\n");cb.sendNotice(h,"","",colnotice,"bold");c.m="notice =>";break;case"/say":if(e.length<2||e[1]==""){break}var p=express(e[1]).trim();if(p==""){return c}c.m=p;c["X-Spam"]=false;return c;break;case"/init":if(g===cb.room_slug){init()}break;case"/msg":var m="",h="";if(e.length<2){break}if(e[1].charAt(0)=="@"){m=e[1].substr(1);if(m=="slug"){m=cb.room_slug}e.splice(0,2);h=e.join(" ")}else{e.splice(0,1);h=e.join(" ")}send(m,g,h);break;default:}}if(e[0]=="/whok"){var l=(c.user==cb.room_slug||c.is_mod)?"":c.user;if(currentKing==""){cb.sendNotice("We are still without putting the crown!",l,backg,navy,"bold")}else{var k=findTokens(currentKing);cb.sendNotice("Our "+kingGender+" is "+crown+" "+currentKing+" "+OPEN_TOT+k+CLOSE_TOT+" ",l,backg,navy,"bold");cb.sendNotice("A Tip of at least "+(kingTip+1)+" to become the new King/Queen !","",backg,navy,"bold")}}return c}if(censorFor&&c.user!=cb.room_slug&&!c.is_mod){var a=!(c.has_tokens||c.tipped_recently);if(a||censorFor==1){c.m=noAllMays(c);var d=doWordlist(c.m.trim());if(d&&d!=""){cb.sendNotice("Censored message because of "+d,g,"",red,"bold");c.m="";c["X-Spam"]=true;return c}if(customWordlistRegex!=""){if(doCustomWordlist(c.m.trim(),g)=="blocked"){cb.sendNotice("Censored message by Custom Wordliste",g,"",red,"bold");c.m="";c["X-Spam"]=true;return c}}}}var k=findTokens(g);var o=c.m;if(k>=MIN_TITLE){if(tipTitles){var f=OPEN_TOT,j=CLOSE_TOT;if(k>=50){f=j=k<100?HEART_BLACK:k<200?HEART_BLUE:k<500?HEART_GREEN:k<1000?HEART_YELLOW:k<2000?HEART_RED:HEART_PURPLE}o=f+k+j+" "+o}if(c.user==currentKing){o=crown+" "+o}c.m=o}return c});var pollspy=false,pollkey="";cb.onTip(function(h){var b=h.from_user;var k=parseInt(h.amount);var a="";if(tipperArray.length>0){a=tipperArray[0][0]}var d=tipperArray[findTipper(b)][1]+=k;var e=h.from_user_gender==="f"?"Queen":"King";if(pollspy&&h.message&&h.message.indexOf(pollkey)>-1){cb.sendNotice(b+" -- "+h.message,"","",white,"","red")}if(b==currentKing&&kingTip<k){if(k-kingTip>=MIN_SIGN){cb.sendNotice("Our "+e+" is more "+e+" !","",backg,navy,"bold")}cb.sendNotice("A Tip of at least "+(k+1)+" to become the new King/Queen !","",backg,navy,"bold");kingTip=k}else{if(k>kingTip&&k>=cb.settings.kingMin){if(currentKing!=""){cb.sendNotice("You have been dethroned by "+b+", but revenge is sweet...",currentKing,purple,"white")}cb.sendNotice(crown+" We have a new "+e+" !\nAll hail :bow2 "+b+" ! "+crown,"","",purple,"bold");cb.sendNotice(crown+" I :heart2 you my "+e,b,"",coltons,"bold");currentKing=b;kingGender=e;kingTip=k;cb.sendNotice("A Tip of at least "+(kingTip+1)+" to become the new King/Queen !","",backg,navy,"bold")}}var f=cbjs.arrayContains(leaderArray,b);tipperArray.sort(function(m,l){return l[1]-m[1]});if(leaderBoard){if(d>=MIN_SIGN){var j=false;if(tipperArray[0][0]==b&&tipperArray.length>1&&d>tipperArray[1][1]){var g=d-tipperArray[1][1]+1;if(a==b&&k>=MIN_SIGN&&d>=2*MIN_SIGN){cb.sendNotice("We have a leader even more leader! :clap "+b+" "+OPEN_TOT+d+CLOSE_TOT+" :thxc ","","",colfan,"bold")}else{if(a!=b){cb.sendNotice("Tip at least "+g+" to retrieve the leader position !",tipperArray[1][0],"",purple,"bold");cb.sendNotice("We have a new LEADER ! "+b+" "+OPEN_TOT+d+CLOSE_TOT+" :thumbup","","",colfan,"bold");j=true}}}if(leaderboardSpam){if(!f){for(var c=0;c<3&&c<tipperArray.length;c++){leaderArray[c]=tipperArray[c][0]}if(cbjs.arrayContains(leaderArray,b)||j){noticeLeaderBoard("")}}}}}});cb.onEnter(function(b){var a=b.user;if(b.in_fanclub){cb.sendNotice("Welcome to your house "+a+" ! I want you to be with me forever.",a,"",colfan,"bold")}if(b.is_mod){cb.sendNotice("Welcome "+a+" ! I always appreciate your help.",a,"",red)}if(a==currentKing){cb.sendNotice("Welcome back to your kingdom "+a+" ! I :heart2 you my "+(b.gender=="f"?"Queen":"King")+" forever.","","",purple,"bold")}if(tipperArray.length>0&&a==tipperArray[0][0]&&tipperArray[0][1]>=MIN_SIGN){cb.sendNotice("Welcome back "+a+" ! Here the power is yours.","","",colfan,"bold")}});function send(c,b,a){a="Pvt from "+b+": "+a;if(c[0]=="_"){if(c=="_topten"){sendTop10(a)}else{cb.sendNotice(a,"","",micolor,"bold",c.substr(1))}}else{if(c=="king"){if(currentKing!=""){c=currentKing}else{return}}else{cb.sendNotice(a,c,"",micolor,"bold")}}}function sendTop10(a){for(i=0;i<10&&i<tipperArray.length;i++){cb.sendNotice(a,tipperArray[i][0],"",micolor,"bold")}}function express(b){for(var c=0;c<NUM_MEX;c++){var a=cb.settings["express_"+(c+1)].trim();if(a==""){continue}var d=a.indexOf(":");if(d<1){continue}var e=a.substring(0,d).trim();if(e==""){continue}if(e==b){return a.substr(d+1).trim()}}return""}function mnemoExpress(){var b=[];for(var c=0;c<NUM_MEX;c++){var a=cb.settings["express_"+(c+1)].trim();if(a==""){continue}var d=a.indexOf(":");if(d<1){continue}var e=a.substring(0,d).trim();if(e==""){continue}b.push(e)}return b.join(", ")}function kingSpam(){cb.setTimeout(kingSpamTimer,cb.settings.kingTimer*60000)}function kingSpamTimer(){if(kingTip<cb.settings.kingMin){var a=cb.settings.kingMin}else{var a=kingTip+1}cb.sendNotice("A Tip of at least "+a+" to become the new King/Queen ! "+chicrown,"",backg,navy,"bold");kingSpam()}function leaderSpam(){cb.setTimeout(leaderSpamTimer,leaderTimer*60000)}function leaderSpamTimer(){if(leaderboardSpam){noticeLeaderBoard("");leaderSpam()}}function noticeLeaderBoard(f,c){if(!tipperArray.length){return}var e=3;if(!(typeof(c)==="undefined")){e=c}if(e<3){e=3}else{if(e>MAX_TOP){e=MAX_TOP}}var d="";for(var b=0,a=tipperArray.length;b<e&&b<a;b++){d+=""+(b+1)+". "+tipperArray[b][0]+" = "+tipperArray[b][1]+"\n"}cb.sendNotice(bullets+"Leader Board"+bullets+spaces(12),f,purple,white,"bold");cb.sendNotice(d,f,"",purple)}var ahelp=[" * * * King n Leaders bot HELP * * *"," * * * ·created by cacho_gordo * * *","The best tip is the King/Queen & tip counting of tippers for leaders","For simplicity and fast code focuses on only these functions.","Few options and launch setup values."," Simple commands for use of the broadcaster and mods:","/top [n] - Leaderboard on demand top n ([3] <= n <= "+MAX_TOP+") - private","/total user - total of user / grand total (tippers) - private","/init - reinit - clear leaders list & current King - broadcaster only","/ttitles on/off - Tip Titles toggle - broadcaster only","/tleaderf on/off - Liderboard feature toggle - broadcaster only","/tlbspam on/off - Liderboard Spam toggle - broadcaster only","/tocensor G/E/N - Censorship to Greys/Everyone/None - broadcaster only","/whok - who is the King / Queen ( public command private result)","/say mnemo - Predefined Express messages accessible through your mnemonic","/msg [@user] private message - user =_color group; =_topten leaders; =king; =slug broadcaster","/notice notice text - allows more than 3 graphics and multiline, <cr> new line","/help [command] - commands list [info of one of them] - private","/ver - current version - private - use broadcaster and developer ( if mod ).","","Non-setup custom welcome messages for King, Leader, Fans and Mods"];function helpNotice(a){var b="";if(!a||a==""){b=ahelp.join("\n")}else{switch(a){case"top":return[" * Help command top *","/top [n] - Leaderboard on demand top n ([3] <= n <= "+MAX_TOP+")","Show private Notices leaderboard for n first leaders. By default 3","Only use of the broadcaster and mods."].join("\n");break;case"total":return[" * Help commad total *","/total user - total tokens of user tipped","Show private Notice: User: total / grand total (tippers).","Only use of the broadcaster and mods."].join("\n");break;case"init":return[" * Help command init *","/init - clear leaders list & current King","Only use of the broadcaster."].join("\n");break;case"ttitles":return[" * Help command ttitles *","/ttitles on/off - Tip Titles toggle","Confirmation: Notice: Tip Titles: on/off","Only use of the broadcaster."].join("\n");break;case"tleaderf":return[" * Help command tleaderf *","/tleaderf on/off - Liderboard feature toggle","Confirmation: Notice: Leader feature: on/off","Only use of the broadcaster."].join("\n");break;case"tlbspam":return[" * Help command tlbspam *","/tlbspam on/off - Liderboard Spam toggle","Confirmation: Notice: Leaderboard Spam: on","Only use of the broadcaster."].join("\n");break;case"tocensor":return[" * Help command tocensor *","/tocensor G/E/N - Censorship to...","Confirmation: Notice: Censorship to: Greys/Everyone/None","Only use of the broadcaster."].join("\n");break;case"whok":return[" * Help command whok *","/whok - Show who is the King/Queen and tokens account.","Public command private result. Public result if mods or owner","Use for all."].join("\n");break;case"say":return[" * Help command say *","/say mnemo - Predefined Express messages accessible through your mnemonic word","Replaces message with predefined in settings headed with mnemo: ",mnemoExpress(),"Only use of the broadcaster and mods."].join("\n");break;case"msg":return[" * Help command msg *","/msg [@user] private message - Send private message to user / users","By default (omitted) addressed to all - it does not make sense, use /notice instead.","The message is received in the format Notice: from user: private message","Special names for user: king -to current King, slug -to broadcaster","Name for groups: _topten -to 10 leaders; _color -color group, such that:","_lightblue = has tokens; _darkblue = tipped recently; _lighpurple = tipped alot recently","_darkpurple = tipped tons recently; _green = fanclub members; _red = moderators","Only use of the broadcaster and mods."].join("\n");break;case"notice":return[" * Help command notice *","/notice notice text - Show Notice: text and graphics","As notice allows more than 3 graphics and multiline,","Multiline separator <cr> - new line","Only use of the broadcaster and mods."].join("\n");break;case"ver":return[" * Help command notice *","ver - Show software current version for developer info.","Only use of the broadcaster and developer (if mod) - private."].join("\n");break;default:}}return b}var emotkns={"20":":20tkste4s","25":":25tips","30":":30tips","35":":35tkn","40":":40tips","45":":45tks","50":":50tkste4","60":":60tkste3","100":":100tkste3","150":":150tkste3","200":":200tkste3","250":":250tkste4","300":":300tkste3","400":":400tks","500":":500tkste3","1000":":1000t","2000":":2000tkste3","3000":":3000tkste3"};function init(){if(!initialize){initialize=true;var b=cb.settings.kingMin;var a=emotkns[b];if(!a){a=""}cb.chatNotice();cb.sendNotice("********************************","","",navy,"bold");cb.sendNotice(nbsp+" "+version[0],"","",navy,"bold");cb.sendNotice(nbsp+" "+version[1],"","",navy,"bold");cb.sendNotice(nbsp+" "+version[2],"","",navy,"bold");cb.sendNotice("********************************","","",navy,"bold");cb.chatNotice("Commands:","","",navy);cb.chatNotice(" /whok - Who is the King / Queen","","",navy);cb.chatNotice();cb.chatNotice("A Tip of at least "+b+" tokens to crown you","","",navy,"bold");cb.sendNotice(titcrown+" "+a+" :Token");cb.setTimeout(function(){cb.sendNotice("Available version Plus improved and with more advanced features and\n maintenance updates always. Search King n Keader Plus in my bots.",cb.room_slug,red,white,"bolder")},111)}else{tipperArray=[];leaderArray=[];currentKing="";kingTip=0;var e="************************************\n";e+="*** The King n Leaders bot has rebooted ***\n";e+="************************************";cb.sendNotice(e,"","",navy)}var h=cb.settings.censorshipFor;censorFor=(h==="None")?0:(h==="Everyone")?1:2;parseWordlist();kingTimer=cb.settings.kingTimer;kingSpam();if(cb.settings.tipTitles=="Yes"){tipTitles=true}var c=cb.settings.bracer100,g=cb.settings.bracer200,d=cb.settings.bracer500,k=cb.settings.bracer1000,j=cb.settings.bracer2000,f=cb.settings.bracer1M;HEART_BLACK=c||BAR_TOT;HEART_BLUE=g||BAR_TOT;HEART_GREEN=d||BAR_TOT;HEART_YELLOW=k||BAR_TOT;HEART_RED=j||BAR_TOT;HEART_PURPLE=f||BAR_TOT;if(cb.settings.leaderBoard=="Yes"){leaderBoard=true}if(cb.settings.leaderBoardSpam=="Yes"){leaderboardSpam=true;leaderTimer=cb.settings.leaderTimer;leaderSpam()}}var _repeatedCharPattern=new RegExp("(([:]*)[^\\s]*([^\\s])\\3{6,})","ig");var _emotePattern=new RegExp("(\\b)*(\\s|^):\\w+(\\b)*");var _capitalised=new RegExp("^[A-Z][^A-Z]*$");function noAllMaysToLower(e){var d=e.m.split(" ");var b=[];for(var a=0;a<d.length;a++){var c=d[a];if(_emotePattern.test(c)||_capitalised.test(c)){b.push(c)}else{b.push(c.toLowerCase())}}return b.join(" ")}var symbolString="~`!@#$%^&*()_-+={[}]|\\:;\"'<,>.?/";function noAllMays(d){var c=d.m;if(c==c.toUpperCase()&&c.toUpperCase()!=c.toLowerCase()){if(_emotePattern.test(c)){c=noAllMaysToLower(d)}else{for(var b=0,a=c.length;b<a;b++){if(symbolString.indexOf(c.charAt(b))==-1){return c.toLowerCase()}}}}return c}var customWordlistRegex="";function doCustomWordlist(a,b){var a=a.replace(/[^\w]|_/ig,"");var c=new RegExp("("+customWordlistRegex+")","i");if(a.search(c)!=-1||b.replace(/[^\w]|\d|_/ig,"").search(c)!=-1){return"blocked"}}function isBlank(a){var b;if(a){b=a.trim()}if(b==null||b==""||b.substr(0,6)=="[Exact"){return true}else{return false}}function parseWordlist(){if(!isBlank(cb.settings.customWordlist)){customWordlistRegex=cb.settings.customWordlist.replace(/^(\s|,|\|)+|(\s|,|\|)+$/gm,"");customWordlistRegex=customWordlistRegex.replace(/\s*(,|\|)\s*/gm,"|");customWordlistRegex=customWordlistRegex.replace(/[^\w|\s]/gm," ");customWordlistRegex=customWordlistRegex.replace(/(\w)/gm,"$1+");customWordlistRegex=customWordlistRegex.replace(/\s+/gm,"\\s*")}}var demandverbs="\\b(w+a+n|g+o+i*n|s+t+a+n+d+\\s*u+p|s+i+t+\\s*(o+n+|d+o+w+n+)?|t+u+r+n+\\s*(b+a+c+k|a+r+o+u+n+d)?|h+a+v+e+\\s*m+i+l+k|n+e+e+d|(c+a+n+|m+a+y+)\\s*(i+|w+e+|b+e+|[^\\s]*u+)|m+a+(k+|d+)e+\\s*\\w*t+o+\\w*|(m+a+(k+|d+)e+|l+e+t*s*)\\s*(m+e+|u+s+)*(\\s*(s+e+e+|c+))*|g+i+(m+|v+e+)\\s*m+e|p+l+a+y\\w*\\s*w|p+u+t|p+o+u+r|d+a+n+c+e+|w+a+l+k+|e+a+t|s+h+o+w|m+o+r+e|f+l+a+s+h|c+l+a+p+|b+r+e+a+s+t+f+e+e+d+|(b+l+o+w+|f+e+e+t+|f+o+o+t+|h+a+n+d+|b+o+o+b+s*)\\w*\\s*j+o+b+|m+o+a+n+|g+a+s+p+|b+o+u+n+c+e+|s+q+u+e+e+z+e+(\\s*o+u+t)*|t+w+e+r+k+|s+p+i+t+|f+e+e+l|r+i+d+e|s+l+i+d|t+a+k+e+\\s*(i+t+)*\\s*o+(u+t|f+f)|t+h+o+n+g+\\s*o+(u+t|f+f)|o+p+e+n|c+l+o+s|c+u+m|s+h+a+k|s+t+r+o+k+e+|d+o+g+(y|i)*|s+p+(a|u)+n+k|s+q+u*e*z|p+o+u+n+d|p+i+n+c+h|g+r+i+p|s+h+o+v+e|c+a+m+e+l+t+o+e|s+m+a+c+k|f+i+n+g+e+r|b+l+o+w|(f|s)+u+c*k|f+c+k|l+i+c+k|k+i+s+s|\\w* \\s*s+i+z+e|m+a+s+t\\w*b+a+t|w+a+n+k|j+e+r+k|(j+|w+h*)a+c+k)\\w*\\b";var demandverbs_ES="\\b(q+u+i+e+r|m+e+t|e+n+t+r+|s+u+b+|b+a+j+|s+a+c+|p+o+n|q+u+i+t+|d+(a|e)+m+e|m+i+r+|t+o+(c+|qu)|e+n+s+e+(n|\\xF1)+|m+u+e+s+t+r+|m+a+s|c+u+l+(i|e)+|g+u+s+t+|c+a+m+i+n+|m+(u+e+|o+)v|a+b+r|m+o+n+t|c+i*e+r+r+|(r+e+)?b+o+t+|j+a+d+e+|g+i+m+|e+s+c+u+p+|c+o+r+r+|p+e+l+l+i+z+(c+|qu)|p+i+n+z+|e+s+c+r+i+b|c+h+u+p+|j+a+l+a+|m+a+m+(a|e)+|l+a+m|t+o+m+|c+o+m+(e|a)+|p+e+r+r+|a\\s*(c+u+a+t+r+o|4)|n+a+l+g+a|s+o+b+|g+o+l+p+e+|s+o+p+l+|f+o+l+l+|c+o+(g|j)+|j+o+d+|d+e+d+|l+e+n+g+u|m+i+r+|m+a+s+t\\w*b+|p+a+j)\\w*\\b";var girlyparts="\\b(p+u+s|v+a+(g|j)|t+w+a+t|k+i+t+t|(c|s)+l+i+t|l+i+p|b+o+o+b|b+r+e+a+t+s|n+i+p|t+i+t|[^w\\s]*h+o+l+e|c+u+n+t|f+i+n+g+e+r|m+o+u+t+h|t+o+n+g+u|t+o*u+n+g|a+r+m+\\s*p+i+t)\\w*\\b|\\b(a+s+s|b+u+t+t|f+e+e+t|s+o+l+e+s*|m+u+f+f|b+o+o+t+(y|i)|a+n+u+s|l+e+g+s*)\\b";var girlyparts_ES="\\b(c+h+o+c+h|p+a+n+o+c+h|c+l+i+t+o+|c+o+(n|\\xF1)|p+e+c+h+|p+e+z+o+n+|(c|k)+u+(c+|q+u+|k+)|m+a+m+|t+e+t)\\w*\\b|\\b(a+u+r+e+o+l+a+s*|a+g+u+j+e+r+o|d+e+d+o|b+o+c+a|c+u+l+o|l+e+n+g+u+a|a+x+i+l+a|b+o+t+i+n|s+o+b+a+c+o|c+h+i+c+h+i|x+i+x+i|b+u+(c|z|s)+e+t+a|v+a+g+i+n+a|v+u+l+v+a|c+o+n+c+h+a|a+l+m+e+j+a|t+o+t+o|r+a+j+a|l+a+b+i+o|a+n+o|n+a+l+g+a|c+o+l+(a|i+t+a)|t+r+a+s+e+r+o|p+i+e+s*|p+i+e+r+n+a+s*)\\b";var guyparts="\\b(d+i+c+k|b+o+n+e+r|p+i+p+e|c+o+c*(c|k)|n+u+t|p+e+n+i+s|m+e+a+t|bbc)\\w*\\b";var guyparts_ES="\\b(p+o+l+l+a|p+i+j|(c+h+|m+)i+n+g+a|c+u+l+o+|c+i+p+o+t+e|p+i+(c+h+|x+)|v+e+r+g+a+|h+u+e+v+|c+h+o+r+r+|c+o+l+a|(r|n)a+b+o|m+a+n+g|p+e+n+e|m+i+n+i+y+o)\\w*\\b";var toys="\\b(d+i+l+d+o|p+l+u+g|t+o+y|b+u+t+t+\\s*p+l+u+g|v+i+bc+l+a+m+p+s*|c+l+i+p+s*|h*i*t+a+c+h+i|l+u+s+h|o+h+m+i+b+o+d)\\w*\\b";var toys_ES="\\b(d+i+l+d+o|j+u+g+u+e+t+e|a+r+|p+i+n+z+a+s*|e+s+t+r+a+n+g+u+l+a|b+o+l+|a+b+r+a+z+a+d+e+r+a+s*|a+r+g+o+l+l+a+s*|c+o+n+s+o+l+a+d|p+e+p+i+n+o|c+h+u+p+e+t|v+i+b+r+a|b+a+t+i+d+o+r+a)\\w*\\b";var naked="\\b(n+a*k+e*d+|n+u+d+e+|b+a+r+e+)\\b";var naked_ES="\\b(s+i+n+\\s*r+o+p+a+|(d+e+s+n+u+d+|p+e+l+o+t+|v+e+r+i+n+g+|n+u+d+i+s+|(e+n)?\\s*c+u+e+r+)\\w*)\\b";var clothing="(c+l+o+t+h|(b+r+a+|p+a+n+t+(i|y)*|t+o+p|t+h+o+n+g+|s+(h|k)+i+r+t|d+r+e+s|s+t*o+(c+k|x)|s+h+o+r+t|s+h+o+e|le+g+g*i+n+g*)\\w*\\b)";var clothing_ES="(r+o+p+a|b+r+a+(c|z)+i+e+r|(b+r+a+g|t+a+c+o+|b+l+u+s+|c+a+l+c+e+t+i+n+|c+a+l+z+o+n|p+a+n+t+a+l+o+n|m+e+d+i+a+|s+h+o+r+t|f+a+l+d+a+|v+e+s+t+i+d+o|c+a+m+i+s+|s+u+j+e+t+d+o+r|t+o+p+|s+o+s+t+e+n+|z+a+p+a+t+)\\w*\\b)";var removeit="(r+e+m+o+v+e+|t+a+k+e\\s*o+f+f+)";var removeit_ES="(r+e+t+i+r+a+|s+a+c+a|q+u+i+t+a|b+a+j+a|f+u+e+r+a)\\w*";var tmi_iam="\\b(i+.{0,1}a*m+|i+|a+m+|i+s+|s+o+)\\b";var tmi_iam_ES="\\b(yo+.{0,1}e+s+t+o+y+|y+o+|s+o+y+|t+e+n+g+o+|e+s+t+o+y+|a+s+i|t+a+n+)\\b";var tmi_adj="\\b(h+a*r+d|w+e+t|h+o+r+n|t+h+i+c+k|s+t+r+o+n+g)\\w*\\b";var tmi_adj_ES="\\b(d+u+r+|m+o+j+a+d+|c+h+o+r+r+e+a+|c+a+l+i+e+n+t+|g+o+r+d+|p+a+r+a+d+|t+i+e+s+)\\w*\\b";var tmi_intent="\\b((l+o+v+e|l+u+v|g+o+i+n)\\w*\\s*(2+|t+o+)|l+e+(t|m)+\\s*m+e+|m+a+y+|w+i+s+h+|w+a+n+a+|c+a+n+)\\b|";tmi_intent+="\\b(g+o+t+|w+a+n|g+o+n|w+i+s+h)\\w*\\b";var tmi_intent_ES="\\b(m+e*\\s*(g+u+s+t+a+|e+n+c+a+n+t+a+|p+o+n+e)\\w*|(d+e+j+(a|e)+\\s*m+e+|p+e+r+m+i+t+(a|e)+\\s*m+e+)|p+o+d+r+i+a+s*|d+e+b+e+r+i+a+s*\\w*|d+e+s+e+\\w*)\\b|";tmi_intent_ES+="\\b(t+i+e+n+e+|p+u+e+d+|q+u+i+e+r+|h+a+y|s+e+r|d+e+s+e+)\\w*\\b";var tmi_verb="\\b(m+a+s+t\\w*b+a+t|w+a+n+k|t+w+e+r+k|j+e+r+k|(j+|w+h*)a+c+k|t+i+g+h+t|b+o+u+n+c+e|t+a+s+t|e+a+t|p+o+u+r|c+u+m|i+n+s+i+d+e|s+m+e+l+l|s+n+i+f+f|l+i+c+k|(f|s)+u+c*k|t+o+y|f+e+c+k)\\w*\\b";var tmi_verb_ES="\\b(m+a+s+t\\w*b+a+|p+a+j+|m+a+c+h+u+c|a*p+r+i+e+t|g+u+s+t+|c+o+m|c+o+r+r|v+(i+)?e+r+t|v+e+n|i+r|d+a+r|d+e+n+t+r+o|o+l+e|l+a+m|c+h+u+p+|f+o+l+l+|c+a+g+u*|m+e+(a|e)+)\\w*\\b";var tmi_cum="\\b(c+u+m|s+e+m+e+n|s+p+e+r+m|b+u+s+t.*n+u+t)\\w*\\b";var tmi_cum_ES="\\b(l+e+c+h+|s+e+m+e+n|e+s+p+e+r+m+|l+e+f+|o+r+g+a+s+m+|c+o+r+r+i+d+|p+o+l+v+)\\w*\\b";var list_workaround=new RegExp("((^|\\s)[^\\s]\\s[^\\s]\\s[^\\s]($|\\s))","i");var list_directness=new RegExp("\\b("+girlyparts+"|"+guyparts+"|"+demandverbs+"|"+naked+"|"+tmi_verb+"|"+tmi_cum+"|p+l+e*a*i*(s|z)+e*)\\b","i");var list_directness_ES=new RegExp("\\b("+girlyparts_ES+"|"+guyparts_ES+"|"+demandverbs_ES+"|"+naked_ES+"|"+tmi_verb_ES+"|"+tmi_cum_ES+"|p+l+i+s+|p+o+r+\\s*f+(a+|i+s*)\\w*)\\b","i");var non_english_spanish=new RegExp("[^\\x00-\\xAE\\u2000-\\u206F\\u00F1\\u00D1]");var list_bb=new RegExp("\\b(b+(a|e)*b+(y|e)*|n+e+n+)\\b","i");var list_bb_ES=new RegExp("\\b(n+(i|e)+(n|\\xF1)+(a|o|e)+|m+o+r+e*|b+e+b+\\w*)\\b","i");var list_rude=new RegExp("\\b(h+o+e+s*)\\b|(c+u+n+t|s+l+u+t|s+k+a+n+k|w+h+o+r+e|b+i+t+c+h|n+i+g+g+e+r|t+r+a+n+n+(y|i))","i");var list_rude_ES=new RegExp("\\b(p+u+t+a+|p+r+o+s+t+i+t+u+t+a)\\b|(c+o+(n|\\xF1)+o+|g+u+a+r+r+a|p+e+n+d+e+j+a|z+o+r+r+a|m+a+r+i+c+(a|o+n)|n+e+g+r+(a|o)|t+r+a+n+s+\\w*)","i");var list_annoying=new RegExp("\\b([a-g|i-z]*((h|j)+u+)*m+m+h*|o+m+g+|o+h+h*\\s*(l+a+)*|u+f+)\\b","i");var list_spam=new RegExp("(s+k+(y|i)*p+e|s+k+y*p|(f+r+e+e|unlimited).*t+o+k+e+n|t+o+k+e+n.*(f+r+e+e|generator)|erotimo|freecambook|webcam23|hotjenny|fucktubate|gaysexrooms|fastsexnow|soda|mfc*|myfree|chatville|(live)*jasmin|cam4|xlove|bonga|strip|streamate|alva lanus|Delorge942|Glasford597|sk .*y p e|\\[LEAK(ED)*\\]|SwipeGirls|pornmeds|g+u+y+s+|b+o+y+s+)","i");var list_demands=new RegExp("\\b(p+\\s*m+|p+v+t|p+m+|c+a+m+\\s*(t+o+|2)\\s*c+a+m+|p+l+e*a*i*(s|z)+|a+n+a+l+|(m+a+s+t\\w*b|s+q\\w*r+t|f+i+s+t|q+u*e+a*f+)\\w*|("+demandverbs+"|p+l+e*a*i*(s|z)+e*)\\s*(i+t+|(t+h+|d+)a+t+|.*(y*o*u+r*|(f+o*r+|4+)*\\s*m+(y|e|i)+|"+girlyparts+"|"+guyparts+"|"+toys+")|p+l+e*a*i*(s|z)+e*)|("+girlyparts+"|"+guyparts+"|"+toys+"|"+naked+"|l+o+o+k+|c+h+e+c+k+|g+e+t+|m+(y|e|i)+|p+l+e*a*i*(s|z)+e*).*("+demandverbs+"|"+naked+"|p+l+e*a*i*(s|z)+e*))\\b|("+removeit+".*"+clothing+")|("+clothing+".*"+removeit+")|(t+a+k+e.*"+clothing+".*o+f+f)|(z+o+o+m|s+p+r+e+a+d|f+a+r+t|c+\\s*2+\\s*c|(w+a+t+c+h|l+o+o+k|s+e+e)\\s*(m+e+|m+y+)*\\w*|(w+a+t+c+h|l+o+o+k|o+p+e+n|v+i+e+w|c+l+i+c+k).*(c+a+m|p+r+o+f|r+o+o+m)\\w*)","i");var list_demands_ES=new RegExp("\\b(p+r+i+v+(a+d+o+|i+)|p+l+i+s+|p+o+r+\\s*f+(a+|i+s*)\\w*|(m+a+s+t+u+\\w*b|p+u+(n|\\xF1)+o)\\w*|("+demandverbs_ES+"|p+l+i+s+|p+o+r+\\s*f+(a+|i+s*)\\w*)\\s*(l+o+|e+s+o+|e+s+t+o+|.*(t+u+|(p+o*r+|4+)*\\s*m+(y|e|i)+|"+girlyparts_ES+"|"+guyparts_ES+"|"+toys_ES+")|p+l+i+s+|p+o+r+\\s*f+(a+|i+s*)\\w*)|("+girlyparts_ES+"|"+guyparts_ES+"|"+toys_ES+"|"+naked_ES+"|d+a+|h+a+z+|m+(y|e|i)+|p+l+e*a*i*(s|z)+e*|p+o+r+\\s*f+(a+|i+s*)\\w*).*("+demandverbs_ES+"|"+naked_ES+"|p+o+r+\\s*f+(a+|i+s*)\\w*))\\b|("+removeit_ES+".*"+clothing_ES+")|("+clothing_ES+".*"+removeit_ES+")|((q+u+i+t+a+|s+i+n+|s+a+c+a).*"+clothing_ES+")|(a+c+e+r+c+a|a+b+r+(e|a)|p+e+d+e|(v+e+(r|a)|m+i+r+(a+r?|e)|a+b+r+(a|e|i+r)|p+u+l+s+a|a*p+r+i+e+t+a+|c+l+i+c+a*).*(c+a+m+(a+r+a+)?|s+a+l+a|h+a+b+i+t+a+c+i+o+n|c+u+a+r+t+o)\\w*)","i");var list_tmi=new RegExp("\\b(\\d\\s*(i+n|c+m)\\w*|("+demandverbs+").*("+tmi_cum+")|("+tmi_iam+").*("+tmi_adj+")|("+tmi_adj+").*f+o*r+\\s*y*o*u+r*|("+tmi_iam+"|"+tmi_intent+"|m+(y|e|i)+).*("+tmi_verb+"|"+tmi_cum+"|"+guyparts+"|\\bs+i+s\\w*))\\b|(s+t+r+o+k|t+h+r+o+b|c+i+r+c+u+m)","i");var list_tmi_ES=new RegExp("\\b(\\d\\s*(e+n|c+m)\\s*\\w*|("+demandverbs_ES+").*("+tmi_cum_ES+")|("+tmi_iam_ES+").*("+tmi_adj_ES+")|("+tmi_adj_ES+").*p+((o|a)+r)*a+\\s*(t+i|t+u)|("+tmi_iam_ES+"|"+tmi_intent_ES+"|m+(y|e|i)+).*("+tmi_verb_ES+"|"+tmi_cum_ES+"|"+guyparts_ES+"|\\bs+e+s\\w*))\\b","i");var list_feet=new RegExp("\\b(s+o+l+e+s*|t+o+e+s*)\\b|(f+e+e+t|p+e+d+i+c+u|f+o+o+t+s*j+o+b|f+e+e+t+j+o+b)","i");var list_feet_ES=new RegExp("\\b(p+l+a+n+t+a+s*|d+e+d+o+s*)\\b|(p+i+e+s*|p+e+d+i+c+u)","i");var list_creepy=new RegExp("\\b(d+a+d|m+o+m|m+a+m+m*(i+|y+)*|(s+t+e+p+)*d+a+u+g+h+t+e+r)\\w*\\b","i");var list_creepy_ES=new RegExp("\\b(p+a+p+i|m+a+m+i|h+i+j+(a|o))\\w*\\b","i");var list_poopee=new RegExp("\\b(p+o+o+p*\\w*|p+e+e+(i+n+g)*)\\b|(t+u+r+d|e+n+e+m+a|d+e+f+e+c+a+t|(s+h+i+t|c+r+a+p|p+i+s+s+)\\w*\\s*(o|i)+n)","i");var list_poopee_ES=new RegExp("\\b(m+i+e+r+d+a\\w*|caca|p+o+p+o|p+i+s|p+i+p+i)\\b|(m+o+j+o+n|l+a+v+a+t+i+b+a|d+e+f+e+c+a+r|(c+a+g+a+|m+e+a+)\\w*\\s*(e+n|d+e+n+t+r+o))","i");function doWordlist(c){var a=c.trim().replace(/([^\w\s\u0027\u2019\x00-\xAE\u0000-\uFFFF\u00F1\u00D1\[\]]|_)/ig," ");var b=null;switch(true){case c.length<=1||c.length>500:b="Length";break;case a.search(list_workaround)!=-1:b="Workaround";break;case a.search(list_directness)!=-1&&(c.match(/\s+/gi)||[]).length<3:b="Directness";break;case a.search(list_directness_ES)!=-1&&(c.match(/\s+/gi)||[]).length<3:b="Ordenes";break;case a.search(non_english_spanish)!=-1:b="Non-English";break;case a.search(list_bb)!=-1:b="BB";break;case a.search(list_bb_ES)!=-1:b="Nen";break;case a.search(list_rude)!=-1:b="Rudeness";break;case a.search(list_rude_ES)!=-1:b="Rudeza";break;case a.search(list_annoying)!=-1:b="Annoying";break;case a.search(list_spam)!=-1:b="Spam";break;case a.search(list_demands)!=-1:b="Demands";break;case a.search(list_demands_ES)!=-1:b="Peticiones";break;case a.search(list_tmi)!=-1:b="TMI";break;case a.search(list_tmi_ES)!=-1:b="TMI";break;case a.search(list_feet)!=-1:b="Feet";break;case a.search(list_feet_ES)!=-1:b="Pies";break;case a.search(list_creepy)!=-1:b="Creepy";break;case a.search(list_creepy_ES)!=-1:b="Ñoño";break;case a.search(list_poopee)!=-1:b="Poo/Pee";break;case a.search(list_poopee_ES)!=-1:b="Caca/Pis";break}return b}init();
© Copyright Chaturbate 2011- 2024. All Rights Reserved.