Bots Home
|
Create an App
ChrizzBeatz Bad Bitch Bot v2
Author:
chrizzbeatz
Description
Source Code
Launch Bot
Current Users
Created by:
Chrizzbeatz
// ChrizzBeatz Bad Bitch Bot // Code Taken from: PonyLegs Club Bot // Originally code by mistynympho http://chaturbate.com/apps/app_details/ponylegs-club/?version=&slot=1 // Chainsawed by fritoxbandito for limitCam support // CB app settings cb.settings_choices = [ {name: 'doColoring', type: 'choice', label: 'Change text and background coloraing for members (choose colors below)?', choice1: 'Yes', choice2: 'No', defaultValue: 'Yes'}, {name: 'doText', type: 'choice', label: 'Add text labels in front of members messages (choose text below)?', choice1: 'Yes', choice2: 'No', defaultValue: 'Yes'}, {name: 'sfText', label: 'Text to put in front of Beatz Bad Bitch members messages (e.g. smoke), the text will be put inside square brackets []', type: 'str', minLength: 0, maxLength: 20, required: false, defaultValue: 'Beatz Bad Bitch'}, {name: 'sfTextColor', label: 'Beatz Bad Bitch members text color - HTML colour code without starting \'#\' e.g. (000000 is black)', type: 'str', minLength: 0, maxLength: 6, required: false, defaultValue: '000000'}, {name: 'sfBGColor', label: 'Beatz Bad Bitch members background color - HTML colour code without starting \'#\' e.g. (7FFF00 is chartreuse)', type: 'str', minLength: 0, maxLength: 6, required: false, defaultValue: '04B431'}, {name: 'sfMinTip', label: 'Minimum tip to become Beatz Bad Bitch member', type: 'int', minValue: 1, defaultValue: 299}, {name: 'sfAnnounce', label: 'Text to show when someone tips to become a Beatz Bad Bitch member, the text MEMBERNAME will be replaced with the username of the new (Note: graphics don\'t work in this text)', type: 'str', minLength: 0, maxLength: 10240, required: false, defaultValue: 'MEMBERNAME just joined Chrizz Beatz Bad Bitch Brigade, HELL YEAH MUTHAFUCKA!!'}, {name: 'sfMemberList', label: 'List of current Beatz Bad Bitch members, separated by commas (and they need to be the CB username exactly)', type: 'str', minLength: 0, maxLength: 10240, required: false, defaultValue: 'mackennadawn,girlanachrony,lexi_luxxe,annarae_x,zilla_x,fernbitch,jnawtgurl,aubreyblack,artisial,littlegingertwat,707bbw'}, {name: 'sfRainText', label: 'Text to use for Beatz Bad Bitch rain lines', type: 'str', minLength: 0, maxLength: 180, required: false, defaultValue: 'Beatz Bad Bitch Brigade Beatz Bad Bitch Brigade Beatz Bad Bitch Brigade Beatz Bad Bitch Brigade HELL YEAH'}, {name: 'sfRainCount', label: 'Number of lines of Beatz Bad Bitch rain', type: 'int', minValue: 1, maxValue: 15, defaultValue: 15}, {name: 'hrText', label: 'Text to put in front of High Rollers messages (e.g. hr)', type: 'str', minLength: 0, maxLength: 100, required: false, defaultValue: 'highroller'}, {name: 'hrTextColor', label: 'High Rollers text color - HTML colour code without starting \'#\' e.g. (000000 is black)', type: 'str', minLength: 0, maxLength: 6, required: false, defaultValue: '000000'}, {name: 'hrBGColor', label: 'High Rollers background color - HTML colour code without starting \'#\' e.g. (01DFD7 is light blue)', type: 'str', minLength: 0, maxLength: 6, required: false, defaultValue: '01DFD7'}, {name: 'hrMinTip', label: 'Minimum tip to become High Roller', type: 'int', minValue: 1, defaultValue: 1000}, {name: 'hrAnnounce', label: 'Text to show when someone tips to become a High Roller, the text MEMBERNAME will be replaced with the username of the new member (Note: graphics don\'t work in this text)', type: 'str', minLength: 0, maxLength: 10240, required: false, defaultValue: 'MEMBERNAME just became a High Roller! FUCK YEAH!'}, {name: 'hrMemberList', label: 'List of current High Rollers, separated by commas (and they need to be the CB username exactly)', type: 'str', minLength: 0, maxLength: 10240, required: false, defaultValue: 'velt'}, {name: 'hrRainText', label: 'Text to use for High Roller rain lines', type: 'str', minLength: 0, maxLength: 80, required: false, defaultValue: 'High Roller High Roller High Roller FUCK YEAH!'}, {name: 'hrRainCount', label: 'Number of lines of High Roller rain', type: 'int', minValue: 1, maxValue: 15, defaultValue: 15}, {name: 'rhText', label: 'Text to put in front of Right Hands messages (e.g. pl)', type: 'str', minLength: 0, maxLength: 100, required: false, defaultValue: 'chrizzs jizz soaked right hand'}, {name: 'rhTextColor', label: 'Right Hands text color - HTML colour code without starting \'#\' e.g. (000000 is black)', type: 'str', minLength: 0, maxLength: 6, required: false, defaultValue: '000000'}, {name: 'rhBGColor', label: 'Right Hands background color - HTML colour code without starting \'#\' e.g. (01DFD7 is light blue)', type: 'str', minLength: 0, maxLength: 6, required: false, defaultValue: '01DFD7'}, {name: 'rhMinTip', label: 'Minimum tip to tip like a boss', type: 'int', minValue: 1, defaultValue: 25}, {name: 'rhAnnounce', label: 'Text to show when someone tips like a boss, the text MEMBERNAME will be replaced with the username of the new member (Note: graphics don\'t work in this text)', type: 'str', minLength: 0, maxLength: 10240, required: false, defaultValue: 'Fuck Yeah! Thank you MEMBERNAME! My Penis loves you!'}, {name: 'rhMemberList', label: 'List of current Right Hands, separated by commas (and they need to be the CB username exactly)', type: 'str', minLength: 0, maxLength: 10240, required: false, defaultValue: 'paylady'}, {name: 'rhRainText', label: 'Text to use for baller rain lines', type: 'str', minLength: 0, maxLength: 120, required: false, defaultValue: 'Makin it RAINNNNN MF!! Makin it RAINNNNN MF!! Makin it RAINNNNN MF!! Makin it RAINNNNN MF!!'}, {name: 'rhRainCount', label: 'Number of baller rain lines', type: 'int', minValue: 1, maxValue: 15, defaultValue: 15}, {name: 'fcText', label: 'Text to put in front of Fan Club members messages (e.g. Fan Club), the text will be put inside square brackets []', type: 'str', minLength: 0, maxLength: 20, required: false, defaultValue: 'Fan Club'}, {name: 'fcTextColor', label: 'Fan Club members text color - HTML colour code without starting \'#\' e.g. (000000 is black)', type: 'str', minLength: 0, maxLength: 6, required: false, defaultValue: '000000'}, {name: 'fcBGColor', label: 'Fan Club members background color - HTML colour code without starting \'#\' e.g. (7FFF00 is chartreuse)', type: 'str', minLength: 0, maxLength: 6, required: false, defaultValue: '04B431'}, { name: 'min_start_tokens', type: 'int', minValue: 1, maxValue: 1000, defaultValue: 50, label: "Cost to Join Before Show Starts" }, { name: 'min_join_tokens', type: 'int', minValue: 0, maxValue: 1000, defaultValue: 100, label: "Cost to Join During Show. Set to 0 to Disable Joining During Show." }, { name: 'hide_message', label: 'Cam Message', type: 'str', minLength: 1, maxLength: 512, defaultValue: '\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\Secret Show in progress\!\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-Tip at least 100 tokens to join in on the fun\!\-\-\-\-\-\-Join Us\!\-\-\-' }, {name: 'show_notifications', label: 'Show notification when show access is made?', type: 'choice', choice1: 'Yes', choice2: 'No', defaultValue: 'No' }, {name: 'fan_clubs_in', label: 'Are fan club members always in?', type: 'choice', choice1: 'Yes', choice2: 'No', defaultValue: 'Yes' } ]; var sfMembers = {}; var hrMembers = {}; var rhMembers = {}; var sfNotice = "Special Price through the rest of January! Tip 199 (reg. 299 tks) to become a member of Chrizz Beatz's Bad Bitch Brigade, Tip 299 (reg. 399 tks) to also include KiK 4 life!\nAll your messages will be highlighted in chat and you will also receive:\n- pm's anytime/n- private cost reduced to 18tks/min!/n - free entry to hidden special hidden cam shows/n- my love & appreciation!\nTip 1000 to be The Baddest Bitch! Join my Bad Bitch Brigade!--"; // For auto-silencing at least some of token_wh*re_c*nts usernames var twcRegex = /t.?k.?n.?wh.?r.?_c.?nt.?/i; function showSFNotice(){ cb.chatNotice(sfNotice); cb.setTimeout(showSFNotice,900000); } cb.onMessage(function (msg) { // vars for ease of use var u = msg['user']; var message = msg['m']; var user = msg['user']; var username = ""; if (cb.room_slug === user && message == '/start' && !cb.limitCam_isRunning()) { output(cb.room_slug + ' has started the show!'); // cb.changeRoomSubject(cb.settings.hide_message); cb.limitCam_start(cb.settings.hide_message); } if (cb.room_slug === user && message == '/stop' && cb.limitCam_isRunning()) { output(cb.room_slug + ' has stopped the show!'); cb.limitCam_stop(); } if (cb.room_slug === user && message.substring(0, 7) == '/remove' && cb.limitCam_allUsersWithAccess().length > 0) { username = message.substring(8, message.length); if (cbjs.arrayContains(cb.limitCam_allUsersWithAccess(), username)) { cb.limitCam_removeUsers([username]); output(cb.room_slug + ' has removed ' + username + ' from the show!'); } } if (cb.room_slug === user && message.substring(0, 4) == '/add') { username = message.substring(5, message.length); if (cbjs.arrayContains(cb.limitCam_allUsersWithAccess(), username)) {} else { cb.limitCam_addUsers([username]); cb.chatNotice('Added ' + username + ' to secret show', username); cb.chatNotice('Added ' + username + ' to secret show', cb.room_slug); } } if (cb.room_slug === user && message.substring(0, 6) == '/check') { username = message.substring(7, message.length); if (cb.limitCam_userHasAccess(username)) { output(username + " is in the show!"); } else { output(username + " is not in the show!"); } } if (cb.room_slug === user && message === '/list') { var userlist = cb.limitCam_allUsersWithAccess(); if (userlist.length > 0) { output("" + userlist.length + (userlist.length > 1 ? " users" : " user") + " in show: " + cbjs.arrayJoin(userlist, ", ")); } else { output("No users in show."); } } if (isHR(u)) { msg['background'] = '#' + cb.settings.hrBGColor; msg['c'] = '#' + cb.settings.hrTextColor; msg['m'] = "[" + cb.settings.hrText + "] " + msg['m']; if (cbjs.arrayContains(cb.limitCam_allUsersWithAccess(), user)) { } else { cb.limitCam_addUsers([user]); if (cb.settings.show_notifications == 'Yes' ){ cb.chatNotice('Added ' + username + ' to secret show', username); cb.chatNotice('Added ' + username + ' to secret show', cb.room_slug); }; } } else if (isSF(u)) { msg['background'] = '#' + cb.settings.sfBGColor; msg['c'] = '#' + cb.settings.sfTextColor; msg['m'] = "[" + cb.settings.sfText + "] " + msg['m']; if (cbjs.arrayContains(cb.limitCam_allUsersWithAccess(), user)) { } else { cb.limitCam_addUsers([user]); if (cb.settings.show_notifications == 'Yes' ){ cb.chatNotice('Added ' + username + ' to secret show', username); cb.chatNotice('Added ' + username + ' to secret show', cb.room_slug); }; } } else if (isRH(u)) { msg['background'] = '#' + cb.settings.rhBGColor; msg['c'] = '#' + cb.settings.rhTextColor; msg['m'] = "[" + cb.settings.rhText + "] " + msg['m']; if (cbjs.arrayContains(cb.limitCam_allUsersWithAccess(), user)) { } else { cb.limitCam_addUsers([user]); if (cb.settings.show_notifications == 'Yes' ){ cb.chatNotice('Added ' + username + ' to secret show', username); cb.chatNotice('Added ' + username + ' to secret show', cb.room_slug); }; } } else if (user['in_fanclub']) { msg['background'] = '#' + cb.settings.fcBGColor; msg['c'] = '#' + cb.settings.fcTextColor; msg['m'] = "[" + cb.settings.fcText + "] " + msg['m']; } if (twcRegex.test(u)) { // Auto-silencing at least some of token_wh*re_c*nts usernames msg['X-Spam'] = true; } return msg; }); cb.onTip(function (tip) { var amountTipped = parseInt(tip['amount']); if (!cbjs.arrayContains(cb.limitCam_allUsersWithAccess(), tip['from_user'])) { if(!cb.limitCam_isRunning() && parseInt(tip['amount']) >= cb.settings.min_start_tokens) { cb.limitCam_addUsers([tip['from_user']]); if (cb.settings.show_notifications == 'Yes' ){ output('Added '+ tip['from_user'] + ' to secret show!'); } } if(cb.limitCam_isRunning() && parseInt(tip['amount']) >= cb.settings.min_join_tokens && cb.settings.min_join_tokens > 0) { cb.limitCam_addUsers([tip['from_user']]); if (cb.settings.show_notifications == 'Yes' ){ output('Added '+ tip['from_user'] + ' to secret show!'); } } } if (amountTipped >= cb.settings.hrMinTip && !isHR(tip['from_user'])) { // Make High Roller and announce it var announcement = cb.settings.hrAnnounce.replace("MEMBERNAME", tip['from_user']); makeHR(tip['from_user']); for (var i = 0; i < cb.settings.hrRainCount; i++) { cb.chatNotice(cb.settings.hrRainText); } cb.chatNotice(announcement); } else if (amountTipped >= cb.settings.sfMinTip && !isSF(tip['from_user'])) { // Make 420 Club and announce it var announcement = cb.settings.sfAnnounce.replace("MEMBERNAME", tip['from_user']); makeSF(tip['from_user']); for (var i = 0; i < cb.settings.sfRainCount; i++) { cb.chatNotice(cb.settings.sfRainText); } cb.chatNotice(announcement); } }); function isHR(username) { return (username in hrMembers); } function isSF(username) { return (username in sfMembers); } function isRH(username) { return (username in rhMembers); } function makeHR(username) { hrMembers[username] = {'u': 1}; } function makeSF(username) { sfMembers[username] = {'u': 1}; } function makeRH(username) { rhMembers[username] = {'u': 1}; } function grabSettings() { cb.log("starting grabbing settings"); // Get 420 members if (cb.settings.sfMemberList) { var sfMemberSettings = cb.settings.sfMemberList.split(','); for (var ii = 0; ii < sfMemberSettings.length; ii++) { var clean = sfMemberSettings[ii].toLowerCase().replace(/ /g, ""); sfMembers[clean] = {'u': 1}; } } // Get high rollers if (cb.settings.hrMemberList) { var hrMemberSettings = cb.settings.hrMemberList.split(','); for (var ii = 0; ii < hrMemberSettings.length; ii++) { var clean = hrMemberSettings[ii].toLowerCase().replace(/ /g, ""); hrMembers[clean] = {'u': 1}; } } // Get right hands if (cb.settings.rhMemberList) { var rhMemberSettings = cb.settings.rhMemberList.split(','); for (var ii = 0; ii < rhMemberSettings.length; ii++) { var clean = rhMemberSettings[ii].toLowerCase().replace(/ /g, ""); rhMembers[clean] = {'u': 1}; } } cb.log("finished grabbing settings"); } function output(message) { cb.chatNotice(message); } grabSettings(); showSFNotice();
© Copyright Chaturbate 2011- 2026. All Rights Reserved.