Bots Home
|
Create an App
ModTalk
Author:
xizk99
Description
Source Code
Launch Bot
Current Users
Created by:
Xizk99
/** * App: Mod Chat * Version: 2.0 * Author: xIzk99 * Modified: 2.12.2016 */ var colors = []; var emote = []; var activeChatUsers = []; var hideChat = false; var color_code = { black: "#000000", blue: "#0000FF", blueviolet: "#8A2BE2", brown: "#A52A2A", cadetblue: "#5F9EA0", chocolate: "#D2691E", coral: "#FF7F50", cornflowerblue: "#6495ED", crimson: "#DC143C", cyan: "#00FFFF", darkblue: "#00008B", darkcyan: "#008B8B", darkgoldenrod: "#B8860B", darkgray: "#A9A9A9", darkgrey: "#A9A9A9", darkgreen: "#006400", darkkhaki: "#BDB76B", darkmagenta: "#8B008B", darkolivegreen: "#556B2F", darkorange: "#FF8C00", darkorchid: "#9932CC", darkred: "#8B0000", darksalmon: "#E9967A", darkseagreen: "#8FBC8F", darkslateblue: "#483D8B", darkslategray: "#2F4F4F", darkslategrey: "#2F4F4F", darkturquoise: "#00CED1", darkviolet: "#9400D3", deeppink: "#FF1493", deepskyblue: "#00BFFF", dodgerblue: "#1E90FF", firebrick: "#B22222", forestgreen: "#228B22", fuchsia: "#FF00FF", gray: "#808080", grey: "#808080", green: "#008000", greenyellow: "#ADFF2F", hotpink: "#FF69B4", indianred: "#CD5C5C", indigo: "#4B0082", lawngreen: "#7CFC00", lime: "#00FF00", limegreen: "#32CD32", magenta: "#FF00FF", maroon: "#800000", mediumaquamarine: "#66CDAA", mediumblue: "#0000CD", mediumorchid: "#BA55D3", mediumpurple: "#9370DB", mediumseagreen: "#3CB371", mediumslateblue: "#7B68EE", mediumspringgreen: "#00FA9A", mediumturquoise: "#48D1CC", mediumvioletred: "#C71585", midnightblue: "#191970", navy: "#000080", olive: "#808000", olivedrab: "#6B8E23", orangered: "#FF4500", orchid: "#DA70D6", paleturquoise: "#AFEEEE", palevioletred: "#DB7093", peru: "#CD853F", pink: "#FFC0CB", plum: "#DDA0DD", powderblue: "#B0E0E6", purple: "#800080", red: "#FF0000", rosybrown: "#BC8F8F", royalblue: "#4169E1", saddlebrown: "#8B4513", salmon: "#FA8072", sandybrown: "#F4A460", seagreen: "#2E8B57", sienna: "#A0522D", skyblue: "#87CEEB", slateblue: "#6A5ACD", slategray: "#708090", slategrey: "#708090", springgreen: "#00FF7F", steelblue: "#4682B4", teal: "#008080", tomato: "#FF6347", turquoise: "#40E0D0", violet: "#EE82EE", yellowgreen: "#9ACD32", cardinal : "#500000", flaminghomo : "#FF69B4", midnight : "#191970", gayblue : "#0066cc" }; var user_color = { orange : "#DC5500", red : "#DC0000", lightblue : "#69A", darkblue : "#009", grey : "#666666", darkpurple : "#804baa", lightpurple : "#be6aff" }; cb.onMessage(function(msg) { var username = msg['user']; var messageh = msg['m']; var isMod = msg['is_mod']; if ( !cbjs.arrayContains(activeChatUsers, username) && (username !== undefined)) activeChatUsers.push(username); if ( msg['m'].match(/^\/mtc/i) && ( isMod || username === cb.room_slug)) { msg['X-Spam'] = true; var parsedInput = msg['m'].split(/\W+/); var parm1 = parsedInput[2]; if ( parm1 in color_code ) { colors[username] = color_code[parm1]; cb.sendNotice('** Color ' + parm1 + ' is set. **', username, '', colors[username], 'bold'); } else { var colorlist = '** <color> can be: '; for ( key in color_code ){ colorlist += key + ' '; } cb.sendNotice('** Syntax error: /mtc <color> **', username, '', '#995B00', 'bold'); cb.sendNotice(colorlist, username, '', '#995B00', 'bold'); } return msg; } else if ( msg['m'].match(/^\/mta/i) && ( isMod || username === cb.room_slug)) { msg['X-Spam'] = true; smessage = messageh.substring(4, messageh.length); if ( (smessage) ) { emote[username] = smessage; cb.sendNotice('** Avatar ' + smessage + ' is set. **', username, '', '', 'bold'); } else { emote[username] = ''; cb.sendNotice('** Avatar ' + smessage + ' is removed. **', username, '', '', 'bold'); } return msg; } else if ( msg['m'].match(/^\/hidechat/i) && (username === cb.room_slug)) { msg['X-Spam'] = true; hideChat ? hideChat = false : hideChat = true; cb.sendNotice("** Hidden chat is now " + (hideChat ? "ON." : "OFF."),cb.room_slug,'','','bold'); return msg; } else if (msg['m'].match(/^\/\/ /) && ( isMod || username === cb.room_slug)) { msg['X-Spam'] = true; smessage = messageh.substring(3, messageh.length); cb.sendNotice(username + (emote[username] || '') + ' (hidden): ' + smessage, '', '', (colors[username] || ((isMod) ? '#DC0000':'#DC5500')), 'bold', 'red'); cb.sendNotice(username + (emote[username] || '') + ' (hidden): ' + smessage, cb.room_slug, '', (colors[username] || ((isMod) ? '#DC0000':'#DC5500')), 'bold'); if (username in colors) { msg["c"] = colors[username]; } msg['m'] = "[sending hiddden mesage]"; return msg; } else if (msg['m'].match(/^\/\/\/ /) && ( isMod || username === cb.room_slug)) { msg['X-Spam'] = true; smessage = messageh.substring(4, messageh.length); for (var i=0; i<activeChatUsers.length; i++) { cb.sendNotice(username + (emote[username] || '') + ' (public): ' + smessage, activeChatUsers[i], '', (colors[username] || ((isMod) ? '#DC0000':'#DC5500')), 'bold'); } if (username in colors) { msg["c"] = colors[username]; } msg['m'] = "[sending public mesage]"; return msg; } else if ((hideChat) && (msg['m'].match(/^[^!\/]/)) ) { msg['X-Spam'] = true; var msgColor = user_color.grey; var isMod = msg['is_mod']; var isBlue = msg['has_tokens']; var isDarkBlue = msg['tipped_recently']; var isPurple = msg['tipped_alot_recently']; var isDarkPurple = msg['tipped_tons_recently']; var isBroadcaster = (username === cb.room_slug); // Crappy method to get the highest color of the user if (isBlue) msgColor = user_color.lightblue; if (isDarkBlue) msgColor = user_color.darkblue; if (isPurple) msgColor = user_color.lightpurple; if (isDarkPurple) msgColor = user_color.darkpurple; if (isMod) msgColor = user_color.red; if (isBroadcaster) msgColor = user_color.orange; for (var i=0; i<activeChatUsers.length; i++) { cb.sendNotice(username + ' (chat): ' + msg['m'], activeChatUsers[i], '', msgColor, 'bold'); } msg['m'] = "[sending chat message]"; return msg; } return msg; }); // End of onMessage() cb.onLeave(function (msg) { var username = msg['user']; if ( cbjs.arrayContains(activeChatUsers, username) && (username !== undefined)) { var index = activeChatUsers.indexOf(username); if ( index > -1) activeChatUsers.splice(index, 1); } }); cb.onEnter(function (msg) { var username = msg['user']; if ( !cbjs.arrayContains(activeChatUsers, username) && (username !== undefined)) activeChatUsers.push(username); });
© Copyright Chaturbate 2011- 2026. All Rights Reserved.